Toucan 1.2.1 - A feathered friend for the Palm

Toucan is based on Tcl/Tk (of course!) and provides an environment for
developing PalmTcl 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 version), 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 PalmTcl 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 PalmTcl
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.

Here is a list of what Toucan provides:

o Graphical creation of Palm FORM and MENU resources.

o Support for all FORM objects supported by PalmTcl 0.3 and later.

o Drag-n-drop generation of FORM objects.

o Access to default FORM object properties via right-click on
  drag-n-drop source labels.

o Repositioning of forms and form objects via mouse drag with visual
  feedback of current coordinates.

o 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 PalmTcl
  script development).

o Dynamic modification of MENU, FORM, and FORM object properties via
  dialog windows.

o 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.

o 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.

o For some Form objects a default to AUTO on width or height is set
  when corresponding slider is set to 0.

o 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.

o STRING resources are supported for use as Palm Tcl scripts or general
  text strings. A built-in editor is created for each instance of a
  STRING resource.  Each editor can either reference an external file
  or an embedded string.  Electric brace matching is available for all
  editors.  Editors created for Palm Tcl scripts also provide syntax
  highlighting.  The user can configure the font used by the editors as
  well as the colors of the font foreground and background, syntax
  highlighting, and electric brace matching action.

o The Help ID in the Form object properties dialog can be set to reference
  any STRING element that is present.  On modal FORMS, the help icon
  appears if the HELP ID has a STRING resource ID selected.

o Setting of command line parameters for PilRC and par utilities.  Both
  utilities are required for use with Toucan.

o Generation of PilRC script file (.rcp) and files generated by PilrRC
  and par commands, with execution feedback in a dialog window.

o Storage and retrieval of all resource properties, bitmap data, and
  utility parameters in a single Toucan project file (.tpj).

o The HTML-based documentation has been replaced with documentation
  in PDF format.

o Graphic icons are available for use with desktop launchers.

o New toucanLib1.2 library file to hold supporting libraries.


Installation

Installation instructions for Toucan can be found in ToucanManual.pdf
in the docs directory.  Questions, comments, bug reports, and
suggestions can be sent to Mac Cody at maccody@attbi.com.


ToDo List

Below are a list of things I (might) like to do with future versions
of Toucan (beside bug fixes ;-). The list is presented, more or less,
in order of priority (subject to change, of course).

o Support for Scale and Gadget objects on Forms.
  This is almost in place already, but won't be activated until
  support is available in PalmTcl.

o Improved user interface: graphical icon palette for user interface
  components and an icon bar for frequently used operations

o Support for different Palm handheld layouts (e.g. Sony Clié has a
  320x320 pixel display and AlphaSmart Dana  has a 560x160 pixel
  display)

o Improved look-and-feel of the simulated Palm display

o Syntax checking of Palm Tcl scripts using a modified version of
  Lindsay Marshall's Frink tool

o Integrated Palm application and database up/download

o Improved icon support
  Import BMP files into Toucan to serve as icons. Improved bitmap
  editing capabilities.  Support for color icons.

o Palm Tcl database creation and management

o Integration with Pose
  Not sure what this will mean yet.

o Complete bitmap editor
  Complete 1-bit mode at this time and extend to color in the future.
  Possible added functions:
    Pixel map shift (right/left, up/down)
    Pixel map copy
    Pixel map import?
    Undo capability?
    Different paintbrush styles
    Cut and paste functions
    Color fill

o Develop help system
  Look for existing help system(s) to incorporate into application.

o Closer Tk emulation
  Use secondary Tcl script(s) to containerize Tk emulation data.  Make
  object emulation of widget heirarchy to map to forms and form elements.
  Allow symbolic naming of Forms, form elements, and Menus.  Problem still
  with the fact that Forms are static and Tk widgets are not.  Also, there
  is nothing comparable to the Tk frame widget on the Palm, so heirarchies
  of widgets cannot be made.  Widget layout approach is much more like
  that of the Tk placer geometry manager.


Hope you enjoy Toucan!

Mac Cody
September 8, 2002



