Chapter 17. Introduction
What are GUI toolkits?
Graphical User Interface
There are many OSes out there
Every OS looks different
There must be some way to get buttons, windows, etc.
There is no common standard!
Unfortuntely, every OS has a different "windowing system"
- Unix / Linux
- MacOS X
uses Win32 API.
Programming for these systems direct is not much fun. It involved plain C (no C++).
Therefore, people have written toolkits.
In computer programming, widget toolkits (or GUI toolkits) are sets of basic building elements for graphical user interfaces. They are often implemented as a library, or application framework.
Some very common Toolkits are:
build on top of X11, written in C.
- GTK (Gimp Tool Kit)
build on top of X11, written in C. A windows version is available, but not as stable.
Written in C++. The X11 version is free, the windows version is commercial.
Build on top of Aqua. Written in C.
Build on top of Aqua. Written in Obj-C.
- MFC (Microsoft Foundation Classes)
Build on top of Win32. Written in C++. Only available with Visual Studio
- VCL (Visual Component Library)
Build on top of Win32. Written in C++. Only available with Borland compilers.
Cross-Plattform. Works on top of X11, Carbon, or Win32. Written in C++. Freely available for most compilers.
There are many, many other toolkits. This is just a small selection.
Unfortunately most of these toolkits do not come standard on the respective OS. That means:
When you develop, you need to make sure the development portion of the toolkit you are using is installed on the machine
When you deploy, you need to ensure that the deployment portion of the toolkit is on the users machine. For windows, this means .dll files.