Search in sources :

Example 11 with AbstractButton

use of javax.swing.AbstractButton in project jdk8u_jdk by JetBrains.

the class Test6524757 method create.

private static Object[] create() {
    JFrame frame = new JFrame();
    frame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
    frame.setVisible(true);
    // show color chooser
    JColorChooser chooser = new JColorChooser();
    JDialog dialog = JColorChooser.createDialog(frame, null, false, chooser, null, null);
    dialog.setVisible(true);
    // process all values
    List<Object> list = new ArrayList<Object>(KEYS.length);
    Component component = getC(getC(dialog.getLayeredPane(), 0), 1);
    AbstractButton ok = (AbstractButton) getC(component, 0);
    AbstractButton cancel = (AbstractButton) getC(component, 1);
    AbstractButton reset = (AbstractButton) getC(component, 2);
    list.add(ok.getText());
    list.add(cancel.getText());
    list.add(reset.getText());
    list.add(Integer.valueOf(reset.getMnemonic()));
    for (int i = 0; i < 5; i++) {
        AbstractColorChooserPanel panel = (AbstractColorChooserPanel) getC(getC(getC(chooser, 0), i), 0);
        list.add(panel.getDisplayName());
        list.add(Integer.valueOf(panel.getMnemonic()));
        if (i == 0) {
            JLabel label = (JLabel) getC(getC(panel, 0), 1);
            JPanel upper = (JPanel) getC(getC(getC(panel, 0), 0), 0);
            JPanel lower = (JPanel) getC(getC(getC(panel, 0), 2), 0);
            addSize(list, upper, 1, 1, 31, 9);
            list.add(label.getText());
            addSize(list, lower, 1, 1, 5, 7);
        } else {
            Component container = getC(panel, 0);
            for (int j = 0; j < 3; j++) {
                AbstractButton button = (AbstractButton) getC(container, j);
                list.add(button.getText());
            }
            JLabel label = (JLabel) getC(container, 3);
            list.add(label.getText());
            if (i == 4) {
                label = (JLabel) getC(container, 4);
                list.add(label.getText());
            }
            if (i == 3) {
                label = (JLabel) getC(panel, 1);
                list.add(label.getText());
                list.add(Integer.valueOf(label.getDisplayedMnemonic()));
            }
        }
    }
    // close dialog
    dialog.setVisible(false);
    dialog.dispose();
    // close frame
    frame.setVisible(false);
    frame.dispose();
    return list.toArray();
}
Also used : JPanel(javax.swing.JPanel) AbstractColorChooserPanel(javax.swing.colorchooser.AbstractColorChooserPanel) AbstractButton(javax.swing.AbstractButton) JFrame(javax.swing.JFrame) ArrayList(java.util.ArrayList) JLabel(javax.swing.JLabel) JComponent(javax.swing.JComponent) Component(java.awt.Component) JColorChooser(javax.swing.JColorChooser) JDialog(javax.swing.JDialog)

Example 12 with AbstractButton

use of javax.swing.AbstractButton in project jdk8u_jdk by JetBrains.

the class bug7199708 method main.

public static void main(String[] args) throws Exception {
    SunToolkit toolkit = (SunToolkit) Toolkit.getDefaultToolkit();
    Robot robot = new Robot();
    robot.setAutoDelay(50);
    final File folder = createLargeFolder();
    UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel");
    SwingUtilities.invokeLater(new Runnable() {

        public void run() {
            fileChooser = new JFileChooser(folder);
            fileChooser.showSaveDialog(null);
        }
    });
    toolkit.realSync();
    SwingUtilities.invokeLater(new Runnable() {

        public void run() {
            final String detailsTooltip = UIManager.getString("FileChooser." + "detailsViewButtonToolTipText", fileChooser.getLocale());
            doAction(fileChooser, new ComponentAction() {

                @Override
                public boolean accept(Component component) {
                    return (component instanceof AbstractButton) && detailsTooltip.equals(((AbstractButton) component).getToolTipText());
                }

                @Override
                public void perform(Component component) {
                    ((AbstractButton) component).doClick();
                }
            });
            doAction(fileChooser, new ComponentAction() {

                @Override
                public boolean accept(Component component) {
                    return (component instanceof JTable);
                }

                @Override
                public void perform(Component component) {
                    Point tableLocation = component.getLocationOnScreen();
                    locationX = (int) tableLocation.getX();
                    locationY = (int) tableLocation.getY();
                    width = (int) fileChooser.getBounds().getWidth();
                }
            });
        }
    });
    toolkit.realSync();
    int d = 25;
    for (int i = 0; i < width / d; i++) {
        robot.mouseMove(locationX + i * d, locationY + 5);
        robot.mousePress(InputEvent.BUTTON1_MASK);
        robot.mouseRelease(InputEvent.BUTTON1_MASK);
        toolkit.realSync();
    }
    robot.keyPress(KeyEvent.VK_ESCAPE);
    robot.keyRelease(KeyEvent.VK_ESCAPE);
}
Also used : AbstractButton(javax.swing.AbstractButton) JFileChooser(javax.swing.JFileChooser) JTable(javax.swing.JTable) SunToolkit(sun.awt.SunToolkit) Point(java.awt.Point) Component(java.awt.Component) Robot(java.awt.Robot) File(java.io.File) Point(java.awt.Point)

Example 13 with AbstractButton

use of javax.swing.AbstractButton in project JMRI by JMRI.

the class JmriJFrameServlet method sendClick.

void sendClick(String name, Component c, int xg, int yg, Container FrameContentPane) {
    // global positions
    int x = xg - c.getLocation().x;
    int y = yg - c.getLocation().y;
    // log.debug("component is {}", c);
    log.debug("Local click at {},{}", x, y);
    if (c.getClass().equals(JButton.class)) {
        ((AbstractButton) c).doClick();
    } else if (c.getClass().equals(JCheckBox.class)) {
        ((AbstractButton) c).doClick();
    } else if (c.getClass().equals(JRadioButton.class)) {
        ((AbstractButton) c).doClick();
    } else if (MouseListener.class.isAssignableFrom(c.getClass())) {
        log.debug("Invoke directly on MouseListener, at {},{}", x, y);
        sendClickSequence((MouseListener) c, c, x, y);
    } else if (c instanceof jmri.jmrit.display.MultiSensorIcon) {
        log.debug("Invoke Clicked on MultiSensorIcon");
        MouseEvent e = new MouseEvent(c, MouseEvent.MOUSE_CLICKED, // time
        0, // modifiers
        0, // this component expects global positions for some reason
        xg, // this component expects global positions for some reason
        yg, // one click
        1, // not a popup
        false);
        ((Positionable) c).doMouseClicked(e);
    } else if (Positionable.class.isAssignableFrom(c.getClass())) {
        log.debug("Invoke Pressed, Released and Clicked on Positionable");
        MouseEvent e = new MouseEvent(c, MouseEvent.MOUSE_PRESSED, // time
        0, // modifiers
        0, // x, y not in this component?
        x, // x, y not in this component?
        y, // one click
        1, // not a popup
        false);
        ((jmri.jmrit.display.Positionable) c).doMousePressed(e);
        e = new MouseEvent(c, MouseEvent.MOUSE_RELEASED, // time
        0, // modifiers
        0, // x, y not in this component?
        x, // x, y not in this component?
        y, // one click
        1, // not a popup
        false);
        ((jmri.jmrit.display.Positionable) c).doMouseReleased(e);
        e = new MouseEvent(c, MouseEvent.MOUSE_CLICKED, // time
        0, // modifiers
        0, // x, y not in this component?
        x, // x, y not in this component?
        y, // one click
        1, // not a popup
        false);
        ((jmri.jmrit.display.Positionable) c).doMouseClicked(e);
    } else {
        MouseListener[] la = c.getMouseListeners();
        log.debug("Invoke {} contained mouse listeners", la.length);
        log.debug("component is {}", c);
        // y -= (int)(pc.getY() - pf.getY());
        for (MouseListener ml : la) {
            log.debug("Send click sequence at {},{}", x, y);
            sendClickSequence(ml, c, x, y);
        }
    }
}
Also used : JCheckBox(javax.swing.JCheckBox) AbstractButton(javax.swing.AbstractButton) MouseListener(java.awt.event.MouseListener) MouseEvent(java.awt.event.MouseEvent) Positionable(jmri.jmrit.display.Positionable)

Example 14 with AbstractButton

use of javax.swing.AbstractButton in project pcgen by PCGen.

the class OptionsPathDialog method addRadioButton.

private void addRadioButton(String text, String command, ButtonGroup group, ActionListener listener, GridBagConstraints gbc) {
    boolean selected = command.equals(selectedDir);
    if (selected) {
        //for i18n this will need to be handled differently
        text += " (default)";
    }
    AbstractButton rButton = new JRadioButton(text);
    rButton.setActionCommand(command);
    rButton.setSelected(selected);
    rButton.addActionListener(listener);
    group.add(rButton);
    getContentPane().add(rButton, gbc);
}
Also used : AbstractButton(javax.swing.AbstractButton) JRadioButton(javax.swing.JRadioButton)

Example 15 with AbstractButton

use of javax.swing.AbstractButton in project pcgen by PCGen.

the class WriteDirectoryPanel method setupDisplay.

@Override
public void setupDisplay(JPanel panel, final CDOMObject pc) {
    panel.setLayout(layout);
    Component label = new JLabel("Please select the Directory where Converted files should be written: ");
    AbstractButton button = new JButton("Browse...");
    button.setMnemonic('r');
    button.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent arg0) {
            JFileChooser chooser = new JFileChooser();
            chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
            chooser.setDialogType(JFileChooser.OPEN_DIALOG);
            chooser.setCurrentDirectory(path.getParentFile());
            chooser.setSelectedFile(path);
            while (true) {
                int open = chooser.showOpenDialog(null);
                if (open == JFileChooser.APPROVE_OPTION) {
                    File fileToOpen = chooser.getSelectedFile();
                    if (fileToOpen.isDirectory() && fileToOpen.canRead() && fileToOpen.canWrite()) {
                        path = fileToOpen;
                        pc.put(ObjectKey.WRITE_DIRECTORY, path);
                        fileLabel.setText(path.getAbsolutePath());
                        PCGenSettings context = PCGenSettings.getInstance();
                        context.setProperty(PCGenSettings.CONVERT_OUTPUT_SAVE_PATH, path.getAbsolutePath());
                        showWarning();
                        break;
                    }
                    JOptionPane.showMessageDialog(null, "Selection must be a valid " + "(readable & writeable) Directory");
                    chooser.setCurrentDirectory(path.getParentFile());
                } else if (open == JFileChooser.CANCEL_OPTION) {
                    break;
                }
            }
        }
    });
    panel.add(label);
    panel.add(fileLabel);
    panel.add(button);
    panel.add(warningLabel);
    showWarning();
    layout.putConstraint(SpringLayout.NORTH, label, 50, SpringLayout.NORTH, panel);
    layout.putConstraint(SpringLayout.NORTH, fileLabel, 75 + label.getPreferredSize().height, SpringLayout.NORTH, panel);
    layout.putConstraint(SpringLayout.NORTH, button, 75 + label.getPreferredSize().height, SpringLayout.NORTH, panel);
    layout.putConstraint(SpringLayout.WEST, label, 25, SpringLayout.WEST, panel);
    layout.putConstraint(SpringLayout.WEST, fileLabel, 25, SpringLayout.WEST, panel);
    layout.putConstraint(SpringLayout.EAST, button, -50, SpringLayout.EAST, panel);
    layout.putConstraint(SpringLayout.NORTH, warningLabel, 20, SpringLayout.SOUTH, fileLabel);
    layout.putConstraint(SpringLayout.WEST, warningLabel, 25, SpringLayout.WEST, panel);
    fileLabel.setText(path.getAbsolutePath());
}
Also used : AbstractButton(javax.swing.AbstractButton) ActionListener(java.awt.event.ActionListener) JFileChooser(javax.swing.JFileChooser) ActionEvent(java.awt.event.ActionEvent) JButton(javax.swing.JButton) JLabel(javax.swing.JLabel) Component(java.awt.Component) PCGenSettings(pcgen.system.PCGenSettings) File(java.io.File)

Aggregations

AbstractButton (javax.swing.AbstractButton)18 JPanel (javax.swing.JPanel)6 JLabel (javax.swing.JLabel)5 Component (java.awt.Component)4 JButton (javax.swing.JButton)4 JComponent (javax.swing.JComponent)3 JRadioButton (javax.swing.JRadioButton)3 Dimension (java.awt.Dimension)2 FlowLayout (java.awt.FlowLayout)2 ActionEvent (java.awt.event.ActionEvent)2 File (java.io.File)2 ArrayList (java.util.ArrayList)2 ButtonModel (javax.swing.ButtonModel)2 JFileChooser (javax.swing.JFileChooser)2 JTextField (javax.swing.JTextField)2 Container (java.awt.Container)1 Graphics (java.awt.Graphics)1 Graphics2D (java.awt.Graphics2D)1 GridBagConstraints (java.awt.GridBagConstraints)1 GridBagLayout (java.awt.GridBagLayout)1