add buttons :o

This commit is contained in:
ThatGamerBlue
2021-02-14 14:41:21 +00:00
parent e8ba6bfd52
commit 49973adb21
2 changed files with 33 additions and 0 deletions

View File

@@ -0,0 +1,5 @@
package net.runelite.client.config;
public class Button
{
}

View File

@@ -66,6 +66,8 @@ import javax.swing.border.MatteBorder;
import javax.swing.event.ChangeListener;
import javax.swing.text.JTextComponent;
import lombok.extern.slf4j.Slf4j;
import net.runelite.api.events.ConfigButtonClicked;
import net.runelite.client.config.Button;
import net.runelite.client.config.ConfigDescriptor;
import net.runelite.client.config.ConfigGroup;
import net.runelite.client.config.ConfigItem;
@@ -78,6 +80,7 @@ import net.runelite.client.config.Keybind;
import net.runelite.client.config.ModifierlessKeybind;
import net.runelite.client.config.Range;
import net.runelite.client.config.Units;
import net.runelite.client.eventbus.EventBus;
import net.runelite.client.eventbus.Subscribe;
import net.runelite.client.events.ExternalPluginsChanged;
import net.runelite.client.events.PluginChanged;
@@ -130,6 +133,9 @@ class ConfigPanel extends PluginPanel
@Inject
private ColorPickerManager colorPickerManager;
@Inject
private EventBus eventBus;
private PluginConfigurationDescriptor pluginConfig = null;
static
@@ -334,6 +340,28 @@ class ConfigPanel extends PluginPanel
PluginListItem.addLabelPopupMenu(configEntryName, createResetMenuItem(pluginConfig, cid));
item.add(configEntryName, BorderLayout.CENTER);
if (cid.getType() == Button.class)
{
try
{
ConfigItem cidItem = cid.getItem();
JButton button = new JButton(cidItem.name());
button.addActionListener((e) ->
{
ConfigButtonClicked event = new ConfigButtonClicked();
event.setGroup(cd.getGroup().value());
event.setKey(cid.getItem().keyName());
eventBus.post(event);
});
item.add(button);
}
catch (Exception ex)
{
log.error("Adding action listener failed: {}", ex.getMessage());
ex.printStackTrace();
}
}
if (cid.getType() == boolean.class)
{
JCheckBox checkbox = new JCheckBox();