class Editor.PanelEditor.Dock extends Editor.EditorModule.DockBase tagName: 'div' className: 'dock' initialize: (options) -> super(options) tab = new Editor.EditorModule.DockModule.RootBay({ parent: this, index: 0, name: 'panel' }) @add_tab( tab, new Editor.EditorModule.DockModule.TabModule.RootBayLabel({ parent: tab, caption: 'panel' }), new Editor.EditorModule.DockModule.TabModule.RootBayBody({ parent: tab }) ) tab = new Editor.EditorModule.DockModule.ElementBay({ parent: this, index: 1, name: 'elements' }) @add_tab( tab, new Editor.EditorModule.DockModule.TabModule.ElementBayLabel({ parent: tab, caption: 'elements' }), new Editor.EditorModule.DockModule.TabModule.ElementBayBody({ parent: tab }) ) tab = new Editor.EditorModule.DockModule.ScenarioBay({ parent: this, index: 2, name: 'scenario' }) @add_tab( tab, new Editor.EditorModule.DockModule.TabModule.ScenarioBayLabel({ parent: tab, caption: 'scenario' }), new Editor.EditorModule.DockModule.TabModule.ScenarioBayBody({ parent: tab }) ) tab = new Editor.EditorModule.DockModule.PriorityBay({ parent: this, index: 3, name: 'priority' }) @add_tab( tab, new Editor.EditorModule.DockModule.TabModule.PriorityBayLabel({ parent: tab, caption: 'priority' }), new Editor.EditorModule.DockModule.TabModule.PriorityBayBody({ parent: tab }) ) tab = new Editor.EditorModule.DockModule.NewBay({ parent: this, index: 4, name: 'new' }) @add_tab( tab, new Editor.EditorModule.DockModule.TabModule.NewBayLabel({ parent: tab, caption: 'new' }), new Editor.EditorModule.DockModule.TabModule.NewBayBody({ parent: tab }) ) render: () -> this.$el.html('') l = _.map @tabs, (tab) -> tab.label labels = new Tag.Ul({contents: l, class_name: @dom_labels_class()}) this.$el.append(labels.render().el) _this = this _.each @tabs, (tab) -> _this.$el.append(tab.render().el) this editor: () -> @parent dom_id: () -> @editor().dom_id() + '-dock' dom_class: () -> @editor().dom_class() + '-dock' dom_labels_class: () -> @dom_class() + '-labels' class Editor.EditorModule.DockModule.RootBay extends Editor.EditorModule.DockModule.SimpleBay render: () -> @body.render() class Editor.EditorModule.DockModule.TabModule.RootBayLabel extends Editor.EditorModule.DockModule.TabModule.BayLabel class Editor.EditorModule.DockModule.TabModule.RootBayBody extends Editor.EditorModule.DockModule.TabModule.BayBody initialize: (options) -> super(options) @form = new Locmare.Form({ form_name: @root_item().item_name(), item: @root_item(), mounted: @mounted(), submit: 'default', operators: @operators }) @bucket = new Editor.EditorModule.DockModule.FormBucket({ parent: this, form: @form }) render: () -> @el.className = @bay().body.dom_class() this.$el.html(@bucket.render().el) this mounted: () -> true dock: () -> @parent.dock() root_item: () -> @dock().root_item() class Editor.EditorModule.DockModule.ElementBay extends Editor.EditorModule.DockModule.BoardBay initialize: (options) -> super(options) _this = this i = 0 _.each @elements(), (element) -> tab = new Editor.EditorModule.DockModule.ElementBoard({ parent: _this, index: i, name: element.item_name(), element: element }) _this.add_tab( tab, new Editor.EditorModule.DockModule.TabModule.ElementBoardLabel({parent: tab, name: element.item_name()}), new Editor.EditorModule.DockModule.TabModule.ElementBoardBody({parent: tab}) ) i++ render: () -> this.$el.html('') _this = this _.each @tabs, (tab) -> _this.$el.append(tab.label.render().el) this.$el.append('bdy') rb = new Tag.RowBreak() this.$el.append(rb.render().el) this elements: () -> @root_item().scenario_elements() class Editor.EditorModule.DockModule.TabModule.ElementBayLabel extends Editor.EditorModule.DockModule.TabModule.BayLabel class Editor.EditorModule.DockModule.TabModule.ElementBayBody extends Editor.EditorModule.DockModule.TabModule.BayBody class Editor.EditorModule.DockModule.ElementBoard extends Editor.EditorModule.DockModule.Board initialize: (options) -> super(options) @element = options.element class Editor.EditorModule.DockModule.TabModule.ElementBoardLabel extends Editor.EditorModule.DockModule.TabModule.BoardLabel class Editor.EditorModule.DockModule.TabModule.ElementBoardBody extends Editor.EditorModule.DockModule.TabModule.BoardBody initialize: (options) -> super(options) @form = new Locmare.Bucket({ bucket_name: @element().item_name(), item: @element(), mounted: @mounted(), submit: null, operators: @operators }) @bucket = new Editor.EditorModule.DockModule.FormBucket({ parent: this, form: @form }) mounted: () -> true element: () -> @parent.element class Editor.EditorModule.DockModule.PriorityBay extends Editor.EditorModule.DockModule.BoardBay initialize: (options) -> super(options) _this = this i = 0 _.each @elements(), (element) -> tab = new Editor.EditorModule.DockModule.PriorityBoard({ parent: this, index: i, name: element.item_name(), element: element }) _this.add_tab( tab, new Editor.EditorModule.DockModule.TabModule.PriorityBoardLabel({parent: tab, name: element.item_name()}), new Editor.EditorModule.DockModule.TabModule.PriorityBoardBody({parent: tab}) ) i++ elements: () -> @root_item().scenario_elements() class_name: () -> "zsort-box" class Editor.EditorModule.DockModule.TabModule.PriorityBayLabel extends Editor.EditorModule.DockModule.TabModule.BayLabel class Editor.EditorModule.DockModule.TabModule.PriorityBayBody extends Editor.EditorModule.DockModule.TabModule.BayBody class Editor.EditorModule.DockModule.PriorityBoard extends Editor.EditorModule.DockModule.Board initialize: (options) -> super(options) @element = options.element mounted: () -> false class Editor.EditorModule.DockModule.TabModule.PriorityBoardLabel extends Editor.EditorModule.DockModule.TabModule.BoardLabel class Editor.EditorModule.DockModule.TabModule.PriorityBoardBody extends Editor.EditorModule.DockModule.TabModule.BoardBody initialize: (options) -> super(options) @bucket = new Editor.EditorModule.DockModule.PriorityBucket({ parent: this }) # form_manager = Pettanr::Application::manifest.form_managers[self.root_item.form_name] # form = form_manager.open self.root_item, @dock_body.dock.editor.operators, mounted # bucket = Bucket.new self,form class Editor.EditorModule.DockModule.ScenarioBay extends Editor.EditorModule.DockModule.BoardBay initialize: (options) -> super(options) _this = this i = 0 _.each @elements(), (element) -> tab = new Editor.EditorModule.DockModule.ScenarioBoard({ parent: this, index: i, name: element.item_name(), element: element }) _this.add_tab( tab, new Editor.EditorModule.DockModule.TabModule.ScenarioBoardLabel({parent: tab, caption: element.item_name()}), new Editor.EditorModule.DockModule.TabModule.ScenarioBoardBody({parent: tab}) ) i++ elements: () -> @root_item().scenario_elements() class_name: () -> "tsort-box" class Editor.EditorModule.DockModule.TabModule.ScenarioBayLabel extends Editor.EditorModule.DockModule.TabModule.BayLabel class Editor.EditorModule.DockModule.TabModule.ScenarioBayBody extends Editor.EditorModule.DockModule.TabModule.BayBody class Editor.EditorModule.DockModule.ScenarioBoard extends Editor.EditorModule.DockModule.Board initialize: (options) -> super(options) @element = options.element class Editor.EditorModule.DockModule.TabModule.ScenarioBoardLabel extends Editor.EditorModule.DockModule.TabModule.BoardLabel class Editor.EditorModule.DockModule.TabModule.ScenarioBoardBody extends Editor.EditorModule.DockModule.TabModule.BoardBody initialize: (options) -> super(options) @bucket = new Editor.EditorModule.DockModule.ScenarioBucket({ parent: this }) class Editor.EditorModule.DockModule.NewBay extends Editor.EditorModule.DockModule.BoardBay class Editor.EditorModule.DockModule.TabModule.NewBayLabel extends Editor.EditorModule.DockModule.TabModule.BayLabel class Editor.EditorModule.DockModule.TabModule.NewBayBody extends Editor.EditorModule.DockModule.TabModule.BayBody class Editor.EditorModule.DockModule.NewBoard extends Editor.EditorModule.DockModule.Board class Editor.EditorModule.DockModule.TabModule.NewBoardLabel extends Editor.EditorModule.DockModule.TabModule.BoardLabel class Editor.EditorModule.DockModule.TabModule.NewBoardBody extends Editor.EditorModule.DockModule.TabModule.BoardBody initialize: (options) -> super(options) # form_manager = Pettanr::Application::manifest.form_managers[self.root_item.form_name] # form = form_manager.open self.root_item, @dock_body.dock.editor.operators, mounted # bucket = Bucket.new self,form