From a736bc93d808764a814a4ccc29cfbb4608d95342 Mon Sep 17 00:00:00 2001 From: Owain van Brakel Date: Tue, 14 Jan 2020 21:07:27 +0100 Subject: [PATCH] client: Remove OSB prices from examing and from the GE JPanel --- .../client/plugins/examine/ExaminePlugin.java | 93 +++++++------------ .../grandexchange/GrandExchangeConfig.java | 17 +--- .../grandexchange/GrandExchangeItemPanel.java | 14 +-- .../grandexchange/GrandExchangePanel.java | 2 +- .../grandexchange/GrandExchangePlugin.java | 41 -------- .../GrandExchangeSearchPanel.java | 23 +---- 6 files changed, 42 insertions(+), 148 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/examine/ExaminePlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/examine/ExaminePlugin.java index 5c1178cc92..131a666189 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/examine/ExaminePlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/examine/ExaminePlugin.java @@ -26,7 +26,6 @@ package net.runelite.client.plugins.examine; import com.google.common.cache.Cache; import com.google.common.cache.CacheBuilder; -import io.reactivex.schedulers.Schedulers; import java.time.Instant; import java.util.ArrayDeque; import java.util.Deque; @@ -50,7 +49,6 @@ import static net.runelite.api.widgets.WidgetInfo.SEED_VAULT_ITEM_CONTAINER; import static net.runelite.api.widgets.WidgetInfo.TO_CHILD; import static net.runelite.api.widgets.WidgetInfo.TO_GROUP; import net.runelite.api.widgets.WidgetItem; -import net.runelite.client.callback.ClientThread; import net.runelite.client.chat.ChatColorType; import net.runelite.client.chat.ChatMessageBuilder; import net.runelite.client.chat.ChatMessageManager; @@ -62,7 +60,6 @@ import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.plugins.PluginType; import net.runelite.client.util.QuantityFormatter; import net.runelite.http.api.examine.ExamineClient; -import net.runelite.http.api.osbuddy.OSBGrandExchangeClient; /** * Submits examine info to the api @@ -82,7 +79,6 @@ public class ExaminePlugin extends Plugin private static final Pattern X_PATTERN = Pattern.compile("^\\d+ x "); private final Deque pending = new ArrayDeque<>(); - private final OSBGrandExchangeClient CLIENT = new OSBGrandExchangeClient(); private final Cache cache = CacheBuilder.newBuilder() .maximumSize(128L) .build(); @@ -93,9 +89,6 @@ public class ExaminePlugin extends Plugin @Inject private Client client; - @Inject - private ClientThread clientThread; - @Inject private ItemManager itemManager; @@ -363,62 +356,44 @@ public class ExaminePlugin extends Plugin if (gePrice > 0) { int finalQuantity = quantity; - CLIENT.lookupItem(id) - .subscribeOn(Schedulers.io()) - .observeOn(Schedulers.single()) - .subscribe( - (osbresult) -> - { - message - .append(ChatColorType.NORMAL) - .append(" GE ") - .append(ChatColorType.HIGHLIGHT) - .append(QuantityFormatter.formatNumber(gePrice * finalQuantity)); + message + .append(ChatColorType.NORMAL) + .append(" GE ") + .append(ChatColorType.HIGHLIGHT) + .append(QuantityFormatter.formatNumber(gePrice * finalQuantity)); - if (osbresult != null) - { - message - .append(ChatColorType.NORMAL) - .append(" OSB ") - .append(ChatColorType.HIGHLIGHT) - .append(QuantityFormatter.formatNumber(osbresult.getOverall_average() * finalQuantity)); - } + if (finalQuantity > 1) + { + message + .append(ChatColorType.NORMAL) + .append(" (") + .append(ChatColorType.HIGHLIGHT) + .append(QuantityFormatter.formatNumber(gePrice)) + .append(ChatColorType.NORMAL) + .append("ea)"); + } - if (finalQuantity > 1) - { - message - .append(ChatColorType.NORMAL) - .append(" (") - .append(ChatColorType.HIGHLIGHT) - .append(QuantityFormatter.formatNumber(gePrice)) - .append(ChatColorType.NORMAL) - .append("ea)"); - } + message + .append(ChatColorType.NORMAL) + .append(" HA value ") + .append(ChatColorType.HIGHLIGHT) + .append(QuantityFormatter.formatNumber(alchPrice * finalQuantity)); - message - .append(ChatColorType.NORMAL) - .append(" HA value ") - .append(ChatColorType.HIGHLIGHT) - .append(QuantityFormatter.formatNumber(alchPrice * finalQuantity)); + if (finalQuantity > 1) + { + message + .append(ChatColorType.NORMAL) + .append(" (") + .append(ChatColorType.HIGHLIGHT) + .append(QuantityFormatter.formatNumber(alchPrice)) + .append(ChatColorType.NORMAL) + .append("ea)"); + } - if (finalQuantity > 1) - { - message - .append(ChatColorType.NORMAL) - .append(" (") - .append(ChatColorType.HIGHLIGHT) - .append(QuantityFormatter.formatNumber(alchPrice)) - .append(ChatColorType.NORMAL) - .append("ea)"); - } - - chatMessageManager.queue(QueuedMessage.builder() - .type(ChatMessageType.ITEM_EXAMINE) - .runeLiteFormattedMessage(message.build()) - .build()); - }, - (e) -> log.error(e.toString()) - ); + chatMessageManager.queue(QueuedMessage.builder() + .type(ChatMessageType.ITEM_EXAMINE) + .runeLiteFormattedMessage(message.build()) + .build()); } else { diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangeConfig.java b/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangeConfig.java index b2ca3c22de..4766a0c149 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangeConfig.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangeConfig.java @@ -55,17 +55,6 @@ public interface GrandExchangeConfig extends Config @ConfigItem( position = 3, - keyName = "enableOsbPrices", - name = "Enable OSB actively traded prices", - description = "Shows the OSBuddy actively traded price at the GE" - ) - default boolean enableOsbPrices() - { - return false; - } - - @ConfigItem( - position = 4, keyName = "enableGeLimits", name = "Enable GE Limits on GE", description = "Shows the GE Limits on the GE" @@ -76,7 +65,7 @@ public interface GrandExchangeConfig extends Config } @ConfigItem( - position = 5, + position = 4, keyName = "showTotal", name = "Show grand exchange total", description = "Show grand exchange total" @@ -87,7 +76,7 @@ public interface GrandExchangeConfig extends Config } @ConfigItem( - position = 6, + position = 5, keyName = "showExact", name = "Show exact total value", description = "Show exact total value" @@ -98,7 +87,7 @@ public interface GrandExchangeConfig extends Config } @ConfigItem( - position = 7, + position = 6, keyName = "enableAfford", name = "Enable Afford quantity on GE", description = "Shows the quantity you can buy on the GE" diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangeItemPanel.java b/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangeItemPanel.java index 0acd786622..0653ec2a6d 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangeItemPanel.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangeItemPanel.java @@ -54,8 +54,7 @@ class GrandExchangeItemPanel extends JPanel { private static final Dimension ICON_SIZE = new Dimension(32, 32); - GrandExchangeItemPanel(AsyncBufferedImage icon, String name, int itemID, int gePrice, int osbPrice, int - haPrice, int geItemLimit) + GrandExchangeItemPanel(AsyncBufferedImage icon, String name, int itemID, int gePrice, int haPrice, int geItemLimit) { BorderLayout layout = new BorderLayout(); layout.setHgap(5); @@ -110,7 +109,7 @@ class GrandExchangeItemPanel extends JPanel add(itemIcon, BorderLayout.LINE_START); // Item details panel - JPanel rightPanel = new JPanel(new GridLayout((osbPrice > 0) ? 5 : 4, 1)); + JPanel rightPanel = new JPanel(new GridLayout(4, 1)); panels.add(rightPanel); rightPanel.setBackground(background); @@ -135,15 +134,6 @@ class GrandExchangeItemPanel extends JPanel gePriceLabel.setForeground(ColorScheme.GRAND_EXCHANGE_PRICE); rightPanel.add(gePriceLabel); - // OSB Price - if (osbPrice > 0) - { - JLabel osbPricelabel = new JLabel(); - osbPricelabel.setText("OSB Price: " + QuantityFormatter.formatNumber(osbPrice) + " gp"); - osbPricelabel.setForeground(ColorScheme.GRAND_EXCHANGE_PRICE); - rightPanel.add(osbPricelabel); - } - // Alch price JLabel haPriceLabel = new JLabel(); haPriceLabel.setText("Alch Price: " + QuantityFormatter.formatNumber(haPrice) + " gp"); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangePanel.java b/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangePanel.java index 720cfcbdb0..fcfef5322d 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangePanel.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangePanel.java @@ -66,7 +66,7 @@ class GrandExchangePanel extends PluginPanel setBackground(ColorScheme.DARK_GRAY_COLOR); // Search Panel - searchPanel = new GrandExchangeSearchPanel(clientThread, itemManager, executor, config); + searchPanel = new GrandExchangeSearchPanel(clientThread, itemManager, executor); //Offers Panel offersPanel = new GrandExchangeOffersPanel(); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangePlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangePlugin.java index 4c958d6179..c75fcc794c 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangePlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangePlugin.java @@ -30,7 +30,6 @@ package net.runelite.client.plugins.grandexchange; import com.google.common.reflect.TypeToken; import com.google.gson.stream.JsonReader; import com.google.inject.Provides; -import io.reactivex.schedulers.Schedulers; import java.awt.image.BufferedImage; import java.io.IOException; import java.io.InputStreamReader; @@ -170,7 +169,6 @@ public class GrandExchangePlugin extends Plugin private boolean quickLookup; private boolean enableNotifications; - private boolean enableOsbPrices; private boolean enableGELimits; private boolean enableAfford; @@ -277,7 +275,6 @@ public class GrandExchangePlugin extends Plugin { this.quickLookup = config.quickLookup(); this.enableNotifications = config.enableNotifications(); - this.enableOsbPrices = config.enableOsbPrices(); this.enableGELimits = config.enableGELimits(); this.enableAfford = config.enableAfford(); } @@ -580,43 +577,5 @@ public class GrandExchangePlugin extends Plugin } geText.setText(text); - - if (!this.enableOsbPrices) - { - return; - } - - // If we already have the result, use it - if (osbGrandExchangeResult != null && osbGrandExchangeResult.getItem_id() == itemId && osbGrandExchangeResult.getOverall_average() > 0) - { - geText.setText(text + OSB_GE_TEXT + QuantityFormatter.formatNumber(osbGrandExchangeResult.getOverall_average())); - } - - if (osbItem == itemId) - { - // avoid starting duplicate lookups - return; - } - - osbItem = itemId; - - log.debug("Looking up OSB item price {}", itemId); - - final String start = text; - executorService.submit(() -> - { - CLIENT.lookupItem(itemId) - .subscribeOn(Schedulers.io()) - .observeOn(Schedulers.single()) - .subscribe( - (osbresult) -> - { - osbGrandExchangeResult = osbresult; - // Update the text on the widget too - geText.setText(start + OSB_GE_TEXT + QuantityFormatter.formatNumber(osbresult.getOverall_average())); - }, - (e) -> log.debug("Error getting price of item {}", itemId, e) - ); - }); } } \ No newline at end of file diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangeSearchPanel.java b/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangeSearchPanel.java index 0964cad86b..57200d58c9 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangeSearchPanel.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangeSearchPanel.java @@ -37,7 +37,6 @@ import java.util.List; import java.util.Map; import java.util.concurrent.ScheduledExecutorService; import javax.inject.Singleton; -import javax.inject.Inject; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.SwingUtilities; @@ -53,7 +52,6 @@ import net.runelite.client.ui.components.IconTextField; import net.runelite.client.ui.components.PluginErrorPanel; import net.runelite.client.util.AsyncBufferedImage; import net.runelite.http.api.item.ItemPrice; -import net.runelite.http.api.osbuddy.OSBGrandExchangeClient; /** * This panel holds the search section of the Grand Exchange Plugin. @@ -63,8 +61,6 @@ import net.runelite.http.api.osbuddy.OSBGrandExchangeClient; @Singleton class GrandExchangeSearchPanel extends JPanel { - @Inject - private static final OSBGrandExchangeClient OSBCLIENT = new OSBGrandExchangeClient(); private static final String ERROR_PANEL = "ERROR_PANEL"; private static final String RESULTS_PANEL = "RESULTS_PANEL"; private static final int MAX_SEARCH_ITEMS = 100; @@ -78,9 +74,6 @@ class GrandExchangeSearchPanel extends JPanel private final IconTextField searchBar = new IconTextField(); - private final GrandExchangeConfig config; - - /* The results container, this will hold all the individual ge item panels */ private final JPanel searchItemsPanel = new JPanel(); @@ -95,12 +88,11 @@ class GrandExchangeSearchPanel extends JPanel @Setter(AccessLevel.PACKAGE) private Map itemGELimits = Collections.emptyMap(); - GrandExchangeSearchPanel(final ClientThread clientThread, final ItemManager itemManager, final ScheduledExecutorService executor, final GrandExchangeConfig config) + GrandExchangeSearchPanel(final ClientThread clientThread, final ItemManager itemManager, final ScheduledExecutorService executor) { this.clientThread = clientThread; this.itemManager = itemManager; this.executor = executor; - this.config = config; setLayout(new BorderLayout()); setBackground(ColorScheme.DARK_GRAY_COLOR); @@ -245,20 +237,9 @@ class GrandExchangeSearchPanel extends JPanel int index = 0; for (GrandExchangeItems item : itemsList) { - final int[] osbPrice = {0}; - if (config.enableOsbPrices()) - { - OSBCLIENT.lookupItem(item.getItemId()) - .subscribe( - (osbresult) -> { - osbPrice[0] = osbresult.getOverall_average(); - }, - (e) -> log.debug("GE : Error getting price of item {}", item.getItemId(), e) - ); - } GrandExchangeItemPanel panel = new GrandExchangeItemPanel(item.getIcon(), item.getName(), - item.getItemId(), item.getGePrice(), osbPrice[0], item.getHaPrice(), item.getGeItemLimit()); + item.getItemId(), item.getGePrice(), item.getHaPrice(), item.getGeItemLimit()); /* Add the first item directly, wrap the rest with margin. This margin hack is because