DE69722652T2 - System und verfahren zum ferngruppieren des inhalts eines historischen kellerspeichers - Google Patents

System und verfahren zum ferngruppieren des inhalts eines historischen kellerspeichers Download PDF

Info

Publication number
DE69722652T2
DE69722652T2 DE69722652T DE69722652T DE69722652T2 DE 69722652 T2 DE69722652 T2 DE 69722652T2 DE 69722652 T DE69722652 T DE 69722652T DE 69722652 T DE69722652 T DE 69722652T DE 69722652 T2 DE69722652 T2 DE 69722652T2
Authority
DE
Germany
Prior art keywords
application
actions
action
event data
undone
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
DE69722652T
Other languages
English (en)
Other versions
DE69722652D1 (de
Inventor
Bryant Donald SELESKY
John Armstrong
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.)
Lernout and Hauspie Speech Products NV
Selesky Donald Bryant Westford
Original Assignee
Lernout and Hauspie Speech Products NV
Selesky Donald Bryant Westford
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 Lernout and Hauspie Speech Products NV, Selesky Donald Bryant Westford filed Critical Lernout and Hauspie Speech Products NV
Publication of DE69722652D1 publication Critical patent/DE69722652D1/de
Application granted granted Critical
Publication of DE69722652T2 publication Critical patent/DE69722652T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • CCHEMISTRY; METALLURGY
    • C07ORGANIC CHEMISTRY
    • C07DHETEROCYCLIC COMPOUNDS
    • C07D307/00Heterocyclic compounds containing five-membered rings having one oxygen atom as the only ring hetero atom
    • C07D307/77Heterocyclic compounds containing five-membered rings having one oxygen atom as the only ring hetero atom ortho- or peri-condensed with carbocyclic rings or ring systems
    • C07D307/93Heterocyclic compounds containing five-membered rings having one oxygen atom as the only ring hetero atom ortho- or peri-condensed with carbocyclic rings or ring systems condensed with a ring other than six-membered
    • CCHEMISTRY; METALLURGY
    • C07ORGANIC CHEMISTRY
    • C07DHETEROCYCLIC COMPOUNDS
    • C07D209/00Heterocyclic compounds containing five-membered rings, condensed with other rings, with one nitrogen atom as the only ring hetero atom
    • C07D209/02Heterocyclic compounds containing five-membered rings, condensed with other rings, with one nitrogen atom as the only ring hetero atom condensed with one carbocyclic ring
    • C07D209/52Heterocyclic compounds containing five-membered rings, condensed with other rings, with one nitrogen atom as the only ring hetero atom condensed with one carbocyclic ring condensed with a ring other than six-membered
    • CCHEMISTRY; METALLURGY
    • C07ORGANIC CHEMISTRY
    • C07DHETEROCYCLIC COMPOUNDS
    • C07D333/00Heterocyclic compounds containing five-membered rings having one sulfur atom as the only ring hetero atom
    • C07D333/50Heterocyclic compounds containing five-membered rings having one sulfur atom as the only ring hetero atom condensed with carbocyclic rings or ring systems
    • C07D333/78Heterocyclic compounds containing five-membered rings having one sulfur atom as the only ring hetero atom condensed with carbocyclic rings or ring systems condensed with rings other than six-membered or with ring systems containing such rings

Landscapes

  • Chemical & Material Sciences (AREA)
  • Organic Chemistry (AREA)
  • Document Processing Apparatus (AREA)
  • Organic Low-Molecular-Weight Compounds And Preparation Thereof (AREA)
  • User Interface Of Digital Computer (AREA)
  • Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
  • Acyclic And Carbocyclic Compounds In Medicinal Compositions (AREA)
  • Seasonings (AREA)

Description

  • Da die Anzahl der Applikationen für Computersysteme wächst, so wächst auch die Leistungsfähigkeit und die leichte Handhabung für solche Applikationen. Ein Leistungsmerkmal, welches viele Systeme und Applikationen heute als Standardeigenschaft besitzen, ist ein Leistungsmerkmal zum Rückgängigmachen. Dieses Leistungsmerkmal zum Rückgängigmachen „macht" die letzte Aktion, welche von einem Nutzer des Systems ausgeführt wird, "rückgängig". Tatsächlich kehrt die Applikation zu dem Zustand der Applikation zurück, unmittelbar bevor der Nutzer die letzte Aktion durchführte.
  • Kompliziertere Applikationen gestatten es den Benutzern, mehrere oder alle vorausgegangenen Aktionen rückgängig zu machen. Z. B. könnte ein Nutzer in einem Wort- bzw. Textverarbeitungsprogramm aufeinander folgend einige Zeilen des Textes löschen und dann zurückgehen und die Löschungen rückgängig machen, wodurch jede Zeile des gelöschten Textes wieder eingefügt wird. In einer Tabellenkalkulationsanwendung könnte ein Benutzer die Formeln, die mit verschiedenen Zellen verbunden sind, ändern, aber dann sich entscheiden, diese Zellen zurück in ihre Originalformeln zu wandeln.
  • Ein Benutzer gewinnt viel mehr Freiheit und Kontrolle über seine Arbeit aus der Fähigkeit bzw. Möglichkeit, vorausgegangene Aktionen leicht rückgängig zu machen. Benutzer können mit unterschiedlichen Arten oder Vorkommnissen experimentieren und Leistungsmerkmale, die sie wünschen, rückgängig machen oder wiederholen. Außerdem steckt es in der Natur des Menschen, Fehler zu machen. Ein Leistungsmerkmal des Rückgängigmachens gestattet, die meisten Fehler leicht zu berichtigen, wobei we niger Zeit benötigt wird, als bei manueller Ausführung der Schritte, eine Applikation in ihren vorausgegangenen Zustand zurückzubringen.
  • Die meisten Applikationen, welche es Benutzern gestatten, mehrere Schritte rückgängig zu machen, implementieren dieses Leistungsmerkmal durch das Speichern jeder Aktion des Benutzers auf einem Ereignis-Datenkellerspeicher bzw. Aktion-Ereignis-Datenkellerspeicher. Obwohl der Ereignis-Datenkellerspeicher für einen Benutzer nicht sichtbar ist, wird ein Implementieren eines Leistungsmerkmals zum vielfältigen Rückgängigmachen eine gewisse Variation eines Speichers beinhalten.
  • Wenn die Applikation gestartet wird, ist der Ereignis-Datenkellerspeicher leer. Jede Aktion, welche von einem Benutzer ausgeführt wird, z. B. das Beginnen mit einem Text, das Hervorheben eines Textblockes oder das Wechseln zu einem anderen Teil eines Dokumentes, wird auf dem Ereignis-Datenkellerspeicher gespeichert. Wenn ein Benutzer wünscht, eine oder mehrere vorausgegangene Aktionen rückgängig zu machen, aktiviert der Benutzer das Leistungsmerkmal zum Rückgängigmachen. Viele Applikationen gestatten dem Benutzer, eine oder mehrere Aktionen zum Rückgängigmachen zur gleichen Zeit auszuführen. Jede Aktion zum Rückgängigmachen bewirkt, dass der letzte Eintrag auf dem Ereignis-Datenkellerspeicher rückgängig gemacht wird. Die Aktion wird aus dem Ereignis-Datenkellerspeicher abgehoben. Wenn der Benutzer mehrere Aktionen ausführt, werden diese neuen Aktionen auf den Ereignis-Datenkellerspeicher draufgelegt.
  • Ein Problem bei Aktionen des Rückgängigmachens ist das Definieren, was man unter einer einzelnen Aktion versteht. Z. B. kann in einer Textverarbeitungsapplikation jeder Tastendruck als eine Aktion betrachtet werden. Jedoch würde das Rückgängigmachen jedes Tastendruckes von jedem Benutzer erfordern, eine sehr große Anzahl von Aktionen rückgängig zu machen, um einige Worte einfach zu löschen. Deshalb gruppieren viele Wort- bzw. Textprozessoren verschiedene Aktionen in einer einzelnen Aktion, welche rückgängig zu machen ist. Z. B. behandeln die meisten Wortprozessoren eine Gruppe von Tastenanschlägen als eine Aktion, welche zur Aktion zum Texteinfügen wird. Diese eine Aktion wird auf den Ereignis-Datenkellerspeicher draufgelegt. Dem Benutzer bleibt nur die Wahl, die gesamte Texteingabe rückgängig zu machen, nicht nur einen Teil der Tastenanschläge. Deshalb ist der Nutzer auf die Beschreibung der Applikation beschränkt, was eine Aktion zum Rückgängigmachen bedeutet.
  • Dieses wird jedoch problematischer, wenn eine zweite Applikation versucht, die erste Applikation durch den Ereignis-Datenkellerspeicher zu treiben. Wenn z. B. die zweite Applikation an die erste Applikation Aktionen zum Ausführen sendet, speichert die erste Applikation Aktionen auf ihrem Ereignis-Datenkellerspeicher. Wenn die zweite Aktion es notwendig macht, dann einige Aktionen rückgängig zu machen, muss diese exakt wissen, wie die erste Applikation die Aktionen auf dem Ereignis-Datenkellerspeicher speichert. Anderenfalls ist die zweite Applikation nicht in der Lage, zu bestimmen, ob sie die richtige Anzahl oder den richtigen Typ von Aktionen rückgängig gemacht hat.
  • Die Situation ist noch ungünstiger, wenn die zweite Applikation nicht die einzige Quelle für Aktionen an der ersten Applikation ist. Z. B. nimmt man an, dass die erste Applikation ein Wort- bzw. Textverarbeitungsprogramm ist und die zweite Applikation ein Spracherkennungssystem ist. Das Spracherkennungssystem interpretiert die Stimme eines menschlichen Benutzers und gibt die gesprochenen Wörter an das Textverarbeitungsprogramm. Der Benutzer diktiert sowohl Wörter, welche zu schreiben sind, in das Textverarbeitungsprogramm, als auch Befehle zum Manipulieren des angezeigten Textes auf verschiedene Weise. Wenn der Benutzer diktiert, schreibt er auch Text oder Befehle, indem er das Keyboard nutzt. Deshalb werden Aktionen auf dem Ereignis-Datenkellerspeicher aus zwei Quellen eingefügt, vom Keyboard und von dem Spracherkennungssystem aus.
  • Wenn das Spracherkennungssystem es erfordert, mehrere Aktionen, welche es ausführte, rückgängig zu machen, kann es nicht bestimmen, welche Aktionen von dem Spracherkennungssystem ausgeführt wurden und welche vom Keyboard aus eingefügt wurden. Außerdem kann das Spracherkennungssystem wünschen, einen Satz von Aktionen als eine Aktion zu gruppieren, und zwar in einer anderen Gruppierung als durch die Textverarbeitungsapplikation eingebracht wurde. Da das Spracherkennungssystem keine Kontrolle darüber besitzt, was der Wort- bzw. Textprozessor auf dem Ereignis-Datenkellerspeicher ablegt, kann das Spracherkennungssystem keine Aktionen in einem größeren Umfang rückgängig machen.
  • Was dementsprechend erforderlich ist, ist ein System und ein Verfahren, welches es gestattet, eine Applikation anzuzeigen, was auf einem Ereignis-Datenkellerspeicher von einer anderen Applikation abgelegt ist, und dadurch eine gewisse Kontrolle beizubehalten, wenn Aktionen auf dem Ereignis-Datenkellerspeicher abgelegt oder entfernt wurden.
  • ZUSAMMENFASSUNG
  • Die vorliegende Erfindung kennzeichnet ein System und ein Verfahren zur Ferngruppierung und -führung des Inhalts eines Ereignis- oder Befehl-Datenkellerspeichers.
  • Gemäß einem Gesichtspunkt der vorliegenden Erfindung wird ein Verfahren des Computerbearbeitens eines Computer-Files mit einer ersten Applikation, welche einen Ereignis-Datenkeller speicher besitzt, und mit einer zweiten Applikation geliefert, welche Aktionen in der ersten Applikation auslöst, wobei Aktionen in der ersten Applikation rückgängig gemacht werden, gekennzeichnet durch die Schritte: dass die erste Applikation durch die zweite Applikation geführt wird, um zu bewirken, dass ein erster Marker in dem Computer-File eingefügt wird und dann von dem Computer-File gelöscht wird, wobei beide Aktionen von dem Ereignis-Datenkellerspeicher aufgezeichnet werden; Ausführen von wenigstens einer Aktion an dem Computer-File, welche durch den Ereignis-Datenkellerspeicher aufgezeichnet wird;
    Bewirken, dass ein zweiter Marker in das Computer-File eingefügt wird und dass er dann aus dem Computer-File gelöscht wird, wobei beide Aktionen durch den Ereignis-Datenkellerspeicher aufgezeichnet werden; und Bewirken, dass die letzte Aktion auf dem Ereignis-Datenkellerspeicher rückgängig gemacht wird, und, wenn die rückgängig gemachte Aktion den zweiten Marker anzeigt, Bewirken, dass dann mehrere Aktionen auf dem Ereignis-Datenkellerspeicher rückgängig gemacht werden, bis eine rückgängig gemachte Aktion den ersten Marker anzeigt, und dann Bewirken, dass eine weitere Aktion auf dem Ereignis-Datenkellerspeicher rückgängig gemacht wird.
  • Entsprechend einem anderen Gesichtspunkt der vorliegenden Erfindung wird ein Computersystem geliefert, welches eine erste Applikation, welche einen Ereignis-Datenkellerspeicher besitzt, und eine zweite Applikation beinhaltet, welche Aktionen in der ersten Applikation bewirkt, wobei Aktionen in der ersten Applikation rückgängig gemacht werden, dadurch gekennzeichnet, dass die zweite Applikation so angeordnet ist, dass sie die erste Applikation dazu führt:
    Bewirken, dass ein erster Marker in ein Computer-File, welches bearbeitet wird, eingefügt wird, und dass er dann aus dem Com puter-File gelöscht wird, wobei beide Aktionen durch den Ereignis-Datenkellerspeicher aufgezeichnet werden;
    Ausführen wenigstens einer Aktion an dem Computer-File, welche durch den Ereignis-Datenkellerspeicher aufgezeichnet wird; Bewirken, dass ein zweiter Marker in das Computer-File eingefügt wird, und dass er dann aus dem Computer-File gelöscht wird, wobei beide Aktionen durch den Ereignis-Datenkellerspeicher aufgezeichnet werden; und
    Bewirken, dass die letzte Aktion auf dem Ereignis-Datenkellerspeicher rückgängig gemacht wird, und, wenn die rückgängig gemachte Aktion den zweiten Marker anzeigt, Bewirken, dass dann mehrere Aktionen auf dem Ereignis-Datenkellerspeicher rückgängig gemacht werden, bis eine rückgängig gemachte Aktion den ersten Marker anzeigt, und Bewirken, dass dann eine weitere Aktion auf dem Ereignis-Datenkellerspeicher rückgängig gemacht wird.
  • Deshalb gestattet die vorliegende Erfindung das Darstellen und Erkennen von Aktionen, welche auf dem Ereignis-Datenkellerspeicher platziert sind, sogar dann, wenn ein direkter Zugriff auf den Ereignis-Datenkellerspeicher nicht möglich ist.
  • In einer Ausführungsform ist die Applikation zusammen mit dem Ereignis-Datenkellerspeicher ein Textverarbeitungsprogramm. Die Aktionen, welche das Einfügen von Anfangs- und Ende-Markern bewirken, sind das Einfügen von Elementen in ein Dokument, welches von einem Textverarbeitungsprogramm verarbeitet wird. Ein derartiges Element ist ein Lesezeichen, wie es von Microsoft Word benutzt wird.
  • Die Verfahren, welche durch die Erfindung benutzt werden, können von einer zweiten Applikation durchgeführt werden, welche auf dem gleichen Computersystem wie die erste Applikation läuft, oder alternativ auf einem getrennten Computersystem. Eine solche zweite Applikation ist ein Spracherkennungspro gramm. Das Spracherkennungssystem kommuniziert mit der ersten Applikation, wobei eines von mehreren Verfahren benutzt wird, welche das OLE (Objektverknüpfen und -einbetten) einschließt. Das Spracherkennungssystem bewirkt Aktionen, welche in der ersten Applikation auszuführen sind, welche bewirken, dass die Aktionen auf dem Ereignis-Datenkellerspeicher platziert werden müssen. Das Spracherkennungssystem macht dann diese Aktionen rückgängig. Diese Aktionen führen zu identifizierbaren Markern, welche auf dem Ereignis-Datenkellerspeicher platziert werden. Zwischen diesen Aktionen führt das Spracherkennungssystem Aktionen und Funktionen in der ersten Applikation aus.
  • Wenn das Spracherkennungssystem Aktionen in der ersten Applikation rückgängig machen muss, bewirkt es, dass Aktionen rückgängig gemacht werden, und detektiert, ob eine Anzeige eines Ende- oder Anfang-Markers aus dem Ereignis-Datenkellerspeicher aufgrund einer oder mehrerer Aktionen des Rückgängigmachens entfernt wurde.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein allgemeiner Überblick über ein Computersystem, welches zwei Computerapplikationen beinhaltet, wobei eine davon einen Ereignis-Datenkellerspeicher nutzt;
  • 2 ist eine Ansicht eines Beispiels für einen Ereignis-Datenkellerspeicher;
  • 3 ist ein Flussdiagramm, welches die allgemeinen Schritte aufzeigt, welche beim Eingeben von Instruktionen an einen Ereignis-Datenkellerspeicher ausgeführt werden, entsprechend der vorliegenden Erfindung;
  • 4 ist eine Ansicht eines Ereignis-Datenkellerspeichers, wie er entsprechend der vorliegenden Erfindung bedient wird; und
  • 5 ist ein Flussdiagramm, welches Schritte aufzeigt, welche beim Lesen von Instruktionen aus einem Ereignis-Datenkellerspeicher ausgeführt werden, entsprechend der vorliegenden Erfindung.
  • DETAILLIERTE BESCHREIBUNG
  • Mit Bezug auf 1 wird ein Überblick über ein Computersystem gezeigt. Das Computersystem 10 kann irgendein Computer sein, welcher in der Lage ist, sequenziell ein Programm auszuführen, wobei Personal Computer, Minicomputer, Großrechner oder tragbare persönliche digitale Hilfsgeräte beinhaltet sind. Das Computersystem 10 läuft wenigstens auf einer Applikation 12, auf die hier als Applikation A Bezug genommen wird. Wie hier genutzt, wird eine Applikation als ein Programm oder ein ausführbarer Satz von Instruktionen definiert, welches bzw. welcher auf einem Computersystem läuft, wobei Betriebssysteme, Geräte-unabhängige Programme, Gerätetreiber, Nutzer-Interfaces, Wortprozessoren, Tabellenkalkulationen, Stapelprogramme und Simulatoren beinhaltet sind.
  • Applikation A akzeptiert z. B. eine Benutzereingabe 16 über ein Keyboard 14 und/oder eine Mauszeigervorrichtung 15. Wenn der Benutzer Aktionen eintippt in Form von Daten und Befehlen, führt die Applikation A 12 diese Aktionen aus.
  • Die Applikation A 12 speichert auch die ausgeführten Aktionen auf einem Ereignis-Datenkellerspeicher 18. Das Speichern jeder Aktion auf dem Ereignis-Datenkellerspeicher 18 ist gewöhnlich für den Benutzer nicht sichtbar. Der Benutzer ist einfach gewärtig, dass in jedem Punkt der Benutzer eine oder mehrere vo rausgegangene Aktionen rückgängig machen kann, indem er die Applikation A 12 anweist, dies zu tun.
  • Das Computersystem 10 lässt auch eine andere Applikation 20 laufen, auf die hier als Applikation B Bezug genommen wird. Die Applikation B 20 liefert auch ein Eingangssignal an die Applikation A 12, wie dies durch den Pfeil 26 gezeigt wird. Es gibt viele unterschiedliche Techniken, mit denen die Applikation B 20 ein Eingangssignal an die Applikation A 12 liefern kann. Diese beinhalten das Nachahmen des Eingangssignals eines Keyboards, wie z. B. von einem Keyboard 14, Zwischenverarbeitungskommunikation, den Austausch dynamischer Daten, das Schneiden und Einfügen von Puffern, das Verknüpfen und Einbetten eines Objekts und andere Techniken.
  • Die Applikation B20 ist eine vollständig getrennte Applikation, welche möglicherweise auf einem getrennten Computersystem (nicht gezeigt) laufen kann. In diesem Fall würde die Applikation B ein Eingangssignal 26 an die Applikation A 12 über ein Netzwerksystem liefern, welches eine RS-232, ALN, WAN, Sendeberechtigungsring oder Faseroptik beinhaltet. Alternativ ist die Applikation B 20 eine DLL (Dynamische Verknüpfungsbibliothek), welche mit der Applikation A 12 verknüpft ist oder durch diese genutzt wird, oder eine Subroutine, Bibliothek oder Klasse. Das System und Verfahren der vorliegenden Erfindung arbeitet in jeder Situation, bei der die Applikation A 12 keinen direkten Zugriff an ihren internen Mechanismus zulässt oder liefert, wobei deren Ereignis-Datenkellerspeicher 18 beinhaltet ist.
  • Z. B. ist die Applikation B 20 ein Spracherkennungssystem, welches das Eingangssignal 24 von einer Mikrofonvorrichtung 22 empfängt. Die Applikation B 20 führt eine Analyse und Wandlung des Audiosignals in ein Format durch, welches von der Applikation A 12 genutzt werden kann. In diesem Beispiel, falls die Applikation A 12 ein Textverarbeitungsprogramm ist, würde die Applikation B 20 Zeichenketten für das Einfügen in ein Dokument liefern. Die Applikation B 20 könnte auch Befehle liefern, um das Dokument zu bearbeiten, wie z. B. Schriftzeichensätze zu ändern, Textbereiche zu verschieben, Dokumente in einer Langzeitspeicherung zu sichern, etc..
  • Die Applikation A 12 kann sich der vielfältigen Eingabesignalquellen bewusst sein oder nicht. Jedoch führt die Applikation A 12 Aktionen durch, welche auf den Daten basieren, welche sie in der Reihenfolge, wie sie sie empfängt, erhält. Wenn die Applikation A 12 ein Eingangssignal empfängt, welches aus einer Mischung vom Keyboard 16 und der Applikation B 20 besteht, werden die Aktionen, welche die Applikation A 12 ausführt, vermischt. Die Aktionen, welche auf einem Ereignis-Datenkellerspeicher 18 abgelegt werden, werden auch gemischt.
  • Die Applikation B 20 kann häufig einige Informationen über den Zustand der Applikation A 12 bestimmen, wie dies durch den Pfeil 28 gezeigt wird. Diese Informationen können über direktes Abfragen der Applikation A 12 durch die Applikation B 20 erhalten werden, oder durch eine andere Vorrichtung des Überwachens der Applikation A 12. Was jedoch die Applikation B 20 nicht bestimmen kann, ist der Inhalt des Ereignis-Datenkellerspeichers 18 in der Applikation A 12. Da die Applikation A 12 Eingangssignale von mehr als einer Quelle empfängt, kann die Applikation B 20 nicht wissen, welche dazwischenliegenden Aktionen stattgefunden haben, welche den Inhalt des Ereignis-Datenkellerspeichers 18 beeinflussen.
  • Wenn ein Nutzer, um mit obigem Beispiel fortzufahren, Informationen über das Keyboard 14 hinzufügt sowie auch Sprachbefehle an die Applikation B 20 liefert, um den Text in der Textverarbeitungsapplikation A 12 zu manipulieren, wird das Leistungsmerkmal des Rückgängigmachens der Applikation A 12 nicht zwi schen den Keyboard-14-Aktionen oder den Sprach-24-Aktionen unterscheiden. Wenn die Applikation B 20 instruiert wird, eine vorausgegangene Aktion oder vorausgegangene Aktionen rückgängig zu machen, ist die Applikation B 20 nicht in der Lage, zu bestimmen, welche vorausgegangenen Aktionen durch sie implementiert wurden, und welche vorausgegangenen Aktionen von einer anderen Quelle gekommen sind.
  • Dies ist sogar problematischer im Bereich der Spracherkennung, wobei ein einzelner Sprachbefehl zu mehreren getrennten Textverarbeitungsschritten führen kann. Z. B. würde der Benutzerbefehl "Unterstreiche den letzten Satz" von der Applikation B 20 erfordern, die Applikation A 12 zu informieren, um zuerst den letzten Satz zu finden, den letzten Satz auszuwählen, den Text zu unterstreichen und zu dem vorausgegangenen Eingabesignalplatz im Dokument zurückzukehren. Wenn der Benutzer dann entscheidet, diese Aktion rückgängig zu machen, muss die Applikation B 20 wissen, wie sie genug Aktionen auf dem Ereignis-Datenkellerspeicher 18 rückgängig macht, um das Dokument bei der Textverarbeitungsapplikation A in deren vorherigen Zustand zurückzubringen (bevor der Satz unterstrichen wurde).
  • Ein Ereignis-Datenkellerspeicher 18, 2, ist ein Speicher einer Datenstruktur, wie sie in der Computerforschung gut bekannt ist. Dieser hat ein "oberes Ende" 30, welche Information gespeichert ist, und welche dann in einer LIFO-(Letzter Eingang-erster Ausgang-)Ordnung wiedergewonnen wird. Dieser besitzt auch ein "unteres Ende" 31, welches erreicht wird, wenn alle Einträge auf dem Speicher entfernt wurden. Im Falle eines Ereignis-Datenkellerspeichers 18 ist die Information, welche auf dem Speicher gespeichert wird, eine Beschreibung jeder Aktion, welche durch eine Applikation entsprechend der Eingabe eines Benutzers (oder einer anderen Applikation) ausgeführt wird. Jede Aktion wird sequenziell auf dem Ereignis-Datenkellerspeicher 18 gespeichert. Um eine Aktion rückgängig zu ma chen, wird die letzte Aktion, welche auf dem Speicher gespeichert ist, von dem Speicher entfernt, und die Applikation ergreift die Maßnahmen, die erforderlich sind, um die Aktion rückgängig zu machen. Man beachte, dass die Schritte, welche erforderlich sind, um eine Aktion rückgängig zu machen, häufig sehr kompliziert sind, abhängig von der Applikation. Viele Applikationen gestatten den Benutzern, mehrere Aktionen zur gleichen Zeit rückgängig zu machen, indem mehr als eine Aktion zum Rückgängigmachen ausgewählt wird, als dem Benutzer präsentiert wird.
  • Das interne Implementieren des Ereignis-Datenkellerspeichers 18 in der Applikation A 12 ist nicht wichtig. Obwohl ein Speicher eine gut bekannte Abstraktion der Datenstruktur ist, gibt es viele unterschiedliche Schemata zum Implementieren eines Speichers. Für diese Applikation wird ein Speicher als ein Datenspeichermechanismus definiert, welcher Information in einer "Letzte Eingabe-erste Ausgabe"-(LIFO-)Weise speichern und auslesen kann.
  • Da der Ereignis-Datenkellerspeicher 18 für die Applikation (Applikation A 12 z. B.) eine interne Datenstruktur ist, steht der Ereignis-Datenkellerspeicher 18 nicht zur Verfügung, um von anderen Applikationen untersucht und manipuliert zu werden. Deshalb können andere Applikationen nur den Ereignis-Datenkellerspeicher 18 über ein Interface mit der Applikation A nutzen, über welche Vorrichtung es auch immer die Applikation A gestattet, auf das Leistungsmerkmal des Rückgängigmachens zuzugreifen, welches durch den Ereignis-Datenkellerspeicher 18 implementiert ist.
  • Die generellen Schritte entsprechend der vorliegenden Erfindung zum Unterstützen eines Computersystems, auf dem eine Applikation läuft, wie z. B. die Applikation B 20, werden in 3 gezeigt. Im Schritt 100 sendet die Applikation B 20 ei nen Vorgang bzw, eine Aktion an die Applikation A 12, welche zu einem Anfang-Marker führt, welcher auf dem Ereignis-Datenkellerspeicher 18 platziert wird. Eine detailliertere Beschreibung derartiger Aktionen und von Anfang-Markern wird nachfolgend diskutiert.
  • Die Applikation B sendet dann eine oder mehrere Aktionen, welche durch die Applikation A auszuführen sind, Schritt 102. Das Ausführen jeder dieser Aktionen führt zu Aktionen (oder einer Beschreibung der ausgeführten Aktionen), welche auf dem Ereignis-Datenkellerspeicher 18 zu speichern sind.
  • Wenn die Applikation B 20 mit dem Übersenden der Folge von Aktionen für das Ausführen der Applikation A 12 aufgehört hat, sendet die Applikation B 20 eine Aktion an die Applikation A 12, welche zu einem Ende-Marker führt, welcher auf den Ereignis-Datenkellerspeicher 18 gesetzt wird.
  • Vorzugsweise sollte die Applikation B alle Schritte ohne die Applikation A ausführen, welche irgendwelche dazwischenliegenden Aktionen durchführt. In Abhängigkeit von Applikation A kann die Applikation B die Schritte in einem kritischen Bereich durchführen. Deshalb wird die Applikation A keine Aktionen durchführen oder irgendein Eingangssignal von irgendwelchen anderen Quellen akzeptieren, bevor die Applikation B alle Schritte beendet hat. In einer sicheren Vielverarbeitungsumgebung mit geeignetem Schließmechanismus sollte das kein Problem darstellen.
  • Obwohl 3 den Schritt 104 beinhaltet, zum Bewirken einer Aktion, welche einen Ende-Marker auf dem Speicher einfügt, ist dieser Schritt nicht notwendig. In gewissen Situationen muss die Applikation B 20 nur in der Lage sein, das Ende der Folge von Aktionen zu erkennen, welche sie an die Applikation A gesendet hat. Ein derartiges Beispiel ist gegeben, wenn die Ap plikation A nur von der Applikation B Eingangssignale und Befehle empfängt. Deshalb wird der Ereignis-Datenkellerspeicher 18 nur Aktionen enthalten, welche durch die Applikation B bewirkt werden. Die Applikation B müsste noch eine Gruppe von Aktionen erkennen, welche durch sie als eine Aktion gesendet wurden, aber müsste nicht ihre Aktionen von einer anderen Quelle unterscheiden. In einem solchen Fall würden die Anfangs-Marker jede Gruppe auf Aktionen der Applikation B beschränken. Es würden keine Ende-Marker notwendig sein.
  • Eine Ausführungsform zum Manipulieren eines Ereignis-Datenkellerspeichers 18 entsprechend der vorliegenden Erfindung wird in 4 gezeigt. Es werden Marker in dem Ereignis-Datenkellerspeicher 18 gesetzt, um den Anfang und das Ende des Satzes von Aktionen, welche durch eine Applikation, wie z. B. Applikation B 20 ausgeführt wird, zu begrenzen. Startet man vom unteren Ende 31 des Ereignis-Datenkellerspeichers 18, so befindet sich die Aktion A1 und A2 32 bereits auf dem Ereignis-Datenkellerspeicher 18. Wenn die Applikation B 20 startet, eine Folge von Aktionen an die Applikation A 12 zu senden, sendet die Applikation B zuerst eine Aktion herüber, welche einen identifizierbaren Anfang-Marker 34a bewirkt, welcher auf dem Ereignis-Datenspeicher 18 zu setzen ist.
  • Die Aktion, welche bewirkt, dass ein Anfang-Marker 34a auf dem Ereignis-Datenspeicher 18 gesetzt wird, kann eine aus einem großen Bereich von Aktionen sein. Die einzige Anforderung besteht darin, dass die Applikation B 20 den Anfang-Marker 34a erkennen kann, wenn die Aktion rückgängig gemacht ist. Vorzugsweise sollte die Aktion auch für einen Benutzer unsichtbar sein, welcher das Computersystem beobachtet und benutzt. Jede Aktion, welche als eine Indikation für den Anfang eines Satzes von Aktionen durch die Applikation B 20 erkannt wird, wäre geeignet. Einige Beispiele von möglichen Anfang-Markern sind: Einfügen eines unsichtbaren Textes in einem Textverarbeitungs dokument oder das Auswählen eines Bereiches von Zellen in einer Tabellenkalkulationsapplikation. In einer bevorzugten Ausführungsform, welche nachfolgend diskutiert wird, beinhaltet die Aktion das Einfügen eines Lesezeichens in ein Textverarbeitungsdokument. Das Lesezeichen ist für einen Benutzer unsichtbar und beinhaltet einen einzigartigen Namen, welcher als eine Identifikation für einen Platz innerhalb des Dokuments auf dem Textprozessor benutzt wird.
  • Sobald die Aktion, welche den Anfang-Marker 34a auf den Ereignisdatenspeicher 18 einfügte, ausgeführt wurde, sendet die Applikation B 20 eine Aktion herüber, welche die vorausgehende Aktion rückgängig macht. Man beachte, dass die vorausgehende Aktion durch eine neue Aktion rückgängig gemacht wird, nicht durch Nutzen des Leistungsmerkmals zum Rückgängigmachen der Applikation A 12. Deshalb wird die neue Aktion auch auf dem Ereignis-Datenspeicher 18 wie eine Beseitigung eines Anfang-Markers 36a gespeichert.
  • Nun sendet die Applikation B eine oder mehrere Aktionen 38 herüber, welche Funktionen in der Applikation A 12 ausführen und welche auf dem Ereignis-Datenspeicher 18 gespeichert werden. Beim Abschluss der Aktionen bewirkt die Applikation B 20 eine Aktion, welche einen Ende-Marker 40a auf dem Ereignis-Datenspeicher 18 einfügen wird. Diese Aktion, welche einen Ende-Marker 40a bewirkt, ist ähnlich der Aktion, welche bewirkte, dass der Anfang-Marker 34a eingefügt wird.
  • In der bevorzugten Ausführungsform sollten die Aktionen unterschiedlich sein, damit sie darin unterscheidbar sind, dass die Applikation B den Unterschied zwischen einer Aktion, welche einen Anfang-Marker 34a signalisiert, und einer Aktion, welche einen Ende-Marker 40a signalisiert, detektieren kann. Dies vermeidet eine Situation, in welcher, falls ein Marker als ein Ende-Marker dient, er von dem Ereignis-Datenkellerspeicher 18 entfernt wird, die Applikation B 20 Aktionen von einer anderen Eingabequelle als von deren eigener durcheinander bringen könnte. Mit anderen Worten, falls der Ende-Marker 40a entfernt wird, kann die Applikation B 20 vernünftigerweise erwarten, dass die Aktionen A3–A5 38 solche Aktionen sind, die durch eine andere Eingabequelle bewirkt werden, und diese Aktionen in einer ungeeigneten Weise rückgängig gemacht werden. Durch das Nutzen eines Ende-Markers, welcher unterscheidbar von einem Anfang-Marker ist, kann dieses Problem vermieden werden. Sogar wenn der Ereignis-Datenkellerspeicher 18 verfälscht wird, ist die Applikation B 20 in der Lage, auf dem Ereignis-Datenkellerspeicher 18 ihre Aktionen wiederherzustellen und wieder zu erkennen.
  • Die Applikation B sendet dann eine Aktion hinüber, welche die vorausgehende Aktion rückgängig macht und welche zu einem Entfernen des Ende-Markers 42a führt, welcher auf dem Ereignis-Datenkellerspeicher 18 platziert ist.
  • Eine Aktion A6 44 wurde dann auf dem Ereignis-Datenkellerspeicher 18 durch ein Eingangssignal bzw. eine Eigabe an die Applikation A 12 platziert, anders als das von Applikation B 20. Z . B . kann der Benutzer eine Eingabe von einem Keyboard 14 getippt haben.
  • Wen man mit dem Ereignis-Datenkellerspeicher 18, wie er in 4 gezeigt wird, fortfährt, hat die Applikation B 20 eine andere Aktion herübergeschickt, die Aktion A7 44. Obwohl sie sogar eine einzelne Aktion ist, wird sie ebenfalls durch zwei Anfangsaktionen eingeleitet, welche bewirken, dass ein Anfang-Marker eingefügt 34b und entfernt 36b wird; und ihr folgen zwei Ende-Aktionen, welche bewirken, dass ein Ende-Marker 40b eingefügt und 42b entfernt wird.
  • Obwohl die Aktionen 34, 36, welche bewirken, dass der Anfang-Marker gesetzt wird, identisch für jeden Satz von Aktionen sind, müssen die Aktionen 34a und 34b, 36a und 36b nicht identisch sein. Die Applikation B kann einen unterschiedlichen Anfang-Marker für jeden Satz von Aktionen, welchen sie hinüberschickt, benutzen. Die Aktionen 34, 36 könnten einen einzigartigen Anfang-Marker erzeugen. Die Applikation B kann leicht einen einzigartigen Marker oder sogar eine Inkrementierserienzahl erzeugen, um den Anfang jeder Folge von Aktionen zu markieren. Auf diese Weise kann die Applikation B die gesamte Zahl von Aktionssätzen verfolgen, welche sie an die Applikation A gesendet hat. Die Aktionen 40, 42 des Ende-Markers können auch ganz unterschiedlich sein.
  • Schließlich, wie dies in 4 gezeigt wird, wurde eine letzte Aktion A8 46 von einer anderen Quelle als der Applikation B ausgeführt.
  • Die Schritte, welche beim Rückgängigmachen einer Aktion ausgeführt werden, werden in 5 gezeigt. Die Applikation B 20 erfordert, dass eine letzte Aktion rückgängig gemacht wird, entweder durch einen internen Login oder entsprechend einer Forderung des Benutzers, die letzte Aktion rückgängig zu machen. Die Applikation B 20 instruiert die Applikation A 12, eine Aktion rückgängig zu machen, Schritt 122.
  • Die Applikation B legt dann fest, ob die rückgängig gemachte Aktion einen identifizierbaren Ende-Marker 42, 4, Schritt 124, 5, anzeigt. Bei diesem Bestimmen fragt die Applikation B 20 die Applikation A, ob ein bestimmter Marker in der Applikation vorliegt. Z. B. würde bei einer Textverarbeitungsapplikation die Aktion des Rückgängigmachens das Einfügen eines Lesezeichens im Dokument bewirken. Die Applikation B 20 würde die Applikation A 12 fragen, ob ein bestimmtes Lesezeichen in dem Dokument vorhanden war. Wenn das Lesezeichen vor handen war, so zeigt dies der Applikation B 20, dass der Ereignis-Datenkellerspeicher einen Ende-Marker 42b enthielt. Die Applikation B 20 kann auch irgendeine Anzahl von Techniken nutzen, um zu bestimmen, ob die Aktion des Rückgängigmachens einen Ende-Marker anzeigt, wobei die Analyse des Zustands der Applikation A 12 und das Interpretieren der angezeigten Zustände der Applikation A 12 über eine Bildschirmsicherung beinhaltet ist.
  • Wenn im Schritt 124 festgelegt wird, dass die Aktion des Rückgängigmachens keinen Ende-Marker anzeigt, dann stoppt die Applikation B 20, Schritt 132. Da die Aktion, welche gerade rückgängig gemacht wurde, ursprünglich nicht durch die Applikation B 20 bewirkt wurde, fährt die Applikation B 20 nicht weiter fort. Wenn ein Benutzer wünscht, dass mehrere Aktionen rückgängig gemacht werden, wird der Benutzer der Applikation B anzeigen, dass eine andere Aktion rückgängig gemacht wird, oder der Applikation A anzeigen, eine Aktion auf eine andere Weise rückgängig zu machen, möglicherweise über das Keyboard 14 oder ein Maus-/Menü-Interface (nicht gezeigt).
  • Wenn im Schritt 124 festgelegt wird, dass die Aktion des Rückgängigmachens keinen Ende-Marker anzeigt, dann instruiert die Applikation B die Applikation A, eine andere Aktion rückgängig zu machen, Schritt 126.
  • Im Schritt 128 bestimmt dann die Applikation B, ob die Aktion des Rückgängigmachens einen identifizierbaren Anfang-Marker 36, 4, anzeigt. Die Analyse und das Bestimmen sind ähnlich zu dem vorher Diskutierten. Wenn ein identifizierbarer Anfang-Marker nicht detektiert wird, dann wird eine andere Aktion rückgängig gemacht, Schritt 126, und geprüft, Schritt 128. Damit wird fortgefahren, bis ein Anfang-Marker im Schritt 128 detektiert wird.
  • Die Applikation B 20 kann nun bestimmen, dass sie alle Aktionen rückgängig gemacht hat, welche sie in der Applikation A 20 bewirkt hat. Die Applikation B 20 hat deshalb größere Kontrolle über die Aktionen, welche sie in der Applikation A 12 bewirkt, wobei die Fähigkeit beinhaltet ist, ihre Aktionen in einer anderen Art und Weise zu gruppieren als durch die Applikation A zum Speichern auf dem Ereignis-Datenkellerspeicher 18 erzwungen wird.
  • Im letzten Schritt 130, wie er für die bevorzugte Ausführungsform benötigt wird, bewirkt die Applikation B 20, dass eine weitere Aktion rückgängig gemacht wird. Dies entfernt dann die Anzeige, welche benutzt wurde, um zu bewirken, dass ein Anfang-Marker 34 auf dem Ereignis-Datenkellerspeicher 18 eingefügt wird.
  • Eine Applikation, welche die vorliegende Erfindung aufweist, ist ein Spracherkennungssystem, welches von Kurzweil Applied Intelligence of Waltham, MA, hergestellt wird. In einer Ausführungsform läuft das Spracherkennungssystem auf einem Personal Computer, auf dem Microsoft Windows(TM) NT läuft. Das Spracherkennungssystem ist über ein Interface mit einer anderen laufenden Applikation verbunden, wie z. B. einem Textverarbeitungsprogramm, wie z. B. Microsoft Word(TM). Ein Benutzer, welcher eine Eingabevorrichtung, wie z. B. ein Mikrofon oder ein Headset, nutzt, kann Wörter oder Befehle sprechen. Das Audiosignal wird in Digitaldaten gewandelt, wobei eine A/D-Sound-Einsteckkarte benutzt wird, welche nahezu überall erhältlich ist. Ein Hersteller derartiger Sound-Karten ist SOUNDBLASTER (TM) Inc..
  • Das Spracherkennungssystem kommuniziert vorzugsweise mit Microsoft Word, wobei OLE (Objektverknüpfen und -einbetten) genutzt wird. Andere Verfahren der Kommunikation zwischen den Applikationen beinhalten DDE (Dynamischer Datenaustausch) und eine Keyboard-Simulation.
  • Die Microsoft Word-Version 6.0 beinhaltet ein Leistungsmerkmal zum Rückgängigmachen, welches einem Benutzer gestattet, eine oder mehrere Aktionen zur gleichen Zeit rückgängig zu machen. Ein Pull-down-Menü zeigt eine Liste der vorausgegangenen Aktionen, wobei einem Nutzer gestattet wird, auszuwählen, wie viele Aktionen rückgängig gemacht werden. Ein Leistungsmerkmal zum Wiederherstellen ist auch erhältlich, welches einem Nutzer gestattet, alles oder einen Teil der vorausgegangenen rückgängig gemachten Aktionen wiederherzustellen.
  • In einer bevorzugten Ausführungsform der vorliegenden Erfindung benutzt das Spracherkennungssystem Microsoft Word-Lesezeichen, um Aktionen zu bewirken, die Anfang-Marker und Ende-Marker auf den Ereignis-Datenkellerspeicher setzen. Ein Code, geschrieben in Microsoft WordBasic, wird in Anhang A gezeigt, welcher dieses Leistungsmerkmal implementiert hat.
  • Wenn das Spracherkennungssystem dabei ist, ein Eingangssignal bzw. eine Eingabe an Microsoft Word zu senden, wird ein Lesezeichen mit dem Namen "KVWin undostart" ("KVWin starte Rückgängigmachen") in das Dokument eingefügt. Der Name ist willkürlich gewählt, die einzige Forderung, die besteht, ist die, dass der Name unterschiedlich von dem Namen ist, welcher für ein Ende-Lesezeichen benutzt wird. Lesezeichen sind für die Benutzer nicht sichtbar. Wo das Lesezeichen im Dokument eingefügt wird, ist nicht bedeutend. Andere Textverarbeitungsprogramme haben Leistungsmerkmale, welche ähnlich den Lesezeichen sind, obwohl der Term "Lesezeichen" vielleicht nicht verwendet wird. Bei einem anderen Textverarbeitungsprogramm würde ein Leistungsmerkmal ähnlich der Funktionalität eines Microsoft Word-Lesezeichens angewendet werden.
  • Sofort nach dem Einfügen des Lesezeichens wird es entfernt. Dieser Vorgang hinterlässt das Dokument unverändert, jedoch wird das Einfügen und das Entfernen des Lesezeichens in dem Ereignis-Datenkellerspeicher aufgezeichnet.
  • Nach dem Ausführen von Aktionen durch das Spracherkennungssystem an dem Dokument in Microsoft Word, wird ein Lesezeichen mit dem Namen "KVWin_undoend" ("KVWin Ende des Rückgängigmachens") in dem Dokument eingefügt und dann entfernt. Wiederum werden diese Aktionen auf dem Ereignis-Datenkellerspeicher aufgezeichnet.
  • Wenn das Spracherkennungssystem eine Aktion rückgängig zu machen wünscht, wird zuerst eine Aktion rückgängig gemacht. Dann wird das Dokument geprüft, um zu sehen, ob das Lesezeichen "KVWin_undoend" vorliegt. Microsoft Word beinhaltet eine Funktion, welche einem Benutzer oder einer Applikation gestattet, zu prüfen, ob ein Lesezeichen vorliegt, ohne zu dem Lesezeichen zu springen, falls dieses existiert.
  • Wenn das Lesezeichen nicht existiert, dann wird keine weitere Aktion ausgeführt. Wenn jedoch das Lesezeichen vorliegt, wird eine Schleife eingefügt, wodurch Aktionen rückgängig gemacht werden, und das Dokument wird geprüft, ob das Lesezeichen "KVWin_undobegin" vorliegt. Wenn das Lesezeichen plötzlich im Dokument aufscheint, signalisiert dies, dass der Satz von Aktionen, welcher durch das Spracherkennungssystem ausgeführt wird, (welche nun rückgängig gemacht werden) nun vollständig ist. Eine weitere Aktion zum Rückgängigmachen wird ausgeführt, um das "KBWin_undobegin"-Lesezeichen zu entfernen (dadurch wird sein Einfügen in das Dokument rückgängig gemacht).
  • Während die Aktionen rückgängig gemacht werden, kann das Aktualisieren des Bildschirms von Microsoft Word, falls notwendig, abgeschaltet werden, um zu vermeiden, dass das Dokument "unru hig" erscheint, während die Aktionen rückgängig gemacht werden.
  • Die vorliegende Erfindung arbeitet auch beim Wiederherstellen von Aktionen, wobei das Leistungsmerkmal des Wiederherstellens genutzt wird, welches in Microsoft Word erhältlich ist. Wie in Anhang A gezeigt wird, ist das Implementieren des Wiederherstellens ähnlich dem Implementieren des Rückgängigmachens, außer, dass der Anfang-Marker, "KVWin_undobegin", zuerst geprüft wird, gefolgt von einer Schleife, welche Aktionen wiederherstellt, und Prüfungen nach dem Ende-Marker, "KVWin_undoend". Dies funktioniert korrekt dadurch, dass Microsoft Word Befehle des Rückgängigmachens auf einem "Speicher zum Wiederherstellen" speichert, wobei einem Nutzer gestattet wird, einen oder alle Befehle des Rückgängigmachens wiederherzustellen. Da die Aktionen sequenziell aus dem Ereignis-Datenkellerspeicher geworfen werden und auf dem Wiederherstellspeicher platziert werden, ist die Reihenfolge der Marker ("KVWin_undobegin" und "KVWin_undoend") in umgekehrter Reihenfolge auf dem Wiederherstellspeicher. Die vorliegende Erfindung gestattet jede Kombination von Vorgängen des Rückgängigmachens und von Vorgängen des Wiederherstellens und wird unter allen Umständen korrekt funktionieren.
  • Außerdem kann es mehr als eine Applikation geben, welche dieses Leistungsmerkmal benutzt, während Aktionen an die eine Applikation mit einem Ereignis-Datenkellerspeicher gesendet werden. Tatsächlich hat jede Applikation ihre Aktionen als einen Satz gruppiert, und jede Applikation kann Aktionen von sich selbst oder einer anderen rückgängig machen. In jedem Fall wird der Satz von Aktionen als eine Aktion zum Rückgängigmachen behandelt.
  • Sollte ein Benutzer eine Aktion rückgängig machen, wobei er das Keyboard 14 benutzt und dadurch einen Ende-Marker aus dem Ereignis-Datenkellerspeicher 18 entfernen, sind das Computersystem und die Applikationen weiterhin nutzbar. Die Applikation B 20 wird bei einer Instruktion, eine Aktion rückgängig zu machen, einfach eine Aktion anstatt einer Gruppe von Aktionen rückgängig machen. Der Benutzer kann dann die Applikation B 20 instruieren, mehrere Aktionen rückgängig zu machen, oder die Operationen des Rückgängigmachens auszuführen, indem das Keyboard 14 genutzt wird. Die Schritte der Erfindung garantieren, dass ein Anfang-Marker immer durch einen Ende-Marker gefolgt wird, ohne dass ein anderer Anfang-Marker dazwischenliegt. Deshalb, falls ein Ereignis-Datenkellerspeicher 18 einen Ende-Marker verlieren sollte, würde die Applikation B niemals mehr Aktionen rückgängig machen, als sie sollte, sie würde nur weniger Aktionen rückgängig machen.
  • Entsprechend gestattet die Erfindung das Verfolgen und Gruppieren des Inhalts eines Ereignis-Datenkellerspeichers aus der Ferne. Eine Applikation kann schließlich identifizieren, welche Aktionen durch sie ausgeführt wurden, und kann diese Aktionen als eine Gruppe oder jeweils einzeln rückgängig machen.
  • Auch wenn verschiedene Änderungen in den obigen Konstruktionen gemacht werden können, ohne vom Umfang der Erfindung, wie sie in den angehängten Ansprüchen definiert werden, abzuweichen, ist davon auszugehen, dass all die Dinge, welche in obiger Beschreibung enthalten sind oder in den beigefügten Zeichnungen gezeigt werden, der Illustration dienen und nicht eine einschränkende Wirkung haben.
  • Anhang A
    Figure 00240001

Claims (9)

  1. Verfahren zur Computerbearbeitung eines Computer-Files mit einer ersten Applikation, welche einen Aktion-Ereignis-Datenkellerspeicher besitzt, und mit einer zweiten Applikation, welche Aktionen in der ersten Applikation auslöst, wobei Aktionen in der ersten Applikation rückgängig gemacht werden, gekennzeichnet durch die Schritte: die zweite Applikation veranlasst die erste Applikation: dass ein erster Marker in das Computer-File eingefügt wird und dass er dann aus dem Computer-File gelöscht wird, wobei beide Aktionen von dem Ereignis-Datenkellerspeicher aufgezeichnet werden; Ausführen von wenigstens einer Aktion an dem Computer-File, welche durch den Ereignis-Datenkellerspeicher aufgezeichnet wird; Bewirken, dass ein zweiter Marker in das Computer-File eingefügt wird und dass er dann aus dem Computer-File gelöscht wird, wobei beide Aktionen durch den Ereignis-Datenkellerspeicher aufgezeichnet werden; und Bewirken, dass die letzte Aktion auf dem Ereignis-Datenkellerspeicher rückgängig gemacht wird, und, wenn die rückgängig gemachte Aktion den zweiten Marker anzeigt, Bewirken, dass dann mehrere Aktionen auf dem Ereignis-Datenkellerspeicher rückgängig gemacht werden, bis eine rückgängige Aktion den ersten Marker anzeigt, und dann Bewirken, dass eine weitere Aktion auf dem historischen Kellerspeicher rückgängig gemacht wird.
  2. Verfahren nach Anspruch 1, wobei die zweite Applikation eine Spracherkennungsapplikation ist.
  3. Verfahren nach Anspruch 1, wobei die erste Applikation eine Wortbearbeitungsapplikation ist.
  4. Verfahren nach Anspruch 1, wobei die erste Applikation eine Tabellenkalkulationsapplikation ist.
  5. Verfahren nach Anspruch 1, wobei die Marker Lesezeichen sind.
  6. Verfahren nach Anspruch 1, wobei die Marker ein ausgewählter Bereich der Tabellenkalkulationszellen sind.
  7. Computerprogramm, welches eine Computerprogramm-Codiervorrichtung zum Ausführen aller Schritte der vorausgegangenen Ansprüche besitzt, wenn das Programm auf einem Computer läuft.
  8. Computerprogramm nach Anspruch 7, welches in einem vom Computer lesbaren Medium aufgenommen bzw. integriert ist.
  9. Computersystem (10), welches eine erste Applikation (12) enthält, welche einen Ereignis-Datenkellerspeicher (18) besitzt, und eine zweite Applikation (20) enthält, welche Aktionen in der ersten Applikation (12) bewirkt, wobei die Aktionen in der ersten Applikation (12) rückgängig gemacht werden, dadurch gekennzeichnet, dass die zweite Applikation (20) so angeordnet ist, dass sie die erste Applikation (12) dazu führt: Bewirken, dass ein erster Marker in ein Computer-File eingefügt wird, welches bearbeitet wird, und dass er dann aus dem Computer-File gelöscht wird, wobei beide Aktionen durch den Ereignis-Datenkellerspeicher (18) aufgezeichnet werden; Ausführen wenigstens einer Aktion an dem Computer-File, welche durch den Ereignis-Datenkellerspeicher (18) aufgezeichnet wird; Bewirken, dass ein zweiter Marker in dem Computer-File eingefügt wird, und dass er dann aus dem Computer-File gelöscht wird, wobei beide Aktionen durch den Ereignis-Datenkellerspeicher (18) aufgezeichnet werden; und Bewirken, dass die letzte Aktion auf dem Ereignis-Datenkellerspeicher (18) rückgängig gemacht wird, und, wenn die rückgängig gemachte Aktion den zweiten Marker anzeigt, Bewirken, dass dann mehrere Aktionen auf dem Ereignis-Datenkellerspeicher (18) rückgängig gemacht werden, bis eine rückgängig gemachte Aktion den ersten Marker anzeigt, und Bewirken, dass dann eine weitere Aktion auf dem Ereignis-Datenkellerspeicher (18) rückgängig gemacht wird.
DE69722652T 1996-11-14 1997-11-14 System und verfahren zum ferngruppieren des inhalts eines historischen kellerspeichers Expired - Lifetime DE69722652T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/749,140 US5688826A (en) 1995-11-16 1996-11-14 Excitatory amino acid derivatives
PCT/US1997/020737 WO1998021669A1 (en) 1996-11-14 1997-11-14 System and method for remotely grouping contents of an action history stack
US749140 2000-12-27

Publications (2)

Publication Number Publication Date
DE69722652D1 DE69722652D1 (de) 2003-07-10
DE69722652T2 true DE69722652T2 (de) 2004-05-13

Family

ID=25012436

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69722652T Expired - Lifetime DE69722652T2 (de) 1996-11-14 1997-11-14 System und verfahren zum ferngruppieren des inhalts eines historischen kellerspeichers

Country Status (7)

Country Link
US (1) US5688826A (de)
EP (1) EP0938712B1 (de)
JP (1) JP2001504610A (de)
AT (1) ATE242510T1 (de)
CA (1) CA2270461A1 (de)
DE (1) DE69722652T2 (de)
WO (1) WO1998021669A1 (de)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19801646A1 (de) * 1998-01-17 1999-07-22 Bayer Ag Substituierte alpha,beta-annellierte Butyrolactone
DE19801636A1 (de) 1998-01-17 1999-07-22 Bayer Ag Substituierte bicyclische Lactone
DE19801647A1 (de) 1998-01-17 1999-07-22 Bayer Ag Substituierte beta,gamma-annellierte Lactone
PE20001236A1 (es) * 1998-11-13 2000-11-10 Lilly Co Eli Moduladores del receptor de aminoacidos excitadores
US6555564B1 (en) * 1999-03-04 2003-04-29 The Board Of Trustees Of The University Of Illinois Neuropharmacological treatments of sleep-related breathing disorders
FR2793248B1 (fr) * 1999-05-03 2001-06-29 Adir Nouveaux derives de 2,3-methano-aminoacides, leur procede de preparation et les compositions pharmaceutiques qui les contiennent
GB2355982A (en) * 1999-11-03 2001-05-09 Lilly Co Eli Heterocyclic amino acids
US20040116489A1 (en) * 2002-02-12 2004-06-17 Massey Steven Marc Synthetic excitatory amino acids
US20050192273A1 (en) * 2002-04-03 2005-09-01 Johnson Bryan G. Therapy for psychoses combining an atypical antipsychotic and an mglu2/3 receptor agonist
CN100482680C (zh) * 2002-06-11 2009-04-29 伊莱利利公司 兴奋性氨基酸前药
NZ556437A (en) * 2002-06-11 2008-11-28 Lilly Co Eli Prodrugs of excitatory amino acids
EP2258359A3 (de) 2005-08-26 2011-04-06 Braincells, Inc. Neurogenese durch Modulation des Muscarinrezeptors mit Sabcomelin
JP2009506069A (ja) 2005-08-26 2009-02-12 ブレインセルス,インコーポレイティド ムスカリン性受容体調節による神経発生
AU2006304787A1 (en) 2005-10-21 2007-04-26 Braincells, Inc. Modulation of neurogenesis by PDE inhibition
EP1780637A1 (de) * 2005-10-25 2007-05-02 Siemens Aktiengesellschaft Verfahren zur Zurücknahme ausgeführter Aktionen mittels einer grafischen Benutzeroberfläche
CA2625210A1 (en) 2005-10-31 2007-05-10 Braincells, Inc. Gaba receptor mediated modulation of neurogenesis
US20100216734A1 (en) 2006-03-08 2010-08-26 Braincells, Inc. Modulation of neurogenesis by nootropic agents
AU2007249399A1 (en) 2006-05-09 2007-11-22 Braincells, Inc. Neurogenesis by modulating angiotensin
US7678808B2 (en) 2006-05-09 2010-03-16 Braincells, Inc. 5 HT receptor mediated neurogenesis
EP2068872A1 (de) * 2006-09-08 2009-06-17 Braincells, Inc. Kombinationen mit einem 4-acylaminopyridin-derivat
US20100184806A1 (en) 2006-09-19 2010-07-22 Braincells, Inc. Modulation of neurogenesis by ppar agents
EP2242916B1 (de) * 2008-02-20 2015-06-24 Alstom Technology Ltd Gasturbine
WO2010099217A1 (en) 2009-02-25 2010-09-02 Braincells, Inc. Modulation of neurogenesis using d-cycloserine combinations
AR079343A1 (es) * 2009-12-21 2012-01-18 Lilly Co Eli Compuesto de acido 2-amino-4-(4h-1,2,4-triazol-3-ilsulfanil)biciclo[3.1.0]hexano-2,6-dicarboxilico, composicion farmaceutica que lo comprende y su uso para preparar un medicamento util para tratar un trastorno psiquiatrico
US8735397B2 (en) * 2010-03-29 2014-05-27 Vanderbilt University Method for treating schizophrenia and related diseases
AU2012271024B2 (en) 2011-06-17 2015-07-09 Eli Lilly And Company Bicyclo (3.1.0) hexane- 2, 6 -dicarboxylic acid derivatives as mGlu2 receptor agonist
AU2014253672B2 (en) 2013-04-19 2019-05-30 Commonwealth Scientific And Industrial Research Organisation Checking undoability of an API-controlled computing system
KR101683448B1 (ko) * 2014-12-02 2016-12-07 주식회사 인프라웨어 복합 명령에 대한 실행 취소 방법
US20220084491A1 (en) * 2018-12-28 2022-03-17 Roland Corporation Control device, electronic musical instrument system, and control method

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2572842A (en) * 1947-08-05 1951-10-30 Du Pont The n-carboanhydride of 2-amino-4, 6, 6-trimethylheptanoic acid and polymers therefrom
US4536330A (en) * 1982-09-23 1985-08-20 International Flavors & Fragrances Inc. 1-Hydroxymethyl-2-acyl cyclopropane derivatives and esters and cyclic condensation products thereof, organoleptic uses of same and processes for preparing same
JP2993528B2 (ja) * 1991-05-18 1999-12-20 富士通株式会社 テキスト管理・復元方式
IT1256823B (it) * 1992-05-14 1995-12-21 Olivetti & Co Spa Calcolatore portatile con annotazioni verbali.
CA2147380C (en) * 1992-12-23 2000-07-18 Object Technology Licensing Corporation Atomic command system
GB9325368D0 (en) * 1993-12-10 1994-02-16 Univ Bristol Organic compounds
PL182285B1 (pl) * 1994-08-12 2001-12-31 Lilly Co Eli Syntetyczne aminokwasy oraz ich estry i srodki farmaceutyczne je zawierajace PL PL PL PL PL PL PL
EP0776201B1 (de) * 1994-08-12 2001-10-17 Eli Lilly And Company Behandlung von Angstzuständen
AU3325095A (en) * 1994-08-12 1996-03-07 Eli Lilly And Company Composition and method for protection against drug dependency
DE69513832T2 (de) * 1994-09-08 2000-04-13 Eli Lilly And Co., Indianapolis Exzitatorische aminosäure-rezeptor-antagonisten

Also Published As

Publication number Publication date
JP2001504610A (ja) 2001-04-03
EP0938712B1 (de) 2003-06-04
CA2270461A1 (en) 1998-05-22
DE69722652D1 (de) 2003-07-10
EP0938712A1 (de) 1999-09-01
ATE242510T1 (de) 2003-06-15
US5688826A (en) 1997-11-18
WO1998021669A1 (en) 1998-05-22

Similar Documents

Publication Publication Date Title
DE69722652T2 (de) System und verfahren zum ferngruppieren des inhalts eines historischen kellerspeichers
DE3750188T2 (de) Verfahren zur In-Linie Implementierung einer Vorstellung in einem Informationsverarbeitungssystem.
DE3783286T2 (de) Eingabeschnittstelle.
DE3789724T2 (de) System zur Prüfung von interaktiver Software.
DE69030862T2 (de) Automatisches Ikonerzeugungssystem
DE69634459T2 (de) Verfahren und Anordnung zum Vergleichen von strukturierten Dokumenten
DE3853512T2 (de) Einrichtung für Rechner oder rechnergesteuerte Systeme zum Erzeugen einer Hilfe-Anzeige.
DE69332727T2 (de) Informationsverarbeitungsgerät
DE68928775T2 (de) Verfahren und Vorrichtung zur Herstellung einer Zusammenfassung eines Dokumentes
DE68929038T2 (de) Verfahren zur Verarbeitung von digitalen Textdaten
DE68928693T2 (de) Verfahren zur Behandlung von digitalen Textdaten
DE69720821T2 (de) Fehlersuchsystem für Programme mit einer graphischen Benutzerschnittstelle
DE69232110T2 (de) Darstellungssystem von Geschichtsinhalt für einen Informationsprozessor
DE60308952T2 (de) Verfahren und System zur Anzeige und Verknüpfung von Gegenständen aus elektronischer Tinte mit erkanntem Text und Objekten
DE19706512B4 (de) Echtzeit-Ereignisanordnung in einem elektronischen Ablaufdiagramm
DE69122975T2 (de) Verfahren und Vorrichtung zum Anzeigen und Editieren von mathematischen Ausdrücken in Textformat
DE69332132T2 (de) Anzeige der Wechselwirkung zwischen Anwendungsprogrammen und Daten
DE69819690T2 (de) Spracherkennungsvorrichtung unter verwendung eines befehlslexikons
DE10135445A1 (de) Integriertes Verfahren für das Schaffen einer aktualisierbaren Netzabfrage
DE102005008520A1 (de) Verfahren zum Überwachen eines Verzeichnisses in einem Computersystem, Computerprogramm-Produkt und Computersystem zum Ausführen dieses Verfahrens
DE69622161T2 (de) Rechnersystem mit Kontextumschaltung und Programmentwicklung dafür
DE102005032046A1 (de) Verfahren, System und Computerprogramm-Produkt zum Übertragen von Daten aus einer Dokumentenanwendung in eine Datenanwendung
DE2801610A1 (de) Verfahren zum definieren von anfangswerten fuer die textverarbeitung
DE69425480T2 (de) Dokumentaufbereitungsapparat
DE102004009676A1 (de) Verfahren und Systeme zum Erzeugen von Unterstützungsdateien für Befehle

Legal Events

Date Code Title Description
8364 No opposition during term of opposition