use of com.github.weisj.darklaf.ui.DemoPanel in project darklaf by weisJ.
the class TextComponentDemo method createComponent.
@Override
public JComponent createComponent() {
T text = createTextComponent();
String txt = text.getText();
if (txt == null || txt.isEmpty()) {
text.setText(StringUtil.repeat(StringUtil.repeat("Word ", 5) + "\n", 5));
}
DemoPanel panel = new DemoPanel(new JScrollPane(text), new BorderLayout(), 10);
Border textBorder = new DarkTextBorder();
Border border = text.getBorder();
JPanel controlPanel = panel.addControls();
controlPanel.add(new JCheckBox("enabled") {
{
setSelected(text.isEnabled());
addActionListener(e -> text.setEnabled(isSelected()));
}
});
controlPanel.add(new JCheckBox(PropertyKey.EDITABLE) {
{
setSelected(text.isEditable());
addActionListener(e -> text.setEditable(isSelected()));
}
});
controlPanel.add(new JCheckBox("LeftToRight") {
{
setSelected(text.getComponentOrientation().isLeftToRight());
addActionListener(e -> text.setComponentOrientation(isSelected() ? ComponentOrientation.LEFT_TO_RIGHT : ComponentOrientation.RIGHT_TO_LEFT));
}
});
controlPanel.add(new JCheckBox("text border") {
{
setSelected(text.getBorder() instanceof DarkTextBorder);
addActionListener(e -> text.setBorder(isSelected() ? textBorder : border));
}
});
controlPanel.add(new JCheckBox(DarkTextUI.KEY_ROUNDED_SELECTION) {
{
setSelected(PropertyUtil.getBooleanProperty(text, DarkTextUI.KEY_ROUNDED_SELECTION));
addActionListener(e -> text.putClientProperty(DarkTextUI.KEY_ROUNDED_SELECTION, isSelected()));
}
});
controlPanel.add(new JCheckBox(DarkTextUI.KEY_EXTEND_LINE_SELECTION) {
{
setSelected(PropertyUtil.getBooleanProperty(text, DarkTextUI.KEY_EXTEND_LINE_SELECTION));
addActionListener(e -> text.putClientProperty(DarkTextUI.KEY_EXTEND_LINE_SELECTION, isSelected()));
}
});
controlPanel.add(new JCheckBox(DarkTextUI.KEY_HAS_ERROR) {
{
setSelected(PropertyUtil.getBooleanProperty(text, DarkTextUI.KEY_HAS_ERROR));
addActionListener(e -> text.putClientProperty(DarkTextUI.KEY_HAS_ERROR, isSelected()));
}
});
controlPanel.add(new JCheckBox(DarkTextUI.KEY_HAS_WARNING) {
{
setSelected(PropertyUtil.getBooleanProperty(text, DarkTextUI.KEY_HAS_WARNING));
addActionListener(e -> text.putClientProperty(DarkTextUI.KEY_HAS_WARNING, isSelected()));
}
});
return panel;
}
use of com.github.weisj.darklaf.ui.DemoPanel in project darklaf by weisJ.
the class ToolTipDemo method createComponent.
@Override
public JComponent createComponent() {
JButton button = new JButton("Demo Button", DemoResources.FOLDER_ICON);
DemoPanel panel = new DemoPanel(button);
ToolTipContext context = new ToolTipContext(button).setAlignment(Alignment.CENTER).setCenterAlignment(Alignment.SOUTH);
ToolTipContext.setDefaultContext(context);
button.setToolTipText(StringUtil.toHtml("<p style=\"color:red;\">This is the ToolTip demo text!\n" + "<p style=\"color:blue;\">This is the ToolTip demo text!\n" + "<p style=\"color:green;\">This is the ToolTip demo text!\n"));
button.putClientProperty(DarkToolTipUI.KEY_STYLE, DarkToolTipUI.VARIANT_BALLOON);
button.putClientProperty(DarkToolTipUI.KEY_CONTEXT, context);
JPanel controlPanel = panel.addControls(3);
controlPanel.add(new JCheckBox("Align inside") {
{
setSelected(context.isAlignInside());
addActionListener(e -> context.setAlignInside(isSelected()));
}
});
controlPanel.add(new JCheckBox("Ignore Border") {
{
setSelected(context.isIgnoreBorder());
addActionListener(e -> context.setIgnoreBorder(isSelected()));
}
});
controlPanel.add(new JCheckBox("Use best fit") {
{
setSelected(context.isBestFit());
addActionListener(e -> context.setUseBestFit(isSelected()));
}
});
controlPanel = panel.addControls();
controlPanel.add(new JLabel("Tooltip Style:", JLabel.RIGHT));
controlPanel.add(new JComboBox<ToolTipStyle>(ToolTipStyle.values()) {
{
setSelectedItem(ToolTipStyle.BALLOON);
addItemListener(e -> button.putClientProperty(DarkToolTipUI.KEY_STYLE, e.getItem()));
}
}, "sgx");
controlPanel.add(new JLabel("Alignment:", JLabel.RIGHT));
controlPanel.add(new JComboBox<Alignment>(Alignment.values()) {
{
setSelectedItem(context.getAlignment());
addItemListener(e -> context.setAlignment((Alignment) e.getItem()));
}
}, "sgx");
controlPanel.add(new JLabel("Center Alignment:", JLabel.RIGHT));
controlPanel.add(new JComboBox<Alignment>(Alignment.values()) {
{
setSelectedItem(context.getCenterAlignment());
addItemListener(e -> context.setCenterAlignment((Alignment) e.getItem()));
}
}, "sgx");
controlPanel.add(new JLabel("Alignment Strategy:", JLabel.RIGHT));
controlPanel.add(new JComboBox<AlignmentStrategy>(AlignmentStrategy.values()) {
{
setSelectedItem(context.getAlignmentStrategy());
addItemListener(e -> context.setAlignmentStrategy((AlignmentStrategy) e.getItem()));
}
}, "sgx");
return panel;
}
use of com.github.weisj.darklaf.ui.DemoPanel in project darklaf by weisJ.
the class InternalFrameDemo method createComponent.
@Override
public JComponent createComponent() {
desktop = new JDesktopPane();
JPanel panel = new JPanel();
panel.setBorder(new CompoundBorder(new EmptyBorder(20, 20, 20, 20), DarkBorders.createLineBorder(1, 1, 1, 1)));
panel.setLayout(new BorderLayout());
panel.add(desktop, BorderLayout.CENTER);
createFrame();
desktop.setDragMode(JDesktopPane.LIVE_DRAG_MODE);
return new DemoPanel(desktop, new BorderLayout(), 10);
}
use of com.github.weisj.darklaf.ui.DemoPanel in project darklaf by weisJ.
the class LabelDemoBase method createComponent.
@Override
public JComponent createComponent() {
T label = createLabel();
DemoPanel panel = new DemoPanel(label);
createControlPanel(panel, label);
return panel;
}
use of com.github.weisj.darklaf.ui.DemoPanel in project darklaf by weisJ.
the class ToggleButtonListDemo method createComponent.
@Override
public JComponent createComponent() {
JToggleButtonList list = new JToggleButtonList();
list.addToggleButton(new JCheckBox("CheckBox"));
list.addToggleButton(new JRadioButton("RadioButton"));
JToggleButton toggleButton = new JToggleButton("Slider ToggleButton");
toggleButton.putClientProperty(ToggleButtonConstants.KEY_VARIANT, DarkToggleButtonUI.VARIANT_SLIDER);
list.addToggleButton(toggleButton);
for (int i = 0; i < 20; i++) {
list.addToggleButton("Item " + i);
}
JPanel panel = new JPanel(new BorderLayout());
panel.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));
panel.add(new OverlayScrollPane(list));
return new DemoPanel(panel, new BorderLayout(), 0);
}
Aggregations