class PettanrBalloonRHelper confirm_confirm_confirm = () -> confirm( ) @WritingFormat = window.PettanrWritingFormat @speech_balloon_tag_id = (element_part) -> window.PettanrEditor.element_tag_id(element_part) @speech_balloon_template_id = (element_part) -> trace = PettanrBalloonRHelper.speech_balloon_tag_id(element_part) parseInt($(trace + 'speech_balloon_template_id').val()) @template_class = (element_part) -> id = PettanrBalloonRHelper.speech_balloon_template_id(element_part) engine_name = window.PettanrSpeechBalloonTemplate.speech_balloon_templates[id] window.PettanrSpeechBalloonTemplate.scripts[engine_name] @settings = (element_part) -> id = PettanrBalloonRHelper.speech_balloon_template_id(element_part) window.PettanrSpeechBalloonTemplate.settings(id) @r_step = (element_part) -> settings = PettanrBalloonRHelper.settings(element_part) settings['speech_balloon']['r_step'] @system_picture_id = (element_part, idx) -> settings = PettanrBalloonRHelper.settings(element_part) settings[idx]['balloon']['system_picture_id'] # balloon r helper @balloon_next_index = (input_r, r_step, d) -> v = parseInt(input_r.val()) + r_step * d tr = v % 360 tr = 360 + tr if tr < 0 offset = r_step / 2.0 idx = Math.floor(((tr + offset) % 360) / r_step) if idx == 0 ir = 0 else if v < 0 ir = Math.floor(idx * r_step) - 360 else ir = Math.floor(idx * r_step) input_r.val(ir) idx @balloon_index = (input_r, r_step) -> v = parseInt(input_r.val()) tr = v % 360 tr = 360 + tr if tr < 0 offset = r_step / 2.0 idx = Math.floor(((tr + offset) % 360) / r_step) idx @refresh_balloon = (balloon_trace, idx) -> bln = $(balloon_trace) sp_id = PettanrBalloonRHelper.system_picture_id(bln, idx) fn = '/system_pictures/' + String(sp_id) + '.png' ofn = bln.attr('src') if fn == ofn else if bln.attr('src') bln.attr('src', fn) $(balloon_trace + 'system_picture_id').val(sp_id) @add_helper = (wrapper) -> editor = window.PettanrEditor wrapper.map -> panel = $(editor.panel_tag_id($(@))) if editor.is_editable(panel) $(@).css('display', 'block') else $(@).css('display', 'none') trace = editor.element_part_tag_id(wrapper) $(trace + 'r').map -> panel = $(editor.panel_tag_id($(@))) if editor.is_editable(panel) $(@).spinner { spin: ( event, ui ) -> balloon_trace = editor.element_part_tag_id($(@)) r_step = PettanrBalloonRHelper.r_step($(@)) input_r = $(balloon_trace + 'r') idx = PettanrBalloonRHelper.balloon_index(input_r, r_step) PettanrBalloonRHelper.refresh_balloon(balloon_trace, idx) } $('.r-down', wrapper).map -> $(@).click -> wrapper = $(@).parent() balloon_trace = editor.element_part_tag_id($(wrapper)) r_step = PettanrBalloonRHelper.r_step(wrapper) input_r = $(balloon_trace + 'r') idx = PettanrBalloonRHelper.balloon_next_index(input_r, r_step, -1) PettanrBalloonRHelper.refresh_balloon(balloon_trace, idx) false $('.r-up', wrapper).map -> $(@).click -> wrapper = $(@).parent() balloon_trace = editor.element_part_tag_id($(wrapper)) r_step = PettanrBalloonRHelper.r_step(wrapper) input_r = $(balloon_trace + 'r') idx = PettanrBalloonRHelper.balloon_next_index(input_r, r_step, 1) PettanrBalloonRHelper.refresh_balloon(balloon_trace, idx) false $('.r-reset', wrapper).map -> $(@).click -> wrapper = $(@).parent() balloon_trace = editor.element_part_tag_id($(wrapper)) input_r = $(balloon_trace + 'r') input_r.val(0) PettanrBalloonRHelper.refresh_balloon(balloon_trace, 0) false # sync view $(trace + 'r').focusout -> balloon_trace = editor.element_part_tag_id($(@)) r_step = PettanrBalloonRHelper.r_step($(@)) input_r = $(balloon_trace + 'r') idx = PettanrBalloonRHelper.balloon_index(input_r, r_step) PettanrBalloonRHelper.refresh_balloon(balloon_trace, idx) @PettanrBalloonRHelper = PettanrBalloonRHelper