diff --git a/runelite-client/src/main/java/net/runelite/client/events/TitleToolbarButtonAdded.java b/runelite-client/src/main/java/net/runelite/client/events/NavigationButtonAdded.java similarity index 97% rename from runelite-client/src/main/java/net/runelite/client/events/TitleToolbarButtonAdded.java rename to runelite-client/src/main/java/net/runelite/client/events/NavigationButtonAdded.java index e7408bb895..647cbe7016 100644 --- a/runelite-client/src/main/java/net/runelite/client/events/TitleToolbarButtonAdded.java +++ b/runelite-client/src/main/java/net/runelite/client/events/NavigationButtonAdded.java @@ -28,7 +28,7 @@ import lombok.Value; import net.runelite.client.ui.NavigationButton; @Value -public class TitleToolbarButtonAdded +public class NavigationButtonAdded { private NavigationButton button; } diff --git a/runelite-client/src/main/java/net/runelite/client/events/PluginToolbarButtonAdded.java b/runelite-client/src/main/java/net/runelite/client/events/NavigationButtonRemoved.java similarity index 97% rename from runelite-client/src/main/java/net/runelite/client/events/PluginToolbarButtonAdded.java rename to runelite-client/src/main/java/net/runelite/client/events/NavigationButtonRemoved.java index e001e31f29..988d18e72b 100644 --- a/runelite-client/src/main/java/net/runelite/client/events/PluginToolbarButtonAdded.java +++ b/runelite-client/src/main/java/net/runelite/client/events/NavigationButtonRemoved.java @@ -28,7 +28,7 @@ import lombok.Value; import net.runelite.client.ui.NavigationButton; @Value -public class PluginToolbarButtonAdded +public class NavigationButtonRemoved { private NavigationButton button; } diff --git a/runelite-client/src/main/java/net/runelite/client/events/PluginToolbarButtonRemoved.java b/runelite-client/src/main/java/net/runelite/client/events/PluginToolbarButtonRemoved.java deleted file mode 100644 index 7f00965440..0000000000 --- a/runelite-client/src/main/java/net/runelite/client/events/PluginToolbarButtonRemoved.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) 2018, Tomas Slusny - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.client.events; - -import lombok.Value; -import net.runelite.client.ui.NavigationButton; - -@Value -public class PluginToolbarButtonRemoved -{ - private NavigationButton button; -} diff --git a/runelite-client/src/main/java/net/runelite/client/events/TitleToolbarButtonRemoved.java b/runelite-client/src/main/java/net/runelite/client/events/TitleToolbarButtonRemoved.java deleted file mode 100644 index 4e8a958503..0000000000 --- a/runelite-client/src/main/java/net/runelite/client/events/TitleToolbarButtonRemoved.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) 2018, Tomas Slusny - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.client.events; - -import lombok.Value; -import net.runelite.client.ui.NavigationButton; - -@Value -public class TitleToolbarButtonRemoved -{ - private NavigationButton button; -} diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/account/AccountPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/account/AccountPlugin.java index c179b5014a..fdf173829e 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/account/AccountPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/account/AccountPlugin.java @@ -38,8 +38,8 @@ import net.runelite.client.account.AccountSession; import net.runelite.client.account.SessionManager; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; +import net.runelite.client.ui.ClientToolbar; import net.runelite.client.ui.NavigationButton; -import net.runelite.client.ui.TitleToolbar; import net.runelite.client.util.RunnableExceptionLogger; @PluginDescriptor( @@ -55,7 +55,7 @@ public class AccountPlugin extends Plugin private SessionManager sessionManager; @Inject - private TitleToolbar titleToolbar; + private ClientToolbar clientToolbar; @Inject private ScheduledExecutorService executor; @@ -103,9 +103,9 @@ public class AccountPlugin extends Plugin private void addAndRemoveButtons() { - titleToolbar.removeNavigation(loginButton); - titleToolbar.removeNavigation(logoutButton); - titleToolbar.addNavigation(sessionManager.getAccountSession() == null + clientToolbar.removeNavigation(loginButton); + clientToolbar.removeNavigation(logoutButton); + clientToolbar.addNavigation(sessionManager.getAccountSession() == null ? loginButton : logoutButton); } @@ -113,8 +113,8 @@ public class AccountPlugin extends Plugin @Override protected void shutDown() throws Exception { - titleToolbar.removeNavigation(loginButton); - titleToolbar.removeNavigation(logoutButton); + clientToolbar.removeNavigation(loginButton); + clientToolbar.removeNavigation(logoutButton); } private void loginClick() diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/config/ConfigPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/config/ConfigPlugin.java index 28040909f3..f72c74c854 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/config/ConfigPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/config/ConfigPlugin.java @@ -38,7 +38,7 @@ import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.plugins.PluginManager; import net.runelite.client.ui.NavigationButton; -import net.runelite.client.ui.PluginToolbar; +import net.runelite.client.ui.ClientToolbar; @PluginDescriptor( name = "Configuration", @@ -48,7 +48,7 @@ import net.runelite.client.ui.PluginToolbar; public class ConfigPlugin extends Plugin { @Inject - private PluginToolbar pluginToolbar; + private ClientToolbar clientToolbar; @Inject private ConfigManager configManager; @@ -86,13 +86,13 @@ public class ConfigPlugin extends Plugin .panel(configPanel) .build(); - pluginToolbar.addNavigation(navButton); + clientToolbar.addNavigation(navButton); } @Override protected void shutDown() throws Exception { - pluginToolbar.removeNavigation(navButton); + clientToolbar.removeNavigation(navButton); } @Subscribe diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/devtools/DevToolsPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/devtools/DevToolsPlugin.java index e196b665e1..981b023f8a 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/devtools/DevToolsPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/devtools/DevToolsPlugin.java @@ -49,7 +49,7 @@ import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.ui.FontManager; import net.runelite.client.ui.NavigationButton; -import net.runelite.client.ui.PluginToolbar; +import net.runelite.client.ui.ClientToolbar; import net.runelite.client.ui.overlay.OverlayManager; import org.slf4j.LoggerFactory; @@ -65,7 +65,7 @@ public class DevToolsPlugin extends Plugin private Client client; @Inject - private PluginToolbar pluginToolbar; + private ClientToolbar clientToolbar; @Inject private OverlayManager overlayManager; @@ -143,7 +143,7 @@ public class DevToolsPlugin extends Plugin .panel(panel) .build(); - pluginToolbar.addNavigation(navButton); + clientToolbar.addNavigation(navButton); font = FontManager.getRunescapeFont() .deriveFont(Font.BOLD, 16); @@ -157,7 +157,7 @@ public class DevToolsPlugin extends Plugin overlayManager.remove(sceneOverlay); overlayManager.remove(cameraOverlay); overlayManager.remove(worldMapLocationOverlay); - pluginToolbar.removeNavigation(navButton); + clientToolbar.removeNavigation(navButton); } @Subscribe diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/discord/DiscordPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/discord/DiscordPlugin.java index 02a2cedb56..0ee6689640 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/discord/DiscordPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/discord/DiscordPlugin.java @@ -49,8 +49,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.ClientToolbar; import net.runelite.client.ui.NavigationButton; -import net.runelite.client.ui.TitleToolbar; import net.runelite.client.util.LinkBrowser; @PluginDescriptor( @@ -67,7 +67,7 @@ public class DiscordPlugin extends Plugin private DiscordConfig config; @Inject - private TitleToolbar titleToolbar; + private ClientToolbar clientToolbar; @Inject private RuneLiteProperties properties; @@ -101,14 +101,14 @@ public class DiscordPlugin extends Plugin .onClick(() -> LinkBrowser.browse(properties.getDiscordInvite())) .build(); - titleToolbar.addNavigation(discordButton); + clientToolbar.addNavigation(discordButton); checkForGameStateUpdate(); } @Override protected void shutDown() throws Exception { - titleToolbar.removeNavigation(discordButton); + clientToolbar.removeNavigation(discordButton); discordState.reset(); } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/FarmingTrackerPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/FarmingTrackerPlugin.java index 3bbb6f8bc6..f1127f62de 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/FarmingTrackerPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/farmingtracker/FarmingTrackerPlugin.java @@ -45,7 +45,7 @@ import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.task.Schedule; import net.runelite.client.ui.NavigationButton; -import net.runelite.client.ui.PluginToolbar; +import net.runelite.client.ui.ClientToolbar; @PluginDescriptor( name = "Farming Tracker", @@ -56,7 +56,7 @@ import net.runelite.client.ui.PluginToolbar; public class FarmingTrackerPlugin extends Plugin { @Inject - private PluginToolbar pluginToolbar; + private ClientToolbar clientToolbar; @Inject private ConfigManager configManager; @@ -103,7 +103,7 @@ public class FarmingTrackerPlugin extends Plugin .priority(4) .build(); - pluginToolbar.addNavigation(navButton); + clientToolbar.addNavigation(navButton); updatePanel(); } @@ -117,7 +117,7 @@ public class FarmingTrackerPlugin extends Plugin @Override protected void shutDown() throws Exception { - pluginToolbar.removeNavigation(navButton); + clientToolbar.removeNavigation(navButton); } @Subscribe diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/feed/FeedPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/feed/FeedPlugin.java index 2b4d29ffc8..a54c272930 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/feed/FeedPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/feed/FeedPlugin.java @@ -42,7 +42,7 @@ import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.task.Schedule; import net.runelite.client.ui.NavigationButton; -import net.runelite.client.ui.PluginToolbar; +import net.runelite.client.ui.ClientToolbar; import net.runelite.http.api.feed.FeedClient; import net.runelite.http.api.feed.FeedResult; @@ -56,7 +56,7 @@ import net.runelite.http.api.feed.FeedResult; public class FeedPlugin extends Plugin { @Inject - private PluginToolbar pluginToolbar; + private ClientToolbar clientToolbar; @Inject private FeedConfig config; @@ -99,14 +99,14 @@ public class FeedPlugin extends Plugin .panel(feedPanel) .build(); - pluginToolbar.addNavigation(navButton); + clientToolbar.addNavigation(navButton); executorService.submit(this::updateFeed); } @Override protected void shutDown() throws Exception { - pluginToolbar.removeNavigation(navButton); + clientToolbar.removeNavigation(navButton); } private void updateFeed() 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 d995139d56..ea278f3a19 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 @@ -65,7 +65,7 @@ import net.runelite.client.input.MouseManager; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.ui.NavigationButton; -import net.runelite.client.ui.PluginToolbar; +import net.runelite.client.ui.ClientToolbar; import net.runelite.client.util.StackFormatter; import net.runelite.client.util.Text; import net.runelite.http.api.osbuddy.GrandExchangeClient; @@ -111,7 +111,7 @@ public class GrandExchangePlugin extends Plugin private Client client; @Inject - private PluginToolbar pluginToolbar; + private ClientToolbar clientToolbar; @Inject private GrandExchangeConfig config; @@ -151,7 +151,7 @@ public class GrandExchangePlugin extends Plugin .panel(panel) .build(); - pluginToolbar.addNavigation(button); + clientToolbar.addNavigation(button); if (config.quickLookup()) { @@ -163,7 +163,7 @@ public class GrandExchangePlugin extends Plugin @Override protected void shutDown() { - pluginToolbar.removeNavigation(button); + clientToolbar.removeNavigation(button); mouseManager.unregisterMouseListener(inputListener); keyManager.unregisterKeyListener(inputListener); } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/hiscore/HiscorePlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/hiscore/HiscorePlugin.java index f51787ca20..1139ab8096 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/hiscore/HiscorePlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/hiscore/HiscorePlugin.java @@ -47,7 +47,7 @@ import net.runelite.client.menus.MenuManager; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.ui.NavigationButton; -import net.runelite.client.ui.PluginToolbar; +import net.runelite.client.ui.ClientToolbar; import net.runelite.client.util.Text; import org.apache.commons.lang3.ArrayUtils; @@ -69,7 +69,7 @@ public class HiscorePlugin extends Plugin private Client client; @Inject - private PluginToolbar pluginToolbar; + private ClientToolbar clientToolbar; @Inject private MenuManager menuManager; @@ -110,7 +110,7 @@ public class HiscorePlugin extends Plugin .panel(hiscorePanel) .build(); - pluginToolbar.addNavigation(navButton); + clientToolbar.addNavigation(navButton); if (config.playerOption()) { @@ -126,7 +126,7 @@ public class HiscorePlugin extends Plugin protected void shutDown() throws Exception { hiscorePanel.removeInputKeyListener(autocompleter); - pluginToolbar.removeNavigation(navButton); + clientToolbar.removeNavigation(navButton); menuManager.removePlayerMenuItem(LOOKUP); } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/info/InfoPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/info/InfoPlugin.java index f7734b96a4..a394b6b0b7 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/info/InfoPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/info/InfoPlugin.java @@ -30,7 +30,7 @@ import javax.inject.Inject; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.ui.NavigationButton; -import net.runelite.client.ui.PluginToolbar; +import net.runelite.client.ui.ClientToolbar; @PluginDescriptor( name = "Info Panel", @@ -40,7 +40,7 @@ import net.runelite.client.ui.PluginToolbar; public class InfoPlugin extends Plugin { @Inject - private PluginToolbar pluginToolbar; + private ClientToolbar clientToolbar; private NavigationButton navButton; @@ -63,12 +63,12 @@ public class InfoPlugin extends Plugin .panel(panel) .build(); - pluginToolbar.addNavigation(navButton); + clientToolbar.addNavigation(navButton); } @Override protected void shutDown() { - pluginToolbar.removeNavigation(navButton); + clientToolbar.removeNavigation(navButton); } } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/kourendlibrary/KourendLibraryPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/kourendlibrary/KourendLibraryPlugin.java index b01b4752bf..5c05200c82 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/kourendlibrary/KourendLibraryPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/kourendlibrary/KourendLibraryPlugin.java @@ -51,7 +51,7 @@ import net.runelite.client.game.ItemManager; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.ui.NavigationButton; -import net.runelite.client.ui.PluginToolbar; +import net.runelite.client.ui.ClientToolbar; import net.runelite.client.ui.overlay.OverlayManager; @PluginDescriptor( @@ -67,7 +67,7 @@ public class KourendLibraryPlugin extends Plugin final static boolean debug = false; @Inject - private PluginToolbar pluginToolbar; + private ClientToolbar clientToolbar; @Inject private Client client; @@ -124,7 +124,7 @@ public class KourendLibraryPlugin extends Plugin if (!config.hideButton()) { - pluginToolbar.addNavigation(navButton); + clientToolbar.addNavigation(navButton); } } @@ -140,7 +140,7 @@ public class KourendLibraryPlugin extends Plugin { if (!config.hideButton()) { - pluginToolbar.addNavigation(navButton); + clientToolbar.addNavigation(navButton); } else { @@ -148,11 +148,11 @@ public class KourendLibraryPlugin extends Plugin boolean inRegion = lp != null && lp.getWorldLocation().getRegionID() == REGION; if (inRegion) { - pluginToolbar.addNavigation(navButton); + clientToolbar.addNavigation(navButton); } else { - pluginToolbar.removeNavigation(navButton); + clientToolbar.removeNavigation(navButton); } } }); @@ -163,7 +163,7 @@ public class KourendLibraryPlugin extends Plugin { overlayManager.remove(overlay); - pluginToolbar.removeNavigation(navButton); + clientToolbar.removeNavigation(navButton); } @Subscribe @@ -211,11 +211,11 @@ public class KourendLibraryPlugin extends Plugin { if (inRegion) { - pluginToolbar.addNavigation(navButton); + clientToolbar.addNavigation(navButton); } else { - pluginToolbar.removeNavigation(navButton); + clientToolbar.removeNavigation(navButton); } }); buttonAttached = inRegion; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/notes/NotesPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/notes/NotesPlugin.java index 6fa5131443..e705561b27 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/notes/NotesPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/notes/NotesPlugin.java @@ -35,7 +35,7 @@ import net.runelite.client.config.ConfigManager; import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.ui.NavigationButton; -import net.runelite.client.ui.PluginToolbar; +import net.runelite.client.ui.ClientToolbar; @PluginDescriptor( name = "Notes", @@ -47,7 +47,7 @@ import net.runelite.client.ui.PluginToolbar; public class NotesPlugin extends Plugin { @Inject - private PluginToolbar pluginToolbar; + private ClientToolbar clientToolbar; @Inject private NotesConfig config; @@ -80,13 +80,13 @@ public class NotesPlugin extends Plugin .panel(panel) .build(); - pluginToolbar.addNavigation(navButton); + clientToolbar.addNavigation(navButton); } @Override protected void shutDown() { - pluginToolbar.removeNavigation(navButton); + clientToolbar.removeNavigation(navButton); } @Subscribe diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/screenmarkers/ScreenMarkerPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/screenmarkers/ScreenMarkerPlugin.java index 2242f6ce28..43b44c3658 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/screenmarkers/ScreenMarkerPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/screenmarkers/ScreenMarkerPlugin.java @@ -51,7 +51,7 @@ import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.plugins.screenmarkers.ui.ScreenMarkerPluginPanel; import net.runelite.client.ui.NavigationButton; -import net.runelite.client.ui.PluginToolbar; +import net.runelite.client.ui.ClientToolbar; import net.runelite.client.ui.overlay.OverlayManager; @PluginDescriptor( @@ -79,7 +79,7 @@ public class ScreenMarkerPlugin extends Plugin private MouseManager mouseManager; @Inject - private PluginToolbar pluginToolbar; + private ClientToolbar clientToolbar; @Inject private OverlayManager overlayManager; @@ -121,7 +121,7 @@ public class ScreenMarkerPlugin extends Plugin .panel(pluginPanel) .build(); - pluginToolbar.addNavigation(navigationButton); + clientToolbar.addNavigation(navigationButton); mouseListener = new ScreenMarkerMouseListener(this); } @@ -132,7 +132,7 @@ public class ScreenMarkerPlugin extends Plugin overlayManager.remove(overlay); overlayManager.removeIf(ScreenMarkerOverlay.class::isInstance); screenMarkers.clear(); - pluginToolbar.removeNavigation(navigationButton); + clientToolbar.removeNavigation(navigationButton); setMouseListenerEnabled(false); creatingScreenMarker = false; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/screenshot/ScreenshotPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/screenshot/ScreenshotPlugin.java index f7ff640b19..e6a02d14f5 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/screenshot/ScreenshotPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/screenshot/ScreenshotPlugin.java @@ -43,7 +43,6 @@ import java.io.InputStream; import java.io.InputStreamReader; import java.text.DateFormat; import java.text.SimpleDateFormat; -import net.runelite.api.events.GameTick; import java.time.LocalDate; import java.util.Date; import java.util.EnumSet; @@ -60,6 +59,7 @@ import net.runelite.api.GameState; import net.runelite.api.Point; import net.runelite.api.WorldType; import net.runelite.api.events.ChatMessage; +import net.runelite.api.events.GameTick; import net.runelite.api.events.WidgetLoaded; import net.runelite.api.widgets.Widget; import static net.runelite.api.widgets.WidgetID.BARROWS_REWARD_GROUP_ID; @@ -79,10 +79,10 @@ import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.plugins.screenshot.imgur.ImageUploadRequest; import net.runelite.client.plugins.screenshot.imgur.ImageUploadResponse; +import net.runelite.client.ui.ClientToolbar; import net.runelite.client.ui.ClientUI; import net.runelite.client.ui.DrawManager; import net.runelite.client.ui.NavigationButton; -import net.runelite.client.ui.TitleToolbar; import net.runelite.client.ui.overlay.OverlayManager; import net.runelite.client.util.HotkeyListener; import net.runelite.client.util.Text; @@ -159,7 +159,7 @@ public class ScreenshotPlugin extends Plugin private ClientUI clientUi; @Inject - private TitleToolbar titleToolbar; + private ClientToolbar clientToolbar; @Inject private DrawManager drawManager; @@ -224,7 +224,7 @@ public class ScreenshotPlugin extends Plugin .build()) .build(); - titleToolbar.addNavigation(titleBarButton); + clientToolbar.addNavigation(titleBarButton); } catch (IOException ex) { @@ -236,7 +236,7 @@ public class ScreenshotPlugin extends Plugin protected void shutDown() throws Exception { overlayManager.remove(screenshotOverlay); - titleToolbar.removeNavigation(titleBarButton); + clientToolbar.removeNavigation(titleBarButton); keyManager.unregisterKeyListener(hotkeyListener); } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/skillcalculator/SkillCalculatorPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/skillcalculator/SkillCalculatorPlugin.java index 3bf4240cdb..fe073b7822 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/skillcalculator/SkillCalculatorPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/skillcalculator/SkillCalculatorPlugin.java @@ -36,7 +36,7 @@ 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.ClientToolbar; @PluginDescriptor( name = "Skill Calculator", @@ -61,7 +61,7 @@ public class SkillCalculatorPlugin extends Plugin private SpriteManager spriteManager; @Inject - private PluginToolbar pluginToolbar; + private ClientToolbar clientToolbar; private NavigationButton uiNavigationButton; private SkillCalculatorPanel uiPanel; @@ -85,12 +85,12 @@ public class SkillCalculatorPlugin extends Plugin .priority(6) .panel(uiPanel) .build(); - pluginToolbar.addNavigation(uiNavigationButton); + clientToolbar.addNavigation(uiNavigationButton); } @Override protected void shutDown() throws Exception { - pluginToolbar.removeNavigation(uiNavigationButton); + clientToolbar.removeNavigation(uiNavigationButton); } } \ No newline at end of file diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpTrackerPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpTrackerPlugin.java index de27a3edba..4eb005b5ac 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpTrackerPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpTrackerPlugin.java @@ -52,7 +52,7 @@ import net.runelite.client.plugins.PluginDescriptor; import static net.runelite.client.plugins.xptracker.XpWorldType.NORMAL; import net.runelite.client.task.Schedule; import net.runelite.client.ui.NavigationButton; -import net.runelite.client.ui.PluginToolbar; +import net.runelite.client.ui.ClientToolbar; import net.runelite.http.api.xp.XpClient; @PluginDescriptor( @@ -64,7 +64,7 @@ import net.runelite.http.api.xp.XpClient; public class XpTrackerPlugin extends Plugin { @Inject - private PluginToolbar pluginToolbar; + private ClientToolbar clientToolbar; @Inject private Client client; @@ -115,14 +115,14 @@ public class XpTrackerPlugin extends Plugin .panel(xpPanel) .build(); - pluginToolbar.addNavigation(navButton); + clientToolbar.addNavigation(navButton); } @Override protected void shutDown() throws Exception { xpState.reset(); - pluginToolbar.removeNavigation(navButton); + clientToolbar.removeNavigation(navButton); } @Subscribe diff --git a/runelite-client/src/main/java/net/runelite/client/ui/ClientPluginToolbar.java b/runelite-client/src/main/java/net/runelite/client/ui/ClientPluginToolbar.java index 16ba29bf6f..13d05def08 100644 --- a/runelite-client/src/main/java/net/runelite/client/ui/ClientPluginToolbar.java +++ b/runelite-client/src/main/java/net/runelite/client/ui/ClientPluginToolbar.java @@ -30,7 +30,6 @@ import java.awt.Component; import java.awt.Dimension; import java.util.Map; import java.util.TreeMap; -import java.util.concurrent.atomic.AtomicBoolean; import javax.swing.JToolBar; /** @@ -42,7 +41,7 @@ public class ClientPluginToolbar extends JToolBar private final Map componentMap = new TreeMap<>((a, b) -> ComparisonChain .start() - .compare(a.isTab(), b.isTab()) + .compareTrueFirst(a.isTab(), b.isTab()) .compare(a.getPriority(), b.getPriority()) .compare(a.getTooltip(), b.getTooltip()) .result()); @@ -80,18 +79,18 @@ public class ClientPluginToolbar extends JToolBar private void update() { removeAll(); + boolean isDelimited = false; - final AtomicBoolean isDelimited = new AtomicBoolean(false); - componentMap.forEach((key, value) -> + for (final Map.Entry entry : componentMap.entrySet()) { - if (!key.isTab() && !isDelimited.get()) + if (!entry.getKey().isTab() && !isDelimited) { - isDelimited.set(true); + isDelimited = true; addSeparator(); } - add(value); - }); + add(entry.getValue()); + } repaint(); } diff --git a/runelite-client/src/main/java/net/runelite/client/ui/ClientTitleToolbar.java b/runelite-client/src/main/java/net/runelite/client/ui/ClientTitleToolbar.java index 661de04d92..36509ec27e 100644 --- a/runelite-client/src/main/java/net/runelite/client/ui/ClientTitleToolbar.java +++ b/runelite-client/src/main/java/net/runelite/client/ui/ClientTitleToolbar.java @@ -38,7 +38,7 @@ import javax.swing.JPanel; */ class ClientTitleToolbar extends JPanel { - static final int TITLEBAR_SIZE = 23; + private static final int TITLEBAR_SIZE = 23; private static final int ITEM_PADDING = 4; private final Map componentMap = new TreeMap<>((a, b) -> ComparisonChain @@ -146,7 +146,7 @@ class ClientTitleToolbar extends JPanel private void update() { removeAll(); - componentMap.forEach((key, value) -> add(value)); + componentMap.values().forEach(this::add); repaint(); } } diff --git a/runelite-client/src/main/java/net/runelite/client/ui/PluginToolbar.java b/runelite-client/src/main/java/net/runelite/client/ui/ClientToolbar.java similarity index 87% rename from runelite-client/src/main/java/net/runelite/client/ui/PluginToolbar.java rename to runelite-client/src/main/java/net/runelite/client/ui/ClientToolbar.java index 12fbb78361..781751961c 100644 --- a/runelite-client/src/main/java/net/runelite/client/ui/PluginToolbar.java +++ b/runelite-client/src/main/java/net/runelite/client/ui/ClientToolbar.java @@ -29,20 +29,20 @@ import java.util.HashSet; import java.util.Set; import javax.inject.Inject; import javax.inject.Singleton; -import net.runelite.client.events.PluginToolbarButtonAdded; -import net.runelite.client.events.PluginToolbarButtonRemoved; +import net.runelite.client.events.NavigationButtonAdded; +import net.runelite.client.events.NavigationButtonRemoved; /** * Plugin toolbar buttons holder. */ @Singleton -public class PluginToolbar +public class ClientToolbar { private final EventBus eventBus; private final Set buttons = new HashSet<>(); @Inject - private PluginToolbar(final EventBus eventBus) + private ClientToolbar(final EventBus eventBus) { this.eventBus = eventBus; } @@ -61,7 +61,7 @@ public class PluginToolbar if (buttons.add(button)) { - eventBus.post(new PluginToolbarButtonAdded(button)); + eventBus.post(new NavigationButtonAdded(button)); } } @@ -74,7 +74,7 @@ public class PluginToolbar { if (buttons.remove(button)) { - eventBus.post(new PluginToolbarButtonRemoved(button)); + eventBus.post(new NavigationButtonRemoved(button)); } } } diff --git a/runelite-client/src/main/java/net/runelite/client/ui/ClientUI.java b/runelite-client/src/main/java/net/runelite/client/ui/ClientUI.java index f90aec419e..1a02edc40c 100644 --- a/runelite-client/src/main/java/net/runelite/client/ui/ClientUI.java +++ b/runelite-client/src/main/java/net/runelite/client/ui/ClientUI.java @@ -66,10 +66,8 @@ import net.runelite.client.config.ConfigManager; import net.runelite.client.config.ExpandResizeType; import net.runelite.client.config.RuneLiteConfig; import net.runelite.client.config.WarningOnExit; -import net.runelite.client.events.PluginToolbarButtonAdded; -import net.runelite.client.events.PluginToolbarButtonRemoved; -import net.runelite.client.events.TitleToolbarButtonAdded; -import net.runelite.client.events.TitleToolbarButtonRemoved; +import net.runelite.client.events.NavigationButtonAdded; +import net.runelite.client.events.NavigationButtonRemoved; import net.runelite.client.input.KeyManager; import net.runelite.client.ui.skin.SubstanceRuneLiteLookAndFeel; import net.runelite.client.util.OSType; @@ -171,19 +169,22 @@ public class ClientUI } @Subscribe - public void onPluginToolbarButtonAdded(final PluginToolbarButtonAdded event) + public void onNavigationButtonAdded(final NavigationButtonAdded event) { SwingUtilities.invokeLater(() -> { final NavigationButton navigationButton = event.getButton(); final PluginPanel pluginPanel = navigationButton.getPanel(); + final boolean inTitle = !event.getButton().isTab() && + (config.enableCustomChrome() || SwingUtil.isCustomTitlePanePresent(frame)); + final int iconSize = 16; if (pluginPanel != null) { navContainer.add(pluginPanel.getWrappedPanel(), navigationButton.getTooltip()); } - final JButton button = SwingUtil.createSwingButton(navigationButton, 0, (navButton, jButton) -> + final JButton button = SwingUtil.createSwingButton(navigationButton, iconSize, (navButton, jButton) -> { final PluginPanel panel = navButton.getPanel(); @@ -222,16 +223,24 @@ public class ClientUI } }); - pluginToolbar.addComponent(event.getButton(), button); + if (inTitle) + { + titleToolbar.addComponent(event.getButton(), button); + } + else + { + pluginToolbar.addComponent(event.getButton(), button); + } }); } @Subscribe - public void onPluginToolbarButtonRemoved(final PluginToolbarButtonRemoved event) + public void onNavigationButtonRemoved(final NavigationButtonRemoved event) { SwingUtilities.invokeLater(() -> { pluginToolbar.removeComponent(event.getButton()); + titleToolbar.removeComponent(event.getButton()); final PluginPanel pluginPanel = event.getButton().getPanel(); if (pluginPanel != null) @@ -241,39 +250,6 @@ public class ClientUI }); } - @Subscribe - public void onTitleToolbarButtonAdded(final TitleToolbarButtonAdded event) - { - SwingUtilities.invokeLater(() -> - { - final int iconSize = ClientTitleToolbar.TITLEBAR_SIZE - 6; - final JButton button = SwingUtil.createSwingButton(event.getButton(), iconSize, null); - - if (config.enableCustomChrome() || SwingUtil.isCustomTitlePanePresent(frame)) - { - titleToolbar.addComponent(event.getButton(), button); - return; - } - - pluginToolbar.addComponent(event.getButton(), button); - }); - } - - @Subscribe - public void onTitleToolbarButtonRemoved(final TitleToolbarButtonRemoved event) - { - SwingUtilities.invokeLater(() -> - { - if (config.enableCustomChrome() || SwingUtil.isCustomTitlePanePresent(frame)) - { - titleToolbar.removeComponent(event.getButton()); - return; - } - - pluginToolbar.removeComponent(event.getButton()); - }); - } - /** * Initialize UI. * diff --git a/runelite-client/src/main/java/net/runelite/client/ui/TitleToolbar.java b/runelite-client/src/main/java/net/runelite/client/ui/TitleToolbar.java deleted file mode 100644 index 773af112a5..0000000000 --- a/runelite-client/src/main/java/net/runelite/client/ui/TitleToolbar.java +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Copyright (c) 2017-2018, Adam - * Copyright (c) 2018, Tomas Slusny - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package net.runelite.client.ui; - -import com.google.common.eventbus.EventBus; -import java.util.HashSet; -import java.util.Set; -import javax.inject.Inject; -import javax.inject.Singleton; -import net.runelite.client.events.TitleToolbarButtonAdded; -import net.runelite.client.events.TitleToolbarButtonRemoved; - -/** - * Title toolbar buttons holder. - */ -@Singleton -public class TitleToolbar -{ - private final EventBus eventBus; - private final Set buttons = new HashSet<>(); - - @Inject - private TitleToolbar(final EventBus eventBus) - { - this.eventBus = eventBus; - } - - /** - * Add navigation. - * - * @param button the button - */ - public void addNavigation(final NavigationButton button) - { - if (buttons.contains(button)) - { - return; - } - - if (buttons.add(button)) - { - eventBus.post(new TitleToolbarButtonAdded(button)); - } - } - - /** - * Remove navigation. - * - * @param button the button - */ - public void removeNavigation(final NavigationButton button) - { - if (buttons.remove(button)) - { - eventBus.post(new TitleToolbarButtonRemoved(button)); - } - } -}