From deabc08bb5025d59f1bd91906f558fcbb70ad62a Mon Sep 17 00:00:00 2001 From: testing-ongithub <96100526+testing-ongithub@users.noreply.github.com> Date: Sat, 19 Mar 2022 08:57:47 -0500 Subject: [PATCH] xp tracker: Add toggle for "Open Wise Old Man" menu option --- .../client/plugins/xptracker/XpInfoBox.java | 1 + .../client/plugins/xptracker/XpPanel.java | 20 +++++++++++++++++++ .../plugins/xptracker/XpTrackerConfig.java | 11 ++++++++++ 3 files changed, 32 insertions(+) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpInfoBox.java b/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpInfoBox.java index 8f6f9d6dbc..97d70676fa 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpInfoBox.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpInfoBox.java @@ -155,6 +155,7 @@ class XpInfoBox extends JPanel @Override public void popupMenuWillBecomeVisible(PopupMenuEvent popupMenuEvent) { + openXpTracker.setVisible(xpTrackerConfig.wiseOldManOpenOption()); canvasItem.setText(xpTrackerPlugin.hasOverlay(skill) ? REMOVE_STATE : ADD_STATE); } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpPanel.java b/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpPanel.java index 0ecce8290d..bf34ad75e5 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpPanel.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpPanel.java @@ -39,6 +39,8 @@ import javax.swing.JPanel; import javax.swing.JPopupMenu; import javax.swing.SwingUtilities; import javax.swing.border.EmptyBorder; +import javax.swing.event.PopupMenuEvent; +import javax.swing.event.PopupMenuListener; import net.runelite.api.Actor; import net.runelite.api.Client; import net.runelite.api.Skill; @@ -112,6 +114,24 @@ class XpPanel extends PluginPanel popupMenu.add(resetPerHour); popupMenu.add(pauseAll); popupMenu.add(unpauseAll); + popupMenu.addPopupMenuListener(new PopupMenuListener() + { + @Override + public void popupMenuWillBecomeVisible(PopupMenuEvent popupMenuEvent) + { + openXpTracker.setVisible(xpTrackerConfig.wiseOldManOpenOption()); + } + + @Override + public void popupMenuWillBecomeInvisible(PopupMenuEvent popupMenuEvent) + { + } + + @Override + public void popupMenuCanceled(PopupMenuEvent popupMenuEvent) + { + } + }); overallPanel.setComponentPopupMenu(popupMenu); final JLabel overallIcon = new JLabel(new ImageIcon(iconManager.getSkillImage(Skill.OVERALL))); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpTrackerConfig.java b/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpTrackerConfig.java index 9ad62e3414..b37c7153d3 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpTrackerConfig.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpTrackerConfig.java @@ -211,4 +211,15 @@ public interface XpTrackerConfig extends Config { return false; } + + @ConfigItem( + position = 15, + keyName = "wiseOldManOpenOption", + name = "Wise Old Man Option", + description = "Adds an option to the XP info box right-click menu to open Wise Old Man" + ) + default boolean wiseOldManOpenOption() + { + return true; + } }