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 08a379875b..7a6cf9e7d8 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 @@ -78,6 +78,7 @@ public class ConfigPlugin extends Plugin navButton = NavigationButton.builder() .name("Configuration") .icon(icon) + .priority(0) .panel(configPanel) .build(); 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 cebeccac04..9c0ebab009 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 @@ -122,6 +122,7 @@ public class DevToolsPlugin extends Plugin navButton = NavigationButton.builder() .name("Developer Tools") .icon(icon) + .priority(1) .panel(panel) .build(); 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 5177308528..5af1974cf5 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 @@ -98,6 +98,7 @@ public class FarmingTrackerPlugin extends Plugin .name("Farming Tracker") .icon(icon) .panel(panel) + .priority(4) .build(); pluginToolbar.addNavigation(navButton); 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 fa8bff265a..d1970191d1 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 @@ -93,6 +93,7 @@ public class FeedPlugin extends Plugin navButton = NavigationButton.builder() .name("News Feed") .icon(icon) + .priority(8) .panel(feedPanel) .build(); 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 21078d646f..1a2788e0c7 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 @@ -114,6 +114,7 @@ public class GrandExchangePlugin extends Plugin button = NavigationButton.builder() .name("GE Offers") .icon(icon) + .priority(3) .panel(panel) .build(); 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 499a8777e6..5ad19a9f55 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 @@ -98,12 +98,13 @@ public class HiscorePlugin extends Plugin BufferedImage icon; synchronized (ImageIO.class) { - icon = ImageIO.read(getClass().getResourceAsStream("hiscore.gif")); + icon = ImageIO.read(getClass().getResourceAsStream("normal.png")); } navButton = NavigationButton.builder() .name("Hiscore") .icon(icon) + .priority(5) .panel(hiscorePanel) .build(); 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 bb14b4ea3e..0b1905ff98 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 @@ -58,6 +58,7 @@ public class InfoPlugin extends Plugin navButton = NavigationButton.builder() .name("Info") .icon(icon) + .priority(9) .panel(panel) .build(); 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 154abbcb9e..83406e0f2d 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 @@ -94,6 +94,7 @@ public class KourendLibraryPlugin extends Plugin navButton = NavigationButton.builder() .name("Kourend Library") + .priority(6) .icon(icon) .panel(panel) .build(); 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 0cd89cfa66..a6fac2de52 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 @@ -74,6 +74,7 @@ public class NotesPlugin extends Plugin navButton = NavigationButton.builder() .name("Notes") .icon(icon) + .priority(7) .panel(panel) .build(); 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 1a97034673..e99e3d16bd 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 @@ -122,6 +122,7 @@ public class XpTrackerPlugin extends Plugin navButton = NavigationButton.builder() .name("XP Tracker") .icon(icon) + .priority(2) .panel(xpPanel) .build(); diff --git a/runelite-client/src/main/java/net/runelite/client/ui/NavigationButton.java b/runelite-client/src/main/java/net/runelite/client/ui/NavigationButton.java index 9da89f2185..9695c765fe 100644 --- a/runelite-client/src/main/java/net/runelite/client/ui/NavigationButton.java +++ b/runelite-client/src/main/java/net/runelite/client/ui/NavigationButton.java @@ -74,6 +74,12 @@ public class NavigationButton */ private PluginPanel panel; + + /** + * The order in which the button should be displayed in the side bar. (from lower to higher) + */ + private int priority; + /** * Map of key-value pairs for setting the popup menu */ diff --git a/runelite-client/src/main/java/net/runelite/client/ui/PluginToolbar.java b/runelite-client/src/main/java/net/runelite/client/ui/PluginToolbar.java index 4ef441f7a6..5979a133d7 100644 --- a/runelite-client/src/main/java/net/runelite/client/ui/PluginToolbar.java +++ b/runelite-client/src/main/java/net/runelite/client/ui/PluginToolbar.java @@ -24,8 +24,8 @@ */ package net.runelite.client.ui; +import com.google.common.collect.ComparisonChain; import com.google.common.eventbus.EventBus; -import java.util.Comparator; import java.util.TreeSet; import javax.inject.Inject; import javax.inject.Singleton; @@ -39,7 +39,11 @@ import net.runelite.client.events.PluginToolbarButtonRemoved; public class PluginToolbar { private final EventBus eventBus; - private final TreeSet buttons = new TreeSet<>(Comparator.comparing(NavigationButton::getName)); + private final TreeSet buttons = new TreeSet<>((a, b) -> + ComparisonChain.start() + .compare(a.getPriority(), b.getPriority()) + .compare(a.getName(), b.getName()) + .result()); @Inject private PluginToolbar(final EventBus eventBus) diff --git a/runelite-client/src/main/java/net/runelite/client/util/SwingUtil.java b/runelite-client/src/main/java/net/runelite/client/util/SwingUtil.java index 90790cbf36..82e7ec726d 100644 --- a/runelite-client/src/main/java/net/runelite/client/util/SwingUtil.java +++ b/runelite-client/src/main/java/net/runelite/client/util/SwingUtil.java @@ -310,6 +310,7 @@ public class SwingUtil : navigationButton.getIcon(); final JButton button = new JButton(); + button.setMaximumSize(new Dimension(30, 30)); button.setName(navigationButton.getName()); button.setToolTipText(navigationButton.getTooltip()); button.setIcon(new ImageIcon(scaledImage)); diff --git a/runelite-client/src/main/resources/net/runelite/client/plugins/account/login_icon.png b/runelite-client/src/main/resources/net/runelite/client/plugins/account/login_icon.png index eed416cfd1..1ba7ac1fae 100644 Binary files a/runelite-client/src/main/resources/net/runelite/client/plugins/account/login_icon.png and b/runelite-client/src/main/resources/net/runelite/client/plugins/account/login_icon.png differ diff --git a/runelite-client/src/main/resources/net/runelite/client/plugins/account/logout_icon.png b/runelite-client/src/main/resources/net/runelite/client/plugins/account/logout_icon.png index 8d8ee8c565..b1bfcd1115 100644 Binary files a/runelite-client/src/main/resources/net/runelite/client/plugins/account/logout_icon.png and b/runelite-client/src/main/resources/net/runelite/client/plugins/account/logout_icon.png differ diff --git a/runelite-client/src/main/resources/net/runelite/client/plugins/feed/icon.png b/runelite-client/src/main/resources/net/runelite/client/plugins/feed/icon.png index 95b048b153..20ef822883 100644 Binary files a/runelite-client/src/main/resources/net/runelite/client/plugins/feed/icon.png and b/runelite-client/src/main/resources/net/runelite/client/plugins/feed/icon.png differ diff --git a/runelite-client/src/main/resources/net/runelite/client/plugins/grandexchange/ge_icon.png b/runelite-client/src/main/resources/net/runelite/client/plugins/grandexchange/ge_icon.png index 0783e0cd32..6455733f8f 100644 Binary files a/runelite-client/src/main/resources/net/runelite/client/plugins/grandexchange/ge_icon.png and b/runelite-client/src/main/resources/net/runelite/client/plugins/grandexchange/ge_icon.png differ diff --git a/runelite-client/src/main/resources/net/runelite/client/plugins/info/info_icon.png b/runelite-client/src/main/resources/net/runelite/client/plugins/info/info_icon.png index 565f2a48b2..f4d052870a 100644 Binary files a/runelite-client/src/main/resources/net/runelite/client/plugins/info/info_icon.png and b/runelite-client/src/main/resources/net/runelite/client/plugins/info/info_icon.png differ diff --git a/runelite-client/src/main/resources/net/runelite/client/plugins/kourendlibrary/panel_icon.png b/runelite-client/src/main/resources/net/runelite/client/plugins/kourendlibrary/panel_icon.png index cb569cd1be..3b116835d6 100644 Binary files a/runelite-client/src/main/resources/net/runelite/client/plugins/kourendlibrary/panel_icon.png and b/runelite-client/src/main/resources/net/runelite/client/plugins/kourendlibrary/panel_icon.png differ diff --git a/runelite-client/src/main/resources/net/runelite/client/plugins/notes/notes_icon.png b/runelite-client/src/main/resources/net/runelite/client/plugins/notes/notes_icon.png index e94292baf1..31379ce441 100644 Binary files a/runelite-client/src/main/resources/net/runelite/client/plugins/notes/notes_icon.png and b/runelite-client/src/main/resources/net/runelite/client/plugins/notes/notes_icon.png differ diff --git a/runelite-client/src/main/resources/net/runelite/client/plugins/screenshot/screenshot.png b/runelite-client/src/main/resources/net/runelite/client/plugins/screenshot/screenshot.png index 9a4f892bd7..cae8ee2341 100644 Binary files a/runelite-client/src/main/resources/net/runelite/client/plugins/screenshot/screenshot.png and b/runelite-client/src/main/resources/net/runelite/client/plugins/screenshot/screenshot.png differ