]> git.proxmox.com Git - extjs.git/blame - extjs/packages/charts/src/chart/Legend.js
add extjs 6.0.1 sources
[extjs.git] / extjs / packages / charts / src / chart / Legend.js
CommitLineData
6527f429
DM
1/**\r
2 * @class Ext.chart.Legend\r
3 */\r
4Ext.define('Ext.chart.Legend', {\r
5 xtype: 'legend',\r
6 extend: 'Ext.chart.LegendBase',\r
7 config: {\r
8 baseCls: Ext.baseCSSPrefix + 'legend',\r
9 // TODO: not used.\r
10 padding: 5,\r
11\r
12 /**\r
13 * @cfg {Array}\r
14 * The rect of the legend related to its container.\r
15 */\r
16 rect: null,\r
17\r
18 // TODO: not used.\r
19 disableSelection: true,\r
20\r
21 /**\r
22 * @cfg {Boolean} toggleable\r
23 * `true` to allow series items to have their visibility\r
24 * toggled by interaction with the legend items.\r
25 */\r
26 toggleable: true\r
27 },\r
28\r
29 toggleItem: function (index) {\r
30 if (!this.getToggleable()) {\r
31 return;\r
32 }\r
33 var store = this.getStore(),\r
34 disabledCount = 0, disabled,\r
35 canToggle = true,\r
36 i, count, record;\r
37\r
38 if (store) {\r
39 count = store.getCount();\r
40 for (i = 0; i < count; i++) {\r
41 record = store.getAt(i);\r
42 if (record.get('disabled')) {\r
43 disabledCount++;\r
44 }\r
45 }\r
46 canToggle = count - disabledCount > 1;\r
47\r
48 record = store.getAt(index);\r
49 if (record) {\r
50 disabled = record.get('disabled');\r
51 if (disabled || canToggle) {\r
52 // This will trigger AbstractChart.onUpdateLegendStore.\r
53 record.set('disabled', !disabled);\r
54 }\r
55 }\r
56 }\r
57 }\r
58\r
59});\r