To meet your needs, we constantly work to improve Querix products.
This means that Lycia documentation is developing as well.
In case you have found a certain dissonance between the provided information and the actual behavior of Lycia 3 and/or your applications, please, let us know about this via documentation@querix.com so that we can introduce the necessary changes to our documentation.
Thank you for your attention and cooperation.
In attempt to make the software development process as easy and obvious as possible, we have united and centralized the most often used actions in one configuration file to preserve their conventional appearance and behavior throughout an application. So, there is no need to specify them every time you define the same action.
Global action parameters are stored in the configuration file named SystemActionDefaults which has the .fm2 extension. The attributes predefined in it are applied to an action, if no other parameters are set for it throughout an application. Though the action parameters defined in this file are of a global scope, they are of the lowermost priority.
The system action file is included into the Lycia 3 Development Suite and is installed together with the Lycia Runtime module. After installing Lycia from the installer, both on Windows and Linux, this file can easily be viewed and modified (by default, it is located in C:\Program Files (x86)\Querix\Lycia 3 Development Suite 7.1\Lycia\etc).
The file has the following syntax (the same syntax must be used when defining an action parameters in an XML source form file or creating a user action file:
<Action Identifier="ident_val" Text="text_val" Comment="comment_val" Statical="val" Order="val" Validate="val">
<ActionImage Uri="uri_val"/>
<Accelerator1 KeyValue="key1_val" ControlModifier="yes" AltModifier="yes" ShiftModifier="yes"/>
<Accelerator2 KeyValue="key2_val" ControlModifier="yes" AltModifier="yes" ShiftModifier="yes"/>
<Accelerator3 KeyValue="key3_val" ControlModifier="yes" AltModifier="yes" ShiftModifier="yes"/>
<Accelerator4 KeyValue="key4_val" ControlModifier="yes" AltModifier="yes" ShiftModifier="yes"/>
<ShowInContextMenu>YesNo</ShowInContextMenu>
<DefaultView>YesNo</DefaultView>
</Action>
[...]
</Actions>
where:
ident_val is an action name,
text_val is the text for an action view,
comment_val is an action help text,
val is one of the possible values for the corresponding parameter,
uri_val is an uri to an image file,
key1-4_val is an accelerator key value.
Here is the extract from the SystemActionDefaults.fm2 file to illustrate how the parameters for an action are set globally:
<Actions>
<Action Identifier="interrupt" Text="Interrupt" Comment="Interrupt">
<Accelerator1 KeyValue="Interrupt"/>
<ShowInContextMenu>Yes</ShowInContextMenu>
<DefaultView>Yes</DefaultView>
</Action>
</Actions>
As it can be viewed from the example under, the Interrupt action has several globally predefined attributes. If no other parameters are set to it within an application, it appears as follows:
an action view is shown in the context menu and action toolbar,
an action can be triggered with the help of the PAUSE/BREAK key,
an action view is labeled as "Interrupt" with the same text as a comment.
It is strongly recommended not to use the action names (identifiers) defined in the SystemActionDefaults configuration file for any of the custom events definition.
Keep in mind, that if an identical name is used for the predefined action and a custom event, and the predefined action with this identifier has the defaultView=No, the menu item will not be shown at runtime.