@eclipse-scout/core
Version:
Eclipse Scout runtime
57 lines • 2.79 kB
TypeScript
/// <reference types="jquery" />
import { EventEmitter, InitModelOf, Key, KeyStroke, KeyStrokeContext, KeyStrokeManagerEventMap, KeyStrokeModel, ObjectModel, Session, SomeRequired } from '../index';
export declare class KeyStrokeManager extends EventEmitter implements KeyStrokeManagerModel {
model: KeyStrokeManagerModel;
initModel: SomeRequired<this['model'], 'session'>;
eventMap: KeyStrokeManagerEventMap;
self: KeyStrokeManager;
session: Session;
helpKeyStroke: KeyStrokeModel;
swallowF1: boolean;
filters: ({
filter(keyStroke: KeyStroke): boolean;
})[];
protected _helpRendered: boolean;
protected _renderedKeys: Key[];
constructor();
init(model: InitModelOf<this>): void;
installTopLevelKeyStrokeHandlers($container: JQuery): void;
/**
* Installs the given keystroke context. This method has no effect if the context is null, or already installed.
*/
installKeyStrokeContext(keyStrokeContext: KeyStrokeContext): void;
/**
* Uninstalls the given keystroke context. This method has no effect if the context is null, or not installed.
*/
uninstallKeyStrokeContext(keyStrokeContext: KeyStrokeContext): void;
/**
* Visualizes the keys supported by the given keyStrokeContext.
*/
protected _renderKeys(keyStrokeContext: KeyStrokeContext, event: KeyboardEventWithMetaData): void;
protected _isPreventedByDescendantContext(key: Key, event: KeyboardEventWithMetaData, descendantContexts: KeyStrokeContext[]): boolean;
/**
* Handles the keystroke event by the keyStrokeContext's keystroke handlers, but returns immediately once a keystroke requests immediate stop of propagation.
*/
protected _handleKeyStrokeEvent(keyStrokeContext: KeyStrokeContext, event: JQuery.KeyboardEventBase): void;
protected _filter(keyStroke: KeyStroke): boolean;
invokeAcceptInputOnActiveValueField(keyStroke: KeyStroke, keyStrokeContext: KeyStrokeContext): boolean;
protected _isHelpKeyStroke(event: JQuery.KeyboardEventBase): boolean;
protected _installHelpDisposeListener(event: JQuery.KeyboardEventBase): boolean;
protected _onKeyEvent(keyStrokeContext: KeyStrokeContext, event: KeyboardEventWithMetaData): boolean;
addFilter(filter: {
filter(keyStroke: KeyStroke): boolean;
}): void;
removeFilter(filter: {
filter(keyStroke: KeyStroke): boolean;
}): void;
}
export interface KeyStrokeManagerModel extends ObjectModel<KeyStrokeManager> {
session?: Session;
}
export interface KeyboardEventWithMetaData extends JQuery.KeyboardEventBase {
originalEvent?: KeyboardEvent & {
renderingHelp?: boolean;
keyStrokeContexts?: KeyStrokeContext[];
};
}
//# sourceMappingURL=KeyStrokeManager.d.ts.map