neues Attribut: uiTable - DOIF User Interface, neues Attribut: DOIF_Readings

Begonnen von Damian, 07 Oktober 2017, 23:29:48

Vorheriges Thema - Nächstes Thema

Damian

Ich arbeite bereits an weiteren Vereinfachungen. Es wird viele vereinfachte Funktionen bereits im DOIF geben, die man nur noch aufrufen muss, ohne sie importieren zu müssen.


Übrigens, die beschriebenen neuen uiTable-Features sind bereits in der eingecheckten Version drin.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

cwagner

Sehe ich es richtig, dass ich je DOIF im Attribut uiTable genau eine *.TPL importieren kann?

Die Idee war, Deine tpl unangetastet zu lassen und in einer eigenen zweiten TPL die eigenen Anpassungen oder Ergänzungen zu versammeln. Das fände ich praktisch sobald die uiTable.tpl ins SVN eingecheckt würde. Schließlich muss man ja bei einem solch ideenreichen Entwickler immer damit rechnen, dass er noch tolle Erweiterungen hinzufügt und könnte so die eigenen Gehversuche vor Überschreiben durch Updates schützen.

Christian
PI 2B+/3B+ Raspbian 12, Perl 5.36.0, FHEM 6.3: 295 Module in ConfigDB: Steuerung Heizkessel, FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM EPS3), MQTT2. DOIF, PID20, Threshold, OWX; Micropelt IRTV, Volkszähler, SolarForecast; MariaDB

Damian

Zitat von: cwagner am 17 September 2019, 14:55:33
Sehe ich es richtig, dass ich je DOIF im Attribut uiTable genau eine *.TPL importieren kann?

Die Idee war, Deine tpl unangetastet zu lassen und in einer eigenen zweiten TPL die eigenen Anpassungen oder Ergänzungen zu versammeln. Das fände ich praktisch sobald die uiTable.tpl ins SVN eingecheckt würde. Schließlich muss man ja bei einem solch ideenreichen Entwickler immer damit rechnen, dass er noch tolle Erweiterungen hinzufügt und könnte so die eigenen Gehversuche vor Überschreiben durch Updates schützen.

Christian

Es ist möglich auch mehrere TPL-Files zu importieren. Man kann auch in einem TPL-File ein weiteres TPL-File importieren. Was aber in die nächste Version kommen wird, sind Funktionen, die sich jetzt noch im anhängten tpl-File befinden und zukünftig direkt im DOIF Modul verfügbar sein werden.

Mit der Möglichkeit komplexere Perlfunktionen in uiTable zu nutzen, möchte ich einen Pool von allgemein gültigen Funktionen im DOIF bereitstellen, die in der Commandref sauber dokumentiert sind und ohne TPL-Import nutzbar sein werden.

Diese Funktionen werden im package DOIF_uiTable verfügbar sein. Man muss dann im Attribut uiTable nur noch am Anfang package DOIF_uiTable; definieren und schon wird man sie alle nutzen können.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

cwagner

Interessant! Allerdings komme ich nicht vorwärts:


Ich habe eine zweite tpl erzeugt, die aktuell nur noch dies enthält, nach meinem Dafürhalten also "nichts":
{
# package $SELF;
# cw's angepasste Styles

#Styles

}


Wenn ich also im uiTable jetzt als erste Zeilen eintrage:
IMPORT contrib/DOIF/uiTable.tpl
IMPORT contrib/DOIF/uiTable_cw.tpl
{


erhalte ich als Fehlermeldung im DOIF

error Bareword "tpl" not allowed while "strict subs" in use at (eval 5578) line 1. in expression: tpl
error Missing right curly or square bracket at (eval 5579) line 1, at end of line syntax error at (eval 5579) line 1, at EOF in expression: {


Viele Grüße

Christian

PI 2B+/3B+ Raspbian 12, Perl 5.36.0, FHEM 6.3: 295 Module in ConfigDB: Steuerung Heizkessel, FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM EPS3), MQTT2. DOIF, PID20, Threshold, OWX; Micropelt IRTV, Volkszähler, SolarForecast; MariaDB

Damian

Ich habe weitere Vereinfachungen in uiTable vorgenommen. Mit den neuen Möglichkeiten lassen sich recht einfach, ohne tiefere HTML/CSS-Kenntnisse, eigene Übersichten definieren, die sich auch bedienen lassen.

1. Im Package ui_Table habe ich neue Perl-Funktionen definiert, die innerhalb von uiTable nutzbar sind.

2. Desweiteren sind Templates nicht mehr auf ein Widget beschränkt; Damit können auch komplexere Definitionen vorgenommen werden, die sich mehrfach nutzen lassen, siehe unten.

neue Version wurde eingecheckt

hier geht es weiter im neuen Thread: https://forum.fhem.de/index.php/topic,106059.0.html
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF