@fusioncharts/features
Version:
FusionCharts JavaScript charting framework
1 lines • 1.98 kB
JavaScript
;var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule=true;exports.default=void 0;var _inheritsLoose2=_interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));var _zoomReset2=_interopRequireDefault(require("./zoom-reset"));var ZoomOut=function(_zoomReset){function ZoomOut(){var _this;_this=_zoomReset.call(this)||this;var input=_this;input._toggle=function(){input.isEnabled()&&input.zoomOut()};return _this}(0,_inheritsLoose2.default)(ZoomOut,_zoomReset);var _proto=ZoomOut.prototype;_proto.getName=function getName(){return"zoomOutButton"};_proto.configureButton=function configureButton(){var input=this;!input.config.skipGraphics&&input.setLinkedItem("button",input.createButton({icon:"zoomOutIcon",handlers:{click:input._toggle},tooltext:input.config.tooltext,state:"activated"}))};_proto.zoomOut=function zoomOut(){var input=this,chart,scrollBar,visiblerange,hookFn=input.config.hookFn,eventArgs={},level,startX,endX,startY,endY,stackLen=0;input.getFromEnv("axesObArr").forEach((function(axisOb){chart=input.getFromEnv("chart");scrollBar=chart.getChildren("scrollBar")&&chart.getChildren("scrollBar")[0];visiblerange=axisOb.stack.pop();level=axisOb.stack.length;stackLen+=level;if(!visiblerange){return}if(axisOb.isY){startY=visiblerange.minValue;endY=visiblerange.maxValue}else{startX=visiblerange.minValue;endX=visiblerange.maxValue;eventArgs=input.constructor._getZoomInfo(startX,endX,axisOb.axis)}hookFn&&hookFn(visiblerange.minValue,visiblerange.maxValue);axisOb.axis.setVisibleConfig(visiblerange.minValue,visiblerange.maxValue);chart.setScrollBarDimension&&chart.setScrollBarDimension();scrollBar&&!scrollBar.getState("removed")&&scrollBar.asyncDraw()}));input._raiseZoomEvents("zoomout","zoomedout",Object.assign(eventArgs,{level:level,startX:startX,endX:endX,startY:startY,endY:endY}));if(!stackLen){this.disable()}};return ZoomOut}(_zoomReset2.default);var _default=exports.default=ZoomOut;