类javax.swing.InputMap源码实例Demo

下面列出了怎么用javax.swing.InputMap的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: jdk8u-jdk   文件: XTextAreaPeer.java
@Override
protected void installKeyboardActions() {
    super.installKeyboardActions();

    JTextComponent comp = getComponent();

    UIDefaults uidefaults = XToolkit.getUIDefaults();

    String prefix = getPropertyPrefix();

    InputMap map = (InputMap)uidefaults.get(prefix + ".focusInputMap");

    if (map != null) {
        SwingUtilities.replaceUIInputMap(comp, JComponent.WHEN_FOCUSED,
                                         map);
    }
}
 
源代码2 项目: tn5250j   文件: KeyboardHandler.java
protected boolean emulatorAction(KeyStroke ks, KeyEvent e){

      if (sessionGui == null)
         return false;

      InputMap map = getInputMap();
      ActionMap am = getActionMap();

      if(map != null && am != null && sessionGui.isEnabled()) {
         Object binding = map.get(ks);
         Action action = (binding == null) ? null : am.get(binding);
         if (action != null) {
            return true;
         }
      }
      return false;
   }
 
源代码3 项目: diirt   文件: CompareResultImages.java
/**
 * Creates new form CompareResultImages
 */
public CompareResultImages() {
    initComponents();
    toReviewList.setModel(new DefaultListModel());
    fillList();
    setSize(800, 600);
    setExtendedState(getExtendedState() | MAXIMIZED_BOTH);
    actualImage.setStretch(false);
    referenceImage.setStretch(false);
    acceptAction.putValue(Action.ACCELERATOR_KEY, KeyStroke.getKeyStroke("control D"));

    InputMap keyMap = new ComponentInputMap(acceptButton);
    keyMap.put(KeyStroke.getKeyStroke("control D"), "accept");

    ActionMap actionMap = new ActionMapUIResource();
    actionMap.put("accept", acceptAction);

    SwingUtilities.replaceUIActionMap(acceptButton, actionMap);
    SwingUtilities.replaceUIInputMap(acceptButton, JComponent.WHEN_IN_FOCUSED_WINDOW, keyMap);
}
 
源代码4 项目: Course_Generator   文件: frmSearchPoint.java
/**
 * Manage low level key strokes ESCAPE : Close the window
 *
 * @return
 */
protected JRootPane createRootPane() {
	JRootPane rootPane = new JRootPane();
	KeyStroke strokeEscape = KeyStroke.getKeyStroke("ESCAPE");

	@SuppressWarnings("serial")
	Action actionListener = new AbstractAction() {
		public void actionPerformed(ActionEvent actionEvent) {
			setVisible(false);
		}
	};

	InputMap inputMap = rootPane.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW);
	inputMap.put(strokeEscape, "ESCAPE");
	rootPane.getActionMap().put("ESCAPE", actionListener);

	return rootPane;
}
 
源代码5 项目: FlatLaf   文件: UIDefaultsDump.java
private void dumpInputMap( PrintWriter out, InputMap inputMap, String indent ) {
	if( indent == null )
		indent = "    ";

	out.printf( "%d    %s", inputMap.size(), dumpClass( inputMap ) );

	KeyStroke[] keys = inputMap.keys();
	if( keys != null ) {
		Arrays.sort( keys, (keyStroke1, keyStroke2) -> {
			return String.valueOf( keyStroke1 ).compareTo( String.valueOf( keyStroke2 ) );
		} );
		for( KeyStroke keyStroke : keys ) {
			Object value = inputMap.get( keyStroke );
			String strKeyStroke = keyStroke.toString().replace( "pressed ", "" );
			out.printf( "%n%s%-20s  %s", indent, strKeyStroke, value );
		}
	}

	InputMap parent = inputMap.getParent();
	if( parent != null )
		dumpInputMap( out, parent, indent + "    " );
}
 
源代码6 项目: visualvm   文件: SearchUtils.java
public KeyStroke registerAction(String actionKey, Action action, ActionMap actionMap, InputMap inputMap) {
    KeyStroke ks = null;
    
    if (FIND_ACTION_KEY.equals(actionKey)) {
        ks = KeyStroke.getKeyStroke(KeyEvent.VK_G, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask());
    } else if (FIND_NEXT_ACTION_KEY.equals(actionKey)) {
        ks = KeyStroke.getKeyStroke(KeyEvent.VK_F3, 0);
    } else if (FIND_PREV_ACTION_KEY.equals(actionKey)) {
        ks = KeyStroke.getKeyStroke(KeyEvent.VK_F3, InputEvent.SHIFT_MASK);
    } else if (FIND_SEL_ACTION_KEY.equals(actionKey)) {
        ks = KeyStroke.getKeyStroke(KeyEvent.VK_F3, InputEvent.CTRL_MASK);
    }
    
    if (ks != null) {
        actionMap.put(actionKey, action);
        inputMap.put(ks, actionKey);
    }

    return ks;
}
 
源代码7 项目: FlatLaf   文件: FlatComboBoxUI.java
@Override
protected void configureEditor() {
	super.configureEditor();

	// explicitly make non-opaque
	if( editor instanceof JComponent )
		((JComponent)editor).setOpaque( false );

	editor.applyComponentOrientation( comboBox.getComponentOrientation() );

	updateEditorColors();

	// macOS
	if( SystemInfo.IS_MAC && editor instanceof JTextComponent ) {
		// delegate actions from editor text field to combobox, which is necessary
		// because text field on macOS already handle those keys
		InputMap inputMap = ((JTextComponent)editor).getInputMap();
		new EditorDelegateAction( inputMap, KeyStroke.getKeyStroke( "UP" ) );
		new EditorDelegateAction( inputMap, KeyStroke.getKeyStroke( "KP_UP" ) );
		new EditorDelegateAction( inputMap, KeyStroke.getKeyStroke( "DOWN" ) );
		new EditorDelegateAction( inputMap, KeyStroke.getKeyStroke( "KP_DOWN" ) );
		new EditorDelegateAction( inputMap, KeyStroke.getKeyStroke( "HOME" ) );
		new EditorDelegateAction( inputMap, KeyStroke.getKeyStroke( "END" ) );
	}
}
 
源代码8 项目: dragonwell8_jdk   文件: XTextAreaPeer.java
@Override
protected void installKeyboardActions() {
    super.installKeyboardActions();

    JTextComponent comp = getComponent();

    UIDefaults uidefaults = XToolkit.getUIDefaults();

    String prefix = getPropertyPrefix();

    InputMap map = (InputMap)uidefaults.get(prefix + ".focusInputMap");

    if (map != null) {
        SwingUtilities.replaceUIInputMap(comp, JComponent.WHEN_FOCUSED,
                                         map);
    }
}
 
源代码9 项目: TencentKona-8   文件: XTextFieldPeer.java
@Override
protected void installKeyboardActions() {
    super.installKeyboardActions();

    JTextComponent comp = getComponent();

    UIDefaults uidefaults = XToolkit.getUIDefaults();

    String prefix = getPropertyPrefix();

    InputMap map = (InputMap)uidefaults.get(prefix + ".focusInputMap");

    if (map != null) {
        SwingUtilities.replaceUIInputMap(comp, JComponent.WHEN_FOCUSED,
                                         map);
    }
}
 
源代码10 项目: Course_Generator   文件: frmReleaseNote.java
/**
 * Manage low level key strokes ESCAPE : Close the window
 *
 * @return
 */
protected JRootPane createRootPane() {
	JRootPane rootPane = new JRootPane();
	KeyStroke strokeEscape = KeyStroke.getKeyStroke("ESCAPE");

	@SuppressWarnings("serial")
	Action actionListener = new AbstractAction() {
		public void actionPerformed(ActionEvent actionEvent) {
			setVisible(false);
		}
	};

	InputMap inputMap = rootPane.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW);
	inputMap.put(strokeEscape, "ESCAPE");
	rootPane.getActionMap().put("ESCAPE", actionListener);

	return rootPane;
}
 
源代码11 项目: audiveris   文件: StubsController.java
/**
 * Bind a few keyboard events to actions among assemblies.
 */
private void bindKeys ()
{
    final InputMap inputMap = stubsPane.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW);
    final ActionMap actionMap = stubsPane.getActionMap();

    inputMap.put(KeyStroke.getKeyStroke("PAGE_UP"), "PageUpAction");
    actionMap.put("PageUpAction", new PageUpAction());

    inputMap.put(KeyStroke.getKeyStroke("PAGE_DOWN"), "PageDownAction");
    actionMap.put("PageDownAction", new PageDownAction());

    inputMap.put(KeyStroke.getKeyStroke("control HOME"), "CtrlHomeAction");
    actionMap.put("CtrlHomeAction", new CtrlHomeAction());

    inputMap.put(KeyStroke.getKeyStroke("control END"), "CtrlEndAction");
    actionMap.put("CtrlEndAction", new CtrlEndAction());
}
 
源代码12 项目: netbeans   文件: QueryBuilder.java
/** Opened for the first time */
   @Override
   protected void componentOpened() {

Log.getLogger().entering("QueryBuilder", "componentOpened");

       activateActions();
       ActionMap map = getActionMap();
       InputMap keys = getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
       installActions(map, keys);
       
       // QueryBuilder does not need to listen to VSE, because it will notify us
       // directly if something changes. The SqlCommandCustomizer needs to listen 
       // to VSE, because that's the only way it is notified of changes to the command 
       // sqlStatement.addPropertyChangeListener(sqlStatementListener) ;
       // vse.addPropertyChangeListener(sqlStatementListener) ;

       // do NOT force a parse here.  It's done in componentShowing().
       // populate( sqlStatement.getCommand()) ;
   }
 
源代码13 项目: netbeans   文件: NbEditorToolBar.java
private void installNoOpActionMappings(){
    InputMap im = getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
    // cut
    KeyStroke[] keys = findEditorKeys(DefaultEditorKit.cutAction, KeyStroke.getKeyStroke(KeyEvent.VK_X, InputEvent.CTRL_MASK));
    for (int i = 0; i < keys.length; i++) {
        im.put(keys[i], NOOP_ACTION_KEY);
    }
    // copy
    keys = findEditorKeys(DefaultEditorKit.copyAction, KeyStroke.getKeyStroke(KeyEvent.VK_C, InputEvent.CTRL_MASK));
    for (int i = 0; i < keys.length; i++) {
        im.put(keys[i], NOOP_ACTION_KEY);
    }
    // delete
    keys = findEditorKeys(DefaultEditorKit.deleteNextCharAction, KeyStroke.getKeyStroke(KeyEvent.VK_DELETE, 0)); //NOI18N
    for (int i = 0; i < keys.length; i++) {
        im.put(keys[i], NOOP_ACTION_KEY);
    }
    // paste
    keys = findEditorKeys(DefaultEditorKit.pasteAction, KeyStroke.getKeyStroke(KeyEvent.VK_V, InputEvent.CTRL_MASK));
    for (int i = 0; i < keys.length; i++) {
        im.put(keys[i], NOOP_ACTION_KEY);
    }
    
    getActionMap().put(NOOP_ACTION_KEY, NOOP_ACTION);
}
 
源代码14 项目: marathonv5   文件: JavaElementPropertyAccessor.java
private String getKeyStrokeFor(String action) {
    JSONArray r = new JSONArray();
    if (component instanceof JComponent) {
        InputMap inputMap = ((JComponent) component).getInputMap();
        KeyStroke[] allKeys = inputMap.allKeys();
        for (KeyStroke ks : allKeys) {
            if (action.equals(inputMap.get(ks))) {
                r.put(ks.toString());
            }
        }
    }
    if (r.length() > 0) {
        return r.toString();
    }
    return null;
}
 
源代码15 项目: visualvm   文件: VisualVMActionsSupportProvider.java
public KeyStroke registerAction(String actionKey, Action action, ActionMap actionMap, InputMap inputMap) {
    KeyStroke ks = null;

    if (FilterUtils.FILTER_ACTION_KEY.equals(actionKey)) {
        ks = KeyStroke.getKeyStroke(KeyEvent.VK_G, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask());
    } else if (SearchUtils.FIND_ACTION_KEY.equals(actionKey)) {
        ks = KeyStroke.getKeyStroke(KeyEvent.VK_F, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask());
    } else if (SearchUtils.FIND_NEXT_ACTION_KEY.equals(actionKey)) {
        ks = KeyStroke.getKeyStroke(KeyEvent.VK_F3, 0);
    } else if (SearchUtils.FIND_PREV_ACTION_KEY.equals(actionKey)) {
        ks = KeyStroke.getKeyStroke(KeyEvent.VK_F3, InputEvent.SHIFT_MASK);
    } else if (SearchUtils.FIND_SEL_ACTION_KEY.equals(actionKey)) {
        ks = KeyStroke.getKeyStroke(KeyEvent.VK_F3, InputEvent.CTRL_MASK);
    }

    if (ks != null) {
        actionMap.put(actionKey, action);
        inputMap.put(ks, actionKey);
    }

    return ks;
}
 
源代码16 项目: openjdk-jdk9   文件: XTextAreaPeer.java
@Override
protected void installKeyboardActions() {
    super.installKeyboardActions();

    JTextComponent comp = getComponent();

    UIDefaults uidefaults = XToolkit.getUIDefaults();

    String prefix = getPropertyPrefix();

    InputMap map = (InputMap)uidefaults.get(prefix + ".focusInputMap");

    if (map != null) {
        SwingUtilities.replaceUIInputMap(comp, JComponent.WHEN_FOCUSED,
                                         map);
    }
}
 
源代码17 项目: netbeans   文件: ToolTipManagerEx.java
/**
    * Registers a component for tooltip management.
    * <p>
    * This will register key bindings to show and hide the tooltip text
    * only if <code>component</code> has focus bindings. This is done
    * so that components that are not normally focus traversable, such
    * as <code>JLabel</code>, are not made focus traversable as a result
    * of invoking this method.
    *
    * @param component  a <code>JComponent</code> object to add
    * @see JComponent#isFocusTraversable
    */
   protected void registerComponent(JComponent component) {
       component.removeMouseListener(this);
       component.addMouseListener(this);
       component.removeMouseMotionListener(moveBeforeEnterListener);
component.addMouseMotionListener(moveBeforeEnterListener);

if (shouldRegisterBindings(component)) {
    // register our accessibility keybindings for this component
    // this will apply globally across L&F
    // Post Tip: Ctrl+F1
    // Unpost Tip: Esc and Ctrl+F1
    InputMap inputMap = component.getInputMap(JComponent.WHEN_FOCUSED);
    ActionMap actionMap = component.getActionMap();

    if (inputMap != null && actionMap != null) {
               //XXX remove
    }
}
   }
 
源代码18 项目: netbeans   文件: CheckTreeView.java
/** Creates a new instance of CheckTreeView */
public CheckTreeView() {
    
    setFocusable( false );
    
    CheckListener l = new CheckListener();
    tree.addMouseListener( l );
    tree.addKeyListener( l );

    CheckRenderer check = new CheckRenderer();
    tree.setCellRenderer( check );
    tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
    
    tree.setShowsRootHandles(false);
    
    InputMap input = tree.getInputMap( JTree.WHEN_FOCUSED );
    if( null != input )
        input.remove( KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0) );
    
    setBorder( UIManager.getBorder("ScrollPane.border") );
}
 
源代码19 项目: netbeans   文件: CheckTreeView.java
/** Creates a new instance of CheckTreeView */
public CheckTreeView() {
    
    setFocusable( false );
    
    CheckListener l = new CheckListener();
    tree.addMouseListener( l );
    tree.addKeyListener( l );

    CheckRenderer check = new CheckRenderer();
    tree.setCellRenderer( check );
    tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
    
    tree.setShowsRootHandles(false);
    
    InputMap input = tree.getInputMap( JTree.WHEN_FOCUSED );
    if( null != input )
        input.remove( KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0) );
    
    setBorder( UIManager.getBorder("ScrollPane.border") );
}
 
源代码20 项目: netbeans   文件: OutlineView.java
private void removeDefaultCutCopyPaste(InputMap map) {
    putActionDelegate(map, KeyStroke.getKeyStroke("control C")); // NOI18N
    map.put(KeyStroke.getKeyStroke("control V"), "none"); // NOI18N
    map.put(KeyStroke.getKeyStroke("control X"), "none"); // NOI18N
    putActionDelegate(map, KeyStroke.getKeyStroke("COPY")); // NOI18N
    map.put(KeyStroke.getKeyStroke("PASTE"), "none"); // NOI18N
    map.put(KeyStroke.getKeyStroke("CUT"), "none"); // NOI18N

    if (Utilities.isMac()) {
        putActionDelegate(map, KeyStroke.getKeyStroke(KeyEvent.VK_C, InputEvent.META_MASK)); // NOI18N
        map.put(KeyStroke.getKeyStroke(KeyEvent.VK_X, InputEvent.META_MASK), "none"); // NOI18N
        map.put(KeyStroke.getKeyStroke(KeyEvent.VK_V, InputEvent.META_MASK), "none"); // NOI18N
    } else {
        putActionDelegate(map, KeyStroke.getKeyStroke(KeyEvent.VK_C, InputEvent.CTRL_DOWN_MASK)); // NOI18N
        map.put(KeyStroke.getKeyStroke(KeyEvent.VK_X, InputEvent.CTRL_DOWN_MASK), "none"); // NOI18N
        map.put(KeyStroke.getKeyStroke(KeyEvent.VK_V, InputEvent.CTRL_DOWN_MASK), "none"); // NOI18N
    }
}
 
源代码21 项目: netbeans   文件: Preview.java
private void populateInputMap(InputMap inputMap) {
    inputMap.put(KeyStroke.getKeyStroke('k'), INCREASE);
    inputMap.put(KeyStroke.getKeyStroke('K'), INCREASE);
    inputMap.put(KeyStroke.getKeyStroke('+'), INCREASE);
    inputMap.put(KeyStroke.getKeyStroke('='), INCREASE);
    inputMap.put(KeyStroke.getKeyStroke('g'), DECREASE);
    inputMap.put(KeyStroke.getKeyStroke('G'), DECREASE);
    inputMap.put(KeyStroke.getKeyStroke('-'), DECREASE);
    inputMap.put(KeyStroke.getKeyStroke('_'), DECREASE);
    inputMap.put(KeyStroke.getKeyStroke('l'), LAST);
    inputMap.put(KeyStroke.getKeyStroke('L'), LAST);
    inputMap.put(KeyStroke.getKeyStroke('*'), LAST);
    inputMap.put(KeyStroke.getKeyStroke('f'), FIRST);
    inputMap.put(KeyStroke.getKeyStroke('F'), FIRST);
    inputMap.put(KeyStroke.getKeyStroke('/'), FIRST);
}
 
源代码22 项目: netbeans   文件: AutoHidingMenuBar.java
private void populateMenuOpenKeyboardShortcuts(JComponent component) {
    /* In the future, it would be nice to include the shortcut from
    o.n.modules.quicksearch.QuickSearchAction/QuickSearchComboBar here. That shortcut isn't set
    via a regular InputMap, however, so a new cross-module API (maybe a client property that
    could be set on QuickSearchComboBar) would be needed to let QuickSearchComboBar tell
    AutoHidingMenuBar about its shortcut. */
    InputMap im = component.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW);
    if (im != null) {
        KeyStroke keyStrokes[] = im.allKeys();
        if (keyStrokes != null) {
            for (KeyStroke keyStroke : keyStrokes) {
                menuOpenKeyboardShortcuts.put(keyStroke,
                        "OpenMenu"); // Value doesn't matter, just use some non-null string.
            }
        }
    }
    // Don't descend into the actual menus.
    if (!(component instanceof JMenu)) {
        for (Component childComponent : component.getComponents()) {
            if (childComponent instanceof JComponent)
                populateMenuOpenKeyboardShortcuts((JComponent) childComponent);
        }
    }
}
 
源代码23 项目: jdk8u-dev-jdk   文件: XTextFieldPeer.java
@Override
protected void installKeyboardActions() {
    super.installKeyboardActions();

    JTextComponent comp = getComponent();

    UIDefaults uidefaults = XToolkit.getUIDefaults();

    String prefix = getPropertyPrefix();

    InputMap map = (InputMap)uidefaults.get(prefix + ".focusInputMap");

    if (map != null) {
        SwingUtilities.replaceUIInputMap(comp, JComponent.WHEN_FOCUSED,
                                         map);
    }
}
 
源代码24 项目: netbeans   文件: FlatLFCustoms.java
@Override
public Object createValue(UIDefaults table) {
    // get base input map from look and feel defaults (resolves lazy base input map)
    InputMap inputMap = (InputMap) UIManager.getLookAndFeelDefaults().get(baseKey);

    // modify input map (replace or remove)
    for (int i = 0; i < bindings.length; i += 2) {
        KeyStroke keyStroke = KeyStroke.getKeyStroke((String) bindings[i]);
        if (bindings[i + 1] != null) {
            inputMap.put(keyStroke, bindings[i + 1]);
        } else {
            inputMap.remove(keyStroke);
        }
    }

    return inputMap;
}
 
源代码25 项目: binnavi   文件: CAbstractTreeTable.java
/**
 * Creates a new abstract tree table object.
 *
 * @param projectTree The project tree shown in the main window.
 * @param model The raw model that is responsible for the table layout.
 * @param helpInfo Provides context-sensitive information for the table.
 */
public CAbstractTreeTable(final JTree projectTree, final CAbstractTreeTableModel<T> model,
    final IHelpInformation helpInfo) {
  super(model, helpInfo);

  treeTableModel = Preconditions.checkNotNull(model, "IE01939: Model argument can't be null");
  tree =
      Preconditions.checkNotNull(projectTree, "IE02343: Project tree argument can not be null");

  addMouseListener(mouseListener);

  setDefaultRenderer(String.class, new CProjectTreeTableRenderer());

  final InputMap windowImap = getInputMap(JComponent.WHEN_FOCUSED);

  windowImap.put(HotKeys.SEARCH_HK.getKeyStroke(), "SEARCH");
  getActionMap().put("SEARCH", CActionProxy.proxy(new SearchAction()));

  windowImap.put(HotKeys.DELETE_HK.getKeyStroke(), "DELETE");
  getActionMap().put("DELETE", CActionProxy.proxy(new DeleteAction()));

  updateUI();
}
 
源代码26 项目: netbeans   文件: SearchUtils.java
public KeyStroke registerAction(String actionKey, Action action, ActionMap actionMap, InputMap inputMap) {
    KeyStroke ks = null;
    
    if (FIND_ACTION_KEY.equals(actionKey)) {
        ks = KeyStroke.getKeyStroke(KeyEvent.VK_G, InputEvent.CTRL_MASK);
    } else if (FIND_NEXT_ACTION_KEY.equals(actionKey)) {
        ks = KeyStroke.getKeyStroke(KeyEvent.VK_F3, 0);
    } else if (FIND_PREV_ACTION_KEY.equals(actionKey)) {
        ks = KeyStroke.getKeyStroke(KeyEvent.VK_F3, InputEvent.SHIFT_MASK);
    } else if (FIND_SEL_ACTION_KEY.equals(actionKey)) {
        ks = KeyStroke.getKeyStroke(KeyEvent.VK_F3, InputEvent.CTRL_MASK);
    }
    
    if (ks != null) {
        actionMap.put(actionKey, action);
        inputMap.put(ks, actionKey);
    }

    return ks;
}
 
源代码27 项目: wpcleaner   文件: JCloseableTabbedPane.java
/**
 * Constructor.
 * 
 * @param tabPlacement the placement for the tabs relative to the content
 * @param tabLayoutPolicy the policy for laying out tabs when all tabs will not fit on one run
 */
public JCloseableTabbedPane(int tabPlacement, int tabLayoutPolicy) {
  super(tabPlacement, tabLayoutPolicy);
  addKeyListener(this);
  ActionMap actionMap = getActionMap();
  InputMap inputMap = getInputMap(WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
  KeyStroke keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_M, InputEvent.CTRL_DOWN_MASK);
  inputMap.put(keyStroke, "close-current-tab");
  actionMap.put("close-current-tab", new AbstractAction() {
    
    /** Serialization */
    private static final long serialVersionUID = -1886432591524366546L;

    /**
     * @param e Event.
     * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
     */
    @Override
    public void actionPerformed(ActionEvent e) {
      remove(getSelectedIndex());
    }
  });
}
 
源代码28 项目: beautyeye   文件: SwingSet2.java
/**
 * Creates the popup menu.
 *
 * @return the j popup menu
 */
public JPopupMenu createPopupMenu() {
	JPopupMenu popup = new JPopupMenu("JPopupMenu demo");

	createPopupMenuItem(popup, "LafMenu.java_label", "LafMenu.java_mnemonic",
			"LafMenu.java_accessible_description", metal);

	createPopupMenuItem(popup, "LafMenu.windows_label", "LafMenu.windows_mnemonic",
			"LafMenu.windows_accessible_description", windows);

	createPopupMenuItem(popup, "LafMenu.gtk_label", "LafMenu.gtk_mnemonic",
			"LafMenu.gtk_accessible_description", gtk);

	// register key binding to activate popup menu
	InputMap map = getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW);
	map.put(KeyStroke.getKeyStroke(KeyEvent.VK_F10, InputEvent.SHIFT_MASK),
	"postMenuAction");
	map.put(KeyStroke.getKeyStroke(KeyEvent.VK_CONTEXT_MENU, 0), "postMenuAction");
	getActionMap().put("postMenuAction", new ActivatePopupMenuAction(this, popup));

	return popup;
}
 
源代码29 项目: binnavi   文件: CGraphSearchField.java
/**
 * Registers all hotkeys processed by the graph search field.
 */
private void registerHotkeys() {
  final ActionMap actionMap = ((JTextField) getEditor().getEditorComponent()).getActionMap();
  final InputMap imap = ((JTextField) getEditor().getEditorComponent()).getInputMap();
  setActionMap(actionMap);
  setInputMap(JComponent.WHEN_FOCUSED, imap);

  imap.put(HotKeys.GRAPH_SEARCH_NEXT_KEY.getKeyStroke(), "NEXT");
  imap.put(HotKeys.GRAPH_SEARCH_NEXT_ZOOM_KEY.getKeyStroke(), "NEXT_ZOOM");
  imap.put(HotKeys.GRAPH_SEARCH_PREVIOUS_KEY.getKeyStroke(), "PREVIOUS");
  imap.put(HotKeys.GRAPH_SEARCH_PREVIOUS_ZOOM_KEY.getKeyStroke(), "PREVIOUS_ZOOM");

  actionMap.put("NEXT", CActionProxy.proxy(new CActionHotKey("NEXT")));
  actionMap.put("NEXT_ZOOM", CActionProxy.proxy(new CActionHotKey("NEXT_ZOOM")));
  actionMap.put("PREVIOUS", CActionProxy.proxy(new CActionHotKey("PREVIOUS")));
  actionMap.put("PREVIOUS_ZOOM", CActionProxy.proxy(new CActionHotKey("PREVIOUS_ZOOM")));
}
 
源代码30 项目: netbeans   文件: PageFlowScene.java
private WidgetAction createActionMapAction(Page page) {
    InputMap inputMap = new InputMap();
    ActionMap actionMap = new ActionMap();
    Action[] actions = page.getActions(true);
    for (Action action : actions) {
        KeyStroke keyStroke = (KeyStroke) action.getValue(javax.swing.Action.ACCELERATOR_KEY);
        if (keyStroke != null) {
            inputMap.put(keyStroke, action.toString());
            actionMap.put(action.toString(), action);
        }
    }
    if (actionMap.size() < 1) {
        return null;
    }
    /* Not sure if it is the right thing to create a new action map
     * should I be adding it?
     */
    return new MyActionMapAction(inputMap, actionMap);


    //return  ActionFactory.createActionMapAction(inputMap, actionMap);
}
 
 类所在包
 同包方法