/* * Copyright � 2008, 2010, Oracle and/or its affiliates. All rights reserved */ package com.sun.lwuit.uidemo; import com.sun.lwuit.Button; import com.sun.lwuit.ButtonGroup; import com.sun.lwuit.CheckBox; import com.sun.lwuit.ComponentGroup; import com.sun.lwuit.Container; import com.sun.lwuit.Form; import com.sun.lwuit.Image; import com.sun.lwuit.Label; import com.sun.lwuit.RadioButton; import com.sun.lwuit.plaf.Border; import com.sun.lwuit.layouts.BoxLayout; import com.sun.lwuit.events.ActionEvent; import com.sun.lwuit.events.ActionListener; import java.io.IOException; import com.sun.lwuit.plaf.UIManager; /** * Set of the button types available in the UI * * @author Shai Almog */ public class ButtonsDemo extends Demo { public String getName() { return "Buttons"; } protected String getHelp() { return UIManager.getInstance().localize("buttonHelp", "Help description"); } protected void executeDemo(final Container f) { f.setLayout(new BoxLayout(BoxLayout.Y_AXIS)); ComponentGroup buttonGroup = new ComponentGroup(); Label buttonLabel = new Label("Buttons"); buttonLabel.setUIID("TitleLabel"); f.addComponent(buttonLabel); final Button left = new Button("Left Alignment"); final Button right = new Button("Right Alignment"); final Button center = new Button("Center Alignment"); buttonGroup.addComponent(left); buttonGroup.addComponent(right); buttonGroup.addComponent(center); f.addComponent(buttonGroup); left.getUnselectedStyle().setAlignment(Label.LEFT); left.getSelectedStyle().setAlignment(Label.LEFT); left.getPressedStyle().setAlignment(Label.LEFT); right.getUnselectedStyle().setAlignment(Label.RIGHT); right.getSelectedStyle().setAlignment(Label.RIGHT); right.getPressedStyle().setAlignment(Label.RIGHT); center.getUnselectedStyle().setAlignment(Label.CENTER); center.getSelectedStyle().setAlignment(Label.CENTER); center.getPressedStyle().setAlignment(Label.CENTER); ComponentGroup checkboxGroup = new ComponentGroup(); Label cbLabel = new Label("CheckBox"); cbLabel.setUIID("TitleLabel"); f.addComponent(cbLabel); CheckBox firstCB = new CheckBox("First CheckBox"); checkboxGroup.addComponent(firstCB); CheckBox secondCB = new CheckBox("Second CheckBox"); checkboxGroup.addComponent(secondCB); CheckBox disabledCB = new CheckBox("Disabled CheckBox"); checkboxGroup.addComponent(disabledCB); disabledCB.setEnabled(false); f.addComponent(checkboxGroup); Label bordersLabel = new Label("Borders"); bordersLabel.setUIID("TitleLabel"); f.addComponent(bordersLabel); ComponentGroup radioGroup = new ComponentGroup(); final RadioButton defaultBorder = new RadioButton("Default"); radioGroup.addComponent(defaultBorder); final RadioButton etchedBorder = new RadioButton("Etched Raised Theme"); radioGroup.addComponent(etchedBorder); final RadioButton etchedColors = new RadioButton("Etched Raised Colors"); radioGroup.addComponent(etchedColors); final RadioButton etchedLowBorder = new RadioButton("Etched Lowered Theme"); radioGroup.addComponent(etchedLowBorder); final RadioButton etchedLowColors = new RadioButton("Etched Lowered Colors"); radioGroup.addComponent(etchedLowColors); final RadioButton bevelBorder = new RadioButton("Bevel Raised Theme"); radioGroup.addComponent(bevelBorder); final RadioButton bevelColors = new RadioButton("Bevel Raised Colors"); radioGroup.addComponent(bevelColors); final RadioButton bevelLowBorder = new RadioButton("Bevel Lowered Theme"); radioGroup.addComponent(bevelLowBorder); final RadioButton bevelLowColors = new RadioButton("Bevel Lowered Colors"); radioGroup.addComponent(bevelLowColors); final RadioButton roundBorder = new RadioButton("Round Theme"); radioGroup.addComponent(roundBorder); final RadioButton roundColors = new RadioButton("Round Colors"); radioGroup.addComponent(roundColors); RadioButton disabledRadioButton = new RadioButton("Disabled Radio Button"); disabledRadioButton.setEnabled(false); radioGroup.addComponent(disabledRadioButton); f.addComponent(radioGroup); ActionListener listener = new ActionListener() { private Border lastBorder; private void setBorder(Border b) { lastBorder = b; left.getStyle().setBorder(b); right.getStyle().setBorder(b); center.getStyle().setBorder(b); f.repaint(); } public void actionPerformed(ActionEvent evt) { Object source = evt.getSource(); if(source == defaultBorder) { setBorder(Border.getDefaultBorder()); return; } if(source == etchedBorder) { setBorder(Border.createEtchedRaised()); return; } if(source == etchedColors) { setBorder(Border.createEtchedRaised(0x020202, 0xBBBBBB)); return; } if(source == etchedLowBorder) { setBorder(Border.createEtchedLowered()); return; } if(source == etchedLowColors) { setBorder(Border.createEtchedLowered(0x020202, 0xBBBBBB)); return; } if(source == bevelBorder) { setBorder(Border.createBevelRaised()); return; } if(source == bevelColors) { setBorder(Border.createBevelRaised(0xdddddd, 0xAAAAAA, 0x111111,0x020202)); return; } if(source == bevelLowBorder) { setBorder(Border.createBevelLowered()); return; } if(source == bevelLowColors) { setBorder(Border.createBevelLowered(0xdddddd, 0xAAAAAA, 0x111111,0x020202)); return; } if(source == roundBorder) { setBorder(Border.createRoundBorder(8, 8)); return; } if(source == roundColors) { setBorder(Border.createRoundBorder(8, 8, 0xcccccc)); return; } } }; ButtonGroup group = new ButtonGroup(); group.add(defaultBorder); defaultBorder.addActionListener(listener); group.add(etchedBorder); etchedBorder.addActionListener(listener); group.add(etchedColors); etchedColors.addActionListener(listener); group.add(etchedLowBorder); etchedLowBorder.addActionListener(listener); group.add(etchedLowColors); etchedLowColors.addActionListener(listener); group.add(bevelBorder); bevelBorder.addActionListener(listener); bevelColors.addActionListener(listener); group.add(bevelColors); bevelLowBorder.addActionListener(listener); group.add(bevelLowBorder); bevelLowColors.addActionListener(listener); group.add(bevelLowColors); roundBorder.addActionListener(listener); group.add(roundBorder); roundColors.addActionListener(listener); group.add(roundColors); //setAsDefault.addActionListener(listener); } }