/** * Creates a new VariableExplorer object. * * @param owner DOCUMENT ME! * @param title DOCUMENT ME! */ public VariableExplorer(Frame owner, String title) { super(owner, title, true); buildUI(owner); variableTree.setModel(Main.getInstance().getActiveEditor().getVariableModel()); setSize(new Dimension(380, 450)); setLocationRelativeTo(owner); }
protected void done() { if (variableTree.isSettable()) { xok = OK; hide(); } }
private void buildUI(Frame owner) { JPanel wrapper = new JPanel(new GridLayout()); wrapper.add(variableTree); variableTree.setOwner(owner); variableTree.setDoubleClickAction( new ActionListener() { public void actionPerformed(ActionEvent e) { done(); } }); variableTree.addChangeListener( new ChangeListener() { public void stateChanged(ChangeEvent e) { okCommand.setEnabled(variableTree.isSettable()); } }); JButton newCommand = new JButton(variableTree.getAddAction()); JButton editCommand = new JButton(variableTree.getEditAction()); JButton deleteCommand = new JButton(variableTree.getDeleteAction()); okCommand = new JButton(App.messages.getString("res.3")); okCommand.setEnabled(false); JButton cancelCommand = new JButton(App.messages.getString("res.4")); JButton applyNull = new JButton(App.messages.getString("res.287")); applyNull.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { nullApply(); } }); newCommand.setPreferredSize(new Dimension(75, 25)); editCommand.setPreferredSize(newCommand.getPreferredSize()); deleteCommand.setPreferredSize(newCommand.getPreferredSize()); okCommand.setPreferredSize(newCommand.getPreferredSize()); cancelCommand.setPreferredSize(newCommand.getPreferredSize()); applyNull.setPreferredSize(newCommand.getPreferredSize()); okCommand.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { done(); } }); cancelCommand.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { hide(); } }); JPanel commandPanel = new JPanel(new GridBagLayout()); GridBagConstraints gbc = new GridBagConstraints(); gbc.gridwidth = GridBagConstraints.REMAINDER; Component strut = Box.createVerticalStrut(150); commandPanel.add(strut, gbc); gbc.insets = new Insets(2, 20, 2, 20); commandPanel.add(newCommand, gbc); commandPanel.add(editCommand, gbc); commandPanel.add(deleteCommand, gbc); gbc.insets = new Insets(20, 20, 2, 20); commandPanel.add(okCommand, gbc); gbc.insets = new Insets(2, 20, 2, 20); commandPanel.add(applyNull, gbc); commandPanel.add(cancelCommand, gbc); wrapper.setBorder(BorderFactory.createEmptyBorder(15, 15, 15, 0)); getContentPane().add(wrapper, BorderLayout.CENTER); getContentPane().add(commandPanel, BorderLayout.EAST); this.addWindowListener( new WindowAdapter() { public void windowOpened(WindowEvent e) { variableTree.scrollSelectedRowToVisible(); } }); }
/** * DOCUMENT ME! * * @param var DOCUMENT ME! */ public void setVariable(String var) { variableTree.setVariable(var); }
/** * DOCUMENT ME! * * @return DOCUMENT ME! */ public String getVariable() { return variableTree.getVariable(); }