Tutorial-Schritt 6: Bausteine und Ereignisse
Schaltfläche anlegen
Zur Vereinfachung der Bedienung soll das Beispiel nun auch die Möglichkeit bekommen, den zu regelnden Werte in größeren Schritten zu verändern. Der Regler hat eine Genauigkeit von 0.1°C daher soll es Bedienelemente geben, mit denen die Einstellung direkt um 1°C hoch- oder runtergeregelt werden kann.
Dazu wird erst einmal ein neuer Baustein der Art Schaltfläche ergänzt - diesmal direkt mit einem Namen. Für diese besondere Anwendung kann es auch nützlich sein, den Zustand auf rot (false) zu setzen, da wird dann etwas deutlicher was hier passieren soll. Die Position (links) kann dabei auch direkt so etwa (240) gesetzt werden, dass diese Schaltfläche rechts neben der formatierten Anzeige des Wertes erscheint.
Die Schaltfläche bietet wie alle andere Arten von Bausteinen individuelle interaktive Ereignisse an - erreichbar über das Plus-Symbol neben dem Text "Ereignisse".
Vorlagen bieten Parameter an, die mit Variablen verbunden sind. Der Zugriff von Ereignissen auf Parameter wird als private Aktionen angeboten. Für das Beispiel soll der Wert eines Parameters verändert werden - zusätzlich gibt es auch die Möglichkeit, direkt einen Konstante fest einzutragen.
Im Beispiel wird der einzige Parameter beim Klicken / Touch auf die Schaltfläche um 10 erhöht - durch die Skalierung entspricht das dann genau 1°C.
In der vorliegenden Konfiguration wären erst einmal keine Ereignisse im Kontext der Vorlage definiert. Würde der Baustein auf einer Steuerseite benutzt - durch Touch oder Klicken mit der Maus -, so würde ein Ereignis in der Mediensteuerung ausgelöst. In einem Block eines Scripts kann dann darauf reagiert und entsprechend Aktionen ausgelöst werden. Im Rahmen der Mediensteuerung kann dann bei solchen Ereignissen eine Voreinschränkung stattfinden: welches Ereignis wurde von welchem Baustein auf welcher Steuerseite welcher Steuerung ausgelöst? Aus diesem Grund lösen aktuell Bausteine ohne eigenen Namen auch keine Ereignisse in der Mediensteuerung aus: eine Zuordnung wäre schwer bis unmöglich.
Allerdings kann auch bereits in der Vorlage eine Verdrahtung von Ereignissen stattfinden. Im Allgemeinen werden diese dann nicht mehr als Ereignisse an die Mediensteuerung gemeldet. Hier soll ein Klick oder Touch (onClick) den Wert einer Variablen verändert.
Nach dem Anlegen des Ereignisses kann diesem eine Aktion zugeordnet werden. Erst wird die Template Einstellung wie vorgeschlagen deaktiviert belassen - auf einer Steuerseite kann dieses Ereignis nicht nachträglich verändert werden und das soll auch so sein, da es hier vollständig intern behandelt werden soll.
Es wäre nun möglich, die Änderung der Variablen über eine geteilte Aktion vorzunehmen. Geteilte Aktionen enthalten alle in neuroomNet bekannten Aktionen, also neben dem Verändern von Variablen Aktionen für Komponenten und Gruppen oder frei definierbare Aktionen der Mediensteuerung.
Gerade (aber nicht nur) für den Zugriff auf Variablen ist dieser Weg allerdings etwas umständlich. Insbesondere wenn noch weiter Bausteine auf die selbe Variable zugreifen sollen, muss diese mehrfach erfasst werden. Ist die Variable grundsätzlich im Rahmen der Vorlage nicht veränderlich, mag dies noch Sinn machen. Spätestens wenn nach dem Einfügen einer Kopie der Vorlage in eine Steuerseite eine Anpassung erfolgen muss wird das Ganze doch etwas lästig.
Symbol anlegen
Um dem Benutzer visuell zu verdeutlichen, was die soeben erstellte Schaltfläche bewirkt, soll zusätzlich ein Symbolbaustein erstellt und an der Schaltfläche ausgerichtet werden.
Jetzt wird ein neuer Baustein der Art Symbol ergänzt - auch direkt mit einem Namen (UP). Die Position des Symbol-Bausteins sollte sich an der Position der Schaltfläche orientieren. Aus den fest eingebauten Symbolen sollte man natürlich ein dem Zweck angepasstes Bild wählen, das dann auch in der Vorschau erscheint.
Die obigen Schritte können nun wiederholt werden, um die zweite Schaltfläche zu erstellen. Nachfolgend sind einige wichtige Unterschiede in der Konfiguration aufgeführt:
- Der Zustand der Schaltfläche sollte auf „true“ gesetzt werden, damit die Schaltfläche eine grüne Farbe hat
- Der Wert der „DeltaVariable“ sollte auf -10 gesetzt werden, damit die Schaltfläche die Temperatur um 1°C senkt
Nach Ergänzen der zweiten Schaltfläche (und Symbol) könnte das Steuerelement dann wie im Folgenden dargestellt funktionieren (Anmerkung: In dieser Animation sind die Buttons allerdings leicht anders positioniert):
Weiter: Verbinden zweier Bausteine