Color: Unterschied zwischen den Versionen

Aus FHEMWiki
(Die Seite wurde neu angelegt: „Color.pm soll modulübergreifend Funktionen bereitstellen die die Interaktion mit farbigen Lampen erleichtern. Es wird zur Zeit von HUEDevice und dem […“)
 
Zeile 5: Zeile 5:
Der colorpicker stellt ein FHEM-Web Widget bereit das es ermöglicht in der webCmd Liste interaktiv eine Farbe einzustellen oder fest definierte presets zur auswahl zustellen. Hierzu folgende Schritte nötig:
Der colorpicker stellt ein FHEM-Web Widget bereit das es ermöglicht in der webCmd Liste interaktiv eine Farbe einzustellen oder fest definierte presets zur auswahl zustellen. Hierzu folgende Schritte nötig:


Um den colorpicker in einem eigenen Modul zu nutzen muss er zuerst eingebunden werden:
Die Funktionen importieren:
<pre>use Color;</pre>
<pre>use Color;</pre>


Danach muss in der _Initialize funktion des Moduls das colorpicker widget als mögliche webCmdFn registriert werden:
In der _Initialize funktion des Moduls das colorpicker widget als mögliche [[DevelopmentFHEMWEB#Section webCmdFn|webCmdFn]] registrieren:
<pre>$data{webCmdFn}{colorpicker} = "FHEM_colorpickerFn";</pre>
<pre>$data{webCmdFn}{colorpicker} = "FHEM_colorpickerFn";</pre>


Und als letztes muss ein entsprechendes kommando das den colorpicker verwendet in der 'set ?' liste des Moduls erscheinen:
Ein entsprechendes kommando das den colorpicker verwendet in der 'set ?' liste des Moduls vorsehen:
<pre>...rgb:colorpicker,RGB...</pre>
<pre>...rgb:colorpicker,RGB...</pre>


Nun lässt sich das Kommando rgb auf zwei Arten in der webCmd liste verwenden:
Nun lässt sich das Kommando rgb auf zwei Arten in der webCmd liste verwenden:
* ohne Paramter: um ein interaktives Eingabefeld für einen RGB-Farbwert einzublenden  
* ohne Paramter: um ein interaktives Eingabefeld für einen RGB-Farbwert einzublenden  
* mit einem RGB-Wert als Paramer um einen festen preset einzublenden.
* mit einem RGB-Wert als Paramer um einen festen preset einzublenden


Der im WEB Frontend dargestellte colorpicker wird per longpoll aktualisiert wenn das zugehörige Device ein Event der Form <code><device> RGB: RRGGBB</code>erzeugt. Wenn es im Device kein reading mit namen RGB gibt kann ein passendes Event mit hilfe von <pre>CommandTrigger( "", "$hash->{NAME} RGB: $RRGGBB" );</pre> erzeugt werden.




[[Kategorie:Development]]
[[Kategorie:Development]]

Version vom 27. Juli 2013, 20:43 Uhr

Color.pm soll modulübergreifend Funktionen bereitstellen die die Interaktion mit farbigen Lampen erleichtern. Es wird zur Zeit von HUEDevice und dem SWAP RGB Driver modul verwendet.

Colorpicker

Colorpicker und Presets

Der colorpicker stellt ein FHEM-Web Widget bereit das es ermöglicht in der webCmd Liste interaktiv eine Farbe einzustellen oder fest definierte presets zur auswahl zustellen. Hierzu folgende Schritte nötig:

Die Funktionen importieren:

use Color;

In der _Initialize funktion des Moduls das colorpicker widget als mögliche webCmdFn registrieren:

$data{webCmdFn}{colorpicker} = "FHEM_colorpickerFn";

Ein entsprechendes kommando das den colorpicker verwendet in der 'set ?' liste des Moduls vorsehen:

...rgb:colorpicker,RGB...

Nun lässt sich das Kommando rgb auf zwei Arten in der webCmd liste verwenden:

  • ohne Paramter: um ein interaktives Eingabefeld für einen RGB-Farbwert einzublenden
  • mit einem RGB-Wert als Paramer um einen festen preset einzublenden


Der im WEB Frontend dargestellte colorpicker wird per longpoll aktualisiert wenn das zugehörige Device ein Event der Form <device> RGB: RRGGBBerzeugt. Wenn es im Device kein reading mit namen RGB gibt kann ein passendes Event mit hilfe von

CommandTrigger( "", "$hash->{NAME} RGB: $RRGGBB" );

erzeugt werden.