Version 21 of ntkWidget

Updated 2007-12-19 15:45:38 by LV

ntkWidget is an implementation of widgets similar to the existing Tk widgets (label, frame button, text, entry ...) by apw, which is based on the megapkg, ntk and freetypeext packages written by GPS. The idea is to have images as the base of all widgets and parts thereof. The implementation is derived from the NexTk implemented by GPS.

The implementation is done with an extended version of incr Tcl: itcl-ng, which provides the necessary functionality. Nevertheless it should be possible to use "normal" proc functionality of Tcl to use that package and to build for example megawidgets or GUIs based on the package.

General information on some of the "structuring" used for all of the commands below:

  • color values consist of a RGBA list, example: [list 255 0 255 255]. The first three elements being the R, G and B value, the last one being the alpha value.
  • window path_names by convention start with a "." and the parts are separated with a "." example: .w1.w2.b1

The current commands are:

These are mostly implemented.

Additional commands will be:

The commands are implemented in the ::ntk namespace as ntk namespace ensemble commands, so at least Tcl8.5b1 and Itcl 4.0 (itcl-ng) are necessary.


apw 2007-12-02 -- for trying out this package (this is still work in progress !!) you need at the moment:

  • Tcl version 8.5b3 or greater
  • tclOO HEAD version + the diffs in the attachment file of tclOO RFE 1842588 [L1 ]
  • itcl-ng HEAD version see URL: [L2 ]
  • in the itcl-ng repository you need to build and install the Itcl 4.0 package in subdirectory itcl
  • in the itcl-ng repository you need to build and install the some packages which are in subdirectories of subdirectory itk (itk package itself is not needed !!), see the next few lines
  • tclGL (subdirectory of itk)which contains Tcl package TclGL
  • glmwfw (subdirectory of itk) which contains Tcl package Glmwfw
  • glmwfwx11 (subdirectory of itk)which contains Tcl package GlmwfX11
  • ntkWidgetImage (subdirectory of itk)which contains Tcl package ntkWidgetImage
  • ntk (subdirectory of itk)which contains Tcl package ntkWidget

The small demos are found in ntk/demos directory. They are all started with: tclsh8.5 <demoFileName>.tcl. Some have an additional command line parameter degrees to determine how much the widget should be rotated. There is also a short README file there.

Here a short overview over the directory hierarchy:

top directory itcl itk itk itk itk itk itk itk
package directory ntk tclGL glmwfw glmwfwx11 glmwfwwin32 glmwfwmacosx ntkWidgetImage
source code directory generic library + demos generic generic generic generic generic generic
package name Itcl 4.0 ntkWidget 0.1 TclGL 0.1 Glmwfw 0.1 GlmwfwX11 0.1 GlmwfwWin32 0.1 GlmwfwMacosx 0.1 ntkWidgetImage 0.1

This code is currently only running under Linux/Unix, it has been tested with SUSE Linux 10.0

There is work in progress for support of Windows (glmwfwwin32) and there will be support for MAC OSX in the future.


Category Package Category GUI Category Graphics