class Magnesium::SelectList

Attributes

box[RW]
browser[RW]

Public Instance Methods

element(locate,value) click to toggle source
# File lib/magnesium/elements/select_list.rb, line 15
    def element(locate,value)
      begin
        if locate == 'id'
          @e = @browser.select_list(:id => value.to_s)
        elsif locate == 'name'
          @e = @browser.select_list(:name => value.to_s)
        elsif locate == 'index'
          @e = @browser.select_list(:index => value.to_i)
        else
#          nonfun
          puts 'M: I need time to grow up.'
        end
#      rescue
#        error
        #ensure
      end
    end
execute(action,data) click to toggle source
# File lib/magnesium/elements/select_list.rb, line 33
    def execute(action,data)
      begin
        if action == 'select'
          if Config.config["wait"]["isstart"] == "true"
            return @e.when_present(Config.config["wait"]["value"].to_i).select data.to_s
          elsif Config.config["wait"]["isstart"] == "false"
            return @e.select data.to_s
          else
            #error
            puts '...'
          end
        elsif action == 'exists'
          if Config.config["wait"]["isstart"] == "true"
            return @e.when_present(Config.config["wait"]["value"]).exists?
          elsif Config.config["wait"]["isstart"] == "false"
            return @e.exists?
          else
#            error
            puts '...'
          end
        elsif action == 'wait_until_present'
          return @e.wait_until_present
        elsif action == 'wait_while_present'
          return @e.wait_while_present
        else
#          nonfun
          puts 'M: I need time to grow up.'
        end
#      rescue
#        error
        #ensure
      end
    end
generate() click to toggle source

def setbox(box)

@box = box

end

def getbox()

return @box

end

def setbrowser(browser)

@browser = browser

end

def getbrowser()

return @browser

end

# File lib/magnesium/elements/select_list.rb, line 84
    def generate()
      unless @box.empty?
        @box.collect do |f|
          if f["name"] == 'frame'
            @browser = Frame.dealframe(@browser,f["locate",],f["value"])
          elsif f["name"] == 'div'
            @browser = Div.dealdiv(@browser,f["locate"],f["value"])
          elsif f["name"] == 'span'
            @browser = Span.dealspan(@browser,f["locate"],f["value"])
          elsif f["name"] == 'table'
            @browser = Table.dealtable(@browser,f["locate"],f["value"])
          else
#            nonfun
            puts '...'
          end
        end
      end
    end