Table of Contents
This appendix lists the properties associated with each type of object. The tables are formatted as below, showing the internal property name, the legend which appears in the property dialogs, and the description (which are the text that appears in the property dialogs when a property is being edited).
Note that there is a fair degree of duplication below. The properties that are specific to reports and forms, rather than than the blocks from which they are derived, have been separated out. However, for data controls the properties are listed in full.
Name | Property dialog legend |
Description |
x | X-position |
X coordinate of the control relative to its parent | |
y | Y-position |
Y coordinate of the control relative to its parent | |
w | Width |
Width of the block area in pixels | |
h | Height |
Height of the block area in pixels | |
xmode | X-mode |
This setting specified whether the control width is fixed width, whether it floats relative to the right-hand side of its block, or whether it stretches as its block width changes. The setting affects the interpretation of the width value. | |
ymode | Y-mode |
This setting specified whether the control height is fixed width, whether it floats relative to the bottom of its block, or whether it stretches as its block height changes. The setting affects the interpretation of the height value. | |
bgcolor | Background colour |
Background colour | |
frame | KBForm.frame |
KBForm.frame | |
showbar | Show Scroll Bar |
Setting this option will show a vertical scroll bar which indicates the range of rows displayed, and allows scrolling through them. | |
rowcount | Row count |
Number of rows of fields to be shown in this block. If set to zero then the number of calculated based on block size and row spacing. | |
dx | X-delta |
X-offset in pixels between fields if the rowcount is greater than one | |
dy | Y-delta |
Y-offset in pixels between fields if the rowcount is greater than one | |
stretch | Stretchable |
If set the form can be stretched (resized) when it is displayed; otherwise, the form layout is fixed. | |
name | Control name |
Control name, used to access control from scripts | |
master | Parent column |
Column in parent query used to link to child field in this block's query | |
rdonly | Read Only |
Set this option to prevent update of the displayed value by the user. Note that the control can still be updated from a script. | |
noupdate | No Update |
If this option is set, the database is never updated from the control (even if the contents are changed). This is useful if you wish to display a value in more that one control, and all but done are marked as read only | |
taborder | Tab order |
Tab and shift-tab cycle through controls in increasing tab order. A tab order of zero means that the control cannot be entered by tabbing. | |
child | Child column |
Column in this block's query used to link to parent expression | |
autosync | Automatic update |
Enabling this option will case field changes to be stored in the database whenever focus moves to a different row or block | |
configs | Configuration |
List of configuration values. These are primarily used in conjunction with reusable components. | |
errtext | Error Text |
Text used to customise various popups. Currently only used at block level by record insert/update/delete confirmation dialogs. | |
title | Title |
If set, this is used as a title for the block or container, and appears in the same way as a title appears in a group box in a dialog. | |
sloppy | Sloppy focus |
If set, and the block does not contain any embedded blocks, then the row which has focus can be scrolled out of view. | |
blkrdonly | Block Read Only |
If set then all controls in the block are treated as read-only, irrespective of their individual settings. | |
tabswrap | Tabs wrap |
Normally, tabbing out of the last control in the tab order moves to the next record. If this option is set then focus returns to the first control without changing record. Similary for back-tab. | |
language | Scripting language |
Scripting language to be used for script modules in this form | |
caption | Form caption |
Caption text to be displayed when form is active | |
modal | Modal |
If set, the form will be executed modally, as if it was a dialog. Note that changes to this setting will not take affect until the form window has been closed and reopened. | |
hidebars | Hide Menu/Tool Bars |
If set, the menu and tool bars will be hidden when the~ form is executed. | |
slots | Slots |
List of slots, which contain script code that can be associated with events occurring in other objects. | |
onenter | On enter |
Script routine to be invoked when focus enters a control. A value like #Enter invokes an external function called onItemEnter; otherwise define a function called eventFunc whose two arguments will be the control item and the query row number. | |
onleave | On leave |
Script routine to be invoked when focus leaves a control. A value like #Enter invokes an external function called onItemLeave; otherwise define a function called eventFunc whose two arguments will be the control item and the query row number. | |
onset | On set |
Script routine to be invoked when the value in the control is set from the database. A value like #Set invokes an external function called onItemSet; otherwise define a function called eventFunc whose three arguments will be the control item, the query row number and the value. | |
onaction | On action |
Script routine to be invoked when a block-level action is about to take place. A value like #Action invokes an external function called onBlockAction; otherwise define a function called eventFunc whose two arguments will be the block and the action code. A false result aborts the action. | |
onuncurrent | On uncurrent |
Script routine to be invoked when a record ceases to be current. A value like #UnCurrent invokes an external function called onBlockUnCurrent; otherwise define a function called eventFunc whose two arguments will be the block and the query row being left. | |
oncurrent | On current |
Script routine to be invoked when a record becomes current. A value like #Current invokes an external function called onBlockCurrent; otherwise define a function called eventFunc whose two arguments will be the button and the query row number. | |
ondisplay | On display |
Script routine to be invoked when a record is displayed. A value like #UnCurrent invokes an external function called onBlockUnCurrent; otherwise define a function called eventFunc whose two arguments will be the block and the query row being displayed. | |
prequery | KBForm.prequery |
KBForm.prequery | |
preinsert | Pre-Insert |
Script routine to be invoked just before a new row is inserted into a table. A value like #Insert invokes an external function called onBlockInsert; otherwise define a function called eventFunc whose two arguments will be the block and the query row number. Insert is aborted unless the function returns true. | |
preupdate | Pre-Update |
Script routine to be invoked just before a row is updated in a table. A value like #Update invokes an external function called onBlockUpdate; otherwise define a function called eventFunc whose two arguments will be the block and the query row number. Update is aborted unless the function returns true. | |
predelete | Pre-Delete |
Script routine to be invoked jusst before a row is deleted from a table. A value like #Delete invokes an external function called onBlockDelete; otherwise define a function called eventFunc whose two arguments will be the block and the query row number. Deletion is aborted unless the function returns true. | |
postquery | Post-Query |
Script routine to be invoked just after a select query has been issued, but before any data is displayed. A value like #PostQuery invokes an external function called onBlockPostQuery; otherwise define a function called eventFunc whose argument will be the block. | |
postsync | Post-Sync |
Script routine to be invoked just after an insert, update or delete query has been issued A value like #PostSync invokes an external function called onBlockPostSync; otherwise define a function called eventFunc whose four arguments will be the block, the query row, the action and the primary key of the affected row. | |
onchange | On change |
Script routine to be invoked when the value in the field is changed by the user. A value like #Change invokes an external function called onBlockChange; otherwise define a function called eventFunc whose three arguments will be the control item, the query row number and the new value. | |
onload | On Load |
Script routine to be invoked when the form is loaded. A value like #Init invokes an external function called onFormInit; otherwise define a function called eventFunc whose single argument is the form. | |
onunload | On UnLoad |
Script routine to be invoked when the form is closed. A value like #Cleanup invokes an external function called onFormCleanup; otherwise define a function called eventFunc whose single argument is the form. | |
onclose | KBForm.onclose |
KBForm.onclose | |
notes | Notes |
The Notes setting may be used for any arbitrary notes, for instance for documentation. Rekall does nothing with the value, other than to preserve it. |
Remaining properties are as for form blocks.