@Override public void actionPerformed(final ActionEvent e) { if (StockpileItemAction.OK.name().equals(e.getActionCommand())) { save(); } if (StockpileItemAction.CANCEL.name().equals(e.getActionCommand())) { setVisible(false); } if (StockpileItemAction.COPY.name().equals(e.getActionCommand())) { autoSet(); autoValidate(); } }
public StockpileItemDialog(final Program program) { super(program, TabsStockpile.get().addStockpileItem(), Images.TOOL_STOCKPILE.getImage()); ListenerClass listener = new ListenerClass(); JLabel jItemsLabel = new JLabel(TabsStockpile.get().item()); jItems = new JComboBox(); AutoCompleteSupport<Item> itemAutoComplete = AutoCompleteSupport.install( jItems, EventModels.createSwingThreadProxyList(items), new ItemFilterator()); itemAutoComplete.setStrict(true); itemAutoComplete.setCorrectsCase(true); jItems.addItemListener(listener); // Must be added after AutoCompleteSupport JLabel jCountMinimumLabel = new JLabel(TabsStockpile.get().countMinimum()); jCountMinimum = new JTextField(); jCountMinimum.addFocusListener( new FocusAdapter() { @Override public void focusGained(final FocusEvent e) { jCountMinimum.selectAll(); } }); jCountMinimum.addCaretListener(listener); jCopy = new JCheckBox(TabsStockpile.get().copy()); jCopy.setActionCommand(StockpileItemAction.COPY.name()); jCopy.addActionListener(listener); jOK = new JButton(TabsStockpile.get().ok()); jOK.setActionCommand(StockpileItemAction.OK.name()); jOK.addActionListener(listener); jOK.setEnabled(false); jCancel = new JButton(TabsStockpile.get().cancel()); jCancel.setActionCommand(StockpileItemAction.CANCEL.name()); jCancel.addActionListener(listener); layout.setHorizontalGroup( layout .createParallelGroup(GroupLayout.Alignment.TRAILING) .addGroup( layout .createSequentialGroup() .addGroup( layout .createParallelGroup() .addComponent(jItemsLabel) .addComponent(jCountMinimumLabel)) .addGroup( layout .createParallelGroup() .addComponent(jItems, 300, 300, 300) .addGroup( layout .createSequentialGroup() .addComponent(jCountMinimum, 100, 100, Short.MAX_VALUE) .addComponent(jCopy)))) .addGroup( layout .createSequentialGroup() .addComponent( jOK, Program.BUTTONS_WIDTH, Program.BUTTONS_WIDTH, Program.BUTTONS_WIDTH) .addComponent( jCancel, Program.BUTTONS_WIDTH, Program.BUTTONS_WIDTH, Program.BUTTONS_WIDTH))); layout.setVerticalGroup( layout .createSequentialGroup() .addGroup( layout .createParallelGroup() .addComponent( jItemsLabel, Program.BUTTONS_HEIGHT, Program.BUTTONS_HEIGHT, Program.BUTTONS_HEIGHT) .addComponent( jItems, Program.BUTTONS_HEIGHT, Program.BUTTONS_HEIGHT, Program.BUTTONS_HEIGHT)) .addGroup( layout .createParallelGroup() .addComponent( jCountMinimumLabel, Program.BUTTONS_HEIGHT, Program.BUTTONS_HEIGHT, Program.BUTTONS_HEIGHT) .addComponent( jCountMinimum, Program.BUTTONS_HEIGHT, Program.BUTTONS_HEIGHT, Program.BUTTONS_HEIGHT) .addComponent( jCopy, Program.BUTTONS_HEIGHT, Program.BUTTONS_HEIGHT, Program.BUTTONS_HEIGHT)) .addGroup( layout .createParallelGroup() .addComponent( jOK, Program.BUTTONS_HEIGHT, Program.BUTTONS_HEIGHT, Program.BUTTONS_HEIGHT) .addComponent( jCancel, Program.BUTTONS_HEIGHT, Program.BUTTONS_HEIGHT, Program.BUTTONS_HEIGHT))); }