]>
Commit | Line | Data |
---|---|---|
6527f429 DM |
1 | /**\r |
2 | * @private\r | |
3 | */\r | |
4 | Ext.define('Ext.util.sizemonitor.Scroll', {\r | |
5 | \r | |
6 | extend: 'Ext.util.sizemonitor.Abstract',\r | |
7 | \r | |
8 | getElementConfig: function() {\r | |
9 | return {\r | |
10 | reference: 'detectorsContainer',\r | |
11 | classList: [Ext.baseCSSPrefix + 'size-monitors', 'scroll'],\r | |
12 | children: [\r | |
13 | {\r | |
14 | reference: 'expandMonitor',\r | |
15 | className: 'expand'\r | |
16 | },\r | |
17 | {\r | |
18 | reference: 'shrinkMonitor',\r | |
19 | className: 'shrink'\r | |
20 | }\r | |
21 | ]\r | |
22 | };\r | |
23 | },\r | |
24 | \r | |
25 | constructor: function(config) {\r | |
26 | this.onScroll = Ext.Function.bind(this.onScroll, this);\r | |
27 | \r | |
28 | this.callParent(arguments);\r | |
29 | },\r | |
30 | \r | |
31 | bindListeners: function(bind) {\r | |
32 | var method = bind ? 'addEventListener' : 'removeEventListener';\r | |
33 | \r | |
34 | this.expandMonitor[method]('scroll', this.onScroll, true);\r | |
35 | this.shrinkMonitor[method]('scroll', this.onScroll, true);\r | |
36 | },\r | |
37 | \r | |
38 | forceRefresh: function() {\r | |
39 | Ext.TaskQueue.requestRead('refresh', this, [true]);\r | |
40 | },\r | |
41 | \r | |
42 | onScroll: function() {\r | |
43 | Ext.TaskQueue.requestRead('refresh', this);\r | |
44 | },\r | |
45 | \r | |
46 | refreshMonitors: function() {\r | |
47 | var expandMonitor = this.expandMonitor,\r | |
48 | shrinkMonitor = this.shrinkMonitor,\r | |
49 | end = 1000000;\r | |
50 | \r | |
51 | if (expandMonitor && !expandMonitor.destroyed) {\r | |
52 | expandMonitor.scrollLeft = end;\r | |
53 | expandMonitor.scrollTop = end;\r | |
54 | }\r | |
55 | \r | |
56 | if (shrinkMonitor && !shrinkMonitor.destroyed) {\r | |
57 | shrinkMonitor.scrollLeft = end;\r | |
58 | shrinkMonitor.scrollTop = end;\r | |
59 | }\r | |
60 | }\r | |
61 | });\r |