UNPKG

pencil.js

Version:

Nice modular interactive 2D drawing library.

158 lines (157 loc) 4.19 kB
/** * @module KeyboardEvent */ /** * Keyboard event class * @class * @extends {module:BaseEvent} */ export default class KeyboardEvent { /** * @typedef {Object} KeyboardEvents * @prop {String} down - Keyboard key pressed * @prop {String} up - Keyboard key released */ /** * Set of supported event name for easy access * @example component.on(KeyboardEvent.events.up, () => console.log("User release a key")); * @type {KeyboardEvents} */ static get events(): { /** * - Keyboard key pressed */ down: string; /** * - Keyboard key released */ up: string; }; /** * @typedef {Object} ArrowKeys * @prop {String} up - Up arrow * @prop {String} right - Right arrow * @prop {String} down - Down arrow * @prop {String} left - Left arrow */ /** * @typedef {Object} KeyboardKeys * @prop {String} backspace - Remove last character or return previous screen * @prop {String} enter - Add line-break or validate entry * @prop {String} delete - Remove character in front * @prop {String} escape - Cancel or leave screen * @prop {String} control - Modifying key (control) * @prop {String} shift - Modifying key (uppercase) * @prop {String} fn - Modifying key (function) * @prop {ArrowKeys} * @prop {String} tab - Next input or toggle focus * @prop {String} alt - Modifying key (alternative) * @prop {String} altGr - Modifying key (alternative grapheme) * @prop {String} pageUp - Move up one page * @prop {String} pageDown - Move down one page * @prop {String} start - Go to start * @prop {String} end - Go to end * @prop {String} insert - Insert here or toggle insert mode */ /** * Set of keys for easy access * @example if (key === KeyboardEvent.keys.enter) { * console.log("This is the enter key"); * } * @type {KeyboardKeys} */ static get keys(): { /** * - Remove last character or return previous screen */ backspace: string; /** * - Add line-break or validate entry */ enter: string; /** * - Remove character in front */ delete: string; /** * - Cancel or leave screen */ escape: string; /** * - Modifying key (control) */ control: string; /** * - Modifying key (uppercase) */ shift: string; /** * - Modifying key (function) */ fn: string; "": { /** * - Up arrow */ up: string; /** * - Right arrow */ right: string; /** * - Down arrow */ down: string; /** * - Left arrow */ left: string; }; /** * - Next input or toggle focus */ tab: string; /** * - Modifying key (alternative) */ alt: string; /** * - Modifying key (alternative grapheme) */ altGr: string; /** * - Move up one page */ pageUp: string; /** * - Move down one page */ pageDown: string; /** * - Go to start */ start: string; /** * - Go to end */ end: string; /** * - Insert here or toggle insert mode */ insert: string; }; /** * MouseEvent constructor * @param {String} name - Name of the event * @param {EventEmitter} target - Component concerned by the event * @param {UIEvent} [event] - Original HTML event * For the complete list of key values: * https://developer.mozilla.org/en/docs/Web/API/KeyboardEvent/key/Key_Values */ constructor(name: string, target: EventEmitter, event?: UIEvent); key: any; /** * @inheritDoc */ getModifier(): any; }