Merge pull request #10050 from deathbeam/fix-button-toggling
Properly update plugin toggle button on plugin state change
This commit is contained in:
@@ -306,7 +306,7 @@ public class ConfigPanel extends PluginPanel
|
||||
topPanelBackButton.setToolTipText("Back");
|
||||
topPanel.add(topPanelBackButton, BorderLayout.WEST);
|
||||
|
||||
topPanel.add(listItem.createToggleButton(), BorderLayout.EAST);
|
||||
topPanel.add(listItem.getConfigToggleButton(), BorderLayout.EAST);
|
||||
|
||||
String name = listItem.getName();
|
||||
JLabel title = new JLabel(name);
|
||||
|
||||
@@ -39,7 +39,6 @@ import net.runelite.client.plugins.Plugin;
|
||||
import net.runelite.client.plugins.PluginDescriptor;
|
||||
import net.runelite.client.plugins.PluginManager;
|
||||
import net.runelite.client.ui.ClientToolbar;
|
||||
import net.runelite.client.ui.ClientUI;
|
||||
import net.runelite.client.ui.NavigationButton;
|
||||
import net.runelite.client.ui.components.colorpicker.ColorPickerManager;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
@@ -53,9 +52,6 @@ import net.runelite.client.util.ImageUtil;
|
||||
)
|
||||
public class ConfigPlugin extends Plugin
|
||||
{
|
||||
@Inject
|
||||
private ClientUI clientUI;
|
||||
|
||||
@Inject
|
||||
private ClientToolbar clientToolbar;
|
||||
|
||||
|
||||
@@ -91,11 +91,14 @@ class PluginListItem extends JPanel
|
||||
@Getter
|
||||
private final String description;
|
||||
|
||||
@Getter
|
||||
private final IconButton configToggleButton;
|
||||
|
||||
private final List<String> keywords = new ArrayList<>();
|
||||
|
||||
private final IconButton pinButton = new IconButton(OFF_STAR);
|
||||
private final IconButton configButton = new IconButton(CONFIG_ICON, CONFIG_ICON_HOVER);
|
||||
private final IconButton toggleButton = new IconButton(OFF_SWITCHER);
|
||||
private final IconButton toggleButton;
|
||||
|
||||
private boolean isPluginEnabled = false;
|
||||
|
||||
@@ -215,9 +218,10 @@ class PluginListItem extends JPanel
|
||||
addLabelPopupMenu(nameLabel, popupMenuItems);
|
||||
add(nameLabel, BorderLayout.CENTER);
|
||||
|
||||
toggleButton.setPreferredSize(new Dimension(25, 0));
|
||||
attachToggleButtonListener(toggleButton);
|
||||
toggleButton = createToggleButton();
|
||||
buttonPanel.add(toggleButton);
|
||||
|
||||
configToggleButton = createToggleButton();
|
||||
}
|
||||
|
||||
private void attachToggleButtonListener(IconButton button)
|
||||
@@ -245,9 +249,9 @@ class PluginListItem extends JPanel
|
||||
});
|
||||
}
|
||||
|
||||
IconButton createToggleButton()
|
||||
private IconButton createToggleButton()
|
||||
{
|
||||
IconButton button = new IconButton(OFF_SWITCHER);
|
||||
final IconButton button = new IconButton(OFF_SWITCHER);
|
||||
button.setPreferredSize(new Dimension(25, 0));
|
||||
updateToggleButton(button);
|
||||
attachToggleButtonListener(button);
|
||||
@@ -258,6 +262,7 @@ class PluginListItem extends JPanel
|
||||
{
|
||||
isPluginEnabled = enabled;
|
||||
updateToggleButton(toggleButton);
|
||||
updateToggleButton(configToggleButton);
|
||||
}
|
||||
|
||||
void setPinned(boolean pinned)
|
||||
|
||||
Reference in New Issue
Block a user