Branch Elements
A branch element changes between several elements, depending on the state of
objects (windows, desks, monitors) in the context where it appears, and on
Litestep variables. A branch element is one of the elements listed in
(prefix)Branches. For each of those elements, (element-name)Condition is a
boolean expression which defines when it should be used. If several conditions
are satisfied, the first element whose conditions are satisfied is the one
used. If no condition is specified for an element, that element is always used
unless the conditions are met for an element which appears before it.
(prefix)Branches [element-list]
Mandatory Setting
Applies to: Branch elements
A list of the possible elements this branch element may be rendered as.
The first of the elements listed whose condition is fulfilled will be
used.
(prefix)Condition [boolean-expr]
Default: true
Applies to: Children of branch elements
The condition under which this element will be used.
Boolean Expressions
Condition expressions may use the & (and), | (or), and ! (not)
operators, boolean RC variables (which are considered false if not defined),
plus the following keywords:
-
minimized
True if the context task is minimized.
-
flashing
True if the context task is flashing for attention.
-
focused
True if the context task's main window is focused, or if there is no
context task and the context desk is focused.
-
deskfocused
True if the context desk is focused on any monitor.
-
thismonitor
True if the context desk is displayed on the same monitor as the panel.
-
true, false
The literal values true and false.
-
dragging
True if any element is currently being dragged
-
hovered
True if the cursor is over this element
-
vertical
True if this panel is vertical ((prefix)Vertical or an appbar on the
left or right edge of the screen)
-
windowhovered
True if the cursor is over a window belonging to the context task
Litestep variables used in conditions are read once, on initialization, unless
(prefix)UpdateVars [bool] is set to true (default false), in which case they
update every time the layout is checked for changes. Operators in branch
condition expressions are right-associative; & and | have the same
precedence, but may be parenthesized.