Purpose: collect information and pointers to what mega[widget]s are, how to write them, etc. ---- Occasionally these have been called ''meta-widgets'' rather than megawidgets. ---- A mega widget is NOT an attempt to create new, unique, widgets. Instead, it is an effort to combine existing widgets in ways that are commonly needed (or at the very least interesting to the person who is writing the megawidget). - [RS]: Note that in contrast to megawatts or megabytes, a megawidget is not worth a million widgets ;-) Not really knowing too much about the Tk side of things, is a megawidget analogous to a UIPattern? [http://time-tripper.com/uipatterns/] ---- See also [Composite fields megawidgets]. See [Adding User Data to Widgets the Megawidget Way]. Steve Uhler's 1996 Tcl workshop presentation slides on the search for the perfect megawidget can be found at http://www.usenix.org/publications/library/proceedings/tcl96/uhler.html Chengye Mao mailto:chengye.geo@yahoo.com has a web page which discusses building combined widgets (aka mega widgets) in pure Tcl at http://www.geocities.com/%7Echengye/comb.html. [Creating a BWidget Widget] talks about what it takes to write another Bwidget widget - sort of a similar topic. Also see [Enhancing BWidget], which talks about how to get more bang out of using bwidget widgets. ---- ''[escargo] 16 Jan 2004'' - In a recently modified page, [A scrolled frame], it was mentioned that the scrolledframe megawidget, since its used the [grid] [geometry manager], can only be within a parent that also uses the grid geometry manager. What are the ways that a megawidget can be queried to determine which geometry manager it can be used with? Is this an [Introspection] issue? [ulis], 2005-10-30. For most (all?) megawidgets the parent geometry manager doesn't matter. In the case you mention, a ''wrapper'' was built for a megawidget, adding scrollbars at the parent level and using the '''grid manager''' for that. This only works if the parent wasn't already using the '''pack manager'''. Hence the warning for the use of the wrapper, not for the use of the megawidget. I think that most megawidgets are isolated inside a frame so you can use them as any normal widget without worrying about the parent geometry manager. ---- Here are some megawidget ''frameworks'' (in other words, code designed to make it easier to build megawidgets). Please add to the following list. * [BWidget] * [tkBuilder] * [MegaWidget package] * [mkextensions] , which include an object mechanism and mkWidgets for megawidgets. * [MIT otcl megawidget system] * [mwidx] * [obTcl] * [Pool (Kupries)] * [scwoop] * [Snit's Not Incr Tcl] * [tablelist] * [TkMegaWidget] * [tix] * [incr Tk] * [eWidgets Toolkit] * [Namespace MegaWidgets] * [slate] * [Pmw] What: Pmw Where: http://www.dscpl.com.au/pmw/ ftp://ftp.dscpl.com.au/pub/pmw/Pmw.0.8.tar.gz http://www.dejanews.com/getdoc.xp?AN=423519318 http://pmwcontribd.sourceforge.net/ Description: A megawidget framework for constructing high-level compound widgets in Python 1.5.2 using Tk 8.x. Contains of a set of base classes for building megawidgets and a library of megawidgets such as ComboBox, Dialog, ButtonBox, etc. Also contains a python interface to BLT2.1's busy, graph and vector commands. The PmwContribD web site provides several Pmw based Tkinter widgets, including a ProgressMeter, basic TreeNavigator, and a GUI application framework for creating simple GUI apps quickly. Updated: 10/1999 Contact: mailto:gregm@iname.com (Greg McFarlane) mailto:doug@hellfly.net (Doug Hellmann) ---- [Category GUI]