Differences between version 2 and previous revision of ToolKit.
Other diffs: Previous Major Revision, Previous Author, or view the Annotated Edit History
Newer page: | version 2 | Last edited on Monday, October 27, 2003 11:28:13 am | by StuartYeates | Revert |
Older page: | version 1 | Last edited on Sunday, October 26, 2003 5:25:09 am | by AristotlePagaltzis | Revert |
@@ -2,4 +2,10 @@
In a [GUI] application written without a ToolKit the actual program is a long loop that continuously calls a function to poll incoming events and then feeds them into a huge switch construct that decides how to react to each event. Every single facet of the application's behaviour has to be reflected here. Needless to say, writing non-trivial applications this way is tiresome at best.
A [GUI] ToolKit's main responsibility is to abstract away this event loop in a way that it can be maintained and extended easily. To this end, the different "widgets" (such as buttons, labels, menus etc) of a [GUI] are treated as black boxes. An EventModel is then specified, which defines how events "propagate" across these blackboxes. The EventModel is a large factor in the design of an application's architecture. Different [ToolKit]s tend to use very different [EventModel]s, which can cause a great deal of confusion.
+
+[GUI] Toolkits include:
+# Tk ([Perl], TCL)
+# awt (Java)
+# swing (awt, [Java])
+#