diff options
| author | nagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2003-07-23 16:07:35 +0000 |
|---|---|---|
| committer | nagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2003-07-23 16:07:35 +0000 |
| commit | ef3e52e3c1cd81d6a631b4f28f82b7f1be78f459 (patch) | |
| tree | c77c6520287d10d2abab0f6e119d8eb5d7e36a80 /ext/tk/lib/tkcanvas.rb | |
| parent | 00eb7c80420cc05b4750eaa7529d762cf89f0fbd (diff) | |
| download | ruby-ef3e52e3c1cd81d6a631b4f28f82b7f1be78f459.tar.gz ruby-ef3e52e3c1cd81d6a631b4f28f82b7f1be78f459.tar.xz ruby-ef3e52e3c1cd81d6a631b4f28f82b7f1be78f459.zip | |
process.c : unify indentation
configure.in : add --enable-setreuid option
tcltklib.c : TclTkIp.new accepts 'ip-name' and 'options'
( e.g. TclTkIp.new('FOO', '-geometry 500x200 -use 0x2200009') )
tk.rb : support arguments of TclTkIp.new
( see TkCore::IP_NAME, TkCore::IP_OPTS )
tk*.rb : preparations for multi-Tk interpreter support
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@4127 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/tk/lib/tkcanvas.rb')
| -rw-r--r-- | ext/tk/lib/tkcanvas.rb | 45 |
1 files changed, 17 insertions, 28 deletions
diff --git a/ext/tk/lib/tkcanvas.rb b/ext/tk/lib/tkcanvas.rb index a98d770cc..cbe4f8904 100644 --- a/ext/tk/lib/tkcanvas.rb +++ b/ext/tk/lib/tkcanvas.rb @@ -29,6 +29,7 @@ class TkCanvas<TkWindow include TkTreatCItemFont include Scrollable + TkCommandNames = ['canvas'.freeze].freeze WidgetClassName = 'Canvas'.freeze WidgetClassNames[WidgetClassName] = self @@ -527,15 +528,10 @@ end class TkcTag<TkObject include TkcTagAccess - CTagID_TBL = {} - Tk_CanvasTag_ID = ['ctag0000'] + CTagID_TBL = TkCore::INTERP.create_table + Tk_CanvasTag_ID = ['ctag', '00000'] - TkComm.__add_target_for_init__(self) - - def self.__init_tables__ - CTagID_TBL.clear - Tk_CanvasTag_ID[0] = 'ctag0000' - end + TkCore::INTERP.init_ip_env{ CTagID_TBL.clear } def TkcTag.id2obj(canvas, id) cpath = canvas.path @@ -549,10 +545,10 @@ class TkcTag<TkObject end @c = parent @cpath = parent.path - @path = @id = Tk_CanvasTag_ID[0] + @path = @id = Tk_CanvasTag_ID.join CTagID_TBL[@cpath] = {} unless CTagID_TBL[@cpath] CTagID_TBL[@cpath][@id] = self - Tk_CanvasTag_ID[0] = Tk_CanvasTag_ID[0].succ + Tk_CanvasTag_ID[1] = Tk_CanvasTag_ID[1].succ if mode tk_call @c.path, "addtag", @id, mode, *args end @@ -664,17 +660,17 @@ class TkcTagCurrent<TkcTag end class TkcGroup<TkcTag - Tk_cGroup_ID = ['tkcg00000'] + Tk_cGroup_ID = ['tkcg', '00000'] def create_self(parent, *args) if not parent.kind_of?(TkCanvas) fail format("%s need to be TkCanvas", parent.inspect) end @c = parent @cpath = parent.path - @path = @id = Tk_cGroup_ID[0] + @path = @id = Tk_cGroup_ID.join CTagID_TBL[@cpath] = {} unless CTagID_TBL[@cpath] CTagID_TBL[@cpath][@id] = self - Tk_cGroup_ID[0] = Tk_cGroup_ID[0].succ + Tk_cGroup_ID[1] = Tk_cGroup_ID[1].succ add(*args) if args != [] end @@ -697,13 +693,9 @@ class TkcItem<TkObject include TkcTagAccess CItemTypeToClass = {} - CItemID_TBL = {} + CItemID_TBL = TkCore::INTERP.create_table - TkComm.__add_target_for_init__(self) - - def self.__init_tables__ - CItemID_TBL.clear - end + TkCore::INTERP.init_ip_env{ CItemID_TBL.clear } def TkcItem.type2class(type) CItemTypeToClass[type] @@ -828,19 +820,16 @@ end class TkImage<TkObject include Tk - Tk_IMGTBL = {} - Tk_Image_ID = ['i00000'] + TkCommandNames = ['image'.freeze].freeze - TkComm.__add_target_for_init__(self) + Tk_IMGTBL = TkCore::INTERP.create_table + Tk_Image_ID = ['i', '00000'] - def self.__init_tables__ - Tk_IMGTBL.clear - Tk_Image_ID[0] = 'i00000' - end + TkCore::INTERP.init_ip_env{ Tk_IMGTBL.clear } def initialize(keys=nil) - @path = Tk_Image_ID[0] - Tk_Image_ID[0] = Tk_Image_ID[0].succ + @path = Tk_Image_ID.join + Tk_Image_ID[1] = Tk_Image_ID[1].succ tk_call 'image', 'create', @type, @path, *hash_kv(keys) Tk_IMGTBL[@path] = self end |
