Example usage for javax.swing JCheckBox addItemListener

List of usage examples for javax.swing JCheckBox addItemListener

Introduction

In this page you can find the example usage for javax.swing JCheckBox addItemListener.

Prototype

public void addItemListener(ItemListener l) 

Source Link

Document

Adds an ItemListener to the checkbox.

Usage

From source file:org.yawlfoundation.yawl.procletService.editor.pconns.VertexDemo.java

public VertexDemo() {

    // create a simple graph for the demo
    graph = new DirectedSparseGraph<Number, Number>();
    createGraph(VERTEX_COUNT);/*from  w  ww  .ja  va  2s.c o  m*/

    // a Map for the labels
    Map<Number, String> map = new HashMap<Number, String>();
    for (int i = 0; i < VERTEX_COUNT; i++) {
        map.put(i, iconNames[i % iconNames.length]);
    }

    // a Map for the Icons
    Map<Number, Icon> iconMap = new HashMap<Number, Icon>();
    for (int i = 0; i < VERTEX_COUNT; i++) {
        String name = "/images/topic" + iconNames[i] + ".gif";
        try {
            Icon icon = new LayeredIcon(new ImageIcon(VertexDemo.class.getResource(name)).getImage());
            iconMap.put(i, icon);
        } catch (Exception ex) {
            System.err.println("You need slashdoticons.jar in your classpath to see the image " + name);
        }
    }

    FRLayout<Number, Number> layout = new FRLayout<Number, Number>(graph);
    layout.setMaxIterations(100);
    layout.setInitializer(new RandomLocationTransformer<Number>(new Dimension(400, 400), 0));
    vv = new VisualizationViewer<Number, Number>(layout, new Dimension(400, 400));

    // This demo uses a special renderer to turn outlines on and off.
    // you do not need to do this in a real application.
    // Instead, just let vv use the Renderer it already has
    vv.getRenderer().setVertexRenderer(new DemoRenderer<Number, Number>());

    Transformer<Number, Paint> vpf = new PickableVertexPaintTransformer<Number>(vv.getPickedVertexState(),
            Color.white, Color.yellow);
    vv.getRenderContext().setVertexFillPaintTransformer(vpf);
    vv.getRenderContext().setEdgeDrawPaintTransformer(
            new PickableEdgePaintTransformer<Number>(vv.getPickedEdgeState(), Color.black, Color.cyan));

    vv.setBackground(Color.white);

    final Transformer<Number, String> vertexStringerImpl = new VertexStringerImpl<Number, String>(map);
    vv.getRenderContext().setVertexLabelTransformer(vertexStringerImpl);
    vv.getRenderContext().setVertexLabelRenderer(new DefaultVertexLabelRenderer(Color.cyan));
    vv.getRenderContext().setEdgeLabelRenderer(new DefaultEdgeLabelRenderer(Color.cyan));
    //        vv.getRenderContext().setEdgeLabelTransformer(new Transformer<Number,String>() {
    //           URL url = getClass().getResource("/images/lightning-s.gif");
    //         public String transform(Number input) {
    //            
    //            return "<html><img src="+url+" height=10 width=21>"+input.toString();
    //         }});

    // For this demo only, I use a special class that lets me turn various
    // features on and off. For a real application, use VertexIconShapeTransformer instead.
    final DemoVertexIconShapeTransformer<Number> vertexIconShapeTransformer = new DemoVertexIconShapeTransformer<Number>(
            new EllipseVertexShapeTransformer<Number>());

    final DemoVertexIconTransformer<Number> vertexIconTransformer = new DemoVertexIconTransformer<Number>();

    vertexIconShapeTransformer.setIconMap(iconMap);
    vertexIconTransformer.setIconMap(iconMap);

    vv.getRenderContext().setVertexShapeTransformer(vertexIconShapeTransformer);
    vv.getRenderContext().setVertexIconTransformer(vertexIconTransformer);

    // un-comment for RStar Tree visual testing
    //vv.addPostRenderPaintable(new BoundingRectanglePaintable(vv.getRenderContext(), vv.getGraphLayout()));

    // Get the pickedState and add a listener that will decorate the
    // Vertex images with a checkmark icon when they are picked
    PickedState<Number> ps = vv.getPickedVertexState();
    ps.addItemListener(new PickWithIconListener<Number>(vertexIconTransformer));

    vv.addPostRenderPaintable(new VisualizationViewer.Paintable() {
        int x;
        int y;
        Font font;
        FontMetrics metrics;
        int swidth;
        int sheight;
        String str = "Thank You, slashdot.org, for the images!";

        public void paint(Graphics g) {
            Dimension d = vv.getSize();
            if (font == null) {
                font = new Font(g.getFont().getName(), Font.BOLD, 20);
                metrics = g.getFontMetrics(font);
                swidth = metrics.stringWidth(str);
                sheight = metrics.getMaxAscent() + metrics.getMaxDescent();
                x = (d.width - swidth) / 2;
                y = (int) (d.height - sheight * 1.5);
            }
            g.setFont(font);
            Color oldColor = g.getColor();
            g.setColor(Color.lightGray);
            g.drawString(str, x, y);
            g.setColor(oldColor);
        }

        public boolean useTransform() {
            return false;
        }
    });

    // add a listener for ToolTips
    vv.setVertexToolTipTransformer(new ToStringLabeller<Number>());

    Container content = getContentPane();
    final GraphZoomScrollPane panel = new GraphZoomScrollPane(vv);
    content.add(panel);

    final DefaultModalGraphMouse<Number, Number> graphMouse = new DefaultModalGraphMouse<Number, Number>();
    vv.setGraphMouse(graphMouse);
    vv.addKeyListener(graphMouse.getModeKeyListener());
    final ScalingControl scaler = new CrossoverScalingControl();

    JButton plus = new JButton("+");
    plus.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            scaler.scale(vv, 1.1f, vv.getCenter());
        }
    });
    JButton minus = new JButton("-");
    minus.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            scaler.scale(vv, 1 / 1.1f, vv.getCenter());
        }
    });

    JCheckBox shape = new JCheckBox("Shape");
    shape.addItemListener(new ItemListener() {

        public void itemStateChanged(ItemEvent e) {
            vertexIconShapeTransformer.setShapeImages(e.getStateChange() == ItemEvent.SELECTED);
            vv.repaint();
        }
    });
    shape.setSelected(true);

    JCheckBox fill = new JCheckBox("Fill");
    fill.addItemListener(new ItemListener() {

        public void itemStateChanged(ItemEvent e) {
            vertexIconTransformer.setFillImages(e.getStateChange() == ItemEvent.SELECTED);
            vv.repaint();
        }
    });
    fill.setSelected(true);

    JCheckBox drawOutlines = new JCheckBox("Outline");
    drawOutlines.addItemListener(new ItemListener() {

        public void itemStateChanged(ItemEvent e) {
            vertexIconTransformer.setOutlineImages(e.getStateChange() == ItemEvent.SELECTED);
            vv.repaint();
        }
    });

    JComboBox modeBox = graphMouse.getModeComboBox();
    JPanel modePanel = new JPanel();
    modePanel.setBorder(BorderFactory.createTitledBorder("Mouse Mode"));
    modePanel.add(modeBox);

    JPanel scaleGrid = new JPanel(new GridLayout(1, 0));
    scaleGrid.setBorder(BorderFactory.createTitledBorder("Zoom"));
    JPanel labelFeatures = new JPanel(new GridLayout(1, 0));
    labelFeatures.setBorder(BorderFactory.createTitledBorder("Image Effects"));
    JPanel controls = new JPanel();
    scaleGrid.add(plus);
    scaleGrid.add(minus);
    controls.add(scaleGrid);
    labelFeatures.add(shape);
    labelFeatures.add(fill);
    labelFeatures.add(drawOutlines);

    controls.add(labelFeatures);
    controls.add(modePanel);
    content.add(controls, BorderLayout.SOUTH);
}

From source file:pcgen.gui2.PCGenFrame.java

@Override
public Boolean maybeShowWarningConfirm(String title, String message, String checkBoxText,
        final PropertyContext context, final String contextProp) {
    if (!context.getBoolean(contextProp, true)) {
        return null;
    }//from ww  w .j  av a  2s.com
    final JCheckBox checkBox = new JCheckBox(checkBoxText, true);
    checkBox.addItemListener(new ItemListener() {

        @Override
        public void itemStateChanged(ItemEvent e) {
            context.setBoolean(contextProp, checkBox.isSelected());
        }

    });
    JPanel panel = buildMessageLabelPanel(message, checkBox);
    int ret = JOptionPane.showConfirmDialog(this, panel, title, JOptionPane.YES_NO_OPTION,
            JOptionPane.WARNING_MESSAGE);
    return ret == JOptionPane.YES_OPTION;
}

From source file:pcgen.gui2.PCGenFrame.java

private void showLicenseDialog(String title, String htmlString) {
    if (htmlString == null) {
        htmlString = LanguageBundle.getString("in_licNoInfo"); //$NON-NLS-1$
    }/* w  ww.  j  ava2 s  .c  o  m*/
    final PropertyContext context = PCGenSettings.OPTIONS_CONTEXT;
    final JDialog aFrame = new JDialog(this, title, true);
    final JButton jClose = new JButton(LanguageBundle.getString("in_close")); //$NON-NLS-1$
    jClose.setMnemonic(LanguageBundle.getMnemonic("in_mn_close")); //$NON-NLS-1$
    final JPanel jPanel = new JPanel();
    final JCheckBox jCheckBox = new JCheckBox(LanguageBundle.getString("in_licShowOnLoad")); //$NON-NLS-1$
    jPanel.add(jCheckBox);
    jCheckBox.setSelected(context.getBoolean(PCGenSettings.OPTION_SHOW_LICENSE));
    jCheckBox.addItemListener(
            evt -> context.setBoolean(PCGenSettings.OPTION_SHOW_LICENSE, jCheckBox.isSelected()));
    jPanel.add(jClose);
    jClose.addActionListener(evt -> aFrame.dispose());

    HtmlPanel htmlPanel = new HtmlPanel();
    HtmlRendererContext theRendererContext = new SimpleHtmlRendererContext(htmlPanel,
            new SimpleUserAgentContext());
    htmlPanel.setHtml(htmlString, "", theRendererContext);

    aFrame.getContentPane().setLayout(new BorderLayout());
    aFrame.getContentPane().add(htmlPanel, BorderLayout.CENTER);
    aFrame.getContentPane().add(jPanel, BorderLayout.SOUTH);
    aFrame.setSize(new Dimension(700, 500));
    aFrame.setLocationRelativeTo(this);
    Utility.setComponentRelativeLocation(this, aFrame);
    aFrame.getRootPane().setDefaultButton(jClose);
    Utility.installEscapeCloseOperation(aFrame);
    aFrame.setVisible(true);
}

From source file:pcgen.gui2.PCGenFrame.java

private void showMatureDialog(String text) {
    Logging.errorPrint("Warning: The following datasets contains mature themes. User discretion is advised.");
    Logging.errorPrint(text);//from  w w w.ja  v a  2 s  .  co  m

    final JDialog aFrame = new JDialog(this, LanguageBundle.getString("in_matureTitle"), true);

    final JPanel jPanel1 = new JPanel();
    final JPanel jPanel3 = new JPanel();
    final JLabel jLabel1 = new JLabel(LanguageBundle.getString("in_matureWarningLine1"), //$NON-NLS-1$
            SwingConstants.CENTER);
    final JLabel jLabel2 = new JLabel(LanguageBundle.getString("in_matureWarningLine2"), //$NON-NLS-1$
            SwingConstants.CENTER);
    final JCheckBox jCheckBox1 = new JCheckBox(LanguageBundle.getString("in_licShowOnLoad")); //$NON-NLS-1$
    final JButton jClose = new JButton(LanguageBundle.getString("in_close")); //$NON-NLS-1$
    jClose.setMnemonic(LanguageBundle.getMnemonic("in_mn_close")); //$NON-NLS-1$

    jPanel1.setLayout(new BorderLayout());
    jPanel1.add(jLabel1, BorderLayout.NORTH);
    jPanel1.add(jLabel2, BorderLayout.SOUTH);

    HtmlPanel htmlPanel = new HtmlPanel();
    HtmlRendererContext theRendererContext = new SimpleHtmlRendererContext(htmlPanel,
            new SimpleUserAgentContext());
    htmlPanel.setHtml(text, "", theRendererContext);

    jPanel3.add(jCheckBox1);
    jPanel3.add(jClose);

    final PropertyContext context = PCGenSettings.OPTIONS_CONTEXT;
    jCheckBox1.setSelected(context.getBoolean(PCGenSettings.OPTION_SHOW_MATURE_ON_LOAD));

    jClose.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent evt) {
            aFrame.dispose();
        }

    });

    jCheckBox1.addItemListener(new ItemListener() {

        @Override
        public void itemStateChanged(ItemEvent evt) {
            context.setBoolean(PCGenSettings.OPTION_SHOW_MATURE_ON_LOAD, jCheckBox1.isSelected());
        }

    });

    aFrame.getContentPane().setLayout(new BorderLayout());
    aFrame.getContentPane().add(jPanel1, BorderLayout.NORTH);
    aFrame.getContentPane().add(htmlPanel, BorderLayout.CENTER);
    aFrame.getContentPane().add(jPanel3, BorderLayout.SOUTH);

    aFrame.setSize(new Dimension(456, 176));
    Utility.setComponentRelativeLocation(this, aFrame);
    aFrame.setVisible(true);
}

From source file:xtrememp.XtremeMP.java

protected void createPanels() {
    JPanel framePanel = new JPanel(new MigLayout("fill"));

    mainPanel = new JPanel(new CardLayout());
    playlistManager = new PlaylistManager(this);
    visualizationManager = new VisualizationManager(audioPlayer.getDSS());
    if (Settings.getLastView().equals(Utilities.VISUALIZATION_PANEL)) {
        visualizationManager.setDssEnabled(true);
        mainPanel.add(visualizationManager, Utilities.VISUALIZATION_PANEL);
        mainPanel.add(playlistManager, Utilities.PLAYLIST_MANAGER);
        visualizationMenuItem.setSelected(true);
    } else {/*from   ww w.  j  av  a2 s  . c  o m*/
        mainPanel.add(playlistManager, Utilities.PLAYLIST_MANAGER);
        mainPanel.add(visualizationManager, Utilities.VISUALIZATION_PANEL);
        playlistManagerMenuItem.setSelected(true);
    }
    framePanel.add(mainPanel, "grow");

    JPanel southPanel = new JPanel(new MigLayout("fill", "[center]"));
    SubstanceLookAndFeel.setDecorationType(southPanel, DecorationAreaType.TOOLBAR);
    seekSlider = new SeekSlider(this);
    seekSlider.setEnabled(false);
    southPanel.add(seekSlider, "north, gap 4 4 1 0");

    controlPanel = new JPanel(new MigLayout("gap 0, ins 0", "[center]"));
    controlPanel.setOpaque(false);
    stopButton = new StopButton();
    stopButton.setEnabled(false);
    stopButton.addActionListener(this);
    controlPanel.add(stopButton);
    previousButton = new PreviousButton();
    previousButton.setEnabled(false);
    previousButton.addActionListener(this);
    controlPanel.add(previousButton);
    playPauseButton = new PlayPauseButton();
    playPauseButton.addActionListener(this);
    controlPanel.add(playPauseButton, "height pref!");
    nextButton = new NextButton();
    nextButton.setEnabled(false);
    nextButton.addActionListener(this);
    controlPanel.add(nextButton);
    volumeButton = new VolumeButton(Utilities.MIN_GAIN, Utilities.MAX_GAIN, Settings.getGain(),
            Settings.isMuted());
    volumeButton.addMouseWheelListener((MouseWheelEvent e) -> {
        try {
            int volumeValue = volumeSlider.getValue() - 5 * e.getWheelRotation();
            int volumeMin = volumeSlider.getMinimum();
            int volumeMax = volumeSlider.getMaximum();
            if (volumeValue < volumeMin) {
                volumeValue = volumeMin;
            } else if (volumeValue > volumeMax) {
                volumeValue = volumeMax;
            }
            volumeButton.setVolumeIcon(volumeValue);
            volumeSlider.setValue(volumeValue);
            audioPlayer.setGain(volumeValue / 100.0F);
            Settings.setGain(volumeValue);
        } catch (PlayerException ex) {
            logger.debug(ex.getMessage(), ex);
        }
    });
    JPopupMenu volumePopupMenu = volumeButton.getPopupMenu();
    volumeSlider = new JSlider(JSlider.VERTICAL, Utilities.MIN_GAIN, Utilities.MAX_GAIN, Settings.getGain());
    volumeSlider.setMajorTickSpacing(25);
    volumeSlider.setMinorTickSpacing(5);
    volumeSlider.setPaintTicks(true);
    volumeSlider.setPaintLabels(true);
    volumeSlider.addChangeListener((ChangeEvent e) -> {
        if (volumeSlider.getValueIsAdjusting()) {
            try {
                int volumeValue = volumeSlider.getValue();
                volumeButton.setVolumeIcon(volumeValue);
                audioPlayer.setGain(volumeValue / 100.0F);
                Settings.setGain(volumeValue);
            } catch (PlayerException ex) {
                logger.debug(ex.getMessage(), ex);
            }
        }
    });
    volumeSlider.setEnabled(!Settings.isMuted());
    JPanel volumePanel = new JPanel(new MigLayout("fill"));
    JLabel volumeLabel = new JLabel(tr("MainFrame.Menu.Player.Volume"), JLabel.CENTER);
    volumeLabel.setFont(volumeLabel.getFont().deriveFont(Font.BOLD));
    volumePanel.add(volumeLabel, "north");
    volumePanel.add(volumeSlider);
    JCheckBox muteCheckBox = new JCheckBox(tr("MainFrame.Menu.Player.Mute"));
    muteCheckBox.setSelected(Settings.isMuted());
    muteCheckBox.addItemListener((ItemEvent e) -> {
        try {
            if (e.getStateChange() == ItemEvent.SELECTED) {
                volumeSlider.setEnabled(false);
                volumeButton.setVolumeMutedIcon();
                audioPlayer.setMuted(true);
                Settings.setMuted(true);
            } else {
                volumeSlider.setEnabled(true);
                volumeButton.setVolumeIcon(Settings.getGain());
                audioPlayer.setMuted(false);
                Settings.setMuted(false);
            }
        } catch (PlayerException ex) {
            logger.debug(ex.getMessage(), ex);
        }
    });
    volumePanel.add(muteCheckBox, "south");
    volumePopupMenu.add(volumePanel);
    controlPanel.add(volumeButton);
    southPanel.add(controlPanel, "gap 0 0 2 5");

    JPanel statusBar = new JPanel(new MigLayout("ins 2 0 2 0"));
    SubstanceLookAndFeel.setDecorationType(statusBar, DecorationAreaType.FOOTER);
    timeLabel = new JLabel(Utilities.ZERO_TIMER);
    timeLabel.setFont(timeLabel.getFont().deriveFont(Font.BOLD));
    statusBar.add(timeLabel, "gap 6 6 0 0, west");
    statusBar.add(new JSeparator(SwingConstants.VERTICAL), "hmin 16");
    statusLabel = new JLabel();
    statusBar.add(statusLabel, "gap 0 2 0 0, wmin 0, push");
    statusBar.add(new JSeparator(SwingConstants.VERTICAL), "hmin 16");
    playModeLabel = new JLabel();
    playModeLabel.addMouseListener(new MouseAdapter() {

        @Override
        public void mousePressed(MouseEvent e) {
            Playlist.PlayMode[] playModes = Playlist.PlayMode.values();
            Playlist.PlayMode playMode = playlist.getPlayMode();
            int ordinal = playMode.ordinal();
            playlist.setPlayMode(playModes[(ordinal == playModes.length - 1) ? 0 : ordinal + 1]);
        }
    });
    statusBar.add(playModeLabel, "east, gap 2 2 2 2, width 18!, height 18!");
    southPanel.add(statusBar, "south");
    framePanel.add(southPanel, "south");
    mainFrame.setContentPane(framePanel);
}