From d5dda05d556284d7a8c4d5fd106c681b4b6bfe28 Mon Sep 17 00:00:00 2001 From: Adam Date: Tue, 9 Mar 2021 14:24:04 -0500 Subject: [PATCH] ge plugin: support wiki prices in search panel --- .../grandexchange/GrandExchangeOffersPanel.java | 2 +- .../plugins/grandexchange/GrandExchangePanel.java | 12 ++++-------- .../grandexchange/GrandExchangeSearchPanel.java | 11 +++++++++-- .../grandexchange/GrandExchangePluginTest.java | 5 ----- 4 files changed, 14 insertions(+), 16 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangeOffersPanel.java b/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangeOffersPanel.java index a64f4b1474..a9100c52a0 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangeOffersPanel.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/grandexchange/GrandExchangeOffersPanel.java @@ -38,7 +38,7 @@ import net.runelite.api.ItemComposition; import net.runelite.client.ui.ColorScheme; import net.runelite.client.ui.components.PluginErrorPanel; -public class GrandExchangeOffersPanel extends JPanel +class GrandExchangeOffersPanel extends JPanel { private static final String ERROR_PANEL = "ERROR_PANEL"; private static final String OFFERS_PANEL = "OFFERS_PANEL"; 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 0b59270de5..a3fc4c70dc 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 @@ -27,13 +27,10 @@ package net.runelite.client.plugins.grandexchange; import java.awt.BorderLayout; -import java.util.concurrent.ScheduledExecutorService; import javax.inject.Inject; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import lombok.Getter; -import net.runelite.client.callback.ClientThread; -import net.runelite.client.game.ItemManager; import net.runelite.client.ui.ColorScheme; import net.runelite.client.ui.PluginPanel; import net.runelite.client.ui.components.materialtabs.MaterialTab; @@ -49,21 +46,20 @@ class GrandExchangePanel extends PluginPanel private final MaterialTab searchTab; @Getter - private GrandExchangeSearchPanel searchPanel; + private final GrandExchangeSearchPanel searchPanel; @Getter private GrandExchangeOffersPanel offersPanel; @Inject - private GrandExchangePanel(ClientThread clientThread, ItemManager itemManager, ScheduledExecutorService executor) + private GrandExchangePanel(GrandExchangeSearchPanel searchPanel) { super(false); + this.searchPanel = searchPanel; + setLayout(new BorderLayout()); setBackground(ColorScheme.DARK_GRAY_COLOR); - // Search Panel - searchPanel = new GrandExchangeSearchPanel(clientThread, itemManager, executor); - //Offers Panel offersPanel = new GrandExchangeOffersPanel(); 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 723d9f697a..942ee98cde 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 @@ -34,12 +34,14 @@ import java.awt.GridBagLayout; import java.util.ArrayList; import java.util.List; import java.util.concurrent.ScheduledExecutorService; +import javax.inject.Inject; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.SwingUtilities; import javax.swing.border.EmptyBorder; import net.runelite.api.ItemComposition; import net.runelite.client.callback.ClientThread; +import net.runelite.client.config.RuneLiteConfig; import net.runelite.client.game.ItemManager; import net.runelite.client.ui.ColorScheme; import net.runelite.client.ui.components.IconTextField; @@ -64,6 +66,7 @@ class GrandExchangeSearchPanel extends JPanel private final ClientThread clientThread; private final ItemManager itemManager; private final ScheduledExecutorService executor; + private final RuneLiteConfig runeLiteConfig; private final IconTextField searchBar = new IconTextField(); @@ -78,11 +81,14 @@ class GrandExchangeSearchPanel extends JPanel private final List itemsList = new ArrayList<>(); - GrandExchangeSearchPanel(ClientThread clientThread, ItemManager itemManager, ScheduledExecutorService executor) + @Inject + private GrandExchangeSearchPanel(ClientThread clientThread, ItemManager itemManager, + ScheduledExecutorService executor, RuneLiteConfig runeLiteConfig) { this.clientThread = clientThread; this.itemManager = itemManager; this.executor = executor; + this.runeLiteConfig = runeLiteConfig; setLayout(new BorderLayout()); setBackground(ColorScheme.DARK_GRAY_COLOR); @@ -192,6 +198,7 @@ class GrandExchangeSearchPanel extends JPanel cardLayout.show(centerPanel, RESULTS_PANEL); int count = 0; + boolean useActivelyTradedPrice = runeLiteConfig.useWikiItemPrices(); for (ItemPrice item : result) { @@ -206,7 +213,7 @@ class GrandExchangeSearchPanel extends JPanel ItemComposition itemComp = itemManager.getItemComposition(itemId); ItemStats itemStats = itemManager.getItemStats(itemId, false); - int itemPrice = item.getPrice(); + int itemPrice = useActivelyTradedPrice && item.getWikiPrice() > 0 ? item.getWikiPrice() : item.getPrice(); int itemLimit = itemStats != null ? itemStats.getGeLimit() : 0; AsyncBufferedImage itemImage = itemManager.getImage(itemId); diff --git a/runelite-client/src/test/java/net/runelite/client/plugins/grandexchange/GrandExchangePluginTest.java b/runelite-client/src/test/java/net/runelite/client/plugins/grandexchange/GrandExchangePluginTest.java index e627dac19b..8624a9017a 100644 --- a/runelite-client/src/test/java/net/runelite/client/plugins/grandexchange/GrandExchangePluginTest.java +++ b/runelite-client/src/test/java/net/runelite/client/plugins/grandexchange/GrandExchangePluginTest.java @@ -32,7 +32,6 @@ import java.util.EnumSet; import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.concurrent.ScheduledExecutorService; import javax.inject.Inject; import net.runelite.api.Client; import net.runelite.api.GameState; @@ -109,10 +108,6 @@ public class GrandExchangePluginTest @Bind private MouseManager mouseManager; - @Mock - @Bind - private ScheduledExecutorService scheduledExecutorService; - @Mock @Bind private GrandExchangeClient grandExchangeClient;