OSDN Git Service

78bc4282ec4d93d0bebe674130dd0e1f92ba56e5
[pettanr/pettanr.git] / app / assets / javascripts / editor / panel_editor / dock.js.coffee
1 class Editor.PanelEditor.Dock extends Editor.EditorModule.DockBase\r
2   tagName: 'div'\r
3   className: 'dock'\r
4   \r
5   initialize: (options) ->\r
6     super(options)\r
7     @root_bay = new Editor.EditorModule.DockModule.RootBay({\r
8       parent: this, index: 0, name: 'panel'\r
9     })\r
10     @add_tab(\r
11       @root_bay, \r
12       new Editor.EditorModule.DockModule.TabModule.RootBayLabel({\r
13         parent: @root_bay, caption: 'panel'\r
14       }), \r
15       new Editor.EditorModule.DockModule.TabModule.RootBayBody({\r
16         parent: @root_bay\r
17       })\r
18     )\r
19     @element_bay = new Editor.EditorModule.DockModule.ElementBay({\r
20       parent: this, index: 1, name: 'elements'\r
21     })\r
22     @add_tab(\r
23       @element_bay, \r
24       new Editor.EditorModule.DockModule.TabModule.ElementBayLabel({\r
25         parent: @element_bay, caption: 'elements'\r
26       }), \r
27       new Editor.EditorModule.DockModule.TabModule.ElementBayBody({\r
28         parent: @element_bay\r
29       })\r
30     )\r
31     @scenario_bay = new Editor.EditorModule.DockModule.ScenarioBay({\r
32       parent: this, index: 2, name: 'scenario'\r
33     })\r
34     @add_tab(\r
35       @scenario_bay, \r
36       new Editor.EditorModule.DockModule.TabModule.ScenarioBayLabel({\r
37         parent: @scenario_bay, caption: 'scenario'\r
38       }), \r
39       new Editor.EditorModule.DockModule.TabModule.ScenarioBayBody({\r
40         parent: @scenario_bay\r
41       })\r
42     )\r
43     @listenTo(@root_bay.body, 'http_post', @http_post)\r
44     @listenTo(@element_bay, 'add:credit', @add_credit)\r
45   \r
46   render: () ->\r
47     this.$el.html('')\r
48     l = _.map @tabs, (tab) ->\r
49       tab.label\r
50     labels = new Tag.Ul({contents: l, class_name: @dom_labels_class()})\r
51     this.$el.append(labels.render().el)\r
52     _.each @tabs, (tab) =>\r
53       this.$el.append(tab.render().el)\r
54     this\r
55   \r
56   init_tabs: () ->\r
57     @element_bay.init_tabs()\r
58     @scenario_bay.init_tabs()\r
59     this.$el.tabs({\r
60       activate: (e, ui) ->\r
61         ui.newPanel.trigger('activate')\r
62     })\r
63   \r
64   editor: () ->\r
65     @parent\r
66   \r
67   dom_id: () ->\r
68     @editor().dom_id() + '-dock'\r
69   \r
70   dom_class: () ->\r
71     @editor().dom_class() + '-dock'\r
72   \r
73   dom_labels_class: () ->\r
74     @dom_class() + '-labels'\r
75   \r
76   http_post: (url, root_form) ->\r
77     @trigger('http_post', url, this)  # send dock\r
78     false\r
79   \r
80   add_credit: (element) ->\r
81     @trigger('add:credit', element)\r
82   \r
83   save_data: () ->\r
84     attrs = @root_bay.save_data()\r
85     _.extend(attrs, @element_bay.save_data())\r
86     attrs\r
87   \r
88 class Editor.EditorModule.DockModule.RootBay extends Editor.EditorModule.DockModule.SimpleBay\r
89   \r
90   render: () ->\r
91     @body.render()\r
92   \r
93   save_data: () ->\r
94     @body.form.save_data()\r
95   \r
96 class Editor.EditorModule.DockModule.TabModule.RootBayLabel extends Editor.EditorModule.DockModule.TabModule.BayLabel\r
97   \r
98 class Editor.EditorModule.DockModule.TabModule.RootBayBody extends Editor.EditorModule.DockModule.TabModule.BayBody\r
99   \r
100   initialize: (options) ->\r
101     super(options)\r
102     @form = Locmare.Form.factory({\r
103       form_name: @root_item().item_name(), \r
104       use_name: 'default' \r
105       item: @root_item(), \r
106       mounted: @mounted(), \r
107       submit: 'default' \r
108       operators: @dock().editor().operators,\r
109       action: '/' + @root_item().table_name() + '/' + Pettanr.to_s(@root_item().get('id'))\r
110     })\r
111     @listenTo(@form, 'http_post', @http_post)\r
112   \r
113   render: () ->\r
114     super()\r
115     @el.className = @bay().body.dom_class()\r
116     this.$el.html(@form.render().el)\r
117     this\r
118   \r
119   mounted: () ->\r
120     true\r
121   \r
122   dock: () ->\r
123     @parent.dock()\r
124   \r
125   root_item: () ->\r
126     @dock().root_item()\r
127   \r
128   http_post: (url, root_form) ->\r
129     @trigger('http_post', url, root_form)\r
130     false\r
131   \r
132 class Editor.EditorModule.DockModule.ElementBay extends Editor.EditorModule.DockModule.BoardBay\r
133   \r
134   initialize: (options) ->\r
135     super(options)\r
136     @elements_tabs = new Editor.EditorModule.DockModule.ElementBay.ElementsTabs({\r
137     })\r
138     @listenTo(@elements_tabs, 'sorted', @sorted)\r
139   \r
140   add_element: (element) ->\r
141     index = element.get('z') - 1\r
142     tab = new Editor.EditorModule.DockModule.ElementBoard({\r
143       parent: this, index: index, name: element.item_name(), element: element\r
144     })\r
145     bb = new Editor.EditorModule.DockModule.TabModule.ElementBoardBody({parent: tab})\r
146     @add_tab(\r
147       tab, \r
148       new Editor.EditorModule.DockModule.TabModule.ElementBoardLabel({parent: tab, name: element.item_name()}), \r
149       bb\r
150     )\r
151     @elements_tabs.add_element_tab(tab)\r
152     @elements_tabs.$el.tabs('refresh')\r
153     if element.constructor.has_picture()\r
154       @trigger('add:credit', element)\r
155   \r
156   add_new_tab: () ->\r
157     tab = new Editor.EditorModule.DockModule.NewElementBoard({\r
158       parent: this, index: 0, name: 'new'\r
159     })\r
160     bb = new Editor.EditorModule.DockModule.TabModule.NewElementBoardBody({parent: tab})\r
161     @add_tab(\r
162       tab, \r
163       new Editor.EditorModule.DockModule.TabModule.NewElementBoardLabel({parent: tab}), \r
164       bb\r
165     )\r
166     @elements_tabs.add_element_tab(tab)\r
167   \r
168   render: () ->\r
169     this.$el.html('')\r
170     @delegateEvents({'activate': 'activate'})\r
171     this.$el.attr('id', @body.dom_id())\r
172     this.$el.append(@elements_tabs.render().el)\r
173     _this = this\r
174     @elements_tabs.$el.tabs({\r
175       activate: (e, ui) ->\r
176         ui.newPanel.trigger('activate')\r
177     })\r
178     this\r
179   \r
180   init_tabs: () ->\r
181     @add_new_tab()\r
182     list = @root_item().zorderd_elements()\r
183     _.each list, (element) =>\r
184       @add_element(element)\r
185   \r
186   activate: () ->\r
187     _.each @tabs, (tab) ->\r
188       return if not tab.element  # without new element tab\r
189       if tab.body.$el.css('display') != 'none'\r
190         tab.body.refresh()\r
191   \r
192   sorted: () ->\r
193     # data-z copy to model\r
194     _.each @tabs, (tab) ->\r
195       if tab.element   # without new_tab\r
196         z = parseInt(tab.label.$el.attr('data-z'))\r
197         tab.element.set({\r
198           z: z\r
199         }, {silent: true})\r
200         tab.element.trigger('sort')\r
201   \r
202   panel_body: () ->\r
203     @dock().editor().body\r
204   \r
205   save_data: () ->\r
206     attrs = {}\r
207     _.each @tabs, (tab) ->\r
208       return if not tab.element  # without new element tab\r
209       form = tab.body.form\r
210       name = form.item.table_name() + '_attributes'\r
211       attrs[name] ||= []\r
212       attrs[name].push(form.save_data())\r
213     attrs\r
214   \r
215 class Editor.EditorModule.DockModule.ElementBay.ElementsTabs extends Backbone.View\r
216   tagName: 'div'\r
217   className: 'elements_tabs ui-tabs-vertical ui-helper-clearfix'\r
218   \r
219   initialize: (options) ->\r
220     super(options)\r
221     @inner_elements_tabs = new Editor.EditorModule.DockModule.ElementBay.InnerElementsTabs({\r
222     })\r
223     @listenTo(@inner_elements_tabs, 'sorted', @sorted)\r
224   \r
225   render: () ->\r
226     this.$el.html('')\r
227     this.$el.append(@inner_elements_tabs.render().$el)\r
228     this\r
229   \r
230   add_element_tab: (tab) ->\r
231     @inner_elements_tabs.add_label(tab.label)\r
232     this.$el.append(tab.body.render().$el)\r
233   \r
234   sorted: () ->\r
235     # data-z copy to model\r
236     @trigger('sorted')\r
237   \r
238 class Editor.EditorModule.DockModule.ElementBay.InnerElementsTabs extends Backbone.View\r
239   tagName: 'ul'\r
240   \r
241   initialize: (options) ->\r
242     super(options)\r
243     @labels = []\r
244   \r
245   render: () ->\r
246     this.$el.html('')\r
247     this.$el.addClass('inner-elements-tabs')\r
248     _.each @zorderd_labels(), (label) =>\r
249       this.$el.append(label.render().$el)\r
250     _this = this\r
251     this.$el.sortable {\r
252       update: (event, ui) ->\r
253         z = 1\r
254         $('.z-label', $(@)).map ->\r
255           $(@).attr('data-z', z)\r
256           z++\r
257         _this.trigger('sorted')\r
258     }\r
259     this\r
260   \r
261   zorderd_labels: () ->\r
262     res = []\r
263     _.each @labels, (label) =>\r
264       res[label.z()] = label\r
265     res\r
266   \r
267   add_label: (label) ->\r
268     #z = label.z()\r
269     @labels.push(label) # insert array\r
270     @render()\r
271     label.add_label()\r
272   \r
273 class Editor.EditorModule.DockModule.TabModule.ElementBayLabel extends Editor.EditorModule.DockModule.TabModule.BayLabel\r
274   \r
275 class Editor.EditorModule.DockModule.TabModule.ElementBayBody extends Editor.EditorModule.DockModule.TabModule.BayBody\r
276   \r
277   render: () ->\r
278     @body.render()\r
279 class Editor.EditorModule.DockModule.ElementBoard extends Editor.EditorModule.DockModule.Board\r
280   \r
281   initialize: (options) ->\r
282     super(options)\r
283     @element = options.element\r
284   \r
285   dom_id: () ->\r
286     super() + '-' + @element.get('id')  # use tab index\r
287   \r
288 class Editor.EditorModule.DockModule.TabModule.ElementBoardLabel extends Editor.EditorModule.DockModule.TabModule.BoardLabel\r
289   \r
290   render: () ->\r
291     super()\r
292     this.$el.attr('data-z', @z())\r
293     this.$el.removeClass('ui-corner-top')\r
294     this.$el.addClass('ui-corner-left z-label')\r
295     _this = this\r
296     this.$el.mouseover -> \r
297       _this.element().trigger('active')\r
298     this.$el.mouseout -> \r
299       _this.element().trigger('inactive')\r
300     this\r
301   \r
302   z: () ->\r
303     @element().get('z')\r
304   \r
305   add_label: () ->\r
306     this.$el.attr('id', @dom_id())\r
307   \r
308 class Editor.EditorModule.DockModule.TabModule.ElementBoardBody extends Editor.EditorModule.DockModule.TabModule.BoardBody\r
309   \r
310   initialize: (options) ->\r
311     super(options)\r
312     @form = Locmare.Form.factory({\r
313       form_name: @element().item_name(), \r
314       use_name: 'default' \r
315       item: @element(), \r
316       element_form: true, \r
317       submit: null, \r
318       operators: @dock().editor().operators,\r
319     })\r
320   \r
321   render: () ->\r
322     @delegateEvents({'activate': 'activate'})\r
323     this.$el.attr('id', @dom_id())\r
324     this.$el.html(@form.render().el)\r
325     this\r
326   \r
327   add_element: (element) ->\r
328     @form.add_element(element)\r
329   \r
330   activate: () ->\r
331     @refresh()\r
332   \r
333   refresh: () ->\r
334     @form.refresh()\r
335   \r
336   mounted: () ->\r
337     true\r
338   \r
339   element: () ->\r
340     @parent.element\r
341   \r
342 class Editor.EditorModule.DockModule.NewElementBoard extends Editor.EditorModule.DockModule.Board\r
343   \r
344   initialize: (options) ->\r
345     super(options)\r
346     @panel = @parent.dock().editor().panel\r
347   \r
348 class Editor.EditorModule.DockModule.TabModule.NewElementBoardLabel extends Editor.EditorModule.DockModule.TabModule.BoardLabel\r
349   \r
350   render: () ->\r
351     super()\r
352     this.$el.attr('data-z', @z())\r
353     this.$el.removeClass('ui-corner-top')\r
354     this.$el.addClass('ui-corner-left')\r
355     this\r
356   \r
357   face: () ->\r
358     this.$el.append()\r
359     icon = new Pettanr.Image.SymbolImg({attr: {src: '/images/new.gif'}})\r
360     linked_elements_tab = new Tag.A({\r
361       attr: {href: '#' + @board().body.dom_id() },\r
362       content: icon.render().el\r
363     })\r
364     this.$el.append(linked_elements_tab.render().el)\r
365   \r
366   z: () ->\r
367     0\r
368   \r
369   add_label: () ->\r
370     this.$el.attr('id', @dom_id())\r
371   \r
372 class Editor.EditorModule.DockModule.TabModule.NewElementBoardBody extends Editor.EditorModule.DockModule.TabModule.BoardBody\r
373   className: 'new-element-board-body'\r
374   \r
375   initialize: (options) ->\r
376     super(options)\r
377   \r
378   render: () ->\r
379     this.$el.attr('id', @dom_id())\r
380     @buttons = new Editor.EditorModule.DockModule.NewElementButtons({\r
381       parent: this, element_models: @element_models()\r
382     })\r
383     @form_wrapper = new Editor.EditorModule.DockModule.NewElementFormWrapper({\r
384       parent: this\r
385     })\r
386     this.$el.append(@buttons.render().el)\r
387     this.$el.append(@form_wrapper.clear().el)\r
388     this\r
389   \r
390   panel: () ->\r
391     @parent.panel\r
392   \r
393   element_models: () ->\r
394     @panel().my_class().child_models()\r
395   \r
396 class Editor.EditorModule.DockModule.NewElementButtons extends Backbone.View\r
397   tagName: 'div'\r
398   className: 'new-element-buttons'\r
399   \r
400   initialize: (options) ->\r
401     super(options)\r
402     @parent = options.parent\r
403     @element_models = options.element_models\r
404   \r
405   render: () ->\r
406     _.each @element_models, (model) =>\r
407       button = new Editor.EditorModule.DockModule.NewElementButton({\r
408         parent: this, model: model\r
409       })\r
410       this.$el.append(button.render().el)\r
411     this\r
412   \r
413 class Editor.EditorModule.DockModule.NewElementButton extends Backbone.View\r
414   tagName: 'div'\r
415   \r
416   initialize: (options) ->\r
417     super(options)\r
418     @parent = options.parent\r
419     @model = options.model\r
420   \r
421   render: () ->\r
422     this.$el.html('')\r
423     icon = new Pettanr.Image.Icon({item: @model})\r
424     linked_icon = new Editor.EditorModule.DockModule.NewElementLinkedButton({\r
425       attr: {href: '#' },\r
426       content: icon.render().el\r
427     })\r
428     @listenTo(linked_icon, 'click', @click)\r
429     this.$el.append(linked_icon.render().el)\r
430     this\r
431   \r
432   click: () ->\r
433     params = {\r
434       controller: @model.path_name(), action: 'index',\r
435       page_size: 6, format: 'pick'\r
436     }\r
437     @dialog().get(params, null)\r
438     @set_form()\r
439   \r
440   set_form: () ->\r
441     @form_wrapper().select(@model)\r
442   \r
443   operators: () ->\r
444     @editor().operators\r
445   \r
446   form_wrapper: () ->\r
447     @parent.parent.form_wrapper\r
448   \r
449   dock: () ->\r
450     @parent.parent.dock()\r
451   \r
452   dialog: () ->\r
453     @editor().dialog\r
454   \r
455   editor: () ->\r
456     @dock().parent\r
457   \r
458 class Editor.EditorModule.DockModule.NewElementLinkedButton extends Tag.A\r
459   \r
460   click: () ->\r
461     @trigger('click')\r
462     return false\r
463   \r
464 class Editor.EditorModule.DockModule.NewElementFormWrapper extends Backbone.View\r
465   tagName: 'div'\r
466   \r
467   initialize: (options) ->\r
468     super(options)\r
469     @parent = options.parent\r
470   \r
471   clear: () ->\r
472     this.$el.html('')\r
473     this\r
474   \r
475   render: () ->\r
476     this.$el.html(@model.item_name())\r
477   \r
478   select: (model) ->\r
479     @model = model\r
480     @render()\r
481   \r
482 class Editor.EditorModule.DockModule.ScenarioBay extends Editor.EditorModule.DockModule.SimpleBay\r
483   \r
484   initialize: (options) ->\r
485     super(options)\r
486   \r
487   render: () ->\r
488     @body.render()\r
489   \r
490   add_element: (element) ->\r
491     @body.add_element(element)\r
492   \r
493   init_tabs: () ->\r
494     list = @root_item().scenario_elements()\r
495     _.each list, (element) =>\r
496       @add_element(element)\r
497   \r
498   save_data: () ->\r
499     @body.form.save_data()\r
500   \r
501 class Editor.EditorModule.DockModule.TabModule.ScenarioBayLabel extends Editor.EditorModule.DockModule.TabModule.BayLabel\r
502   \r
503 class Editor.EditorModule.DockModule.TabModule.ScenarioBayBody extends Editor.EditorModule.DockModule.TabModule.BayBody\r
504   \r
505   initialize: (options) ->\r
506     super(options)\r
507     @elements = new Editor.EditorModule.DockModule.ScenarioBay.Elements({\r
508       parent: this, \r
509     })\r
510     @listenTo(@elements, 'sorted', @sorted)\r
511   \r
512   add_element: (element) ->\r
513     @elements.add_element(element)\r
514   \r
515   render: () ->\r
516     super()\r
517     this.$el.append(@elements.render().el)\r
518     @delegateEvents({'activate': 'activate'})\r
519     this\r
520   \r
521   activate: () ->\r
522     @elements.refresh()\r
523   \r
524   sorted: () ->\r
525     # data-t copy to model\r
526     _.each @elements.element_lis, (element_li) =>\r
527       t = parseInt(element_li.$el.attr('data-t'))\r
528       element_li.element.set({\r
529         t: t\r
530       }, {silent: true})\r
531       element_li.element.trigger('sort')\r
532   \r
533   panel_body: () ->\r
534     @dock().editor().body\r
535   \r
536   save_data: () ->\r
537     attrs = {}\r
538     _.each @tabs, (tab) ->\r
539       return if not tab.element  # without new element tab\r
540       form = tab.body.form\r
541       name = form.item.table_name() + '_attributes'\r
542       attrs[name] ||= []\r
543       attrs[name].push(form.save_data())\r
544     attrs\r
545   \r
546 class Editor.EditorModule.DockModule.ScenarioBay.Elements extends Backbone.View\r
547   tagName: 'ul'\r
548   className: 'scenarios_elements'\r
549   \r
550   initialize: (options) ->\r
551     super(options)\r
552     @parent = options.parent\r
553     @element_lis = []\r
554   \r
555   render: () ->\r
556     this.$el.html('')\r
557     _.each @scenario_elements(), (element_li) =>\r
558       this.$el.append(element_li.render().$el)\r
559     _this = this\r
560     this.$el.sortable {\r
561       update: (event, ui) ->\r
562         t = 0\r
563         $('.t-label', $(@)).map ->\r
564           $(@).attr('data-t', t)\r
565           t++\r
566         _this.trigger('sorted')\r
567     }\r
568     this\r
569   \r
570   refresh: () ->\r
571     _.each @element_lis, (element_li) =>\r
572       element_li.refresh()\r
573   \r
574   scenario_elements: () ->\r
575     res = []\r
576     _.each @element_lis, (element_li) =>\r
577       res[element_li.t()] = element_li\r
578     res\r
579   \r
580   add_element: (element) ->\r
581     e = new Editor.EditorModule.DockModule.ScenarioBay.Element({\r
582       parent: this, \r
583       element: element\r
584     })\r
585     @element_lis.push(e) # insert array\r
586     @render()\r
587     e\r
588   \r
589   sorted: () ->\r
590     # data-t copy to model\r
591     @trigger('sorted')\r
592   \r
593 class Editor.EditorModule.DockModule.ScenarioBay.Element extends Backbone.View\r
594   tagName: 'li'\r
595   className: 't-label'\r
596   \r
597   initialize: (options) ->\r
598     super(options)\r
599     @parent = options.parent\r
600     @element = options.element\r
601   \r
602   render: () ->\r
603     this.$el.html('')\r
604     this.$el.attr('data-t', @t())\r
605     @label = new Editor.EditorModule.DockModule.ScenarioBay.ElementLabel({\r
606       parent: this, \r
607     })\r
608     @body = new Editor.EditorModule.DockModule.ScenarioBay.ElementBody({\r
609       parent: this, \r
610     })\r
611     this.$el.append(@label.render().$el)\r
612     this.$el.append(@body.render().$el)\r
613     rb = new Tag.RowBreak()\r
614     this.$el.append(rb.render().el)\r
615     this\r
616   \r
617   refresh: () ->\r
618     @body.form.refresh()\r
619   \r
620   t: () ->\r
621     @element.get('t')\r
622   \r
623   dom_id: () ->\r
624     super() + '-' + @element.get('id')  # use tab index\r
625   \r
626 class Editor.EditorModule.DockModule.ScenarioBay.ElementLabel extends Backbone.View\r
627   className: 'scenario-label'\r
628   \r
629   initialize: (options) ->\r
630     super(options)\r
631     @parent = options.parent\r
632   \r
633   render: () ->\r
634     this.$el.append(@element().element_face().render().el)\r
635     _this = this\r
636     this.$el.mouseover -> \r
637       _this.element().trigger('active')\r
638     this.$el.mouseout -> \r
639       _this.element().trigger('inactive')\r
640     this\r
641   \r
642   element: () ->\r
643     @parent.element\r
644   \r
645   elements: () ->\r
646     @parent.parent\r
647   \r
648   bay: () ->\r
649     @elements().parent\r
650   \r
651   dock: () ->\r
652     @bay().dock()\r
653   \r
654 class Editor.EditorModule.DockModule.ScenarioBay.ElementBody extends Backbone.View\r
655   \r
656   initialize: (options) ->\r
657     super(options)\r
658     @parent = options.parent\r
659     @form = Locmare.Form.factory({\r
660       form_name: @element().item_name(), \r
661       use_name: 'scenario' \r
662       item: @element(), \r
663       element_form: true, \r
664       submit: null, \r
665       operators: @dock().editor().operators,\r
666     })\r
667   \r
668   render: () ->\r
669     this.$el.html(@form.render().el)\r
670     this\r
671   \r
672   element: () ->\r
673     @parent.element\r
674   \r
675   elements: () ->\r
676     @parent.parent\r
677   \r
678   bay: () ->\r
679     @elements().parent\r
680   \r
681   dock: () ->\r
682     @bay().dock()\r
683   \r
684   mounted: () ->\r
685     true\r
686   \r
687   element: () ->\r
688     @parent.element\r
689   \r
690 class Editor.EditorModule.DockModule.NewBay extends Editor.EditorModule.DockModule.BoardBay\r
691   \r
692 \r
693 class Editor.EditorModule.DockModule.TabModule.NewBayLabel extends Editor.EditorModule.DockModule.TabModule.BayLabel\r
694   \r
695 \r
696 class Editor.EditorModule.DockModule.TabModule.NewBayBody extends Editor.EditorModule.DockModule.TabModule.BayBody\r
697   \r
698   initialize: (options) ->\r
699     super(options)\r
700   \r
701 class Editor.EditorModule.DockModule.NewBoard extends Editor.EditorModule.DockModule.Board\r
702   \r
703 class Editor.EditorModule.DockModule.TabModule.NewBoardLabel extends Editor.EditorModule.DockModule.TabModule.BoardLabel\r
704   \r
705 class Editor.EditorModule.DockModule.TabModule.NewBoardBody extends Editor.EditorModule.DockModule.TabModule.BoardBody\r
706   \r
707   initialize: (options) ->\r
708     super(options)\r
709 #    form_manager = Pettanr::Application::manifest.form_managers[self.root_item.form_name]\r
710 #    form = form_manager.open self.root_item, @dock_body.dock.editor.operators, mounted\r
711 #    bucket = Bucket.new self,form\r
712   \r