-
HINTERGRUND
-
Aspekte der vorliegenden Spezifikation betreffen computergestützte Kalendersysteme. Insbesondere betrifft die vorliegende Beschreibung die Anzeige mehrerer Kalendereinträge durch ein computergestütztes Kalendersystem.
-
Elektronische Kalenderanwendungen gestatten Benutzern, anberaumte Ereignisse durch Speicherung separater Kalendereinträge für separat anberaumte Ereignisse elektronisch zu verfolgen. Ein Kalendereintrag kann Informationen über ein zugehöriges anberaumtes Ereignis enthalten, darunter Datum, Uhrzeit, Ort, zum Ereignis eingeladene Teilnehmer und/oder eine Beschreibung des Ereignisses. Kalenderanwendungen und Daten anberaumter Ereignisse sind häufig über eine Netzwerkverbindung zu einem Server zugänglich, was ihren Nutzen für Benutzer, die von mehreren verschiedenen Orten aus auf Kalenderinformationen zugreifen möchten, erhöht.
-
Die meisten elektronischen Kalenderanwendungen zeigen Benutzern anberaumte Ereignisse chronologisch an. Das heißt, die Benutzer heutiger elektronischer Kalenderanwendungen sehen ihre anberaumten Ereignisse üblicherweise genau so, wie sie anberaumte Ereignisse in einem Papierkalender oder Papier-Terminplaner sehen würden. Anberaumte Ereignisse werden danach organisiert, wie sie im Rahmen der kommenden Stunden, Tage, Wochen, Monate und Jahre anfallen.
-
KURZBESCHREIBUNG
-
Ein Verfahren zum Anzeigen einer Vielzahl von Kalendereinträgen beinhaltet: das Einteilen der Kalendereinträge in eine Vielzahl verschiedener Prioritätsstufen in einem durch mindestens einen Prozessor realisierten computergestützten Kalendersystem; das Anzeigen mindestens einiger der Kalendereinträge jeder Prioritätsstufe in einem dieser Prioritätsstufe zugehörigen separaten Streifen in einer Benutzeroberfläche des computergestützten Kalendersystems; und das Vorrücken einer Position jedes angezeigten Kalendereintrags in jedem Streifen mit dem computergestützten Kalendersystem, um das Vergehen der Zeit widerzuspiegeln.
-
Nach einer Ausführungsform der Erfindung umfasst das Verfahren ferner das Anzeigen einer ständigen Angabe unverplanter Zeit in einem separaten Streifen der Benutzeroberfläche.
-
Nach einer Ausführungsform der Erfindung umfasst das Verfahren ferner das Anzeigen des aktuellen Datums und der aktuellen Uhrzeit in der Benutzeroberfläche.
-
Nach einer Ausführungsform der Erfindung ist eine Größe jedes angezeigten Kalendereintrags in der Benutzeroberfläche von der Prioritätsstufe des angezeigten Kalendereintrags abhängig.
-
Nach einer Ausführungsform der Erfindung werden die Kalendereinträge aufgrund von Eingaben eines Benutzers in die Vielzahl verschiedener Prioritätsstufen eingeteilt.
-
Nach einer Ausführungsform der Erfindung werden die Kalendereinträge aufgrund mindestens einer vordefinierten Regel automatisch in die Vielzahl verschiedener Prioritätsstufen eingeteilt.
-
Nach einer Ausführungsform der Erfindung umfasst das Verfahren ferner das Ermöglichen für einen Benutzer, die Kalendereinträge aufgrund mindestens eines von dem Benutzer ausgewählten Parameters zu filtern.
-
Ein Verfahren zum Anzeigen einer Vielzahl von Kalendereinträgen beinhaltet: das Einteilen der Kalendereinträge in eine Vielzahl von Gruppen in einem durch mindestens einen Prozessor realisierten computergestützten Kalendersystem, wobei jede Gruppe einer anderen Prioritätsstufe zugehörig ist; für jede Gruppe das Anzeigen eines Teils der Kalendereinträge der jeweiligen Gruppe in einem separaten Streifen einer Benutzeroberfläche des computergestützten Kalendersystems entsprechend einer chronologischen Reihenfolge; und das Steuern der Benutzeroberfläche des computergestützten Kalendersystems mit dem Ziel, jeden Streifen zu veranlassen, eine Anzeige der Kalendereinträge der dem Streifen zugehörigen Gruppe entsprechend der chronologischen Reihenfolge für diese Gruppe und dem Vergehen der Zeit unabhängig zu verschieben.
-
Nach einer Ausführungsform der Erfindung umfasst das Verfahren ferner das Anzeigen einer ständigen Angabe unverplanter Zeit in einem separaten Streifen der Benutzeroberfläche.
-
Nach einer Ausführungsform der Erfindung werden die Kalendereinträge aufgrund mindestens einer vordefinierten Regel automatisch in die Vielzahl von Gruppen eingeteilt.
-
Nach einer Ausführungsform der Erfindung umfasst das Verfahren das Ermöglichen für einen Benutzer, die Kalendereinträge aufgrund mindestens eines von dem Benutzer ausgewählten Parameters zu filtern.
-
Ein computergestütztes Kalendersystem enthält einen Prozessor, der zur Datenübertragung mit einem Speicher verbunden ist, wobei der Speicher darin gespeicherten ausführbaren Code enthält. Wenn der ausführbare Code durch den Prozessor ausgeführt wird, veranlasst er den Prozessor: eine Vielzahl von Kalendereinträgen in eine Vielzahl verschiedener Prioritätsstufen einzuteilen; mindestens einige der Kalendereinträge in jeder Prioritätsstufe in einem dieser Prioritätsstufe zughörigen separaten Streifen in einer Benutzeroberfläche anzeigen zu lassen; und eine Position jedes angezeigten Kalendereintrags in jedem Streifen vorrücken zu lassen, um das Vergehen der Zeit widerzuspiegeln.
-
Nach einer Ausführungsform der Erfindung lässt der ausführbare Code ferner den Prozessor eine ständige Angabe unverplanter Zeit in einem separaten Streifen der Benutzeroberfläche anzeigen.
-
Ein Computerprogramm-Produkt zum Anzeigen einer Vielzahl von Kalendereinträgen enthält ein materielles computerlesbares Speichermedium, worin computerlesbarer Programmcode verkörpert ist. Der computerlesbare Programmcode enthält: computerlesbaren Programmcode, der so konfiguriert ist, dass er die Kalendereinträge in eine Vielzahl verschiedener Prioritätsstufen einteilen kann; computerlesbaren Programmcode, der so konfiguriert ist, dass er mindestens einige der Kalendereinträge in jeder Prioritätsstufe in einem dieser Prioritätsstufe zugehörigen separaten Streifen in einer Benutzeroberfläche anzeigen kann; und computerlesbaren Programmcode, der so konfiguriert ist, dass er eine Position jedes angezeigten Kalendereintrags in jedem Streifen vorrücken kann, um das Vergehen der Zeit widerzuspiegeln.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
Die beigefügten Zeichnungen veranschaulichen verschiedene Ausführungsformen der hierin beschriebenen Grundgedanken und sind ein Bestandteil der Beschreibung. Die veranschaulichten Ausführungsformen sind lediglich Beispiele und schränken den Umfang der Ansprüche nicht ein.
-
1 ist eine Darstellung einer veranschaulichenden grafischen Benutzeroberflächen-Anzeige mehrerer Kalendereinträge gemäß einem Beispiel der hierin beschriebenen Grundgedanken.
-
2 ist eine Darstellung einer veranschaulichenden grafischen Benutzeroberflächen-Anzeige mehrerer Kalendereinträge gemäß einem Beispiel der hierin beschriebenen Grundgedanken.
-
3 ist eine Darstellung einer veranschaulichenden grafischen Benutzeroberflächen-Anzeige mehrerer Kalendereinträge gemäß einem Beispiel der hierin beschriebenen Grundgedanken.
-
4 ist eine Darstellung einer veranschaulichenden grafischen Benutzeroberflächen-Anzeige mehrerer Kalendereinträge gemäß einem Beispiel der hierin beschriebenen Grundgedanken.
-
5 ist eine Darstellung einer veranschaulichenden grafischen Benutzeroberflächen-Anzeige mehrerer Kalendereinträge gemäß einem Beispiel der hierin beschriebenen Grundgedanken.
-
6 ist ein Ablaufplan eines veranschaulichenden Verfahrens zum Anzeigen mehrerer Kalendereinträge gemäß einem Beispiel der hierin beschriebenen Grundgedanken.
-
7 ist ein Blockschaltbild einer veranschaulichenden Computereinheit, welche ein computergestütztes Kalendersystem zum Anzeigen mehrerer Kalendereinträge gemäß einem Beispiel der hierin beschriebenen Grundgedanken realisieren kann.
-
Gleiche Bezugszeichen in den Zeichnungen bezeichnen ähnliche, aber nicht unbedingt gleiche Elemente.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Die vorliegende Spezifikation offenbart Verfahren, Systeme und Computerprogramm-Produkte zum Anzeigen mehrerer Kalendereinträge auf eine auf Prioritäten beruhende, nichtlineare Weise. Wie oben beschrieben, zeigen die meisten elektronischen Kalenderanwendungen den Benutzern anberaumte Ereignisse linear an. Jedoch hat dieser Ansatz zur Anzeige anberaumter Ereignisse Nachteile. Betrachten wir zum Beispiel einen Benutzer, der in einer Woche, gerechnet ab dem aktuellen Datum, eine wichtige Präsentation vortragen muss. In einem üblichen Kalendermodell wäre die Information über die Präsentation nicht sichtbar, außer wenn die Kalenderanwendung für eine Monats- oder Listenansicht konfiguriert ist. Eine solche Ansicht verringert üblicherweise die sichtbare Menge an ausführlichen Informationen über das Ereignis. Im Gegensatz dazu stellen die Verfahren, Systeme und Computerprogramm-Produkte der vorliegenden Beschreibung einen Weg bereit, Kalendereinträge so zu organisieren, dass ein Benutzer über eine einzige ausführliche Ansicht nicht nur von Kalendereinträgen für die unmittelbare Zukunft, sondern auch von später anberaumten wichtigen Kalendereinträgen verfügen kann. Überdies ist ein Benutzer der Systeme der vorliegenden Beschreibung durch Anzeigen der relativen Priorität jedes Kalendereintrags möglicherweise besser informiert, was die beste Verwendung seiner unverplanten Zeit bei der Vorbereitung auf bevorstehende Ereignisse anbelangt.
-
Wie der Fachmann erkennen wird, können Aspekte der vorliegenden Erfindung als ein System, ein Verfahren oder ein Computerprogramm-Produkt verkörpert sein. Entsprechend können Aspekte der vorliegenden Erfindung die Form einer vollständig auf Hardware beruhenden Ausführungsform, einer vollständig auf Software beruhenden Ausführungsform (darunter Firmware, residente Software, Mikrocode usw.) oder einer Software- und Hardware-Aspekte kombinierenden Ausführungsform, die hierin alle allgemein als „Schaltung”, „Modul” oder „System” bezeichnet werden kann, annehmen. Überdies können Aspekte der vorliegenden Erfindung die Form eines Computerprogramm-Produkts annehmen, das in einem oder mehreren computerlesbaren Medien, auf denen computerlesbarer Programmcode enthalten ist, verkörpert ist.
-
Jede beliebige Kombination von einem oder mehreren computerlesbaren Medien kann verwendet werden. Bei dem computerlesbaren Medium kann es sich um ein computerlesbares Signalmedium oder ein computerlesbares Speichermedium handeln. Zu einem computerlesbaren Speichermedium können zum Beispiel, ohne darauf beschränkt zu sein, ein elektronisches, magnetisches, optisches, elektromagnetisches, Infrarot- oder Halbleiter-System, eine elektronische, magnetische, optische, elektromagnetische, Infrarot- oder Halbleiter-Vorrichtung oder -Einheit oder irgendeine geeignete Kombination der Vorerwähnten gehören. Zu spezielleren Beispielen (eine nichterschöpfende Liste) des computerlesbaren Speichermediums würde Folgendes zählen: eine elektrische Verbindung mit einer oder mehreren Leitungen, eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM, Random Access Memory), ein Festwertspeicher (ROM, Read-Only Memory), ein löschbarer programmierbarer Festwertspeicher (EPROM, Erasable Programmable Read-Only Memory, oder Flash-Speicher), ein Lichtwellenleiter, ein tragbarer Compact-Disc-Festwertspeicher (CD-ROM), eine Einheit zur optischen Speicherung, eine Einheit zur magnetischen Speicherung oder irgendeine geeignete Kombination der Vorerwähnten. Im Zusammenhang mit diesem Dokument kann ein computerlesbares Speichermedium irgendein materielles Medium sein, das ein Programm zur Verwendung durch oder in Verbindung mit ein bzw. einem Befehlsausführungssystem, eine bzw. einer Befehlsausführungsvorrichtung oder eine bzw. einer Befehlsausführungseinheit enthalten oder speichern kann.
-
Ein computerlesbares Signalmedium kann ein verbreitetes Datensignal zum Beispiel im Basisband oder als Teil einer Trägerwelle mit darin verkörpertem computerlesbarem Programmcode enthalten. Ein solches verbreitetes Signal kann jede beliebige aus einer Vielfalt von Formen annehmen, darunter elektromagnetische, optische oder irgendeine geeignete Kombination daraus, ohne darauf beschränkt zu sein. Ein computerlesbares Signalmedium kann jedes beliebige computerlesbare Medium sein, das kein computerlesbares Speichermedium ist und das ein Programm zur Verwendung durch oder in Verbindung mit einem System, einer Vorrichtung oder einer Einheit zur Ausführung von Anweisungen übertragen, verbreiten oder transportieren kann.
-
Auf einem computerlesbaren Medium enthaltener Programmcode kann mittels irgendeines geeigneten Mediums, darunter drahtlos, drahtgebunden, Lichtwellenleiter, HF usw., ohne darauf beschränkt zu sein, oder irgendeiner geeigneten Kombination der Vorerwähnten übertragen werden.
-
Computerprogrammcode zum Ausführen von Operationen der vorliegenden Erfindung kann in einer objektorientierten Programmiersprache wie Java, Smalltalk, C+– oder dergleichen geschrieben sein. Jedoch kann der Computerprogrammcode zum Ausführen von Operationen der vorliegenden Erfindung auch in herkömmlichen verfahrensorientierten Programmiersprachen wie der Programmiersprache „C” oder ähnlichen Programmiersprachen geschrieben sein. Der Programmcode kann ganz auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder ganz auf dem entfernt angeordneten Computer oder Server ausgeführt werden. Im letzteren Szenario kann der entfernt angeordnete Computer über ein lokales Netz (LAN, Local Area Network) oder ein weiträumiges Netz (WAN, Wide Area Network) mit dem Computer des Benutzers verbunden sein, oder die Verbindung kann zu einem externen Computer hergestellt sein (zum Beispiel mittels eines Internet-Diensteanbieters über das Internet).
-
Die vorliegende Erfindung wird im Folgenden unter Bezugnahme auf Ablaufpläne und/oder Blockschaltbilder von Verfahren, Vorrichtungen (Systemen) und Computerprogramm-Produkten gemäß Ausführungsformen der Erfindung beschrieben. Es versteht sich von selbst, dass jeder Block der Ablaufpläne und/oder Blockschaltbilder und Kombinationen von Blocks in den Ablaufplänen und/oder Blockschaltbildern durch Computerprogrammbefehle realisiert werden kann. Diese Computerprogrammbefehle können an einen Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung gegeben werden, um eine Maschine zu produzieren, so dass die Befehle, welche über den Prozessor des Computers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, ein Mittel zur Realisierung der im Block oder in den Blocks des Ablaufplans und/oder des Blockschaltbilds angegebenen Funktionen/Vorgänge schaffen.
-
Diese Computerprogrammbefehle können auch in einem computerlesbaren Speicher gespeichert sein, der einen Computer oder eine andere programmierbare Datenverarbeitungsvorrichtung anweisen kann, auf eine bestimmte Weise zu funktionieren, so dass die im computerlesbaren Speicher gespeicherten Befehle ein Herstellungsprodukt produzieren, das Befehlsmittel enthält, welche die bzw. den im Block oder in den Blocks des Ablaufplans und/oder des Blockschaltbilds angegebene(n) Funktion/Vorgang ausführen.
-
Die Computerprogrammbefehle können auch auf einen Computer oder eine andere programmierbare Datenverarbeitungsvorrichtung geladen werden, um zu veranlassen, dass eine Reihe von Arbeitsschritten auf dem Computer oder einer anderen programmierbaren Vorrichtung ausgeführt werden, um einen auf einem Computer ausgeführten Prozess zu erzeugen, so dass die Befehle, welche auf dem Computer oder einer anderen programmierbaren Vorrichtung ausgeführt werden, Schritte zum Ausführen der im Block oder in den Blocks des Ablaufplans und/oder des Blockschaltbilds angegebenen Funktionen/Vorgänge schaffen.
-
Wie in der vorliegenden Beschreibung und den beigefügten Ansprüchen verwendet, bezeichnet der Begriff „Kalendereintrag” ein Ereignis, eine Aufgabe oder eine Notiz, das bzw. die durch ein Kalendersystem verfolgt wird.
-
Wie in der vorliegenden Beschreibung und den beigefügten Ansprüchen verwendet, bezeichnet der Begriff „Streifen” einen Bereich, in welchem Objekte linear angeordnet sind.
-
1 ist eine Darstellung einer veranschaulichenden grafischen Benutzeroberfläche eines computergestützten Kalendersystems, welche mehrere vom computergestützten Kalendersystem gespeicherte und verwaltete Kalendereinträge (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) anzeigt. Die Kalendereinträge (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) können zum Beispiel herrühren von: mittels des computergestützten Kalendersystems erzeugten neuen Kalendereinträgen; Kalendereinträgen von externen Kalendersystemen oder Kalendern für einen anderen Benutzer, welche über ein Netzwerk oder ein anderes geeignetes Datenübertragungsverfahren in das vorliegende computergestützten Kalendersystem einbezogen sind; durch externe Personen oder durch Vorgänge, zu welchen ein Benutzer des computergestützten Kalendersystems eingeladen wurde, erzeugten Kalendereinträgen; einer im computerisierten Kalendersystem empfangenen Einladung; und Kombinationen davon.
-
Die grafische Benutzeroberfläche kann zum Beispiel auf einem Computer-Monitor eines Personal Computers oder einem Anzeigebildschirm einer tragbaren elektronischen Einheit angezeigt werden. Im computergestützten Kalendersystem dieses Beispiels sind die anberaumten Kalendereinträge (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) in drei verschiedene Prioritätsstufen eingeteilt: eine niedrige Priorität, eine mittlere Priorität und eine hohe Priorität. Bevorstehende Kalendereinträge niedriger Priorität (102-1 bis 102-7) werden in einem Streifen niedriger Priorität (108) angezeigt, bevorstehende Kalendereinträge mittlerer Priorität (104-1 bis 104-3) werden in einem Streifen mittlerer Priorität (110) angezeigt, und bevorstehende Kalendereinträge hoher Priorität (106-1, 106-2) werden in einem Streifen hoher Priorität (112) angezeigt.
-
Die zugewiesene Prioritätsstufe für jeden Kalendereintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) kann durch einen Benutzer oder Administrator des computerisierten Kalendersystems von Hand festgelegt und eingegeben werden. Zum Beispiel jedes Mal, wenn ein Kalendereintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) dem Kalender des Benutzers hinzugefügt oder geändert wird, kann das computergestützten Kalendersystem den Benutzer auffordern, eine Prioritätsstufe für diesen Kalendereintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) anzugeben.
-
Zusätzlich oder alternativ kann die Prioritätsstufe von Kalendereinträgen (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) durch das computergestützten Kalendersystem automatisch festgelegt werden. Zum Beispiel jedes Mal, wenn dem Kalender des Benutzers ein Kalendereintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) hinzugefügt oder geändert wird, kann das computergestützten Kalendersystem eine Funktion auf der Grundlage von Regeln ausführen, um eine angemessene Prioritätsstufe für den Kalendereintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) festzulegen. Solche Funktionen auf der Grundlage von Regeln können Folgendes berücksichtigen, ohne darauf beschränkt zu sein: Anwesenheitsinformationen für den Kalendereintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2), eine Rolle des Benutzers in dem durch den Kalendereintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) dargestellten Ereignis, die Identität der Person oder Stelle, welche das durch den Kalendereintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) dargestellte Ereignis ins Leben ruft oder leitet, der Grad, in welchem der Kalendereintrag mit anderen Kalendereinträgen (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) für den Benutzer kollidiert, und Kombinationen aus den Obigen. Zusätzlich oder alternativ kann die Prioritätsstufe von Kalendereinträgen (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) unter Anwendung einer Fremdleistung festgelegt werden, welche separat eine Prioritätsstufe berechnet und jedem der Kalendereinträge zuweist.
-
In einigen Beispielen kann die Prioritätsstufe von Kalendereinträgen (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) im Kontext einer Prioritätshierarchie gespeichert werden. Zum Beispiel kann ein Kalendereintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2), der sonst als von hoher Priorität klassifiziert werden würde, als von mittlerer Priorität klassifiziert werden, wenn er mit einem bereits bestehenden Ereignis hoher Priorität kollidiert. Entsprechend kann ein Kalendereintrag mittlerer Priorität (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) zu einem Kalendereintrag hoher Priorität (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) werden, wenn ein kollidierender Kalendereintrag hoher Priorität annulliert oder zeitlich verlegt wird.
-
Die Kalendereinträge (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) in jedem Streifen (108, 110, 112) sind chronologisch angeordnet. Das heißt, die Kalendereinträge (102-1, 104-1, 106-1) oben in jedem Streifen (108, 110, 112) sind die Einträge innerhalb jeder Prioritätsstufe, welche als nächste eintreten werden oder die nächsten Termine haben, und die Kalendereinträge (102-7, 104-3, 106-2) unten in jedem Streifen (108, 110, 112) sind die von der grafischen Benutzeroberfläche gerade angezeigten Einträge, die später als die anderen im jeweiligen Streifen (108, 110, 112) angezeigten Kalendereinträge anberaumt sind.
-
Die Benutzeroberfläche kann so eingerichtet sein, dass der Benutzer die Kalendereinträge (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) einfach grafisch manipulieren kann, um Einträge (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) zeitlich zu verlegen oder Prioritätsstufen zu ändern. Um zum Beispiel einen Kalendereintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) zeitlich zu verlegen, kann der Benutzer den Kalendereintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) in der durch die Benutzeroberfläche angezeigten chronologischen Reihenfolge auf eine neue Position ziehen. Diese Maßnahme kann die Benutzeroberfläche veranlassen, den Benutzer aufzufordern, ein neues Datum und eine neue Uhrzeit für den Kalendereintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) einzugeben und/oder ein neues Datum und eine neue Uhrzeit für den Kalendereintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) aus dem Kontext abzuleiten. Zusätzlich oder alternativ kann der Benutzer in einigen Beispielen auch in der Lage sein, die Lage der Streifen (108, 110, 112) mittels der Funktion „Ziehen und Ablegen” neu anzuordnen.
-
Wie in 1 gezeigt, steht die Größe jedes angezeigten Kalendereintrags (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) in der Benutzeroberfläche mit der Prioritätsstufe des jeweiligen Kalendereintrags (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) in Wechselbeziehung. Demgemäß belegen die als von niedriger Priorität klassifizierten Kalendereinträge (102-1 bis 102-7) die kleinste Menge Anzeigefläche, und die als von hoher Priorität klassifizierten Kalendereinträge (106-1, 106-2) belegen die größte Menge Anzeigefläche. Während in 1 jeder in einem bestimmten Streifen (108, 110, 112) angezeigte Kalendereintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) die gleiche Größe hat, kann in anderen Beispielen die Größe der angezeigten Kalendereinträge (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) je nach einer festgelegten Priorität jedes Eintrags (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) und/oder einer für jeden Eintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) anzuzeigenden Informationsmenge auch innerhalb der Streifen (108, 110, 112) unterschiedlich ausfallen.
-
Zusätzlich hängt die über jeden Kalendereintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) angezeigte Informationsmenge mit der Prioritätsstufe des jeweiligen Kalendereintrags (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) zusammen. Wie in 1 dargestellt, zeigen in diesem Bildschirm der Benutzeroberfläche Kalendereinträge niedriger Priorität (102-1 bis 102-7) die kleinste Informationsmenge an, und Kalendereinträge hoher Priorität (106-1, 106-2) zeigen die größte Informationsmenge an, darunter Anwesenheitsinformationen, Präsentationsinformationen und Verknüpfungen zu mit der Sitzung zusammenhängenden Dokumenten.
-
Die Positionen der Kalendereinträge (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) innerhalb eines jeden der Streifen (108, 110, 112) rücken nach oben vor, um das Vergehen der Zeit widerzuspiegeln. Während das angesetzte Datum und die angesetzte Uhrzeit für einen angezeigten Kalendereintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) näherkommen und vorübergehen, bewegt sich dieser Kalendereintrag (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) somit zum oberen Ende seines jeweiligen Streifens (108, 110, 112) und aus dem Anzeigebereich der Benutzeroberfläche hinaus. Die Bewegung innerhalb eines jeden der Streifen (108, 110, 112) ist unabhängig von jedem der anderen Streifen.
-
Zusätzlich zu dieser automatischen Bewegung der Kalendereinträge (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) kann ein Benutzer die Kalendereinträge (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) eines einzelnen Streifens (108, 110, 112) auch von Hand verschieben, um in der Vergangenheit oder in der Zukunft liegende Kalendereinträge (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) zu sehen, die sonst außerhalb des Anzeigebereich für diesen Streifen (108, 110, 112) liegen können. In bestimmten Beispielen kann die Benutzeroberfläche, wenn ein Benutzer die Kalendereinträge (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) eines einzelnen Streifens (108, 110, 112) verschoben hat, die Anzeige dieses Streifens (108, 110, 112) automatisch so wiederherstellen, dass der nächste anberaumte Kalendereintrag am oberen Ende des Streifens (108, 110, 112) positioniert wird, sobald der Benutzer das Verschieben beendet hat (z. B. nach Ablauf einer vorbestimmten Zeit).
-
Ferner besteht für bestimmte Benutzer die Möglichkeit, dass die von der Benutzeroberfläche angezeigte Datenmenge die Anzeigemöglichkeiten übersteigt, insbesondere wenn viele Kalendereinträge (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) für eine relativ kurze Zeitspanne vorhanden sind. In solchen Beispielen kann der Benutzer in der Lage sein, die Anzeige der Kalendereinträge (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) über die Benutzeroberfläche zu filtern. Die Kalendereinträge können unter Anwendung jedes beliebigen geeigneten, den Kalendereinträgen (102-1 bis 102-7, 104-1 bis 104-3, 106-1, 106-2) zugehörigen Parameters gefiltert werden, darunter Datum, Uhrzeit, Ort, Anwesenheit, Sitzungsveranstalter oder -leiter, ein Kennzeichen oder Etikett und dergleichen, ohne darauf beschränkt zu sein.
-
2 zeigt ein Beispiel der Benutzeroberfläche aus 1 nach Ablauf eines Tages. Das heißt, wo 1 ein Beispiel zeigt, wie die Benutzeroberfläche am Dienstag, 12. Juli morgens aussehen kann, zeigt 2 ein Beispiel, wie die Benutzeroberfläche am Mittwoch, 13. Juli mittags aussehen kann. In 2 befinden sich die obersten zwei Kalendereinträge niedriger Priorität (102-1, 102-2) aus 1 nun in der Vergangenheit und haben sie sich aus dem Anzeigebereich der Benutzeroberfläche herausbewegt. Die verbleibenden Kalendereinträge niedriger Priorität (102-1 bis 102-7) aus 1 haben sich in der Position nach oben verschoben, um widerzuspiegeln, dass das nächste Ereignis niedriger Priorität ein für 13. Juli mittags anberaumtes Arbeitsessen ist. Mit dieser Verschiebung nach oben sind zwei zusätzliche Ereignisse niedriger Priorität (102-8, 102-9) am unteren Ende des Streifens niedriger Priorität (108) in Sicht gekommen. Die Kalendereinträge (104-1 bis 104-3, 106-1, 106-2) der Streifen mittlerer Priorität und hoher Priorität (110, 112) haben sich ebenfalls unabhängig nach oben bewegt.
-
3 zeigt ein Beispiel einer Benutzeroberfläche, welche sich übereinstimmend mit den Grundgedanken der Benutzeroberfläche in den 1 bis 2 verhält, wobei zusätzliche Informationen angezeigt werden. Wie in den 1 bis 2 klassifiziert die Benutzeroberfläche in 3 die Kalendereinträge (302-1 bis 302-7, 304-1 bis 304-3, 306-1 bis 306-3) in drei Prioritätsstufen: niedrige Priorität, mittlere Priorität und hohe Priorität. Bestimmten Daten und Uhrzeiten zugehörige Kalendereinträge (302-1 bis 302-5, 304-1, 304-2, 306-1, 306-2) werden aufgrund der Prioritätsstufe, des Datums und der Uhrzeit, die jedem Kalendereintrag (302-1 bis 302-5, 306-1, 306-2, 304-1, 304-2) zugewiesen sind, in einem Hauptstreifen niedriger Priorität (308), einem Hauptstreifen mittlerer Priorität (310) oder einem Hauptstreifen hoher Priorität (312) chronologisch angeordnet.
-
Zusätzlich enthält die Benutzeroberfläche separate Streifen (314, 316, 318), welche jeweilige Kalendereinträge niedriger, mittlerer und hoher Priorität (302-6, 302-7, 304-3, 306-3) anzeigen, die nicht bestimmten Daten und Uhrzeiten zugehörig sind. Durch die Verwendung dieser „Ohne-Termin”-Streifen (314, 316, 318) kann ein Benutzer Erinnerungen an Ereignisse oder Handlungen sehen, die nicht so wie die Hauptstreifen (308, 310, 312) chronologisch von der Benutzeroberfläche „wegaltern”. Vielmehr können die Kalendereinträge (302-6, 302-7, 304-3, 306-3) in den „Ohne-Termin”-Streifen (314, 316, 318) durch den Benutzer von Hand verworfen werden, wenn sie nicht mehr gebraucht werden.
-
Zusätzlich zeigt die Benutzeroberfläche in 3 eine ständige Anzeige (320) der aktuellen Uhrzeit und des aktuellen Datums, eine zum Navigieren geeignete, interaktive Anzeige (322) gegenwärtig verfügbarer (d. h. unverplanter) Zeitfenster und einen Benachrichtigungsbereich (324) an, welcher den Benutzer über Punkte, für welche der Benutzer etwas tun kann, und zugehörige Benachrichtigungen informiert. Zum Beispiel können im Benachrichtigungsbereich (324) Einladungen zu Sitzungen, Terminverlegungswünsche, Benachrichtigungen über Kollisionen, Erinnerungen an Sitzungen und dergleichen erscheinen.
-
4 ist eine Darstellung der Benutzeroberfläche, in welcher die Ansicht eines der Kalendereinträge (306-1) erweitert wurde, um zusätzliche Informationen im Zusammenhang mit dem Kalendereintrag (306-1) anzuzeigen. In bestimmten Beispielen kann der Benutzer irgendeinen der Kalendereinträge (302-1 bis 302-7, 304-1 bis 304-3, 306-1 bis 306-3) auswählen, um zusätzliche Einzelheiten und/oder Links zu mit dem Kalendereintrag (302-1 bis 302-7, 304-1 bis 304-3, 306-1 bis 306-3) verknüpften Dateien zu sehen.
-
5 ist eine Darstellung der Benutzeroberfläche aus den 3 bis 4, in welcher die Benutzeroberfläche den Benutzer im Benachrichtigungsbereich (324) auffordert, bezüglich einer empfangenen Einladung (502) für einen neuen Kalendereintrag etwas zu tun. Der Benachrichtigungsbereich (324) zeigt Uhrzeit und Datum des vorgeschlagenen Kalendereintrags an, erkennt eine Kollision mit einem vorhandenen Kalendereintrag (306-1), empfiehlt dem Benutzer, die Einladung abzulehnen und bietet dem Benutzer Schaltflächen (504, 506), um eine bezüglich der Einladung zu ergreifende Maßnahme auszuwählen. In bestimmten Beispielen kann das computergestützte Kalendersystem dem durch die empfangene Einladung (502) vorgeschlagenen Kalendereintrag anhand derselben Kriterien, für welche vorhandenen Kalendereinträgen (302-1 bis 302-7, 304-1 bis 304-3, 306-1 bis 306-3) Prioritätsstufen zugewiesen werden, eine Prioritätsstufe zuweisen und aufgrund der Priorität des vorgeschlagenen Kalendereintrags und der Priorität eines etwaigen bereits vorhandenen, kollidierenden Kalendereintrags (302-1 bis 302-7, 304-1 bis 304-3, 306-1 bis 306-3) eine Empfehlung erzeugen, ob die Einladung (502) angenommen oder abgelehnt werden sollte.
-
6 ist ein Ablaufplan eines beispielhaften Verfahrens (600) zum Anzeigen mehrerer Kalendereinträge gemäß den Grundgedanken der vorliegenden Beschreibung. Das Verfahren (600) kann zum Beispiel durch ein durch mindestens einen Prozessor realisiertes computergestütztes Kalendersystem ausgeführt werden. Entsprechend dem Verfahren (600) wird eine Vielzahl von Kalendereinträgen in eine Vielzahl verschiedener Prioritätsstufen eingeteilt (Block 602). Mindestens einige der Kalendereinträge jeder Prioritätsstufe werden in einem dieser Prioritätsstufe zugehörigen separaten Streifen in einer Benutzeroberfläche des computergestützten Kalendersystems angezeigt (Block 604). Die Position jedes angezeigten Kalendereintrags wird vorgerückt, um das Vergehen der Zeit widerzuspiegeln (Block 606). Wie oben beschrieben, kann das Vorrücken von Kalendereintrags-Positionen in jedem Streifen unabhängig von einem solchen Vorrücken in irgendeinem anderen Streifen geschehen.
-
7 ist ein Blockschaltbild einer veranschaulichenden Computereinheit (700), die verwendet werden kann, um mit dem Ziel der Realisierung eines computergestützten Kalendersystems ein computergestütztes Kalenderprogramm als Kalender-Server, als Kalender-Client-Einheit oder als eigenständige Kalendereinheit auszuführen.
-
Die Hardware-Plattform (705) der Computereinheit (700) kann mindestens einen Prozessor (720) enthalten, der im Hauptspeicher (725) gespeicherten Code ausführt. Bei bestimmten Ausführungsformen kann der Prozessor (720) ein Mehrkernprozessor mit mehreren unabhängigen Zentraleinheiten (CPUs, Central Processing Units) sein, wobei jede CPU ihren eigenen L1-Cachespeicher hat und alle CPUs eine gemeinsame Busschnittstelle und einen L2-Cachespeicher gemeinsam nutzen. Alternativ kann der Prozessor (720) ein Einkernprozessor sein.
-
Der mindestens eine Prozessor (720) kann zur Datenübertragung über einen Hauptbus (735) mit dem Hauptspeicher (725) der Hardware-Plattform und einer Host-PCI-(peripheral control interface)Brücke (730) verbunden sein. Der Hauptspeicher (725) kann dynamischen nichtflüchtigen Speicher wie Direktzugriffsspeicher (RAM, Random Access Memory) enthalten. Der Hauptspeicher (725) kann ausführbaren Code und Daten speichern, worauf der Prozessor (720) über den Hauptbus (735) zugreifen kann.
-
Die Host-PCI-Brücke (730) kann als Schnittstelle zwischen dem Hauptbus (735) und einem zum Datenaustausch mit Schnittstellen zu Peripherieeinheiten (745) verwendeten Peripheriebus (740) fungieren. Unter diesen mit dem Prozessor (780) verbundenen Peripherieeinheiten (747) können sich eine Netzwerkschnittstellen-Steuereinheit, externe Mensch-Maschine-Schnittstelleneinheiten (z. B. Monitor, Tastatur, Maus, Berührungsbildschirm, Lautsprecher, Mikrofon), weitere externe Einheiten (z. B. externer Speicher, Kopierschutzschaltungen, Spezialwerkzeuge), serielle Busse (z. B. USB, Universal Serial Bus) und dergleichen befinden. Eine lokale Speicherschnittstelle (750) zum Datenaustausch mit lokalen Speichereinheiten (755) kann auch mit dem Peripheriebus (740) verbunden sein.
-
Die vorliegende Konfiguration der Hardware-Plattform (705) ist lediglich veranschaulichend für eine Art von Hardware-Plattform (705), die in Verbindung mit den in der vorliegenden Beschreibung dargestellten Grundgedanken verwendet werden kann. Die in der unteren Hälfte der Zeichnung in 7 gezeigte Hardware-Plattform (705) ist so konfiguriert, dass sie die in der oberen Hälfte der Zeichnung in 7 gezeigten Elemente der Anwendungsfunktionen realisiert. Somit wird, wie in 7 gezeigt, ein Betriebssystem-(760)Programm direkt durch die Hardware-Plattform (705) ausgeführt. Das Betriebssystem (762) kann mit Hardware-Ressourcen in der Hardware-Plattform (705), darunter der/die Prozessor(en) (720), der Hauptspeicher (725) und die Peripherieeinheiten (747, 755), interagieren und deren Leistung verwalten. Somit steuert des Betriebssystem (760) die Ausführung von Computerprogrammen durch den/die Prozessor(en) (720). Unter diesen Computerprogrammen kann sich eine Kalenderanwendung (770) befinden, welche den/die Prozessoren) (720) veranlasst, ein computergestütztes Kalendersystem wie das hierin beschriebene computergestützte Kalendersystem zu realisieren. Als Teil der Ausführung der Kalenderanwendung (770) kann eine Benutzeroberfläche wie die bezüglich der 1 bis 6 beschriebenen Benutzeroberflächen durch eine der Peripherieeinheiten (747) angezeigt werden.
-
Der Ablaufplan und die Blockschaltbilder in den Figuren veranschaulichen Architektur, Funktionalität und Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogramm-Produkten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In dieser Hinsicht kann jeder Block im Ablaufplan oder in den Blockschaltbildern ein Codemodul, einen Codeabschnitt oder einen Codeteil darstellen, welches bzw. welcher einen oder mehrere ausführbare Befehle zum Realisieren der angegebenen logischen Funktion(en) enthält. Es sollte auch bemerkt werden, dass bei manchen alternativen Ausführungen die im Block angegebenen Funktionen außerhalb der in den Figuren angegebenen Reihenfolge auftreten können. Zum Beispiel können zwei aufeinanderfolgend gezeigte Blöcke tatsächlich im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal in umgekehrter Reihenfolge ausgeführt werden, je nach erforderlicher Funktionalität. Es wird auch bemerkt werden, dass jeder Block der Blockschaltbilder und/oder des Ablaufplans und Kombinationen von Blöcken in den Blockschaltbildern und/oder im Ablaufplan durch spezielle auf Hardware beruhende Systeme, welche die angegebenen Funktionen oder Vorgänge ausführen, oder Kombinationen von Spezial-Hardware und Computerbefehlen realisiert werden können.
-
Die hierin verwendete Terminologie dient nur dem Zweck, bestimmte Ausführungsformen zu beschreiben, und soll die Erfindung nicht einschränken. Wie hierin verwendet, sollen die Singularformen „ein”, „eine” und „der”, „die”, „das” auch die Pluralformen einschließen, es sei denn, der Kontext steht dem eindeutig entgegen. Ferner versteht es sich von selbst, dass die Ausdrücke „umfasst”, „enthält” und/oder „beinhaltet”, wenn sie in dieser Spezifikation verwendet werden, das Vorhandensein von erwähnten Merkmalen, Ganzzahlen, Schritten, Operationen, Elementen und/oder Komponenten bedeuten, nicht aber das Vorhandensein oder die Hinzufügung von einem/einer oder mehreren anderen Merkmalen, Ganzzahlen, Schritten, Operationen, Elementen, Komponenten und/oder Gruppen davon ausschließen.
-
Die zugehörigen Strukturen, Materialien, Vorgänge und Entsprechungen aller Mittel oder Step-plus-Funktion-Elemente in den nachfolgenden Ansprüchen sollen jede Struktur, jedes Material oder jeden Vorgang zum Ausführen der Funktion in Kombination mit anderen beanspruchten Elementen einschließen, wie es konkret beansprucht wird. Die Beschreibung der vorliegenden Erfindung wurde zu Zwecken der Veranschaulichung und Beschreibung gegeben, aber sie soll nicht erschöpfend oder auf die Erfindung in der beschriebenen Form beschränkt sein. Dem Fachmann wird einleuchten, dass zahlreiche Änderungen und Abwandlungen möglich sind, ohne von Geist und Umfang der Erfindung abzuweichen. Die Ausführungsform wurde gewählt und beschrieben, um die Grundgedanken der Erfindung und die praktische Anwendung am besten zu erklären und um andere Fachleute in die Lage zu versetzen, die Erfindung für verschiedene Ausführungsformen mit verschiedenen Änderungen, wie sie für die betrachtete besondere Verwendung geeignet sind, zu verstehen.
-
Nachdem also die Erfindung der vorliegenden Anmeldung ausführlich und unter Bezugnahme auf Ausführungsformen derselben beschrieben worden ist, wird einleuchten, dass Änderungen und Abwandlungen möglich sind, ohne vom Umfang der in den beigefügten Ansprüchen definierten Erfindung abzuweichen.