OSDN Git Service

Merge branch 'v06sheet' of git.sourceforge.jp:/gitroot/pettanr/pettanr into v06sheet
[pettanr/pettanr.git] / app / assets / javascripts / configurations.js.coffee
diff --git a/app/assets/javascripts/configurations.js.coffee b/app/assets/javascripts/configurations.js.coffee
new file mode 100644 (file)
index 0000000..091a42a
--- /dev/null
@@ -0,0 +1,1486 @@
+@configurations = {\r
+  models: {\r
+    Panel: 'panel',\r
+    panel: {\r
+      class_name: 'Panel',\r
+      table_name: 'panels',\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        width: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 1,\r
+          }\r
+        },\r
+        height: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 1,\r
+          }\r
+        },\r
+        border: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 0,\r
+          }\r
+        },\r
+        caption: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        publish: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        author_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      }\r
+    },\r
+    PanelPicture: 'panel_picture',\r
+    panel_picture: {\r
+      class_name: 'PanelPicture',\r
+      table_name: 'panel_pictures',\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        panel_id: {\r
+          type: 'number',\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        picture_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        caption: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        x: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        y: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        width: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        height: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        link: {\r
+          type: 'text',\r
+          rules : {\r
+            url: true,\r
+          }\r
+        },\r
+        z: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 1,\r
+          }\r
+        },\r
+        t: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 0,\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      }\r
+    },\r
+    SpeechBalloon: 'speech_balloon',\r
+    speech_balloon: {\r
+      class_name: 'SpeechBalloon',\r
+      table_name: 'speech_balloons',\r
+      extend: 'classname', \r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        panel_id: {\r
+          type: 'number',\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        speech_balloon_template_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        classname: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        z: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 1,\r
+          }\r
+        },\r
+        t: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 0,\r
+          }\r
+        },\r
+        settings: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        caption: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      }\r
+    }, \r
+    Balloon: 'balloon',\r
+    balloon: {\r
+      class_name: 'Balloon',\r
+      table_name: 'balloons',\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        speech_balloon_id: {\r
+          type: 'number',\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        system_picture_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        x: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        y: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        width: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 1,\r
+          }\r
+        },\r
+        height: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 1,\r
+          }\r
+        },\r
+        r: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        settings: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      }\r
+    },\r
+    Speech: 'speech',\r
+    speech: {\r
+      class_name: 'Speech',\r
+      table_name: 'speeches',\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        speech_balloon_id: {\r
+          type: 'number',\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        writing_format_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        content: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        font_size: {\r
+          type: 'float',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 0,\r
+          }\r
+        },\r
+        text_align: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            range: [0, 3],\r
+          }\r
+        },\r
+        fore_color: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            range: [0, 0xffffff],\r
+          }\r
+        },\r
+        x: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        y: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        width: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 1,\r
+          }\r
+        },\r
+        height: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 1,\r
+          }\r
+        },\r
+        quotes: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        settings: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      }\r
+    },\r
+    GroundPicture: 'ground_picture',\r
+    ground_picture: {\r
+      class_name: 'GroundPicture',\r
+      table_name: 'ground_pictures',\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        panel_id: {\r
+          type: 'number',\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        picture_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        caption: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        repeat: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            range: [0, 3],\r
+          }\r
+        },\r
+        x: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        y: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        z: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 1,\r
+          }\r
+        },\r
+        t: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 0,\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      }\r
+    },\r
+    GroundColor: 'ground_color',\r
+    ground_color: {\r
+      class_name: 'GroundColor',\r
+      table_name: 'ground_colors',\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        panel_id: {\r
+          type: 'number',\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        caption: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        code: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            range: [0, 0xffffff],\r
+          }\r
+        },\r
+        z: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 1,\r
+          }\r
+        },\r
+        t: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 0,\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      }\r
+    },\r
+    WritingFormat: 'writing_format',\r
+    writing_format: {\r
+      class_name: 'WritingFormat',\r
+      table_name: 'writing_formats',\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        name: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        classname: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        caption: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        system_picture_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        settings: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      }\r
+    },\r
+\r
+  },\r
+  elements: [\r
+    {\r
+      name: 'panel_picture',\r
+      path_name: 'panel_pictures', \r
+      parts: []\r
+    },\r
+    {\r
+      name: 'speech_balloon',\r
+      path_name: 'circle_speech_balloon/speech_balloons', \r
+      parts: ['balloon', 'speech']\r
+    },\r
+    {\r
+      name: 'ground_picture',\r
+      path_name: 'ground_pictures', \r
+      parts: []\r
+    },\r
+    {\r
+      name: 'ground_color',\r
+      path_name: 'ground_colors', \r
+      parts: []\r
+    },\r
+  ],\r
+  forms: {\r
+    Panel: 'panel',\r
+    panel: {\r
+      attributes: {\r
+        caption: {\r
+          column: 'caption',\r
+          type: 'text',\r
+          label: {\r
+          },\r
+          options: {\r
+            row_break: true\r
+          }\r
+        },\r
+        width: {\r
+          column: 'width',\r
+          type: 'number',\r
+          label: {\r
+          },\r
+          options: {\r
+            size: 5, \r
+          },\r
+        },\r
+        height: {\r
+          column: 'height',\r
+          type: 'number',\r
+          label: {\r
+          },\r
+          options: {\r
+            size: 5, \r
+            row_break: true\r
+          }, \r
+        },\r
+        border: {\r
+          column: 'border',\r
+          type: 'number',\r
+          label: {\r
+          },\r
+          options: {\r
+            size: 5, \r
+          },\r
+        },\r
+        publish: {\r
+          column: 'publish',\r
+          type: 'select',\r
+          label: {\r
+          },\r
+          options: {\r
+            source: 'magic_number',\r
+            key: 'comic_visible_items',\r
+            size: 5, \r
+            row_break: true\r
+          }\r
+        },\r
+        id: {\r
+          column: 'id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        author_id: {\r
+          column: 'author_id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+      },\r
+      fields: [\r
+        'caption',\r
+        'width',\r
+        'height',\r
+        'border',\r
+        'publish',\r
+        'id',\r
+        'author_id',\r
+      ]\r
+    },\r
+    PanelPicture: 'panel_picture',\r
+    panel_picture: {\r
+      attributes: {\r
+        caption: {\r
+          column: 'caption',\r
+          type: 'text',\r
+          label: {\r
+          },\r
+          options: {\r
+            row_break: true\r
+          }\r
+        },\r
+        x: {\r
+          column: 'x',\r
+          type: 'number',\r
+          label: {\r
+          },\r
+          options: {\r
+            size: 5, \r
+          }\r
+        },\r
+        y: {\r
+          column: 'y',\r
+          type: 'number',\r
+          label: {\r
+          },\r
+          options: {\r
+            size: 5, \r
+            row_break: true\r
+          }\r
+        },\r
+        width: {\r
+          column: 'width',\r
+          type: 'number',\r
+          label: {\r
+          },\r
+          options: {\r
+            size: 5, \r
+            row_break: true\r
+          },\r
+          helpers: {\r
+            size: {\r
+              path: 'panels/size_helper',\r
+              options: {\r
+                class: 'panel_picture_width_tool', \r
+              }\r
+            }\r
+          },\r
+        },\r
+        height: {\r
+          column: 'height',\r
+          type: 'number',\r
+          label: {\r
+          },\r
+          options: {\r
+            size: 5, \r
+            row_break: true\r
+          }, \r
+          helpers: {\r
+            size: {\r
+              path: 'panels/size_helper',\r
+              options: {\r
+                class: 'panel_picture_height_tool', \r
+              }\r
+            }\r
+          },\r
+        },\r
+        link: {\r
+          column: 'link',\r
+          type: 'text',\r
+          label: {\r
+          },\r
+          options: {\r
+            row_break: true\r
+          }\r
+        },\r
+        id: {\r
+          column: 'id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        panel_id: {\r
+          column: 'panel_id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        picture_id: {\r
+          column: 'picture_id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        z: {\r
+          column: 'z',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        t: {\r
+          column: 't',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+      },\r
+      fields: [\r
+        'caption',\r
+        'x',\r
+        'y',\r
+        'width',\r
+        'height',\r
+        'link',\r
+        'id',\r
+        'panel_id',\r
+        'picture_id',\r
+        'z',\r
+        't',\r
+      ]\r
+    },\r
+    speech_balloon: {\r
+      attributes: {\r
+        'speech_balloon.id': {\r
+          column: 'id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        'speech_balloon.panel_id': {\r
+          column: 'panel_id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        'speech_balloon.speech_balloon_template_id': {\r
+          column: 'speech_balloon_template_id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        'speech_balloon.caption': {\r
+          column: 'caption',\r
+          type: 'text',\r
+          label: {\r
+          },\r
+          options: {\r
+            row_break: true\r
+          }\r
+        },\r
+        'speech_balloon.z': {\r
+          column: 'z',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        'speech_balloon.t': {\r
+          column: 't',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        'speech_balloon.classname': {\r
+          column: 'classname',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        'speech_balloon.settings': {\r
+          column: 'settings',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        'balloon.id': {\r
+          model: 'balloon',\r
+          part: 'balloon',\r
+          column: 'id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        'balloon.speech_balloon_id': {\r
+          model: 'balloon',\r
+          part: 'balloon',\r
+          column: 'speech_balloon_id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        'balloon.system_picture_id': {\r
+          model: 'balloon',\r
+          part: 'balloon',\r
+          column: 'system_picture_id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        'balloon.r': {\r
+          model: 'balloon',\r
+          part: 'balloon',\r
+          column: 'r',\r
+          type: 'number',\r
+          label: {\r
+          },\r
+          options: {\r
+            size: 5, \r
+            row_break: true\r
+          },\r
+          helpers: {\r
+            tail_angle: {\r
+              path: 'panels/tail_angle_helper',\r
+              options: {\r
+              }\r
+            }\r
+          }\r
+        },\r
+        'balloon.x': {\r
+          model: 'balloon',\r
+          part: 'balloon',\r
+          column: 'x',\r
+          type: 'number',\r
+          label: {\r
+          },\r
+          options: {\r
+            size: 5, \r
+          }\r
+        },\r
+        'balloon.y': {\r
+          model: 'balloon',\r
+          part: 'balloon',\r
+          column: 'y',\r
+          type: 'number',\r
+          label: {\r
+          },\r
+          options: {\r
+            size: 5, \r
+            row_break: true\r
+          }\r
+        },\r
+        'balloon.width': {\r
+          model: 'balloon',\r
+          part: 'balloon',\r
+          column: 'width',\r
+          type: 'number',\r
+          label: {\r
+          },\r
+          options: {\r
+            size: 5, \r
+          }\r
+        },\r
+        'balloon.height': {\r
+          model: 'balloon',\r
+          part: 'balloon',\r
+          column: 'height',\r
+          type: 'number',\r
+          label: {\r
+          },\r
+          options: {\r
+            size: 5, \r
+            row_break: true\r
+          }\r
+        },\r
+        'balloon.settings': {\r
+          model: 'balloon',\r
+          part: 'balloon',\r
+          column: 'settings',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        'speech.id': {\r
+          model: 'speech',\r
+          part: 'speech',\r
+          column: 'id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        'speech.speech_balloon_id': {\r
+          model: 'speech',\r
+          part: 'speech',\r
+          column: 'speech_balloon_id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        'speech.x': {\r
+          model: 'speech',\r
+          part: 'speech',\r
+          column: 'x',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        'speech.y': {\r
+          model: 'speech',\r
+          part: 'speech',\r
+          column: 'y',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        'speech.width': {\r
+          model: 'speech',\r
+          part: 'speech',\r
+          column: 'width',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        'speech.height': {\r
+          model: 'speech',\r
+          part: 'speech',\r
+          column: 'height',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        'speech.writing_format_id': {\r
+          model: 'speech',\r
+          part: 'speech',\r
+          column: 'writing_format_id',\r
+          type: 'select',\r
+          label: {\r
+          },\r
+          options: {\r
+            source: 'model',\r
+            model: 'writing_format',\r
+            method: 'enable_list',\r
+            caption: 'caption'\r
+          }\r
+        },\r
+        'speech.font_size': {\r
+          model: 'speech',\r
+          part: 'speech',\r
+          column: 'font_size',\r
+          type: 'select',\r
+          label: {\r
+          },\r
+          options: {\r
+            source: 'magic_number',\r
+            key: 'speech_font_size_items',\r
+            row_break: true\r
+          }\r
+        },\r
+        'speech.text_align': {\r
+          model: 'speech',\r
+          part: 'speech',\r
+          column: 'text_align',\r
+          type: 'select',\r
+          label: {\r
+          },\r
+          options: {\r
+            source: 'magic_number',\r
+            key: 'speech_text_align_items',\r
+          }\r
+        },\r
+        'speech.quotes': {\r
+          model: 'speech',\r
+          part: 'speech',\r
+          column: 'quotes',\r
+          type: 'text',\r
+          label: {\r
+          },\r
+          options: {\r
+            size: 5, \r
+          }\r
+        },\r
+        'speech.content': {\r
+          model: 'speech',\r
+          part: 'speech',\r
+          column: 'content',\r
+          type: 'text_area',\r
+          label: {\r
+            row_break: true\r
+          },\r
+          options: {\r
+            size: '45x5', \r
+          }\r
+        },\r
+        'speech.fore_color': {\r
+          model: 'speech',\r
+          part: 'speech',\r
+          column: 'fore_color',\r
+          type: 'hidden',\r
+          label: {\r
+            row_break: true\r
+          },\r
+          options: {\r
+          },\r
+          helpers: {\r
+            color: {\r
+              path: 'panels/color_helper',\r
+              options: {\r
+              },\r
+              wrapper: 'speech-fore_color-wrap'\r
+            }\r
+          }\r
+        },\r
+        'speech.settings': {\r
+          model: 'speech',\r
+          part: 'speech',\r
+          column: 'settings',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+      },\r
+    },\r
+    CircleSpeechBalloon: 'circle_speech_balloon',\r
+    circle_speech_balloon: {\r
+      base: 'speech_balloon',\r
+      attributes: {\r
+      },\r
+      fields: [\r
+          'speech_balloon.caption',\r
+          'balloon.r',\r
+          'balloon.x',\r
+          'balloon.y',\r
+          'balloon.width',\r
+          'balloon.height',\r
+          'balloon.id',\r
+          'balloon.speech_balloon_id',\r
+          'balloon.system_picture_id',\r
+          'balloon.settings',\r
+          'speech.writing_format_id',\r
+          'speech.font_size',\r
+          'speech.text_align',\r
+          'speech.quotes',\r
+          'speech.content',\r
+          'speech.fore_color',\r
+          'speech.id',\r
+          'speech.speech_balloon_id',\r
+          'speech.x',\r
+          'speech.y',\r
+          'speech.width',\r
+          'speech.height',\r
+          'speech.settings',\r
+          'speech_balloon.id',\r
+          'speech_balloon.panel_id',\r
+          'speech_balloon.speech_balloon_template_id',\r
+          'speech_balloon.classname',\r
+          'speech_balloon.z',\r
+          'speech_balloon.t',\r
+          'speech_balloon.settings',\r
+      ]\r
+    },\r
+    PlainSpeechBalloon: 'plain_speech_balloon',\r
+    plain_speech_balloon: {\r
+      base: 'speech_balloon',\r
+      attributes: {\r
+        'balloon.r': {\r
+          model: 'balloon',\r
+          part: 'balloon',\r
+          column: 'r',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          },\r
+        },\r
+      },\r
+      fields: [\r
+        'speech_balloon.caption',\r
+        'balloon.r',\r
+        'balloon.x',\r
+        'balloon.y',\r
+        'balloon.width',\r
+        'balloon.height',\r
+        'balloon.id',\r
+        'balloon.speech_balloon_id',\r
+        'balloon.system_picture_id',\r
+        'balloon.settings',\r
+        'speech.writing_format_id',\r
+        'speech.font_size',\r
+        'speech.text_align',\r
+        'speech.quotes',\r
+        'speech.content',\r
+        'speech.fore_color',\r
+        'speech.id',\r
+        'speech.speech_balloon_id',\r
+        'speech.x',\r
+        'speech.y',\r
+        'speech.width',\r
+        'speech.height',\r
+        'speech.settings',\r
+        'speech_balloon.id',\r
+        'speech_balloon.panel_id',\r
+        'speech_balloon.speech_balloon_template_id',\r
+        'speech_balloon.classname',\r
+        'speech_balloon.z',\r
+        'speech_balloon.t',\r
+        'speech_balloon.settings',\r
+      ]\r
+    },\r
+    SquareSpeechBalloon: 'square_speech_balloon',\r
+    square_speech_balloon: {\r
+      base: 'speech_balloon',\r
+      attributes: {\r
+        'balloon.r': {\r
+          model: 'balloon',\r
+          part: 'balloon',\r
+          column: 'r',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          },\r
+        },\r
+      },\r
+      fields: [\r
+        'speech_balloon.caption',\r
+        'balloon.r',\r
+        'balloon.x',\r
+        'balloon.y',\r
+        'balloon.width',\r
+        'balloon.height',\r
+        'balloon.id',\r
+        'balloon.speech_balloon_id',\r
+        'balloon.system_picture_id',\r
+        'balloon.settings',\r
+        'speech.writing_format_id',\r
+        'speech.font_size',\r
+        'speech.text_align',\r
+        'speech.quotes',\r
+        'speech.content',\r
+        'speech.fore_color',\r
+        'speech.id',\r
+        'speech.speech_balloon_id',\r
+        'speech.x',\r
+        'speech.y',\r
+        'speech.width',\r
+        'speech.height',\r
+        'speech.settings',\r
+        'speech_balloon.id',\r
+        'speech_balloon.panel_id',\r
+        'speech_balloon.speech_balloon_template_id',\r
+        'speech_balloon.classname',\r
+        'speech_balloon.z',\r
+        'speech_balloon.t',\r
+        'speech_balloon.settings',\r
+      ]\r
+    },\r
+    GroundPicture: 'ground_picture',\r
+    ground_picture: {\r
+      attributes: {\r
+        id: {\r
+          column: 'id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        panel_id: {\r
+          column: 'panel_id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        picture_id: {\r
+          column: 'picture_id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        caption: {\r
+          column: 'caption',\r
+          type: 'text',\r
+          label: {\r
+          },\r
+          options: {\r
+            row_break: true\r
+          }\r
+        },\r
+        repeat: {\r
+          column: 'repeat',\r
+          type: 'select',\r
+          label: {\r
+          },\r
+          options: {\r
+            source: 'magic_number',\r
+            key: 'ground_picture_repeat_items',\r
+            row_break: true\r
+          }\r
+        },\r
+        x: {\r
+          column: 'x',\r
+          type: 'number',\r
+          label: {\r
+          },\r
+          options: {\r
+            size: 5, \r
+          }\r
+        },\r
+        y: {\r
+          column: 'y',\r
+          type: 'number',\r
+          label: {\r
+          },\r
+          options: {\r
+            size: 5, \r
+            row_break: true\r
+          }\r
+        },\r
+        z: {\r
+          column: 'z',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        t: {\r
+          column: 't',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+      },\r
+      fields: [\r
+        'caption',\r
+        'repeat',\r
+        'x',\r
+        'y',\r
+        'z',\r
+        't',\r
+        'id',\r
+        'panel_id',\r
+        'picture_id',\r
+      ]\r
+    },\r
+    GroundColor: 'ground_color',\r
+    ground_color: {\r
+      attributes: {\r
+        id: {\r
+          column: 'id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        panel_id: {\r
+          column: 'panel_id',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        caption: {\r
+          column: 'caption',\r
+          type: 'text',\r
+          label: {\r
+          },\r
+          options: {\r
+            row_break: true\r
+          }\r
+        },\r
+        code: {\r
+          column: 'code',\r
+          type: 'hidden',\r
+          label: {\r
+            row_break: true\r
+          },\r
+          options: {\r
+            row_break: true\r
+          }\r
+          helpers: {\r
+            color: {\r
+              path: 'panels/color_helper',\r
+              options: {\r
+              },\r
+              wrapper: 'ground_color-code-wrap'\r
+            }\r
+          },\r
+        },\r
+        z: {\r
+          column: 'z',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+        t: {\r
+          column: 't',\r
+          type: 'hidden',\r
+          label: {\r
+            type: 'hidden'\r
+          },\r
+          options: {\r
+          }\r
+        },\r
+      },\r
+      fields: [\r
+        'id',\r
+        'panel_id',\r
+        'caption',\r
+        'code',\r
+        'z',\r
+        't',\r
+      ]\r
+    }\r
+  },\r
+  locales: {\r
+    ja: {\r
+    }\r
+  },\r
+}\r
+\r
+@repeat_texts = ['repeat', 'repeat-x', 'repeat-y', 'no-repeat']\r
+\r
+@text_align_texts = ['left', 'left', 'right', 'center']\r
+\r