class Pettanr.SquareSpeechBalloon class Pettanr.SquareSpeechBalloon.SpeechBalloon extends Backbone.Model # OMG... this model is not petanized item # it means that can't change name base_name: () -> "square_speech_balloons" baseName: () -> "SquareSpeechBalloon" item_name: () -> @base_name() + '/speech_balloon' table_name: () -> @base_name() + '/speech_balloons' singular: () -> @baseName() + '/SpeechBalloon' plural: () -> @baseName() + '/SpeechBalloons' engine_name: () -> @table_name() form_name: () -> @engine_name() + '/speech_balloons' class Pettanr.SquareSpeechBalloon.Balloon extends Backbone.Model # OMG... this model is not petanized item # it means that can't change name base_name: () -> "square_speech_balloons" baseName: () -> "SquareSpeechBalloon" item_name: () -> @base_name() + '/balloon' table_name: () -> @base_name() + '/balloons' singular: () -> @baseName() + '/Balloon' plural: () -> @baseName() + '/Balloons' engine_name: () -> @table_name() form_name: () -> @engine_name() + '/balloons' class Pettanr.SquareSpeechBalloon.Speech extends Backbone.Model # OMG... this model is not petanized item # it means that can't change name base_name: () -> "square_speech_balloons" baseName: () -> "SquareSpeechBalloon" item_name: () -> @base_name() + '/speech' table_name: () -> @base_name() + '/speeches' singular: () -> @baseName() + '/Speech' plural: () -> @baseName() + '/Speeches' engine_name: () -> @table_name() form_name: () -> @engine_name() + '/speeches' class Pettanr.SquareSpeechBalloon.SpeechBalloonModule supply_default: (templates) -> @templates = templates speech_balloon_extend: () -> @new_speech_balloon() if not @sbex @sbex speech_balloon_extend_setter: (params) -> # load attributes @sbex = new Pettanr.SquareSpeechBalloon.SpeechBalloon(params) # no supply default params new_speech_balloon: (params = {}) -> @sbex = new Pettanr.SquareSpeechBalloon.SpeechBalloon(params) @sbex.supply_default() class Pettanr.SquareSpeechBalloon.BalloonModule supply_default: (templates) -> @templates = templates @set({ x: 0, y: 0, width: @parsed_settings()['speech_balloon']['default_width'], eight: @parsed_settings()['speech_balloon']['default_height'], r: 0 }) @select_system_picture() hoge_templates: () -> if !@templates.speech_balloon_template empty_item = new Pettanr.SpeechBalloonTemplate({id: @get('speech_balloon_template_id')}) item = Pettanr.cache.restore(empty_item) if item # got cached item @templates.speech_balloon_template = item else # built empty item item = empty_item item.fetch().done => Pettanr.cache.store(item) @templates.speech_balloon_template = item balloon_extend: () -> @new_balloon() if not @bex @bex balloon_extend_setter: (params) -> # load attributes @bex = new Pettanr.SquareSpeechBalloon.Balloon(params) # no supply default params new_balloon: (params = {}) -> @bex = new Pettanr.SquareSpeechBalloon.Balloon(params) @bex.supply_default() parsed_settings: () -> return @parsed if @parsed @parsed = @templates.speech_balloon_template.parsed_settings() select_system_picture: () -> s = @parsed_settings()['all']['balloon'] sid = s['system_picture_id'] @set({system_picture_id: sid}, {silent: true}) sid r_step: () -> 0 class Pettanr.SquareSpeechBalloon.SpeechModule supply_default: (templates) -> @templates = templates s = @parsed_settings()['all']['speech'] @set({ x: s['x_rate'], y: s['y_rate'], width: s['width_rate'], height: s['height_rate'], quotes: '', font_size: @parsed_settings()['speech_balloon']['default_font_size'], text_align: @parsed_settings()['speech_balloon']['default_text_align'], fore_color: @parsed_settings()['speech_balloon']['default_fore_color'] }) speech_extend: () -> @sex speech_extend_setter: (params) -> # load attributes @sex = new Pettanr.SquareSpeechBalloon.Speech(params) # no supply default params new_speech: (params = {}) -> @sex = new Pettanr.SquareSpeechBalloon.Speech(params) @sex.supply_default() parsed_settings: () -> return @parsed if @parsed @parsed = @templates.speech_balloon_template.parsed_settings() arrayed_quotes: () -> q = if Pettanr.is_blank(@get('quotes')) Pettanr.to_s(@parsed_settings()['speech_balloon']['quotes']) else @get('quotes') q.split(' ')