A new project is created through the »New« menu underneath the »File« menu.
The »New« menu displays all available project types. Currently, only »Tcl-Plain« and »Tcl-Template« are available. Tcl-Template is the recommended project type. A template is reusable, for example inside of another project. Newly created templates may become integrated into Jeszra and organized in a palette. Wrapper classes for the programming languages Ruby, Python and Lisp are only created from templates.
A dedicated slave interpreter hosts the created project.
Right underneath the main toolbar is Jeszra’s work area. This area contains the »palettes«.
A palette is like a toolbar, containing active elements (items), which can instantiate graphical objects inside the project. An item may represent any sort of object: templates , composites, windows, basic graphics, complex graphics or code fragments.
Jeszra’s default configuration arranges the palettes according to their origin.
The Tk library occupies three palettes:
Tk Palettes
Tk
Canvas Items
Menu Entries
The item inside the »Canvas« palette are only accessible when a canvas, pathCanvas window or graphical object thereof is selected. A similar rule applies for the »Menu« entries, these items are only accessible when a menu, menubutton or menu entry is selected.
Palette entries are context sensitive! They are activated and disabled according to the kind of selected window and of course whether the presented package is available or not.
Every palette may feature preconfigured properties. The configuration can be interactively modified through the »Insert Dialog«. See Activate the Insert Dialog.
Located underneath the palettes is a title-less palette. This palette is henceforth called the Script Tool.
The Script Tool contains a »Record« item. The »Record« item activates the event monitoring in Jeszra. »Record« is a checkbutton and keeps a protocol of any interaction as long as it stays depressed. After releasing »Record«: a script editor is displayed showing all the recorded interactions as a Tcl-Script. This Tcl-Script is destined to become a new item inside the Script Tool.
Some predefined scripts are already included in the Script Tool. The »n Columns Layout« entries are being used to create a basic layout for the grid geometry manager. These scripts are applied on the currently selected container window –a toplevel window for example. The chosen layout should be the same for every dialog inside of an application. I do recommend to use a three or four column layout.
The navigation area is located in the bottom of the Jeszra main window. This area is henceforth called »Hierarchy View«. The hierarchy view is implemented by a slightly modified Rtl_tree.
On the right side is a vertical oriented Rtl_tabset. This Rtl_tabset lists all toplevel windows inside the current project. Toplevel windows under the root (.) window are distinct by colour, from toplevels deeper down the window hierarchy. Only children of Tk root (.) are valid initial template windows.
Back to the hierarchy. The »Hierarchy View« displays the Tk windowing structure. Tk itself is organized as a hierarchy, starting with root(.). All created windows are descendent from this window. The root window is auto created by Tk itself, not by Jeszra.
The hierarchy view allows to alter the window structure. Drag'n'Drop or clipboard operations can be used to change the structure or Z-Order.
Possible Leafs
PathCanvas styles
TkPath gradients
Images
TkZinc 3.3.4 transformations
Canvas and TkPath objects
Text tags
Hugelist items
Menu entries such as: cascade referencing sub-menus, command, checkbutton, radiobutton, separator
Goolbar items such as: command, checkbutton, radiobutton
tab items
Possible Nodes
Any window
TkZinc 3.3.4 groups
TkPath groups
TkZinc 3.3.4 items provide a short-cut to applied transformations
Every node and leaf features its own custom context menu. This context menu is compiled from the node type and the used geometry manager operating inside the parent window.
The tabset, to the right side of the hierarchy view, grants access to the individual toplevel windows, the design view. These toplevel windows are what will be worked on.
Direct manipulations are possible inside the design. Direct manipulations vary a great deal between the different window types and geometry managers. The most relevant direct manipulations are geometric in nature. Such as altering the underlying grid or moving a graphical object. Other direct manipulations are transformations such as rotation, zoom, skew or editing coordinates. Even restricted structure manipulations are permitted.
The Inspector is Jeszra’s main tool for editing window and object properties. The Inspector is divided in four sections. The sections are dedicated to: properties, geometry, events and the »Template Interface«.
Inspector Sections
Properties displays the settings of a window or graphical object. Here customize appearance and behavior.
Geometry defines the position and size of visual objects. The type of information in this section can differ a great deal.
Geometry Variations
The conventional geometry settings for separate geometry managers.
Built-in geometry settings for windows managed by their parent window.
Pseudo geometry settings for notebook like containers.
For a tabset or notebook window the customization of the current page is mostly done inside the geometry section.
Ranges for a text window format tag.
For text windows tag ranges can be added, deleted and modified.
Coordinates of graphical objects.
The coordinates of a TkZinc 3.3.4, canvas or TkPath canvas can be modified.
The window geometry is modifiable for built-in geometry manager or general purpose geometry managers.
Events are additional interactions on windows, text tags or graphical objects. Assign the more common interactions through the -command, -postcommand, -variable ... properties to a window.
Interfaces reveal internal settings to the world. The interface contains the would-be properties of an instantiated template.
The Inspector is a part of Jeszra’s work area, located in the right top corner of the main window. Now, the tour is finished, through Jeszra’s main window.
The Inspector can also create or modify the contents of certain windows. Use the »Modify Contents« checkbutton, in the Inspector’s Information area, to start editing contents.
The hierarchy view and design share the same context menus. Jeszra creates the context menus from the geometric information and the window type. The window related context is stored and read from the Jeszra settings and thus fully customizable.
Each entry inside the Inspector features its own context menu. These context menus keep a history of previous data or a fixed set of permitted values. For example the -relief property features a fixed context menu consisting of all possible relief values: sunken, raised, flat, solid, groove and ridge.
help lines are very useful for vector graphics. Jeszra features a help lines editor, to create help lines numerical. You reach the help lines editor through the »Customize Help Lines« command inside the »Extra« menu.
A simple Tcl-Command shell. The Shell can be reached through the »Show Shell« entry in the »Extra« menu.
The »Find« dialog is an alternative way to navigate through the window hierarchy. Find is restricted to windows, searching for images or graphic objects isn’t possible, yet.
»Find« uses regular expressions to search through the window hierarchy for any occurance in the selected property.
The »Find« dialog can be reached through the »Find...« entry in the »Edit« menu.