X-Git-Url: http://git.osdn.net/view?p=pettanr%2Fpettanr.git;a=blobdiff_plain;f=app%2Fassets%2Fjavascripts%2Fmodels%2Fspeech_balloon.js.coffee;h=359669aceb672b4ce0ad40f1749882258936de21;hp=4a282025d8dd4393b3430626ddd02b0b51117742;hb=a2476d007b31867d0c17898c358bde615e830d91;hpb=26485fdc94aad6e87484cfe8c31a71996dbee375 diff --git a/app/assets/javascripts/models/speech_balloon.js.coffee b/app/assets/javascripts/models/speech_balloon.js.coffee index 4a282025..359669ac 100644 --- a/app/assets/javascripts/models/speech_balloon.js.coffee +++ b/app/assets/javascripts/models/speech_balloon.js.coffee @@ -1,70 +1,103 @@ -class SpeechBalloon extends Element - @single: () -> +class Pettanr.SpeechBalloon extends Peta.Element + url: '/speech_balloons/' + + @singular: () -> 'SpeechBalloon' @plural: () -> 'SpeechBalloons' - @colum_structures: -> - {} - defaults: { - x: 11 + id: null, + z: null, + t: null } - initialize: () -> - confirm("Welcome to this world") - - @test: () -> - confirm( @single()) - confirm( @plural() ) - confirm( @class_name() ) - confirm( @element_name() ) - confirm( @table_name() ) - confirm( @path_name() ) - confirm( @colum_structures() ) - - has_picture: () -> - true - - has_part: () -> + @pick_item_name: () -> + 'speech_balloon_template' + + @traceable_item_names: () -> + ['speech', 'balloon'] + + pick: () -> + # + speech_balloon_template = @templates.speech_balloon_template + { + speech_balloon_template_id: speech_balloon_template.get('id'), + speech_balloon_template_module_name: speech_balloon_template.get('module_name') + } + + panel: () -> + new Pettanr.Cache.Retriever(Pettanr.Panel, @get('panel_id')) + + speech_balloon_template: () -> + new Pettanr.Cache.Retriever(Pettanr.SpeechBalloonTemplate, @get('speech_balloon_template_id')) + + @has_picture: () -> false - extend_column: () -> - null - - test: () -> - confirm( @has_picture() ) - confirm( @has_part() ) - confirm( @parts() ) - confirm( @has_helper('column_name') ) - confirm( @element_name() ) - confirm( @extend_column() ) - confirm( @extend_element_name() ) - confirm( @find_configurations(window.configurations,'v') ) - confirm( @new_index() ) - confirm( @set_new_index(3) ) - confirm( @set_new_panel('v') ) - confirm( @get_new_panel() ) - confirm( '@get_panel()' ) - confirm( @get_panel() ) - confirm( @tag_id('c') ) - confirm( @field_tag_id('f') ) - confirm( @tag_panel_id() ) - confirm( @tag_element_id() ) - confirm( @tag_element_type() ) - confirm( @tag_new_index() ) - confirm( @path_name() ) - confirm( @form_template() ) - confirm( @scenario_template() ) - confirm( @element_face_template() ) - confirm( @form_helper_template('colum_name') ) - confirm( @tag_attributes('column') ) - confirm( @field_tag_attributes('column', 0, {}) ) - confirm( @any_tag_attributes('name', {}) ) - confirm( @select_tag_attributes(true, 'column', 0) ) - confirm( @tag_attr('column', {}) ) - confirm( @field_tag_attr('column', 1, {}) ) - confirm( @any_tag_attr('name', {}) ) - -@PanelPicture = PanelPicture + symbol_option: () -> + retriever = @speech_balloon_template() + @listenTo(retriever, 'retrieve', @retrieve_speech_balloon_template) + retriever.retrieve() + + retrieve_speech_balloon_template: (speech_balloon_template) -> + retriever = speech_balloon_template.system_picture() + @listenTo(retriever, 'retrieve', @retrieve_system_picture) + retriever.retrieve() + + retrieve_system_picture: (system_picture) -> + @trigger('ready:symbol', system_picture.tmb_opt_img_tag()) + + filer_caption: () -> + retriever = @retriever() + @listenTo(retriever, 'retrieve', @retrieve_filer_caption) + retriever.retrieve() + + retrieve_filer_caption: (item) -> + caption = item.escape('caption') + @trigger('ready:caption', caption) + + plain_scenario: () -> + @get('caption') + + element_face: () -> + new Pettanr.Views.SpeechBalloon.ElementFace({element: this}) + + initialize: (attr, options) -> + super(attr, options) + if @id + @url = @url + @id + +class Pettanr.SpeechBalloon.TraceFromBalloon + + constructor: (options) -> + _.extend(this, Backbone.Events) + + trace: (balloon) -> + @balloon(balloon) + + balloon: (balloon) -> + retriever = new Pettanr.Cache.Retriever(Pettanr.SpeechBalloon, balloon.get('speech_balloon_id')) + @listenTo(retriever, 'retrieve', @speech_balloon) + retriever.retrieve() + + speech_balloon: (speech_balloon) -> + @trigger('trace', speech_balloon) + +class Pettanr.SpeechBalloon.TraceFromSpeech + + constructor: (options) -> + _.extend(this, Backbone.Events) + + trace: (speech) -> + @speech(speech) + + speech: (speech) -> + retriever = new Pettanr.Cache.Retriever(Pettanr.SpeechBalloon, speech.get('speech_balloon_id')) + @listenTo(retriever, 'retrieve', @speech_balloon) + retriever.retrieve() + + speech_balloon: (speech_balloon) -> + @trigger('trace', speech_balloon) +