Methods
- #
- A
- C
- N
- O
- R
- S
- U
Included Modules
Class Public methods
new(hash = nil)
Link
Instance Public methods
+(hash)
Link
[]=(key, val)
Link
assign(*wins)
Link
# File ext/tk/lib/tk/optionobj.rb, line 58 def assign(*wins) # win := # widget #==> call widget.configure(hash) # [widget] #==> call widget.configure(hash) # [widget, nil, {src=>target, ... }] # #==> call widget.configure(hash) # with converting hash-key # [widget, method] #==> call widget.method(hash) # [widget, method, {src=>target, ... }] # #==> call widget.method(hash) # with converting hash-key # [widget [receiver, method, arg, ... ]] # #==> call receiver.method(arg, ... , hash) # [widget [receiver, method, arg, ... ], {src=>target, ... }] # #==> call receiver.method(arg, ... , hash) # with onverting hash-key # # src := option_name_on_optobj # # target := # nil #==> not use the src # option_name_on_target_widget # [ option_name_on_target_widget, ... ] # #==> set all of them # wins.each{|win| _remove_win(win) @observ << win notify(win) } self end
configure(key, value=nil)
Link
notify(target = nil)
Link
Also aliased as: apply
# File ext/tk/lib/tk/optionobj.rb, line 98 def notify(target = nil) if target targets = [target] elsif @observ.empty? return self else targets = @observ.dup end return self if empty? org_hash = _symbolkey2str(self) targets.each{|win| widget = receiver = win hash = org_hash begin if win.kind_of?(Array) widget, method, conv_tbl = win receiver = widget if conv_tbl hash = {} org_hash.each{|key, val| key = conv_tbl[key] if conv_tbl.key?(key) next unless key if key.kind_of?(Array) key.each{|k| hash[k] = val} else hash[key] = val end } end if method.kind_of?(Array) receiver, method, *args = method receiver.__send__(method, *(args << hash)) elsif method widget.__send__(method, hash) else widget.configure(hash) end else widget.configure(self) end rescue => e if ( ( widget.kind_of?(TkObject) && widget.respond_to?('exist?') && ! receiver.exist? ) || ( receiver.kind_of?(TkObject) && receiver.respond_to?('exist?') && ! receiver.exist? ) ) @observ.delete(win) else fail e end end } self end
observ_info()
Link
observs()
Link
replace(hash)
Link
store(key, val)
Link
unassign(*wins)
Link