|
@@ -23,6 +23,9 @@
|
|
|
|
|
|
THREE.OrbitControls = function ( object, domElement ) {
|
|
|
|
|
|
+ // MouseEvent.button codes per https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent.button
|
|
|
+ var MOUSEBUTTONS = { LEFT: 0, WHEEL: 1, RIGHT: 2 };
|
|
|
+
|
|
|
this.object = object;
|
|
|
this.domElement = ( domElement !== undefined ) ? domElement : document;
|
|
|
|
|
@@ -70,6 +73,9 @@ THREE.OrbitControls = function ( object, domElement ) {
|
|
|
// The four arrow keys
|
|
|
this.keys = { LEFT: 37, UP: 38, RIGHT: 39, BOTTOM: 40 };
|
|
|
|
|
|
+ // Mouse buttons
|
|
|
+ this.mouseButtons = { ORBIT: MOUSEBUTTONS.LEFT, ZOOM: MOUSEBUTTONS.WHEEL, PAN: MOUSEBUTTONS.RIGHT };
|
|
|
+
|
|
|
////////////
|
|
|
// internals
|
|
|
|
|
@@ -330,21 +336,21 @@ THREE.OrbitControls = function ( object, domElement ) {
|
|
|
if ( scope.enabled === false ) return;
|
|
|
event.preventDefault();
|
|
|
|
|
|
- if ( event.button === 0 ) {
|
|
|
+ if ( event.button === scope.mouseButtons.ORBIT ) {
|
|
|
if ( scope.noRotate === true ) return;
|
|
|
|
|
|
state = STATE.ROTATE;
|
|
|
|
|
|
rotateStart.set( event.clientX, event.clientY );
|
|
|
|
|
|
- } else if ( event.button === 1 ) {
|
|
|
+ } else if ( event.button === scope.mouseButtons.ZOOM ) {
|
|
|
if ( scope.noZoom === true ) return;
|
|
|
|
|
|
state = STATE.DOLLY;
|
|
|
|
|
|
dollyStart.set( event.clientX, event.clientY );
|
|
|
|
|
|
- } else if ( event.button === 2 ) {
|
|
|
+ } else if ( event.button === scope.mouseButtons.PAN ) {
|
|
|
if ( scope.noPan === true ) return;
|
|
|
|
|
|
state = STATE.PAN;
|