示例#1
0
 @Override
 public void valueChanged(ListSelectionEvent e) {
   ListSelectionModel lsm = panel.shortcutTable.getSelectionModel(); // can't use e here
   if (!lsm.isSelectionEmpty()) {
     int row = panel.shortcutTable.convertRowIndexToModel(lsm.getMinSelectionIndex());
     Shortcut sc = (Shortcut) panel.model.getValueAt(row, -1);
     panel.cbDefault.setSelected(!sc.getAssignedUser());
     panel.cbDisable.setSelected(sc.getKeyStroke() == null);
     panel.cbShift.setSelected(
         sc.getAssignedModifier() != -1
             && (sc.getAssignedModifier() & KeyEvent.SHIFT_DOWN_MASK) != 0);
     panel.cbCtrl.setSelected(
         sc.getAssignedModifier() != -1
             && (sc.getAssignedModifier() & KeyEvent.CTRL_DOWN_MASK) != 0);
     panel.cbAlt.setSelected(
         sc.getAssignedModifier() != -1
             && (sc.getAssignedModifier() & KeyEvent.ALT_DOWN_MASK) != 0);
     panel.cbMeta.setSelected(
         sc.getAssignedModifier() != -1
             && (sc.getAssignedModifier() & KeyEvent.META_DOWN_MASK) != 0);
     if (sc.getKeyStroke() != null) {
       tfKey.setSelectedItem(keyList.get(sc.getKeyStroke().getKeyCode()));
     } else {
       tfKey.setSelectedItem(keyList.get(-1));
     }
     if (!sc.isChangeable()) {
       disableAllModifierCheckboxes();
       panel.tfKey.setEnabled(false);
     } else {
       panel.cbDefault.setEnabled(true);
       actionPerformed(null);
     }
     model.fireTableRowsUpdated(row, row);
   } else {
     panel.disableAllModifierCheckboxes();
     panel.tfKey.setEnabled(false);
   }
 }