ge plugin: support wiki prices in search panel

This commit is contained in:
Adam
2021-03-09 14:24:04 -05:00
parent 71595d0b6e
commit d5dda05d55
4 changed files with 14 additions and 16 deletions

View File

@@ -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";

View File

@@ -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();

View File

@@ -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<GrandExchangeItems> 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);

View File

@@ -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;