1 class Locmare.FormModule.FieldModule.HelperModule.TailAngle extends Locmare.FormModule.FieldModule.HelperModule.Base
\r
5 initialize: (options) ->
\r
7 @down = new Locmare.FormModule.FieldModule.HelperModule.TailAngleModule.Down({field: @field, helper: this})
\r
8 @up = new Locmare.FormModule.FieldModule.HelperModule.TailAngleModule.Up({field: @field, helper: this})
\r
9 @reset = new Locmare.FormModule.FieldModule.HelperModule.TailAngleModule.Reset({field: @field, helper: this})
\r
10 @speech_balloon_template = new Pettanr.SpeechBalloonTemplate({
\r
11 id: @field.item().get('speech_balloon_template_id')
\r
13 @speech_balloon_template.fetch({cache: true}).done =>
\r
14 @r_step = @_r_step()
\r
18 style: 'display: block'
\r
20 this.$el.attr(@attr)
\r
22 this.$el.append(@down.render().el)
\r
23 this.$el.append(@up.render().el)
\r
24 this.$el.append(@reset.render().el)
\r
28 @speech_balloon_template.parsed_settings()
\r
31 settings = @settings()
\r
32 settings['speech_balloon']['r_step']
\r
34 system_picture_id: (idx) ->
\r
35 settings = @settings()
\r
36 settings[idx]['balloon']['system_picture_id']
\r
40 balloon_next_index: (d) ->
\r
41 r_val = @field.val()
\r
42 v = parseInt(r_val) + @r_step * d
\r
44 tr = 360 + tr if tr < 0
\r
45 offset = @r_step / 2.0
\r
46 idx = Math.floor(((tr + offset) % 360) / @r_step)
\r
51 ir = Math.floor(idx * @r_step) - 360
\r
53 ir = Math.floor(idx * @r_step)
\r
55 @field.tag.$el.val(ir)
\r
58 balloon_index: () ->
\r
59 v = parseInt(@field.val())
\r
61 tr = 360 + tr if tr < 0
\r
62 offset = @r_step / 2.0
\r
63 idx = Math.floor(((tr + offset) % 360) / @r_step)
\r
66 refresh_balloon: (idx) ->
\r
68 sp_id = @system_picture_id(idx)
\r
69 fn = '/system_pictures/' + String(sp_id) + '.png'
\r
70 ofn = bln.attr('src')
\r
74 bln.attr('src', fn)
\r
75 $(balloon_trace + 'system_picture_id').val(sp_id)
\r
77 class Locmare.FormModule.FieldModule.HelperModule.TailAngleModule
\r
78 class Locmare.FormModule.FieldModule.HelperModule.TailAngleModule.Down extends Backbone.View
\r
85 initialize: (options) ->
\r
86 @field = options.field
\r
87 @helper = options.helper
\r
94 idx = @helper.balloon_next_index(-1)
\r
95 @helper.refresh_balloon(idx)
\r
96 @field.trigger('change')
\r
99 class Locmare.FormModule.FieldModule.HelperModule.TailAngleModule.Up extends Backbone.View
\r
106 initialize: (options) ->
\r
107 @field = options.field
\r
108 @helper = options.helper
\r
115 idx = @helper.balloon_next_index(1)
\r
116 @helper.refresh_balloon(idx)
\r
117 @field.trigger('change')
\r
120 class Locmare.FormModule.FieldModule.HelperModule.TailAngleModule.Reset extends Backbone.View
\r
122 className: 'r-reset'
\r
127 initialize: (options) ->
\r
128 @field = options.field
\r
129 @helper = options.helper
\r
132 this.$el.html('reset')
\r
136 @field.tag.$el.val(0)
\r
137 @field.trigger('change')
\r
138 @helper.refresh_balloon(0)
\r