windowclass

Window classes form a blueprint for the creation of window instances. When individual windows are created, a window class definition is used to create the window frame and structure along with controls, and a database node is tied to the instance to represent the data in the controls. The resulting structure is manipulated using windowinstance objects.

Window classes define properties such as the graphical presentation of the window, its size and position along with limits to the resizing function. The definition also contains information about the opening and closing methods and control permissions.


Definition

<windowclass name="..." > <frame > ... </frame> <margins > <control > ... </control> </margins> <backcolor > ... </backcolor> <datasource > ... </datasource> <sharable > <shareas > ... </shareas> </sharable> <nomove /> <noclose /> <softclose /> <minimize > ... </minimize> <tooltip > <text > ... </text> OR <textres > ... </textres> OR <field > ... </field> </tooltip> <placement > <size > <width > ... </width> <height > ... </height> </size> <position > <x > ... </x> <y > ... </y> </position> </placement> <sizelimits > <maximum > <width > ... </width> <height > ... </height> </maximum> <minimum > <width > ... </width> <height > ... </height> </minimum> <dynamic > <hostcontrol /> <resize > ... </resize> </dynamic> </sizelimits> <script file="..." > ... </script> <sheetdata > ... </sheetdata> </windowclass>

<windowclass name="..." >

 

<frame > ... </frame>

The bitmap frame resource name used for rendering the window background frame

<margins >

Display margin definition

<control > ... </control>

A comma separated list of four numbers specifying the pixel margins applied to the window before controls are placed. Can be used to offset all controls right and/or down (i.e. left/top margins), or create margins on the right/bottom.

</margins>

 

<backcolor > ... </backcolor>

The color to be used to fill the background of the window before drawing the contents. If no backcolor specified, then no fill will be done (i.e. transparent). The color should be in the form #AARRGGBB. If alpha is zero or not defined, FF is assumed.

<datasource > ... </datasource>

A database identifier forming the base from which the actual data source is derived. For top level windows the identifier is relative to the root node of the database, for subwindows and windowlists it is relative to the containing control.

<sharable >

Indicates that the host can share the window to the clients

<shareas > ... </shareas>

The name of another window class used to create the window on the client instances when the window is shared

</sharable>

 

<nomove />

Do not allow this window to be moved by the user.

<noclose />

Do not allow this window to be closed by the user.

<softclose />

The close operation will not destroy the window, but will hide it. This can be used to save the window state at runtime.

<minimize > ... </minimize>

Allow the window to be minimized. The string value in the element defines the icon resource used to represent the minimized window

<tooltip >

Specifies the text displayed on a minimized window tooltip

<text > ... </text> OR

Use the given static text string as the tooltip text

<textres > ... </textres> OR

Use the given string resource as the tooltip text

<field > ... </field>

The text is contained in the specified database node under the window data source

</tooltip>

 

<placement >

 

<size >

Defines a default size for a top level window. If not specified, it will be calculated based on the controls.

<width > ... </width>

The desired width, in pixels

<height > ... </height>

The desired height, in pixels

</size>

 

<position >

Defines an initial position for a top level window. If not specified, the window will be centered in the application window.

<x > ... </x>

The distance between the left edge of the application window and the left edge of the created window

<y > ... </y>

The distance between the top edge of the application window and the top edge of the created window

</position>

 

</placement>

 

<sizelimits >

 

<maximum >

Defines the maximum dimensions of the created window

<width > ... </width>

The maximum width, in pixels

<height > ... </height>

The maximum height, in pixels

</maximum>

 

<minimum >

Defines the minimum dimensions of the created window

<width > ... </width>

The minimum width, in pixels

<height > ... </height>

The minimum height, in pixels

</minimum>

 

<dynamic >

If present, allows the window to be resized

<hostcontrol />

Only allow the host to resize the window, cause the client windows to resize as a result of a resize on the host

<resize > ... </resize>

Limit the manual resizing of the window to a direction. Valid options are "vertical", "horizontal" or "both".

</dynamic>

 

</sizelimits>

 

<script file="..." > ... </script>

The script created for the window instance. The script can be contained in the element or loaded from the file pointed to by the file attribute.

<sheetdata > ... </sheetdata>

A list of definitions for controls to be created in the window

</windowclass>