2 # spot: no opacity element
\r
3 class Pettanr.Views.Panel.Body extends Pettanr.View
\r
6 initialize: (options) ->
\r
7 @panel = options.panel
\r
9 @class_name = 'pettanr-comic-panel'
\r
12 _.each @panel.zorderd_elements(), (element) =>
\r
13 @add_element(element)
\r
16 this.$el.addClass(@class_name)
\r
19 if not @is_visible()
\r
21 content: I18n.t('panels.hidden'),
\r
22 class_name: 'hidden'
\r
24 this.$el.html(tag.render().el)
\r
28 attr = {style: Pettanr.to_style(@style())}
\r
34 render_element: (index) ->
\r
36 add_element: (element) ->
\r
37 index = element.get('z') - 1
\r
38 c = @element_class(element)
\r
39 view = new c({element: element, root: @panel, spot: @spot})
\r
41 @views.splice(index, 0, view)
\r
43 this.$el.append(view.render().el)
\r
46 add_event: (view) ->
\r
47 @listenTo(view, 'http_get', @http_get)
\r
49 remove_element: (element) ->
\r
50 _.each @views, (view) =>
\r
51 if view.element.cid == element.cid
\r
54 element_class: (element) ->
\r
55 Pettanr.Views[element.singular()].Element
\r
58 Pettanr.to_s(value) + 'px'
\r
62 'width': @disp(@panel.get('width')),
\r
63 'height': @disp(@panel.get('height')),
\r
64 'border-style': 'solid',
\r
65 'border-width': @disp(@panel.get('border')),
\r
66 'border-color': 'black',
\r
67 'background-color': 'white'
\r
71 @trigger('http_get', url)
\r
73 class Pettanr.Views.Panel.Body.Edit extends Pettanr.Views.Panel.Body
\r
75 initialize: (options) ->
\r
77 @listenTo(@panel, 'input:width', @restyle)
\r
78 @listenTo(@panel, 'input:height', @restyle)
\r
79 @listenTo(@panel, 'input:border', @restyle)
\r
80 @listenTo(@panel, 'active', @active)
\r
81 @listenTo(@panel, 'inactive', @inactive)
\r
82 @listenTo(this, 'active', @active)
\r
83 @listenTo(this, 'inactive', @inactive)
\r
87 this.$el.resizable {
\r
88 stop: (event, ui) =>
\r
89 w = parseInt(this.$el.width())
\r
90 h = parseInt(this.$el.height())
\r
91 @panel.set({width: w, height: h}, {silent: true})
\r
92 @panel.trigger('resize')
\r
97 this.$el.mouseover ->
\r
98 _this.trigger('active')
\r
99 this.$el.mouseout ->
\r
100 _this.trigger('inactive')
\r
104 true # show everytime as editor
\r
108 $('.ui-resizable-handle', this.el).map ->
\r
109 if $(@).parent().hasClass(n)
\r
110 $(@).css('display', 'block')
\r
114 $('.ui-resizable-handle', this.el).map ->
\r
115 if $(@).parent().hasClass(n)
\r
116 $(@).css('display', 'none')
\r
118 element_class: (element) ->
\r
119 Pettanr.Views[element.singular()].Element.Edit
\r
121 # stop listen link msg
\r
122 add_event: (view) ->
\r