Figure 2.2. grefpackages

Implements the Palette customizing window.

Create/Delete/Edit Palette’s content. »grefpackages« is dedicated to a single palette window. This palette is selected from the option menu in the top area of »grefpackages«.

The main working part is located to the bottom left. Here every palette item is listed. Items can be added or deleted to the palette.

The two buttons to the right allows to edit the content of a single palette item (its properties); or a series of new palette items can be created from a prior project.

The section immediately below the palette option menu contains general settings for the palette itself. This settings include, what Tcl-Package is required to use this palette and also which structural prerequisite must be »-ensure«d before the items are activated in Jeszra.

The ensure command does also exist for each individual item. The item ensure is omitted, whenever the palette features an ensure command –for the performance sake.

The »-palettes« property tells the grefpackages page where it ought to look for the palette windows.

Window Command

A Window created through the grefpackages command exposes various functions. Using these functions has the following general form:

object.option(?arg arg ...?)

PathName is the same as the window path name. Option and the args determine the exact behavior of the command. The following commands are possible for this window:


Returns the current value of the configuration option given by option. Option may have any of the values accepted by the grefpackages command.

object.configure(?option?) {?value option value ...?}

Query or modify the configuration options of the window. If no option is specified, returns a list describing all of the available options for pathName (see Tk_ConfigureInfo for information on the format of this list). If option is specified with no value, then the command returns a list describing the one named option (this list will be identical to the corresponding sublist of the value returned if no option is specified). If one or more option-value pairs are specified, then the command modifies the given window option(s) to have the given value(s); in this case the command returns an empty string. Option may have any of the values accepted by the grefpackages command. name )

In response to a palette selection. Fill in the second part of this dialog with any information retrieved from the palette under question. Extended : 02/25/2008, Roger


In response to a change inside the require text field–this field, and the ensure text field, is hidden under the extender. This changes are monitored and auto-applied with this function.


Secondary constructor for template windows of kind »grefpackages«.

Makes an event binding on the template listbox so that properties is invoked for a double-click.

Contains obsolete code for column and row customization –will move to the template.

Stripes the dialog.

object.selectPackage( menu )

Does query the via »-palettes« provided children for »Galette« windows and report them inside the »menu«–these windows are what will be edited by a »grefpackages« window.


First find out what toolbar is selected. Next verify there is a glyph font specified; if there isn't a glyph Font specified: launch the font browser to let the user select an appropriated font with symbols. The glyph font is determined as a part of the individual toolbar items and not as a property of the toolbar. The toolbar does only specify if a glyph font should being used at all. Shown may not return a toolbar –if there is none selected–, so ignore any exception.

Populate the »grefpkproperties« dialog with the data from the current selected template and display this dialog.


make a lexical analyze of this script do not try to create an interp for it ... takes to long and will contain additional data as well.


Removes the current selected entries from the internal gistbox window.


Use the ensure data from the dialog and store it inside the edited galette.

See »applyRequire« for more detailed information.

object.getPaletteByTitle( title )

Reused in »askpalettes.tcl«, be careful when modifying this.

See also grefpalman, there a copy is used of the body below.


Get the current entry and apply the values to the palette. later refresh the displayed palette ...