public void setValue(AbstractMenuItemType menuItem) { oldValue = menuItem; if (menuItem != null) { nameTextField.setText(menuItem.getName()); descriptionTextField.setText(menuItem.getDescription()); iconTextField.setText(menuItem.getIcon()); if (menuItem instanceof MenuItemType) { CommandType command = ((MenuItemType) menuItem).getCommand(); commandComboBox.setSelectedItem(command.getRef()); List<String> arguments = new ArrayList<>(command.getArgument()); argumentTableModel = new ArgumentTableModel(arguments); argumentTable.setModel(argumentTableModel); argumentTable .getSelectionModel() .addListSelectionListener( new ListSelectionListener() { @Override public void valueChanged(ListSelectionEvent e) { deleteArgumentButton.setEnabled(argumentTable.getSelectedRowCount() > 0); moveArgumentDownButton.setEnabled( argumentTable.getSelectedRow() < argumentTableModel.getRowCount() - 1); moveArgumentUpButton.setEnabled(argumentTable.getSelectedRow() > 0); } }); } else { hideCommandComponents(); } } }