Table of Contents
This chapter is abridged. The full text is available in printed form or as a PDF from: www.lulu.com.
These libraries are
developed together with and for Jeszra. Jeszra’s
template mechanism is implemented and documented within the Runtime Library
Gestalt Items and
Runtime Library. The module rtl.tcl
is the
minimal requirement for any Tcl-Template generated by
Jeszra.
Only the Gestalt Items and Runtime Library source code is bundled within Jeszra.
Online Documentation
The home of both libraries is at: Gestalt Items and Runtime Library. The project download section contains wrapper classes for Ruby, Lisp, Python; Emacs skeletons, Apple® Xcode textmacros, the unix-style manual pages and download versions of their complete documentation.
The Hugelist composite window is bundled with Jeszra. The online documentation for Hugelist is located within the Gestalt Items and Runtime Library project. Download the Hugelist package from Gestalt Items. Technically, Hugelist is not required for using Jeszra. The Tk listbox is sufficient for Jeszra. The mentioned Hugelist solves most of Tk listbox AQUA® compatibility errors.
TkPath is used on a if present base by Jeszra and its libraries Runtime Library, Gestalt Items. TkPath is not necessary for using Jeszra, but highly recommended. Download it from its CVS repository.
# Login to the CVS Repository: cvs -d:pserver:anonymous@tclbitprint .cvs.sourceforge.net: /cvsroot/tclbitprint login # Fetch the package (source code): cvs -z3 -d:pserver:anonymous@tclbitprint .cvs.sourceforge.net: /cvsroot/tclbitprint co -P tkpath
remove the newlines and spaces after »tclbitprint«, »sourceforge.net:«!
CAIRO is required for TkPath under X Window System. CAIRO is an integral part of most UN*X / X Window System operating systems.
TkZinc 3.3.4 is not yet required by Jeszra, but TkZinc 3.3.4 will become necessary in the future.
DocBook is the documentation format used by Jeszra. Jeszra generates DocBook documents from the source code for various programming languages.
Jeszra is able to generate DocBook refentry documents from source code comments and template interfaces.
Informations about DocBook
Tcl/Tk has built-in support for GIF and starting with 8.6 PNG bitmaps. Other formats can be used through third party packages such as Img. The Img package is required by Jeszra to create screen-shots from button, menubutton, scrollbar under AQUA® and also from Tile controls. The deployed mechanism is similar to: Img.
The screen-shot mechanism with Img produces unusable results with Tk 8.4 under AQUA®. See also: ???.
Pixane could be used to replace Img. Pixane is currently not supported by Jeszra. Using Pixane for Scalable Vector Graphics embedded screen-shots requires a reimplementation of
proc dumper::screenshot { type target } {}
inside svgdumper.tcl
.
Jeszra generates Scalable Vector Graphics from Tcl/Tk. The generated Scalable Vector Graphics includes all functionality of canvas, TkPath and the general parts from TkZinc 3.3.4. Through Jeszra an entire Tk Graphical User Interface can be converted into Scalable Vector Graphics. All the templates from the Gestalt Items and Runtime Library are convertible into Scalable Vector Graphics without reverting to the section called “Bitmaps” . Basic Tk controls such as: listbox, button (X Window System), menubutton, checkbutton, radiobutton, message, label, menu, text are either direct converted or utilize the Gstripes template, from the Gestalt Items, for conversion. Gstripes vectorizes a Graphical User Interface before Scalable Vector Graphics gets created.
Scalable Vector Graphics is than convertible into PDF, bitmapped images, or can be printed through FOP with the printer˚s resolution.
Download the Scalable Vector Graphics 1.1 Specification from W3C®.
Jeszra creates an internal DOM-Tree
for
Scalable Vector Graphics. This DOM-Tree is accessible through the variable
$dumper::_doc
inside of the project.
The Scalable Vector Graphics DOM-Tree is maintained by »svgdom«
in module svgdom.tcl
.
the section called “tDOM” is required to
generate
Scalable Vector Graphics.
Further Scalable Vector Graphics Informations.
FOP is not yet directly used by Jeszra. FOP is able to convert Scalable Vector Graphics into PDF and for printing. A .fo wrapper is required to convert Scalable Vector Graphics into PDF. FOP is a Java® Application.
FontForge, a font editor. FontForge can be used to generate Scalable Vector Graphics Fonts from other font formats. These Scalable Vector Graphics fonts should be embedded into each generated Scalable Vector Graphicss.
FontForge is a sophisticated font editor. FontForge is suitable to create icon fonts such as used by Jeszra.
Autotrace, is used to convert bitmaps into vector graphics. The Autotrace output can be directly used from FontForge. Jeszra does not yet use Autotrace,
tDOM is required to generate Scalable Vector Graphics. A DOM-Tree is used by Jeszra to create Scalable Vector Graphics.
Jeszra uses »TclSplines« for TkZinc 3.3.4 and TkPath objects. In addition TclSplines are needed for Scalable Vector Graphics generation to smooth lines and polygons. TclSplines
Jeszra generates skeletons for the Emacs editor.
The generated DocBook documents contain
a local variables block tailered for the XAE-DocBook
mode in Emacs.
This commentary block is created by the
procedure »emacsMode« inside tcldumper.tcl
.
Example A.1. emacsMode
proc dumper::docbook::emacsMode { templatefile {element variablelist} {mode xae} } { return [subst { }] }
Consult the Emacs Wiki to learn more about XAE and Emacs.