Subsections


4.2.2 Werkzeugleiste

Am linken Rand eines geöffneten Statechart-Fensters befindet sich die Werkzeugleiste (siehe Abb. 4.4). Sie enthält Werkzeuge, mit deren Hilfe sich Statechart-Elemente erzeugen und selektieren lassen.

Figure 4.4: Statechart-Werkzeugleiste
 
toolbar_statechart.png

4.2.2.1 Selektierungswerkzeuge

Im obersten Abschnitt der Werkzeugleiste befinden sich die zwei Selektierungswerkzeuge. Das erste davon ist das Standard-Werkzeug. Es erlaubt Ihnen, einzelne Statechart-Elemente zu selektieren, oder einen Selektierungsrahmen aufzuziehen, um mehrere Elemente auf einmal auszuwählen. Die Selektierung einzelner Elemente erfolgt dabei durch einen Linksklick, der auf dem zu selektierenden Element auszuführen ist. Durch mehrmaliges Anwenden dieses Selektierungsvorgangs bei gedrückt gehaltener SHIFT-Taste lassen sich auch mehrere Elemente auf einmal selektieren.

Eine weitere Möglichkeit, mehrere Elemente zu selektieren, stellt der sogenannte Selektierungsrahmen dar. Der Selektierungsrahmen wird aufgespannt, indem Sie die linke Maustaste an einer Stelle des Diagramms drücken, an der sich noch kein Statechart-Element befindet, und gedrückt halten. Diese Stelle markiert nun eine Ecke des Selektierungsrahmens. Mit gedrückt gehaltener Maustaste müssen Sie nun die Maus an die Stelle bewegen, an der sich die gegenüberliegende Ecke des Selektierungsrahmens befinden soll. Während Sie diese Stelle mit gedrückt gehaltener Maustaste anfahren, sehen Sie, wie sich der Selektierungsrahmen aufspannt. Schließen Sie die Aktion mit dem Loslassen der linken Maustaste an der gewünschten Stelle ab. Alle Elemente, die sich nun vollständig innerhalb des Selektierungsrahmens befinden, werden selektiert (Abb. 4.5).

Figure 4.5: Auswahl von Elementen mit dem Selektierungsrahmen
 
selection.png

Das zweite Werkzeug zur Selektierung erlaubt lediglich das Auswählen von mehreren Elementen mithilfe eines Selektierungsrahmens. Dafür erlaubt Ihnen dieses Werkzeug, den Selektierungsrahmen an beliebiger Stelle zu beginnen, egal ob sich bereits ein Element an dieser Stelle befindet oder nicht.

Selektierte Elemente werden durch einen schwarzen Rahmen hervorgehoben. Dieser enthält zusätzlich rechteckige Markierungen, die sich mithilfe des Standard-Selektierungswerkzeugs verschieben lassen. Auf diese Weise können Sie nachträglich die Ausdehnungen eines Elements verändern. Desweiteren können Sie mit diesem Werkzeug bei gedrückt gehaltener linker Maustaste selektierte Elemente verschieben.

Außerdem ist es noch möglich, mit diesem Werkzeug im Statechart-Fenster zu scrollen. Dazu halten Sie die SPACE-Taste gedrückt. Der Mauszeiger verwandelt sich dabei in ein Hand-Symbol. Jetzt können Sie durch Bewegen der Maus bei zusätzlich gedrückt gehaltener linker Maustaste das Statechart-Fenster scrollen.

4.2.2.2 Start- und Endzustände sowie Zustände erzeugen

Unterhalb der Selektierungswerkzeuge folgen die Werkzeuge zur Erstellung von Start- und Endzuständen sowie Zuständen (States). Alle diese Elemente lassen sich erzeugen, indem Sie genauso vorgehen, als wenn Sie einen Selektierungsrahmen aufziehen wollten. Dieses Vorgehen wurde bereits im vorherigen Abschnitt erläutert.

Figure 4.6: Erzeugen eines Zustands
 
create_state.png

Das entsprechende Element wird dann innerhalb des aufgezogenen Rahmens erzeugt. Zustände werden dabei den kompletten Rahmen ausfüllen (Abb. 4.6), wogegen Start- und Endzustände lediglich eine bestimmte Mindestgröße annehmen. Auch Zustände besitzen eine Mindestgröße. Sollte Ihr aufgezogener Rahmen diese unterschreiten, so wird der Zustand in seiner Mindestgröße erzeugt. Dadurch ist es auch möglich, durch einen einfachen Linksklick Elemente in ihrer Mindestgröße zu erzeugen.

4.2.2.3 Compartments erzeugen

Compartments können nur innerhalb von Zuständen erzeugt werden. Ihre Größe wird automatisch so bestimmt, daß alle enthaltenen Elemente angezeigt werden können, sofern die Größe des Zustands dies erlaubt (Abb. 4.7).

Figure 4.7: Zustand mit Compartment
 
create_compartment01.png

Enthält ein Zustand noch kein Compartment, reicht ein Linksklick, um eines zu erzeugen. Besitzt ein Zustand bereits Compartments, kann das Compartment an beliebiger Stelle eingefügt werden. Dazu bewegen Sie die Maus an eine Stelle zwischen zwei Compartments, an der das neue Compartment eingefügt werden soll, oder über das erste oder unter das letzte Compartment, um das neue Compartment vor- oder anzuhängen. Als zusätzliche Hilfe markiert ein schwarzer Strich die ausgewählte Einfügestelle (Abb. 4.8).

Figure 4.8: Hinzufügen eines neuen Compartments
 
create_compartment02.png

4.2.2.4 Transitionen erzeugen

Mit dem letzten Werkzeug lassen sich Transitionen erstellen. Um eine Transition zu erstellen, müssen Sie mit der Maus auf das Element links klicken, von dem die Transition ausgehen soll, und anschließend auf das Element einen Linksklick ausführen, bei dem die Transition enden soll (vgl. Abb. 4.9).

Figure 4.9: Transition erstellen
 
create_transition.png

Ein Sonderfall liegt vor, wenn Sie eine Transition erstellen wollen, bei der Start- und Endpunkt übereinstimmen (Transitionsschleife). Da lediglich Zustände sowohl als Start- und Endpunkte von Transitionen dienen können, wird die Transition also von demselben Zustand ausgehen, in dem sie auch wieder enden wird. Das Transitionswerkzeug unterstützt Sie bei der Erstellung solcher Transitionen in besonderer Weise. Sie klicken dazu links in den fraglichen Zustand und bewegen die Maus innerhalb desselben. Während Sie die Maus bewegen, dreht sich eine Transition um die Stelle, an der Sie den Linksklick ausgeführt haben. Die Pfeilspitze der Transition zeigt dabei immer in die Richtung, in der sich Ihre Maus zur Zeit befindet, und sie grenzt mit beiden Enden an die äußere Umrandung des Zustands.

Figure 4.10: Transitionsschleife erstellen
 
create_transition_loop_2.png

Nachdem Sie die Transition in die gewünschte Position gebracht haben, schließen Sie die Aktion mit einem Linksklick ab. Daraufhin werden automatisch Stützpunkte (Bendpoints) für die Transition erstellt, damit die Transition nicht durch den Zustand hindurch geht, sondern so umgeleitet wird, dass sie außerhalb verläuft. Dabei wird darauf geachtet, dass die Transition dort startet und endet, wo Sie es zuvor bestimmt haben (Abb. 4.10).

4.2.2.5 Stützpunkte (Bendpoints) erzeugen

Für bereits erstellte Transitionen können Sie Stützpunkte (Bendpoints) erzeugen. Transitionen werden dann nicht mehr auf dem kürzesten Weg von Start nach Ziel geleitet, sondern jeweils von einem Stützpunkt zum nächsten.

Um einen Stützpunkt für eine Transtion zu erstellen, müssen Sie die Transition zuerst mithilfe des Selektierungswerkzeugs selektieren. Ist eine Transition selektiert, werden für diese zwischen Start- und Endpunkt bzw. zwischen bereits existierenden Stützpunkten punktuelle Unterbrechungen angezeigt. Diese lassen sich mithilfe des Selektierungswerkzeugs an eine beliebige Stelle verschieben. Allein durch diese Verschiebung wird an entsprechender Stelle ein Stützpunkt entstehen (siehe Abb. 4.11).

Figure 4.11: Stützpunkte für Transitionen erstellen
 
bp.png

Erstellte Stützpunkte können Sie wieder entfernen, indem Sie den Stützpunkt durch Verschieben wieder auf eine Linie mit benachbarten Stützpunkten bzw. mit dem Start- und Endpunkt bringen. Durch ein bemerkbares Einrasten wird Ihnen dieses Unterfangen erleichtert.

4.2.2.6 Transitionsbeschriftungen verschieben

Transitionen erhalten eine Beschriftung, in der das Trigger-Signal (Ereignis) und das Ausgabe-Signal (Aktion) aufgeführt sind. Die Lage dieser Beschriftung wird durch einen Punkt (Ursprungspunkt) bestimmt, der sich auf dem Weg der Transition von Start- nach Endpunkt befindet, und durch einen zusätzlichen Abstand, den die Beschriftung von diesem Punkt hat. Der Punkt wird dabei nicht absolut festgelegt, sondern durch ein Verhältnis beschrieben, in dem er die Transition teilt.

Keine Sorge, alle diese Werte lassen sich intuitiv und graphisch editieren. Dazu müssen Sie lediglich das Standard-Selektierungswerkzeug hernehmen und die gewünschte Beschriftung oder deren Transition durch einen Linksklick auswählen. Der aktuelle Ursprungspunkt wird nun als grünes Quadrat auf der Transition angezeigt und lässt sich mit gedrückt gehaltener linker Maustaste auf dieser verschieben (vgl. Abb. 4.12).

Figure 4.12: Transitionsbeschriftung verschieben
 
transition_label_edit.png

Den Abstand, den die Beschriftung von dem Ursprungspunkt erhalten soll, können Sie jetzt einfach festlegen, indem Sie die Beschriftung bei ebenfalls gedrückt gehaltener linker Maustaste verschieben.

4.2.2.7 Allgemeines

Jedes der bereitgestellten Werkzeuge wird Sie auch darüber informieren, ob die Erzeugung eines Elementes, so wie Sie es planen, durchführbar ist. Kann also ein Element an der Stelle, an der sich ihre Maus befindet, nicht erzeugt werden, wird dies durch ein kleines Verbotsschild symbolisiert. Das Werkzeug zur Erstellung von Startzuständen wird es Ihnen zum Beispiel nicht erlauben, in einem Compartment mehrere Startzustände zu erzeugen. Das Transitionswerkzeug wird Ihnen auch die Erzeugung von Transitionen verweigern, die nach den Regeln der Statechart-Syntax nicht erlaubt sind (Abb. 4.13).

Figure 4.13: Erstellung einer syntaktisch falschen Transition wird verweigert
 
create_invalid_transition.png


i3D. Hannwacker - A. Gebel - M. Dürksen