Slider Widget - Schritte

Begonnen von fhainz, 28 Februar 2016, 09:29:27

Vorheriges Thema - Nächstes Thema

fhainz

Hallo!

Ich wollte das Slider Widget für die Receiver Lautstärke verwenden. Dafür wäre es aber super wenn der Slider in 5 Schritte hochzählt, dann wäre es gleich wie auf der Fernbedienung.

Gibt es dafür eine Möglichkeit die ich übersehen habe? Also 5,10,15,.. statt 5,6,7,8,...


Grüße


Invers

setList  state:slider,0,5,100,1
Sollte in fünfer Schritten von 0 bis 100 gehen.
Ungetestet.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

fhainz

Mit einem Dummy funktioniert das in FHEMWEB. Beim ENIGMA Modul gibts wiederum kein setList Attribut, was halb so schlimm wäre liese sich über ein notify und dummy lösen. Im Tablet-UI ändert sich aber am Slider Verhalten leider nichts.

Die sauberste Lösung wäre das im Slider Widget (zB data-steps) einzubauen. Nach einigem herum probieren habe ich das auch geschafft.

https://github.com/knowthelist/fhem-tablet-ui/pull/139

justme1968

ot: in fhrmweb braucht man keinen dummy sondern das widgetOverride attribut.

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

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

setstate

Ich habe versucht, data-step einzubauen. Das endet bei mir aber immer in einer Dauerschleife von JQuery.  :o :o :(
Wird also eher nix, ausser ich finde den Bug in der Powerange Lib

fhainz

@setstate
Ich hab das gleich wie in der fhemweb.js implementiert. Funktioniert bei mir. https://github.com/knowthelist/fhem-tablet-ui/pull/139

fhainz

@andre
danke, auf das attribut vergesse ich immer  ::)

setstate

Das Callback habe ich gar nicht betrachtet. Ich dachte - passiert alles in der Lib selbst ... :o

setstate

Klappt bei mir trotzdem nicht.

Im Powerange wir Step so weiterverarbeitet:

if (this.options.step) this.step(this.slider.offsetWidth, this.handle.offsetWidth);

offsetWidth in manchen Fällen noch nicht bekannt und daher null. Da muss wieder ein Workaraound herhalten...

fhainz

An der Stelle an der ich es habe passt es nicht? Ich kenne mich mit JS ziemlich wenig aus aber bei mir funktioniert das alles wunderbar.

setstate

ich habe 'step': elem.data('steps'),

weil ich den Powerange internen step-Parameter nutzen will. Damit springt der Regler auch in den gewählten Schritten

setstate

ich habe den Workaround gefunden und das Update fertig gemacht. Jetzt kann man auch data-step="5" setzen.

fhainz


kvo1

#13
Zitat von: setstate am 28 Februar 2016, 15:40:58
ich habe den Workaround gefunden und das Update fertig gemacht. Jetzt kann man auch data-step="5" setzen.
Cool, hatte neulich die Idee das Slider Widget für die Zeiteinstellung meiner Rolles zu benutzen, ähnlich mach ich das im fhemweb, bin dann aber genau daran gescheitert.

Gruß
Klaus

//EDIT//
Könnte es sein , das dadurch   data-value=true   nicht mehr funktioniert ?

:
:
..... kann ich mir selbst beantworten

http://forum.fhem.de/index.php/topic,49988.msg417252.html#msg417252


RPi1: mit CUL: HM-CC-RT-DN,HM-ES-PMSw1-Pl,HM-LC-BL1-FM,HM-LC-Bl1PBU-FM,HM-LC-SW1-PL2,HM-SCI-3-FM,HM-SEC-SC-2,KFM-Sensor
RPi2: Viessmann(optolink) mit 99_VCONTROL.pm,
Cubietruck: Wheezy / Apache / Owncloud
Cubietruck: Armbian(Jessie) / fhem 5.7 / LMS 7.9
RPi3: (Test) mit 7" Touch  &  HM-MOD-RPI-PCB