The Combination List Box

 

Main Characteristics of Combination List Boxes

A combo box form field behaves like a combination of a list box and an entry field.

Combo boxes are commonly used for presenting a fixed number of choices to the application end-user from which one can be selected, or the end-user can enter a value that is not a member of the list.

They also provide a convenient mechanism for presenting these choices in the form of descriptive text rather than as codes.

Combo boxes have an assignable data type and data length. The default members of the list can be defined as a sequence of strings separated by the semi-colon (;) character.

The default value for the combo box can also be defined; if this value matches a member of the list, then that list item appears in the entry field component and is also highlighted in the list. The number of visible lines for a combo box defines the number of list members that are exposed. The total number of members in the list can exceed this number of members.

The members of a combo box list can also be established under Zim program control by using the FORM SET LIST command. The available combo box styles are “Manual Drop”, “Automatic Drop”, “Always Dropped”, “Drive List”, “Directory List” and “File List”.

Combination List Box Attributes

– Identification

Attribute NameDefault ValueDescription
Field TypeThe type of this form field or of this user interface object. (Read-only).
Field NamevariableA string that identifies this form field within the Zim application;
Automatically assigned by the Zim IDE when a new form field is created;
May be changed by the developer, but must always conform to the Zim Object Naming Rules and satisfy the Zim Object Uniqueness Conditions.
Field Number0A number that may be used to identify this form field within the Zim application and in Callback Events;
May be changed by the developer and need not be unique;
Value must be an integer between 0 and 999;
Field Tag“”A string that may be used to identify this form field within the Zim application and in Callback Events;
May be changed by the developer and need not be unique;
If left blank, the Zim IDE will assign the value of Field Name to Field Tag.
DirectoryZIMThe directory that owns the parent form of this form field (Read-only).
Form NameA string that identifies the parent form of this form field (Read-only).
Help Message“”A help message that will be displayed when this form field or this menu item receives input focus;
Displayed in the status bar of the window associated with the parent form of this form field (if the window object’s Status Bar attribute is set to True);
Displayed in a message field if one such field exists in the parent form of this form field.

 

– Appearance

Attribute NameDefault ValueDescription
Customized PointerdefaultThe pointer (or cursor) style when the pointer is hovering over (or the cursor is inside) an available form field;
May be selected from the following choices in the list box:
Arrow →  the standard arrow cursor;
Cross-hair →  ;
I-Beam →  ;
Icon →  ;
Resize →  ;
Size NE SW →  ;
Size NS →  ;
Size NW SE →  ;
Size WE →  ;
Up Arrow →  ;
Hourglass →  ;
default →  The pointer style will be I-Beam for Entry Field and Arrow for all other form fields.
Fill Character” “The character used to fill blank spaces in this form field.
Initial Items“”A collection of strings that will be available for selection in this form field.
Each string will appear on a different line;
Strings are terminated by the enter key;
LocationThe location (in pixels) of this form field in relation to the top-left corner of its parent form or parent container.
XThe horizontal location of this form field.
YThe vertical location of this form field.
Reverse VideoFalseTrue →  The text will appear in white on a black background;
False →  The text will appear in black on a white background;
SizeThe size of this form field in pixels.
WidthThe width of this form field.
HeightThe height of this form field.
VisibleTrueTrue →  This form field will be visible by default.
Visible Lines1The number of visible lines in this entry field, list box or combination list box.

 

– Behavior

Attribute NameDefault ValueDescription
AnchoringTop, LeftWhen the window associated with this form field’s parent form is resized:
Top →  The top edge of this form field will maintain its distance from the top edge of the window;
Bottom →  The bottom edge of this form field will maintain its distance from the bottom edge of the window;
Left →  The left edge of this form field will maintain its distance from the left edge of the window;
Right →  The right edge of this form field will maintain its distance from the right edge of the window;
None →  The same as TopLeft.
Auto CompleteFalseTrue →  If the value being entered in this combination list box partially matches a list item, the entered value will be automatically completed with the remaining characters of the matching list item.
Auto SelectFalseTrue →  The contents or state of this form field will be automatically highlighted when it receives input focus.
Auto SkipFalseTrue →  The input focus will automatically skip to the next available form field after the value or state of this form field has been modified.
DockingNoneTop →  The top edge of the form field will be expanded and placed;
Bottom →  ;
Left →  ;
Right →  ;
Fill →  ;
None →  This form field.

 

– Callback Events

Attribute NameDefault ValueDescription
All Callback Events When any of the following callback event attributes is set to True, this form field will be able to trigger the corresponding callback event;
After the event is triggered, the form input command will be terminated and the following values will populate the Event Vector:
Event.EventType = “FormField”;
Event.EventTag = the form field’s Field Tag attribute;
Additional values relative to specific callback events (see below);
Note:
Callback events can only be triggered by a form field if it is available and contained in a form that has input focus.
ClickFalseTriggered when the left mouse button is clicked within this form field;
Event.EventName = “Click” added to the Event Vector.
Double ClickFalseTriggered when the left mouse button is double-clicked within this form field;
Event.EventName = “DoubleClick” added to the Event Vector.
Got FocusFalseTriggered when a mouse click, a tab key press or an accelerator key press causes this form field to acquire the input focus;
Event.EventName = “GotFocus” added to the Event Vector.
Lost Focus
(Always)
FalseTriggered when a mouse click, a tab key press or an accelerator key press causes this form field to lose the input focus;
Event.EventName = “LostFocus” added to the Event Vector.
Lost Focus
(When Modified)
FalseTriggered when a mouse click, a tab key press or an accelerator key press causes this form field to lose the input focus after its value has been modified (cf. Modified below);
Event.EventName = “LostFocusModified” added to the Event Vector.
ModifiedFalseTriggered when the value or state of this form field is modified by a left mouse button click;
Event.EventName = “Modified” added to Event Vector.
Right ClickFalseTriggered when the right mouse button is clicked on or inside this form field;
Event.EventName = “RightClick” added to the Event Vector.

 

– Colors

Attribute NameDefault ValueDescription
Background ColorvariableThe background color of the form field, container or user interface object in R(ed) G(reen) B(lue) values;
Foreground ColorvariableThe foreground color of the form field, container or user interface object in R(ed) G(reen) B(lue) values.
Inherit Background ColorvariableTrue →  The form field or container will inherit the background color of its parent container or parent form object.
Inherit Foreground ColorvariableTrue →  The form field or container will inherit the foreground color of its parent container or parent form object.

 

– Properties

Attribute NameDefault ValueDescription
AvailabilityAvailableThe way in which the end-user will interact with this form field:
Available →  This form field can receive input focus and its contents can be modified;
Unavailable →  This form field cannot receive input focus and its contents cannot be modified;
Guarded →  This form field can receive input focus but its contents cannot be modified;
Protected →  This form field cannot receive input focus, its contents cannot be modified and it will appear grayed-out;
CaseMixedThe case in which the data contents of this form field will be displayed:
Mixed →  The data will be presented in its original case;
Upper →  The data will be displayed in upper case;
Lower →  The data will be displayed in lower case.
Data TypeAlphanumericThe data type of this form field:
Alphanumeric →  May contain letters, digits and punctuation; 
Non-Digit →  May contain all characters except digits;
Numeric →  May contain digits, decimal point, plus and minus signs;
Date →  May contain digits according to the form specified in Input Mask;
Default Data Value“”The default data value of this form field.
Drop StyleAlways DroppedAlways Dropped →  ;
Manual Drop →  ;
Automatic Drop →  ;
Drive List →  ;
Directory List →  ;
File List →  ;
Length12The length of the data displayed in this form field
JustificationNoneThe justification applied to the contents of this form field:
Left or None →  the contents will be displayed left-aligned;
Right →  the contents will be displayed right-aligned;
Center →  the contents will be displayed centered.
List Tracks InputFalseTrue →  This combination list box
Suppress  
Tab Index0The relative position of this form field in the tab sequence order for its parent container or form field;
0 →  The relative position of the form field in the structure chart will be used instead.
Tab StopTrueTrue →  This form field will be included in the tab order for its parent container or form;
False →  
Validation  
Z-Order>= 10001The relative depth of this form field in relation to other form fields within the same parent container or form.

 

– Style

Attribute NameDefault ValueDescription
FontMicrosoft Sans Serif, 8ptThe font in which text will be displayed inside this form field.
NameMicrosoft Sans SerifThe system name of the selected font.
Size8The size of the font in units. (Point is the default unit);
BoldFalseTrue →  The text inside this form field will appear in bold.
ItalicFalseTrue →  The text inside this form field will appear in italic.
StrikeoutFalseTrue →  The text inside this form field will appear with a line across.
UnderlineFalseTrue →  The text inside this form field will appear underlined.
Inherit FontFalseTrue →  This form field will inherit all the Font attributes from its parent (form, frame or tab control).

 

The Check Box

Main Characteristics of Check Boxes

 

Check box form fields belong to the generic class of form field called “Toggle Buttons”. They are most commonly used for supporting On/Off or True/False type data values, although they are not restricted to these value types. Multiple check boxes can be in the same state simultaneously, independent of their parent objects. A specific check box type (the 3-state type), supports the three-valued logic states, “On”, “Off” and “Null” (i.e. neither “On” nor “Off”).

Check boxes can be text-based or image-based. Text check boxes are displayed as the familiar “check box” immediately followed by some descriptive text. The value state of a text check box is “On” if an “X” is present in the box portion, “Off” if no “X” is present in the box portion, and “Null” if the box portion is gray-filled. Image check boxes are displayed as an image with no associated text or box portion. The value state of an image check box (more appropriately, “image toggle button”) is determined by which one of the two (or three, if a 3-state), possible images is displayed. The physical dimensions of an image check box are controlled by the selected automatic sizing option.

 

Check Box Attributes

– Identification

Attribute NameDefault ValueDescription
Field TypeThe type of this form field or of this user interface object. (Read-only).
Field NamevariableA string that identifies this form field within the Zim application;
Automatically assigned by the Zim IDE when a new form field is created;
May be changed by the developer, but must always conform to the Zim Object Naming Rules and satisfy the Zim Object Uniqueness Conditions.
Field Number0A number that may be used to identify this form field within the Zim application and in Callback Events;
May be changed by the developer and need not be unique;
Value must be an integer between 0 and 999;
Field Tag“”A string that may be used to identify this form field within the Zim application and in Callback Events;
May be changed by the developer and need not be unique;
If left blank, the Zim IDE will assign the value of Field Name to Field Tag.
DirectoryZIMThe directory that owns the parent form of this form field (Read-only).
Form NameA string that identifies the parent form of this form field (Read-only).
Help Message“”A help message that will be displayed when this form field or this menu item receives input focus;
Displayed in the status bar of the window associated with the parent form of this form field (if the window object’s Status Bar attribute is set to True);
Displayed in a message field if one such field exists in the parent form of this form field.

 

– Appearance

Attribute NameDefault ValueDescription
Customized PointerdefaultThe pointer (or cursor) style when the pointer is hovering over (or the cursor is inside) an available form field;
May be selected from the following choices in the list box:
Arrow →  the standard arrow cursor;
Cross-hair →  ;
I-Beam →  ;
Icon →  ;
Resize →  ;
Size NE SW →  ;
Size NS →  ;
Size NW SE →  ;
Size WE →  ;
Up Arrow →  ;
Hourglass →  ;
default →  The pointer style will be I-Beam for Entry Field and Arrow for all other form fields.
Label???The label text which appears inside or along the top border of the form field;
A character in the label will be underlined if there is an ampersand (&) immediately before it.
LocationThe location (in pixels) of this form field in relation to the top-left corner of its parent form or parent container.
XThe horizontal location of this form field.
YThe vertical location of this form field.
Reverse VideoFalseTrue →  The text will appear in white on a black background;
False →  The text will appear in black on a white background;
SizeThe size of this form field in pixels.
WidthThe width of this form field.
HeightThe height of this form field.
VisibleTrueTrue →  This form field will be visible by default.

 

– Behavior

Attribute NameDefault ValueDescription
AnchoringTop, LeftWhen the window associated with this form field’s parent form is resized:
Top →  The top edge of this form field will maintain its distance from the top edge of the window;
Bottom →  The bottom edge of this form field will maintain its distance from the bottom edge of the window;
Left →  The left edge of this form field will maintain its distance from the left edge of the window;
Right →  The right edge of this form field will maintain its distance from the right edge of the window;
None →  The same as TopLeft.
Auto SelectFalseTrue →  The contents or state of this form field will be automatically highlighted when it receives input focus.
Auto SkipFalseTrue →  The input focus will automatically skip to the next available form field after the value or state of this form field has been modified.
DockingNoneTop →  The top edge of the form field will be expanded and placed;
Bottom →  ;
Left →  ;
Right →  ;
Fill →  ;
None →  This form field.

 

– Callback Events

Attribute NameDefault ValueDescription
All Callback EventsWhen any of the following callback event attributes is set to True, this form field will be able to trigger the corresponding callback event;
After the event is triggered, the form input command will be terminated and the following values will populate the Event Vector:
Event.EventType = “FormField”;
Event.EventTag = the form field’s Field Tag attribute;
Additional values relative to specific callback events (see below);
Note:
Callback events can only be triggered by a form field if it is available and contained in a form that has input focus.
ClickFalseTriggered when the left mouse button is clicked within this form field;
Event.EventName = “Click” added to the Event Vector.
Got FocusFalseTriggered when a mouse click, a tab key press or an accelerator key press causes this form field to acquire the input focus;
Event.EventName = “GotFocus” added to the Event Vector.
Lost Focus (Always)FalseTriggered when a mouse click, a tab key press or an accelerator key press causes this form field to lose the input focus;
Event.EventName = “LostFocus” added to the Event Vector.
Lost Focus (When Modified)FalseTriggered when a mouse click, a tab key press or an accelerator key press causes this form field to lose the input focus after its value has been modified (cf. Modified below);
Event.EventName = “LostFocusModified” added to the Event Vector.
ModifiedFalseTriggered when the value or state of this form field is modified by a left mouse button click;
Event.EventName = “Modified” added to Event Vector.
Right ClickFalseTriggered when the right mouse button is clicked on or inside this form field;
Event.EventName = “RightClick” added to the Event Vector.

 

– Colors

Attribute NameDefault ValueDescription
Background ColorvariableThe background color of the form field, container or user interface object in R(ed) G(reen) B(lue) values;
Foreground ColorvariableThe foreground color of the form field, container or user interface object in R(ed) G(reen) B(lue) values.
Inherit Background ColorvariableTrue →  The form field or container will inherit the background color of its parent container or parent form object.
Inherit Foreground ColorvariableTrue →  The form field or container will inherit the foreground color of its parent container or parent form object.

 

– Properties

Attribute NameDefault ValueDescription
AvailabilityAvailableThe way in which the end-user will interact with this form field:
Available →  This form field can receive input focus and its contents can be modified;
Unavailable →  This form field cannot receive input focus and its contents cannot be modified;
Guarded →  This form field can receive input focus but its contents cannot be modified;
Protected →  This form field cannot receive input focus, its contents cannot be modified and it will appear grayed-out;
Off-State Value0The data value when this form field is in the Off state;
On-State Value1The data value when this form field is in the On state;
On-State Validation Rule1The data validation rule that defines a legal value for this form field in the On state;
Tab Index0The relative position of this form field in the tab sequence order for its parent container or form field;
0 →  The relative position of the form field in the structure chart will be used instead.
Tab StopTrueTrue →  This form field will be included in the tab order for its parent container or form;
False →  
Z-Order>= 10001The relative depth of this form field in relation to other form fields within the same parent container or form.

 

– Style

Attribute NameDefault ValueDescription
FontMicrosoft Sans Serif, 8ptThe font in which text will be displayed inside this form field.
NameMicrosoft Sans SerifThe system name of the selected font.
Size8The size of the font in units. (Point is the default unit);
BoldFalseTrue →  The text inside this form field will appear in bold.
ItalicFalseTrue →  The text inside this form field will appear in italic.
StrikeoutFalseTrue →  The text inside this form field will appear with a line across.
UnderlineFalseTrue →  The text inside this form field will appear underlined.
Inherit FontFalseTrue →  This form field will inherit all the Font attributes from its parent (form, frame or tab control).

The Calendar

Main Characteristics of Calendars

Calendar Attributes

– Identification

Attribute NameDefault ValueDescription
Field TypeThe type of this form field or of this user interface object. (Read-only).
Field NamevariableA string that identifies this form field within the Zim application;
Automatically assigned by the Zim IDE when a new form field is created;
May be changed by the developer, but must always conform to the Zim Object Naming Rules and satisfy the Zim Object Uniqueness Conditions.
Field Number0A number that may be used to identify this form field within the Zim application and in Callback Events;
May be changed by the developer and need not be unique;
Value must be an integer between 0 and 999;
Field Tag“”A string that may be used to identify this form field within the Zim application and in Callback Events;
May be changed by the developer and need not be unique;
If left blank, the Zim IDE will assign the value of Field Name to Field Tag.
DirectoryZIMThe directory that owns the parent form of this form field (Read-only).
Form NameA string that identifies the parent form of this form field (Read-only).
Help Message“”A help message that will be displayed when this form field or this menu item receives input focus;
Displayed in the status bar of the window associated with the parent form of this form field (if the window object’s Status Bar attribute is set to True);
Displayed in a message field if one such field exists in the parent form of this form field.

 

– Appearance

Attribute NameDefault ValueDescription
Customized PointerdefaultThe pointer (or cursor) style when the pointer is hovering over (or the cursor is inside) an available form field;
May be selected from the following choices in the list box:
Arrow →  the standard arrow cursor;
Cross-hair →  ;
I-Beam →  ;
Icon →  ;
Resize →  ;
Size NE SW →  ;
Size NS →  ;
Size NW SE →  ;
Size WE →  ;
Up Arrow →  ;
Hourglass →  ;
default →  The pointer style will be I-Beam for Entry Field and Arrow for all other form fields.
LocationThe location (in pixels) of this form field in relation to the top-left corner of its parent form or parent container.
XThe horizontal location of this form field.
YThe vertical location of this form field.
Reverse VideoFalseTrue →  The text will appear in white on a black background;
False →  The text will appear in black on a white background;
SizeThe size of this form field in pixels.
WidthThe width of this form field.
HeightThe height of this form field.
VisibleTrueTrue →  This form field will be visible by default.

 

– Behavior

Attribute NameDefault ValueDescription
AnchoringTop, LeftWhen the window associated with this form field’s parent form is resized:
Top →  The top edge of this form field will maintain its distance from the top edge of the window;
Bottom →  The bottom edge of this form field will maintain its distance from the bottom edge of the window;
Left →  The left edge of this form field will maintain its distance from the left edge of the window;
Right →  The right edge of this form field will maintain its distance from the right edge of the window;
None →  The same as TopLeft.
Auto SkipFalseTrue →  The input focus will automatically skip to the next available form field after the value or state of this form field has been modified.
DockingNoneTop →  The top edge of the form field will be expanded and placed;
Bottom →  ;
Left →  ;
Right →  ;
Fill →  ;
None →  This form field.

 

– Callback Events

Attribute NameDefault ValueDescription
All Callback EventsWhen any of the following callback event attributes is set to True, this form field will be able to trigger the corresponding callback event;
After the event is triggered, the form input command will be terminated and the following values will populate the Event Vector:
Event.EventType = “FormField”;
Event.EventTag = the form field’s Field Tag attribute;
Additional values relative to specific callback events (see below);
Note:
Callback events can only be triggered by a form field if it is available and contained in a form that has input focus.
ClickFalseTriggered when the left mouse button is clicked within this form field;
Event.EventName = “Click” added to the Event Vector.
Double ClickFalseTriggered when the left mouse button is double-clicked within this form field;
Event.EventName = “DoubleClick” added to the Event Vector.
Got FocusFalseTriggered when a mouse click, a tab key press or an accelerator key press causes this form field to acquire the input focus;
Event.EventName = “GotFocus” added to the Event Vector.
Lost Focus
(Always)
FalseTriggered when a mouse click, a tab key press or an accelerator key press causes this form field to lose the input focus;
Event.EventName = “LostFocus” added to the Event Vector.
Lost Focus
(When Modified)
FalseTriggered when a mouse click, a tab key press or an accelerator key press causes this form field to lose the input focus after its value has been modified (cf. Modified below);
Event.EventName = “LostFocusModified” added to the Event Vector.
ModifiedFalseTriggered when the value or state of this form field is modified by a left mouse button click;
Event.EventName = “Modified” added to Event Vector.
Right ClickFalseTriggered when the right mouse button is clicked on or inside this form field;
Event.EventName = “RightClick” added to the Event Vector.

 

– Properties

Attribute NameDefault ValueDescription
AvailabilityAvailableThe way in which the end-user will interact with this form field:
Available →  This form field can receive input focus and its contents can be modified;
Unavailable →  This form field cannot receive input focus and its contents cannot be modified;
Guarded →  This form field can receive input focus but its contents cannot be modified;
Protected →  This form field cannot receive input focus, its contents cannot be modified and it will appear grayed-out;
Tab Index0The relative position of this form field in the tab sequence order for its parent container or form field;
0 →  The relative position of the form field in the structure chart will be used instead.
Tab StopTrueTrue →  This form field will be included in the tab order for its parent container or form;
False →  
Z-Order>= 10001The relative depth of this form field in relation to other form fields within the same parent container or form.

The Field View

Main Characteristics of the Field View

The Field View is automatically enabled objects which can contain custom fields are opened or  added:

Entity Sets;

Relationships;

Documents.

The Field View can be made visible or invisible through the View menu item in the Main Menu.

 

The Graphical Object Tab Page

Main Characteristics of the Graphical Objects Tab Page

The Graphical Object Tab Page shows the hierarchy of the objects currently open in the GUI Designer.

In the Tree View, primary user interface objects, such as formsdisplays and menus, appear as top nodes.

Forms are the only children of displays

All other objects

 

 

 

The Database Tab Page

Main Characteristics of the Database Tab Page

 

The Database Tab Page displays all databases currently connected to the current session of Zim IDE.

Each connected database is represented as an expandable node containing all possible database object categories.

Each object category is also represented as an expandable node containing all objects of that category in the database.

To edit an object, right-click on its name to open it in the GUI Designer workspace;

To create an object, right-click on the category of the object you wish to create and enter the required information in the New Object Dialog;

 

 

Zim IDE Components

The Organization of Zim IDE

Zim IDE consists of eight separate visual components distributed within five different panels. Some panels are occupied by two different visual components, of which only one is displayed individually when selected by the designer.

The visual components of Zim IDE and their respective display panels are introduced below:

 

ComponentDisplay Area
Menu Area
Left Panel
Left Panel
Central Panel
Central Panel
Right Panel
Right Panel
Field View Panel

 

The following images show how the different areas of the Zim IDE fit together during the user interface design process:

Example 1: Connected databases and the structure of objects

In this image, the form fExample_Zim9 is being edited in the GUI Designer workspace, while the database Example_Zim9 + localhost are connected to this Zim IDE session as shown in the database tab page. the form opened in the GUI designer (fExample_Zim9) are shown in the Tree View Tab Page on the right, along with their respective fields.

 

 

Example 2: Form field attributes and objects available in the Tool Box tab page

In this image, the form fExample_Zim9 is being edited in the GUI Designer workspace. A Push Button is currently selected and its attributes are shown in the Attributes Tab Page. The Tool Box Tab Page is also visible, showing the available user interface objects that can be added to the form.

 

 

The Document Editor

Main Characteristics of the Document Editor

The Document Editor is where documents such as Zim programs, database parameters and configuration files are viewed and edited.

It occupies the same area as the GUI Designer

it offers syntax highlighting customized for the Zim programming language.

Documents can be opened and edited directly from the Database Tab Page:

Click on the Documents node under one of the connected databases and select the document you wish to open and edit.

 

 

 

 

en_CAEnglish