Inhaltsverzeichnis

Das Hauptfenster

Das Hauptfenster wird wie bisher von der eigentlichen Spektrendarstellung (axis) dominiert, die von den zentral wichtigen Bedienelementen (Schieberegler etc.) umgeben ist. Ein weiterer bedeutsamer Bereich sind die Panels am rechten Rand des Hauptfensters, von denen immer nur eines zur gleichen Zeit angezeigt werden kann und zwischen denen mittels der Schaltflächen rechts oben (Abb. 2) umgeschaltet wird.

Die projektierte Liste von neun „Funktionsschaltflächen“ unterhalb der Hauptachsen (Abb. 3) dient dem Schnellzugriff auf diverse häufig benötigte Funktionen.

Abbildung 1: Hauptfenster der trEPR-GUI. Das Hauptfenster ist so angelegt, daß es auch auf kleinen Bildschirmen (1024×768 oder, wahrscheinlicher, 1280×800) angezeigt werden kann. Außerdem wurden im Dienste der Übersichtlichkeit die einzelnen Funktionen in Panels (rechts in der GUI) gruppiert, von denen jeweils nur eines zur Zeit angezeigt werden kann. Das Umschalten zwischen den einzelnen Panels erfolgt über die Schaltflächen oberhalb, da es in Matlab nach wie vor keine vernünftige und eingebaute Funktion für „tabbed panes“ gibt. Details zu den einzelnen Panels liefern die folgenden Abschnitte.
Abbildung 2: Umschalter zwischen den einzelnen Panels auf der rechten Seite. Die Funktionen des Hauptfensters der GUI sind in einzelnen Panels angeordnet, auf die durch einen Klick auf die jeweils zugehörige Schaltfläche (bzw. über die Tastaturkürzel Ctrl-1…9) zugegriffen werden kann. Eine Übersicht über die einzelnen Panels liefert Abb. 6.
Abbildung 3: Funktionstasten für Funktionen der GUI, die ein eigenes Fenster öffnen. Eine Reihe von (komplexeren) Funktionen bedient sich jeweils eines eigenen Fensters. Diese komplexeren Funktionen können komfortabel über die Leiste von Schaltflächen unterhalb der Achsen (oder über die Tasten F1…F9) erreicht werden.
Abbildung 4: Kontrollelemente für den Anzeigemodus und das Umschalten zwischen Spektren. Die Praxis hat gezeigt, daß die Kontrollelemente für die Anzeigemodi und das Wechseln/Durchblättern der sichtbaren Spektren immer zugänglich sein sollten. Deshalb finden sich diese Elemente nunmehr unterhalb der Panels wieder.
Abbildung 5: Zusätzliche Bedienelemente der GUI, die immer sichtbar sind. Eine Reihe zusätzlicher Bedienelemente sind ebenfalls immer sichtbar. Weitestgehend handelt es sich dabei um Bedienelemente, die die Anzeige beeinflussen. Hinzu kommt der Hilfeknopf (blaues Fragezeichen rechts unten), der kontextsensitiv je nach gerade aktivem Panel Hilfe in einem zusätzlichen Fenster anbietet.

Die Panels: Eine erste Übersicht

Beim Start der GUI wird momentan ein Willkommenstext mit einer kurzen Einführung angezeigt. Sobald man einen der Knöpfe oberhalb der Panels drückt, verschwindet dieser Text zugunsten des gewählten Panels.

Nachfolgend erst einmal eine graphische Übersicht über die bislang mit Inhalt gefüllten Panels. Jedes dieser Panels wird dann in einem separaten Abschnitt noch näher beschrieben. Grundsätzlich gilt: Jedes dieser Panels wird in einer separaten Matlab-Funktion definiert, inklusive aller Callbacks etc.





Abbildung 6: Ansichten der diversen Funktions-Panels rechts im Hauptfenster der trEPR-GUI. Jedes Panel versucht, so übersichtlich wie möglich zusammengehörige Funktionen darzustellen und zu gruppieren. Gleichzeitig mit der Übersichtlichkeit wurde/wird versucht, ein Mindestmaß an „Dokumentation“ schon bei der Beschriftung und Anordnung der Elemente einfließen zu lassen. Jüngste Erfahrungen mit grob unintuitiven GUIs lassen das geboten erscheinen.

Load Data Panel

Das „Load Data Panel“ faßt alle Funktionen zum Laden von Datensätzen zusammen.

Wichtig: Das Laden der Datensätze sollte sehr robust funktionieren und den Nutzer in Kenntnis darüber setzen, ob das Laden erfolgreich war. Das geschieht über entsprechende Statusmeldungen auf der Statuskonsole.

Darüber hinaus erscheint beim Laden der Daten ein Dialogfenster, das zunächst anzeigt, daß Daten geladen werden, und den Nutzer dann ebenfalls über Erfolg oder Mißerfolg unterrichtet:


Abbildung 7: Dialogfenster bezüglich des Ladevorgangs von Daten. Zunächst erscheint nur der Hinweis, daß Daten geladen werden. Ist dieser Vorgang abgeschlossen, erscheint dann statt der Bitte zu warten die entsprechende (Miß-)Erfolgsmeldung und eine Schaltfläche zum Schließen des Dialogs.

Dataset Display Panel

Im „Dataset Display Panel“ finden sich grundlegende Funktionen für die Anzeige einzelner Datensätze.

Label ändern

Was viele EPR-Anwender von Brukers Xepr kennen, gibt es jetzt auch in der GUI der trEPR-Toolbox: Zu jedem Datensatz kann ein Label angegeben werden, das es dem Nutzer ermöglicht, schnell und einfach zwischen verschiedenen Datensätzen zu unterscheiden.

Wird ein Datensatz neu aus einer Datei geladen, deren Format kein Label gespeichert hat, wird als Standard der Dateiname als Label vergeben. Durch einen Doppelklick auf ein Label in einer Datensatzliste öffnet sich ein Fenster (Abb. 8), das den Nutzer das Label ändern läßt.

Abbildung 8: Fenster zum Ändern eines Labels eines Datensatzes. Klickt der Nutzer doppelt auf ein Label eines Datensatzes, öffnet sich dieses Fenster. Das Label ist ein vom Nutzer frei vergebbarer Text. Beim Laden neuer Datensätze, die nicht im „Toolboxformat“ vorlegen, wird als Standard der Dateiname als Label vergeben.

Grundsätzlich ist der Nutzer in der Nutzung von Zeichen bei der Vergabe von Labels frei. Da per Konvention allerdings modifizierte und noch nicht gespeicherte Datensätze mit einem „*“ vor dem Label angezeigt werden, ist es zumindest ungeschickt (wenn auch nicht verboten), ein Label ebenfalls mit einem „*“ beginnen zu lassen.

Slider Values Panel

Das „Slider Values Panel“ liefert sowohl eine Liste der aktuellen Schiebereglerwerte als auch die Möglichkeit, diese Werte „per Hand“ zu verändern. Die Edit-Felder sind farblich den Schiebereglern zugeordnet.

Angegeben werden alle Werte jeweils in „index“ (Index im Datensatz in der jeweiligen Dimension, entspricht der Achse in der Darstellung) und in „unit“, der gegenwärtigen Einheit der betreffenden Dimension des Datensatzes. Sollte letztere nicht vorhanden sein, ist sie ggf. mit „index“ identisch.

Zum Zurücksetzen der Schiebereglerwerte („Scaling“ und „Displacement“) gibt es die Schaltfläche „Reset“ unterhalb der vertikalen Schieberegler.

Zur Verwendung dieser Werte innerhalb der GUI: Alle Werte für die Position, aber ebenfalls für Skalierung und Verschiebung, werden für jeden Datensatz getrennt innerhalb der GUI abgelegt und bei der Darstellung der Datensätze entsprechend berücksichtigt.

Skalierung und Verschiebung erfolgt jeweils „on the fly“ bei der Darstellung der Daten, von diesen Werten werden die eigentlichen Daten nicht berührt. Wird der Datensatz im Toolboxformat gespeichert, werden die Werte natürlich entsprechend mitgespeichert, allerdings auch hier erst einmal nicht in den eigentlichen Daten.

FIXME Hier muß noch eine sinnvolle und vom Nutzer kontrollierbare Lösung gefunden werden. Spätestens beim Export einzelner Schnitte als ASCII-Daten und bei der Akkumulation mehrerer Datensätze ist es notwendig, zumindest die Verschiebung mitzuberücksichtigen.

Measurement Panel

Das „Measurement panel“ dient der Messung einzelner Punkte (und gleichzeitig auf Wunsch der Festlegung der Darstellungsposition der 1D-Ansichten in x und y auf diesen Punkt) und der Messung der Distanz zwischen zwei Punkten.

Der jeweilige Modus (ein Punkt oder zwei Punkte) wird durch Klicken auf die zugehörige Schaltfläche unten im „Measurement panel“ ausgewählt. Es kann auch direkt zwischen den Modi gewechselt werden.

Bewegt man die Maus im Meßmodus in den Bereich der Achsen, verändert sich der Zeiger entsprechend.

Die Positionsanzeigen werden während des Meßvorganges kontinuierlich aktualisiert.

Angegeben werden alle Werte jeweils in „index“ (Index im Datensatz in der jeweiligen Dimension, entspricht der Achse in der Darstellung) und in „unit“, der gegenwärtigen Einheit der betreffenden Dimension des Datensatzes. Sollte letztere nicht vorhanden sein, ist sie ggf. mit „index“ identisch.

Display Settings Panel

Das „Display Settings Panel“ ist mit Abstand das komplexeste Panel der Haupt-GUI. Wegen der Vielzahl der geforderten Einstellungsmöglichkeiten, die alle unter „Anzeigeeinstellungen“ subsummiert werden können, ist es seinerseits in (aktuell sechs) „Seiten“ unterteilt, zwischen denen analog zu den Hauptpanels durch entsprechende Schaltflächen umgeschaltet werden kann.

Seite 1: generelle Achseneinstellungen

Die erste Seite des „Display Settings Panels“ ist generellen Einstellungen der Achsen gewidmet.

Seite 2: Gitter, Legende, Normalisierung, ...

Die zweite Seite des „Display Settings Panels“ gibt dem Nutzer Kontrollelemente an die Hand, mit denen er das Gitter, die Legende, die Amplitudennormalisierung sowie die Herhorhebung des gegenwärtig aktiven Datensatzes einstellen kann.

Seite 3: Linieneinstellungen

Auf der dritten Seite des „Display Settings Panels“ sind all die Einstellungen zum Linienstil des jeweils aktiven Datensatzes vereint, die Matlab dem Nutzer bereitstellt.

Seite 4: Grafikexport, Export von 1D-Datensätzen

Die vierte Seite des „Display Settings Panels“ beherbergt Funktionen für das Speichern sowohl der aktuellen Anzeige als Grafikdatei (in diversen Formaten) als auch die Speicherung des gerade aktiven 1D-Datensatzes in einer Datei, was insbesondere für die Weiterverarbeitung in externen Programmen von großem Interesse sein kann.

Seite 5: 3D-Darstellung

Seite 6: g-Achse

Data Processing Panel

Eine Liste grundlegender Datenverarbeitungsfunktionen findet sich im „Data Processing Panel“. Der Einfachheit halber gibt es zu Beginn noch einmal eine Liste der geladenen Datensätze, damit man schnell umschalten kann.

Analysis Panel

Auf dem „Analysis Panel“ werden einmal zahlreiche Funktionen zur Analyse von Datensätzen zusammengefaßt werden. Da allerdings zu einem großen Teil die dazu notwendigen Funktionen momentan noch nicht existieren, ist das Panel aktuell leer.

Noch werden Wünsche und Vorstellungen zu seinem Inhalt entgegengenommen.

Help Panel

Abbildung 9: „Help about“-Dialog. Dieser Dialog kann auf drei Arten erreicht werden: Über Auswählen der Schaltfläche „About“ in der Leiste der Funktionsschaltflächen unterhalb der Achsen, über die gleichnamige Schaltfläche im „Help Panel“ oder durch Drücken der Taste „F1“.
1)
Frage: Wie baut man das hier so modular, daß man entsprechend neue Dateitypen einfach einbauen kann, ohne die GUI ändern zu müssen? Konfigurationsdatei?!
2)
Die Mac-OS-X-Version von Matlab hat damit bei der x-Achse mitunter Schwierigkeiten, trotzdem ist es aber grundsätzlich so und erscheint beim Export der Grafik als PDF/EPS/… auch entsprechend.
3)
Die Dimensionen des Datensatzes sind fest vorgegeben, mit „x“ als Zeit, „y“ als Magnetfeldachse und „z“ als Intensität.
4)
Evtl. kann man das später noch dergestalt erweitern, daß die Einträge der listbox direkt aus dem Verzeichnislisting eines entsprechenden Verzeichnisses der Toolbox generiert werden.