OSDN Git Service

7ccb099c583ba71206e2ab7b1b7a56b408b0a106
[pettanr/pettanr.git] / app / assets / javascripts / views / speeches / element.js.coffee
1 class Pettanr.Views.Speech.Element extends Backbone.View\r
2   tagName: 'div'\r
3   className: 'pettanr-comic-speech'\r
4   \r
5   initialize: (options) ->\r
6     @element = options.element\r
7     @root = options.root\r
8     @spot = options.spot\r
9     @speech_balloon = options.parent\r
10     @div = new Tag.Div({\r
11       attr: {\r
12         style: Pettanr.to_style(@inner_style())\r
13       }, \r
14       content: @element.scenario(),\r
15       class_name: 'pettanr-comic-speech-inner'\r
16     })\r
17   \r
18   render: () ->\r
19     @outer_attr = {style: Pettanr.to_style(@outer_style())}\r
20     this.$el.attr(@outer_attr)\r
21     this.$el.html(@div.render().el)\r
22     this\r
23   \r
24   outer_style: () ->\r
25     {\r
26       top: @element.get('y'), \r
27       left: @element.get('x'), \r
28       width: @element.get('width'), \r
29       height: @element.get('height')\r
30     }\r
31   \r
32   inner_style: () ->\r
33     {\r
34       'font-size': Pettanr.to_s(@element.get('font_size')) + 'em',\r
35       'text-align': @element.text_align_text(), \r
36       color: '#' + ('000000' + Pettanr.to_s(@element.get('fore_color'))).slice(-6)\r
37     }\r
38   \r
39 class Pettanr.Views.Speech.Element.Edit extends Pettanr.Views.Speech.Element\r
40   \r
41   initialize: (options) ->\r
42     super(options)\r
43   \r
44   render: () ->\r
45     super()\r
46     img = @speech_balloon.balloon_view.$el\r
47     @div.$el.mouseover -> \r
48       $('.ui-resizable-handle', img.parent()).map ->\r
49         $(@).css('display', 'block')\r
50     @div.$el.mouseout -> \r
51       $('.ui-resizable-handle', img.parent()).map ->\r
52         $(@).css('display', 'none')\r
53     this\r
54   \r