UNPKG

@awayjs/scene

Version:
75 lines 2.79 kB
import { Stage } from '@awayjs/stage'; import { PickingCollision, RaycastPicker, INode } from '@awayjs/view'; import { PointerEvent } from '../events/PointerEvent'; import { IInputRecorder } from './IInputRecorder'; /** * MouseManager enforces a singleton pattern and is not intended to be instanced. * it provides a manager class for detecting mouse hits on scene objects and sending out mouse events. */ export declare class MouseManager { private static _instance; static inputRecorder: IInputRecorder; private _stage; private static _instancePool; private _pickerLookup; private _pointerDataArray; private _updateDirty; private _focusNode; allowKeyInput: boolean; private _eventBubbling; private _allowFocusOnUnfocusable; private _showCursor; private _cursorType; private _nullVector; private static _touchToMouseDict; static _pointerDict: Record<string, PointerEvent>; private _dragOut; private _dragOver; private _dragMove; private _dragStart; private _dragStop; private _focusIn; private _focusOut; private _useSoftkeyboard; private _isAVM1Dragging; startDragObject(collision?: PickingCollision, isAVM1Dragging?: boolean): void; stopDragObject(): void; get showCursor(): boolean; set showCursor(value: boolean); set cursorType(t: 'pointer' | 'auto'); get cursorType(): 'pointer' | 'auto'; get eventBubbling(): boolean; set eventBubbling(value: boolean); /** * Creates a new <code>MouseManager</code> object. */ constructor(stage: Stage); set useSoftkeyboard(value: boolean); get useSoftkeyboard(): boolean; dispose(): void; static clearInstance(stage: Stage): void; static getInstance(stage: Stage): MouseManager; setFocus(node: INode): void; getFocus(): INode; private dispatchEvent; private setupAndDispatchEvent; fireMouseEvents(forcePicker?: RaycastPicker): void; private _fireMouseEventsInternal; registerPicker(picker: RaycastPicker): void; unregisterPicker(picker: RaycastPicker): void; addEventsForSceneBinary(touchMessage: ArrayBuffer, sceneIdx?: number): void; fireEventsForSceneFromString(touchMessage: String, _sceneIdx?: number): void; private setUpEvent; private queueDispatch; onKeyDown(event: any): void; onKeyUp(event: any): void; onMouseMove(event: MouseEvent | TouchEvent): void; onMouseOut(event: MouseEvent): void; onMouseOver(event: MouseEvent): void; onDoubleClick(event: MouseEvent): void; onMouseDown(event: MouseEvent | TouchEvent): void; onMouseUp(event: MouseEvent | TouchEvent): void; onMouseWheel(event: WheelEvent): void; private updateColliders; } //# sourceMappingURL=MouseManager.d.ts.map