TkEntry::ValidateCmd::ValidateArgs (Class)

In: tk/lib/tkentry.rb
Parent: Object

Methods

new   scan_args  

Constants

VARG_KEY = 'disvPSVW'
VARG_TYPE = 'nxeseesw'

Attributes

action  [R] 
current  [R] 
index  [R] 
string  [R] 
triggered  [R] 
type  [R] 
value  [R] 
widget  [R] 

Public Class methods

[Source]

# File tk/lib/tkentry.rb, line 71
      def initialize(d,i,s,v,pp,ss,vv,ww)
        @action = d
        @index = i
        @current = s
        @type = v
        @value = pp
        @string = ss
        @triggered = vv
        @widget = ww
      end

[Source]

# File tk/lib/tkentry.rb, line 32
      def self.scan_args(arg_str, arg_val)
        enc = Tk.encoding
        arg_cnv = []
        arg_str.strip.split(/\s+/).each_with_index{|kwd,idx|
          if kwd =~ /^%(.)$/
            if num = VARG_KEY.index($1)
              case VARG_TYPE[num]
              when ?n
                arg_cnv << TkComm::number(arg_val[idx])
              when ?s
                arg_cnv << TkComm::string(arg_val[idx])
              when ?e
                if enc
                  arg_cnv << Tk.fromUTF8(TkComm::string(arg_val[idx]), enc)
                else
                  arg_cnv << TkComm::string(arg_val[idx])
                end
              when ?w
                arg_cnv << TkComm::window(arg_val[idx])
              when ?x
                idx = TkComm::number(arg_val[idx])
                if idx < 0
                  arg_cnv << nil
                else
                  arg_cnv << idx
                end
              else
                arg_cnv << arg_val[idx]
              end
            else
              arg_cnv << arg_val[idx]
            end
          else
            arg_cnv << arg_val[idx]
          end
        }
        arg_cnv
      end

[Validate]