Multimedia Tool Tk
Not logged in
Bounty program for improvements to Tcl and certain Tcl packages.
Learn more about Tcl/Tk at

Multi-Media Toolkit For Tcl/Tk

MMTk combines several commonly used Tk extensions into a single architecture and build philosophy. It is intended for kit-builders and integrators, though it will probably be useful for anyone in the Tcl community.

MMTk Provides the following Widgets:

1. Canvas3d.

The 3-D Canvas Widget provides Tk programs with 3-D graphics capabilities through the use of OpenGL. But the 3-D Canvas widget is not another thin wrapper around the OpenGL interface. This widget is a much higher-level abstraction. Just as the built-in canvas widget of Tk is a high-level abstraction of the X11 drawing routines, so too the 3-D Canvas widget is a high-level abstraction of OpenGL.

The current interface can be seen in the ./3dcanvas.html.

2. TkHtml

Tkhtml3 is a Tk widget that displays content formatted according to the HTML and CSS standards. Tkhtml3 is not an end-user application, it is for Tcl programmers who wish to embed a standards-compliant HTML/CSS implementation in their applications.

The current interface can be seen in the ./tkhtml.html.

3. (Coming Soon) TkImg

The "Img" package adds a lot of image formats to Tcl/Tk.

4. (In Planning) TkPath 5. (In Planning) Snack

Each extension is getting a build system makeover utilizing a TclOO based system called Practcl.

Each extension is also being updated to the latest tcl 8.6 API, as well as the latest native APIs.

fossil clone mmtk.fossil
mkdir mmtk
cd mmtk
fossil open ../mmtk.fossil

Or, if you don't want to mess with installing fossil (fossil is a self-contained, stand-alone binary and precompiled fossil binaries are available, so installation is trivial) then you can download the code as a ZIP archive as follows:

  1. Login as user "anonymous". The password is shown on the login page. (The reason for requiring login is to prevent spiders for downloading every historical version of 3dcanvas.
  1. Go to the timeline page and select a version of 3dcanvas that you want to download. Click on its link.
  1. Find the "ZIP archive" link on the baseline page. This will cause a ZIP archive containing the particular version of 3dcanvas you have selected to be built and downloaded.

Build instructions for various environments is here: Building.

A timeline of changes is available online. There is also a wiki devoted to this widget. The wiki is currently empty but feel free to change that. Use the ticket entry form to report bugs or request new features.

Code contributions are welcomed. Write access to the fossil repository can be arranged by contacting Sean Woods (yoda at etoyoc dot com).