use of com.github.weisj.darklaf.graphics.ThemedColor in project darklaf by weisJ.
the class SplitPaneDemo method createComponent.
@Override
public JComponent createComponent() {
JSplitPane splitPane = new JSplitPane();
JPanel leftPanel = new JPanel();
leftPanel.setBackground(new ThemedColor("glowError"));
leftPanel.setPreferredSize(new Dimension(200, 200));
JPanel rightPanel = new JPanel();
rightPanel.setBackground(new ThemedColor("glowFocus"));
rightPanel.setPreferredSize(new Dimension(200, 200));
splitPane.setLeftComponent(leftPanel);
splitPane.setRightComponent(rightPanel);
SwingUtilities.invokeLater(() -> splitPane.setDividerLocation(0.5));
DemoPanel panel = new DemoPanel(splitPane, new BorderLayout(), 0);
JPanel controlPanel = panel.addControls();
controlPanel.add(new JCheckBox("ContinuousLayout") {
{
LafManager.addThemeChangeListener((ThemeInstalledListener) e -> setSelected(splitPane.isContinuousLayout()));
setSelected(splitPane.isContinuousLayout());
addActionListener(e -> splitPane.setContinuousLayout(isSelected()));
}
});
controlPanel.add(new JCheckBox("OneTouchExpandable") {
{
setSelected(splitPane.isOneTouchExpandable());
addActionListener(e -> splitPane.setOneTouchExpandable(isSelected()));
}
});
controlPanel.add(new JCheckBox("enabled") {
{
setSelected(splitPane.isEnabled());
addActionListener(e -> splitPane.setEnabled(isSelected()));
}
});
controlPanel = panel.addControls();
controlPanel.add(new JLabel("Orientation:", JLabel.RIGHT));
controlPanel.add(new JComboBox<String>() {
{
Map<String, Integer> mapping = new HashMap<String, Integer>() {
{
put("VERTICAL_SPLIT", JSplitPane.VERTICAL_SPLIT);
put("HORIZONTAL_SPLIT", JSplitPane.HORIZONTAL_SPLIT);
}
};
addItem("VERTICAL_SPLIT");
addItem("HORIZONTAL_SPLIT");
setSelectedItem("HORIZONTAL_SPLIT");
addItemListener(e -> splitPane.setOrientation(mapping.get(e.getItem().toString())));
}
}, "sgx");
controlPanel.add(new JLabel(SplitPaneConstants.KEY_STYLE + ":", JLabel.RIGHT));
controlPanel.add(new JComboBox<DividerStyle>() {
{
for (DividerStyle style : DividerStyle.values()) {
addItem(style);
}
setSelectedItem(DividerStyle.get(UIManager.get("SplitPane.defaultDividerStyle")));
addItemListener(e -> splitPane.putClientProperty(SplitPaneConstants.KEY_STYLE, e.getItem()));
}
}, "sgx");
return panel;
}
Aggregations