use of java.awt.GridLayout in project JMRI by JMRI.
the class RosterGroupsPanel method getButtons.
private JToolBar getButtons() {
JToolBar controls = new JToolBar();
controls.setLayout(new GridLayout(1, 0, 0, 0));
controls.setFloatable(false);
final JToggleButton addGroupBtn = new JToggleButton(new ImageIcon(FileUtil.findURL("resources/icons/misc/gui3/Add.png")), false);
final JToggleButton actGroupBtn = new JToggleButton(new ImageIcon(FileUtil.findURL("resources/icons/misc/gui3/Action.png")), false);
addGroupBtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
new CreateRosterGroupAction("", scrollPane.getTopLevelAncestor()).actionPerformed(e);
addGroupBtn.setSelected(false);
}
});
actGroupBtn.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent ie) {
if (ie.getStateChange() == ItemEvent.SELECTED) {
TreePath g = new TreePath(_model.getPathToRoot(_groups));
if (_tree.getSelectionPath() != null) {
if (_tree.getSelectionPath().getLastPathComponent().toString().equals(Roster.ALLENTRIES)) {
allEntriesMenu.show((JComponent) ie.getSource(), actGroupBtn.getX() - actGroupBtn.getWidth(), actGroupBtn.getY() - allEntriesMenu.getPreferredSize().height);
} else if (g.isDescendant(_tree.getSelectionPath()) && !_tree.getSelectionPath().isDescendant(g)) {
groupsMenu.show((JComponent) ie.getSource(), actGroupBtn.getX() - actGroupBtn.getWidth(), actGroupBtn.getY() - groupsMenu.getPreferredSize().height);
}
}
}
}
});
PopupMenuListener PML = new PopupMenuListener() {
@Override
public void popupMenuWillBecomeVisible(PopupMenuEvent pme) {
// do nothing
}
@Override
public void popupMenuWillBecomeInvisible(PopupMenuEvent pme) {
actGroupBtn.setSelected(false);
}
@Override
public void popupMenuCanceled(PopupMenuEvent pme) {
actGroupBtn.setSelected(false);
}
};
allEntriesMenu.addPopupMenuListener(PML);
groupsMenu.addPopupMenuListener(PML);
controls.add(addGroupBtn);
controls.add(actGroupBtn);
return controls;
}
use of java.awt.GridLayout in project JMRI by JMRI.
the class ControlPanelPropertyEditor method initGUI.
/**
* Create, initilize, and place the GUI objects.
*/
private void initGUI() {
this.setDefaultCloseOperation(JDialog.HIDE_ON_CLOSE);
this.setTitle(Bundle.getMessage("TitleEditSpeedControlPanel"));
JPanel mainPanel = new JPanel();
this.setContentPane(mainPanel);
mainPanel.setLayout(new BorderLayout());
JPanel propertyPanel = new JPanel();
propertyPanel.setLayout(new GridBagLayout());
GridBagConstraints constraints = new GridBagConstraints();
constraints.anchor = GridBagConstraints.WEST;
constraints.fill = GridBagConstraints.HORIZONTAL;
constraints.gridheight = 1;
constraints.gridwidth = 1;
constraints.ipadx = 0;
constraints.ipady = 0;
Insets insets = new Insets(2, 2, 2, 2);
constraints.insets = insets;
constraints.weightx = 1;
constraints.weighty = 1;
constraints.gridx = 0;
constraints.gridy = 0;
ButtonGroup modeSelectionButtons = new ButtonGroup();
displaySlider = new JRadioButton(Bundle.getMessage("ButtonDisplaySpeedSlider"));
displaySliderContinuous = new JRadioButton(Bundle.getMessage("ButtonDisplaySpeedSliderContinuous"));
displaySteps = new JRadioButton(Bundle.getMessage("ButtonDisplaySpeedSteps"));
modeSelectionButtons.add(displaySlider);
modeSelectionButtons.add(displaySteps);
modeSelectionButtons.add(displaySliderContinuous);
_displaySlider = control.getDisplaySlider();
constraints.anchor = GridBagConstraints.CENTER;
constraints.gridy = 1;
propertyPanel.add(displaySlider, constraints);
constraints.gridy = 2;
propertyPanel.add(displaySteps, constraints);
constraints.gridy = 3;
propertyPanel.add(displaySliderContinuous, constraints);
trackBox = new JCheckBox(Bundle.getMessage("CheckBoxTrackSliderInRealTime"));
constraints.gridy = 4;
trackBox.setSelected(control.getTrackSlider());
propertyPanel.add(trackBox, constraints);
JLabel functionSwitchLabel = new JLabel(Bundle.getMessage("SwitchSliderOnFunction"));
functionSwitchSlider = new JTextField(4);
functionSwitchSlider.setText(control.getSwitchSliderFunction());
constraints.gridy = 5;
constraints.gridx = 0;
propertyPanel.add(functionSwitchLabel, constraints);
constraints.gridx = 1;
propertyPanel.add(functionSwitchSlider, constraints);
displaySlider.setSelected(_displaySlider == ControlPanel.SLIDERDISPLAY);
displaySteps.setSelected(_displaySlider == ControlPanel.STEPDISPLAY);
displaySliderContinuous.setSelected(_displaySlider == ControlPanel.SLIDERDISPLAYCONTINUOUS);
displaySlider.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
displaySlider.setSelected(true);
displaySteps.setSelected(false);
displaySliderContinuous.setSelected(false);
_displaySlider = ControlPanel.SLIDERDISPLAY;
}
});
displaySteps.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
displaySlider.setSelected(false);
displaySteps.setSelected(true);
displaySliderContinuous.setSelected(false);
_displaySlider = ControlPanel.STEPDISPLAY;
}
});
displaySliderContinuous.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
displaySlider.setSelected(false);
displaySteps.setSelected(false);
displaySliderContinuous.setSelected(true);
_displaySlider = ControlPanel.SLIDERDISPLAYCONTINUOUS;
}
});
// disable the speed controls if the control panel says they
// aren't possible
displaySlider.setEnabled(control.isSpeedControllerAvailable(ControlPanel.SLIDERDISPLAY));
displaySteps.setEnabled(control.isSpeedControllerAvailable(ControlPanel.STEPDISPLAY));
displaySliderContinuous.setEnabled(control.isSpeedControllerAvailable(ControlPanel.SLIDERDISPLAYCONTINUOUS));
JPanel buttonPanel = new JPanel();
buttonPanel.setLayout(new GridLayout(1, 2, 4, 4));
JButton saveButton = new JButton(Bundle.getMessage("ButtonOK"));
saveButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
saveProperties();
}
});
JButton cancelButton = new JButton(Bundle.getMessage("ButtonCancel"));
cancelButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
finishEdit();
}
});
buttonPanel.add(saveButton);
buttonPanel.add(cancelButton);
mainPanel.add(propertyPanel, BorderLayout.CENTER);
mainPanel.add(buttonPanel, BorderLayout.SOUTH);
}
use of java.awt.GridLayout in project JMRI by JMRI.
the class DieselPane method initComponents.
@Override
public void initComponents() {
listenerList = new javax.swing.event.EventListenerList();
this.setLayout(new GridLayout(2, 0));
//Setup the throttle slider.
throttle_slider = new JSlider(JSlider.HORIZONTAL, THROTTLE_MIN, THROTTLE_MAX, THROTTLE_INIT);
throttle_slider.setMajorTickSpacing(1);
throttle_slider.setPaintTicks(true);
throttle_slider.setMinimumSize(new Dimension(400, 0));
throttle_slider.setSnapToTicks(true);
throttle_slider.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
throttleChange(e);
}
});
this.add(throttle_slider);
// Setup the start button
start_button = new JToggleButton();
start_button.setText("Engine Start");
start_button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
startButtonChange(e);
}
});
this.add(start_button);
throttle_slider.setVisible(true);
start_button.setVisible(true);
this.setVisible(true);
this.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
}
use of java.awt.GridLayout in project JMRI by JMRI.
the class RosterFrame method bottomRight.
JPanel bottomRight() {
JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
ButtonGroup progMode = new ButtonGroup();
progMode.add(service);
progMode.add(ops);
progMode.add(edit);
service.setEnabled(false);
ops.setEnabled(false);
edit.setEnabled(true);
firePropertyChange("setprogservice", "setEnabled", false);
firePropertyChange("setprogops", "setEnabled", false);
firePropertyChange("setprogedit", "setEnabled", true);
ops.setOpaque(false);
service.setOpaque(false);
edit.setOpaque(false);
JPanel progModePanel = new JPanel();
GridLayout buttonLayout = new GridLayout(3, 1, 0, 0);
progModePanel.setLayout(buttonLayout);
progModePanel.add(service);
progModePanel.add(ops);
progModePanel.add(edit);
programModeListener = (ActionEvent e) -> {
updateProgMode();
};
service.addActionListener(programModeListener);
ops.addActionListener(programModeListener);
edit.addActionListener(programModeListener);
service.setVisible(false);
ops.setVisible(false);
panel.add(progModePanel);
JPanel buttonHolder = new JPanel(new GridBagLayout());
GridBagConstraints c = new GridBagConstraints();
c.weightx = 1.0;
c.fill = GridBagConstraints.HORIZONTAL;
c.anchor = GridBagConstraints.NORTH;
c.gridx = 0;
c.ipady = 20;
c.gridwidth = GridBagConstraints.REMAINDER;
c.gridy = 0;
c.insets = new Insets(2, 2, 2, 2);
buttonHolder.add(prog1Button, c);
c.weightx = 1;
c.fill = GridBagConstraints.NONE;
c.gridx = 0;
c.gridy = 1;
c.gridwidth = 1;
c.ipady = 0;
buttonHolder.add(rosterMedia, c);
c.weightx = 1.0;
c.fill = GridBagConstraints.NONE;
c.gridx = 1;
c.gridy = 1;
c.gridwidth = 1;
c.ipady = 0;
buttonHolder.add(throttleLaunch, c);
//buttonHolder.add(throttleLaunch);
panel.add(buttonHolder);
prog1Button.setEnabled(false);
prog1Button.addActionListener((ActionEvent e) -> {
if (log.isDebugEnabled()) {
log.debug("Open programmer pressed");
}
startProgrammer(null, re, programmer1);
});
/*
* prog2Button.setEnabled(false); prog2Button.addActionListener( new
* ActionListener() { public void
* actionPerformed(java.awt.event.ActionEvent e) { if
* (log.isDebugEnabled()) log.debug("Open progDebugger pressed");
* startProgrammer(null, re, programmer2); } });
*/
/*
* throttleLabels.setEnabled(false); throttleLabels.addActionListener(
* new ActionListener() { public void
* actionPerformed(java.awt.event.ActionEvent e) { if
* (log.isDebugEnabled()) log.debug("Open progDebugger pressed");
* editMediaButton(); } });
*/
rosterMedia.setEnabled(false);
rosterMedia.addActionListener((ActionEvent e) -> {
if (log.isDebugEnabled()) {
log.debug("Open programmer pressed");
}
edit.setSelected(true);
startProgrammer(null, re, "dp3" + File.separator + "MediaPane");
});
throttleLaunch.setEnabled(false);
throttleLaunch.addActionListener((ActionEvent e) -> {
if (log.isDebugEnabled()) {
log.debug("Launch Throttle pressed");
}
if (!checkIfEntrySelected()) {
return;
}
ThrottleFrame tf = ThrottleFrameManager.instance().createThrottleFrame();
tf.toFront();
tf.getAddressPanel().setRosterEntry(re);
});
return panel;
}
use of java.awt.GridLayout in project JMRI by JMRI.
the class VSDSoundsPanel method initComponents.
@Override
public void initComponents() {
this.setLayout(new GridLayout(0, 3));
if (main_pane.getDecoder() == null) {
log.debug("No decoder!");
return;
}
ArrayList<SoundEvent> elist = new ArrayList<SoundEvent>(main_pane.getDecoder().getEventList());
for (SoundEvent e : elist) {
if (e.getButton() != null) {
log.debug("adding button " + e.getButton().toString());
}
this.add(e.getButton());
}
}
Aggregations