ge plugin: support wiki prices in search panel
This commit is contained in:
@@ -38,7 +38,7 @@ import net.runelite.api.ItemComposition;
|
|||||||
import net.runelite.client.ui.ColorScheme;
|
import net.runelite.client.ui.ColorScheme;
|
||||||
import net.runelite.client.ui.components.PluginErrorPanel;
|
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 ERROR_PANEL = "ERROR_PANEL";
|
||||||
private static final String OFFERS_PANEL = "OFFERS_PANEL";
|
private static final String OFFERS_PANEL = "OFFERS_PANEL";
|
||||||
|
|||||||
@@ -27,13 +27,10 @@
|
|||||||
package net.runelite.client.plugins.grandexchange;
|
package net.runelite.client.plugins.grandexchange;
|
||||||
|
|
||||||
import java.awt.BorderLayout;
|
import java.awt.BorderLayout;
|
||||||
import java.util.concurrent.ScheduledExecutorService;
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
import javax.swing.JPanel;
|
import javax.swing.JPanel;
|
||||||
import javax.swing.border.EmptyBorder;
|
import javax.swing.border.EmptyBorder;
|
||||||
import lombok.Getter;
|
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.ColorScheme;
|
||||||
import net.runelite.client.ui.PluginPanel;
|
import net.runelite.client.ui.PluginPanel;
|
||||||
import net.runelite.client.ui.components.materialtabs.MaterialTab;
|
import net.runelite.client.ui.components.materialtabs.MaterialTab;
|
||||||
@@ -49,21 +46,20 @@ class GrandExchangePanel extends PluginPanel
|
|||||||
private final MaterialTab searchTab;
|
private final MaterialTab searchTab;
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
private GrandExchangeSearchPanel searchPanel;
|
private final GrandExchangeSearchPanel searchPanel;
|
||||||
@Getter
|
@Getter
|
||||||
private GrandExchangeOffersPanel offersPanel;
|
private GrandExchangeOffersPanel offersPanel;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
private GrandExchangePanel(ClientThread clientThread, ItemManager itemManager, ScheduledExecutorService executor)
|
private GrandExchangePanel(GrandExchangeSearchPanel searchPanel)
|
||||||
{
|
{
|
||||||
super(false);
|
super(false);
|
||||||
|
|
||||||
|
this.searchPanel = searchPanel;
|
||||||
|
|
||||||
setLayout(new BorderLayout());
|
setLayout(new BorderLayout());
|
||||||
setBackground(ColorScheme.DARK_GRAY_COLOR);
|
setBackground(ColorScheme.DARK_GRAY_COLOR);
|
||||||
|
|
||||||
// Search Panel
|
|
||||||
searchPanel = new GrandExchangeSearchPanel(clientThread, itemManager, executor);
|
|
||||||
|
|
||||||
//Offers Panel
|
//Offers Panel
|
||||||
offersPanel = new GrandExchangeOffersPanel();
|
offersPanel = new GrandExchangeOffersPanel();
|
||||||
|
|
||||||
|
|||||||
@@ -34,12 +34,14 @@ import java.awt.GridBagLayout;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.concurrent.ScheduledExecutorService;
|
import java.util.concurrent.ScheduledExecutorService;
|
||||||
|
import javax.inject.Inject;
|
||||||
import javax.swing.JPanel;
|
import javax.swing.JPanel;
|
||||||
import javax.swing.JScrollPane;
|
import javax.swing.JScrollPane;
|
||||||
import javax.swing.SwingUtilities;
|
import javax.swing.SwingUtilities;
|
||||||
import javax.swing.border.EmptyBorder;
|
import javax.swing.border.EmptyBorder;
|
||||||
import net.runelite.api.ItemComposition;
|
import net.runelite.api.ItemComposition;
|
||||||
import net.runelite.client.callback.ClientThread;
|
import net.runelite.client.callback.ClientThread;
|
||||||
|
import net.runelite.client.config.RuneLiteConfig;
|
||||||
import net.runelite.client.game.ItemManager;
|
import net.runelite.client.game.ItemManager;
|
||||||
import net.runelite.client.ui.ColorScheme;
|
import net.runelite.client.ui.ColorScheme;
|
||||||
import net.runelite.client.ui.components.IconTextField;
|
import net.runelite.client.ui.components.IconTextField;
|
||||||
@@ -64,6 +66,7 @@ class GrandExchangeSearchPanel extends JPanel
|
|||||||
private final ClientThread clientThread;
|
private final ClientThread clientThread;
|
||||||
private final ItemManager itemManager;
|
private final ItemManager itemManager;
|
||||||
private final ScheduledExecutorService executor;
|
private final ScheduledExecutorService executor;
|
||||||
|
private final RuneLiteConfig runeLiteConfig;
|
||||||
|
|
||||||
private final IconTextField searchBar = new IconTextField();
|
private final IconTextField searchBar = new IconTextField();
|
||||||
|
|
||||||
@@ -78,11 +81,14 @@ class GrandExchangeSearchPanel extends JPanel
|
|||||||
|
|
||||||
private final List<GrandExchangeItems> itemsList = new ArrayList<>();
|
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.clientThread = clientThread;
|
||||||
this.itemManager = itemManager;
|
this.itemManager = itemManager;
|
||||||
this.executor = executor;
|
this.executor = executor;
|
||||||
|
this.runeLiteConfig = runeLiteConfig;
|
||||||
|
|
||||||
setLayout(new BorderLayout());
|
setLayout(new BorderLayout());
|
||||||
setBackground(ColorScheme.DARK_GRAY_COLOR);
|
setBackground(ColorScheme.DARK_GRAY_COLOR);
|
||||||
@@ -192,6 +198,7 @@ class GrandExchangeSearchPanel extends JPanel
|
|||||||
cardLayout.show(centerPanel, RESULTS_PANEL);
|
cardLayout.show(centerPanel, RESULTS_PANEL);
|
||||||
|
|
||||||
int count = 0;
|
int count = 0;
|
||||||
|
boolean useActivelyTradedPrice = runeLiteConfig.useWikiItemPrices();
|
||||||
|
|
||||||
for (ItemPrice item : result)
|
for (ItemPrice item : result)
|
||||||
{
|
{
|
||||||
@@ -206,7 +213,7 @@ class GrandExchangeSearchPanel extends JPanel
|
|||||||
ItemComposition itemComp = itemManager.getItemComposition(itemId);
|
ItemComposition itemComp = itemManager.getItemComposition(itemId);
|
||||||
ItemStats itemStats = itemManager.getItemStats(itemId, false);
|
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;
|
int itemLimit = itemStats != null ? itemStats.getGeLimit() : 0;
|
||||||
AsyncBufferedImage itemImage = itemManager.getImage(itemId);
|
AsyncBufferedImage itemImage = itemManager.getImage(itemId);
|
||||||
|
|
||||||
|
|||||||
@@ -32,7 +32,6 @@ import java.util.EnumSet;
|
|||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.concurrent.ScheduledExecutorService;
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
import net.runelite.api.GameState;
|
import net.runelite.api.GameState;
|
||||||
@@ -109,10 +108,6 @@ public class GrandExchangePluginTest
|
|||||||
@Bind
|
@Bind
|
||||||
private MouseManager mouseManager;
|
private MouseManager mouseManager;
|
||||||
|
|
||||||
@Mock
|
|
||||||
@Bind
|
|
||||||
private ScheduledExecutorService scheduledExecutorService;
|
|
||||||
|
|
||||||
@Mock
|
@Mock
|
||||||
@Bind
|
@Bind
|
||||||
private GrandExchangeClient grandExchangeClient;
|
private GrandExchangeClient grandExchangeClient;
|
||||||
|
|||||||
Reference in New Issue
Block a user