Commit e259696e authored by techird's avatar techird

滚轮缩放功能修正

parent e57b5a03
...@@ -113,6 +113,7 @@ KityMinder.registerModule( 'Hand', function () { ...@@ -113,6 +113,7 @@ KityMinder.registerModule( 'Hand', function () {
mousewheel: function ( e ) { mousewheel: function ( e ) {
var dx, dy; var dx, dy;
e = e.originEvent; e = e.originEvent;
if(e.ctrlKey || e.shiftKey) return;
if ( 'wheelDeltaX' in e ) { if ( 'wheelDeltaX' in e ) {
......
...@@ -28,31 +28,31 @@ KityMinder.registerModule( 'Zoom', function () { ...@@ -28,31 +28,31 @@ KityMinder.registerModule( 'Zoom', function () {
} }
} ); } );
animator.start( paper, 100, 'ease' ); animator.start( paper, 500, 'ease' );
minder._zoomValue = zoomValue *= rate; minder._zoomValue = zoomValue *= rate;
} }
var ZoomInCommand = kity.createClass( 'ZoomInCommand', { var ZoomInCommand = kity.createClass( 'ZoomInCommand', {
base: Command, base: Command,
execute: function ( minder ) { execute: function ( minder ) {
if( !this.queryState( minder ) ) { if ( !this.queryState( minder ) ) {
zoom( minder, 1 / ZOOM_STEP ); zoom( minder, 1 / ZOOM_STEP );
} }
}, },
queryState: function ( minder ) { queryState: function ( minder ) {
return (minder._zoomValue > 1 / MAX_ZOOM) ? 0 : -1; return ( minder._zoomValue > 1 / MAX_ZOOM ) ? 0 : -1;
} }
} ); } );
var ZoomOutCommand = kity.createClass( 'ZoomOutCommand', { var ZoomOutCommand = kity.createClass( 'ZoomOutCommand', {
base: Command, base: Command,
execute: function ( minder ) { execute: function ( minder ) {
if( !this.queryState( minder ) ) { if ( !this.queryState( minder ) ) {
zoom( minder, ZOOM_STEP ); zoom( minder, ZOOM_STEP );
} }
}, },
queryState: function ( minder ) { queryState: function ( minder ) {
return (minder._zoomValue < 1 / MIN_ZOOM) ? 0 : -1; return ( minder._zoomValue < 1 / MIN_ZOOM ) ? 0 : -1;
} }
} ); } );
...@@ -64,26 +64,30 @@ KityMinder.registerModule( 'Zoom', function () { ...@@ -64,26 +64,30 @@ KityMinder.registerModule( 'Zoom', function () {
events: { events: {
'normal.keydown':function(e){ 'normal.keydown': function ( e ) {
var me = this; var me = this;
var originEvent = e.originEvent; var originEvent = e.originEvent;
var keyCode = originEvent.keyCode || originEvent.which; var keyCode = originEvent.keyCode || originEvent.which;
if(keymap['='] == keyCode){ if ( keymap[ '=' ] == keyCode ) {
me.execCommand('zoom-in'); me.execCommand( 'zoom-in' );
} }
if(keymap['-'] == keyCode){ if ( keymap[ '-' ] == keyCode ) {
me.execCommand('zoom-out'); me.execCommand( 'zoom-out' );
} }
}, },
'ready': function () { 'ready': function () {
this._zoomValue = 1; this._zoomValue = 1;
}, },
// disable mouse wheel 'normal.mousewheel': function ( e ) {
'mousewheel_': function ( e ) { if ( !e.originEvent.ctrlKey ) return;
var delta = e.originEvent.wheelDelta; var delta = e.originEvent.wheelDelta;
var me = this; var me = this;
if ( !kity.Browser.mac ) {
delta = -delta;
}
// 稀释 // 稀释
if ( Math.abs( delta ) > 100 ) { if ( Math.abs( delta ) > 100 ) {
clearTimeout( this._wheelZoomTimeout ); clearTimeout( this._wheelZoomTimeout );
...@@ -95,9 +99,9 @@ KityMinder.registerModule( 'Zoom', function () { ...@@ -95,9 +99,9 @@ KityMinder.registerModule( 'Zoom', function () {
var value; var value;
var lastValue = me.getPaper()._zoom || 1; var lastValue = me.getPaper()._zoom || 1;
if ( delta < 0 ) { if ( delta < 0 ) {
me.execCommand('zoom-in'); me.execCommand( 'zoom-in' );
} else if ( delta > 0 ) { } else if ( delta > 0 ) {
me.execCommand('zoom-out'); me.execCommand( 'zoom-out' );
} }
}, 100 ); }, 100 );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment