OSDN Git Service

fix editor's speechballoon event
[pettanr/pettanr.git] / app / assets / javascripts / locmare / form / field / helper / tail_angle.js.coffee
index b4ee5e7..8cd1f1a 100644 (file)
@@ -10,9 +10,8 @@ class Locmare.FormModule.FieldModule.HelperModule.TailAngle extends Locmare.Form
     @speech_balloon_template = new Pettanr.SpeechBalloonTemplate({\r
       id: @field.item().get('speech_balloon_template_id')\r
     })\r
-    _this = this\r
-    @speech_balloon_template.fetch().done ->\r
-      _this.r_step = _this._r_step()\r
+    @speech_balloon_template.fetch({cache: true}).done =>\r
+      @r_step = @_r_step()\r
   \r
   render: () ->\r
     @attr = {\r
@@ -38,7 +37,7 @@ class Locmare.FormModule.FieldModule.HelperModule.TailAngle extends Locmare.Form
   \r
   # balloon r helper\r
   \r
-  balloon_next_index: (d)  ->\r
+  balloon_next_index: (d) ->\r
     r_val = @field.val()\r
     v = parseInt(r_val) + @r_step * d\r
     tr = v % 360\r
@@ -56,7 +55,7 @@ class Locmare.FormModule.FieldModule.HelperModule.TailAngle extends Locmare.Form
     @field.tag.$el.val(ir)\r
     idx\r
   \r
-  balloon_index: ()  ->\r
+  balloon_index: () ->\r
     v = parseInt(@field.val())\r
     tr = v % 360\r
     tr = 360 + tr if tr < 0\r
@@ -64,16 +63,12 @@ class Locmare.FormModule.FieldModule.HelperModule.TailAngle extends Locmare.Form
     idx = Math.floor(((tr + offset) % 360) / @r_step)\r
     idx\r
   \r
-  refresh_balloon: (idx)  ->\r
-    return\r
+  refresh_balloon: (idx) ->\r
     sp_id = @system_picture_id(idx)\r
-    fn = '/system_pictures/' + String(sp_id) + '.png'\r
-    ofn = bln.attr('src')\r
-    if fn == ofn\r
-    else\r
-      if bln.attr('src')\r
-        bln.attr('src', fn) \r
-        $(balloon_trace + 'system_picture_id').val(sp_id)\r
+    @field.item().set({\r
+      system_picture_id: sp_id\r
+    }, {silent: true})\r
+    @field.item().trigger('input:r')\r
   \r
 class Locmare.FormModule.FieldModule.HelperModule.TailAngleModule\r
 class Locmare.FormModule.FieldModule.HelperModule.TailAngleModule.Down extends Backbone.View\r
@@ -94,6 +89,7 @@ class Locmare.FormModule.FieldModule.HelperModule.TailAngleModule.Down extends B
   click: () -> \r
     idx = @helper.balloon_next_index(-1)\r
     @helper.refresh_balloon(idx)\r
+    @field.trigger('change')\r
     false\r
     \r
 class Locmare.FormModule.FieldModule.HelperModule.TailAngleModule.Up extends Backbone.View\r
@@ -114,6 +110,7 @@ class Locmare.FormModule.FieldModule.HelperModule.TailAngleModule.Up extends Bac
   click: () -> \r
     idx = @helper.balloon_next_index(1)\r
     @helper.refresh_balloon(idx)\r
+    @field.trigger('change')\r
     false\r
   \r
 class Locmare.FormModule.FieldModule.HelperModule.TailAngleModule.Reset extends Backbone.View\r
@@ -133,6 +130,7 @@ class Locmare.FormModule.FieldModule.HelperModule.TailAngleModule.Reset extends
   \r
   click: () -> \r
     @field.tag.$el.val(0)\r
+    @field.trigger('change')\r
     @helper.refresh_balloon(0)\r
     false\r
   \r