next node: WinInternal,
prev node: Subsystem Opal Windows,
up to node: Subsystem Opal Windows


WinTclTk

This structure provides the interface to Tcl/Tk used by OpalWin. It internally allocates a Tcl/Tk interpreter where all Tcl/Tk operations implicitely are addressed to.

Note: this structure is not if interest for using OpalWin, it is only relevant for extending OpalWin.

Note: documentation for new callback / widget types and operations missing.

Signature of WinTclTk

List of Import References :
See BOOL
See Char
See Com
See DENOTATION
See Nat
See Option
See Real
See Seq
See String
See Void

SIGNATURE WinTclTk

$Date: 2010-09-30 18:24:17 +0200 (Do, 30. Sep 2010) $ ($Revision: 616 $)

IMPORT  Void            ONLY    void
        Com[void]       ONLY    com:SORT
        Com[string]     ONLY    com:SORT
        Com[callback]   ONLY    com:SORT
        Com[widget]     ONLY    com:SORT

IMPORT  String          ONLY    string:SORT
        Seq[string]     ONLY    seq
        Real            ONLY    real
        Nat             ONLY    nat

Definitions

SORT callback
SORT widget

FUN root                : widget
FUN parent              : widget -> widget
FUN callback            : widget -> callback

FUN asTk                : callback      -> string
FUN asTk                : widget        -> string

FUN callback            : com[callback]
FUN widget              : widget -> com[widget]

FUN freeCallback        : callback      -> com[void]
FUN freeWidget          : widget        -> com[void]

FUN define              : callback ** (seq[string]->com[string]) -> com[void]
FUN define              : callback ** com[string] -> com[void]
FUN define              : callback ** com[void] -> com[void]

FUN define              : (seq[string]->com[string]) -> com[callback]
FUN define              : com[string] -> com[callback]
FUN define              : com[void] -> com[callback]

FUN extDefine           : callback ** (seq[string]->com[void]) -> com[void]
FUN extDefine           : callback ** com[void] -> com[void]

Scripts

The type of scripts is used for the convenient notation of Tcl scripts.

SORT script

FUN <- : denotation ** denotation -> script
FUN <- : denotation ** string -> script
FUN <- : denotation ** real -> script
FUN <- : denotation ** nat -> script
FUN <- : denotation ** widget -> script
FUN <- : denotation ** callback -> script

FUN + : script ** denotation -> script
FUN + : script ** string -> script
FUN + : script ** real -> script
FUN + : script ** nat -> script
FUN + : script ** widget -> script
FUN + : script ** callback -> script

FUN format: script -> string

In general, the expression format(Pattern <- Val1 + Val2 + ... + ValN) is equivalent to format'StringFormat(Pattern, %(t1(Val1),t2(Vale),...,tN(ValN))), where tI is the according union constructor from BTUnion.

Evaluation

The function eval evaluates the given script or denotation in the Tcl/Tk interpreter and returns its result. The function act evaluates and forgets the result.

FUN eval: script -> com[string]
FUN eval: denotation -> com[string]
FUN act : script -> com[void]
FUN act : denotation -> com[void]

Conversions

The function convList converts a textual representation of a Tcl list into a sequence of strings, including the proper handling of quotings. The functions convNat and convReal convert naturals and reals, respectively.

FUN convList    : string -> seq[string]
FUN convNat     : string -> nat
FUN convReal    : string -> real

Retaining Event Scheduling

The functions retain and submit suspend and resume the scheduling of Tk events. This may be useful to perform a sequence of Tk commands whose result should not become immediatly visible to the user (normally, inbetween the execution of each atomic command event scheduling is performed using Tk_DoOneEvent).

Both functions may be nested: event dispatching is retained unless the number of submit calls is equal to the number of retain calls.

FUN retain  : com[void]
FUN submit  : com[void]
FUN update  : com[void]


next node: WinInternal,
prev node: Subsystem Opal Windows,
up to node: Subsystem Opal Windows