webCmd mit Icons statt Text

Begonnen von crazystone, 13 August 2013, 15:16:00

Vorheriges Thema - Nächstes Thema

Simon74

Andre, Danke !
Jetzt komme ich weiter.
Ich habe noch versucht die Grösse der Icons per style Attribut anzupassen was so aber anscheinend nicht geht:
attr fp_yamaha valueStyle style="width:20px; height:20px"
Gibt es eine Möglichkeit ?

justme1968

die icon größe musst du direkt über das/die stylesheets steuern. das geht nicht über die readingsGroup attribute.

gruß
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Simon74

#17
OK, im svg Teil der css gehts.
Eine Frage noch zum Parameter "commands".
Wie muss hier eine SUB in myUtils aufgerufen werden ?
....'fp_multimedia.rc_VOLPLUS' => '{Lauter}'....
wird sofort beim laden ausgeführt..

justme1968

was soll die sub tun?

das kommando liefern das ausgefürt wird? dann so: => '{mySub()}'. diese muss dann das kommando als string zurück liefern.

zur laufzeit durch den klick aufgerufen werden? das geht in dem du im command per trigger ein event erzeugst => 'trigger myNotify <param>' auf das du dann mit einem notify reagieren kannst define myNotify myNotify {mySub($EVENT) }

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Simon74

Mehr Details:  :)

Meine ReadingsGroup:
define fp_multimedia readingsGroup <%control_on_off>,<%control_standby>,<%rc_TV>,<%rc_RADIO>,<%rc_LEFT>,<%rc_RIGHT>,<%rc_VOLMINUS>,<%rc_VOLPLUS>,<%rc_MUTE>
attr fp_multimedia commands {'fp_multimedia.control_on_off' => 'set hub command Yamaha PowerToggle', 'fp_multimedia.rc_RADIO' => 'set hub activity Radio', 'fp_multimedia.rc_TV' => 'set hub activity Fernsehen', 'fp_multimedia.rc_LEFT' => 'set hub command Yamaha SpeakerB', 'fp_multimedia.rc_RIGHT' => 'set hub command Yamaha SpeakerA', 'fp_multimedia.rc_VOLMINUS' => '{Leiser()}', 'fp_multimedia.rc_VOLPLUS' => '{Lauter()}', 'fp_multimedia.rc_MUTE' => 'set hub command XTrend mute' }


Wenn ich commands so definiere werden die Funktionen {Leiser} und {Lauter} (die ich in myUtils definiert habe) schon beim definieren ausgeführt, klick auf ICON bewirkt jedoch nichts. Mit trigger wirds endlos abgefeuert..

justme1968

lies noch mal genau was ich geschrieben habe.

die erste version wird beim anzeigen ausgeführt. das ist die die du ausgesucht hat.

du brauchst variante zwei. was heisst endlos?

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Simon74

Achso OK (werde nochmals genau lesen, sorry).
Endlosschleife wenn:
..., 'fp_multimedia.rc_VOLMINUS' => 'trigger {Leiser()}',...

Simon74

Das ist Variante 2:
Zitat von: justme1968 am 07 Dezember 2014, 14:38:57
oder so:define fp_yamaha readingsGroup fp_yamaha:!onoff,!up,!down
attr fp_yamaha attr valueIcon { 'onoff => 'control_on_off', ...}
attr fp_yamaha attr commands {'onoff' => 'set hub command Yamaha PowerToggle',... }

hier nimmst du 'symbolische' namen und setzt das icon über das valueIcon mapping.

Hier bekomme ich keine Icons, und habe dasselbe Problem. (Funktion wird sofort ausgeführt).

justme1968

ich meinte diese zweite version:
Zitatzur laufzeit durch den klick aufgerufen werden? das geht in dem du im command per trigger ein event erzeugst => 'trigger myNotify <param>' auf das du dann mit einem notify reagieren kannst define myNotify myNotify {mySub($EVENT) }

das heisst es muss so aussehen:..., 'fp_multimedia.rc_VOLMINUS' => 'trigger myNotify leiser',...

und du brauchst ein notify in dieser art:define myNotify myNotify {if($EVENT eq "leiser") {Leiser()} else {Lauter()} }

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Simon74


Simon74

Ich versuche nun noch bei meiner ReadingsGroup die svg Icon über myUtils einzufärben, das funktioniert aber wohl nicht so ?

DEF:
define fp_multimedia readingsGroup <%control_on_off>,<%control_standby>,<%rc_LEFT>,<%rc_RIGHT>,<%rc_VOLMINUS>,<%rc_VOLPLUS>,<%rc_MUTE>,<%rc_UP>

Die Zeile in myUtils:
fhem("attr fp_multimedia valueIcon { 'control_on_off\@EBBB00' }");

justme1968

da gehört kein \ rein.

gruß
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Simon74

Zitat von: justme1968 am 20 Dezember 2014, 17:18:39
da gehört kein \ rein.

99_myUtils benötigt ein escape ?
Steht dann ja so in valueIcon, wirkt aber nicht. Habe schon einige verschiedene Schreibweisen versucht, ich kann reinschreiben was ich will Icon bleibt weiss.

(http://img5.fotos-hochladen.net/uploads/201412201741g0y2ftkwv.png)

justme1968

#28
du schmeisst gerade zwei dinge durcheinander.

mit ...,<%control_on_off>,... definierst du direkt das icon das angezeigt werden soll. wenn es farbig sein soll schreib es direkt hier hin: ...,<%control_on_off@EBBB00>,...

valueIcon ist zum zuordnen eines icons zu einem reading. hier musst du es so schreiben:attr fp_multimedia valueIcon { 'onoff' => 'control_on_off\@EBBB00' }

entweder nimmst du die <%...> schreibweise oder du nimmst readings und valueIcon.

hatte vorhin auf die schnelle nicht gesehen das noch mehr an der syntax nicht richtig ist.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Simon74

Ok, ich benötige dann aber in meiner Dummy ReadingsGroup eigentlich ein Reading das in der ReadingGroup nicht vorhanden ist.
Entweder den State aus dem Presence oder Enigma Modul, geht das ?
Dann müsste ich es auch nicht in myUtils einbauen, weil es die ReadingsGroup selbst auswertet..

{ '[t5.ping.xt] eq "presence"' => 'control_on_off@EBBB00' }
oder
{ '[t5.wz.receiver] eq "on"' => 'control_on_off@EBBB00' }