quoslibero
Version:
FusionCharts JavaScript charting framework
1 lines • 1.07 kB
JavaScript
import Base from'./input-base';class ZoomIn extends Base{constructor(){super();let a=this;a._toggle=function(){a.isEnabled()&&a.zoom()}}getName(){return'zoomInButton'}configure(){super.configure();var a=this,b=a.config;b.stepZoom=b.stepZoom||5.33,b.skipGraphics||a.setLinkedItem('button',a.createButton({icon:'zoomInIcon',handlers:{click:a._toggle},tooltext:a.config.tooltext,state:'activated'})),a.enable()}zoom(){var a,b,c,d,e,f,g,h,i,j=this,k={},l=j.config,m=l.hookFn,n=!1,o=Math.pow(10,l.zoomDecimalLimit)||1;j.getFromEnv('animationManager').setAnimationState('zoom'),j.getFromEnv('axesObArr').forEach(function(p){c=p.axis,a=c.getVisibleConfig(),b=Math.round((a.maxValue-a.minValue)/l.stepZoom*o)/o,b>Number.EPSILON&&(p.stack.push(a),p.isY?(f=a.minValue+b,g=a.maxValue-b):(d=a.minValue+b,e=a.maxValue-b,k=j.constructor._getZoomInfo(d,e,c)),h=p.stack.length+1,m&&m(a.minValue,a.maxValue),i=c.setVisibleConfig(a.minValue+b,a.maxValue-b),n=n||i)}),n&&j._raiseZoomEvents('zoomin','zoomedin',Object.assign(k,{level:h,startX:d,endX:e,startY:f,endY:g}))}}export default ZoomIn;