class TkValidateCommand
Public Class Methods
_config_keys()
click to toggle source
# File lib/tk/validation.rb, line 292 def self._config_keys # array of config-option key (string or symbol) ['vcmd', 'validatecommand', 'invcmd', 'invalidcommand'] end
new(cmd = Proc.new, *args)
click to toggle source
# File lib/tk/validation.rb, line 335 def initialize(cmd = Proc.new, *args) _initialize_for_cb_class(self.class::ValidateArgs, cmd, *args) end
Public Instance Methods
_initialize_for_cb_class(klass, cmd = Proc.new, *args)
click to toggle source
# File lib/tk/validation.rb, line 297 def _initialize_for_cb_class(klass, cmd = Proc.new, *args) extra_args_tbl = klass._get_extra_args_tbl if args.compact.size > 0 args.map!{|arg| klass._sym2subst(arg)} args = args.join(' ') keys = klass._get_subst_key(args) if cmd.kind_of?(String) id = cmd elsif cmd.kind_of?(TkCallbackEntry) @id = install_cmd(cmd) else @id = install_cmd(proc{|*arg| ex_args = [] extra_args_tbl.reverse_each{|conv| ex_args << conv.call(arg.pop)} klass.ret_val(cmd.call( *(ex_args.concat(klass.scan_args(keys, arg))) )) }) + ' ' + args end else keys, args = klass._get_all_subst_keys if cmd.kind_of?(String) id = cmd elsif cmd.kind_of?(TkCallbackEntry) @id = install_cmd(cmd) else @id = install_cmd(proc{|*arg| ex_args = [] extra_args_tbl.reverse_each{|conv| ex_args << conv.call(arg.pop)} klass.ret_val(cmd.call( *(ex_args << klass.new(*klass.scan_args(keys, arg))) )) }) + ' ' + args end end end
to_eval()
click to toggle source
# File lib/tk/validation.rb, line 339 def to_eval @id end