loot tracker: add price type display
This commit is contained in:
@@ -70,6 +70,7 @@ class LootTrackerBox extends JPanel
|
||||
@Getter(AccessLevel.PACKAGE)
|
||||
private final String id;
|
||||
private final LootTrackerPriceType priceType;
|
||||
private final boolean showPriceType;
|
||||
|
||||
@Getter
|
||||
private final List<LootTrackerRecord> records = new ArrayList<>();
|
||||
@@ -84,6 +85,7 @@ class LootTrackerBox extends JPanel
|
||||
@Nullable final String subtitle,
|
||||
final boolean hideIgnoredItems,
|
||||
final LootTrackerPriceType priceType,
|
||||
final boolean showPriceType,
|
||||
final BiConsumer<String, Boolean> onItemToggle)
|
||||
{
|
||||
this.id = id;
|
||||
@@ -91,6 +93,7 @@ class LootTrackerBox extends JPanel
|
||||
this.onItemToggle = onItemToggle;
|
||||
this.hideIgnoredItems = hideIgnoredItems;
|
||||
this.priceType = priceType;
|
||||
this.showPriceType = showPriceType;
|
||||
|
||||
setLayout(new BorderLayout(0, 1));
|
||||
setBorder(new EmptyBorder(5, 0, 0, 0));
|
||||
@@ -184,7 +187,13 @@ class LootTrackerBox extends JPanel
|
||||
{
|
||||
buildItems();
|
||||
|
||||
priceLabel.setText(QuantityFormatter.quantityToStackSize(totalPrice) + " gp");
|
||||
String priceTypeString = " ";
|
||||
if (showPriceType)
|
||||
{
|
||||
priceTypeString = priceType == LootTrackerPriceType.HIGH_ALCHEMY ? "HA: " : "GE: ";
|
||||
}
|
||||
|
||||
priceLabel.setText(priceTypeString + QuantityFormatter.quantityToStackSize(totalPrice) + " gp");
|
||||
priceLabel.setToolTipText(QuantityFormatter.formatNumber(totalPrice) + " gp");
|
||||
|
||||
final long kills = getTotalKills();
|
||||
|
||||
@@ -59,6 +59,16 @@ public interface LootTrackerConfig extends Config
|
||||
return LootTrackerPriceType.GRAND_EXCHANGE;
|
||||
}
|
||||
|
||||
@ConfigItem(
|
||||
keyName = "showPriceType",
|
||||
name = "Show Price Type",
|
||||
description = "Whether to show a GE: or HA: next to the total values in the tracker"
|
||||
)
|
||||
default boolean showPriceType()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
@ConfigItem(
|
||||
keyName = "saveLoot",
|
||||
name = "Submit loot tracker data",
|
||||
|
||||
@@ -519,7 +519,7 @@ class LootTrackerPanel extends PluginPanel
|
||||
|
||||
// Create box
|
||||
final LootTrackerBox box = new LootTrackerBox(itemManager, record.getTitle(), record.getSubTitle(),
|
||||
hideIgnoredItems, config.priceType(), plugin::toggleItem);
|
||||
hideIgnoredItems, config.priceType(), config.showPriceType(), plugin::toggleItem);
|
||||
box.combine(record);
|
||||
|
||||
// Create popup menu
|
||||
@@ -625,8 +625,14 @@ class LootTrackerPanel extends PluginPanel
|
||||
}
|
||||
}
|
||||
|
||||
String priceType = "";
|
||||
if (config.showPriceType())
|
||||
{
|
||||
priceType = config.priceType() == LootTrackerPriceType.HIGH_ALCHEMY ? "HA " : "GE ";
|
||||
}
|
||||
|
||||
overallKillsLabel.setText(htmlLabel("Total count: ", overallKills));
|
||||
overallGpLabel.setText(htmlLabel("Total value: ", config.priceType() == LootTrackerPriceType.HIGH_ALCHEMY ? overallHa : overallGe));
|
||||
overallGpLabel.setText(htmlLabel("Total " + priceType + "value: ", config.priceType() == LootTrackerPriceType.HIGH_ALCHEMY ? overallHa : overallGe));
|
||||
overallGpLabel.setToolTipText("<html>Total GE price: " + QuantityFormatter.formatNumber(overallGe)
|
||||
+ "<br>Total HA price: " + QuantityFormatter.formatNumber(overallHa) + "</html>");
|
||||
updateCollapseText();
|
||||
|
||||
Reference in New Issue
Block a user