]> git.proxmox.com Git - extjs.git/blame - extjs/packages/ux/classic/src/colorpick/ButtonController.js
add extjs 6.0.1 sources
[extjs.git] / extjs / packages / ux / classic / src / colorpick / ButtonController.js
CommitLineData
6527f429
DM
1/**\r
2 * @private\r
3 */\r
4Ext.define('Ext.ux.colorpick.ButtonController', {\r
5 extend: 'Ext.app.ViewController',\r
6\r
7 alias: 'controller.colorpick-buttoncontroller',\r
8\r
9 requires: [\r
10 'Ext.window.Window',\r
11 'Ext.layout.container.Fit',\r
12 'Ext.ux.colorpick.Selector',\r
13 'Ext.ux.colorpick.ColorUtils'\r
14 ],\r
15\r
16 afterRender: function (view) {\r
17 view.updateColor(view.getColor());\r
18 },\r
19\r
20 destroy: function () {\r
21 var view = this.getView(),\r
22 colorPickerWindow = view.colorPickerWindow;\r
23\r
24 if (colorPickerWindow) {\r
25 colorPickerWindow.destroy();\r
26 view.colorPickerWindow = view.colorPicker = null;\r
27 }\r
28\r
29 this.callParent();\r
30 },\r
31\r
32 getPopup: function () {\r
33 var view = this.getView(),\r
34 popup = view.colorPickerWindow,\r
35 selector;\r
36\r
37 if (!popup) {\r
38 popup = Ext.create(view.getPopup());\r
39\r
40 view.colorPickerWindow = popup;\r
41 popup.colorPicker = view.colorPicker = selector = popup.lookupReference('selector');\r
42 selector.setFormat(view.getFormat());\r
43 selector.on({\r
44 ok: 'onColorPickerOK',\r
45 cancel: 'onColorPickerCancel',\r
46 scope: this\r
47 });\r
48\r
49 popup.on({\r
50 close: 'onColorPickerCancel',\r
51 scope: this\r
52 });\r
53 }\r
54\r
55 return popup;\r
56 },\r
57\r
58 // When button is clicked show the color picker window\r
59 onClick: function() {\r
60 var me = this,\r
61 view = me.getView(),\r
62 color = view.getColor(),\r
63 popup = me.getPopup(),\r
64 colorPicker = popup.colorPicker;\r
65\r
66 colorPicker.setColor(color);\r
67 colorPicker.setPreviousColor(color);\r
68\r
69 popup.showBy(view, 'tl-br?');\r
70 },\r
71\r
72 onColorPickerOK: function (picker) {\r
73 var view = this.getView(),\r
74 color = picker.getColor(),\r
75 cpWin = view.colorPickerWindow;\r
76\r
77 cpWin.hide();\r
78\r
79 view.setColor(color);\r
80 },\r
81\r
82 onColorPickerCancel: function () {\r
83 var view = this.getView(),\r
84 cpWin = view.colorPickerWindow;\r
85\r
86 cpWin.hide();\r
87 },\r
88\r
89 syncColor: function (color) {\r
90 var view = this.getView();\r
91\r
92 Ext.ux.colorpick.ColorUtils.setBackground(view.filterEl, color);\r
93 }\r
94});\r