OSDN Git Service

t#31973:hide r helper on create
[pettanr/pettanr.git] / app / assets / javascripts / helpers / balloon_r.js.coffee
1 class PettanrBalloonRHelper\r
2   confirm_confirm_confirm = () ->\r
3     confirm(  )\r
4   @WritingFormat = window.PettanrWritingFormat\r
5   \r
6   @speech_balloon_tag_id = (element_part) ->\r
7     window.PettanrEditor.element_tag_id(element_part)\r
8   \r
9   @speech_balloon_template_id = (element_part) ->\r
10     trace = PettanrBalloonRHelper.speech_balloon_tag_id(element_part)\r
11     parseInt($(trace + 'speech_balloon_template_id').val())\r
12   \r
13   @template_class = (element_part) ->\r
14     id = PettanrBalloonRHelper.speech_balloon_template_id(element_part)\r
15     engine_name = window.PettanrSpeechBalloonTemplate.speech_balloon_templates[id]\r
16     window.PettanrSpeechBalloonTemplate.scripts[engine_name]\r
17   \r
18   @settings = (element_part) ->\r
19     id = PettanrBalloonRHelper.speech_balloon_template_id(element_part)\r
20     window.PettanrSpeechBalloonTemplate.settings(id)\r
21   \r
22   @r_step = (element_part) ->\r
23     settings = PettanrBalloonRHelper.settings(element_part)\r
24     settings['speech_balloon']['r_step']\r
25   \r
26   @system_picture_id = (element_part, idx) ->\r
27     settings = PettanrBalloonRHelper.settings(element_part)\r
28     settings[idx]['balloon']['system_picture_id']\r
29   \r
30   # balloon r helper\r
31   \r
32   @balloon_next_index = (input_r, r_step, d)  ->\r
33     v = parseInt(input_r.val()) + r_step * d\r
34     tr = v % 360\r
35     tr = 360 + tr if tr < 0\r
36     offset = r_step / 2.0\r
37     idx = Math.floor(((tr + offset) % 360) / r_step)\r
38     if idx == 0\r
39       ir = 0\r
40     else\r
41       if v < 0\r
42         ir = Math.floor(idx * r_step) - 360\r
43       else\r
44         ir = Math.floor(idx * r_step)\r
45     input_r.val(ir)\r
46     idx\r
47   @balloon_index = (input_r, r_step)  ->\r
48     v = parseInt(input_r.val())\r
49     tr = v % 360\r
50     tr = 360 + tr if tr < 0\r
51     offset = r_step / 2.0\r
52     idx = Math.floor(((tr + offset) % 360) / r_step)\r
53     idx\r
54   @refresh_balloon = (balloon_trace, idx)  ->\r
55     bln = $(balloon_trace)\r
56     sp_id = PettanrBalloonRHelper.system_picture_id(bln, idx)\r
57     fn = '/system_pictures/' + String(sp_id) + '.png'\r
58     ofn = bln.attr('src')\r
59     if fn == ofn\r
60     else\r
61       if bln.attr('src')\r
62         bln.attr('src', fn) \r
63         $(balloon_trace + 'system_picture_id').val(sp_id)\r
64   \r
65   @add_helper = (wrapper) ->\r
66     editor = window.PettanrEditor\r
67     \r
68     wrapper.map -> \r
69       panel = $(editor.panel_tag_id($(@)))\r
70       if editor.is_editable(panel)\r
71         $(@).css('display', 'block')\r
72       else\r
73         $(@).css('display', 'none')\r
74     \r
75     trace = editor.element_part_tag_id(wrapper)\r
76     $(trace + 'r').map -> \r
77       panel = $(editor.panel_tag_id($(@)))\r
78       if editor.is_editable(panel)\r
79         $(@).spinner {\r
80           spin: ( event, ui ) ->\r
81             balloon_trace = editor.element_part_tag_id($(@))\r
82             r_step = PettanrBalloonRHelper.r_step($(@))\r
83             input_r = $(balloon_trace + 'r')\r
84             idx = PettanrBalloonRHelper.balloon_index(input_r, r_step)\r
85             PettanrBalloonRHelper.refresh_balloon(balloon_trace, idx)\r
86         }\r
87     \r
88     $('.r-down', wrapper).map -> \r
89       $(@).click -> \r
90         wrapper = $(@).parent()\r
91         balloon_trace = editor.element_part_tag_id($(wrapper))\r
92         r_step = PettanrBalloonRHelper.r_step(wrapper)\r
93         input_r = $(balloon_trace + 'r')\r
94         idx = PettanrBalloonRHelper.balloon_next_index(input_r, r_step, -1)\r
95         PettanrBalloonRHelper.refresh_balloon(balloon_trace, idx)\r
96         false\r
97     $('.r-up', wrapper).map -> \r
98       $(@).click -> \r
99         wrapper = $(@).parent()\r
100         balloon_trace = editor.element_part_tag_id($(wrapper))\r
101         r_step = PettanrBalloonRHelper.r_step(wrapper)\r
102         input_r = $(balloon_trace + 'r')\r
103         idx = PettanrBalloonRHelper.balloon_next_index(input_r, r_step, 1)\r
104         PettanrBalloonRHelper.refresh_balloon(balloon_trace, idx)\r
105         false\r
106     $('.r-reset', wrapper).map -> \r
107       $(@).click -> \r
108         wrapper = $(@).parent()\r
109         balloon_trace = editor.element_part_tag_id($(wrapper))\r
110         input_r = $(balloon_trace + 'r')\r
111         input_r.val(0)\r
112         PettanrBalloonRHelper.refresh_balloon(balloon_trace, 0)\r
113         false\r
114     \r
115     # sync view \r
116     $(trace + 'r').focusout ->\r
117       balloon_trace = editor.element_part_tag_id($(@))\r
118       r_step = PettanrBalloonRHelper.r_step($(@))\r
119       input_r = $(balloon_trace + 'r')\r
120       idx = PettanrBalloonRHelper.balloon_index(input_r, r_step)\r
121       PettanrBalloonRHelper.refresh_balloon(balloon_trace, idx)\r
122   \r
123 @PettanrBalloonRHelper = PettanrBalloonRHelper\r