[gelöst]Darstellung von SET_ON / SET_OFF verhindern

Begonnen von msfox, 18 Januar 2017, 08:56:55

Vorheriges Thema - Nächstes Thema

msfox

Ich habe einen Floorplan mit Schaltern. Der aktuelle Zustand des Schalters wird über die Bilder switch_on.svg und switch_off.svg dargestellt. Wenn ich nun den Schalter betätige, rutscht dieser nach unten (siehe Anhang). Es werden die Bilder set_on.svg und set_off.svg geladen. Die Bilder für den "set_" sind identisch mit den Bildern für "switch_".

Wie kann ich die Animation für die Zustandsänderung verhindern?

Der Schalter soll schön an seinem Platz bleiben :-).

Danke

marvin78

Ein userRading (bspw. status) bauen, dass nur on und off vom state übernimmt, oder wenn die Anzeige auf STATE aufbaut, das ganze in stateFormat umsetzen.


msfox

#2
devStateIcon off:switch_off on:switch_on set_on:switch_on set_off:switch_off
Dann wird ein Icon (hier das gleich) für set_* geladen, welches sich nicht verschiebt.

Aber bei

devStateIcon off:switch_off on:switch_on set_on:switch_set set_off:switch_set

"wackelt" es wieder. Also dann, wenn dem set_* ein anderes Icon als on bzw. off zugewiesen wird.

marvin78

Ich habe von devStateIcon doch gar nicht gesprochen.

msfox

stimmt...  :)
Aber für die Lösung des Problems extra ein userReading zu bauen, war mir zu umständlich.
Hier haderte es an der Umsetzung, trotz https://fhem.de/commandref_DE.html -> userReadings.
Auch will ich ja den Status SET_ON / SET_OFF nicht unterbinden.

Mit devStateIcon hat es ja auch funktioniert. Das Tüpeltchen auf dem "i" wäre jetzt noch, wenn man genau so leicht auch das Icon im "SET" tauschen könnte, ohne dass es ruckelt.

CQuadrat

Bist Du sicher, dass die SVGs die gleichen Dimensionen haben?
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

msfox

Ja, ich habe die SVG-Datei zunächst einfach kopiert.
devStateIcon off:switch_off on:switch_on set_on:switch_set set_off:switch_set

CQuadrat

Strange  ???

Vertausche doch mal spaßeshalber die Icons. Z.B. so:

devStateIcon off:switch_set on:switch_set set_on:switch_on set_off:switch_off

Mich würde mal interessieren, was da passiert.
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

msfox

Dann ist das Icon im state = off bzw = on verschoben und im bei set_on und set_off rutscht es nach oben. Also genau umgekehrt.
Ähhh... muss ich nochmal prüfen.
Aber die SVG's aus meinem letzten post sind doch gleich.

CQuadrat

#9
Mmh.

Da fällt mir noch ein:

  • Bowser-Cache mal löschen (welchen Browser nutzt Du denn?)
  • Hast Du vielleicht noch eine alte Kopie der SVG-Datei irgendwo liegen?

Wenn Du devStateIcon nutzt, wie sieht es denn im "normalen" FHEMWEB aus?
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

msfox

ahh...
In der css-Datei fehlte noch:

svg.switch_set { height:55px; width:130px; fill:#ffffff; vertical-align:middle; margin:0 0; }


Dann klappt auch:
devStateIcon off:switch_off on:switch_on set_on:switch_set set_off:switch_set
ohne ruckeln.
:) :) :) :)

Der Tag SVG hat nämlich ohne Angabe des Klassennamens .switch_set eine andere Breite (100px) und margin:2px in der css-Datei. Dadurch wird's kleiner und verschoben.
Warum das nun auch ist, wenn ich "set_on:switch_set set_off:switch_set" weglasse, keine Ahnung. Aber egal jetzt geht's.