wir pushen und poppen(keine Sorge, das wird nix Unanständiges)
#
font arial
pt 24
rgb "FF0000FF" # rot
text - 50 50 "Ich bin ein roter Text"
push
rgb "FFFF00FF" # gelb
text - 50 100 "Ich bin ein gelber Text"
push
rgb "00FF00FF" # grün
text - 50 150 "Ich bin ein grüner Text"
pop
text - 50 200 "Nun haben wir gelb vom Stapel zurückgeholt"
pop
text - 50 250 "Und nun haben wir wieder die Ursprungsfarbe rot"
#
liefert als Ergebnis:
(http://debian.fhem.de/grafik/pushpop.png)
Erklärung:Mit "push" werden alle aktuellen Layoutparamter auf einen Stapel gelegt.
Danach können einzelne Parameter (im Beispiel die Farbwerte per rgb) geändert werden.
Am Ende kann mit "pop" der alte Parametersatz wieder vom Stapel geholt und aktiv gesetzt werden.
Wozu? Manchmal ist sowas nützlich im Zusammenhang mit "condition", wenn man verschiedene Layoutblöcke abarbeiten möchte.
Der Parametersatz enthält folgende sinnvoll nutzbaren Werte:
- rgb
- boxcolor
- textboxalign
- padding
- font
- pt
- textdesign
- thalign
- tvalign
Achtung - 1 - die Schildkröte in Kombination mit push und pop zu verwenden, erfordert einiges Mitdenken. Denn mit einem pop werden ggf. auch veraltete x/y Positionen wiederhergestellt!
Achtung - 2 - es werden immer
alle Werte des Parametersatzes wiederhergestellt, nicht nur die veränderten!
Ah! Sehr schön!
(Hab's im SVN schon gesehen. ;) )
Finde ich wirklich sehr praktisch, gerade auch weil die Schildkröte ebenfalls gepusht und gepoppt wird :D
Werde am WE mal meine Panels etwas überarbeiten.
Danke!
wir ticke(r)n - aber richtig
Wer mal testen möchte...
#
font arial
pt 14
rgb "FFFF00FF"
# ticker <id> <x> <y> <width> <items> <speed> <output>
#
ticker - 100 100 600 1 700 "Zeile1 - ABC\nZeile2 - DEF\nZeile3 - GHI"
#
(http://up.picr.de/20985274ow.jpg)
Eigentlich sollte alles selbsterklärend sein, vielleicht ausser <output>
<output> muss eine Liste von Textzeilen sein, die im Ticker dargestellt werden sollen. Diese Texte müssen mit "\n" getrennt sein. Das ermöglicht die Bereitstellung der Tickerinforamtionen durch eigene Funktionen, beispielsweise aus der 99_myUtils.pm
Im Beispiel habe ich einen hartcodierten Text verwendet, der zur Darstellung in drei Zeilen aufgeteilt wird.
<items> gibt an, wieviele Zeilen gleichzeitig im Ticker erscheinen sollen
<speed> gibt die Geschwindigkeit des Tickers an - je höher der Wert, umso schneller. 700 hat sich als guter Wert erwiesen.
Achtung!
Das Ganze ist noch hochexperimentell. Die Syntax wird sich vermutlich in den nächsten Tagen noch ändern.
Von einem produktiven Einsatz rate ich deshalb derzeit ausdrücklich noch ab!
*** NO SUPPORT ***InfoPanel goes longpoll
longpoll <aktorName> <x> <y>
Sorgt dafür, dass ein devStateIcon für <aktorName> im InfoPanel angezeigt und bei Statusänderung aktualisiert wird.
Einschränkungen:
die x/y Koordinaten sind immer absolute Koordinaten, die Umrechnung innerhalb einer group funktioniert nicht - erledigt ab 26.02. -beim erstmaligen Aufruf der InfoPanel-Seite werden keine aktuellen Zustände dargestellt, die erste Aktualisierung erfolgt nach einer Statusänderung - erledigt ab 25.02. -