Optionale Export-Flags
DeviceMessage()
Abschnitt betitelt „DeviceMessage()“Dieses Export-Flag wird verwendet, um in SignalRGB auf der zugehörigen Geräteseite eine Nachricht anzuzeigen. Sie können damit Besonderheiten oder notwendige Beschreibungen für den Benutzer anzeigen.
Der Rückgabewert ist ein eindimensionales Array aus 2 Strings: der anzuzeigende Text im Popup, gefolgt vom Hover-Tooltip.
export function DeviceMessage() { return ["This device has a weird quirk!", "The quirk is this!"]; }SupportsSubdevices()
Abschnitt betitelt „SupportsSubdevices()“Dieses Export-Flag wird für Beleuchtungscontroller verwendet, die nur Subdevices unterstützen und keine integrierten LEDs zur Steuerung haben. Wenn „true” zurückgegeben wird, verhindert dieser Export, dass das übergeordnete Gerät im Canvas der Layouts erscheint, und deaktiviert die Bearbeitung seiner Positionseinstellungen.
export function SupportsSubdevices(){ return true; }on*Changed()
Abschnitt betitelt „on*Changed()“Diese Exportfunktion wird nicht vom Backend verwendet, sondern als Callback innerhalb des Plugins eingesetzt, um zu benachrichtigen, wenn eine Einstellung geändert wird. Im folgenden Beispiel wird sie verwendet, um den DPI-Wert einer Maus jedes Mal zu setzen, wenn ein Benutzer den Schieberegler ändert, anstatt die Werte in Ihrem Render-Loop abzufragen und die Änderung dort zu behandeln.
Diese Callbacks werden aufgerufen, nachdem RGB-Daten vom Canvas abgerufen wurden, aber bevor die Render-Funktion für den aktuellen Render-Frame aufgerufen wird.
// Setting Exportexport function ControllableParameters(){ return [{ property: "dpi1", label: "DPI", step: "50", type: "number", min: "200", max: "18000", default: "800" }, ];}
// DPI Functionsexport function ondpi1Changed() { setDpi(dpi1);}
function setDpi(dpi) { if (!SettingControl) { return; } device.log(`Setting Dpi to ${dpi}`); Corsair_Set(CORSAIR_DPI_X, dpi); Corsair_Set(CORSAIR_DPI_Y, dpi);
device.log(`DPI x is now ${Corsair_Get(CORSAIR_DPI_X)}`); device.log(`DPI y is now ${Corsair_Get(CORSAIR_DPI_Y)}`);}