Visibility Conditions
Über sog. Visibility-Conditions, welche für jeden in einem Dashboard verbauten Elementarbaustein einstellbar sind, lässt sich definieren, wann bzw. unter welchen Umständen der jeweilige Elementarbaustein sichtbar sein soll im Dashboard:
Für ein konkretes Beispiel zu inbes. Visibility-Conditions, siehe Dashboard Beispiel / How-To: Anlegen eines Controls, welches sein Aussehen und ggf. Verhalten automatisch ändert abhängig von Werten globaler Variablen
Im Folgenden eine eher technische Erklärung vom Erfinder:
Grundprinzip: Controls in einem Template (!) können auf Basis des Zustands
- visible
- hover
- pressed
- active
- inactive
- enabled
- disabled
anderer Controls im selben (!) Template ausgeblendet werden.
Die visiblity Condition folgt dem Muster:
\[BUTTON:active\]
Es gibt immer CONTROL:state
und !CONTROL:state
, also !BUTTON.pressed.
Die gesamte Syntax ist, e.g. \[C1:pressed,!C2:hover\],\[C3:active\],... ==> (C1:pressed ODER NICHT C2:hover)
ODER (C3:active)
ODER ...
\[C1:pressed+!C2:hover\],==> (C1:pressed UND NICHT C2:hover)
Die Werte für den State sind active, hover, pressed, enabled, disabled, inactive.
Also !BUTTON:pressed
.
Bei active gibt es inactive und disabled für enabled.
pressed und hover haben kein Gegenstück, da muss man ! verwenden - wird mal vermutlich SEHR selten brauchen, wenn man die Layer richtig anordnet, kann aber sein.
[!BUTTON.pressed] NICHT ![BUTTON.pressed]
Der Effekt ist dann letztlich eine Multi-Layer Technologie, die natürlich auch für Text etc. funktioniert.
Überblenden ist erst mal nicht vorgesehen, es wird nicht mit opacity:0 sondern mit display:none gearbeitet.