# File tk/lib/tk/canvastag.rb, line 242 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 253 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 284 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 276 def exist? if @c.find_withtag(@id) true else false end end
# File tk/lib/tk/canvastag.rb, line 294 def set_to_above(target) @c.addtag_above(@id, target) self end
# File tk/lib/tk/canvastag.rb, line 300 def set_to_all @c.addtag_all(@id) self end
# File tk/lib/tk/canvastag.rb, line 306 def set_to_below(target) @c.addtag_below(@id, target) self end
# File tk/lib/tk/canvastag.rb, line 312 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 318 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 324 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 330 def set_to_withtag(target) @c.addtag_withtag(@id, target) self end
Commenting is here to help enhance the documentation. For example, code samples, or clarification of the documentation.
If you have questions about Ruby or the documentation, please post to one of the Ruby mailing lists. You will get better, faster, help that way.
If you wish to post a correction of the docs, please do so, but also file bug report so that it can be corrected for the next release. Thank you.
If you want to help improve the Ruby documentation, please visit Documenting-ruby.org.