List of usage examples for javax.swing.undo UndoableEditSupport UndoableEditSupport
public UndoableEditSupport()
UndoableEditSupport
object. From source file:org.datavyu.views.DatavyuView.java
/** * Constructor./* ww w . ja v a 2 s .com*/ * * @param app * The SingleFrameApplication that invoked this main FrameView. */ public DatavyuView(final SingleFrameApplication app) { super(app); KeyboardFocusManager manager = KeyboardFocusManager.getCurrentKeyboardFocusManager(); manager.addKeyEventDispatcher(new KeyEventDispatcher() { /** * Dispatches the keystroke to the correct action. * * @param evt The event that triggered this action. * @return true if the KeyboardFocusManager should take no further * action with regard to the KeyEvent; false otherwise. */ @Override public boolean dispatchKeyEvent(final KeyEvent evt) { // Pass the keyevent onto the keyswitchboard so that it can // route it to the correct action. // spreadsheetMenuSelected(null); return Datavyu.getApplication().dispatchKeyEvent(evt); } }); // generated GUI builder code initComponents(); // BugzID:492 - Set the shortcut for new cell, so a keystroke that won't // get confused for the "carriage return". The shortcut for new cells // is handled in Datavyu.java newCellMenuItem.setAccelerator(KeyStroke.getKeyStroke('\u21A9')); // BugzID:521 + 468 - Define accelerator keys based on Operating system. int keyMask = Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(); weakTemporalOrderMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_T, keyMask)); strongTemporalOrderMenuItem .setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_T, InputEvent.SHIFT_MASK | keyMask)); // Set zoom in to keyMask + '+' zoomInMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_PLUS, keyMask)); // Set zoom out to keyMask + '-' zoomOutMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_MINUS, keyMask)); // Set reset zoom to keyMask + '0' resetZoomMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_0, keyMask)); // Set the save accelerator to keyMask + 'S' saveMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, keyMask)); // Set the save as accelerator to keyMask + shift + 'S' saveAsMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, keyMask | InputEvent.SHIFT_MASK)); // Set the open accelerator to keyMask + 'o'; openMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, keyMask)); // Set the new accelerator to keyMask + 'N'; newMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N, keyMask)); // Set the new accelerator to keyMask + 'L'; newCellLeftMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_L, keyMask)); // Set the new accelerator to keyMask + 'R'; newCellRightMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_R, keyMask)); // Set the show spreadsheet accelrator to F5. showSpreadsheetMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F5, 0)); // Set the undo accelerator to keyMask + 'Z'; undoSpreadSheetMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Z, keyMask)); // Set the redo accelerator to keyMask + 'Y' redoSpreadSheetMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Y, keyMask)); if (panel != null) { panel.deregisterListeners(); panel.removeFileDropEventListener(this); } panel = new SpreadsheetPanel(Datavyu.getProjectController().getDB(), null); panel.registerListeners(); panel.addFileDropEventListener(this); setComponent(panel); System.out.println(getComponent()); // initialize the undo/redo system spreadsheetUndoManager = new SpreadsheetUndoManager(); undoSupport = new UndoableEditSupport(); undoSupport.addUndoableEditListener(new UndoAdapter()); refreshUndoRedo(); ////// //Jakrabbit Menu pushMenuItem.setVisible(false); pullMenuItem.setVisible(false); jSeparator10.setVisible(false); }