Deklarationen ausblenden?

Die Möglichkeiten zur Datenbeschreibung in Structorizer wurden in den letzten Jahren erheblich erweitert (z. B. Verbunddtyp-Definitionen, Konstantendefinitionen, reine Variablendeklarationen und ggf. sogar Methodendeklarationen). Einerseits war das hilfreich, um aussagekräftigere Algorithmen zu modellieren und insbesondere Quellcode-Importe mit möglichst wenig Informationsverlust zu ermöglichen.
Andererseits kann all diese beschreibende Macht, untergebracht in Instruction-Elementen, schnell dazu führen, dass sie große lineare Teile eines Diagramms einnimmt und so die Aufmerksamkeit von der eigentlichen Algorithmusstruktur ablenkt:

Um zu den Wurzeln zurückzukehren – d. h. zum ursprünglichen Zweck eines Nassi-Shneiderman-Diagramms – könnte man natürlich alle deklarativen Teile löschen, würde dabei aber die Möglichkeiten des Debuggings (Ausführung) und eines sinnvollen Code-Exports verlieren oder zumindest einschränken.
Version 3.27-04 brachte Abhilfe: Die Anzeigeeinstellung "Hide mere declarations?" (Reine Deklarationen ausblenden?) wurde eingeführt, mit der sich der Großteil der deklarativen Elemente ausblenden lässt, ohne sie zu entfernen. Den entsprechenden Kontrollkästchen-Menüpunkt finden Sie im Menü "View" (vor Version 3.32-13 im Menü "Diagram"):

Ähnlich wie beim Einklappen komplexer Elemente wird eine gesamte Sequenz rein beschreibender Elemente (Typdefinitionen und Variablendeklarationen ohne Initialisierung) dann nur noch durch ein Ersatzelement (Platzhalter) repräsentiert, das genau wie ein eingeklapptes Instruction-Element aussieht, aber ein spezifisches Symbol trägt: das Symbol des Modus "Hide mere declarations?" (identisch mit dem im Menüpunkt). Structorizer erkennt automatisch die maximale Ausdehnung von Deklarationssequenzen. Im Gegensatz zum Einklappen ist dies jedoch keine elementindividuelle Änderung, sondern eine globale Anzeigeeinstellung (wie Kommentaranzeigemodi), die also alle deklarativen Teile in allen Diagrammen gleichzeitig betrifft. Das Aktivieren oder Deaktivieren dieses Modus hat keinerlei Auswirkung auf die Diagramme selbst.
Konstantendefinitionen und Variableninitialisierungen (d. h. Zuweisungen) gelten jedoch nicht als rein beschreibende Elemente, da sie beim Erreichen während der Ausführung tatsächliche Verarbeitungsschritte auslösen. Daher endet (wird unterbrochen) jede Deklarationssequenz an jeder Konstantendefinition oder Variableninitialisierung (wie auch an regulären algorithmuseigenen Strukturen).

Hinweis: Beim Bearbeiten eines Diagramms ist zu beachten, dass die Ersatzelemente für Deklarationssequenzen diese als Ganzes repräsentieren: Wenn Sie ein Ersatzelement löschen oder verschieben, betrifft dies stets die gesamte dahinter verborgene Sequenz! Wenn Sie im Modus "Hide mere declarations?" ein neues Deklarationselement direkt nach oder vor einem solchen Ersatzelement einfügen, sollten Sie nicht erwarten, es sofort zu sehen, da es ebenfalls sofort ausgeblendet wird. Wenn Sie es jedoch vor dem bisherigen Ersatzelement eingefügt haben, nimmt es dessen Stelle ein, d. h. seine erste Zeile erscheint nun als sichtbarer Inhalt des Ersatzelements.