package com.vistatec.ocelot; import java.awt.event.KeyEvent; import javax.swing.JMenu; import javax.swing.KeyStroke; public class DefaultPlatformSupport implements PlatformSupport { @Override public void init(Ocelot ocelot) { } @Override public int getPlatformKeyMask() { return KeyEvent.CTRL_MASK; } @Override public boolean isPlatformKeyDown(KeyEvent ke) { return ke.isControlDown(); } @Override public void setMenuMnemonics(JMenu file, JMenu view, JMenu extensions, JMenu help) { file.setMnemonic(KeyEvent.VK_F); view.setMnemonic(KeyEvent.VK_V); extensions.setMnemonic(KeyEvent.VK_E); help.setMnemonic(KeyEvent.VK_H); } @Override public KeyStroke[] getReservedKeys() { return WINDOWS_RESERVED_KEYS; } /** * <ul> * <li>Alt + Tab - Switch between open applications</li> * <li>Alt + Shift + Tab - Switch between open applications in the reverse * direction</li> * <li>Ctrl + Tab - Switches between program groups, tabs, or document * windows</li> * <li>Ctrl + Shift + Tab - Switches between program groups, tabs, or * document windows in the reverse direction</li> * <li>Ctrl + Alt + Del - Open the Windows option screen for locking * computer, switching user, Task Manager, etc.</li> * <li>Ctrl + Alt + Decimal - Open the Windows option screen for locking * computer, switching user, Task Manager, etc.</li> * <li>Ctrl + Shift + Esc - Immediately bring up the Windows Task Manager</li> * <li>Ctrl + Esc - Open the Windows Start menu</li> * <li>Alt + Esc - Switch between open applications on Taskbar</li> * <li>Alt + Shift + Esc - Switch between open applications on Taskbar in * the reverse order</li> * <li>Alt + Space bar - Drops down the window control menu for the * currently open Windows program</li> * <li>Alt + Enter - Opens properties window of selected icon or program</li> * <li>F1 - Activates help for current open application.</li> * <li>Alt + F4 - closes the current open program window</li> * <li>Ctrl + F4 - closes the open window within the current active window</li> * <li>F10 - Activates the File menu bar in all versions of Windows.</li> * <li>Ctrl+C - Copy the selected item</li> * <li>Ctrl+X - Cut the selected item</li> * <li>Ctrl+V - Paste the selected item</li> * <li>Ctrl+A - Select all items in a document or window</li> * <li>Ctrl+Alt+Tab - Use the arrow keys to switch between open items</li> * <li>Ctrl+Alt+Shift+Tab - Use the arrow keys to switch between open items * <li>Alt + Shift + Space - Opens the contextual menu of the active window</li> * in the reverse order</li> * </ul> */ private static final KeyStroke[] WINDOWS_RESERVED_KEYS = { KeyStroke.getKeyStroke(KeyEvent.VK_TAB, KeyEvent.ALT_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_TAB, KeyEvent.ALT_MASK + KeyEvent.SHIFT_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_TAB, KeyEvent.CTRL_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_TAB, KeyEvent.CTRL_MASK + KeyEvent.SHIFT_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_DELETE, KeyEvent.ALT_MASK + KeyEvent.CTRL_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, KeyEvent.CTRL_MASK + KeyEvent.SHIFT_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, KeyEvent.CTRL_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, KeyEvent.ALT_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_SPACE, KeyEvent.ALT_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, KeyEvent.ALT_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_F1, 0), KeyStroke.getKeyStroke(KeyEvent.VK_F4, KeyEvent.ALT_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_F4, KeyEvent.CTRL_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_F10, 0), KeyStroke.getKeyStroke(KeyEvent.VK_C, KeyEvent.CTRL_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_X, KeyEvent.CTRL_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_V, KeyEvent.CTRL_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_A, KeyEvent.CTRL_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_TAB, KeyEvent.ALT_MASK + KeyEvent.CTRL_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_TAB, KeyEvent.CTRL_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, KeyEvent.ALT_MASK + KeyEvent.SHIFT_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_DECIMAL, KeyEvent.ALT_MASK + KeyEvent.CTRL_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_TAB, KeyEvent.ALT_MASK + KeyEvent.CTRL_MASK + KeyEvent.SHIFT_MASK), KeyStroke.getKeyStroke(KeyEvent.VK_SPACE, KeyEvent.ALT_MASK + KeyEvent.SHIFT_MASK) }; }