RuneliteColorPicker: add onClose consumer

This commit is contained in:
Ron Young
2019-02-23 16:43:14 -06:00
committed by Tomas Slusny
parent 5844c7c5de
commit dc1e409f09
3 changed files with 20 additions and 27 deletions

View File

@@ -429,15 +429,7 @@ public class ConfigPanel extends PluginPanel
colorPickerBtn.setBackground(c);
colorPickerBtn.setText(ColorUtil.toHexColor(c).toUpperCase());
});
colorPicker.addWindowListener(new WindowAdapter()
{
@Override
public void windowClosing(WindowEvent e)
{
changeConfiguration(listItem, config, colorPicker, cd, cid);
}
});
colorPicker.setOnClose(c -> changeConfiguration(listItem, config, colorPicker, cd, cid));
colorPicker.setVisible(true);
}
});

View File

@@ -553,15 +553,7 @@ class ScreenMarkerPanel extends JPanel
marker.getMarker().setFill(c);
updateFill();
});
colorPicker.addWindowListener(new WindowAdapter()
{
@Override
public void windowClosing(WindowEvent e)
{
plugin.updateConfig();
}
});
colorPicker.setOnClose(c -> plugin.updateConfig());
colorPicker.setVisible(true);
}
@@ -575,15 +567,7 @@ class ScreenMarkerPanel extends JPanel
marker.getMarker().setColor(c);
updateBorder();
});
colorPicker.addWindowListener(new WindowAdapter()
{
@Override
public void windowClosing(WindowEvent e)
{
plugin.updateConfig();
}
});
colorPicker.setOnClose(c -> plugin.updateConfig());
colorPicker.setVisible(true);
}
}

View File

@@ -39,6 +39,8 @@ import java.awt.event.FocusAdapter;
import java.awt.event.FocusEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.function.Consumer;
import javax.swing.JDialog;
import javax.swing.JFrame;
@@ -84,6 +86,9 @@ public class RuneliteColorPicker extends JDialog
@Setter
private Consumer<Color> onColorChange;
@Setter
private Consumer<Color> onClose;
public RuneliteColorPicker(Window parent, Color previousColor, String title, boolean alphaHidden)
{
super(parent, "RuneLite Color Picker - " + title, ModalityType.MODELESS);
@@ -265,6 +270,18 @@ public class RuneliteColorPicker extends JDialog
updatePanels();
updateText();
addWindowListener(new WindowAdapter()
{
@Override
public void windowClosing(WindowEvent e)
{
if (onClose != null)
{
onClose.accept(selectedColor);
}
}
});
}
private void updatePanels()