Sha256: 0fd8913c600d609a76db8cd369e51694007708601a96e037fda7d87f39427917

Contents?: true

Size: 969 Bytes

Versions: 8

Compression:

Stored size: 969 Bytes

Contents

# frozen_string_literal: true
# Here's a little library for quickly hooking up in sketch sliders.
# Copyright (c) 2016-19 Martin Prout.

java_import 'monkstone.slider.CustomHorizontalSlider'
java_import 'monkstone.slider.CustomVerticalSlider'

module Slider
  def self.slider(app:, x:, y:, name:, **opts)
    options = default.merge opts
    if options[:vertical]
      slider = CustomVerticalSlider.new(
        app,
        x,
        y,
        options[:length],
        options[:range].first,
        options[:range].last,
        name
    )
    else
      slider = CustomHorizontalSlider.new(
        app,
        x,
        y,
        options[:length],
        options[:range].first,
        options[:range].last,
        name
    )
    end
    unless opts.empty?
      slider.bar_width(opts.fetch(:bar_width, 10))
      slider.set_value(opts.fetch(:initial_value, 0))
    end
    slider
  end
  
  def self.default
    { length: 100, range: (0..100) }
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
jruby_art-2.2.2 library/slider/slider.rb
jruby_art-2.2.1 library/slider/slider.rb
jruby_art-2.2.0 library/slider/slider.rb
jruby_art-1.7.0 library/slider/slider.rb
jruby_art-2.1.0.pre library/slider/slider.rb
jruby_art-2.0.0.pre library/slider/slider.rb
jruby_art-1.6.4 library/slider/slider.rb
jruby_art-1.6.3 library/slider/slider.rb