UNPKG

@quartic/bokehjs

Version:

Interactive, novel data visualization

74 lines (54 loc) 1.96 kB
var extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; }, hasProp = {}.hasOwnProperty; import { ActionTool, ActionToolView } from "./action_tool"; import { scale_range } from "core/util/zoom"; import { logger } from "core/logging"; import * as p from "core/properties"; export var ZoomInToolView = (function(superClass) { extend(ZoomInToolView, superClass); function ZoomInToolView() { return ZoomInToolView.__super__.constructor.apply(this, arguments); } ZoomInToolView.prototype["do"] = function() { var dims, frame, h_axis, v_axis, zoom_info; frame = this.plot_model.frame; dims = this.model.dimensions; h_axis = dims === 'width' || dims === 'both'; v_axis = dims === 'height' || dims === 'both'; zoom_info = scale_range(frame, this.model.factor, h_axis, v_axis); this.plot_view.push_state('zoom_out', { range: zoom_info }); this.plot_view.update_range(zoom_info, false, true); this.plot_view.interactive_timestamp = Date.now(); return null; }; return ZoomInToolView; })(ActionToolView); export var ZoomInTool = (function(superClass) { extend(ZoomInTool, superClass); function ZoomInTool() { return ZoomInTool.__super__.constructor.apply(this, arguments); } ZoomInTool.prototype.default_view = ZoomInToolView; ZoomInTool.prototype.type = "ZoomInTool"; ZoomInTool.prototype.tool_name = "Zoom In"; ZoomInTool.prototype.icon = "bk-tool-icon-zoom-in"; ZoomInTool.getters({ tooltip: function() { return this._get_dim_tooltip(this.tool_name, this.dimensions); } }); ZoomInTool.define({ factor: [p.Percent, 0.1], dimensions: [p.Dimensions, "both"] }); return ZoomInTool; })(ActionTool);