Sha256: f6caabfafa3f94ab4f73f5c099ae043c03ca59222c0cdb24a904a52705839a03

Contents?: true

Size: 1013 Bytes

Versions: 6

Compression:

Stored size: 1013 Bytes

Contents

module Voom
  module Presenters
    module DSL
      module Components
        class Slider < Input
          attr_reader :value_min,
                      :value_max,
                      :step,
                      :show_tracker_marks,
                      :discrete

          def initialize(**attribs_, &block)
            super(type: :slider, **attribs_, &block)
            @value_min = attribs.delete(:value_min){0}
            @value_max = attribs.delete(:value_max){100}
            @step = attribs.delete(:step){nil}
            @discrete = attribs.delete(:discrete){true}
            @show_tracker_marks = attribs.delete(:show_tracker_marks){false}
            @show_tracker_marks = false unless discrete
            expand!
          end

          def label(text=nil)
            return @label if locked?
            @label = text
          end

          def value(value=nil)
            return @value if locked?
            @value = value
          end

        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
voom-presenters-2.1.2 lib/voom/presenters/dsl/components/slider.rb
voom-presenters-2.1.0 lib/voom/presenters/dsl/components/slider.rb
voom-presenters-2.0.3 lib/voom/presenters/dsl/components/slider.rb
voom-presenters-2.0.2 lib/voom/presenters/dsl/components/slider.rb
voom-presenters-2.0.1 lib/voom/presenters/dsl/components/slider.rb
voom-presenters-2.0.0 lib/voom/presenters/dsl/components/slider.rb