Sha256: f8cffd6c599807cf8a25f499a08a427e04a227bcba0cd90d5d2e0a5b2b787873

Contents?: true

Size: 735 Bytes

Versions: 2

Compression:

Stored size: 735 Bytes

Contents

module Mohawk
  module Accessors
    class Combo
      attr_reader :view

      def initialize(adapter, locator)
        @view = adapter.window.select_list(locator)
      end

      def set(value)
        find(value).select
      end

      def clear(value)
        find(value).clear
      end

      def method_missing(meth, *args, &block)
        return super unless @view.respond_to?(meth)
        @view.send(meth, *args, &block)
      end

      def options
        @view.options.map &:text
      end

      def find(what)
        case what
          when Fixnum
            @view.options[what]
          when String
            @view.option(text: what)
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
mohawk-0.1.4 lib/mohawk/accessors/combo.rb
mohawk-0.1.0 lib/mohawk/accessors/combo.rb