EmTK
– Embedded GUI Toolkit
EmTK
is a specially designed graphical user interface (GUI) library for handheld
devices with a small display. Typically, the size of the screen is 160[w]x160[h]
in pixels and smaller. The creation of EmTK has the aim of ease of use,
flexibility in GUI design, reduced processor power and less GUI application
development time. EmTK is most suitable for
applications on mobile phones and other pocket devices.
EmTK
is small, but sufficient for large applications. In EmTK, although there are
only a small number of widget sets provided, each widget is tailored for a
particular purpose. For example, label, icon, clist with text and icons, text
entry and dialog.
EmTK
is designed primarily for button operation but it is also suitable for touch
screen devices. EmTK is built from a lightweight graphic library GDK (the
underlying library of the industrial standard GUI library GTK+). The version of
GDK used in EmTK has been ported to run with the nano-X server of Microwindows.
Hence, EmTK provides a true windowing environment. In addition, EmTK also
supports multiple applications that need to use the display simultaneously.
EmTK
is event driven and it supports user callback function. The toolkit also
provides timer functions that can be used for general purpose.
EmTK’s
API is small. The API is designed to be small in order to make EmTK easy to use.
As a result, the number of function calls required to create a menu display is
small. Two examples can be seen in our Organizer and Calculator.
For more details, please see EmTK User Guide.
The
basic widgets provided in EmTK are:
Alert - to popup a window and display text for getting
user attention.
Button - to create an active area to receive user
selection.
Clist - to display a column of text and/or icons.
Entry - to enter text as data.
Dialog - to prompt user action.
Icon - to show an image.
Label - to show static text.
Progress – to show the status of a process.
![]() |
![]() |
| Fig 1. Clist with text and icons | Fig 2. Radio Button |
![]() |
![]() |
| Fig 3. Pull-down menu | Fig 4. Pop-up menu |
![]() |
![]() |
| Fig 5. Alert message | Fig 6. Progress bar |
![]() |
![]() |
| Fig 7. Dialog message | Fig 8. Text entry box |