package org.magic.gui.models; import java.awt.event.KeyEvent; import javax.swing.JButton; import javax.swing.SwingUtilities; import org.magic.gui.abstracts.GenericTableModel; import org.magic.gui.abstracts.MTGUIComponent; import org.magic.tools.ShortKeyManager; public class ShortKeyModel extends GenericTableModel<JButton> { private static final long serialVersionUID = 1L; private int mainObjectIndex =0; public ShortKeyModel() { columns = new String[] {"Module","Button","key"}; items = ShortKeyManager.inst().getMapping(); } @Override public Class<?> getColumnClass(int columnIndex) { if(columnIndex == 0) return MTGUIComponent.class; if(columnIndex == 1) return JButton.class; return super.getColumnClass(columnIndex); } @Override public Object getValueAt(int row, int column) { switch (column) { case 0: return SwingUtilities.getAncestorOfClass(MTGUIComponent.class, items.get(row)); case 1: return items.get(row); case 2: return KeyEvent.getKeyText(items.get(row).getMnemonic()); default: throw new IllegalArgumentException("Unexpected value: " + column); } } public int getMainObjectIndex() { return mainObjectIndex ; } public void setMainObjectIndex(int mainObjectIndex) { this.mainObjectIndex = mainObjectIndex; } }