# File tk/lib/tkextlib/vu/pie.rb, line 130
def self.id2obj(pie, id)
pie_path = pie.path
SliceID_TBL.mutex.synchronize{
if SliceID_TBL[pie_path]
SliceID_TBL[pie_path][id]? SliceID_TBL[pie_path][id]: id
else
id
end
}
end
# File tk/lib/tkextlib/vu/pie.rb, line 141
def initialize(parent, *args)
unless parent.kind_of?(Tk::Vu::Pie)
fail ArgumentError, "expect a Tk::Vu::Pie instance for 1st argument"
end
@parent = @pie = parent
@ppath = parent.path
Pie_Slice_ID.mutex.synchronize{
@path = @id = Pie_Slice_ID.join(TkCore::INTERP._ip_id_)
Pie_Slice_ID[1].succ!
}
SliceID_TBL.mutex.synchronize{
SliceID_TBL[@ppath] = {} unless SliceID_TBL[@ppath]
SliceID_TBL[@ppath][@id] = self
}
if args[-1].kind_of?(Hash)
keys = args.unshift
end
@pie.set(@id, *args)
configure(keys)
end
# File tk/lib/tkextlib/vu/pie.rb, line 171
def []=(key,val)
configure key, val
val
end
# File tk/lib/tkextlib/vu/pie.rb, line 180
def cget(slot)
@pie.itemcget(@id, slot)
end
# File tk/lib/tkextlib/vu/pie.rb, line 184
def cget_strict(slot)
@pie.itemcget_strict(@id, slot)
end
# File tk/lib/tkextlib/vu/pie.rb, line 176
def cget_tkstring(slot)
@pie.itemcget_tkstring(@id, slot)
end
# File tk/lib/tkextlib/vu/pie.rb, line 193
def configinfo(*args)
@pie.itemconfiginfo(@id, *args)
end
# File tk/lib/tkextlib/vu/pie.rb, line 188
def configure(*args)
@pie.itemconfigure(@id, *args)
self
end
# File tk/lib/tkextlib/vu/pie.rb, line 197
def current_configinfo(*args)
@pie.current_itemconfiginfo(@id, *args)
end
# File tk/lib/tkextlib/vu/pie.rb, line 201
def delete
@pie.delete(@id)
end
# File tk/lib/tkextlib/vu/pie.rb, line 205
def explode(value)
@pie.explode(@id, value)
self
end
# File tk/lib/tkextlib/vu/pie.rb, line 210
def explode_value
@pie.explode_value(@id)
end
# File tk/lib/tkextlib/vu/pie.rb, line 214
def lower(other=None)
@pie.lower(@id, other)
self
end
# File tk/lib/tkextlib/vu/pie.rb, line 219
def raise(other=None)
@pie.raise(@id, other)
self
end
# File tk/lib/tkextlib/vu/pie.rb, line 224
def set(value)
@pie.set(@id, value)
self
end