cursor-style-manager-wle
Version:
Shared cursor styles for Wonderland Engine
77 lines (76 loc) • 2.37 kB
TypeScript
import { Type } from '@wonderlandengine/api';
import { CSMComponent } from './CSMComponent.js';
/**
* Similar to the official mouse-look component, but with cursor-style-manager
* support.
*/
export declare class CSMMouseLookComponent extends CSMComponent {
static TypeName: string;
static Properties: {
/** Mouse look sensitivity */
sensitivity: {
type: Type;
default: number;
};
/** Require a mouse button to be pressed to control view.
* Otherwise view will allways follow mouse movement */
requireMouseDown: {
type: Type;
default: boolean;
};
/** If "moveOnClick" is enabled, mouse button which should
* be held down to control view */
mouseButtonIndex: {
type: Type;
};
/** Enables pointer lock on "mousedown" event on canvas */
pointerLockOnClick: {
type: Type;
default: boolean;
};
/** Should pointer events be listened to instead of mouse events? */
listenToPointerInsteadOfMouse: {
type: Type;
default: boolean;
};
/**
* Should an improved drag algorithm be used, which can be combined with
* other camera rotating methods?
*/
statelessDrag: {
type: Type;
default: boolean;
};
/** Should an improved method of getting mouse movement be used? */
betterPointerMovement: {
type: Type;
default: boolean;
};
cursorStyleManagerObject: {
type: Type;
};
cursorStyleManagerName: {
type: Type;
default: string;
};
};
sensitivity: number;
requireMouseDown: number;
mouseButtonIndex: number;
pointerLockOnClick: number;
listenToPointerInsteadOfMouse: boolean;
statelessDrag: boolean;
betterPointerMovement: boolean;
currentRotationX: number;
currentRotationY: number;
mouseDown: boolean;
lastCursorX: number;
lastCursorY: number;
lastPointerId: number;
init(): void;
protected updateLastCursorPos(e: MouseEvent): void;
protected isActivePointer(e: PointerEvent | MouseEvent): boolean;
start(): void;
onDeactivate(): void;
private mouseUp;
}