php7 fixes
[Pman.Builder] / Pman.Dialog.BuilderSourceEdit.js
1 //<script type="text/javascript">
2
3 // Auto generated file - created by app.Builder.js- do not edit directly (at present!)
4
5 Pman.Dialog.BuilderSourceEdit = {
6
7     dialog : false,
8     callback:  false,
9
10     show : function(data, cb)
11     {
12         if (!this.dialog) {
13             this.create();
14         }
15
16         this.callback = cb;
17         this.data = data;
18         this.dialog.show(this.data._el);
19         if (this.form) {
20            this.form.reset();
21            this.form.setValues(data);
22            this.form.fireEvent('actioncomplete', this.form,  { type: 'setdata', data: data });
23         }
24
25     },
26
27     create : function()
28     {
29         var _this = this;
30         this.dialog = Roo.factory({
31             xtype: 'LayoutDialog',
32             xns: Roo,
33             listeners : {
34                 show : function (dlg)
35                 {
36                     _this.dialog = dlg;
37                     _this.dialog.layout.getRegion('south').collapse();
38                     
39                     if (!_this.help) {
40                        _this.dialog.layout.getRegion('south').showPanel(0);
41                        _this.help = _this.dialog.layout.getRegion('south').getPanel(0).el.createChild( {tag: 'iframe',  src : Roo.rootURL + 'docs'});
42                        
43                     }
44                     if (_this.isBuilder) {
45                         return;
46                     }
47                 
48                     dlg.getLayout().beginUpdate();
49                     var w = Roo.lib.Dom.getViewWidth();
50                     var h = Roo.lib.Dom.getViewHeight();
51                     dlg.resizeTo( w - 70, h - 70);
52                     dlg.moveTo(35,35);
53                     var val = _this.form.findField('value');
54                     val.setSize(w-100, h-170);
55                     dlg.getLayout().endUpdate();
56                     this.setTitle('Callback for ' + _this.data.title);
57                 
58                 }
59             },
60             background : true,
61             closable : false,
62             collapsible : false,
63             height : 500,
64             modal : true,
65             title : "Source Code Edit",
66             width : 400,
67             items : [
68                 {
69                     xtype: 'ContentPanel',
70                     xns: Roo,
71                     background : true,
72                     fitToFrame : true,
73                     region : 'center',
74                     items : [
75                         {
76                             xtype: 'Form',
77                             xns: Roo.form,
78                             labelAlign : 'top',
79                             listeners : {
80                                 rendered : function (form)
81                                 {
82                                    _this.form = form;
83                                 }
84                             },
85                             items : [
86                                 {
87                                     xtype: 'TextArea',
88                                     xns: Roo.form,
89                                     name : 'value',
90                                     fieldLabel : 'Enter Code for Function or Property',
91                                     width : 360,
92                                     height : 100,
93                                     listeners : {
94                                         specialkey : function (f, e)
95                                         {
96                                             
97                                             function addStr(v) {
98                                                 var fe = f.el.dom;
99                                                 if (document.selection) { // IE
100                                                     fe.focus();
101                                                     var sel =document.selection.createRange();
102                                                     sel.text = v;
103                                                     return;
104                                                 }
105                                                 if (fe.selectionStart || fe.selectionStart == '0') {
106                                                     var startPos = fe.selectionStart;
107                                                     var endPos = fe.selectionEnd;
108                                                     var restoreTop = fe.scrollTop;
109                                                     fe.value = fe.value.substring(0, startPos) + 
110                                                         v + fe.value.substring(endPos, fe.value.length);
111                                                     fe.selectionStart = startPos + v.length;
112                                                     fe.selectionEnd = startPos + v.length;
113                                                     if (restoreTop>0)  {
114                                                         fe.scrollTop = restoreTop;
115                                                     }
116                                                     return;
117                                                 }
118                                                 fe.value += "    ";
119                                             }
120                                             
121                                             if (e.getKey() == 9) {
122                                                 addStr("    ");
123                                                 e.stopEvent();
124                                             }
125                                             if (e.getKey() == 13) {
126                                                 addStr("\n    ");
127                                                 e.stopEvent();
128                                             }
129                                         
130                                         }
131                                     },
132                                     style : 'font-family:monospace;'
133                                 }
134                             ]
135                         }
136                     ]
137                 },
138                 {
139                     xtype: 'ContentPanel',
140                     xns: Roo,
141                     background : true,
142                     fitToFrame : true,
143                     region : 'south',
144                     title : "Help / Manual"
145                 }
146             ],
147             center : {
148                 xtype: 'LayoutRegion',
149                 xns: Roo,
150                 titlebar : false
151             },
152             south : {
153                 xtype: 'LayoutRegion',
154                 xns: Roo,
155                 titlebar : true,
156                 listeners : {
157                     resized : function (_self, newSize)
158                     {
159                         var sz = _this.dialog.size;
160                         _this.form.findField('value').setSize(sz.width-30, sz.height- newSize  - 100);
161                         if (_this.help && newSize > 21) {
162                            _this.help.setSize(sz.width-25, newSize-28);
163                         }
164                     },
165                     collapsed : function (_self)
166                     {
167                         this.fireEvent('resized', this, 20);
168                     },
169                     expanded : function (_self)
170                     {
171                        this.fireEvent('resized', this, this.getBox().height);
172                     }
173                 },
174                 height : 300,
175                 collapsible : true,
176                 split : true,
177                 collapsedTitle : 'Help / Manual'
178             },
179             buttons : [
180                 {
181                     xtype: 'Button',
182                     xns: Roo,
183                     text : "Cancel",
184                     listeners : {
185                         click : function (_self, e)
186                         {
187                         
188                             _this.dialog.hide();
189                         }
190                     }
191                 },
192                 {
193                     xtype: 'Button',
194                     xns: Roo,
195                     listeners : {
196                         click : function (_self, e)
197                         {
198                             _this.callback.call(_this, {
199                                value : _this.form.findField('value').getValue()
200                             });
201                             _this.dialog.hide();
202                         }
203                     },
204                     text : "OK"
205                 }
206             ]
207         });
208     }
209 };