},\r
},\r
speech_balloon: {\r
- extend: 'classname', \r
+ extend_column_name: 'classname', \r
associations: {\r
belongs_to: {\r
panel: {\r
},\r
},\r
speech_balloon_template: {\r
+ extend_column_name: 'classname', \r
associations: {\r
belongs_to: {\r
system_picture: {\r
},\r
},\r
writing_format: {\r
+ extend_column_name: 'classname', \r
associations: {\r
belongs_to: {\r
system_picture: {\r
},\r
},\r
license_group: {\r
+ extend_column_name: 'classname', \r
associations: {\r
belongs_to: {\r
},\r
}, \r
},\r
scroll_panel: {\r
- columns: [\r
+ column_names: [\r
'scroll_id', \r
'panel_id', \r
't', \r
}, \r
},\r
comic: {\r
- columns: [\r
+ column_names: [\r
'title', \r
'description', \r
'visible', \r
}, \r
},\r
story: {\r
- columns: [\r
+ column_names: [\r
'comic_id', \r
'title', \r
'description', \r
}, \r
},\r
story_sheet: {\r
- columns: [\r
+ column_names: [\r
'story_id', \r
'sheet_id', \r
't', \r
}, \r
},\r
sheet: {\r
- columns: [\r
+ column_names: [\r
'caption', \r
'width', \r
'height', \r
}, \r
},\r
sheet_panel: {\r
- columns: [\r
+ column_names: [\r
'sheet_id', \r
'panel_id', \r
'x', \r
}, \r
},\r
panel: {\r
- columns: [\r
+ column_names: [\r
'width', \r
'height', \r
'border', \r
}, \r
},\r
panel_picture: {\r
- columns: [\r
+ column_names: [\r
'panel_id', \r
'picture_id', \r
'caption', \r
}, \r
},\r
speech_balloon: {\r
- columns: [\r
+ column_names: [\r
'panel_id', \r
'speech_balloon_template_id', \r
'classname', \r
}, \r
},\r
speech: {\r
- columns: [\r
+ column_names: [\r
'speech_balloon_id', \r
'writing_format_id', \r
'content', \r
}, \r
},\r
balloon: {\r
- columns: [\r
+ column_names: [\r
'speech_balloon_id', \r
'system_picture_id', \r
'x', \r
}, \r
},\r
ground_picture: {\r
- columns: [\r
+ column_names: [\r
'panel_id', \r
'picture_id', \r
'caption', \r
}, \r
},\r
ground_color: {\r
- columns: [\r
+ column_names: [\r
'panel_id', \r
'caption', \r
'code', \r
}, \r
},\r
original_picture: {\r
- columns: [\r
+ column_names: [\r
'ext', \r
'width', \r
'height', \r
}, \r
},\r
picture: {\r
- columns: [\r
+ column_names: [\r
'original_picture_id', \r
'revision', \r
'ext', \r
}, \r
},\r
resource_picture: {\r
- columns: [\r
+ column_names: [\r
'original_picture_id', \r
'revision', \r
'ext', \r
}, \r
},\r
speech_balloon_template: {\r
- columns: [\r
+ column_names: [\r
'name', \r
'classname', \r
'caption', \r
}, \r
},\r
writing_format: {\r
- columns: [\r
+ column_names: [\r
'name', \r
'classname', \r
'caption', \r
}, \r
},\r
license_group: {\r
- columns: [\r
+ column_names: [\r
'name', \r
'classname', \r
'caption', \r
}, \r
},\r
license: {\r
- columns: [\r
+ column_names: [\r
'license_group_id', \r
'name', \r
'caption', \r
}, \r
},\r
author: {\r
- columns: [\r
+ column_names: [\r
'name', \r
'user_id', \r
],\r
}, \r
},\r
artist: {\r
- columns: [\r
+ column_names: [\r
'name', \r
'author_id', \r
],\r
}, \r
},\r
system_picture: {\r
- columns: [\r
+ column_names: [\r
'ext', \r
'width', \r
'height', \r
end
attr :model_name, :model_manifest,
- :attributes, :associations, :tree, :lists
+ :attributes, :associations, :tree, :lists, :extend_column_name
def initialize manifest, model_name, model_manifest
@manifest = manifest
@model_name = model_name
@model_manifest['associations'] ||= {}
@model_manifest['tree'] ||= {}
@model_manifest['lists'] ||= {}
+ @model_manifest['extend_column_name'] ||= 'classname'
@model_manifest['attributes']['id'] = {
'type' => 'number',
'primary_key' => 1,
@model_manifest['tree'].each {|tree_name, parent_model_name|
@tree[tree_name] = ModelModule::Tree.new(self, tree_name, parent_model_name)
}
+ @extend_column_name = @model_manifest['extend_column_name']
@lists = {}
@model_manifest['lists'].each {|list_name, list_manifest|
@lists[list_name] = ModelModule::ListFactory.factory(self, list_name, list_manifest)
end
end
+ def engine
+ Object.const_get self.extend_column
+ end
+
def extend_engine_module
- self.extend self.speech_balloon_template.engine_speech_balloon_module
+ self.extend self.engine.extend_module
self.elements.each do |element|
element.extend_item
end
self.class.table_name
end
- def extend_column
+ def extend_column_name
nil
end
- def extend_item_name
- self.extend_column ? self.attributes[self.extend_column] : self.item_name
- end
-
def form_name
- self.extend_item_name
+ self.extend_column ? self.attributes[self.extend_column] : self.item_name
end
def valid_encode
true
end
+ def boost
+ end
+
def dom_id_item
self.new_record? ? '0' : self.id.to_s
end
}\r
},\r
"scroll_panel": {\r
- "columns": [\r
+ "column_names": [\r
"scroll_id",\r
"panel_id",\r
"t",\r
}\r
},\r
"comic": {\r
- "columns": [\r
+ "column_names": [\r
"title",\r
"description",\r
"visible",\r
}\r
},\r
"story": {\r
- "columns": [\r
+ "column_names": [\r
"comic_id",\r
"title",\r
"description",\r
}\r
},\r
"story_sheet": {\r
- "columns": [\r
+ "column_names": [\r
"story_id",\r
"sheet_id",\r
"t",\r
}\r
},\r
"sheet": {\r
- "columns": [\r
+ "column_names": [\r
"caption",\r
"width",\r
"height",\r
}\r
},\r
"sheet_panel": {\r
- "columns": [\r
+ "column_names": [\r
"sheet_id",\r
"panel_id",\r
"x",\r
}\r
},\r
"panel": {\r
- "columns": [\r
+ "column_names": [\r
"width",\r
"height",\r
"border",\r
}\r
},\r
"panel_picture": {\r
- "columns": [\r
+ "column_names": [\r
"panel_id",\r
"picture_id",\r
"caption",\r
}\r
},\r
"speech_balloon": {\r
- "columns": [\r
+ "column_names": [\r
"panel_id",\r
"speech_balloon_template_id",\r
"classname",\r
}\r
},\r
"speech": {\r
- "columns": [\r
+ "column_names": [\r
"speech_balloon_id",\r
"writing_format_id",\r
"content",\r
}\r
},\r
"balloon": {\r
- "columns": [\r
+ "column_names": [\r
"speech_balloon_id",\r
"system_picture_id",\r
"x",\r
}\r
},\r
"ground_picture": {\r
- "columns": [\r
+ "column_names": [\r
"panel_id",\r
"picture_id",\r
"caption",\r
}\r
},\r
"ground_color": {\r
- "columns": [\r
+ "column_names": [\r
"panel_id",\r
"caption",\r
"code",\r
}\r
},\r
"original_picture": {\r
- "columns": [\r
+ "column_names": [\r
"ext",\r
"width",\r
"height",\r
}\r
},\r
"picture": {\r
- "columns": [\r
+ "column_names": [\r
"original_picture_id",\r
"revision",\r
"ext",\r
}\r
},\r
"resource_picture": {\r
- "columns": [\r
+ "column_names": [\r
"original_picture_id",\r
"revision",\r
"ext",\r
}\r
},\r
"speech_balloon_template": {\r
- "columns": [\r
+ "column_names": [\r
"name",\r
"classname",\r
"caption",\r
}\r
},\r
"writing_format": {\r
- "columns": [\r
+ "column_names": [\r
"name",\r
"classname",\r
"caption",\r
}\r
},\r
"license_group": {\r
- "columns": [\r
+ "column_names": [\r
"name",\r
"classname",\r
"caption",\r
}\r
},\r
"license": {\r
- "columns": [\r
+ "column_names": [\r
"license_group_id",\r
"name",\r
"caption",\r
}\r
},\r
"author": {\r
- "columns": [\r
+ "column_names": [\r
"name",\r
"user_id"\r
],\r
}\r
},\r
"artist": {\r
- "columns": [\r
+ "column_names": [\r
"name",\r
"author_id"\r
],\r
}\r
},\r
"system_picture": {\r
- "columns": [\r
+ "column_names": [\r
"ext",\r
"width",\r
"height",\r