From: yasushiito Date: Thu, 14 May 2015 23:48:06 +0000 (+0900) Subject: fix: input tag for helper slider X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=212417b6e2098ad9842a4afbb679ab48446b78a0;hp=3025d9c8e165eabe6eb774cf92760c5a049b0c2b;p=pettanr%2Fpettanr.git fix: input tag for helper slider --- diff --git a/app/assets/javascripts/locmare/form/field/helper/slider.js.coffee b/app/assets/javascripts/locmare/form/field/helper/slider.js.coffee index dd932cf9..9cb01951 100644 --- a/app/assets/javascripts/locmare/form/field/helper/slider.js.coffee +++ b/app/assets/javascripts/locmare/form/field/helper/slider.js.coffee @@ -39,7 +39,7 @@ class Locmare.FormModule.FieldModule.HelperModule.Slider extends Locmare.FormMod @slider.disable() class Locmare.FormModule.FieldModule.HelperModule.SliderModule -class Locmare.FormModule.FieldModule.HelperModule.SliderModule.Slider extends Tag.Div +class Locmare.FormModule.FieldModule.HelperModule.SliderModule.Slider extends Tag.Span events: { slidechange: 'slider_change' } @@ -63,11 +63,12 @@ class Locmare.FormModule.FieldModule.HelperModule.SliderModule.Slider extends Ta @field.set(@field.value() || 0) this.$el.slider({value: @field.value()}) this.$el.attr({style: 'display: inline;'}) + @field.tag.show() disable: () -> - this.$el.attr({style: 'display: none;'}) @field.set(undefined) - @field.tag.render() # why does not raise change event when set null value? + @field.tag.hide() + this.$el.attr({style: 'display: none;'}) slider_change: (event, ui) -> @trigger('slide', ui.value) diff --git a/app/assets/javascripts/locmare/form/field/tag/base.js.coffee b/app/assets/javascripts/locmare/form/field/tag/base.js.coffee index 2da8777d..c1c7a879 100644 --- a/app/assets/javascripts/locmare/form/field/tag/base.js.coffee +++ b/app/assets/javascripts/locmare/form/field/tag/base.js.coffee @@ -4,6 +4,7 @@ class Locmare.FormModule.FieldModule.TagModule.Base extends Backbone.View initialize: (options) -> @field = options.field @tag_manifest = options.tag_manifest + @visible = true form_field_name: () -> @field.form_field_name() @@ -14,9 +15,33 @@ class Locmare.FormModule.FieldModule.TagModule.Base extends Backbone.View else this.$el.val() + type: () -> + null + value: () -> @field.value() + attr: () -> + r = { + name: @form_field_name(), + } + # _.extend(r, @options()) + if @type() + r['type'] = @type() + if @visible + #r['style'] = 'display: inline;' + else + r['style'] = 'display: none;' + r + + show: () -> + @visible = true + @render() + + hide: () -> + @visible = false + @render() + options: () -> @tag_manifest.options diff --git a/app/assets/javascripts/locmare/form/field/tag/file.js.coffee b/app/assets/javascripts/locmare/form/field/tag/file.js.coffee index 4256f5ab..5445b39a 100644 --- a/app/assets/javascripts/locmare/form/field/tag/file.js.coffee +++ b/app/assets/javascripts/locmare/form/field/tag/file.js.coffee @@ -3,11 +3,9 @@ class Locmare.FormModule.FieldModule.TagModule.FileTag extends Locmare.FormModul render: () -> this.$el.html('') - @attr = { - type: 'file', - name: @form_field_name() - } - _.extend(@attr, @options()) - this.$el.attr(@attr) + this.$el.attr(@attr()) this + type: () -> + 'file' + diff --git a/app/assets/javascripts/locmare/form/field/tag/hidden.js.coffee b/app/assets/javascripts/locmare/form/field/tag/hidden.js.coffee index f93c8878..cbc2ae2c 100644 --- a/app/assets/javascripts/locmare/form/field/tag/hidden.js.coffee +++ b/app/assets/javascripts/locmare/form/field/tag/hidden.js.coffee @@ -2,14 +2,14 @@ class Locmare.FormModule.FieldModule.TagModule.HiddenTag extends Locmare.FormMod render: () -> this.$el.html('') - @attr = { - type: 'hidden', - name: @form_field_name(), - value: @value() - } - _.extend(@attr, @options()) - this.$el.attr(@attr) + this.$el.attr(@attr()) this val: () -> parseInt(super) # humm... + + attr: () -> + r = super() + r['value'] = @value() + r + diff --git a/app/assets/javascripts/locmare/form/field/tag/number.js.coffee b/app/assets/javascripts/locmare/form/field/tag/number.js.coffee index 914f051f..009dd50a 100644 --- a/app/assets/javascripts/locmare/form/field/tag/number.js.coffee +++ b/app/assets/javascripts/locmare/form/field/tag/number.js.coffee @@ -8,23 +8,24 @@ class Locmare.FormModule.FieldModule.TagModule.NumberTag extends Locmare.FormMod render: () -> this.$el.html('') - sz = @options()['size'] - @attr = { - type: 'number', - name: @form_field_name(), - value: @value(), - - } - if sz - @attr['style'] = Pettanr.to_style({width: Pettanr.to_s(sz) + 'em'}) - _.extend(@attr, @options()) - this.$el.attr(@attr) + this.$el.attr(@attr()) this change: () -> @field.helpers.refresh() @field.trigger('change') + type: () -> + 'number' + val: () -> parseInt(super) + attr: () -> + r = super() + r['value'] = @value() + sz = @options()['size'] + if sz + r['style'] = Pettanr.to_style({width: Pettanr.to_s(sz) + 'em'}) + r + diff --git a/app/assets/javascripts/locmare/form/field/tag/select.js.coffee b/app/assets/javascripts/locmare/form/field/tag/select.js.coffee index 5a155667..4416c637 100644 --- a/app/assets/javascripts/locmare/form/field/tag/select.js.coffee +++ b/app/assets/javascripts/locmare/form/field/tag/select.js.coffee @@ -11,11 +11,7 @@ class Locmare.FormModule.FieldModule.TagModule.SelectTag extends Locmare.FormMod else members this.$el.html('') - @attr = { - name: @form_field_name(), - } - _.extend(@attr, @options()) - this.$el.attr(@attr) + this.$el.attr(@attr()) _.each values, (member) => selected = if @is_selected(member) ' selected' diff --git a/app/assets/javascripts/locmare/form/field/tag/text.js.coffee b/app/assets/javascripts/locmare/form/field/tag/text.js.coffee index 0f3abc20..8714eb35 100644 --- a/app/assets/javascripts/locmare/form/field/tag/text.js.coffee +++ b/app/assets/javascripts/locmare/form/field/tag/text.js.coffee @@ -6,12 +6,7 @@ class Locmare.FormModule.FieldModule.TagModule.TextTag extends Locmare.FormModul render: () -> this.$el.html('') - @attr = { - type: 'text', - name: @form_field_name() - } - _.extend(@attr, @options()) - this.$el.attr(@attr) + this.$el.attr(@attr()) this.$el.val(@value()) this diff --git a/app/assets/javascripts/locmare/form/field/tag/text_area.js.coffee b/app/assets/javascripts/locmare/form/field/tag/text_area.js.coffee index 6f81f744..8db5e164 100644 --- a/app/assets/javascripts/locmare/form/field/tag/text_area.js.coffee +++ b/app/assets/javascripts/locmare/form/field/tag/text_area.js.coffee @@ -6,19 +6,18 @@ class Locmare.FormModule.FieldModule.TagModule.TextAreaTag extends Locmare.FormM render: () -> this.$el.html('') - @attr = { - name: @form_field_name(), - } - if sz = @tag_manifest.options['size'] - r = sz.split('x') - @tag_manifest.options['cols'] = r[0] - @tag_manifest.options['rows'] = r[1] - delete @tag_manifest.options['size'] - _.extend(@attr, @options()) - this.$el.attr(@attr) + this.$el.attr(@attr()) this.$el.val(@value()) this change: () -> @field.trigger('change') + attr: () -> + r = super() + if sz = @options()['size'] + rc = sz.split('x') + r['cols'] = rc[0] + r['rows'] = rc[1] + r + diff --git a/app/assets/stylesheets/test.css.scss b/app/assets/stylesheets/test.css.scss index d39f823a..61972196 100644 --- a/app/assets/stylesheets/test.css.scss +++ b/app/assets/stylesheets/test.css.scss @@ -259,8 +259,7 @@ font-family : monospace; margin: 3px 10px; } .per-slider { - float: left; - clear: left; + float: right; width: 100px; margin: 3px 10px; }