Hauptfenster
Das Hauptfenster weist im großen Ganzen zwei Menüleisten und eine Liste auf. Die Funktionen werden im Folgenden Abschnitt näher erläutert.
Menüleisten
Die Hauptoberfläche weist eine obere Menüleiste mit fünf Buttons und eine weitere mit zwei Texten auf, die allerdings am unteren Rand des Fensters zu sehen ist.
Die wichtigere der beide Leisten ist die obere, da durch diese Menüleiste sämtliche Bedienungen des Programms ermöglicht werden.
Das Textfeld, welches mit der Nummer 6 gekennzeichnet ist, wird erst gefüllt, wenn mithilfe des 1. Buttons eine Datei geladen worden ist. Dieses Textfeld zeigt den Pfad zu dieser Datei an.
Nummer 7 kennzeichnet ein Textfeld, welches auch erst gefüllt wird, wenn eine Datei geladen wird. Dieses Textfeld weist auf den Zeitpunkt des letzten Speicherns der zurzeit geladenen Json-Datei hin. Dieses Feld wird durch das Speichern, das Öffnen des aktuellen Json-Files oder durch das Laden einer neuen appsettings.json geupdatet.
TreeList
Die Hauptsteuerung des Programms befindet sich allerdings in der Mitte der Hauptoberfläche: die TreeList. Diese listet nach dem Laden einer Json-Datei den hierarchischen Aufbau der Objekte innerhalb der Datei auf.
Für die Visualisierung und Editierung der Daten werden vier Spalten benötigt.
Die Spalte Nummer 1, auch Key, stellt die Schlüsselwörter der Objekte dar, die das appsettings.json beinhält.
Nicht jedes Objekt weist allerdings einen eindeutig, lesbare Wert auf. Deshalb existieren zwei Spalten für die eindeutige Identifizierung der Werte dieser Objekte: die Spalten Value (2) und Datatype (3). Einige Zellen beider Spalten können leer sein, da aufgrund der hierarchischen Objektdarstellung in der ersten Spalte nicht jedes Objekt die in Spalte 2 und 3 unterstützten Value-Datentypen aufweisen. Dies wird im späteren Verlauf näher erläutert.
Um die Werte in den Spalten 2 und 3 anzupassen, weisen jene Zellen in der Spalte Edit einen Button auf, der einen Editor öffnet. Auf der Seite Editor kann mehr über diesen gelesen werden.
Im Folgenden wird auf die Interpretation dieser Ansicht eingegangen.
Nach dem erfolgreichen Laden einer appsettings.json füllt sich die TreeList. Dies kann wie im folgenden Beispiel aussehen:
Die Hierarchie der Schlüsselwörter (auch Keys) ist ähnlich zu interpretieren wie die einer Ordnerstruktur. Untergeordnete Objekte werden dem Übergeordneten entsprechend weiter rechts eingerückt.
Jede Zelle der Spalte Key weist neben dem Schlüsselwort des Weiteren ein bestimmtes Icon. Dieses Icon passt sich dem Datentyp der Zeile, der in der dritten Spalte einzusehen ist, an, wobei es drei Icons gibt, die anderes bestimmt werden.
Folgende Liste an Icons existieren:
- Objekt - Zeigt an, dass dieses Objekt weitere untergeordnete Objekte besitzt. Kann nicht editiert werden. Spalten 2 bis 4 sind leer.
- Integer - Zeigt an, dass diese Zeile eine ganze Zahl kleiner 2.147.483.648 als Value und als Datatype Integer aufweist. Die Werte dieser Zeile können mithilfe des Editors editiert werden.
- Array - Zeigt an, dass eine Liste an Elementen vorliegt. Die Anzahl an Elementen ist gekennzeichnet durch Zahlen, welche einen Punkt als Suffix aufweist. Diese Zeile kann nicht editiert werden. Spalten 2 bis 4 sind leer.
- String - Zeigt an, dass diese Zeile eine Zeichenkette als Value und als Datatype String aufweist. Die Werte dieser Zeile können mithilfe des Editors editiert werden.
- Float - Zeigt an, dass diese Zeile eine Dezimalzahl als Value und als Datatype Float aufweist. Die Werte dieser Zeile können mithilfe des Editors editiert werden.
- Boolean - Zeigt an, dass diese Zeile die Werte true/false (wahr/falsch) als Value und als Datatype Boolean aufweist. Die Werte dieser Zeile können mithilfe des Editors editiert werden.
- DateTime - Zeigt an, dass diese Zeile ein Datum mit Uhrzeit und als Datatype DateTime aufweist. Die Werte dieser Zeile können mithilfe des Editors editiert werden.
Zusätzlich existiert noch ein achtes Icon, welches ein Zahnrad darstellt und die aktuell ausgewählte Zeile angibt.
Zum Schluss gibt es noch den Button zu erklären, der mit der 8 gekennzeichnet ist. Dieser Button taucht nur in jenen Zeilen auf, deren Werte geändert werden können. Das sind Zeilen, die Werte in den Spalten Value und Datatype stehen haben. Mit diesem Button lässt sich eine kleine Oberfläche öffnen, die es ermöglicht Werte anzupassen. Mehr dazu kann auf der Seite Editor gelesen werden.