UNPKG

gibbon.js

Version:

Actor/Component system for use with pixi.js.

61 lines (56 loc) 1.8 kB
class WheelController { /** * Stored value of wheel scrolling function when wheel is enabled. */ wheelFunc; wheelEnabled = false; /** * wheelScale - Amount by which to scroll wheel input. */ wheelScale = 1; /** * Enable mouse wheel events. */ enableWheel(app) { if (this.wheelEnabled === true) return; const mgr = app.renderer.plugins.interaction; this.wheelEnabled = true; // store to remove later. this.wheelFunc = (e) => { //const evt = new InteractionEvent(); //const data = new InteractionData(); //data.originalEvent = e; /// TODO: PIXI has changed implementation for this: //data.deltaY = e.deltaY * this.wheelScale; //data.deltaX = e.deltaX * this.wheelScale; /*data.originalEvent = e; Object.assign(data, mgr.eventData); let target = evt.target = data.target; evt.data = data; evt.type = 'wheel'; while (target) { if (target.interactive === true) { evt.currentTarget = target; target.emit('wheel', evt); } target = target.parent; }*/ }; //app.view.addEventListener('wheel', this.wheelFunc); } /** * Disable wheel events. */ disableWheel(app) { if (this.wheelEnabled === true) { /*if (this.wheelFunc) { app.view.removeEventListener('wheel', this.wheelFunc); }*/ this.wheelFunc = undefined; this.wheelEnabled = false; } } } export const WheelControl = new WheelController(); //# sourceMappingURL=mouse-wheel.js.map