Toucan 1.2 (a feathered friend for the Palm)
Toucan is based on Tcl/Tk (of course!) and provides an environment for
developing Palm Tcl applications using Tk widgets to give an approximate
appearance to the Palm Forms interface. It is not a 100% perfect look-and-feel
(at least with the initial versions), but it is sufficient for the user to design
the Forms interface and create the Tcl scripts to glue them all together.
The intent is that once the Palm Tcl application is developed, the IDE will
convert the relevant Forms interface elements into a resource script file and
place the Tcl glue scripts into a separate script file. Once this is done, the
resource script file can be passed through Pilrc (version 2.8), sourcing in the
Tcl glue script file at that time. Finally, par (version 00.05.01) will combine
the binaries generated by Pilrc with the Palm Tcl library to form a Palm
resource file ready to download into a Palm PDA or Pose.
Toucan runs on both GNU/Linux/X Windows and Microsoft Windows platforms,
though current development is on Slackware Linux 8.0 with TclTk 8.3.4.
Toucan is licensed under the same license as Tcl. Details can be found in the
file LICENSE in the distribution.
Here is a list of what Toucan provides:
- Graphical creation of Palm FORM and MENU resources.
- Support for all FORM objects supported by Palm Tcl 0.3.
- Drag-n-drop generation of FORM objects.
- Access to default FORM object properties via right-click on drag-n-drop
source labels.
- Repositioning of forms and form objects via mouse drag with visual
feedback of current coordinates.
- Mouse double-click on individual MENU, FORM, and FORM objects displays a
pop-up operations menu for access to element properties, element deletion, and
copying of the assigned resource ID to the cut buffer for pasting to your
favorite text editor (useful for speeding up Palm Tcl script development).
- Dynamic modification of MENU, FORM, and FORM object properties via dialog
windows.
- Creation and editing of Palm launcher large icon and small icon resource
bitmaps. Jan Nitjmans' Img extension is needed to support BMP file read and
write.
- Creation of BITMAP[GREY|GREY16|COLOR|COLOR16|COLOR16K] elements and their
associations to BMP files. Support for FORMBITMAP objects has been added to
allow placement of bitmaps onto the Palm display.
- Support for the STRING resources. STRING resources can be treated as either
arbitrary strings or Palm Tcl scripts.
- For some Form objects, a default to AUTO on width or height is set when
the corresponding slider is set to 0.
- Entries on Form element and Form object dialogs which reference other
resources (namely IDs) are now pick lists of ID values that are currently
available. For example, the Menu ID selection on the Form properties dialog is
disabled (or only one 'Null' entry) unless there are Menu IDs to select from
. Note that this causes some breakage of Toucan 1.0
project (.tpj) files.
- A built-in, multiple document interface (MDI) editor is available to support
the editing of STRING resources. When editing Palm Tcl scripts, the editors
provide syntax highlighting. Standard editing functions are available, through
both hot keys and an Edit menu. Editor characteristics, such as font type, size,
and color, can be changed by the user. The editor content can be stored in an
external file (mainitaining compatibility with earlier version of Toucan) or
embedded within the Toucan project file and the resource script file processed by
PilRC. Each editor window has document change detection to prevent loss of unsaved
data. The MDI editor is based on the ctext megawidget (version 2.5.1) developed
by George Peter Staplin enhanced to provide electric brace, parenthesis, and
quotes matching and text change detection.
- Setting of command line parameters for PilRC and par utilities. Both
utilities are required for use with Toucan (see Links below).
- Generation of PilRC script file (.rcp) and files generated by PilRC and
par commands, with execution feedback in a dialog window.
- Storage and retrieval of all resource properties, bitmap data, and utility
parameters in a single Toucan project file (.tpj). Optionally, files containing
STRING resources that are referenced by the Toucan project and be loaded
automatically when the project is loaded.
- The HTML-based documentation has been replaced with documentation in PDF
format.
- Graphic icons are available for use with desktop launchers.
- New toucanLib1.2 library file to hold supporting libraries.
Current documentation is in the form of a manual in Abobe Acrobat (.pdf)
format. It can be found in the Toucan 1.2 distributions.
Files on CDROM
A copy of the paper Toucan: A feathered friend for the Palm in Abobe Acrobat
(.pdf) format can be obtained here. This paper was
presented at the 9th Annual Tcl/Tk Conference in Vancouver, B.C., Canada on September
19, 2002.
Toucan 1.2.1 in a gzipped tar archive for GNU/Linux (and other Un*xes) can be
obtained here.
Toucan 1.2.1 in a pkzip archive for Microsoft Windows can be obtained
here.
Palm Tcl 0.4 in a pkzip archive can be obtained here.
Note that this archive contains pre-compiled binaries of the PilRC and par utilities
for Microsoft Windows.
A source code distribution of PilRC 2.8 in a gzipped tar archive can be obtained
here.
A source code distribution of par 0.05.01 in a gzipped tar archive can be obtained
here.
Feedback
Feedback and suggestions for new features for Toucan are
invited. Be aware that development is still ongoing. New features and bug fixes
are in the works. New versions of Toucan will be made available as time allows.
You can send your emails to maccody@home.com. Replace "home" with
"attbi" for all you non-spammers!
Links
The ActiveState Tcl website.
Ashok Nadkarni, developer of Palm Tcl, has a SourceForge site.
Home page of Jan Nitjmans,
developer of the Img extension.
Home page of George Peter Staplin and
the ctext megawidget.
Home page of Aaron Ardiri and the
PilRC
utility.
Home page of David Williams and
the par utility.
The Palm OS Developers webpage.
© 2001, 2002 Mac A. Cody
Last updated Wednesday, August 21, 2002