UNPKG

devextreme

Version:

HTML5 JavaScript Component Suite for Responsive Web Development

52 lines (44 loc) 1.56 kB
"use strict"; var proto = require("./tree_map.base").prototype, Tracker = require("../components/tracker").Tracker, expand = require("../core/helpers").expand, _parseScalar = require("../core/utils").parseScalar, DATA_KEY_BASE = "__treemap_data_", dataKeyModifier = 0; require("./api"); require("./hover"); require("./tooltip"); proto._eventsMap.onClick = { name: "click" }; expand(proto, "_initCore", function () { var that = this, dataKey = DATA_KEY_BASE + dataKeyModifier++, getProxy = function getProxy(index) { return that._nodes[index].proxy; }; that._tracker = new Tracker({ widget: that, root: that._renderer.root, getNode: function getNode(id) { var proxy = getProxy(id), interactWithGroup = _parseScalar(that._getOption("interactWithGroup", true)); return interactWithGroup && proxy.isLeaf() && proxy.getParent().isActive() ? proxy.getParent() : proxy; }, getData: function getData(e) { var target = e.target; return (target.tagName === "tspan" ? target.parentNode : target)[dataKey]; }, getProxy: getProxy, click: function click(e) { that._eventTrigger("click", e); } }); that._handlers.setTrackerData = function (node, element) { element.data(dataKey, node._id); }; ///#DEBUG exports._TESTS_dataKey = dataKey; ///#ENDDEBUG }); expand(proto, "_disposeCore", function () { this._tracker.dispose(); });