Maintenance of Ruby 2.0.0 ended on February 24, 2016. Read more
# File tk/lib/tk/canvastag.rb, line 241 def TkcTag.id2obj(canvas, id) cpath = canvas.path CTagID_TBL.mutex.synchronize{ if CTagID_TBL[cpath] CTagID_TBL[cpath][id]? CTagID_TBL[cpath][id]: id else id end } end
# File tk/lib/tk/canvastag.rb, line 252 def initialize(parent, mode=nil, *args) #unless parent.kind_of?(TkCanvas) # fail ArgumentError, "expect TkCanvas for 1st argument" #end @c = parent @cpath = parent.path Tk_CanvasTag_ID.mutex.synchronize{ # @path = @id = Tk_CanvasTag_ID.join('') @path = @id = Tk_CanvasTag_ID.join(TkCore::INTERP._ip_id_) Tk_CanvasTag_ID[1].succ! } CTagID_TBL.mutex.synchronize{ CTagID_TBL[@cpath] = {} unless CTagID_TBL[@cpath] CTagID_TBL[@cpath][@id] = self } if mode tk_call_without_enc(@c.path, "addtag", @id, mode, *args) end end
# File tk/lib/tk/canvastag.rb, line 283 def delete @c.delete @id CTagID_TBL.mutex.synchronize{ CTagID_TBL[@cpath].delete(@id) if CTagID_TBL[@cpath] } self end
# File tk/lib/tk/canvastag.rb, line 275 def exist? if @c.find_withtag(@id) true else false end end
# File tk/lib/tk/canvastag.rb, line 293 def set_to_above(target) @c.addtag_above(@id, target) self end
# File tk/lib/tk/canvastag.rb, line 299 def set_to_all @c.addtag_all(@id) self end
# File tk/lib/tk/canvastag.rb, line 305 def set_to_below(target) @c.addtag_below(@id, target) self end
# File tk/lib/tk/canvastag.rb, line 311 def set_to_closest(x, y, halo=None, start=None) @c.addtag_closest(@id, x, y, halo, start) self end
# File tk/lib/tk/canvastag.rb, line 317 def set_to_enclosed(x1, y1, x2, y2) @c.addtag_enclosed(@id, x1, y1, x2, y2) self end
# File tk/lib/tk/canvastag.rb, line 323 def set_to_overlapping(x1, y1, x2, y2) @c.addtag_overlapping(@id, x1, y1, x2, y2) self end
# File tk/lib/tk/canvastag.rb, line 329 def set_to_withtag(target) @c.addtag_withtag(@id, target) self end