UNPKG

@xeokit/xeokit-sdk

Version:

3D BIM IFC Viewer SDK for AEC engineering applications. Open Source JavaScript Toolkit based on pure WebGL for top performance, real-world coordinates and full double precision

165 lines (154 loc) 3.77 kB
import { Component } from "../Component"; /** * @desc Meditates mouse, touch and keyboard events for various interaction controls. * * Ordinarily, you would only use this component as a utility to help manage input events and state for your * own custom input handlers. * * * Located at {@link Scene#input} */ export declare class Input extends Component { KEY_BACKSPACE: number; KEY_TAB: number; KEY_ENTER: number; KEY_SHIFT: number; KEY_CTRL: number; KEY_ALT: number; KEY_PAUSE_BREAK: number; KEY_CAPS_LOCK: number; KEY_ESCAPE: number; KEY_PAGE_UP: number; KEY_PAGE_DOWN: number; KEY_END: number; KEY_HOME: number; KEY_LEFT_ARROW: number; KEY_UP_ARROW: number; KEY_RIGHT_ARROW: number; KEY_DOWN_ARROW: number; KEY_INSERT: number; KEY_DELETE: number; KEY_NUM_0: number; KEY_NUM_1: number; KEY_NUM_2: number; KEY_NUM_3: number; KEY_NUM_4: number; KEY_NUM_5: number; KEY_NUM_6: number; KEY_NUM_7: number; KEY_NUM_8: number; KEY_NUM_9: number; KEY_A: number; KEY_B: number; KEY_C: number; KEY_D: number; KEY_E: number; KEY_F: number; KEY_G: number; KEY_H: number; KEY_I: number; KEY_J: number; KEY_K: number; KEY_L: number; KEY_M: number; KEY_N: number; KEY_O: number; KEY_P: number; KEY_Q: number; KEY_R: number; KEY_S: number; KEY_T: number; KEY_U: number; KEY_V: number; KEY_W: number; KEY_X: number; KEY_Y: number; KEY_Z: number; KEY_LEFT_WINDOW: number; KEY_RIGHT_WINDOW: number; KEY_SELECT_KEY: number; KEY_NUMPAD_0: number; KEY_NUMPAD_1: number; KEY_NUMPAD_2: number; KEY_NUMPAD_3: number; KEY_NUMPAD_4: number; KEY_NUMPAD_5: number; KEY_NUMPAD_6: number; KEY_NUMPAD_7: number; KEY_NUMPAD_8: number; KEY_NUMPAD_9: number; KEY_MULTIPLY: number; KEY_ADD: number; KEY_SUBTRACT: number; KEY_DECIMAL_POINT: number; KEY_DIVIDE: number; KEY_F1: number; KEY_F2: number; KEY_F3: number; KEY_F4: number; KEY_F5: number; KEY_F6: number; KEY_F7: number; KEY_F8: number; KEY_F9: number; KEY_F10: number; KEY_F11: number; KEY_F12: number; KEY_NUM_LOCK: number; KEY_SCROLL_LOCK: number; KEY_SEMI_COLON: number; KEY_EQUAL_SIGN: number; KEY_COMMA: number; KEY_DASH: number; KEY_PERIOD: number; KEY_FORWARD_SLASH: number; KEY_GRAVE_ACCENT: number; KEY_OPEN_BRACKET: number; KEY_BACK_SLASH: number; KEY_CLOSE_BRACKET: number; KEY_SINGLE_QUOTE: number; KEY_SPACE: number; MOUSE_LEFT_BUTTON: number; MOUSE_MIDDLE_BUTTON: number; MOUSE_RIGHT_BUTTON: number; element: HTMLCanvasElement; altDown: boolean; ctrlDown: boolean; mouseDownLeft: boolean; mouseDownMiddle: boolean; mouseDownRight: boolean; keyDown: boolean[]; enabled: boolean; keyboardEnabled: boolean; mouseover: boolean; mouseCanvasPos: number[]; /** * Sets whether input handlers are enabled. */ setEnabled(enable: boolean): void; /** * Gets whether input handlers are enabled. */ getEnabled(): boolean /** * Sets whether or not keyboard input is enabled. */ setKeyboardEnabled(enable: boolean): void; /** * Gets whether keyboard input is enabled. */ getKeyboardEnabled(): boolean; /** * Fires on mouse events * @param event The loaded event * @param callback Called fired on the event * @param scope Scope for the callback */ on(event: "mousedown" | "mouseup" | "mouseclicked" | "dblclick", callback: (canvasCoords: number[]) => void, scope?: any): string; /** * Fires on keyboard events * @param event The loaded event * @param callback Called fired on the event * @param scope Scope for the callback */ on(event: "keydown" | "keyup", callback: (keyCode: number) => void, scope?: any): string; }