]> git.proxmox.com Git - extjs.git/blame - extjs/modern/modern/src/Mask.js
add extjs 6.0.1 sources
[extjs.git] / extjs / modern / modern / src / Mask.js
CommitLineData
6527f429
DM
1/**\r
2 * A simple class used to mask any {@link Ext.Container}.\r
3 *\r
4 * This should rarely be used directly, instead look at the {@link Ext.Container#masked} configuration.\r
5 *\r
6 * ## Example\r
7 *\r
8 * @example miniphone\r
9 * // Create our container\r
10 * var container = Ext.create('Ext.Container', {\r
11 * html: 'My container!'\r
12 * });\r
13 *\r
14 * // Add the container to the Viewport\r
15 * Ext.Viewport.add(container);\r
16 *\r
17 * // Mask the container\r
18 * container.setMasked(true);\r
19 */\r
20Ext.define('Ext.Mask', {\r
21 extend: 'Ext.Component',\r
22 xtype: 'mask',\r
23 requires: ['Ext.util.InputBlocker'],\r
24\r
25 config: {\r
26 /**\r
27 * @cfg\r
28 * @inheritdoc\r
29 */\r
30 baseCls: Ext.baseCSSPrefix + 'mask',\r
31\r
32 /**\r
33 * @cfg {Boolean} transparent True to make this mask transparent.\r
34 */\r
35 transparent: false,\r
36\r
37 /**\r
38 * @cfg\r
39 * @hide\r
40 */\r
41 top: 0,\r
42\r
43 /**\r
44 * @cfg\r
45 * @hide\r
46 */\r
47 left: 0,\r
48\r
49 /**\r
50 * @cfg\r
51 * @hide\r
52 */\r
53 right: 0,\r
54\r
55 /**\r
56 * @cfg\r
57 * @hide\r
58 */\r
59 bottom: 0\r
60 },\r
61\r
62 /**\r
63 * @event tap\r
64 * A tap event fired when a user taps on this mask\r
65 * @param {Ext.Mask} this The mask instance\r
66 * @param {Ext.EventObject} e The event object\r
67 */\r
68 initialize: function() {\r
69 var me = this;\r
70\r
71 me.callParent();\r
72 me.element.on('tap', 'onTap', me);\r
73 me.on('hide', 'onHide', me);\r
74 },\r
75\r
76 onHide: function(){\r
77 Ext.util.InputBlocker.unblockInputs();\r
78\r
79 // Oh how I loves the Android\r
80 if (Ext.browser.is.AndroidStock4 && Ext.os.version.getMinor() === 0) {\r
81 var firstChild = this.element.getFirstChild();\r
82 if (firstChild) {\r
83 firstChild.redraw();\r
84 }\r
85 }\r
86 },\r
87\r
88 onTap: function(e) {\r
89 this.fireEvent('tap', this, e);\r
90 },\r
91\r
92 updateTransparent: function(transparent) {\r
93 this.toggleCls(this.getBaseCls() + '-transparent', transparent);\r
94 }\r
95});\r