class Tk::Winico
Constants
- PACKAGE_NAME
- WinicoID_TBL
Public Class Methods
icon_info(id)
click to toggle source
# File lib/tkextlib/winico/winico.rb, line 55 def self.icon_info(id) simplelist(Tk.tk_call('winico', 'info', id)).collect{|inf| h = Hash[*list(inf)] h.keys.each{|k| h[k[1..-1]] = h.delete(k)} } end
id2obj(id)
click to toggle source
# File lib/tkextlib/winico/winico.rb, line 43 def self.id2obj(id) WinicoID_TBL.mutex.synchronize{ (WinicoID_TBL.key?(id))? WinicoID_TBL[id] : id } end
info()
click to toggle source
# File lib/tkextlib/winico/winico.rb, line 49 def self.info simplelist(Tk.tk_call('winico', 'info')).collect{|id| Tk::Winico.id2obj(id) } end
new(file_name, resource_name=nil, winico_id=nil)
click to toggle source
# File lib/tkextlib/winico/winico.rb, line 72 def initialize(file_name, resource_name=nil, winico_id=nil) if resource_name # from resource if file_name @id = Tk.tk_call('winico', 'load', resource_name, file_name) else @id = Tk.tk_call('winico', 'load', resource_name) end elsif file_name # from .ico file @id = Tk.tk_call('winico', 'createfrom', file_name) elsif winico_id @id = winico_id else fail ArgumentError, "must be given proper information from where loading icons" end @path = @id WinicoID_TBL.mutex.synchronize{ WinicoID_TBL[@id] = self } end
new_from_file(file_name)
click to toggle source
# File lib/tkextlib/winico/winico.rb, line 64 def self.new_from_file(file_name) self.new(file_name) end
new_from_resource(resource_name, file_name = nil)
click to toggle source
# File lib/tkextlib/winico/winico.rb, line 68 def self.new_from_resource(resource_name, file_name = nil) self.new(file_name, resource_name) end
package_name()
click to toggle source
# File lib/tkextlib/winico/winico.rb, line 22 def self.package_name PACKAGE_NAME end
package_version()
click to toggle source
# File lib/tkextlib/winico/winico.rb, line 26 def self.package_version begin TkPackage.require('winico') rescue '' end end
Public Instance Methods
add_to_taskbar(keys = {})
click to toggle source
# File lib/tkextlib/winico/winico.rb, line 186 def add_to_taskbar(keys = {}) keys = _symbolkey2str(keys) Winico_callback._config_keys.each{|k| if keys[k].kind_of?(Array) cmd, *args = keys[k] #keys[k] = Winico_callback.new(cmd, args.join(' ')) keys[k] = Winico_callback.new(cmd, *args) # elsif keys[k].kind_of?(Proc) elsif TkComm._callback_entry?(keys[k]) keys[k] = Winico_callback.new(keys[k]) end } tk_call('winico', 'taskbar', 'add', @id, *(hash_kv(keys))) self end
Also aliased as: taskbar_add
delete()
click to toggle source
# File lib/tkextlib/winico/winico.rb, line 105 def delete tk_call('winico', 'delete', @id) WinicoID_TBL.mutex.synchronize{ WinicoID_TBL.delete(@id) } self end
Also aliased as: destroy
delete_from_taskbar()
click to toggle source
# File lib/tkextlib/winico/winico.rb, line 220 def delete_from_taskbar tk_call('winico', 'taskbar', 'delete', @id) self end
Also aliased as: taskbar_delete
id()
click to toggle source
# File lib/tkextlib/winico/winico.rb, line 95 def id @id end
info()
click to toggle source
# File lib/tkextlib/winico/winico.rb, line 114 def info Tk::Winico.icon_info(@id) end
modify_taskbar(keys = {})
click to toggle source
# File lib/tkextlib/winico/winico.rb, line 203 def modify_taskbar(keys = {}) keys = _symbolkey2str(keys) Winico_callback._config_keys.each{|k| if keys[k].kind_of?(Array) cmd, *args = keys[k] #keys[k] = Winico_callback.new(cmd, args.join(' ')) keys[k] = Winico_callback.new(cmd, *args) # elsif keys[k].kind_of?(Proc) elsif TkComm._callback_entry?(keys[k]) keys[k] = Winico_callback.new(keys[k]) end } tk_call('winico', 'taskbar', 'modify', @id, *(hash_kv(keys))) self end
Also aliased as: taskbar_modify
set_window(win_id, *opts)
click to toggle source
# File lib/tkextlib/winico/winico.rb, line 99 def set_window(win_id, *opts) # opts := ?'big'|'small'?, ?pos? # NOTE:: the window, which is denoted by win_id, MUST BE MAPPED. # If not, then this may fail or crash. tk_call('winico', 'setwindow', win_id, @id, *opts) end