Googie - There is a simple way to write [Itcl] widgets which work similar to [Tk] ones (because, as we know, [Itcl] objects work similar to [Tk] objects), but - it's important - without using [itk] (useful for [starpack]s). To implement some widget, we need to write a [Itcl] class like below: class Widget { constructor {args} { set w .[lindex [split $this "::"] end] ;# here we hack object name to be [Tk] widget tree compatible # here parsing options while constructing widget, such as colors, layout, etc } destructor { destroy $w # btw. - we need to bind $w destroying event to delete $this object } protected { variable w ;# this is our widget path } # and here, whatever you need... } This allows to do the following: Widget wid -some_option value pack .wid wid some_method delete wid or Widget some_frame.widget pack .some_frame.widget etc. ... and [Itcl] syntax allows to implement such widgets in very, very easy way! :) Have you some additional hints? ---- [Sarnold] 2005-07-16 -- Thanks for this work : I will probably use it for [itins] to build a ''itins::widget'' command I almost always use tclkit as my Tcl interpreter, so I have to choose between [incr Tcl] and [snit], that is just the way I came to building [itins], trying as well as I can to get the best of both. [LV] Actually, since you are including tcllib in your starkit, why not include itk as well, and then you can use iwidgets and not have to write all the above code? The kinds of things you describe writing above is what was written and debugged in itk. Of course, another OO option you have is [stooop], which is also in tcllib. [SRIV] I too use tclkit for all my apps, and would prefer to have a lightweight wrapper around itcl to make it more snit like. I'd rather not have to include iTk binaries for each platform. IMHO, [itins] with this code added may give me the performance and simplicity I've been looking for. ---- [Category Widget] [Category Object Orientation]