-
Die
Erfindung betrifft eine Vorrichtung mit einer Graphikanzeige, die
eine graphische Benutzerschnittstelle zur Verfügung stellt, und mit einer
Recheneinheit, die eine Bibliothek von Benutzerschnittstellenkomponenten
für die
Interaktion zwischen einer auf der Recheneinheit laufenden Anwendung und
der graphischen Benutzerschnittstelle enthält.
-
Die
Erfindung betrifft ferner ein Verfahren, um auf einer Graphikanzeige
eine graphische Benutzerschnittstelle mit wenigstens einer Benutzerschnittstellenkomponente
zur Anzeige zu bringen.
-
Benutzerschnittstellen
sind typischerweise fest programmierte Bestandteile einer Anwendung, die
häufig
eine spezifische Gestaltung aufweisen, die die Benutzerschnittstelle
einer Anwendung von der Benutzerschnittstelle des unterliegenden
Betriebssystems unterscheidet. Die Benutzerschnittstellen umfassen
im Allgemeinen eine Vielzahl von Benutzerschnittstellenkomponenten.
Diese Schnittstellenkomponenten können Bedienelemente wie Schaltflächen und
Eingabebereiche sein. Das Verhalten der Benutzerschnittstellenkomponenten
in der anwendungsspezifischen Benutzerschnittstelle kann sich von
dem Verhalten und Aussehen vergleichbarer Bedienelemente des Betriebssystems
unterscheiden.
-
Das
Aussehen einer Benutzerschnittstelle lässt sich heute mit Hilfe von
an zentraler Stelle im Betriebssystem eingefügter Zeichenunterprogrammen
global verändern.
Alle Zeichenaktionen werden an einer globalen Stelle im System abgefangen
und auf verschiedene Zeichenunterprogramme umgeleitet. Da dies an
einer zentralen Stelle im Betriebssystem geschieht, besteht die
Gefahr zum einen der Instabilität
und zum anderen der Performanceeinbuße, da nun alle Zeichenaktionen
von den zentralen Zeichenunterprogrammen ausgeführt werden. Außerdem können sich
Verträglichkeitsprobleme
ergeben, wenn die zentralen Zeichenunterprogramme von verschiedenen
Anbietern für
unterschiedliche Zwecke verwendet werden.
-
Darüber hinaus
bieten aktuelle Betriebssysteme die Möglichkeit, zwischen verschiedenen
Darstellungsarten umzuschalten. Diese verschiedenen Darstellungsarten
werden beispielsweise beim Betriebssystem Windows XP als Themes
oder Visual Styles bezeichnet. Diese Darstellungsarten unterscheiden
sich hinsichtlich der Darstellung bestimmter Merkmale eines Fenstersystems.
Beispielsweise können
die Ecken eines Fensters runde oder spitze Ecken haben und die Rahmen
des Fensters unterschiedlich eingefärbt sein. Um die angebotenen
Möglichkeiten
der verschiedenen Darstellungsarten in einer Anwendung nutzen zu
können,
müssen
bei der Entwicklung der Anwendung spezielle Programmierschnittstellen
verwendet werden. Ein Nachteil ergibt sich aus der Verfügbarkeit
der Spezifikation der verschiedenen Darstellungsarten. Da diese
nicht offen zugänglich
sind, können
die Schnittstellen nicht ohne Risiko benutzt werden, um eine eigene,
neue, vom Lieferumfang des Betriebssystems abweichende Darstellung
einer Benutzerschnittstelle zu erzeugen. Ein weiterer Nachteil ergibt
sich aus der Tatsache, dass sich eine derartige Darstellungsart
nur global setzen lässt.
Folglich können
für unterschiedliche
an einer Recheneinheit angeschlossene und von einem Betriebssystem
verwaltete Monitore nicht unterschiedliche Darstellungsarten verwendet
werden. Bei medizinischen Vorrichtungen, die häufig sowohl Farb- als auch
Grauwertbildschirme umfassen, sind die vom Betriebssystem angebotenen
verschiedenen Darstellungsarten in der Regel aber nicht dazu geeignet,
um sowohl die Farb- als auch die Grauwertbildschirme an einer Recheneinheit
in einer einheitlichen Darstellungsart zu betreiben.
-
Da
die Änderungen
der Darstellungsarten ferner global wirken, ist es nicht möglich, einzelne Anwendungen
durch eine Änderung
der globalen Darstellungsart ein individuelles Aussehen zu geben.
-
Ferner
wird bei der Neuerung einer Anwendung, zum Beispiel bei Wechsel
der Plattform, häufig auch
ein Wechsel oder zumindest Modernisierung des Aussehens der Benutzerschnittstelle
gewünscht. Eine
derartige Modernisierung braucht nicht technisch bedingt zu sein,
sondern kann auch dazu dienen, beim Kunden der Eintönigkeit
vorzubeugen. Typischerweise wird eine derartige Modernisierung wegen
der damit verbundenen Kosten nicht bei allen Teilen einer bestehenden
Anwendung durchgeführt, sondern
die neu zu entwickelnden Teile der Anwendung werden entsprechend
der neuen Darstellungsart entwickelt.
-
Daneben
ist es wünschenswert
bei der Implementierung von einzelnen Benutzerschnittstellenkomponenten
von Zulieferern unabhängig
zu sein. Gerade bei der Nutzung von zugekauften Lösungen für einzelne
Benutzerschnittstellenkomponenten schafft es Sicherheit, nicht auf
einen Anbieter angewiesen zu sein.
-
Ausgehend
von diesem Stand der Technik liegt der Erfindung daher die Aufgabe
zugrunde eine Vorrichtung und ein Verfahren für eine flexibel gestaltbare
Benutzerschnittstelle zu schaffen.
-
Diese
Aufgabe wird durch eine Vorrichtung und ein Verfahren mit den Merkmalen
der unabhängigen
Ansprüche
gelöst.
In davon abhängigen
Ansprüchen
sind vorteilhafte Ausgestaltungen und Weiterbildungen angegeben.
-
Bei
der Vorrichtung und dem Verfahren wird von einer auf der Recheneinheit
laufenden Anwendung jeweils eine individuelle Bibliothek von individuellen
Benutzerschnittstellen verwendet, die von einer generisch umhüllten universellen
Bibliothek universeller Benutzerschnittstellenkomponenten abgeleitet ist.
-
Da
die Anwendung bei Interaktion mit der graphischen Benutzerschnittstelle
auf die individuelle Bibliothek zurück greift, braucht die Anwendung
nicht modifiziert zu werden, wenn in der universellen Bibliothek
von einem Zulieferer zur Verfügung
gestellte Komponenten ausgetauscht werden. Ferner können in
der generischen Umhüllung
der universellen Bibliothek Funktionalitäten angelegt werden, die es
gestatten, die individuellen Benutzerschnittstellenkomponenten an
die Möglichkeiten
der Farbdarstellung der jeweils verwendeten Graphikanzeige anzupassen.
So ist es insbesondere möglich,
die Funktionalitäten
universeller Benutzerschnittstellenkomponenten auf Graphikanzeigen
mit unterschiedlichen Möglichkeiten
der Farbdarstellung zu verwenden.
-
Bei
einer bevorzugten Ausführungsform
umfasst die individuelle Bibliothek Klassen für individuelle Benutzerschnittstellenkomponenten,
die von einer generischen Klasse abgeleitet sind. Dies bietet den Vorteil,
dass gemeinsame Funktionalitäten
der individuellen Benutzerschnittstellenkomponenten in der generischen
Klasse implementiert werden können.
-
Bei
einer weiteren bevorzugten Ausführungsform
sind die Funktionalitäten
der Klassen für die
universellen Benutzerschnittstellenkomponenten in der generischen
Klasse gekapselt. Dadurch können
die Funktionalitäten
der universellen Benutzerschnittstellenkomponenten gegenüber der
Anwendung verborgen werden.
-
Um
aber den individuellen Benutzerschnittstellenkomponenten die Funktionalitäten der
universellen Benutzerschnittstellenkomponenten zur Verfügung zu
stellen sind in den Klassen für
die individuellen Benutzerschnittstellenkomponenten Methoden zur
Ereignisbehandlung implementiert, die die Ereignisbehandlung durch
die generische Schicht hindurch an Methoden der universellen Klassen
delegieren.
-
Um
ferner die individuellen Benutzerschnittstellenkomponenten entsprechend
verschiedener Darstellungsarten individualisieren zu können, sind
in der generischen Klasse Basismethoden für die Modifikation der Darstellung
der individuellen Benutzerschnittstellenkomponenten implementiert.
-
Vorzugsweise
gestattet die generische Klasse über
darin implementierte Methoden die universellen Benutzerschnittstellenkomponenten
an die Möglichkeiten
der Farbdarstellung verschiedener Anzeigeeinheiten der Graphikanzeige
anzupassen, so dass medizinische Anwendungen sowohl auf Farb- als
auch auf Grauwertbildschirmen ein ansprechendes Aussehen erhalten.
-
Weitere
Vorteile und Eigenschaften der Erfindung gehen aus der nachfolgenden
Beschreibung hervor, in der Ausführungsbeispiele
der Erfindung anhand der beigefügten
Zeichnung im Einzelnen erläutert
werden. Es zeigen:
-
1 eine
schematische Darstellung einer medizinischen Vorrichtung mit mehreren
Monitoren;
-
2 eine
Darstellung der Architektur der Graphikanzeige der Vorrichtung aus 1;
und
-
3 ein
Klassendiagramm der graphischen Anzeige.
-
1 zeigt
eine medizinische Vorrichtung 1 mit zwei Monitoren 2 und 3,
die jeweils an eine Recheneinheit 4 angeschlossen sind.
Die Recheneinheit 4 ist einerseits mit Eingabegeräten, wie
beispielsweise einer Tastatur 5 verbunden. Ferner steht die
Recheneinheit 4 in Verbindung mit einem medizinischen Gerät 6.
Bei dem medizinischen Gerät 6 kann
es sich einerseits um eine bilderzeugende Komponente handeln, wie
beispielsweise einen Detektor einer Röntgenanlage oder einen Ultraschallmesskopf eines
Ultraschallgeräts
sowie weitere Vorrichtungen, die der medizinischen Bilderzeugung
dienen. Bei dem medizinischen Gerät 6 kann es sich aber
auch um eine Einrichtung handeln, die der Behandlung eines Patienten
dient. Ein Beispiel für
eine derartige Einrichtung sind Strahlentherapiegeräte oder
medizinische Geräte,
die der medizinischen Versorgung eines Patienten während einer
Operati on dienen. Ferner kann es sich bei dem medizinischen Gerät 6 auch um
einen Datenspeicher 7 handeln, in dem Bilddateien vom Körper eines
Patienten abgelegt sind.
-
Die
Recheneinheit 4 kann auch an eine Vielzahl von derartigen
medizinischen Geräte 6 angeschlossen
sein.
-
Eine
Besonderheit der medizinischen Vorrichtungen 1 ist, dass
häufig
Monitore mit unterschiedlichen Möglichkeiten
der Farbdarstellung eingesetzt werden. Beispielsweise kann es sich
bei dem Monitor 2 um einen Farbmonitor und bei dem Monitor 3 um
einen Monitor mit Grauwertdarstellung handeln. Für die Benutzerfreundlichkeit
der auf den Monitoren 2 und 3 dargestellten graphischen
Benutzerschnittstelle ist es von Vorteil, wenn die jeweiligen Benutzerschnittstellen
an die Möglichkeiten
der Farbdarstellung des jeweiligen Monitors 2 oder 3 angepasst
sind.
-
Ferner
ist es von Vorteil, wenn die auf den Monitoren 2 und 3 abgebildete
graphische Benutzerschnittstelle bei Bedarf auf einfache Weise modifiziert werden
können.
-
Zu
diesem Zweck ist die in 2 dargestellte Architektur vorgesehen.
Eine auf der Recheneinheit 4 laufende Anwendung 8 greift
zur Darstellung einer graphischen Benutzerschnittstelle auf eine
individuelle Bibliothek 9 in einer individuellen Schicht 10 zu. Die
individuelle Bibliothek 9 umfasst eine Vielzahl von individuellen
Benutzerschnittstellenkomponenten, zum Beispiel Bedienelemente wie
eine individuelle Schaltfläche 11,
ein individuelles Textfeld 12, ein individuelles Listenfeld 13 oder
einen individuellen Schieberegler 14. In einer darunterliegenden
generischen Schicht 15 findet eine generische Umhüllung 16 einer
universellen Bibliothek 17 statt, die in einer universellen
Schicht 18 liegt. Die universelle Bibliothek 17 umfasst
universelle Schnittstellenkomponenten, wie beispielsweise eine universelle
Schaltfläche 19,
ein universelles Textfeld 20 sowie ein universelles Listenfeld 21 und
einen universellen Schieberegler 22.
-
Die
universelle Bibliothek 17 stellt die Funktionalitäten der
universellen Benutzerschnittstellenkomponenten und die basalen Zeichenmethoden
zur Verfügung.
Die generische Umhüllung 16 kapselt
die universellen Benutzerschnittstellenkomponenten und vermittelt
deren Funktionalitäten
an die individuellen Benutzerschnittstellenkomponenten weiter. Folglich
müssen
die Funktionalitäten
der individuellen Bibliothek 9 nicht vollständig neu
entwickelt werden. Vielmehr können
sich die individuellen Benutzerschnittstellenkomponenten in der
individuellen Bibliothek 9 der bereits implementierten
Funktionalität der
universellen Benutzerschnittstellenkomponenten aus der universellen
Bibliothek 17 bedienen.
-
Die
medizinische Anwendung 8 greift schließlich ausschließlich auf
die individuelle Bibliothek 9 in der individuellen Schicht 10 zu.
In der individuellen Schicht 10 befindet sich die Darstellungslogik für das individuelle
Aussehen der Benutzeroberfläche.
Ferner wird durch die individuelle Schicht die eigentlich in der
universellen Bibliothek 17 vorgesehene Programmierschnittstelle
für die
Anwendung 8 durch eine eigene für die medizinische Anwendung 8 gleich
bleibende Schnittstelle verborgen.
-
Die
programmtechnische Umsetzung der Architektur sei anhand 3 erläutert. In 3 ist
eine generische Klasse 23 von den individuellen Klassen 24 von
individuellen Bedienelementen durch Vererbung 25 abgeleitet
worden. In der generischen Klasse 23 sind vorzugsweise
diejenigen Funktionalitäten implementiert,
die sämtliche
individuellen Klassen 24 gemeinsam sind. Ferner vermittelt
die generische Klasse 23 mittels Komposition 26 die
Funktionalitäten
von universellen Klassen 27 für universelle Bedienelemente.
Ferner vermittelt die generische Klasse 23 mittels Komposition 28 Anzeigeeinstellungen 29.
Zwischen den Anzeigeeinstellungen 29 und einer Monitoreinstellung 30 besteht
eine Abhängigkeit 31.
-
Die
hier beschriebene Lösung
weist eine Reihe von Vorteilen auf.
-
Durch
die hier beschriebene Lösung
ist es insbesondere möglich,
mit verhältnismäßig geringem Aufwand
eine individuelle Bibliothek 9 von individuellen Bedienelementen
mit individueller Darstellungslogik zu schaffen, da die grundlegenden
Funktionalitäten
einer universellen Bibliothek 17 genutzt werden. Die universelle
Bibliothek 17 kann teilweise oder vollständig aus
Bibliotheken von Zulieferern zusammengesetzt werden.
-
Da
der Anteil an eigener Programmierung verhältnismäßig gering ist, ist es möglich, mit
geringem Entwicklungsaufwand die Darstellung und das Verhalten einzelner
Bedienelemente der Benutzerschnittstelle einer bestehenden medizinischen
Anwendung 8 zu ändern
oder neuen visuellen Anforderungen anzupassen. Einzig die Darstellungslogik
innerhalb der individuellen Schicht 10 muss dafür angepasst
werden. Die Anwendung 8 dagegen muss nicht modifiziert
werden. Auch der Aufwand zum Testen der Modifikation sind gering,
da die Änderungen vollständig anhand
der individuellen Bibliothek 9 validiert werden können, ohne
dass die ganze medizinische Anwendung 8 neu getestet werden
muss.
-
Folglich
ist es bei einer Erneuerung der Benutzeroberfläche einer medizinischen Anwendung 8 möglich, ohne
großen
Aufwand die bereits vorhandenen Teile der Anwendung 8 zusammen
mit dem neu Entwickelten dem Benutzer zum selben Termin anzubieten.
-
Ferner
besteht durch die hier beschriebene Lösung erst die Möglichkeit,
auch umfangreiche Anwendungen 8 neuen Strömungen hinsichtlich
der Gestaltung von Benutzeroberflächen ohne große Kosten
anzupassen. Auch ein gelegentliches, bewusstes Auffrischen einer
bereits länger
existierenden Benutzeroberfläche
kann durchgeführt
werden. Schließlich ermöglicht es
die hier beschriebene Lösung
auch, neue Darstellungskonzepte ohne großen Aufwand an echten Anwendungen
zu überprüfen.
-
Durch
die Programmierung der Darstellungslogik lokal in der generischen
Schicht 15 oder in der individuellen Schicht 10 besteht
weder die Gefahr der Instabilität
oder des Performanceverlustes, wie bei einer herkömmlichen
Modifikation der Darstellung über
die zentralen Zeichenunterprogramme. Ferner werden auch Benutzerschnittstellen
unterstützt,
die auf mehrere Monitore 2 oder 3 mit unterschiedlichen Möglichkeiten
der Farbdarstellung verteilt sind, die im medizinischen Umfeld weit
verbreitet sind. Denn die generische Schicht 15 unterstützt eine
konfigurierbare Monitordefinition. Gegenüber der unmittelbaren Verwendung
einer universellen Bibliothek von Bedienelementen besteht schließlich der
Vorteil, dass die Programmierschnittstelle der universellen Bibliothek vollständig gekapselt
ist, wodurch die Basis der individuellen Bibliothek 9 jederzeit
ohne großen
Aufwand und Kosten ausgetauscht werden kann. Dies kann beispielsweise
aus Performance- oder Stabilitätsgründen oder
auch aus ökonomischen
Gründen
erforderlich sein.