Difference between revisions of "ONELAB syntax for Gmsh and GetDP"

From ONELAB
Jump to: navigation, search
(String attributes)
(String attributes)
Line 72: Line 72:
 
: Possible choices for the parameter
 
: Possible choices for the parameter
 
;MultipleSelection "1001111"
 
;MultipleSelection "1001111"
: Allow multiple selection in choices
+
: Allow multiple selection in choices. The following string indicates the initial selection pattern.
 
;Macro string
 
;Macro string
 
: Treat the parameter as the filename of a macro that will be run when the parameter is clicked in the interface
 
: Treat the parameter as the filename of a macro that will be run when the parameter is clicked in the interface

Revision as of 07:08, 22 October 2013

ONELAB numeric parameters can be defined directly in the input files through the DefineConstant syntax: <syntaxhighlight lang="cpp"> DefineConstant[ x = 1 ]; DefineConstant[ x = {1, Label "My variable"} ]; DefineConstant[ x = {1, Label "My variable", Choices {0,1}} ]; DefineConstant[ x = {1, Label "My variable", Choices {0,3,5}} ]; DefineConstant[ x = {1, Label "My variable", Choices {0="Zero",3="Three", 5="Five"}} ]; DefineConstant[ x = {1, Label "My variable", Min 0, Max 50, Step 5} ] DefineConstant[ x = {1, Label "My variable", Min 0, Max 50, Step 5, Path "Variables/Input/"} ]; </syntaxhighlight>

When the input file is analyzed, if the parameter has not been previously defined, it takes the value provided in DefineConstant and is sent to the ONELAB server. If the input file is re-analyzed later, the value will be updated using the value from the server (unless it is labeled ReadOnly: see below). The same syntax can be used to define string parameters: <syntaxhighlight lang="cpp"> DefineConstant[ s = "a" ]; DefineConstant[ s = {"a", Label "My string variable"} ]; DefineConstant[ s = {"a", Label "My string variable", Choices {"a", "b", "c"} } ]; DefineConstant[ x = {"a", Label "My string variable", Kind "File"} ] DefineConstant[ x = {"a", Label "My variable", Path "Variables/Input/"} ]; </syntaxhighlight>

Note that when the code is run without the ONELAB server, the parameters simply take the default values provided by DefineConstant. An input file modified to create an appealing graphical user interface using ONELAB can thus also be run as-is without ONELAB.

Common parameter attributes

Here's the list of attributes available for all ONELAB parameters:

Label string
User-friendly label used in the graphical user interface
Path string
Full path of the parameter in the ONELAB server (represented as a tree in the graphical user interface)
ReadOnly 0|1
If ReadOnly is set, the value cannot be changed server-side, and the value provided in DefineConstant is always used
Highlight string
Color used to draw the widget in the graphical interface
Visible 0|1
Should the parameter be visible in the interface?
Closed 0|1
Should the subtree containing this variable be closed?
Help string
Help string for this parameter
AutoCheck 0|1
Allows to disable automatic "check" (rebuild of the interface) when the value is changed
GmshOption string
Treat the parameter as the name of a Gmsh option (e.g. Mesh.Algorithm)

Number attributes

In addition, numbers can take the following specific attributes:

Min number
Minimum value allowed when scrolling in the interface, and when looping on the parameter
Max number
Maximum value allowed when scrolling in the interface, and when looping on the parameter
Step number
Step value used when scrolling in the interface, and when looping on the parameter
Range {min, max, step}
Alternate syntax for Min, Max and Step
Choices{number, number, ...}
Possible choices for the parameter
Choices{number=string, number=string, ...}
Possible choices for the parameter, with string labels for each choice
ReadOnlyRange 0|1
Treat the range (or the choices, if they are provided) as read-only
Loop string
Loop over the parameter (the string indicates the loop imbrication level: currently "1", "2" or "3")
Graph string

String attributes

String accepts the following specific attributes:

Kind string
Mutable kind of the string (currently: "file")
Choices {string, string, ...}
Possible choices for the parameter
MultipleSelection "1001111"
Allow multiple selection in choices. The following string indicates the initial selection pattern.
Macro string
Treat the parameter as the filename of a macro that will be run when the parameter is clicked in the interface