1 class PettanrBalloonRHelper
\r
2 confirm_confirm_confirm = () ->
\r
4 @WritingFormat = window.PettanrWritingFormat
\r
6 @speech_balloon_tag_id = (element_part) ->
\r
7 window.PettanrEditor.element_tag_id(element_part)
\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
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
18 @settings = (element_part) ->
\r
19 id = PettanrBalloonRHelper.speech_balloon_template_id(element_part)
\r
20 window.PettanrSpeechBalloonTemplate.settings(id)
\r
22 @r_step = (element_part) ->
\r
23 settings = PettanrBalloonRHelper.settings(element_part)
\r
24 settings['speech_balloon']['r_step']
\r
26 @system_picture_id = (element_part, idx) ->
\r
27 settings = PettanrBalloonRHelper.settings(element_part)
\r
28 settings[idx]['balloon']['system_picture_id']
\r
32 @balloon_next_index = (input_r, r_step, d) ->
\r
33 v = parseInt(input_r.val()) + r_step * d
\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
42 ir = Math.floor(idx * r_step) - 360
\r
44 ir = Math.floor(idx * r_step)
\r
47 @balloon_index = (input_r, r_step) ->
\r
48 v = parseInt(input_r.val())
\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
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
62 bln.attr('src', fn)
\r
63 $(balloon_trace + 'system_picture_id').val(sp_id)
\r
65 @add_helper = (wrapper) ->
\r
66 editor = window.PettanrEditor
\r
69 panel = $(editor.panel_tag_id($(@)))
\r
70 if editor.is_editable(panel)
\r
71 $(@).css('display', 'block')
\r
73 $(@).css('display', 'none')
\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
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
88 $('.r-down', wrapper).map ->
\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
97 $('.r-up', wrapper).map ->
\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
106 $('.r-reset', wrapper).map ->
\r
108 wrapper = $(@).parent()
\r
109 balloon_trace = editor.element_part_tag_id($(wrapper))
\r
110 input_r = $(balloon_trace + 'r')
\r
112 PettanrBalloonRHelper.refresh_balloon(balloon_trace, 0)
\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
123 @PettanrBalloonRHelper = PettanrBalloonRHelper
\r