In This Topic
File Structure
A qiq file is a tab separated text file which contains all of the information to specify the appearance and behaviour of the friendly page being presented. There are three different types of line in a QLT file which form a hierarchy.
NB: This information is for advanced users, with Developer Addon, who wish to modify the QIQ files manually.
See also:
Creating your own QIQ/QLT pair.
Group
A group is a collection of tabs. In CabMasterPro it is simply a category, but in Form Editor each Group can effect a different QLT from the others. The line in the file for this is:
[group] <Group name> <EnableFormula> <EnableLCMFormula> <Type> <RowLocked> <DefaultQLT>
- [group]: This appears at the start of a group line to mark it as a group line.
- <Group name>: The name of the group. This is the text that appears in the group change drop down box.
- <EnableFormula>: Whether or not formulas are to be evaluated for this friendly page. Form Editor does not support the sophisticated formulas in CabMasterPro and hence does not use this flag.
- <EnableLCMFormula>: Whether or not LCM formulas are to be evaluated for this friendly page. Form Editor does not support the sophisticated formulas in CabMasterPro and hence does not use this flag.
- <Type>: What kind of QIQ this is. A '0' in this field denotes a standard QIQ where a '1' in this field denotes a Form Editor QIQ.
- <RowLocked>: If set to '1', the user is not permitted to add or remove rows from the QLT file that the QIQ is linked to but just to modify data in existing rows.
- <DefaultQLT>: The QLT file which, by default, will be used by this QIQ. This can be overridden by passing the QLT path as a command line parameter when calling Form Editor.
- <QuoteHeader>: Whether to quote the contents of the header cell for each row.
- <AutoSort>: Whether to sort the rows of the QLT to aid in navigation between rows. Example (as per image below):
[group] Customer Manager 0 0 1 0 Customer details.qlt 0 1
This line represents a new group in a tab file. The group's name is "Customer Manager", there is no formulas, it is type 1 (Form Editor), the rows are unlocked and the default QLT is "Customer Details.qlt". The header cell for each row will not be quoted, but the rows will be sorted.
Tab
A tab is a collection of Fields. In both CabMasterPro and Form Editor tabs are simply used as a way to categorise information to make it easier for the user to view/edit it. Each tab is a single page of fields which can view/modify the data in the QLT which is associated with it's group. The line in the file for this is:
[tab] <Tab name>
The tab name is simply the text which appears on the tab. There is no other information required in this line.
Field
A field line is a single control within a tab, such as a text box or a label. These lines are the most complicated and are in the format:Public Enum QIQCOLS <QLT Field;> <Label> <Input Type> <Control Type> <List Style> <List Answer> <Formula> <Extra> <Question Width> <Answer Width> <Action> <Style> <Tooltip> <Default>
- <Name>: The variable in the QLT file which is controls and is edited by this field. This is specified by the Column header. If this field is blank then the value of the control has no effect on the QLT.
- <Question>: The text for the label attached to this control. In the case of a Static control (see control type) this is simply the text that appears on the label.
- <Type>: The format of the input expected. This can be any of CabMasterPro's Data Types.
- <Control>: The style of the control itself. The options are:
- Groupbox: This field represents the start of a groupbox which is used to categorize information. Once one of these is used, the groupbox will continue until the next groupbox is started or the page ends.
- Static: A piece of uneditable text. This is often used to provide the user with information or display read-only fields from the qlt file.
- Edit: A standard edit box. This is simply a box which the user can type text into. Linking one of these to a field within the QLT is one of the simplest methods for editing a field.
- Checkbox: A yes/no answer tickbox.
- Dropdown: A dropdown box which allows the user to select an item from the list or type their own answer in as a new option.
- Drop List: Similar to a dropdown box except that the user is limited to the options in the list and cannot type a new one.
- Button: Only available in CabMasterPro.
- Option: A set of radio buttons. Only one radio button within a groupbox can be pushed by the user at any one time, and selecting one will deselect any others.
- Thumbnail: An image to be displayed. This control is simply for appearance.
- <Combo Source>: In the case of Dropdown and Drop List this determines the source of the items in the dropdown/drop list. The available styles are:
- List: The values are in the form of a pipe ('|') seperated list in the Extra field. For example if the extra field was "one|two|three" the three words would be different options in the dropdown.
- Folder Names: The values are a list of all folders within a directory. The directory to be searched inside for subfolders is specified in the "Extras" field. For example if the extras field was "C:\AllMasterSoftware\CabMasterPro\" the dropdown would have all of the CabMasterPro subfolders in it.
- File Names: The values are a list of all files within a directory. The directory to be searched inside for files is specified in the "Extras" field. For example if the extras field was "C:\AllMasterSoftware\CabMasterPro\" the dropdown would have all of the files in the CabMasterPro directory in it.
- <Combo Answer>: Specifies the format of the answer which is written to the QLT field associated with a dropdown or drop list. If this field is "Text" then the value of the QLT column is set to the text which is stored in the dropdown, whereas if this field is "Id" then a number representing the location in the list is used (Starting from the top of the list and counting up from 0).
- <Enable>: Not used by Form Editor.
- <Extra>: The use of this field varies between controls, and is often unused. The controls which use this field are:
- Dropdown and Drop List: Contains information about what is in the dropdown. The exact interpretation depends on the List Style.
- Option: The value set to the QLT field if the option button is selected.
- Thumbnail: The location of the image file to be displayed.
- <Question Width>: The number of "cells" across the screen to be used for the label attached to this field. In the case of a Static field this is the width of the field itself. For a thumbnail, a negative value in this field represents height in rows, for example -3 would make the thumbnail 3 rows high. It still is only considered to occupy space in a positional sense on the row it is declared on, but it will visually enter the other rows.
- <Answer Width>: The number of "cells" across teh screen to be used for the control itself. In the case of a Static field, this field is ignored.
- <Action>: Not used by Form Editor.
- <Style>: Formatting information about this field. Add together values from the following fields to select the format for your item.
- Allignment: Left = 1, Center = 2, Right = 3. Only one of these should be used at any time.
- Bold: 4
- Italic: 8
- Underline: 16
- "Quoted": 32
- Sorted (Listbox/Combobox only): 64
For example a center aligned, bold and quoted field would be 2 + 4 + 32 = 38.
The above values do not apply to a thumbnail field, instead for a thumbnail a value of -1 specifies the need to maintain the aspect ratio of the image. If this is set the image is resized to the largest image that will fit within the space while maintaining aspect ratio.
- <Tooltip>: The text which is to appear when the user mouses over this item. Usually help information about what the field is intended for.
- <Default>: When a new row is created, this is the value which will appear in the box for that row.