class Pettanr.Views.GroundColor.NewElement extends Backbone.View tagName: 'div' className: 'new-element-body' initialize: (options) -> @parent = options.parent @target_model = options.target_model @pick_model = @target_model.pick_model() clear: () -> this.$el.html('new or inspire') this render: (form) -> this.$el.html('') this.$el.append(@form.render().el) this pick: (item) -> if item.item_name() == @target_model.item_name() # Inspire new_item = new @target_model(item.attributes) else if @target_model.is_traceable(item.item_name()) # Trace n = @target_model['trace_from_' + item.item_name()] n() else if item.item_name() == @target_model.pick_item_name() # Pick model = @target_model.pick_model() new_item = new model() @dialog().stop() @set_form(new_item) @trigger('pick', new_item) set_form: (item) -> @form = Locmare.Form.factory({ form_name: item.item_name(), use_name: 'default' item: item, element_form: true, submit: null, operators: @editor().operators, }) dock: () -> @parent.dock() editor: () -> @dock().editor() dialog: () -> @editor().dialog