register

[ Funktion ]

static register(
    name: string,
    callback: (e: EventProvider.Event, ...data: any[]) => void,
    options?: object
): TcHmi.DestroyFunction;

Registriert einen Callback zu einem Event und liefert eine Funktion zum Abmelden des Events zurück.

Wird ein Event nicht mehr benötigt sollte es abgemeldet werden um Speicherlecks (mem leaks) zu vermeiden.

Das System bietet zwei Möglichkeiten zum Abmelden:

Beide Möglichkeiten werden im unten angegebenen Beispiel benutzt.

Parameter

Name

Typ

Beschreibung

name

string

Name des Events

callback

(e: EventProvider.Event, ...data: any[]) => void;

Callback Funktion welche bei diesen Ereignissen aufgerufen werden soll.

Diese Funktion erhält ein Event-Objekt und optional weitere Parameter. Nicht jedes Event liefert diese mit.

options [ Optional ]

Verfügbar ab Version 1.10

object

JSON-Objekt mit Einstellungswerten.
Optionen sind abhängig vom Event.

Rückgabewert

Typ

Beschreibung

TcHmi.DestroyFunction

Meldet das Event ab und gibt alle zugehörigen Ressourcen frei wenn aufgerufen.

register 1:

Verfügbar ab Version 1.8

Beispiel - JavaScript

var destroyEvent = TcHmi.EventProvider.register(
    'TcHmiButton.onPressed',
    function (evt, data) {
        // Do stuff
        console.log(evt);
        if(data){
            // some events have custom data
            console.log(data);
        }
        // …
        // Destroy to free event resources if event is no longer needed.
        evt.destroy();
    }
);
var timeoutID = setTimeout(function () {
    // Remove register after 5 seconds as an example
    destroyEvent();
}, 5000);