DE69327948T2 - Bereich-layout in einer Sicht auf einem grafischen Anzeigeschirm - Google Patents

Bereich-layout in einer Sicht auf einem grafischen Anzeigeschirm

Info

Publication number
DE69327948T2
DE69327948T2 DE69327948T DE69327948T DE69327948T2 DE 69327948 T2 DE69327948 T2 DE 69327948T2 DE 69327948 T DE69327948 T DE 69327948T DE 69327948 T DE69327948 T DE 69327948T DE 69327948 T2 DE69327948 T2 DE 69327948T2
Authority
DE
Germany
Prior art keywords
region
view
area
objects
graphical
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69327948T
Other languages
English (en)
Other versions
DE69327948D1 (de
Inventor
Pit Burkhardt
Roy A Feigel
Jutta Land
Dr Westermann
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of DE69327948D1 publication Critical patent/DE69327948D1/de
Publication of DE69327948T2 publication Critical patent/DE69327948T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Artificial Intelligence (AREA)
  • Processing Or Creating Images (AREA)
  • Road Signs Or Road Markings (AREA)
  • Electrochromic Elements, Electrophoresis, Or Variable Reflection Or Absorption Elements (AREA)
  • Input Circuits Of Receivers And Coupling Of Receivers And Audio Equipment (AREA)
  • Digital Computer Display Output (AREA)

Description

    Bereichs-Layout in einer Ansicht auf einem graphischen Bildschirm Gebiet der Erfindung
  • Die Erfindung betrifft eine graphische Anzeigevorrichtung, umfassend Mittel zum Erzeugen von Ansichten auf einem Bildschirm, wobei die genannten Ansichten eine Vielzahl graphischer Objekte umfassen.
  • Die Erfindung stellt außerdem eine Methode für das Layout graphischer Objekte innerhalb einer Ansicht bereit, die auf der graphischen Anzeigevorrichtung angezeigt wird.
  • Stand der Technik
  • Das Produkt IBM ScreenView ist eine Gruppe von Diensten, die auf einem Betriebssystem installiert werden können, um Anwendungen mit einer einheitlichen Benutzerschnittstelle zu entwickeln und um diese Anwendungen auszuführen. ScreenView besteht im wesentlichen aus zwei Teilen:
  • Runtime Service (RTS), das während der Laufzeit Dienste für Anwendungen bereitstellt.
  • Application Development Services (ADS), das Programmierer bei der Entwicklung verschiedener Benutzer-Schnittstellentypen für diese Anwendungen unterstützt, die dann in allen Anwendungen einheitlich sind.
  • ScreenView, Version 1.1, wird in den folgenden Publikationen beschrieben:
  • ScreenView User's Guide (IBM-Publikation Nummer SC33-6451) ScreenView Application Developer's Guide (IBM-Publikation Nummer SC33-6452)
  • ScreenView Application Developer's Reference (IBM-Publikation Nummer SC33-6453)
  • Die darin enthaltene Information ist durch Bezugnahme in diesem Patent enthalten.
  • Beim Arbeiten mit ScreenView erscheinen alle ScreenView-Anwendungen als eine Reihe von Objekten, mit denen der Endanwender bestimmte Aktionen durchführen kann. Bei der Konfiguration eines Rechnersystems würden beispielsweise Objekte wie Prozessoren, Festplatten und/oder Steuerungseinheiten (sogenannte graphische Objekte) zu sehen sein und zu den durchzuführenden Aktionen würde das Löschen, das Verbinden und/oder Hinzufügen gehören. ScreenView ermöglicht eine gemeinsame Objektnutzung und erleichtert die Interoperabilität unter den einzelnen Anwendungen. Ein Beispiel einer solchen Anwendung wird beschrieben im IBM Technical Disclosure Bulletin, Band 35, Nr. 2, Juli 1992, Seite 58-63, in dem Artikel "Graphical Definition of Configuration Objects".
  • Der Entwurf der Endanwender-Schnittstelle für ScreenView-Anwendungen konzentriert sich auf die Objekte, die der Endanwender ansehen und bearbeiten kann. Die Spezifikation der Endanwender- Schnittstelle wird unter Verwendung einer deklarativen Sprache, genannt Benutzerschnittstellen-Deklaration (UID), programmiert.
  • Eine Ansicht in ScreenView ist eine Darstellung der Objektdetails, zum Beispiel was in dem Objekt enthalten ist, wie es aufgebaut ist und/oder welches seine Eigenschaften sind. Die Ansichten ermöglichen es einem Benutzer, sich die Details eines Objektes anzusehen und das Objekt zu bearbeiten. Bei Verwendung einer graphischen Anzeigevorrichtung könnte eine Ansicht das auf dem Bildschirm angezeigte Bild darstellen und die Objekte würden als Icons auf dem Bildschirm gezeigt. Der Begriff "graphische Objekte" wird oft verwendet, um die auf der graphischen Anzeigevorrichtung angezeigten Objekte zu beschreiben.
  • Nachdem die Objekte definiert sind, muß der Entwerfer der Benutzerschnittstelle die Ansichten auswählen, über die Endanwender am besten auf die Objekte zugreifen können, um ihre Aufgaben zu erfüllen. Der Entwerfer muß feststellen, welche graphischen Objekte der Endanwender gleichzeitig sehen muß, damit er die Beziehungen der Objekte beeinflussen kann. Da die Anzahl der graphischen Objekte zunimmt, steigt die Zahl der Beziehungen zwischen den Objekten dramatisch. Der Entwerfer muß sicherstellen, daß die graphischen Objekte, die zueinander eine enge Beziehung haben, auch nebeneinander auf dem Bildschirm zu sehen sind.
  • Zusätzliche Probleme entstehen, wenn der Anwender die Schnittstelle selbst beeinflussen kann, so daß die Position der graphischen Objekte in der Ansicht verändert wird. Dies kann dazu führen, daß einige graphische Objekte von anderen graphischen Objekten verdeckt werden, da die Auflösung der graphischen Anzeigevorrichtung, auf der die graphischen Objekte angezeigt werden, nicht ausreicht, um beide graphischen Objekte gleichzeitig anzuzeigen.
  • Aus dem Stand der Technik ist ein Artikel mit dem Titel "Dynamic Repositioning of Object Areas an a Page" im IBM Technical Disclosure Bulletin, Band 32, Nr. 10B, März 1990, Seite 77-78, bekannt. In diesem Artikel wird eine wiederverwendbare Shell-Layout-Definition für eine Seite in einem Dokument verwendet, um automatische Veränderungen des Layouts der Seite zu ermöglichen, wenn Informationen in Objektbereichen plaziert werden.
  • Zusammenfassung der Erfindung
  • Die Aufgabe der Erfindung ist die Bereitstellung eines flexiblen Mittels für das Layout graphischer Objekte in einer Ansicht auf einem Bildschirm.
  • Diese Aufgabe wird gelöst durch die Definition von Attributen für den Ansichtbereich und durch Zuordnung dieser Attribute zu dem Bereich der graphischen Objekte; die Attribute zeigen an, in welcher der genannten Bereiche das graphische Objekt sich befindet. Die Struktur der Bereiche wird in Bereichsdefinitionsdateien beschrieben.
  • Es werden Layout-Routinen bereitgestellt, die durch alle graphischen Objekte schleifen, die in einer der Ansichten positioniert werden sollen, um die genannten Bereichsattribute herauszuziehen und um die graphischen Objekte in den genannten Bereichen zu anzuordnen. Auch Bewegungsroutinen werden bereitgestellt, welche die genannten Bereichsattribute verändern, wenn eines der graphischen Objekte aus einem der genannten Bereiche in einen anderen der genannten Bereiche bewegt wird.
  • Die Aufgabe wird auch gelöst durch eine Methode, die einen ersten Schritt umfaßt zur Definition der Ansicht, in der die gra phischen Objekte angezeigt werden sollen, einen zweiten Schritt zur Definition von Bereichen innerhalb der Ansicht, innerhalb derer einige der graphischen Objekte angezeigt werden sollen, einen dritten Schritt, um einigen oder allen graphischen Objekten ein Bereichsattribut zuzuordnen, das anzeigt, in welchem Bereich der genannten Bereiche das graphische Objekt angezeigt werden soll, einen vierten Schritt, in dem die graphischen Objekte innerhalb der Bereiche angeordnet werden, und einen fünften Schritt, um die Ansicht mit der Anordnung auf der graphischen Anzeigevorrichtung darzustellen.
  • Der zweite Schritt der Methode umfaßt die Erstellung einer Bereichsdefinitionsdatei, welche die Definitionen der genannten Bereiche enthält.
  • Der vierte Schritt der Methode umfaßt das Durchschleifen der graphischen Objekte, die in der Ansicht positioniert werden sollen, um den Wert des genannten Bereichsattributs herauszuziehen, das Durchsuchen der genannten Bereichsdefinitionsdatei, um den Bereich auszuwählen, der dem genannten herausgezogenen Bereichsattribut entspricht, und das Positionieren der genannten graphischen Objekte in dem ausgewählten Bereich. Der Schritt des Positionierens der genannten graphischen Objekte umfaßt die Weitergabe aller graphischen Objekte innerhalb des ausgewählten Bereichs, zusammen mit der Bereichsgröße, der Bereichsform und dem Bereichs-Layout, an einen Sublayouter, der dann die optimalen Positionen der graphischen Objekte innerhalb des ausgewählten Bereichs bestimmt.
  • Die Erfindung stellt außerdem eine Methode bereit, mit der ein graphisches Objekt innerhalb einer Ansicht mit Bereichen bewegt werden kann, umfassend die folgenden Schritte: einen ersten Schritt, in dem das zu bewegende graphische Objekt ausgewählt wird, einen zweiten Schritt, in dem die neue Position, in die das graphische Objekt bewegt werden soll, ausgewählt wird, einen dritten Schritt, in dem das graphische Objekt in die ausgewählte neue Position plaziert wird, und einen vierten Schritt, in dem die Ansicht neu geordnet wird.
  • In diesem zweiten Schritt wird der Bereich bestimmt, in dem sich die ausgewählte neue Position befindet, und im dritten Schritt wird der Wert des genannten Bereichsattributs verändert, und zwar von dem Bereich, in dem sich das graphische Objekt befindet, in den Bereich, in den es plaziert werden soll.
  • Die Vorrichtung und Methode, die hier beschrieben und beansprucht werden, haben gegenüber dem Stand der Technik den Vorteil, daß sie eine flexible und umfassende Möglichkeit zur Darstellung einer Ansicht auf einem Anzeigegerät bieten. Der Entwickler eines Anwendungsprogramms muß sich nicht im einzelnen mit der Position und der Anzeige der graphischen Objekte auf der Anzeigevorrichtung beschäftigen, sondern er muß nur die Bereiche definieren und jedem anzuzeigenden Objekt ein Bereichsattribut zuordnen. Die Layout-Routinen sorgen dann dafür, daß jedes graphische Objekt sichtbar innerhalb des Bereichs angezeigt wird.
  • Für den Endanwender des Anwendungsprogramms bieten die Methode und Vorrichtung der Erfindung den Vorteil, daß er die Instanzen der graphischen Objekte auf der Anzeigevorrichtung beeinflussen und neu positionieren kann. Die Bewegungs- und Layout-Routinen ordnen die Anzeige dann neu an, so daß ein besseres Layout entsteht.
  • Ein weiteres Merkmal der Erfindung gewährleistet, daß ein Endanwender eine Instanz eines graphischen Objekts nicht in un erlaubter Weise beeinflussen kann. Dies hat den Vorteil, daß bei Instanzen graphischer Objekte in einer Ansicht, die immer zusammenbleiben müssen oder die nur von einem Bereich in einen anderen bewegt werden dürfen, nur diese Vorgänge erlaubt sind. Der Endanwender kann daher die Ansicht nicht in einer Weise neu ordnen, die zu einem späteren Zeitpunkt die Anwendung des Anwendungsprogramms komplizieren würde.
  • Beschreibung der Figuren
  • Fig. 1 zeigt eine Übersicht über ein Rechnersystem, in dem die Erfindung implementiert wurde.
  • Fig. 2 zeigt eine Ansicht, in der drei Bereiche vorhanden sind.
  • Fig. 3 zeigt, wie die Bereichsdefinitionen in der Anwenderschnittstellen-Definition enthalten sind.
  • Fig. 4 zeigt die verschiedenen Layout-Arten graphischer Objekte, die innerhalb der Bereiche durchgeführt werden können.
  • Fig. 5 zeigt eine Übersicht über ein Ausführungsbeispiel der Erfindung.
  • Fig. 6 ist ein Flußdiagramm, das einen ungefähren Überblick über die Methode der Erfindung gibt.
  • Fig. 7 ist ein Flußdiagramm, das zeigt, wie eine Speicherstruktur erzeugt wird, um auf den Bereich und auf Objektdefinitionsdaten zuzugreifen.
  • Fig. 8 zeigt die verschiedenen Child-Objekte des graphischen Objekts, die angezeigt werden sollen, sowie deren Eigenschaften.
  • Fig. 9 ist ein Flußdiagramm, das zeigt, wie Instanzen graphischer Objekte Bereichen zugeordnet werden.
  • Fig. 10 ist ein Flußdiagramm, welches das Layout der Instanzen graphischer Objekte innerhalb der Ansichten zeigt.
  • Fig. 11 ist ein Flußdiagramm, das zeigt, wie eine Instanz des graphischen Objekts von einem Bereich in einen anderen bewegt wird.
  • Ausführliche Beschreibung der Erfindung
  • Fig. 1 zeigt eine Übersicht über ein Rechnersystem, in dem die vorliegende Erfindung implementiert wurde. Eine Tastatur 10 und eine Zeigevorrichtung 20, beispielsweise eine Maus, sind mit einer Recheneinheit 30 verbunden. Die Recheneinheit 30 umfaßt eine zentrale Verarbeitungseinheit 40 und einen Speicher 60. Die Recheneinheit 30 kann auch einen Graphikprozessor 50 umfassen, mit dem eine graphische Schnittstelle zu Programmen hergestellt wird, die in der zentralen Verarbeitungseinheit 40 laufen, oder die zentrale Verarbeitungseinheit 40 kann selbst diese graphischen Schnittstellen erzeugen.
  • Der Speicher 60 umfaßt einen Bildspeicher 70, der zum Speichern und Darstellen der graphischen Schnittstelle auf einem Bildschirm 80 dient. Die auf dem Bildschirm 80 dargestellten graphischen Schnittstellen sind nur ein Beispiel für Endanwender- Schnittstellen, die erzeugt werden können, um mit in der Re cheneinheit 30 laufenden Anwendungsprogrammen zu arbeiten. Andere Beispiele für Endanwender-Schnittstellen sind befehlsbasierte Schnittstellen oder Sprachschnittstellen.
  • Um die auf dem Bildschirm 80 zu erzeugenden graphischen Endanwender-Schnittstellen zu erstellen, muß der Entwickler des Anwendungsprogrammes das Layout und die Positionen der auf dem Bildschirm darzustellenden Elemente definieren. Die hierbei zu berücksichtigenden Faktoren sind die Anwendungsfreundlichkeit, der klare Aufbau des Bildschirms und ein möglichst einfaches Navigieren durch die verschiedenen Bildschirmdarstellungen, welche die graphische Benutzerschnittstelle für den Endanwender darstellen.
  • Bei dem Produkt IBM ScreenView wurde die Logik für den Entwurf der Endanwender-Schnittstellen (die sogenannte Schnittstellenlogik) von der Logik, die Teil des Anwendungsprogramms ist (die sogenannte Business-Logik) getrennt. Die Endanwender-Schnittstellen zu dem Anwendungsprogramm in ScreenView werden definiert mit Hilfe einer sogenannten Benutzerschnittstellen-Deklaration (UID). Wie bereits oben erläutert, handelt es sich hierbei um eine deklarative Sprache, die dem Entwickler eine Beschreibung der Objekte, ihrer Beziehungen untereinander, der möglichen Ansichten, in denen diese Objekte in einer graphischen Endanwender-Schnittstelle dargestellt werden, und der Vorgänge, die mit diesen Objekten ausgeführt werden können, erlaubt. Die Entwicklung einer UID wird in dem obengenannten ScreenView Applications Developer's Guide ausführlich beschrieben.
  • Obwohl die UID generisch, also ohne Bezugnahme auf die jeweils von einem Endanwender des Anwendungsprogramms verwendete Endanwender-Schnittstelle definiert wird, erlaubt sie die Einbezie hung von Ansichtsdefinitionen, so daß die Position der Objekte auf dem Bildschirm 80 berechnet werden kann, wenn der Endanwender eine graphische Endanwender-Schnittstelle auswählt.
  • Innerhalb ScreenView werden Ansichten definiert als die Darstellung von Details einer Instanz eines graphischen Objekts. Sie enthalten Details über den Inhalt des graphischen Objekts, wie es zusammengesetzt ist und was seine Eigenschaften sind. Mit den Ansichten kann sich der Endanwender des Anwendungsprogramms die Einzelheiten der graphischen Objekte ansehen und die Instanzen der graphischen Objekte beeinflussen. Damit das graphische Objekt aus verschiedenen Blickwinkeln oder auf unterschiedliche Weise betrachtet werden kann, kann es von jedem graphischen Objekt mehr als eine Ansicht geben.
  • Wenn ein Objekt definiert ist, muß der Entwerfer der graphischen Schnittstelle die Ansichten bestimmen, mit denen die Endanwender den besten Zugriff auf die auf dem Bildschirm 80 dargestellten graphischen Objekte hätten und die ihnen eine Erfüllung ihrer Aufgaben ermöglichen. Der Entwerfer muß bestimmen, welche graphischen Objekte der Endanwender des Anwendungsprogramms gleichzeitig sehen muß sowie die Reihenfolge, in welcher er diese sehen muß, damit er in der Lage ist, die Objektbeziehungen zu beeinflussen.
  • Wie bereits oben erläutert werden diese Ansichten in der UID definiert. Eine Ansicht wird definiert, indem das graphische Objekt, der Inhalt der Ansicht und die Darstellung der Ansicht festgelegt werden. Das graphische Objekt ist das Objekt, mit dem die Ansicht geöffnet werden kann. Dieses Objekt wird auch als "View Owner" bezeichnet. In der UID können die Ansichten, die von den Endanwendern mit jeder graphischen Objektinstanz geöffnet werden können, angegeben werden. Die Ansichtinhalte beschreiben die Inhalte der graphischen Objekte, das heißt, welche anderen graphischen Objekte es enthalten kann. Die Ansichtsdarstellung beschreibt die grundlegenden Darstellungsaspekte der Ansicht und wird auch in der UID definiert. Die Ansichtsdarstellung kann die Bitmaps oder Icons beschreiben, die zur Darstellung der Instanzen der graphischen Objekte auf dem Bildschirm 80 verwendet werden. Sie kann das Hintergrundbild oder die Bitmap beschreiben, auf der die Instanzen der graphischen Objekte angezeigt werden. Die Ansichtsdarstellung legt auch die Layout-Routinen fest, die verwendet werden sollen, um die Instanzen der graphischen Objekte auf dem Bildschirm 80 anzuordnen.
  • Die Darstellung desselben graphischen Objekts kann sich von Ansicht zu Ansicht unterscheiden. Es ist möglich, daß der Endanwender beliebig viele Ansichten desselben graphischen Objekts öffnet. Die Ansichten werden in dem Bildspeicher 70 gespeichert oder - wenn der Speicher für alle geöffneten Ansichten nicht ausreicht - vorübergehend in einem anderen Speichermedium, beispielsweise auf einer Festplatte.
  • Das Medium, das zur Darstellung von Ansichten für den Endanwender eingesetzt wird, ist ein Fenster. Wenn eine Ansicht eines graphischen Objekts geöffnet wird, wird ein Fenster erstellt, das alle Inhalte der Ansicht oder einen Teil der Inhalte auf dem Bildschirm 80 zeigt.
  • Jede Ansicht kann in ein oder mehrere Bereiche unterteilt werden, wie in Fig. 2 gezeigt wird. In Fig. 2 umfaßt eine Ansicht 100 drei Bereiche 110a-c. Dies ist nur ein Beispiel einer möglichen Aufteilung der Ansicht 100. Die Ansicht 100 kann mehr als drei Bereiche 110a-c enthalten. Die drei Bereiche 110a-c können unterschiedliche Größen haben und überlappen. In dem be vorzugten Ausführungsbeispiel sind die Bereiche rechteckig, sie könnten jedoch auch eine andere Form haben.
  • Für jede Ansicht 100, die in der Benutzerschnittstellen-Deklaration definiert wird, kann eine Bereichsdefinitionsdatei referenziert werden. Diese Datei enthält ein oder mehrere Bereichsdefinitionen. Die Bereichsdefinition besteht grundsätzlich aus einem Bereichsnamen und einem Koordinatenpaar, das den rechteckigen Bereich definiert, der den Bereich 110 in der Ansicht 100 darstellt. Zusätzlich kann pro Ansicht der Name eines Bereichsattributs angegeben werden. Der Wert dieses Bereichsattributs wird von einer Layout-Routine zur Bestimmung des Bereichs 110, in dem die Instanz des graphischen Objekts positioniert wird, verwendet, wie später noch beschrieben wird.
  • Fig. 3 zeigt ein Beispiel für eine Definition einer Ansicht 100 in einer Benutzerschnittstellen-Deklaration 150, eine Definition 160 einer Instanz eines graphischen Objekts und eine Bereichsdefinitionsdatei 170.
  • Die Definition der in Fig. 3 gezeigten Ansicht 100 ist nur ein kurzer Abschnitt des deklarativen Sprachprogramms, in dem die Ansicht 100 definiert wird. In dem gezeigten Beispiel erhält die Ansicht 100 den Namen "Germany", die zugeordnete Bereichsdefinitionsdatei (RegionDef) 170 wird mit GERMANY. REG bezeichnet, das von der Layout-Routine verwendete Bereichsattribut (RegionProp) wird mit "Location" bezeichnet. Das Hintergrundbild der Ansicht wird in der Bitmap-Datei GERMANY. PIC gespeichert.
  • Die Definition 160 einer Instanz des graphischen Objekts enthält den Namen des Objektes "object 1" und den Wert des von der Layout-Routine verwendeten Bereichsattributs. In dem Beispiel der Fig. 3 hat das Bereichsattribut den Wert "Frankfurt", wie gezeigt wird durch die Anweisung "Location = "Frankfurt".
  • Die der Ansicht 100 mit dem Namen "Germany" zugeordnete Bereichsdefinitionsdatei 170 hat drei definierte Bereiche 110a-c. Das heißt, es gibt drei Bereiche 110a-c innerhalb der Ansicht 100, in die Instanzen der graphischen Objekte positioniert werden können. Es sollte beachtet werden, daß die Instanzen der graphischen Objekte nicht notwendigerweise in einen der Bereiche 110a-c positioniert werden müssen. Sie könnten in demjenigen Bereich der Ansicht 100 positioniert werden, in dem keiner der Bereiche 110a-c vorhanden ist. Dies passiert, wenn der Endanwender das Objekt in diesem Bereich der Ansicht positioniert, oder wenn kein passender Bereich für den Wert des Bereichsattributs (RegionProp) gefunden wird und kein Standardbereich definiert ist.
  • In der Bereichsdefinitionsdatei 170 werden die Namen der Bereiche 110a-c angegeben. In dem dargestellten Beispiel haben die Bereiche 110a-c die Namen "Frankfurt", "Berlin" beziehungsweise "Stuttgart". Diese Namen entsprechen den Werten, die das Bereichsattribut (RegionProp) annnehmen kann. Die Instanz des in Definition 160 gezeigten graphischen Objekts wird also in dem Bereich 110a mit dem Namen "Frankfurt" plaziert. In der Bereichsdefinitionsdatei 170 sind außerdem die Eck-Koordinaten des Rechtecks enthalten, das die Bereiche 110 definiert, also die Position, die jeder der Bereiche 110 innerhalb der Ansicht 100 annehmen kann.
  • Informationen über die Form des Layouts der Instanzen der graphischen Objekte innerhalb der Bereiche 110a-c sind auch enthalten in der Bereichsdefinitionsdatei 170. In dem bevorzugten Ausführungsbeispiel ist eine Reihe von Layouttypen bekannt. Diese sind in den Fig. 4A - 4E dargestellt.
  • Fig. 4A zeigt die in Reihen angeordneten graphischen Objekte. Man bezeichnet diesen Typ als Layouttyp "REIHE". Fig. 4B zeigt die in Reihen angeordneten graphischen Objekte, wobei die Reihen zueinander verschoben sind. Dieser Typ wird bezeichnet als Layouttyp "S-REIHE". Fig. 4C zeigt die in Spalten angeordneten graphischen Objekte. Dieses Layout wird als Layouttyp "SPALTE" bezeichnet. Fig. 4D zeigt die in Spalten angeordneten graphischen Objekte, wobei die Spalten zueinander verschoben sind. Dieser Typ wird als Layouttyp "S-SPALTE" bezeichnet. Fig. 4E zeigt schließlich den Layouttyp "ERWEITERN", bei dem die graphischen Objekte in der Mitte des Bereichs 110a-c angeordnet sind. Die graphischen Objekte können nach links ausgerichtet sein, das heißt, die Instanzen der graphischen Objekte sind ausgerichtet zur linken unteren Ecke des in Fig. 4H gezeigten Bereichs. Die graphischen Objekte können nach rechts ausgerichtet sein, das heißt, die Instanzen der graphischen Objekte sind zur rechten oberen Ecke des Bereichs in Fig. 4 G ausgerichtet. Schließlich können die Instanzen der graphischen Objekte in einem Kreis erscheinen, wie in Fig. 4F gezeigt wird. Andere Anordnungsmöglichkeiten sind denkbar.
  • In dem in Fig. 3 gezeigten Beispiel hat der Bereich 110a mit dem Namen "Frankfurt" ein kreisförmiges Layout, was durch den Parameter "Layout = Kreis" angezeigt wird. Der Bereich 110b mit dem Namen "Berlin" hat ein nach rechts ausgerichtetes Layout, was durch den Parameter "Layout = rechts ausrichten" angezeigt wird. Der Bereich 110c mit dem Namen "Stuttgart" hat ein nach links ausgerichtetes Layout, was durch den Parameter "Layout = links ausrichten" angezeigt wird.
  • Innerhalb der Bereichsdefinitionsdatei 170 ist ein Bereich als Standardbereich definiert. In diesen Bereich werden alle Instanzen der graphischen Objekte plaziert, die, entsprechend dem Wert des Bereichsattributs Region-Prop, nicht in einem anderen Bereich plaziert werden. In dem in Fig. 3 gezeigten Beispiel ist der Bereich "Frankfurt" 110a der Standardbereich. Auch andere Bereiche, 110b oder 110c, könnten Standardbereiche sein. Alternativ wäre es möglich, den Abschnitt der Ansicht 110, der sich außerhalb der Bereiche 110a-c befindet, als Standardbereich zu definieren, indem kein Standardbereich angegeben wird.
  • Fig. 5 zeigt ein Ausführungsbeispiel der Erfindung. In der Recheneinheit 30 sind die verschiedenen Komponenten der Erfindung vorhanden. Die universelle Schnittstellendeklaration 150 wird in dem Speicher 60 gespeichert, ebenso wie die Bereichsdefinitionsdatei 170. Der Speicher 60 enthält ebenfalls die Instanzen 180 der graphischen Objekte, die innerhalb der Ansicht 100 positioniert werden sollen.
  • Innerhalb des graphischen Prozessors 80 ist ein Bereichs-Layouter 200 vorhanden, der die Instanzen 180 der graphischen Objekte in der Ansicht 100 anordnet. Der Bereichs-Layouter 200 zieht aus dem Speicher 60 eine Instanz 210 des graphischen Objekts und steuert die Positionierung der Instanz 210 des graphischen Objekts innerhalb der Ansicht 100, wie nachfolgend noch erläutert wird.
  • Fig. 6 ist ein Flußdiagramm, das die allgemeinen Grundzüge der Erfindung erläutert. Die Methode zum Anzeigen der graphischen Objekte besteht grundlegend aus fünf Schritten. Im ersten Schritt 300 wird der Bereichs-Layouter initialisiert. Hierzu gehört das Abrufen der Bereichsdefinitionsdatei 170 aus dem Speicher 60 und das Erstellen einer Struktur im Speicher, wie nachfolgend noch erläutert wird. Im nächsten Schritt 320 werden die Instanzen 180 der anzuzeigenden graphischen Objekte herausgezogen und den richtigen Bereichen der Bereiche 110a-c zugeordnet, in denen sie angezeigt werden sollen. Im dritten Schritt 340 werden die Instanzen 180 in den zugeordneten Bereichen 110a-c positioniert und im vierten Schritt 360 wird ein Fenster in der Ansicht 100 erstellt und auf dem Bildschirm 80 angezeigt. In Schritt 380 wird schließlich das Verfahren beendet und der im Speicher 60 von der erstellten Struktur verwendete Speicherplatz für andere Aufgaben freigegeben.
  • Der erste Schritt 300 der Fig. 6 umfaßt eine Reihe von kleineren Schritten, die in Fig. 7 dargestellt sind. In Schritt 420 wird die Bereichsdefinitionsdatei (RDF) 170 aus dem Speicher 60 abgerufen. In der eigentlichen ScreenView-Implementierung wird die Bereichsdefinitionsdatei 170 in einen Bereich Abstrakte Syntaxtabelle (AST) konvertiert, die eine maschinenlesbare Form der Bereichsdefinitionsdatei 170 ist. In Schritt 420 wird der Bereich Abstrakte Syntaxtabelle geöffnet und durchsucht. Für jede in der Bereichsdefinitionsdatei 170 gefundene Bereichsdefinition wird ein Pool von Bereichsobjekten (BUSNLREG) erstellt, wie in Fig. 8 gezeigt wird. Das Bereichsobjekt (BUSNLREG) umfaßt ein Bereichsnamenobjekt (BUSYASTR) 500, ein Bereichsrechteckobjekt (BUSLNREC) 510, Details zum Layout 520, die der Bereich 110 hat, und eine Angabe 530, ob der Bereich 110 der Standardbereich ist oder nicht.
  • Dem Bereichsnamenobjekt (BUSYASTR) 500 sind zwei Eigenschaften zugeordnet: ein Zeiger (PSZ) 550 auf den Text 580, der in dem Speicher 60 steht, und eine Stringlängenvariable 540, welche die Länge des Textes 580 angibt.
  • Dem Bereichsrechteckobjekt (BUSNLREC) 510 sind zwei Zeiger 560 und 570 zugeordnet. Ein Bereichszeiger (Point 1) 560 zeigt auf die Koordinaten 590 einer Ecke des Bereichsrechtecks. Der andere Bereichszeiger (Point 2) 570 zeigt auf die Koordinaten 600 der anderen Ecke des Bereichsrechtecks. Die Koordinatenpaare sind in einem Bereichspunktobjekt (BUSNLRPT) 585 enthalten, das ebenfalls im Speicher 60 gespeichert ist.
  • Die Zeiger zu den Bereichsobjekten (BUSNLREG) werden in einem als AVL-Baum implementierten Wörterbuch gespeichert. AVL-Bäume sind nach dem Stand der Technik hinlänglich bekannte Datenstrukturen. Verwendet man den Bereichsnamen 500 als Schlüssel, kann das Wörterbuch schnell durchsucht und der auf die Position der Bereichsobjekte (BUSNLREG) innerhalb des Bereichsdefinitions-Pools zeigende Zeiger schnell gefunden werden.
  • Der zweite Schritt 320 der Fig. 6 wird ausführlicher in Fig. 9 dargestellt. In Schritt 700 werden die Instanzen 180 der graphischen Objekte, die in der Ansicht 100 gezeigt werden sollen, durchsucht und für jede Instanz wird der Wert des Bereichsattributs (RegionProp) bestimmt (Schritt 710). In Schritt 720 wird geprüft, ob dem Bereichsattribut (RegionProp) ein Wert zugewiesen wurde. Wenn dem Bereichsattribut (RegionProp) ein Wert zugewiesen wurde, wird der nächste Schritt 730 ausgeführt und geprüft, ob eine vorherige Instanz 180 denselben Bereichsattributwert (RegionProp) hatte. Ist dies nicht der Fall, wird dann in Schritt 735 der Bereichsname (BUSNLREG) des Bereichs 110, in dem die Instanz 180 erscheint, in einen Bereichsname-AVL-Baum plaziert, zusammen mit einem Zeiger auf eine neue in dem Speicher 60 erstellte Instanzenliste. Der Name der Instanz wird als Element in die Instanzenliste plaziert (Schritt 740). Wenn jedoch bereits eine vorherige Instanz der Instanzen 180 denselben Bereichsattributwert (RegionProp) hatte, dann wird in dem Spei cher 60 bereits eine Instanzenliste erzeugt sein und nur der Name der Instanz muß als Element zu der Instanzenliste hinzugefügt werden. Die Durchsuchungsprozedur (Schritt 700) wird solange fortgesetzt, bis alle Instanzen 180 der graphischen Objekte, die in der Ansicht 100 erscheinen, durchsucht sind.
  • Wenn in Schritt 720 festgestellt wird, daß der Wert des Bereichsattributs (RegionProp) nicht zugeordnet ist, dann wird der Name der Instanz 180 als ein Element der Instanzenliste hinzugefügt, die dem Standardbereich 530 zugeordnet ist.
  • Nachdem die AVL-Bäume und Instanzenlisten erstellt sind, kann das Verfahren mit Schritt 340 der Fig. 6 fortgesetzt werden. In diesem Schritt werden die Instanzen 180 der graphischen Objekte innerhalb ihrer jeweiligen Bereiche 110 positioniert. Wenn nur eine Instanz 180 in dem Bereich 110 positioniert werden muß, dann wird das Icon oder die Bitmap, welche die Instanz 180 des graphischen Objekts darstellt, in der Mitte des Bereichs 110 angeordnet. Die Größe des Icons kann so angepaßt werden, daß es, falls gewünscht, den Bereich 110 ganz ausfüllt.
  • Wenn jedoch mehr als eine Instanz in den Bereichen 110a-c plaziert werden soll, wird die in Fig. 10 gezeigte Prozedur ausgeführt. In Schritt 800 wird die Größe des Bereichs 110 unter Verwendung der Werte von Point 1, 560, und Point 2, 570, in dem Bereichsrechteckobjekt (BUSNLREC) 510 berechnet. Aus der Instanzenliste wird die Anzahl der Instanzen von graphischen Objekten in jedem der Bereiche 110a-c berechnet (Schritt 810). In Schritt 820 wird geprüft, ob die Icons oder Bitmaps, welche die graphischen Objekte darstellen, alle in den betreffenden Bereich der Bereiche 110a-c passen, der den gewählten Layouttyp verwendet. Ist dies nicht der Fall, wird eine Größenänderungsoperation ausgeführt (Schritt 830). Die Größenänderungsopera tion könnte durch das Ersetzen des ursprünglichen Icons durch ein anderes, durch ein vereinfachtes Icon oder einfach durch Verkleinern des ursprünglichen Icons ausgeführt werden. Alternativ könnten die graphischen Objekte übereinandergelegt werden. Andere Größenänderungsmethoden sind dem Fachmann hinlänglich bekannt.
  • In Schritt 840 wird die Position der Icons oder Bitmaps in dem Bereich 110 berechnet, unter Verwendung des Bereichs-Layouters 200 mit dem Layout-Parameter 520. In Schritt 850 kann schließlich der komplette Bereich 110 erzeugt und, wenn angebracht, in dem Bildspeicher 70 gespeichert werden. Die Routinen, welche die Layout-Prozedur ausführen, sind in dem Bereichs-Layouter 200 zu finden. Drei getrennte Routinen oder Sublayouter dienen zur Erstellung der drei unterschiedlichen Layouttypen in dem bevorzugten Ausführungsbeispiel der Erfindung. Die Entscheidung, welcher Layouter verwendet wird, hängt ab von dem Wert des Layout-Parameters 520. Die Entwicklung weiterer Sublayouter wäre einem Fachmann möglich.
  • Die Schritte 320 und 340 werden wiederholt, bis alle Instanzen 180 der graphischen Objekte, die in der Ansicht 100 angezeigt werden sollen, in den betreffenden Bereichen 110a-c positioniert wurden. Die Daten, welche die Ansicht 100 darstellen, werden dann in dem Bildspeicher 70 gefunden und ein Fenster wird erzeugt, welches bekannte Bildverarbeitungstechniken einsetzt, um diese Ansicht 100 auf dem Bildschirm 80 darzustellen.
  • Die Erfindung beinhaltet auch Bewegungsroutinen, mit denen ein Endanwender mit Hilfe von "Drag and Drop"-Techniken Instanzen graphischer Objekte von einem der Bereiche 110a-c in einen anderen der Bereiche 110a-c bewegen kann. Ein Flußdiagramm, das diese Prozedur darstellt, ist in Fig. 11 zu sehen.
  • In Schritt 900 wählt der Endanwender die Instanz 180 des graphischen Objektes aus, die neu positioniert werden soll. Die Auswahl dieser Instanz 180 erfolgt über die Zeigevorrichtung 20 oder über einen Befehl in der Befehlszeile. Mit dem Zeigegerät 20 oder einem in der Befehlszeile eingegebenen Befehl wird die Instanz 180 von ihrer aktuellen Position in der Ansicht 100 in eine andere Position in der Ansicht 100 bewegt (Schritt 910). In Schritt 920 werden die neuen Koordinaten der Instanz 180 des graphischen Objektes berechnet. Unter Verwendung der im Bereichsrechteck (BUSNLREC)-Objekt 510 gespeicherten Informationen wird eine Prüfung ausgeführt (Schritt 930), um zu prüfen, ob diese neuen Koordinaten innerhalb eines neuen Bereichs 110 liegen.
  • Wenn der Endanwender die Instanz 180 in eine Position bewegt hat, die in keinem definierten Bereich liegt, wird der Wert des Bereichsattributs (RegionProp) nicht verändert (Schritt 940). Wenn jedoch die Instanz in einen neuen Bereich bewegt wurde (Schritt 950), dann wird der Wert des Bereichsattributs (RegionProp) auf den Wert des Bereichs 110 gesetzt, in dem sich die Instanz befindet. Dieser Wert wird aus dem Bereichsnamen (BUSYASTR)-Objekt 500 herausgezogen. Es ist natürlich möglich, daß sich zwei Bereiche 110 überlappen, und in diesem Fall wird nur einer der Bereichsnamen als Wert für das Bereichsattribut verwendet.
  • In Schritt 960 wird der Sublayouter im Layouter 200 aufgerufen, um die angezeigten Icons und Bitmaps innerhalb des Bereichs 110 neu zu ordnen, so daß die bewegte Instanz enthalten ist. Wenn die Instanz 180 in eine Position bewegt wurde, die nicht in einem definierten Bereich liegt, und wenn das Bereichsattribut (RegionProp) nicht geändert wurde (Schritt 940), wird es in dem ursprünglichen Bereich 110 ersetzt.
  • In einigen Ausführungsbeispielen der Erfindung kann möglicherweise der Endanwender die Instanz 180 des graphischen Objektes nicht von einem Bereich 110 in einen anderen Bereich 110 bewegen. In diesem Fall reagiert das graphische Objekt auf eine Anforderung "Drag and Drop" entweder durch Zurückweisung der Anforderung oder indem es den Wert des Bereichsattributs (RegionProp) unverändert läßt oder indem es ihn auf einen anderen Wert ändert (zum Beispiel den Namen eines anderen Bereichs, in dem die Instanz des graphischen Objekts erscheinen kann).
  • Ein Beispiel der Ansicht "Germany" kann hier zur Erläuterung dieses Vorgangs herangezogen werden. Angenommen, der Endanwender möchte ein Objekt "Flugzeug", das sich momentan im Bereich "Frankfurt" befindet, das heißt, dessen Bereichsattribut (RegionProp) den Wert "Frankfurt" hat, auf den Bereich "Berlin" ziehen. Hierfür gibt es drei Möglichkeiten. Bei der ersten Möglichkeit wird der Wert des Bereichsattributs (RegionProp) "Location" geändert in "Berlin" und der Bereich "Berlin" wird neu geordnet, so daß er jetzt das Objekt "Flugzeug" enthält.
  • Bei der zweiten Möglichkeit zieht der Endanwender das Objekt "Flugzeug" auf den Bereich "Berlin" und legt es dort ab. Das graphische Objekt weist jedoch die Anforderung zurück und lehnt eine Änderung des Werts des Bereichsattributs (RegionProp) "Location" in "Berlin" ab. Der gesetzte Wert "Frankfurt" bleibt erhalten. Das Objekt "Flugzeug" bleibt innerhalb des Bereichs "Frankfurt" positioniert.
  • Bei der dritten Möglichkeit zieht der Endanwender das Objekt "Flugzeug" auf den Bereich "Berlin" und legt es dort ab. Das graphische Objekt weist jedoch die Anforderung, den Wert des Bereichsattributs (RegionProp) "Location" in "Berlin" zu ändern, zurück, da es weiß, daß alle aus dem Bereich "Frankfurt" kommenden Objekte zunächst den Bereich"Stuttgart" durchlaufen müssen. Es ändert daher den Wert des Bereichsattributs (RegionProp) "Location" in "Stuttgart" und der Bereichs- Layouter 200 wird aufgerufen, die Instanzen der Objekte im Bereich "Stuttgart" neu zu ordnen.
  • Eine weitere Möglichkeit ist, daß der Endanwender das graphische Objekt "Flugzeug" aus dem Bereich "Frankfurt" auf einen Abschnitt der Ansicht 100 zieht, die keinen Bereich 110 enthält. In diesem Fall wird der Wert des Bereichsattributs (RegionProp) "Location" auf "Standard" geändert. In diesem speziellen Beispiel bedeutet das, daß das Objekt "Flugzeug" im Bereich "Frankfurt" bleibt, da dies der Standardbereich für diese Ansicht 100 ist. Sollte jedoch zu einem späteren Zeitpunkt der Standardbereich geändert werden, dann erscheint die Instanz des graphischen Objekts "Flugzeug" in dem neuen Standardbereich.

Claims (6)

1. Eine Vorrichtung zum Anzeigen einer Vielzahl graphischer Objekte in einer Ansicht auf einem Bildschirm, umfassend:
a) Mittel zum Definieren einer Ansicht mit einer Vielzahl von Bereichen, in denen die graphischen Objekte angezeigt werden sollen;
b) Mittel, um jedem graphischen Objekt einen bestimmten Bereich der Ansicht zuzuordnen, um den Bereich anzugeben, in dem das graphische Objekt angezeigt werden soll;
c) Mittel, um für jeden der genannten Bereiche ein Muster zu definieren für die Positionierung von graphischen Objekten innerhalb des genannten Bereichs, wobei das genannte Muster ohne Berücksichtigung der Anzahl der graphischen Objekte definiert wird, die diesem Bereich zugeordnet werden können;
d) Mittel zum dynamischen Positionieren der graphischen Objekte, die jedem der genannten Bereiche zugeordnet sind, innerhalb des Bereichs, entsprechend dem für diesen Bereich definierten Muster, und
e) einen Bildschirm zum Anzeigen der Ansicht mit den graphischen Objekten innerhalb der zugeordneten Bereiche.
2. Die Vorrichtung nach Anspruch 1, weiter umfassend Mittel zum Bewegen eines graphischen Objektes, das einem ersten Bereich zugeordnet wurde, von dem ersten Bereich in einen zweiten Bereich, indem das graphische Objekt diesem zweiten Bereich zugeordnet wird.
3. Die Vorrichtung nach Anspruch 1 oder 2, bei der jedes der genannten definierten Muster aus einer Vielzahl von Mustern ausgewählt wird.
4. Eine Methode zum Anzeigen einer Vielzahl von graphischen Objekten in einer Ansicht auf einem Bildschirm, folgende Schritte umfassend:
a) Definieren einer Ansicht mit einer Vielzahl von Bereichen, innerhalb derer die graphischen Objekte angezeigt werden sollen;
b) Zuordnen eines jeden graphischen Objektes zu einem Bereich der Ansicht, um den Bereich anzugeben, in dem das graphische Objekt angezeigt werden soll;
c) für jeden der genannten Bereiche, Definieren eines Musters für die Positionierung von graphischen Objekten innerhalb des genannten Bereichs, wobei das genannte Muster definiert wird ohne Berücksichtigung der Anzahl der graphischen Objekte, die dem genannten Bereich zugeordnet werden können;
d) dynamisches Positionieren der graphischen Objekte, die jedem der genannten Bereiche zugeordnet wurden, innerhalb des Bereichs, entsprechend dem für diesen Bereich definierten Muster; und
e) Anzeigen der Ansicht mit den graphischen Objekten, die dynamisch innerhalb der zugeordneten Bereiche positioniert wurden, auf dem Bildschirm.
5. Die Methode nach Anspruch 4, weiter umfassend den Schritt des Bewegens eines graphischen Objektes, das einem ersten Bereich zugeordnet wurde, aus dem ersten Bereich in einen zweiten Bereich, indem das graphische Objekt dem zweiten Bereich zugeordnet wird.
6. Die Methode nach Anspruch 4 oder 5, bei der jedes der genannten definierten Muster aus einer Vielzahl von Mustern ausgewählt wird.
DE69327948T 1993-04-30 1993-04-30 Bereich-layout in einer Sicht auf einem grafischen Anzeigeschirm Expired - Lifetime DE69327948T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP93107055A EP0622728B1 (de) 1993-04-30 1993-04-30 Bereich-layout in einer Sicht auf einem grafischen Anzeigeschirm

Publications (2)

Publication Number Publication Date
DE69327948D1 DE69327948D1 (de) 2000-04-06
DE69327948T2 true DE69327948T2 (de) 2000-10-26

Family

ID=8212851

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69327948T Expired - Lifetime DE69327948T2 (de) 1993-04-30 1993-04-30 Bereich-layout in einer Sicht auf einem grafischen Anzeigeschirm

Country Status (5)

Country Link
US (1) US6320602B1 (de)
EP (1) EP0622728B1 (de)
JP (1) JP2547964B2 (de)
AT (1) ATE190149T1 (de)
DE (1) DE69327948T2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10134270A1 (de) * 2001-07-18 2003-02-06 Heidenhain Gmbh Dr Johannes Verfahren zur Erzeugung pixelorientierter Bilddateien zur Darstellung graphischer Symbole durch eine numerische Steuerung

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5781193A (en) * 1996-08-14 1998-07-14 International Business Machines Corporation Graphical interface method, apparatus and application for creating multiple value list from superset list
US5774119A (en) * 1996-08-14 1998-06-30 International Business Machines Corporation Graphical interface method, apparatus and application for selection of target object
US5872568A (en) * 1996-08-14 1999-02-16 International Business Machines Corporation Application and method for creating a list from pre-defined and user values
US6195096B1 (en) 1996-08-14 2001-02-27 International Business Machines Corporation Graphical interface method, apparatus and application for creating and modifying a multiple-value text list
US5774120A (en) * 1996-08-14 1998-06-30 International Business Machines Corporation Refresh and select-all actions in graphical user interface
US6104395A (en) * 1996-08-14 2000-08-15 International Business Machines Corporation Graphical interface method, apparatus and application for opening window of all designated container objects
US5818444A (en) * 1996-08-14 1998-10-06 International Business Machines Corporation Method, apparatus and application for object selective but global attribute modification
US5784057A (en) * 1996-08-14 1998-07-21 International Business Machines Corporation Dynamically modifying a graphical user interface window title
US5812135A (en) * 1996-11-05 1998-09-22 International Business Machines Corporation Reorganization of nodes in a partial view of hierarchical information
US6380954B1 (en) * 1998-02-09 2002-04-30 Reuters, Ltd. Method and system for layout of objects within a perimeter using constrained interactive search
US7437725B1 (en) * 1999-01-04 2008-10-14 General Electric Company Processing techniques for servers handling client/server traffic and communications
JP3164070B2 (ja) 1998-07-24 2001-05-08 日本電気株式会社 オブジェクト配置制御装置、方法及び記録媒体
US6983424B1 (en) * 2000-06-23 2006-01-03 International Business Machines Corporation Automatically scaling icons to fit a display area within a data processing system
WO2002044897A1 (en) * 2000-11-29 2002-06-06 Fourbit Group, Inc. Generating a declarative user interface
GB0110326D0 (en) * 2001-04-27 2001-06-20 Ibm Method and apparatus for interoperation between legacy software and screen reader programs
US7028257B1 (en) * 2001-06-29 2006-04-11 Bellsouth Intellectual Property Corp. System and method for rapid creation and display of stylized digital content items
US6950993B2 (en) * 2001-08-02 2005-09-27 Microsoft Corporation System and method for automatic and dynamic layout of resizable dialog type windows
EP1494116A1 (de) * 2003-07-01 2005-01-05 Amadeus S.A.S. Verfahren und Vorrichtung zum Erstellen von graphischen Benutzerschnittstellen
US20060020904A1 (en) * 2004-07-09 2006-01-26 Antti Aaltonen Stripe user interface
TW200622893A (en) * 2004-07-09 2006-07-01 Nokia Corp Cute user interface
US8510657B2 (en) * 2004-09-30 2013-08-13 Microsoft Corporation Editing the text of an arbitrary graphic via a hierarchical list
US7348982B2 (en) 2004-09-30 2008-03-25 Microsoft Corporation Method, system, and computer-readable medium for creating and laying out a graphic within an application program
US8134575B2 (en) * 2004-09-30 2012-03-13 Microsoft Corporation Maintaining graphical presentations based on user customizations
US8438486B2 (en) 2006-02-09 2013-05-07 Microsoft Corporation Automatically converting text to business graphics
US8702720B2 (en) * 2006-05-03 2014-04-22 Cook Medical Technologies Llc Tassel tip wire guide
US7996282B1 (en) 2006-09-29 2011-08-09 Amazon Technologies, Inc. Method and system for selecting and displaying items
JP4356752B2 (ja) * 2007-02-20 2009-11-04 セイコーエプソン株式会社 文書編集装置、プログラムおよび記憶媒体
US9075492B1 (en) 2007-03-30 2015-07-07 Amazon Technologies, Inc. Method and system for displaying items
US8209223B2 (en) * 2007-11-30 2012-06-26 Google Inc. Video object tag creation and processing
US9189250B2 (en) * 2008-01-16 2015-11-17 Honeywell International Inc. Method and system for re-invoking displays
US9292582B2 (en) * 2009-05-27 2016-03-22 International Business Machines Corporation Rendering a database record in a fixed display space
US8799325B2 (en) 2010-03-12 2014-08-05 Microsoft Corporation Reordering nodes in a hierarchical structure
USD655715S1 (en) * 2011-05-27 2012-03-13 Microsoft Corporation Display screen with user interface
USD655301S1 (en) * 2011-05-27 2012-03-06 Microsoft Corporation Display screen with user interface
USD655713S1 (en) * 2011-05-27 2012-03-13 Microsoft Corporation Display screen with user interface
USD658670S1 (en) 2011-05-27 2012-05-01 Microsoft Corporation Display screen with user interface
USD655716S1 (en) * 2011-05-27 2012-03-13 Microsoft Corporation Display screen with user interface
USD655714S1 (en) * 2011-05-27 2012-03-13 Microsoft Corporation Display screen with user interface
US10972530B2 (en) 2016-12-30 2021-04-06 Google Llc Audio-based data structure generation
US8688514B1 (en) 2011-06-24 2014-04-01 Google Inc. Ad selection using image data
US11087424B1 (en) 2011-06-24 2021-08-10 Google Llc Image recognition-based content item selection
US9300539B2 (en) 2011-08-04 2016-03-29 International Business Machines Corporation Network computing management
US9183006B2 (en) * 2011-08-31 2015-11-10 Visan Industries Systems and methods for layout of graphic objects for electronic display, print or other output
US11093692B2 (en) 2011-11-14 2021-08-17 Google Llc Extracting audiovisual features from digital components
US10586127B1 (en) 2011-11-14 2020-03-10 Google Llc Extracting audiovisual features from content elements on online documents
US9183398B2 (en) 2012-09-20 2015-11-10 Qualcomm Incorporated Content-driven screen polarization with application sessions
USD736818S1 (en) 2013-03-14 2015-08-18 Microsoft Corporation Display screen with graphical user interface
US9953085B1 (en) 2013-05-31 2018-04-24 Google Llc Feed upload for search entity based content selection
US11030239B2 (en) 2013-05-31 2021-06-08 Google Llc Audio based entity-action pair based selection
US9846904B2 (en) 2013-12-26 2017-12-19 Target Brands, Inc. Retail website user interface, systems and methods
USD770463S1 (en) * 2013-12-26 2016-11-01 Target Brands Inc. Display screen with a graphical user interface
US10037308B2 (en) * 2014-01-17 2018-07-31 Htc Corporation Method for adding two rows of tiles to an existing two rows of tiles based on the number of tiles in each of the existing two rows
US9886565B2 (en) * 2014-06-20 2018-02-06 Microsoft Technology Licensing, Llc User-specific visualization of display elements
CN104111839A (zh) * 2014-07-29 2014-10-22 广东能龙教育股份有限公司 一种基于画布的绝对定位方法
US10600062B2 (en) 2016-03-15 2020-03-24 Target Brands Inc. Retail website user interface, systems, and methods for displaying trending looks by location
US10776860B2 (en) 2016-03-15 2020-09-15 Target Brands, Inc. Retail website user interface, systems, and methods for displaying trending looks
US11574429B1 (en) * 2019-04-30 2023-02-07 Splunk Inc. Automated generation of display layouts
US11336946B1 (en) 2020-08-19 2022-05-17 Amazon Technologies, Inc. Presenting options for selecting content via navigation bars and designated content spaces

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5107443A (en) * 1988-09-07 1992-04-21 Xerox Corporation Private regions within a shared workspace
US5144693A (en) * 1988-12-30 1992-09-01 Chipsoft Ca Corp. Method and apparatus for generic form generation
US7456832B1 (en) * 1989-05-15 2008-11-25 International Business Machines Corporation Object database-driven interactive shell for a data processing system
JPH0481924A (ja) * 1990-07-25 1992-03-16 Hitachi Ltd 対話型計算機装置
JPH04372014A (ja) * 1991-06-21 1992-12-25 Oki Electric Ind Co Ltd ウィンドウ・システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10134270A1 (de) * 2001-07-18 2003-02-06 Heidenhain Gmbh Dr Johannes Verfahren zur Erzeugung pixelorientierter Bilddateien zur Darstellung graphischer Symbole durch eine numerische Steuerung

Also Published As

Publication number Publication date
US6320602B1 (en) 2001-11-20
EP0622728A1 (de) 1994-11-02
ATE190149T1 (de) 2000-03-15
EP0622728B1 (de) 2000-03-01
JPH06332656A (ja) 1994-12-02
DE69327948D1 (de) 2000-04-06
JP2547964B2 (ja) 1996-10-30

Similar Documents

Publication Publication Date Title
DE69327948T2 (de) Bereich-layout in einer Sicht auf einem grafischen Anzeigeschirm
DE69600794T2 (de) Graphische entwicklungs- und verwaltungsumgebung für anwendungsprogramme
DE69524930T2 (de) Vorrichtung zur visuellen Darstellung von Programmscheiben
DE3853788T2 (de) Dokumentbildungssystem mit benannten Formaten und Schriftarten.
DE69522684T2 (de) Statusanzeiger einer graphischen benutzerschnittstelle
DE68919503T2 (de) Methode und System zur Darstellung einer Benutzeroberfläche auf einem Computerbildschirm.
DE3881331T2 (de) Flexible Fensterverwaltung auf einer Rechneranzeige.
DE69331025T2 (de) System und Verfahren für Rechnerschnittstellen
DE3586273T2 (de) Implizite erzeugung einer superblockstruktur in einem vieldaten-edierungsgeraet.
DE69318571T2 (de) Verfahren und system für die in-ort-wechselwirkung mit eingebetteten objekten
DE69620301T2 (de) Fensterverwaltung
DE3689034T2 (de) Elektronisches System zur Text-Grafik-Aufbereitung.
DE68923492T2 (de) Verfahren zum Zugriff auf ausgewählte Fenster in einem Mehrprozessbetriebssystem.
DE3586274T2 (de) Vieldaten-edierungsgeraet mit gebrauch von attributstroemen fuer textobjekte.
DE3586272T2 (de) Integriertes vieldaten-edierungsgeraet.
DE69732547T2 (de) Verfahren und Gerät zum Zusammenklappen und zur Ausdehnung auserwählter Bereiche von Arbeitsräumen auf einem von einem Rechner kontrollierten Anzeigesystem
DE69129265T2 (de) Bildverschiebungssteuerung und Verfahren
DE69123173T2 (de) Rollbalken mit vom System oder Benutzer bereitgestellten Informationen
DE69529071T2 (de) Überfliegen von elektronisch gespeicherten Informationen
DE3852034T2 (de) Hilfe-bereitstellung in einer datenverarbeitungsanlage.
DE69429860T2 (de) Interaktives multimedia darstellungssystem
DE69428988T2 (de) Interaktive anwenderschnittstelle
DE60008498T2 (de) Verfahren und System zum Addieren und Löschen von Elementen in einem Bereich von mit Namen versehenen Zellen entsprechend verschiedener Methoden in einem elektronischen Kalkulationsblatt
DE69719413T2 (de) Verfahren und Gerät zum Gruppieren von graphischen Objekten in einem Rechnersystem mit einer graphischen Benutzerschnittstelle
DE69030862T2 (de) Automatisches Ikonerzeugungssystem

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)
8328 Change in the person/name/address of the agent

Representative=s name: DUSCHER, R., DIPL.-PHYS. DR.RER.NAT., PAT.-ANW., 7