Sha256: d293828e4c564c741e4f7f7cec6e79b2b360445fc1aabe500f1f85c954ee62fe

Contents?: true

Size: 1.15 KB

Versions: 3

Compression:

Stored size: 1.15 KB

Contents

# encoding: utf-8
module Watir
  class Input < HTMLElement

    alias_method :readonly?, :read_only?

    def enabled?
      !disabled?
    end

    #
    # Return the type attribute of the element, or 'text' if the attribute is invalid.
    # TODO: discuss.
    #
    # @return [String]
    #

    def type
      assert_exists
      value = @element.attribute("type").to_s

      # we return 'text' if the type is invalid
      # not sure if we really should do this
      TextFieldLocator::NON_TEXT_TYPES.include?(value) ? value : 'text'
    end

    #
    # not sure about this
    #
    # this is mostly useful if you're using Browser#element_by_xpath, and want to
    # 'cast' the returned Input instance to one of the subclasses
    #

    def to_checkbox
      assert_exists
      Watir::CheckBox.new(@parent, :element, @element)
    end

    def to_radio
      assert_exists
      Watir::Radio.new(@parent, :element, @element)
    end

    def to_button
      assert_exists
      Watir::Button.new(@parent, :element, @element)
    end

    def to_select_list
      assert_exists
      Watir::SelectList.new(@parent, :element, @element)
    end

  end # Input
end # Watir

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
watir-webdriver-0.0.6 lib/watir-webdriver/elements/input.rb
watir-webdriver-0.0.5 lib/watir-webdriver/elements/input.rb
watir-webdriver-0.0.4 lib/watir-webdriver/elements/input.rb