Search in sources :

Example 16 with JSpinner

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

the class SimpleServerPreferencesPanel method portPanel.

private JPanel portPanel() {
    JPanel panel = new JPanel();
    port = new JSpinner(new SpinnerNumberModel(preferences.getPort(), 1, 65535, 1));
    ((JSpinner.DefaultEditor) port.getEditor()).getTextField().setEditable(true);
    port.setEditor(new JSpinner.NumberEditor(port, "#"));
    this.port.addChangeListener((ChangeEvent e) -> {
        this.setValues();
    });
    this.port.setToolTipText(Bundle.getMessage("PortToolTip"));
    panel.add(port);
    panel.add(new JLabel(Bundle.getMessage("LabelPort")));
    return panel;
}
Also used : SpinnerNumberModel(javax.swing.SpinnerNumberModel) JPanel(javax.swing.JPanel) ChangeEvent(javax.swing.event.ChangeEvent) JSpinner(javax.swing.JSpinner) JLabel(javax.swing.JLabel)

Example 17 with JSpinner

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

the class PhysicalLocationPanel method initComponents.

protected void initComponents(String title) {
    tb = BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED), title);
    tb.setTitlePosition(TitledBorder.DEFAULT_POSITION);
    this.setBorder(tb);
    this.setLayout(new GridBagLayout());
    xs = new JSpinner(new SpinnerNumberModel(spin_value, min_spin, max_spin, spin_inc));
    ys = new JSpinner(new SpinnerNumberModel(spin_value, min_spin, max_spin, spin_inc));
    zs = new JSpinner(new SpinnerNumberModel(spin_value, min_spin, max_spin, spin_inc));
    JLabel xl = new JLabel("X");
    JLabel yl = new JLabel("Y");
    JLabel zl = new JLabel("Z");
    this.add(xl, setConstraints(0, 0, false));
    this.add(xs, setConstraints(GridBagConstraints.RELATIVE, 0, true));
    this.add(yl, setConstraints(GridBagConstraints.RELATIVE, 0, false));
    this.add(ys, setConstraints(GridBagConstraints.RELATIVE, 0, true));
    this.add(zl, setConstraints(GridBagConstraints.RELATIVE, 0, false));
    this.add(zs, setConstraints(GridBagConstraints.RELATIVE, 0, true));
    this.setVisible(true);
    log.debug("initComponents() complete");
}
Also used : SpinnerNumberModel(javax.swing.SpinnerNumberModel) GridBagLayout(java.awt.GridBagLayout) JSpinner(javax.swing.JSpinner) JLabel(javax.swing.JLabel)

Example 18 with JSpinner

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

the class FrameServletPreferencesPanel method initComponents.

/**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
@SuppressWarnings("unchecked")
private // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
void initComponents() {
    bindingGroup = new BindingGroup();
    framesEnabled = new ButtonGroup();
    preferences = InstanceManager.getDefault(WebServerPreferences.class);
    enableFramesPnl = new JPanel();
    enableFrames = new JRadioButton();
    clickDelay = new JSpinner();
    refreshDelay = new JSpinner();
    useAjax = new JCheckBox();
    refreshDelayLbl = new JLabel();
    clickDelayLbl = new JLabel();
    disallowedFramesLbl = new JLabel();
    jScrollPane1 = new JScrollPane();
    disallowedFrames = new EditableList<String>();
    disableFramesPnl = new JPanel();
    disableFrames = new JRadioButton();
    redirectToPanels = new JCheckBox();
    framesEnabled.add(enableFrames);
    framesEnabled.add(disableFrames);
    preferences.addPropertyChangeListener(new PropertyChangeListener() {

        public void propertyChange(PropertyChangeEvent evt) {
            preferencesPropertyChange(evt);
        }
    });
    // NOI18N
    enableFrames.setText(Bundle.getMessage("LabelEnableFrames"));
    Binding binding = Bindings.createAutoBinding(AutoBinding.UpdateStrategy.READ, preferences, ELProperty.create("${!disableFrames}"), enableFrames, BeanProperty.create("selected"));
    bindingGroup.addBinding(binding);
    clickDelay.setModel(new SpinnerNumberModel(1, 0, 999, 1));
    // NOI18N
    clickDelay.setToolTipText(Bundle.getMessage("ToolTipClickDelay"));
    binding = Bindings.createAutoBinding(AutoBinding.UpdateStrategy.READ_WRITE, preferences, ELProperty.create("${clickDelay}"), clickDelay, BeanProperty.create("value"));
    bindingGroup.addBinding(binding);
    binding = Bindings.createAutoBinding(AutoBinding.UpdateStrategy.READ, enableFrames, ELProperty.create("${selected}"), clickDelay, BeanProperty.create("enabled"));
    bindingGroup.addBinding(binding);
    refreshDelay.setModel(new SpinnerNumberModel(5, 0, 999, 1));
    // NOI18N
    refreshDelay.setToolTipText(Bundle.getMessage("ToolTipRefreshDelay"));
    binding = Bindings.createAutoBinding(AutoBinding.UpdateStrategy.READ_WRITE, preferences, ELProperty.create("${refreshDelay}"), refreshDelay, BeanProperty.create("value"));
    bindingGroup.addBinding(binding);
    binding = Bindings.createAutoBinding(AutoBinding.UpdateStrategy.READ, enableFrames, ELProperty.create("${selected}"), refreshDelay, BeanProperty.create("enabled"));
    bindingGroup.addBinding(binding);
    // NOI18N
    useAjax.setText(Bundle.getMessage("LabelUseAjax"));
    // NOI18N
    useAjax.setToolTipText(Bundle.getMessage("ToolTipUseAjax"));
    binding = Bindings.createAutoBinding(AutoBinding.UpdateStrategy.READ_WRITE, preferences, ELProperty.create("${useAjax}"), useAjax, BeanProperty.create("selected"));
    bindingGroup.addBinding(binding);
    binding = Bindings.createAutoBinding(AutoBinding.UpdateStrategy.READ, enableFrames, ELProperty.create("${selected}"), useAjax, BeanProperty.create("enabled"));
    bindingGroup.addBinding(binding);
    // NOI18N
    refreshDelayLbl.setText(Bundle.getMessage("LabelRefreshDelay"));
    // NOI18N
    refreshDelayLbl.setToolTipText(Bundle.getMessage("ToolTipRefreshDelay"));
    binding = Bindings.createAutoBinding(AutoBinding.UpdateStrategy.READ, enableFrames, ELProperty.create("${selected}"), refreshDelayLbl, BeanProperty.create("enabled"));
    bindingGroup.addBinding(binding);
    // NOI18N
    clickDelayLbl.setText(Bundle.getMessage("LabelClickDelay"));
    // NOI18N
    clickDelayLbl.setToolTipText(Bundle.getMessage("ToolTipClickDelay"));
    binding = Bindings.createAutoBinding(AutoBinding.UpdateStrategy.READ, enableFrames, ELProperty.create("${selected}"), clickDelayLbl, BeanProperty.create("enabled"));
    bindingGroup.addBinding(binding);
    // NOI18N
    disallowedFramesLbl.setText(Bundle.getMessage("LabelDisallowedFrames"));
    // NOI18N
    disallowedFramesLbl.setToolTipText(Bundle.getMessage("ToolTipDisallowedFrames"));
    binding = Bindings.createAutoBinding(AutoBinding.UpdateStrategy.READ, enableFrames, ELProperty.create("${selected}"), disallowedFramesLbl, BeanProperty.create("enabled"));
    bindingGroup.addBinding(binding);
    disallowedFrames.setModel(new DefaultEditableListModel<String>());
    disallowedFrames.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
    // NOI18N
    disallowedFrames.setToolTipText(Bundle.getMessage("ToolTipDisallowedFrames"));
    disallowedFrames.setListCellEditor(new DefaultListCellEditor<>(new JTextField()));
    binding = Bindings.createAutoBinding(AutoBinding.UpdateStrategy.READ, enableFrames, ELProperty.create("${selected}"), disallowedFrames, BeanProperty.create("enabled"));
    bindingGroup.addBinding(binding);
    DefaultEditableListModel<String> model = (DefaultEditableListModel<String>) this.disallowedFrames.getModel();
    model.addListDataListener(this);
    for (String frame : this.preferences.getDisallowedFrames()) {
        model.addElement(frame);
    }
    model.addElement(" ");
    jScrollPane1.setViewportView(disallowedFrames);
    GroupLayout enableFramesPnlLayout = new GroupLayout(enableFramesPnl);
    enableFramesPnl.setLayout(enableFramesPnlLayout);
    enableFramesPnlLayout.setHorizontalGroup(enableFramesPnlLayout.createParallelGroup(GroupLayout.Alignment.LEADING).addGroup(enableFramesPnlLayout.createSequentialGroup().addContainerGap().addGroup(enableFramesPnlLayout.createParallelGroup(GroupLayout.Alignment.LEADING).addGroup(enableFramesPnlLayout.createSequentialGroup().addGap(29, 29, 29).addGroup(enableFramesPnlLayout.createParallelGroup(GroupLayout.Alignment.LEADING).addGroup(enableFramesPnlLayout.createSequentialGroup().addComponent(clickDelay, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED).addComponent(clickDelayLbl, GroupLayout.PREFERRED_SIZE, 104, GroupLayout.PREFERRED_SIZE)).addGroup(enableFramesPnlLayout.createSequentialGroup().addComponent(refreshDelay, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED).addComponent(refreshDelayLbl, GroupLayout.PREFERRED_SIZE, 104, GroupLayout.PREFERRED_SIZE)).addComponent(useAjax, GroupLayout.PREFERRED_SIZE, 160, GroupLayout.PREFERRED_SIZE)).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED).addGroup(enableFramesPnlLayout.createParallelGroup(GroupLayout.Alignment.LEADING).addComponent(jScrollPane1, GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE).addComponent(disallowedFramesLbl, GroupLayout.DEFAULT_SIZE, 148, Short.MAX_VALUE))).addComponent(enableFrames, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)).addContainerGap()));
    enableFramesPnlLayout.setVerticalGroup(enableFramesPnlLayout.createParallelGroup(GroupLayout.Alignment.LEADING).addGroup(enableFramesPnlLayout.createSequentialGroup().addContainerGap().addComponent(enableFrames).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED).addGroup(enableFramesPnlLayout.createParallelGroup(GroupLayout.Alignment.BASELINE).addComponent(clickDelay, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addComponent(clickDelayLbl).addComponent(disallowedFramesLbl)).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED).addGroup(enableFramesPnlLayout.createParallelGroup(GroupLayout.Alignment.LEADING).addGroup(enableFramesPnlLayout.createSequentialGroup().addGroup(enableFramesPnlLayout.createParallelGroup(GroupLayout.Alignment.BASELINE).addComponent(refreshDelay, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addComponent(refreshDelayLbl)).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED).addComponent(useAjax).addContainerGap(108, Short.MAX_VALUE)).addComponent(jScrollPane1))));
    // NOI18N
    disableFrames.setText(Bundle.getMessage("LabelDisableFrames"));
    // NOI18N
    disableFrames.setToolTipText(Bundle.getMessage("ToolTipDisableFrames"));
    binding = Bindings.createAutoBinding(AutoBinding.UpdateStrategy.READ_WRITE, preferences, ELProperty.create("${disableFrames}"), disableFrames, BeanProperty.create("selected"));
    bindingGroup.addBinding(binding);
    // NOI18N
    redirectToPanels.setText(Bundle.getMessage("LabelRedirectFramesToPanels"));
    // NOI18N
    redirectToPanels.setToolTipText(Bundle.getMessage("ToolTipRedirectFramesToPanels"));
    binding = Bindings.createAutoBinding(AutoBinding.UpdateStrategy.READ_WRITE, preferences, ELProperty.create("${redirectFramesToPanels}"), redirectToPanels, BeanProperty.create("selected"));
    bindingGroup.addBinding(binding);
    binding = Bindings.createAutoBinding(AutoBinding.UpdateStrategy.READ, disableFrames, ELProperty.create("${selected}"), redirectToPanels, BeanProperty.create("enabled"));
    bindingGroup.addBinding(binding);
    GroupLayout disableFramesPnlLayout = new GroupLayout(disableFramesPnl);
    disableFramesPnl.setLayout(disableFramesPnlLayout);
    disableFramesPnlLayout.setHorizontalGroup(disableFramesPnlLayout.createParallelGroup(GroupLayout.Alignment.LEADING).addGroup(disableFramesPnlLayout.createSequentialGroup().addGroup(disableFramesPnlLayout.createParallelGroup(GroupLayout.Alignment.LEADING).addGroup(disableFramesPnlLayout.createSequentialGroup().addContainerGap().addComponent(disableFrames, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)).addGroup(disableFramesPnlLayout.createSequentialGroup().addGap(35, 35, 35).addComponent(redirectToPanels, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))).addContainerGap()));
    disableFramesPnlLayout.setVerticalGroup(disableFramesPnlLayout.createParallelGroup(GroupLayout.Alignment.LEADING).addGroup(disableFramesPnlLayout.createSequentialGroup().addContainerGap().addComponent(disableFrames, GroupLayout.PREFERRED_SIZE, 23, GroupLayout.PREFERRED_SIZE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED).addComponent(redirectToPanels).addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    GroupLayout layout = new GroupLayout(this);
    this.setLayout(layout);
    layout.setHorizontalGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING).addComponent(enableFramesPnl, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addComponent(disableFramesPnl, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE));
    layout.setVerticalGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING).addGroup(layout.createSequentialGroup().addComponent(enableFramesPnl, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED).addComponent(disableFramesPnl, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)));
    bindingGroup.bind();
}
Also used : JScrollPane(javax.swing.JScrollPane) AutoBinding(org.jdesktop.beansbinding.AutoBinding) Binding(org.jdesktop.beansbinding.Binding) JPanel(javax.swing.JPanel) PropertyChangeEvent(java.beans.PropertyChangeEvent) DefaultEditableListModel(jmri.swing.DefaultEditableListModel) JRadioButton(javax.swing.JRadioButton) PropertyChangeListener(java.beans.PropertyChangeListener) JLabel(javax.swing.JLabel) JTextField(javax.swing.JTextField) JCheckBox(javax.swing.JCheckBox) SpinnerNumberModel(javax.swing.SpinnerNumberModel) ButtonGroup(javax.swing.ButtonGroup) BindingGroup(org.jdesktop.beansbinding.BindingGroup) GroupLayout(javax.swing.GroupLayout) JSpinner(javax.swing.JSpinner)

Example 19 with JSpinner

use of javax.swing.JSpinner in project beast-mcmc by beast-dev.

the class SiteRateModelEditor method setSiteArguments.

// END: Constructor
private void setSiteArguments() throws NumberFormatException, BadLocationException {
    optionPanel.removeAll();
    optionPanel.addComponents(new JLabel("Site Rate model:"), siteCombo);
    optionPanel.addSeparator();
    optionPanel.addLabel("Set parameter values:");
    int index = siteCombo.getSelectedIndex();
    for (int i = 0; i < PartitionData.siteRateModelParameterIndices[index].length; i++) {
        if (index == 1 && i == 0) {
            int k = PartitionData.siteRateModelParameterIndices[index][i];
            Integer initValue = Integer.valueOf(siteParameterFields[k].getText(0, 1));
            Integer min = 1;
            //Integer.MAX_VALUE;
            Integer max = 10;
            Integer step = 1;
            SpinnerModel model = new SpinnerNumberModel(initValue, min, max, step);
            gammaCategoriesSpinner = new JSpinner(model);
            JPanel panel = new JPanel(new BorderLayout(6, 6));
            panel.add(gammaCategoriesSpinner, BorderLayout.WEST);
            panel.setOpaque(false);
            optionPanel.addComponentWithLabel(PartitionData.siteRateModelParameterNames[k] + ":", panel);
        } else {
            int k = PartitionData.siteRateModelParameterIndices[index][i];
            JPanel panel = new JPanel(new BorderLayout(6, 6));
            panel.add(siteParameterFields[k], BorderLayout.WEST);
            panel.setOpaque(false);
            optionPanel.addComponentWithLabel(PartitionData.siteRateModelParameterNames[k] + ":", panel);
        }
    // END: gama categories field check
    }
    // END: indices loop
    window.validate();
    window.repaint();
}
Also used : SpinnerNumberModel(javax.swing.SpinnerNumberModel) JPanel(javax.swing.JPanel) BorderLayout(java.awt.BorderLayout) JLabel(javax.swing.JLabel) JSpinner(javax.swing.JSpinner) SpinnerModel(javax.swing.SpinnerModel)

Example 20 with JSpinner

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

the class GuiLafConfigPane method doToolTipDismissDelay.

public void doToolTipDismissDelay(JPanel panel) {
    GuiLafPreferencesManager manager = InstanceManager.getDefault(GuiLafPreferencesManager.class);
    JLabel toolTipDismissDelayLabel = new JLabel(ConfigBundle.getMessage("GUIToolTipDismissDelay"));
    toolTipDismissDelaySpinner = new JSpinner(new SpinnerNumberModel(manager.getToolTipDismissDelay() / 1000, MIN_TOOLTIP_TIME, MAX_TOOLTIP_TIME, 1));
    this.toolTipDismissDelaySpinner.addChangeListener((ChangeEvent e) -> {
        // convert to milliseconds from seconds
        manager.setToolTipDismissDelay((int) toolTipDismissDelaySpinner.getValue() * 1000);
    });
    this.toolTipDismissDelaySpinner.setToolTipText(MessageFormat.format(ConfigBundle.getMessage("GUIToolTipDismissDelayToolTip"), MIN_TOOLTIP_TIME, MAX_TOOLTIP_TIME));
    toolTipDismissDelayLabel.setToolTipText(this.toolTipDismissDelaySpinner.getToolTipText());
    JLabel toolTipDismissDelayUoM = new JLabel(ConfigBundle.getMessage("GUIToolTipDismissDelayUoM"));
    toolTipDismissDelayUoM.setToolTipText(this.toolTipDismissDelaySpinner.getToolTipText());
    panel.add(toolTipDismissDelayLabel);
    panel.add(toolTipDismissDelaySpinner);
    panel.add(toolTipDismissDelayUoM);
}
Also used : SpinnerNumberModel(javax.swing.SpinnerNumberModel) GuiLafPreferencesManager(apps.gui.GuiLafPreferencesManager) ChangeEvent(javax.swing.event.ChangeEvent) JLabel(javax.swing.JLabel) JSpinner(javax.swing.JSpinner)

Aggregations

JSpinner (javax.swing.JSpinner)76 SpinnerNumberModel (javax.swing.SpinnerNumberModel)61 JLabel (javax.swing.JLabel)47 JPanel (javax.swing.JPanel)41 ActionEvent (java.awt.event.ActionEvent)28 ActionListener (java.awt.event.ActionListener)27 JCheckBox (javax.swing.JCheckBox)22 JRadioButton (javax.swing.JRadioButton)21 GridBagConstraints (java.awt.GridBagConstraints)18 Insets (java.awt.Insets)18 ChangeEvent (javax.swing.event.ChangeEvent)18 GridBagLayout (java.awt.GridBagLayout)17 JButton (javax.swing.JButton)15 Dimension (java.awt.Dimension)13 ChangeListener (javax.swing.event.ChangeListener)13 ButtonGroup (javax.swing.ButtonGroup)12 BorderLayout (java.awt.BorderLayout)11 JTextField (javax.swing.JTextField)11 JScrollPane (javax.swing.JScrollPane)10 JMenuItem (javax.swing.JMenuItem)8