Add command
Adds a new control to a page.
add <control-type>
[id=<string>]
[to=<string>]
[at=<int>]
[trim=<int>]
property1=value
property2=value
...
Description​
add command adds a new control to a page.
Examples​
add text to=header value="Welcome back!"
This command adds a new text control to a column with id header.
Parameters​
control-type​
The type of the control.
id​
Control ID. ID will be auto-generated if not specified. If you need to get generated ID replace add command with addr which means "add with result", for example in Bash:
# Add new row and get its ID
"addr row" > $PAGE_PIPE
read $rowID < $PAGE_PIPE
# Add column to the row and get its ID
"addr col to=$rowID" > $PAGE_PIPE
read $colID < $PAGE_PIPE
# Add text to a column and dismiss the result
"add text to=$colID value='Hello, world'" > $PAGE_PIPE
to​
Parent control ID. If not specified the control is added to the bottom of the page.
at​
Insert control at the specified position in the children collection.
trim​
trim allows to specify the maximum number of children to leave after adding new child controls.
Negative trim value trims items from the end; positive - from the start.
For example, if we have the following controls tree:
page
stack id=lines
text value='Line 1'
text value='Line 2'
text value='Line 3'
Running add to=lines trim=3 text value='Line 4' will result into:
page
stack id=lines
text value='Line 2'
text value='Line 3'
text value='Line 4'
so controls were trimmed from the start to have a total number of children at 3.
On the other hand, running add to=lines at=0 trim=-3 text value='Line 4' will result into:
page
stack id=lines
text value='Line 4'
text value='Line 1'
text value='Line 2'
so new control was insterted to lines stack at position 0 and controls were trimmed from the end to have a total number of children at 3.