Make plugins work with the new PluginToolbar
- Use updated construction for NavigationButton - Replace ClientUI injections with PluginToolbar injections Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
This commit is contained in:
@@ -36,8 +36,8 @@ import net.runelite.client.events.PluginChanged;
|
||||
import net.runelite.client.plugins.Plugin;
|
||||
import net.runelite.client.plugins.PluginDescriptor;
|
||||
import net.runelite.client.plugins.PluginManager;
|
||||
import net.runelite.client.ui.ClientUI;
|
||||
import net.runelite.client.ui.NavigationButton;
|
||||
import net.runelite.client.ui.PluginToolbar;
|
||||
|
||||
@PluginDescriptor(
|
||||
name = "Configuration",
|
||||
@@ -47,7 +47,7 @@ import net.runelite.client.ui.NavigationButton;
|
||||
public class ConfigPlugin extends Plugin
|
||||
{
|
||||
@Inject
|
||||
private ClientUI ui;
|
||||
private PluginToolbar pluginToolbar;
|
||||
|
||||
@Inject
|
||||
private ConfigManager configManager;
|
||||
@@ -75,18 +75,19 @@ public class ConfigPlugin extends Plugin
|
||||
icon = ImageIO.read(getClass().getResourceAsStream("config_icon.png"));
|
||||
}
|
||||
|
||||
navButton = new NavigationButton(
|
||||
"Configuration",
|
||||
icon,
|
||||
() -> configPanel);
|
||||
navButton = NavigationButton.builder()
|
||||
.name("Configuration")
|
||||
.icon(icon)
|
||||
.panel(() -> configPanel)
|
||||
.build();
|
||||
|
||||
ui.getPluginToolbar().addNavigation(navButton);
|
||||
pluginToolbar.addNavigation(navButton);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void shutDown() throws Exception
|
||||
{
|
||||
ui.getPluginToolbar().removeNavigation(navButton);
|
||||
pluginToolbar.removeNavigation(navButton);
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
|
||||
@@ -35,9 +35,9 @@ import net.runelite.api.widgets.Widget;
|
||||
import net.runelite.client.config.ConfigManager;
|
||||
import net.runelite.client.plugins.Plugin;
|
||||
import net.runelite.client.plugins.PluginDescriptor;
|
||||
import net.runelite.client.ui.ClientUI;
|
||||
import net.runelite.client.ui.FontManager;
|
||||
import net.runelite.client.ui.NavigationButton;
|
||||
import net.runelite.client.ui.PluginToolbar;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
|
||||
@PluginDescriptor(
|
||||
@@ -47,7 +47,7 @@ import net.runelite.client.ui.overlay.Overlay;
|
||||
public class DevToolsPlugin extends Plugin
|
||||
{
|
||||
@Inject
|
||||
private ClientUI ui;
|
||||
private PluginToolbar pluginToolbar;
|
||||
|
||||
@Inject
|
||||
private DevToolsOverlay overlay;
|
||||
@@ -89,12 +89,13 @@ public class DevToolsPlugin extends Plugin
|
||||
icon = ImageIO.read(getClass().getResourceAsStream("devtools_icon.png"));
|
||||
}
|
||||
|
||||
navButton = new NavigationButton(
|
||||
"Developer Tools",
|
||||
icon,
|
||||
() -> panel);
|
||||
navButton = NavigationButton.builder()
|
||||
.name("Developer Tools")
|
||||
.icon(icon)
|
||||
.panel(() -> panel)
|
||||
.build();
|
||||
|
||||
ui.getPluginToolbar().addNavigation(navButton);
|
||||
pluginToolbar.addNavigation(navButton);
|
||||
|
||||
font = FontManager.getRunescapeFont()
|
||||
.deriveFont(Font.BOLD, 16);
|
||||
@@ -103,7 +104,7 @@ public class DevToolsPlugin extends Plugin
|
||||
@Override
|
||||
protected void shutDown() throws Exception
|
||||
{
|
||||
ui.getPluginToolbar().removeNavigation(navButton);
|
||||
pluginToolbar.removeNavigation(navButton);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -41,8 +41,8 @@ import net.runelite.client.config.ConfigManager;
|
||||
import net.runelite.client.plugins.Plugin;
|
||||
import net.runelite.client.plugins.PluginDescriptor;
|
||||
import net.runelite.client.task.Schedule;
|
||||
import net.runelite.client.ui.ClientUI;
|
||||
import net.runelite.client.ui.NavigationButton;
|
||||
import net.runelite.client.ui.PluginToolbar;
|
||||
import net.runelite.http.api.feed.FeedClient;
|
||||
import net.runelite.http.api.feed.FeedResult;
|
||||
|
||||
@@ -54,7 +54,7 @@ import net.runelite.http.api.feed.FeedResult;
|
||||
public class FeedPlugin extends Plugin
|
||||
{
|
||||
@Inject
|
||||
private ClientUI ui;
|
||||
private PluginToolbar pluginToolbar;
|
||||
|
||||
@Inject
|
||||
private FeedConfig config;
|
||||
@@ -90,20 +90,20 @@ public class FeedPlugin extends Plugin
|
||||
icon = ImageIO.read(getClass().getResourceAsStream("icon.png"));
|
||||
}
|
||||
|
||||
navButton = new NavigationButton(
|
||||
"News Feed",
|
||||
icon,
|
||||
() -> feedPanel);
|
||||
|
||||
ui.getPluginToolbar().addNavigation(navButton);
|
||||
navButton = NavigationButton.builder()
|
||||
.name("News Feed")
|
||||
.icon(icon)
|
||||
.panel(() -> feedPanel)
|
||||
.build();
|
||||
|
||||
pluginToolbar.addNavigation(navButton);
|
||||
executorService.submit(this::updateFeed);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void shutDown() throws Exception
|
||||
{
|
||||
ui.getPluginToolbar().removeNavigation(navButton);
|
||||
pluginToolbar.removeNavigation(navButton);
|
||||
}
|
||||
|
||||
private void updateFeed()
|
||||
|
||||
@@ -48,8 +48,8 @@ import net.runelite.client.input.MouseListener;
|
||||
import net.runelite.client.input.MouseManager;
|
||||
import net.runelite.client.plugins.Plugin;
|
||||
import net.runelite.client.plugins.PluginDescriptor;
|
||||
import net.runelite.client.ui.ClientUI;
|
||||
import net.runelite.client.ui.NavigationButton;
|
||||
import net.runelite.client.ui.PluginToolbar;
|
||||
|
||||
@PluginDescriptor(
|
||||
name = "Grand Exchange"
|
||||
@@ -69,7 +69,7 @@ public class GrandExchangePlugin extends Plugin
|
||||
private Client client;
|
||||
|
||||
@Inject
|
||||
private ClientUI ui;
|
||||
private PluginToolbar pluginToolbar;
|
||||
|
||||
@Inject
|
||||
private GrandExchangeConfig config;
|
||||
@@ -84,13 +84,20 @@ public class GrandExchangePlugin extends Plugin
|
||||
protected void startUp() throws IOException
|
||||
{
|
||||
panel = injector.getInstance(GrandExchangePanel.class);
|
||||
|
||||
BufferedImage icon;
|
||||
synchronized (ImageIO.class)
|
||||
{
|
||||
icon = ImageIO.read(getClass().getResourceAsStream("ge_icon.png"));
|
||||
}
|
||||
button = new NavigationButton("GE Offers", icon, () -> panel);
|
||||
ui.getPluginToolbar().addNavigation(button);
|
||||
|
||||
button = NavigationButton.builder()
|
||||
.name("GE Offers")
|
||||
.icon(icon)
|
||||
.panel(() -> panel)
|
||||
.build();
|
||||
|
||||
pluginToolbar.addNavigation(button);
|
||||
|
||||
itemClick = new MouseListener()
|
||||
{
|
||||
@@ -119,7 +126,8 @@ public class GrandExchangePlugin extends Plugin
|
||||
|
||||
if (!button.isSelected())
|
||||
{
|
||||
button.doClick();
|
||||
button.setSelected(true);
|
||||
button.getOnSelect().run();
|
||||
}
|
||||
|
||||
panel.getSearchPanel().priceLookup(itemComp.getName());
|
||||
@@ -145,8 +153,7 @@ public class GrandExchangePlugin extends Plugin
|
||||
@Override
|
||||
protected void shutDown()
|
||||
{
|
||||
ui.getPluginToolbar().removeNavigation(button);
|
||||
|
||||
pluginToolbar.removeNavigation(button);
|
||||
mouseManager.unregisterMouseListener(itemClick);
|
||||
}
|
||||
|
||||
@@ -172,10 +179,6 @@ public class GrandExchangePlugin extends Plugin
|
||||
@Subscribe
|
||||
public void onGrandExchangeOfferChanged(GrandExchangeOfferChanged offerEvent)
|
||||
{
|
||||
SwingUtilities.invokeLater(() ->
|
||||
{
|
||||
panel.updateOffer(offerEvent.getOffer(), offerEvent.getSlot());
|
||||
});
|
||||
SwingUtilities.invokeLater(() -> panel.updateOffer(offerEvent.getOffer(), offerEvent.getSlot()));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -38,8 +38,8 @@ import net.runelite.client.config.ConfigManager;
|
||||
import net.runelite.client.menus.MenuManager;
|
||||
import net.runelite.client.plugins.Plugin;
|
||||
import net.runelite.client.plugins.PluginDescriptor;
|
||||
import net.runelite.client.ui.ClientUI;
|
||||
import net.runelite.client.ui.NavigationButton;
|
||||
import net.runelite.client.ui.PluginToolbar;
|
||||
|
||||
@PluginDescriptor(
|
||||
name = "HiScore",
|
||||
@@ -50,7 +50,7 @@ public class HiscorePlugin extends Plugin
|
||||
private static final String LOOKUP = "Lookup";
|
||||
|
||||
@Inject
|
||||
private ClientUI ui;
|
||||
private PluginToolbar pluginToolbar;
|
||||
|
||||
@Inject
|
||||
private MenuManager menuManager;
|
||||
@@ -81,12 +81,13 @@ public class HiscorePlugin extends Plugin
|
||||
icon = ImageIO.read(getClass().getResourceAsStream("hiscore.gif"));
|
||||
}
|
||||
|
||||
navButton = new NavigationButton(
|
||||
"Hiscore",
|
||||
icon,
|
||||
() -> hiscorePanel);
|
||||
navButton = NavigationButton.builder()
|
||||
.name("Hiscore")
|
||||
.icon(icon)
|
||||
.panel(() -> hiscorePanel)
|
||||
.build();
|
||||
|
||||
ui.getPluginToolbar().addNavigation(navButton);
|
||||
pluginToolbar.addNavigation(navButton);
|
||||
|
||||
if (config.playerOption())
|
||||
{
|
||||
@@ -97,8 +98,7 @@ public class HiscorePlugin extends Plugin
|
||||
@Override
|
||||
protected void shutDown() throws Exception
|
||||
{
|
||||
ui.getPluginToolbar().removeNavigation(navButton);
|
||||
|
||||
pluginToolbar.removeNavigation(navButton);
|
||||
menuManager.removePlayerMenuItem(LOOKUP);
|
||||
}
|
||||
|
||||
@@ -129,7 +129,8 @@ public class HiscorePlugin extends Plugin
|
||||
{
|
||||
if (!navButton.isSelected())
|
||||
{
|
||||
navButton.doClick();
|
||||
navButton.setSelected(true);
|
||||
navButton.getOnSelect().run();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -29,8 +29,8 @@ import javax.imageio.ImageIO;
|
||||
import javax.inject.Inject;
|
||||
import net.runelite.client.plugins.Plugin;
|
||||
import net.runelite.client.plugins.PluginDescriptor;
|
||||
import net.runelite.client.ui.ClientUI;
|
||||
import net.runelite.client.ui.NavigationButton;
|
||||
import net.runelite.client.ui.PluginToolbar;
|
||||
|
||||
@PluginDescriptor(
|
||||
name = "Info Panel",
|
||||
@@ -39,7 +39,7 @@ import net.runelite.client.ui.NavigationButton;
|
||||
public class InfoPlugin extends Plugin
|
||||
{
|
||||
@Inject
|
||||
private ClientUI ui;
|
||||
private PluginToolbar pluginToolbar;
|
||||
|
||||
private NavigationButton navButton;
|
||||
|
||||
@@ -55,18 +55,18 @@ public class InfoPlugin extends Plugin
|
||||
icon = ImageIO.read(getClass().getResourceAsStream("info_icon.png"));
|
||||
}
|
||||
|
||||
navButton = new NavigationButton(
|
||||
"Info",
|
||||
icon,
|
||||
() -> panel
|
||||
);
|
||||
navButton = NavigationButton.builder()
|
||||
.name("Info")
|
||||
.icon(icon)
|
||||
.panel(() -> panel)
|
||||
.build();
|
||||
|
||||
ui.getPluginToolbar().addNavigation(navButton);
|
||||
pluginToolbar.addNavigation(navButton);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void shutDown()
|
||||
{
|
||||
ui.getPluginToolbar().removeNavigation(navButton);
|
||||
pluginToolbar.removeNavigation(navButton);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -44,8 +44,8 @@ import net.runelite.api.widgets.Widget;
|
||||
import net.runelite.api.widgets.WidgetInfo;
|
||||
import net.runelite.client.plugins.Plugin;
|
||||
import net.runelite.client.plugins.PluginDescriptor;
|
||||
import net.runelite.client.ui.ClientUI;
|
||||
import net.runelite.client.ui.NavigationButton;
|
||||
import net.runelite.client.ui.PluginToolbar;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
|
||||
@PluginDescriptor(
|
||||
@@ -57,7 +57,7 @@ public class KourendLibraryPlugin extends Plugin
|
||||
final static boolean debug = false;
|
||||
|
||||
@Inject
|
||||
private ClientUI ui;
|
||||
private PluginToolbar pluginToolbar;
|
||||
|
||||
@Inject
|
||||
private Client client;
|
||||
@@ -86,19 +86,19 @@ public class KourendLibraryPlugin extends Plugin
|
||||
icon = ImageIO.read(Book.class.getResourceAsStream("panel_icon.png"));
|
||||
}
|
||||
|
||||
navButton = new NavigationButton(
|
||||
"Kourend Library",
|
||||
icon,
|
||||
() -> panel
|
||||
);
|
||||
navButton = NavigationButton.builder()
|
||||
.name("Kourend Library")
|
||||
.icon(icon)
|
||||
.panel(() -> panel)
|
||||
.build();
|
||||
|
||||
ui.getPluginToolbar().addNavigation(navButton);
|
||||
pluginToolbar.addNavigation(navButton);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void shutDown()
|
||||
{
|
||||
ui.getPluginToolbar().removeNavigation(navButton);
|
||||
pluginToolbar.removeNavigation(navButton);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -24,19 +24,18 @@
|
||||
*/
|
||||
package net.runelite.client.plugins.notes;
|
||||
|
||||
import com.google.common.eventbus.Subscribe;
|
||||
import com.google.inject.Provides;
|
||||
import java.awt.image.BufferedImage;
|
||||
import javax.imageio.ImageIO;
|
||||
import javax.inject.Inject;
|
||||
|
||||
import com.google.common.eventbus.Subscribe;
|
||||
import com.google.inject.Provides;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import net.runelite.api.events.SessionOpen;
|
||||
import net.runelite.client.config.ConfigManager;
|
||||
import net.runelite.client.plugins.Plugin;
|
||||
import net.runelite.client.plugins.PluginDescriptor;
|
||||
import net.runelite.client.ui.ClientUI;
|
||||
import net.runelite.client.ui.NavigationButton;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import net.runelite.client.ui.PluginToolbar;
|
||||
|
||||
@PluginDescriptor(
|
||||
name = "Notes",
|
||||
@@ -46,7 +45,7 @@ import lombok.extern.slf4j.Slf4j;
|
||||
public class NotesPlugin extends Plugin
|
||||
{
|
||||
@Inject
|
||||
private ClientUI ui;
|
||||
private PluginToolbar pluginToolbar;
|
||||
|
||||
@Inject
|
||||
private NotesConfig config;
|
||||
@@ -72,19 +71,19 @@ public class NotesPlugin extends Plugin
|
||||
icon = ImageIO.read(getClass().getResourceAsStream("notes_icon.png"));
|
||||
}
|
||||
|
||||
navButton = new NavigationButton(
|
||||
"Notes",
|
||||
icon,
|
||||
() -> panel
|
||||
);
|
||||
navButton = NavigationButton.builder()
|
||||
.name("Notes")
|
||||
.icon(icon)
|
||||
.panel(() -> panel)
|
||||
.build();
|
||||
|
||||
ui.getPluginToolbar().addNavigation(navButton);
|
||||
pluginToolbar.addNavigation(navButton);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void shutDown()
|
||||
{
|
||||
ui.getPluginToolbar().removeNavigation(navButton);
|
||||
pluginToolbar.removeNavigation(navButton);
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
|
||||
@@ -47,8 +47,8 @@ import net.runelite.client.game.SkillIconManager;
|
||||
import net.runelite.client.plugins.Plugin;
|
||||
import net.runelite.client.plugins.PluginDescriptor;
|
||||
import static net.runelite.client.plugins.xptracker.XpWorldType.NORMAL;
|
||||
import net.runelite.client.ui.ClientUI;
|
||||
import net.runelite.client.ui.NavigationButton;
|
||||
import net.runelite.client.ui.PluginToolbar;
|
||||
import net.runelite.http.api.worlds.World;
|
||||
import net.runelite.http.api.worlds.WorldClient;
|
||||
import net.runelite.http.api.worlds.WorldResult;
|
||||
@@ -62,7 +62,7 @@ import net.runelite.http.api.xp.XpClient;
|
||||
public class XpTrackerPlugin extends Plugin
|
||||
{
|
||||
@Inject
|
||||
private ClientUI ui;
|
||||
private PluginToolbar pluginToolbar;
|
||||
|
||||
@Inject
|
||||
private Client client;
|
||||
@@ -104,25 +104,27 @@ public class XpTrackerPlugin extends Plugin
|
||||
log.warn("Error looking up worlds list", e);
|
||||
}
|
||||
|
||||
xpPanel = new XpPanel(this, client, skillIconManager);
|
||||
|
||||
BufferedImage icon;
|
||||
synchronized (ImageIO.class)
|
||||
{
|
||||
icon = ImageIO.read(getClass().getResourceAsStream("xp.png"));
|
||||
}
|
||||
|
||||
xpPanel = new XpPanel(this, client, skillIconManager);
|
||||
navButton = new NavigationButton(
|
||||
"XP Tracker",
|
||||
icon,
|
||||
() -> xpPanel);
|
||||
navButton = NavigationButton.builder()
|
||||
.name("XP Tracker")
|
||||
.icon(icon)
|
||||
.panel(() -> xpPanel)
|
||||
.build();
|
||||
|
||||
ui.getPluginToolbar().addNavigation(navButton);
|
||||
pluginToolbar.addNavigation(navButton);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void shutDown() throws Exception
|
||||
{
|
||||
ui.getPluginToolbar().removeNavigation(navButton);
|
||||
pluginToolbar.removeNavigation(navButton);
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
|
||||
Reference in New Issue
Block a user