OSDN Git Service

51e22d8c4e50972498b4822330b9d59222a69c78
[pettanr/pettanr.git] / app / assets / javascripts / addons / circle_speech_balloons / init.js.coffee
1 class Pettanr.CircleSpeechBalloon\r
2   \r
3 class Pettanr.CircleSpeechBalloon.SpeechBalloon extends Backbone.Model\r
4   # OMG... this model is not petanized item\r
5   # it means that can't change name\r
6   base_name: () ->\r
7     "circle_speech_balloons"\r
8   \r
9   baseName: () ->\r
10     "CircleSpeechBalloon"\r
11   \r
12   item_name: () ->\r
13     @base_name() + '/speech_balloon'\r
14   \r
15   table_name: () ->\r
16     @base_name() + '/speech_balloons'\r
17   \r
18   singular: () ->\r
19     @baseName() + '/SpeechBalloon'\r
20   \r
21   plural: () ->\r
22     @baseName() + '/SpeechBalloons'\r
23   \r
24   engine_name: () ->\r
25     @table_name()\r
26   \r
27   form_name: () ->\r
28     @engine_name() + '/speech_balloons'\r
29 \r
30 class Pettanr.CircleSpeechBalloon.Balloon extends Backbone.Model\r
31   # OMG... this model is not petanized item\r
32   # it means that can't change name\r
33   base_name: () ->\r
34     "circle_speech_balloons"\r
35   \r
36   baseName: () ->\r
37     "CircleSpeechBalloon"\r
38   \r
39   item_name: () ->\r
40     @base_name() + '/balloon'\r
41   \r
42   table_name: () ->\r
43     @base_name() + '/balloons'\r
44   \r
45   singular: () ->\r
46     @baseName() + '/Balloon'\r
47   \r
48   plural: () ->\r
49     @baseName() + '/Balloons'\r
50   \r
51   engine_name: () ->\r
52     @table_name()\r
53   \r
54   form_name: () ->\r
55     @engine_name() + '/balloons'\r
56 \r
57 class Pettanr.CircleSpeechBalloon.Speech extends Backbone.Model\r
58   # OMG... this model is not petanized item\r
59   # it means that can't change name\r
60   base_name: () ->\r
61     "circle_speech_balloons"\r
62   \r
63   baseName: () ->\r
64     "CircleSpeechBalloon"\r
65   \r
66   item_name: () ->\r
67     @base_name() + '/speech'\r
68   \r
69   table_name: () ->\r
70     @base_name() + '/speeches'\r
71   \r
72   singular: () ->\r
73     @baseName() + '/Speech'\r
74   \r
75   plural: () ->\r
76     @baseName() + '/Speeches'\r
77   \r
78   engine_name: () ->\r
79     @table_name()\r
80   \r
81   form_name: () ->\r
82     @engine_name() + '/speeches'\r
83 \r
84 class Pettanr.CircleSpeechBalloon.SpeechBalloonModule\r
85   supply_default: (templates) ->\r
86     @templates = templates\r
87   \r
88   speech_balloon_extend: () ->\r
89     @new_speech_balloon() if not @sbex\r
90     @sbex\r
91   \r
92   speech_balloon_extend_setter: (params) ->\r
93     # load attributes\r
94     @sbex = new Pettanr.CircleSpeechBalloon.SpeechBalloon(params)\r
95     # no supply default params\r
96   \r
97   new_speech_balloon: (params = {}) -> \r
98     @sbex = new Pettanr.CircleSpeechBalloon.SpeechBalloon(params)\r
99     @sbex.supply_default()\r
100   \r
101 class Pettanr.CircleSpeechBalloon.BalloonModule\r
102   supply_default: (templates) ->\r
103     @templates = templates\r
104     @set({\r
105       x: 0,\r
106       y: 0,\r
107       width: @parsed_settings()['speech_balloon']['default_width'],\r
108       eight: @parsed_settings()['speech_balloon']['default_height'],\r
109       r: @parsed_settings()['speech_balloon']['default_r']\r
110     })\r
111     @select_system_picture()\r
112   \r
113   balloon_extend: () ->\r
114     @new_balloon() if not @bex\r
115     @bex\r
116   \r
117   balloon_extend_setter: (params) ->\r
118     # load attributes\r
119     @bex = new Pettanr.CircleSpeechBalloon.Balloon(params)\r
120     # no supply default params\r
121   \r
122   new_balloon: (params = {}) -> \r
123     @bex = new Pettanr.CircleSpeechBalloon.Balloon(params)\r
124     @bex.supply_default()\r
125   \r
126   parsed_settings: () ->\r
127     return @parsed if @parsed\r
128     @parsed = @templates.speech_balloon_template.parsed_settings()\r
129   \r
130   select_system_picture: () ->\r
131     tr = @get('r') % 360\r
132     tr = 360 + tr if tr < 0\r
133     offset = @r_step() / 2.0\r
134     idx = Pettanr.to_i(((tr + offset) % 360) / @r_step())\r
135     sid = @parsed_settings()[Pettanr.to_s(idx)]['balloon']['system_picture_id']\r
136     @set('system_picture_id', sid)\r
137     sid\r
138   \r
139   r_step: () ->\r
140     @parsed_settings()['speech_balloon']['r_step']\r
141   \r
142 class Pettanr.CircleSpeechBalloon.SpeechModule\r
143   supply_default: (templates) ->\r
144     @templates = templates\r
145     s = @parsed_settings()['0']['speech']\r
146     @set({\r
147       x: s['x_rate'],\r
148       y: s['y_rate'],\r
149       width: s['width_rate'],\r
150       height: s['height_rate'],\r
151       quotes: '',\r
152       font_size: @parsed_settings()['speech_balloon']['default_font_size'],\r
153       text_align: @parsed_settings()['speech_balloon']['default_text_align'],\r
154       fore_color: @parsed_settings()['speech_balloon']['default_fore_color'],\r
155     })\r
156   \r
157   speech_extend: () ->\r
158     @sex\r
159   \r
160   speech_extend_setter: (params) ->\r
161     # load attributes\r
162     @sex = new Pettanr.CircleSpeechBalloon.Speech(params)\r
163     # no supply default params\r
164   \r
165   new_speech: (params = {}) -> \r
166     @sex = new Pettanr.CircleSpeechBalloon.Speech(params)\r
167     @sex.supply_default()\r
168   \r
169   parsed_settings: () ->\r
170     return @parsed if @parsed\r
171     @parsed = @templates.speech_balloon_template.parsed_settings()\r
172   \r
173   arrayed_quotes: () ->\r
174     q = if Pettanr.is_blank(@get('quotes'))\r
175       Pettanr.to_s(@parsed_settings()['speech_balloon']['quotes'])\r
176     else\r
177       @get('quotes')\r
178     q.split(' ')\r
179   \r