Commit e259696e authored by techird's avatar techird

滚轮缩放功能修正

parent e57b5a03
......@@ -113,6 +113,7 @@ KityMinder.registerModule( 'Hand', function () {
mousewheel: function ( e ) {
var dx, dy;
e = e.originEvent;
if(e.ctrlKey || e.shiftKey) return;
if ( 'wheelDeltaX' in e ) {
......
......@@ -28,31 +28,31 @@ KityMinder.registerModule( 'Zoom', function () {
}
} );
animator.start( paper, 100, 'ease' );
animator.start( paper, 500, 'ease' );
minder._zoomValue = zoomValue *= rate;
}
var ZoomInCommand = kity.createClass( 'ZoomInCommand', {
base: Command,
execute: function ( minder ) {
if( !this.queryState( minder ) ) {
if ( !this.queryState( minder ) ) {
zoom( minder, 1 / ZOOM_STEP );
}
},
queryState: function ( minder ) {
return (minder._zoomValue > 1 / MAX_ZOOM) ? 0 : -1;
return ( minder._zoomValue > 1 / MAX_ZOOM ) ? 0 : -1;
}
} );
var ZoomOutCommand = kity.createClass( 'ZoomOutCommand', {
base: Command,
execute: function ( minder ) {
if( !this.queryState( minder ) ) {
if ( !this.queryState( minder ) ) {
zoom( minder, ZOOM_STEP );
}
},
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 () {
events: {
'normal.keydown':function(e){
var me = this;
var originEvent = e.originEvent;
var keyCode = originEvent.keyCode || originEvent.which;
if(keymap['='] == keyCode){
me.execCommand('zoom-in');
}
if(keymap['-'] == keyCode){
me.execCommand('zoom-out');
'normal.keydown': function ( e ) {
var me = this;
var originEvent = e.originEvent;
var keyCode = originEvent.keyCode || originEvent.which;
if ( keymap[ '=' ] == keyCode ) {
me.execCommand( 'zoom-in' );
}
if ( keymap[ '-' ] == keyCode ) {
me.execCommand( 'zoom-out' );
}
},
}
},
'ready': function () {
this._zoomValue = 1;
},
// disable mouse wheel
'mousewheel_': function ( e ) {
'normal.mousewheel': function ( e ) {
if ( !e.originEvent.ctrlKey ) return;
var delta = e.originEvent.wheelDelta;
var me = this;
if ( !kity.Browser.mac ) {
delta = -delta;
}
// 稀释
if ( Math.abs( delta ) > 100 ) {
clearTimeout( this._wheelZoomTimeout );
......@@ -95,9 +99,9 @@ KityMinder.registerModule( 'Zoom', function () {
var value;
var lastValue = me.getPaper()._zoom || 1;
if ( delta < 0 ) {
me.execCommand('zoom-in');
me.execCommand( 'zoom-in' );
} else if ( delta > 0 ) {
me.execCommand('zoom-out');
me.execCommand( 'zoom-out' );
}
}, 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