Search in sources :

Example 61 with SpinnerNumberModel

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

the class SignalHeadTableAction method dccSignalPanel.

public void dccSignalPanel() {
    dccSignalPanel = new JPanel();
    dccSignalPanel.setLayout(new GridLayout(0, 2));
    dccAspect = new JSpinner[DccSignalHead.getDefaultValidStates().length];
    for (int i = 0; i < DccSignalHead.getDefaultValidStates().length; i++) {
        String aspect = DccSignalHead.getDefaultValidStateNames()[i];
        dccSignalPanel.add(new JLabel(aspect));
        SpinnerNumberModel DccSpinnerModel = new SpinnerNumberModel(1, 1, 13, 1);
        JSpinner tmp = new JSpinner(DccSpinnerModel);
        //tmp.setFocusable(false);
        tmp.setValue((Integer) DccSignalHead.getDefaultNumberForApperance(DccSignalHead.getDefaultValidStates()[i]));
        // store the whole JSpinner
        dccAspect[i] = tmp;
        // and display that copy on the JPanel
        dccSignalPanel.add(tmp);
        tmp.setToolTipText(Bundle.getMessage("DccAccessoryAspect", i));
    }
}
Also used : SpinnerNumberModel(javax.swing.SpinnerNumberModel) JPanel(javax.swing.JPanel) GridLayout(java.awt.GridLayout) JLabel(javax.swing.JLabel) JSpinner(javax.swing.JSpinner)

Example 62 with SpinnerNumberModel

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

the class WebServerPreferencesPanel method initComponents.

private void initComponents() {
    bindingGroup = new BindingGroup();
    port = new JSpinner();
    portLabel = new JLabel();
    readonlyPower = new JCheckBox();
    startup = new JCheckBox();
    port.setModel(new SpinnerNumberModel(12080, 1, 65535, 1));
    port.setEditor(new JSpinner.NumberEditor(port, "#"));
    // NOI18N
    port.setToolTipText(Bundle.getMessage("ToolTipPort"));
    Binding binding = Bindings.createAutoBinding(AutoBinding.UpdateStrategy.READ_WRITE, preferences, ELProperty.create("${port}"), port, BeanProperty.create("value"));
    bindingGroup.addBinding(binding);
    // NOI18N
    portLabel.setText(Bundle.getMessage("LabelPort"));
    // NOI18N
    portLabel.setToolTipText(Bundle.getMessage("ToolTipPort"));
    // NOI18N
    readonlyPower.setText(Bundle.getMessage("LabelReadonlyPower"));
    readonlyPower.addActionListener((ActionEvent e) -> {
        readonlyPower.setToolTipText(Bundle.getMessage(readonlyPower.isSelected() ? "ToolTipReadonlyPowerTrue" : "ToolTipReadonlyPowerFalse"));
    });
    binding = Bindings.createAutoBinding(AutoBinding.UpdateStrategy.READ_WRITE, preferences, ELProperty.create("${readonlyPower}"), readonlyPower, BeanProperty.create("selected"));
    bindingGroup.addBinding(binding);
    startup.setSelected(this.isStartupAction());
    // NOI18N
    startup.setText(Bundle.getMessage("LabelStartup"));
    this.startupItemListener = (ItemEvent e) -> {
        this.startup.removeItemListener(this.startupItemListener);
        StartupActionsManager manager = InstanceManager.getDefault(StartupActionsManager.class);
        if (this.startup.isSelected()) {
            PerformActionModel model = new PerformActionModel();
            model.setClassName(WebServerAction.class.getName());
            if (this.startupActionPosition == -1 || this.startupActionPosition >= manager.getActions().length) {
                manager.addAction(model);
            } else {
                manager.setActions(this.startupActionPosition, model);
            }
        } else {
            manager.getActions(PerformActionModel.class).stream().filter((model) -> (WebServerAction.class.getName().equals(model.getClassName()))).forEach((model) -> {
                this.startupActionPosition = Arrays.asList(manager.getActions()).indexOf(model);
                manager.removeAction(model);
            });
        }
        this.startup.addItemListener(this.startupItemListener);
    };
    this.startup.addItemListener(this.startupItemListener);
    GroupLayout layout = new GroupLayout(this);
    this.setLayout(layout);
    layout.setHorizontalGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING).addGroup(layout.createSequentialGroup().addContainerGap().addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING).addGroup(layout.createSequentialGroup().addComponent(port, GroupLayout.PREFERRED_SIZE, 75, GroupLayout.PREFERRED_SIZE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED).addComponent(portLabel, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)).addComponent(startup, GroupLayout.DEFAULT_SIZE, 388, Short.MAX_VALUE).addComponent(readonlyPower, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)).addContainerGap()));
    layout.setVerticalGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING).addGroup(layout.createSequentialGroup().addContainerGap().addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE).addComponent(port, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addComponent(portLabel)).addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED).addComponent(readonlyPower).addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED).addComponent(startup).addContainerGap(198, Short.MAX_VALUE)));
    bindingGroup.bind();
}
Also used : AutoBinding(org.jdesktop.beansbinding.AutoBinding) Binding(org.jdesktop.beansbinding.Binding) PerformActionModel(apps.PerformActionModel) JComponent(javax.swing.JComponent) ItemEvent(java.awt.event.ItemEvent) InstanceManager(jmri.InstanceManager) BeanProperty(org.jdesktop.beansbinding.BeanProperty) Arrays(java.util.Arrays) JSpinner(javax.swing.JSpinner) SpinnerNumberModel(javax.swing.SpinnerNumberModel) Bindings(org.jdesktop.beansbinding.Bindings) ItemListener(java.awt.event.ItemListener) StartupActionsManager(apps.StartupActionsManager) ActionEvent(java.awt.event.ActionEvent) AutoBinding(org.jdesktop.beansbinding.AutoBinding) LayoutStyle(javax.swing.LayoutStyle) PerformActionModel(apps.PerformActionModel) BindingGroup(org.jdesktop.beansbinding.BindingGroup) JLabel(javax.swing.JLabel) GroupLayout(javax.swing.GroupLayout) JCheckBox(javax.swing.JCheckBox) ELProperty(org.jdesktop.beansbinding.ELProperty) Binding(org.jdesktop.beansbinding.Binding) JPanel(javax.swing.JPanel) PreferencesPanel(jmri.swing.PreferencesPanel) ItemEvent(java.awt.event.ItemEvent) ActionEvent(java.awt.event.ActionEvent) JLabel(javax.swing.JLabel) StartupActionsManager(apps.StartupActionsManager) JCheckBox(javax.swing.JCheckBox) SpinnerNumberModel(javax.swing.SpinnerNumberModel) BindingGroup(org.jdesktop.beansbinding.BindingGroup) GroupLayout(javax.swing.GroupLayout) JSpinner(javax.swing.JSpinner)

Example 63 with SpinnerNumberModel

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

the class WiThrottlePrefsPanel method eStopDelayPanel.

private JPanel eStopDelayPanel() {
    JPanel panel = new JPanel();
    eStopCB = new JCheckBox(Bundle.getMessage("LabelUseEStop"));
    eStopCB.setToolTipText(Bundle.getMessage("ToolTipUseEStop"));
    SpinnerNumberModel spinMod = new SpinnerNumberModel(10, 4, 60, 2);
    delaySpinner = new JSpinner(spinMod);
    ((JSpinner.DefaultEditor) delaySpinner.getEditor()).getTextField().setEditable(false);
    panel.add(eStopCB);
    panel.add(delaySpinner);
    panel.add(new JLabel(Bundle.getMessage("LabelEStopDelay")));
    return panel;
}
Also used : JCheckBox(javax.swing.JCheckBox) SpinnerNumberModel(javax.swing.SpinnerNumberModel) JPanel(javax.swing.JPanel) JSpinner(javax.swing.JSpinner) JLabel(javax.swing.JLabel)

Example 64 with SpinnerNumberModel

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

the class WiThrottlePrefsPanel method socketPortPanel.

private JPanel socketPortPanel() {
    JPanel SPPanel = new JPanel();
    port = new JSpinner(new SpinnerNumberModel(localPrefs.getPort(), 1, 65535, 1));
    port.setToolTipText(Bundle.getMessage("PortToolTip"));
    port.setEditor(new JSpinner.NumberEditor(port, "#"));
    JLabel label = new JLabel(Bundle.getMessage("PortLabel"));
    label.setToolTipText(port.getToolTipText());
    SPPanel.add(port);
    SPPanel.add(label);
    startupCB = new JCheckBox(Bundle.getMessage("LabelStartup"), isStartUpAction());
    startupItemListener = (ItemEvent e) -> {
        this.startupCB.removeItemListener(this.startupItemListener);
        StartupActionsManager manager = InstanceManager.getDefault(StartupActionsManager.class);
        if (this.startupCB.isSelected()) {
            PerformActionModel model = new PerformActionModel();
            model.setClassName(WiThrottleCreationAction.class.getName());
            if (this.startupActionPosition == -1 || this.startupActionPosition >= manager.getActions().length) {
                manager.addAction(model);
            } else {
                manager.setActions(this.startupActionPosition, model);
            }
        } else {
            manager.getActions(PerformActionModel.class).stream().filter((model) -> (WiThrottleCreationAction.class.getName().equals(model.getClassName()))).forEach((model) -> {
                this.startupActionPosition = Arrays.asList(manager.getActions()).indexOf(model);
                manager.removeAction(model);
            });
        }
        this.startupCB.addItemListener(this.startupItemListener);
    };
    this.startupCB.addItemListener(this.startupItemListener);
    SPPanel.add(startupCB);
    return SPPanel;
}
Also used : SpinnerNumberModel(javax.swing.SpinnerNumberModel) JCheckBox(javax.swing.JCheckBox) PerformActionModel(apps.PerformActionModel) JComponent(javax.swing.JComponent) ItemEvent(java.awt.event.ItemEvent) InstanceManager(jmri.InstanceManager) Arrays(java.util.Arrays) JSpinner(javax.swing.JSpinner) ButtonGroup(javax.swing.ButtonGroup) SpinnerNumberModel(javax.swing.SpinnerNumberModel) JTitledSeparator(jmri.swing.JTitledSeparator) ItemListener(java.awt.event.ItemListener) JOptionPane(javax.swing.JOptionPane) StartupActionsManager(apps.StartupActionsManager) File(java.io.File) JRadioButton(javax.swing.JRadioButton) ResourceBundle(java.util.ResourceBundle) FileUtil(jmri.util.FileUtil) PerformActionModel(apps.PerformActionModel) JLabel(javax.swing.JLabel) JCheckBox(javax.swing.JCheckBox) JFrame(javax.swing.JFrame) PropertyChangeEvent(java.beans.PropertyChangeEvent) JPanel(javax.swing.JPanel) BoxLayout(javax.swing.BoxLayout) PreferencesPanel(jmri.swing.PreferencesPanel) JPanel(javax.swing.JPanel) ItemEvent(java.awt.event.ItemEvent) JSpinner(javax.swing.JSpinner) JLabel(javax.swing.JLabel) StartupActionsManager(apps.StartupActionsManager)

Example 65 with SpinnerNumberModel

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

the class DieselPane method initComponents.

/**
     * Build teh GUI components
     */
@Override
public void initComponents() {
    listenerList = new javax.swing.event.EventListenerList();
    this.setLayout(new GridLayout(0, 2));
    //Set up the throttle spinner
    throttle_spinner = new JSpinner(new SpinnerNumberModel(THROTTLE_INIT, THROTTLE_MIN, THROTTLE_MAX, 1));
    throttle_spinner.setToolTipText(Bundle.getMessage("ToolTipDP_ThrottleSpinner"));
    throttle_spinner.setEnabled(false);
    this.add(throttle_spinner);
    // Setup the start button
    start_button = new JToggleButton();
    start_button.setText(Bundle.getMessage("ButtonEngineStart"));
    start_button.setToolTipText(Bundle.getMessage("ToolTipDP_StartButton"));
    start_button.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent e) {
            startButtonChange(e);
        }
    });
    this.add(start_button);
    this.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
    this.setVisible(true);
}
Also used : SpinnerNumberModel(javax.swing.SpinnerNumberModel) GridLayout(java.awt.GridLayout) JToggleButton(javax.swing.JToggleButton) ActionListener(java.awt.event.ActionListener) ActionEvent(java.awt.event.ActionEvent) JSpinner(javax.swing.JSpinner)

Aggregations

SpinnerNumberModel (javax.swing.SpinnerNumberModel)84 JSpinner (javax.swing.JSpinner)63 JLabel (javax.swing.JLabel)41 JPanel (javax.swing.JPanel)40 ActionEvent (java.awt.event.ActionEvent)35 GridBagLayout (java.awt.GridBagLayout)25 Dimension (java.awt.Dimension)22 ActionListener (java.awt.event.ActionListener)22 ChangeEvent (javax.swing.event.ChangeEvent)19 Insets (java.awt.Insets)17 GridBagConstraints (java.awt.GridBagConstraints)16 JRadioButton (javax.swing.JRadioButton)16 JCheckBox (javax.swing.JCheckBox)15 ButtonGroup (javax.swing.ButtonGroup)12 ChangeListener (javax.swing.event.ChangeListener)12 JButton (javax.swing.JButton)11 JTextField (javax.swing.JTextField)10 BorderLayout (java.awt.BorderLayout)8 BoxLayout (javax.swing.BoxLayout)7 FormLayout (com.jgoodies.forms.layout.FormLayout)6