All Downloads are FREE. Search and download functionalities are using the official Maven repository.

java.awt.KeyEventPostProcessor Maven / Gradle / Ivy

/*

NOTICE


(c) 2005-2007 Sun Microsystems, Inc. All Rights Reserved.

Neither this file nor any files generated from it describe a complete specification, and they may only be used as described below. For example, no permission is given for you to incorporate this file, in whole or in part, in an implementation of a Java specification.

Sun Microsystems Inc. owns the copyright in this file and it is provided to you for informative, as opposed to normative, use. The file and any files generated from it may be used to generate other informative documentation, such as a unified set of documents of API signatures for a platform that includes technologies expressed as Java APIs. The file may also be used to produce "compilation stubs," which allow applications to be compiled and validated for such platforms.

Any work generated from this file, such as unified javadocs or compiled stub files, must be accompanied by this notice in its entirety.

This work corresponds to the API signatures of JSR 217: Personal Basis Profile 1.1. In the event of a discrepency between this work and the JSR 217 specification, which is available at http://www.jcp.org/en/jsr/detail?id=217, the latter takes precedence. */ package java.awt; import java.awt.event.KeyEvent; /** * A KeyEventPostProcessor cooperates with the current KeyboardFocusManager * in the final resolution of all unconsumed KeyEvents. KeyEventPostProcessors * registered with the current KeyboardFocusManager will receive KeyEvents * after the KeyEvents have been dispatched to and handled by their targets. * KeyEvents that would have been otherwise discarded because no Component in * the application currently owns the focus will also be forwarded to * registered KeyEventPostProcessors. This will allow applications to implement * features that require global KeyEvent post-handling, such as menu shortcuts. *

* Note that the KeyboardFocusManager itself implements KeyEventPostProcessor. * By default, the current KeyboardFocusManager will be the final * KeyEventPostProcessor in the chain. The current KeyboardFocusManager cannot * be completely deregistered as a KeyEventPostProcessor. However, if a * KeyEventPostProcessor reports that no further post-processing of the * KeyEvent should take place, the AWT will consider the event fully handled * and will take no additional action with regard to the event. (While it is * possible for client code to register the current KeyboardFocusManager as * a KeyEventPostProcessor one or more times, this is usually unnecessary and * not recommended.) * * @author David Mendenhall * @version 1.4, 01/23/03 * * @see KeyboardFocusManager#addKeyEventPostProcessor * @see KeyboardFocusManager#removeKeyEventPostProcessor * @since 1.4 */ public interface KeyEventPostProcessor { /** * This method is called by the current KeyboardFocusManager, requesting * that this KeyEventPostProcessor perform any necessary post-processing * which should be part of the KeyEvent's final resolution. At the time * this method is invoked, typically the KeyEvent has already been * dispatched to and handled by its target. However, if no Component in * the application currently owns the focus, then the KeyEvent has not * been dispatched to any Component. Typically, KeyEvent post-processing * will be used to implement features which require global KeyEvent * post-handling, such as menu shortcuts. Note that if a * KeyEventPostProcessor wishes to dispatch the KeyEvent, it must use * redispatchEvent to prevent the AWT from recursively * requesting that this KeyEventPostProcessor perform post-processing * of the event again. *

* If an implementation of this method returns false, then the * KeyEvent is passed to the next KeyEventPostProcessor in the chain, * ending with the current KeyboardFocusManager. If an implementation * returns true, the KeyEvent is assumed to have been fully * handled (although this need not be the case), and the AWT will take no * further action with regard to the KeyEvent. If an implementation * consumes the KeyEvent but returns false, the consumed * event will still be passed to the next KeyEventPostProcessor in the * chain. It is important for developers to check whether the KeyEvent has * been consumed before performing any post-processing of the KeyEvent. By * default, the current KeyboardFocusManager will perform no post- * processing in response to a consumed KeyEvent. * * @param e the KeyEvent to post-process * @return true if the AWT should take no further action with * regard to the KeyEvent; false otherwise * @see KeyboardFocusManager#redispatchEvent */ public boolean postProcessKeyEvent(KeyEvent e); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy