(57)【特許請求の範囲】
【請求項１】
グラフィカルユーザインタフェースのアイテムを表示する方法であって、
ディスプレイの表示領域のエッジに沿って複数のユーザインタフェースのアイテムを、少なくとも１つの前記アイテム群の列からなるバーの形式で表示する工程と、
前記アイテム群の少なくとも１つのアイテムからの所定距離内にカーソルが位置していることを検出する工程と、
前記検出に応じて、前記カーソルに最も近接しているアイテムをそのサイズより大きい指定されたレベルのサイズに拡大し、かつ前記最も近接しているアイテムから指定された距離範囲内の周辺の複数の他のアイテムそれぞれを、そのそれぞれのサイズより大きいレベルのサイズであって、かつ該最も近接しているアイテムからのそれぞれの距離に応じて反比例する、前記指定されたレベルよりも小さい異なるレベルのサイズに拡大する工程と、
前記拡大されたサイズのアイテムの付近にあるアイテムがその拡大されたサイズのアイテムで隠れないようにするために、前記拡大されたサイズのアイテムの拡大に応じて、前記列に沿って少なくとも一方向に前記カーソルに最も近接しているアイテムから離れるように計算されたシフト量で前記アイテム群を移動する工程であって、前記拡大されたサイズのアイテム群以外のアイテム群のサイズは、変化させずに移動する工程と
を備えることを特徴とする方法。
【請求項２】
前記複数のアイテムのそれぞれは、コンピュータシステムのユーザと対話できるオブジェクトを表している
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記オブジェクトは、アプリケーション、文書、ウインド及びユニフォームリソースロケータの少なくとも１つを含んでいる
ことを特徴とする請求項２に記載の方法。
【請求項４】
前記バーは、前記ディスプレイの下部に描画される
ことを特徴とする請求項１に記載の方法。
【請求項５】
前記バーと前記ディスプレイの下部の間にギャップが存在する
ことを特徴とする請求項４に記載の方法。
【請求項６】
ユーザに、前記バーの少なくとも１つの特性の値を選択させることを可能にする工程を更に備える
ことを特徴とする請求項１に記載の方法。
【請求項７】
前記アイテムを拡大可能な最大サイズは、前記少なくとも１つの特性である
ことを特徴とする請求項６に記載の方法。
【請求項８】
前記複数のアイテムに対するデフォルトサイズは、前記少なくとも１つの特性である
ことを特徴とする請求項６に記載の方法。
【請求項９】
前記カーソルが前記バーから離れる場合に、該バーを前記ディスプレイから消去する工程を更に備える
ことを特徴とする請求項１に記載の方法。
【請求項１０】
前記ディスプレイのエッジへ前記バーをスライドさせるアニメーションルーチンを起動することによって、該バーが消去される
ことを特徴とする請求項９に記載の方法。
【請求項１１】
前記複数のアイテムは、前記ディスプレイ上の１行を占有する
ことを特徴とする請求項１に記載の方法。
【請求項１２】
前記複数のアイテムの拡大は、サイン関数に基づいて変更される
ことを特徴とする請求項１に記載の方法。
【請求項１３】
前記複数のアイテムは、通常状態では、前記バー内でデフォルトサイズで表示され、
前記指定されたレベルは、前記アイテムに対する最大拡大サイズを含み、
前記カーソルが、前記最も近接しているアイテムから前記所定距離以下に位置している間は、前記最大拡大サイズで前記最も近接しているアイテムを維持する工程と
を更に備えることを特徴とする請求項１に記載の方法。
【請求項１４】
グラフィカルユーザインタフェースのアイテムを表示するコンピュータシステムであって、
表示領域のエッジに沿って複数のユーザインタフェースのアイテムを、少なくとも１つの前記アイテム群の列からなるバーの形式で表示するディスプレイユニットと
プロセッサとを備え、
前記プロセッサは、
前記アイテム群の少なくとも１つのアイテムからの所定距離内にカーソルが位置していることを検出し、
前記検出に応じて、前記カーソルに最も近接しているアイテムをそのサイズより大きい指定されたレベルのサイズに拡大し、かつ前記最も近接しているアイテムから指定された距離範囲内の周辺の複数の他のアイテムそれぞれを、そのそれぞれのサイズより大きいレベルのサイズであって、かつ該最も近接しているアイテムからのそれぞれの距離に応じて反比例する、前記指定されたレベルよりも小さい異なるレベルのサイズに拡大し、
前記拡大されたサイズのアイテムの付近にあるアイテムがその拡大されたサイズのアイテムで隠れないようにするために、前記拡大されたサイズのアイテムの拡大に応じて、前記列に沿って少なくとも一方向に前記カーソルに最も近接しているアイテムから離れるように計算されたシフト量で前記アイテム群を移動するものであって、前記拡大されたサイズのアイテム群以外のアイテム群のサイズは、変化させずに移動する
ように構成されている
ことを特徴とするコンピュータシステム。
【請求項１５】
前記複数のアイテムは、通常状態では、前記バー内でデフォルトサイズで表示され、
前記指定されたレベルは、前記アイテムに対する最大拡大サイズを含み、
前記カーソルが、前記最も近接しているアイテムから前記所定距離以下に位置している間は、前記最大拡大サイズで前記最も近接しているアイテムが維持される
ことを特徴とする請求項１４に記載のコンピュータシステム。
【発明の詳細な説明】
【０００１】
背景
本発明は、一般的には、コンピュータシステム用グラフィカルユーザインタフェースに関するものである。より詳しくは、本発明は、グラフィカルユーザインタフェースのフレキシブルカスタマイズを提供するオペレーティングシステムとアプリケーション間のインタフェースを提供するシステム及び方法に関するものである。
【０００２】
コンピュータ産業の発展は、その成長率と複雑化は類いないものである。例えば、当初は、制限されたメモリと、テープ駆動装置及びモノクロディスプレイを有する簡単な計算機にも及ばないものであったパーソナルコンピュータは、今や、様々なデータ処理タスクをほとんど取り組むことができるようになっている。この著しい処理能力の向上は、アプリケーションデザイナやエンドユーザの類の要求をほぼ十分に満足しているが、これに応じて生じる簡単に使用する課題はますます複雑化しており、業界によるその解決は多少遅れてしまっている。つまり、他の業界からコンピュータベースの情報パラダイムの遷移を容易にするために、比較的わずかなコンピュータの訓練によって、使用可能な形態でこのコンピュータ処理能力を役立たせるための新たな課題にデザイナは直面していた。
【０００３】
その結果、１９８０年の中頃の早い時期には、「ユーザフレンドリ」、「ＷＹＳＩＷＹＧ」及び「メニュー駆動型」のような多くの新しいＩ／Ｏ原理が、コンピュータ産業の最も重要な位置を占めるようになった。これらの概念は、特に、パーソナルコンピュータとしても知られるマイクロコンピュータで利用可能であり、この概念は、コンピュータを最初から苦手とするあるいは不信を抱いているユーザを含む多くの利用者であるコンピュータユーザに訴えることが意図されている。これらの概念を採用しているコンピュータの重要な構成は、ユーザにコマンドやデータを入力させ、その結果を受信することを可能にするインタフェースであり続けており、これは、通常、グラフィカルユーザインタフェース（ＧＵＩ）と呼ばれている。
【０００４】
この種のインタフェースの成功は、多くの企業がデスクトップ環境をエミュレートしていることからも明らかである。しかしながら、この成功した概念でさえも、コンピュータ産業の急激な成長速度を維持するために継続的に改良されなければならない。マルチメディア装置、特に、ＣＤ−ＲＯＭ装置の出現は、表示用途の標準構成要素として、例えば、ライブアニメーションやビデオクリップのようなビデオ機能を提供するために使用される第２記憶の大容量化に貢献している。これらのかつそれ以外の新規なリソースの使用にあたっては、アプリケーションデザイナやユーザの類は、デスクトップ環境の追加機能やその使用をより容易になることを要求している。
【０００５】
ＧＵＩ設計に関連する課題を検討するために、アップル  マッキントッシュTM  コンピュータ上で動作し、長年に渡って改良され続けているＦｉｎｄｅｒTMユーザインタフェースと情報管理システム（以降、単に、ＦｉｎｄｅｒTMユーザインタフェース）を有するＧＵＩを例に検討する。ＦｉｎｄｅｒTMユーザインタフェースは、コンピュータ情報の管理を支援する「ウインドウ」と「アイコン」を使用する上述の表示原理に基づいている。メインあるいはルートウインドウは「デスクトップ」領域と呼ばれている、あるいはより一般的には、基本表示領域と呼ばれている。デスクトップあるいは基本表示領域は、常に開かれ（内部のコンテンツにアクセス可能な状態であるいは少なくとも一部分がアクセス可能な状態でスクリーン上に表示され）、他のウインドウが開かれていない場合は実質的に全表示画面領域を占めている。他のウインドウが開かれている場合には、デスクトップは、通常、バックグランドで可視状態にある。
【０００６】
デスクトップ自身を含む特定ウインドウ内に存在するものは、「アイコン」と呼ばれる情報識別子である。アイコンは、特定コンピュータ情報の集合に関連付けられている画面識別子である。典型的なアイコンは、データの集合あるいはプログラムあるいはプログラムセグメントのいずれかである「ファイル」を表現している。また、アイコンは、ウインドウの閉状態を表現することもできる。アイコンはコンピュータ画面上で表示されるグラフィックイメージであり、通常は、ファイル内に記憶される情報の種類に対応している。アイコンは、そのアイコンが可視状態にある場合にグラフィックイメージによって表現される特定ファイルへのユーザアクセスを寄与する。アイコン及びウインドウの使用は、従来よりよく知られている。
【０００７】
「ファイル」は、ユーザが利用し、生成しあるいは編集しようとする情報パケットであり、各特定ファイルは、そのファイルに関連付けられているファイル識別名を有している。それゆえ、ファイル名、そのファイル名に関連付けられているアイコングラフィック表現、あるいはウインドウロケータ名を知ることによって、任意のファイルを情報管理システム内に配置することができる。特定ウインドウ内に存在するすべての情報（ファイル）は、コンピュータ情報管理システム内のその特定ウインドウ自身の識別位置で識別される。それゆえ、任意の特定ファイル情報は、特定識別名及びそのウインドウ名を知ることで、検索することができる。これによって、ＦｉｎｄｅｒTMユーザインタフェースを利用する画面表示は、複数のウインドウとグラフィックアイコンに分けられる。
【０００８】
この（かつ他の）従来のユーザインタフェースの別の重要な要素は、スクリーンカーソルである。カーソルは、上述のユーザインタフェースを介するユーザ直接制御を可能にする。ＦｉｎｄｅｒTMユーザインタフェースは「マウス」と、それに対応するカーソル制御装置を構成する「ポインタ」で補完される。ユーザはマウスを制御し、このマウスは、２次元のマウス移動を、例えば、ポインタあるいは矢尻によって表現される２次元のスクリーン位置移動へ変換する電気機械式装置である。ユーザは、マウスを使用して操作する。マウスがテーブル上を自由に移動されると、スクリーン上のポインタが同様にかつ相対的に移動する。また、マウスは１つ以上のボタンを含んでおり、このボタンは、特定アイコンあるいは他のディスプレイツールを選択あるいは非選択することによってカーソルポインタを介する制御を起動させるために使用することができる。マウスボタンが押下される場合にカーソルポインタは「アクティブ状態」となり、そのマウスボタンが離されるまでの間はそのカーソルポインタはアクティブ状態を維持する。ポインタのアクティブ化は、マウスボタン押下のシーケンス、例えば、「ダブルクリック」操作によって開始されても良く、この「ダブルクリック」操作はシーケンス内でマウスボタンを２回続けて押下する動作である。
【０００９】
それゆえ、ディスプレイ管理システム用の従来のユーザインタフェース内の情報へのアクセスは、ウインドウ、アイコン、カーソルのポインタ移動に基づいている。ファイルへアクセスするためには、カーソルポインタは可視状態にあるアイコンあるいは可視状態にあるファイル名へ位置し、そのカーソルポインタをアクティブにする。閉ウインドウは、アイコンあるいはウインドウ名で表現されても良い。カーソルポインタが閉状態のウインドウを表す可視状態のアイコンあるいは可視状態の名前を指示し、カーソルポインタがアクティブにされると、ウインドウはオープンされる。オープンウインドウ内では、ファイルはアイコンあるいは名前で表示される。オープンウインドウの形状は様々で、矩形とすることもでき、かつデスクトップ上のメイン表示画面の表示領域内に存在する。複数のウインドウが一度にオープンされても良く、通常は、直前にオープンされたウインドウが最前面で、そのウインドウよりも更に前にオープンされたウインドウは背面に表示される。上述の管理スキームでは、ウインドウ内でファイルがネストし、かつウインドウが他のウインドウ内、デスクトップ領域あるいは基本表示領域に存在するメインあるいはルートウインドウ内にネストし得ることが認識されている。
【００１０】
ウインドウベースの情報システムを使用するセッション中では、多くのウインドウが、多くの表示アイコンとともに一度に表示され得る。ウインドウは、他のウインドウあるいはアイコンと重なったり、他のウインドウあるいはアイコンの一部、あるいは全体を隠す可能性がある。このことは、ユーザが取得しようとする特定情報がいくつかの層のウインドウの下に隠されるあるいはアクセスを困難にする、つまり、アイコンが他のウインドウによって隠されている場合には、そのアイコンに一時的にアクセスできない可能性がある。これは、コンピュータ業界では、「ウインドウオーバラップ（重なり）」問題と呼ばれている。従来のユーザインタフェースの使用において日常生じるウインドウオーバラップ問題はいくつか存在する。以下では、多くの面倒な状況のいくつかについて説明する。
【００１１】
タスクを完了するためには、ユーザは背面にある、つまり、他のウインドウに覆われているあるいは部分的に重なっているオープンウインドウ内のシングルアイコンにアクセスしなければならない。ウインドウ内の所望のアイコン（「ターゲット」アイコン）は可視状態でないので、アクセス可能状態にはない。重なっているウインドウあるいはターゲットウインドウの前面にあるウインドウは閉じるあるいは移動（「取り除く（shuffled）」）させなれけばならず、そうすることによって、ターゲットウインドウとターゲットアイコンが可視状態になりアクセス可能となる。ウインドウを除くことは手間がかかり繁雑であるので、ユーザにはかなり面倒である。複数のルーチンアイコンがシーケンス内で体系的にアクセスされる必要がある場合には、複数のウインドウを取り除く処理が必要となる可能性がある。
【００１２】
従来のユーザインタフェースにもたらす別のウインドウオーバラップ問題は、ユーザがタスクを完了するために２つのアイコンを必要とし、その各アイコンが異なるウインドウにある場合に生じる。この場合の画面表示は、過去のタスクによるいくつかのオープンウインドウが含まれており、このタスクは、不必要な情報を有する画面表示を散りばめている可能性がある。この情報は、所望のウインドウとアイコンをわかりにくする可能性がある。多くの例では、ウインドウが重なっていることは望ましくないことではないが、可視表示状態では第１に所望するアイコンを保持している。次の第２に所望するアイコンにアクセスするためには、ユーザは、第１に所望するアイコンを保持しているウインドウを閉じ、そして、次に、第２に所望するアイコンのアクセスを行う。既に閉じられているウインドウは第１に所望するアイコンを保持しているので、既存のタスクを完了できるようにするためにそのウインドウは再度開かれなければならない。そして、特に、この第２のアイコンが日常的に必要とされるもの場合には、この処理もユーザにとってはしばしば手間がかかり繁雑となる。このような場合において、ユーザは、上述のような「ウインドウの取り除き」に常に関わることになる。
【００１３】
この種の問題が近年かなり気にかけられていることは驚くことではない。ここ数年のユーザインタフェース製品は、頻繁に使用され、かつ現在アクティブであるデスクトップオブジェクトをＧＵＩによって扱う方法に対し様々なソリューションを提供するために改良されている。例えば、図１Ａ及び図１Ｂで示される従来のＧＵＩについて検討してみる。これには、「デスクトップドロワー（Desktop Drawer）」という概念が、頻繁に使用されるデスクトップオブジェクトを非表示可能で選択的にアクセスすることが実現される。図１Ａは、デスクトップドロワーが閉じられている状態のデスクトップ領域２０を有する画面７５を示しており、ここには、デスクトップドロワーのハンドル１０だけが可視状態にある。それゆえ、いくつかの文書アイコン５５〜５８を含んでいるオープンウインドウ６０は、カーソル５０を介するユーザによる操作でアクセス可能である。また、ウインドウ６０は、ウインドウタイトルフィールド６５とウインドウ選択領域７４を含んでいる。
【００１４】
例えば、ハンドル１０上にカーソル５０が移動されることによって起動されると、デスクトップドロワーはオープンしてそのコンテンツを提示する。この場合には、アイコン４１、４２、５１及び５９が表示される。これらのアイコンが可視状態にあると、これらもカーソル５０を介してユーザによって操作可能である。つまり、デスクトップドロワーは、より容易にアクセス可能な位置で、かつじゃまにならないようにして、頻繁に使用されるアイコンを配置するメカニズムを提供する。関心のある読み手には、この技術のより詳しい説明が「デスクトップドロワーユーザインタフェース」という名称の米国特許番号第５，６５７，０４９号で説明され、この開示は、参照することによって本明細書に組み込まれる。
【００１５】
別の従来のＧＵＩ、即ち、ウインドウズ９５オペレーティングシステムで提供されるＧＵＩは、図２に示されるような同時に実行するアプリケーションを管理するためのタスクバーを提供することによって、デスクトップが繁雑となる問題を取り組むものである。ここでは、デスクトップウインドウ２００は、複数のアイコン２１０とタスクバー２２０を含んでいる。アイコン２１０は、所望のアイコンを、例えば、「ダブルクリック」することによって起動可能なアプリケーションあるいは文書に対する「ショートカット」を提供している。タスクバー２２０は、「最大化」の状態と「最小化」、即ち、デスクトップ２００上で現在表示されない状態の両方を含むアクティブとなるウインドウを識別する。このようなアクティブなアプリケーションは、タスクバー２００上の対応するボタンによって表現され、通常は、アプリケーションのアイコン表現といくつかの説明分を有している。新しいアプリケーションが起動されると、代表ボタンがタスクバー２００上の左から右へと追加される。既存の各ボタンは、新規のボタンをタスクバー２２０上に収容することが可能な長さで変倍される。タスクバー２２０上に存在するアプリケーションを最小化するためには、ユーザは、その代表ボタンをシングルクリックすれば良い。この種の従来のＧＵＩで見られるいくつかの別の特徴には、例えば、アップバー（appbar）２３０のようなアプリケーションバーがある。アップバー２３０は、通常、（タスクバー上にいくつかのアプリケーションだけが存在する場合のタスクバー上のボタン長と比べて）小さいいくつかの小ボタンを含んでおり、これらのボタンは、現在インアクティブなアプリケーションを起動するために押下することができる。
【００１６】
しかしながら、この従来のＧＵＩは、かなり厳格なレイアウト構成（例えば、ユーザは、タスクバー２００上のボタンの順序を選択あるいは管理することができない）を有するという欠点を持っており、多数のアプリケーション表現を処理することが困難にある。より多くのボタンがタスクバー２２０に追加されると、各ボタンは小さくなる。例えば、２０から３０個までのアプリケーションが起動されていて、これらが最小化されると、タスクバー２２０は、図２に示されるようなボタンの列に続けさせるのではなく、第２層とするボタン群を追加し始める。この第２層に到達するためには、ユーザは、タスクバー２２０、即ち、ＧＵＩ上で可視状態にあるボタン以外のボタンをトグルさせなければならない。コンピュータの処理能力や必要なアプリケーション、文書及び他のオブジェクト数が増えるにつれて、ユーザがすぐにアクセスしようとするオブジェクト数が増えることが予想される、つまり、図２で示される方法には無理があり、かつ有効でないことがわかる。
【００１７】
この問題を解決することを試行する別の従来のＧＵＩを、ＮｅＸＴTMオペレーティングシステムで確認することができる。図３に示され、かつ「グラフィック画像管理システム及び方法」という名称の米国特許番号第５，１４６，５５６号（この開示は、参照することによって本明細書に組み込まれる）で説明されるように、このＧＵＩは、画面３１０上の右角にアイコン列を含むアプリケーション「ドック」３００を提供している。ドック３００は、アプリケーションを開始するための可視表示メカニズムを提供するように説明されている。アイコンはドッキング領域の所望の近接位置へアイコンをドラッグすることによって、アプリケーションドック３００に追加したり削除することができ、この時点で、オペレーティングシステムは、アプリケーションドック３００にアイコン群を組み入れる。
【００１８】
図２のタスクバー／アップバー以外で、そのコンテンツを管理することをユーザに可能にする方法によってより柔軟性を持つことになるが、アプリケーションドック３００には、任意のタイミングで組み入れることができるアプリケーション数に制限がある。ドック内のアイコンは固定サイズであり、ユーザマニュアルに従えば、任意のタイミングでドックに含めることができる数は最大１３までとなっている。
【００１９】
つまり、従来においては、頻繁に使用されるこの種のオブジェクトを管理するツールのレイアウトと、このようなオブジェクトをより多く同時に管理しかつ表示することを可能にする点に関してユーザにより柔軟度が高められたＧＵＩを設計する必要性が残っていることが理解できる。
【００２０】
要約
本発明の実施形態に従えば、従来のＧＵＩの課題及び他の課題は、例えば、頻繁に使用されるオブジェクトを扱うための、単純に一元管理し、かつ容易に拡張可能な機能を提供することによって解消される。例えば、本発明に従うユーザインタフェースは、アプリケーションの起動及び実行管理、文書とこれらに関連するウインドウのオープン及び管理、コントロールストリップ機能へのアクセス、あらゆる種類のユニフォームリソースロケータ群（ＵＲＬ群）のナビゲーション、実行プロセスの状態及び通知を含む機能を一元管理するツール（以下、「ユーザバー」と称する）を提供する。
【００２１】
上述したように、タスクバーやドックのようなこの種の既存のツールは、厳密に構成されたレイアウトを持つこと、かつ利用可能な画面領域で表現できるオブジェクト数が制限されることの少なくとも２つの規則の１つ以上に制約されている。このレイアウトに関し、本発明に従うユーザバーは、ユーザの手によってユーザバーの管理がなされるように設計されている。例えば、ユーザバー内の個々のタイルを表現するタイルは希望に応じて再管理することができる。機能の境界を定義する２つの「ブックエンド」以外は、ユーザに強いられる可視的な構造はない。
【００２２】
画面領域に関しては、本発明に従うユーザバーは、オブジェクト処理機能の全コンテンツを変倍する方法を提供し、そうすることで、５０個のオブジェクト（あるいはそれ以上）のそれぞれが、１つの可視構造で収容することができる。例えば、ユーザによって設定されるサイズ、あるいは追加される多数のオブジェクトによって、ユーザバーによって処理されるオブジェクトが小さくなると、異なるタイル間の区別が自然に難しくなってくる。従って、本発明の実施形態は、拡大エフェクトを提供し、以降では、これをユーザバーのコンテンツを変倍して閲覧するための魚眼エフェクトとも称する。このメカニズムは、ユーザバーの特定コンテンツ、特に、最小化ウインドウをより大きいサイズで提示することを可能にし、より詳しくは、ユーザバー内の他のオブジェクトよりも識別し易くすることができる。この特徴は、ツールの各タイル間で、各自の識別性を維持することを可能にし、かつツールとユーザ間の対話を変倍されたコンテンツによって妨げられることを防止する。
【００２３】
詳細説明
以下の説明において、特定詳細は説明のためで、限定するものではなく、この特定詳細は、本発明の全体理解を提供するための、例えば、特定回路、特定構成要素、技術等を説明するものである。しかしながら、本発明がこれらの特定詳細とは異なる他の実施形態で実施されても良いことは当業者には明らかであろう。他の例では、本発明の説明を不明瞭にしないために、周知の方法、装置及び回路の詳細説明は省略する。
【００２４】
本発明の実施形態は、ＦｉｎｄｅｒTMユーザインタフェースを使用するアップル  マッキントッシュTMコンピュータシステム上で実現することができる。しかしながら、本発明に従うユーザインタフェース及びユーザインタフェース要素は、プロセッサとディスプレイを有する任意のシステムと組み合わせて使用できることが当業者には容易に理解されるであろう。一般的には、図４のブロック図の形式で示される、このようなコンピュータシステムは、情報通信のためのバス４００、バス４００に接続され、情報及び命令を処理するためのプロセッサ４０１、バス４００に接続され、プロセッサ４０１に対する情報及び命令を記憶するためのランダムアクセスメモリ４０２、バス４００に接続され、プロセッサ４０１に対する固定情報及び命令を記憶するためのリードオンリメモリ４０３、バス４００に接続され、磁気ディスク、ディスクドライブあるいはＣＤ−ＲＯＭドライブのような情報及び命令を記憶するためのデータ記憶装置４０４、バス４００に接続され、情報をコンピュータユーザに表示するためのディスプレイ装置４０５、バス４００に接続され、プロセッサ４０１に情報及びコマンドを通信するための英数字キー及びファンクションキーを含む英数字入力装置４０６、バス４００に接続され、プロセッサ４０１へ情報及びコマンド選択を通信するためのカーソル制御装置４０７、バス４００に接続され、プロセッサ４０１へコマンド選択を通信するための信号生成装置４０８を備えている。
【００２５】
コンピュータシステム及び本発明で利用されるディスプレイ装置４０５は、ユーザに認識可能な画像及び英数字文字（表意文字群）を生成するのに適している、液晶装置、陰極線管あるいは他の表示装置であり得る。カーソル制御装置４０７は、コンピュータユーザに、ディスプレイ装置４０５の表示画面上の可視シンボル（カーソル）の２次元移動を動的に伝えることを可能にする。カーソル制御装置の多くの形態が従来より知られており、これには、トラックボール、マウス、ジョイスティックあるいは、移動方向あるいは移動順の信号を生成可能な英数字入力装置４０６上の特定キーが含まれる。また、特定キーとキーシーケンスコマンド使用するキーボードからの入力を介して、カーソルを、制御及びアクティブ化の少なくとも一方を実行できることが理解されるべきである。選択的には、カーソルは、割込を抑制する固有に開発された専用カーソル制御装置からの入力を介して制御及びアクティブ化の少なくとも一方を実行できる。実施形態でのカーソル移動及びアクティブ化の少なくとも一方に関する説明においては、入力カーソル制御装置あるいはプッシュボタンは上述の構成のいずれかを構成し、かつマウスカーソル装置に限定されるものではないことが想定される。
【００２６】
図５は、本発明で実施できるコンピュータシステム例を示している。このコンピュータシステムは多くのコンピュータシステムの１つであり、本発明に含まれることが理解されるであろう。これには、キー５０２とキーパッド５０４を有するキーボード５００が、マウス装置５０８及びカーソル制御用のマウスプッシュボタン（群）５１０とともにコンピュータ５０６に接続されている。マウス装置５０８及びプッシュボタン５１０は、カーソル制御装置４０７を実現する。多くの他の制御装置がカーソル制御装置４０７として使用することができ、例えば、キーボード５００は、上述したように、マウス装置５０８及びボタン（群）５１０の代わりとしても良いことが理解されるであろう。また、コンピュータ５０６は、典型的には、1つ以上のメディアドライブ５１１（例えば、フロッピーディスク、ハードディスクあるいはＣＤ−ＲＯＭ）及びディスプレイ画面５１２を含んでいる。
【００２７】
本発明に従うユーザインタフェースを実現することができる上述のコンピュータシステムを用いて、このようなユーザインタフェースの説明に戻る。本発明の実施形態に従えば、従来のユーザインタフェースツールに関する上述の多くの問題を解決するユーザバーがユーザインタフェースに導入されており、このユーザバーは、従来システムで欠落している拡張性、スケラービリティ及び柔軟性を提供することを容易にする。
【００２８】
ユーザバーコンテンツ
本発明に従うユーザバーの一例が、図６のユーザインタフェース内で参照することができる。他の例は、後述する図面で示される。この図において、ユーザバー６００は、ユーザインタフェースの下部に沿って配置されるいくつかの（この例では、１６）のタイルを含んでおり、このタイルは、「ユーザバーアピアレンス」という名のセクションで後述される方法で、カーソル６１０の位置に基づいて変化するその拡大レベルを有している。ユーザバー６００のコンテンツは、ユーザに選択された（あるいは、選択的には、アプリケーションあるいはオペレーティングシステムに選択された）「お気に入り」アイテム群を示している、即ち、このアイテム群は、非常にたくさんある可能性が高い好みのアイテムを手広く集めるよりも、より容易にアクセスするに値するアイテムであるとユーザが判定したものである。本発明に従うユーザバー６００の直接的な構成メカニズムは、そのコンテンツの頻繁な切替を容易にする、このコンテンツはユーザのプリファレンスに基づいているので、あるユーザから別のユーザへと自動的に切り替わる。任意の種類のアイテムやオブジェクトをユーザバー６００で扱うことができ、いくつかの例としては、アプリケーション、文書ファイル及びウインドウが含まれる、また、本明細書では、本発明に従うユーザバーがどのようにして様々なアイテムを表しかつ操作するかを示すために、これらの例を用いて説明する。
【００２９】
アプリケーションは、例えば、２種類の方法の１つによって、ユーザバー６００上に配置することができる。まず、アプケーションのアイコンを、常駐物、例えば、最も頻繁に起動されるアプリケーションとして、ユーザバー６００に追加することができる。あるいは、アプリケーションは、ユーザバー６００の常駐物としなくても良いが、現在実行中という理由からそれを追加しても良い。このような非常駐アプリケーションは、そのアプリケーションが動作している限りはユーザバー６００内に存在しても良く、アプリケーションが終了された場合にはＧＵＩによって自動的に消去されても良い。ユーザバー６００から起動されることがない非表示のバックグランドアプリケーション、例えば、ウイルス防止アプリケーションは、動作中でもユーザバー６００上に存在する必要はない。同様に、Ｆｉｎｄｅｒコピーのような、アプリケーションサブプロセスも、ユーザバー６００上のアプリケーションタイルとして存在する必要はない。
【００３０】
文書ファイルも、ユーザバー６００に配置することができる。これには、例えば、編集可能、編集不可（即ち、読出専用）及び固定ファイルが含まれる。アプリケーションの「セット」ファイル（例えば、ロケーションマネージャセット）もユーザバー６００上に配置することができるが、ユーザバー６００のタイル群の１つの選択でセットの切替を行う場合にユーザバー６００の一部としてユーザに利用させるようにしても良い。ユーザは、ユーザバー６００上に１つの文書の複数のコピーを配置することもできるが、ユーザバー６００には、特定状態では各オブジェクトの表現が１つだけ含んでいることが好ましい。例えば、フォルダを表すタイルがユーザバー６００上に配置されていて、ユーザがそのフォルダを開くと、ファイル管理システム（例えば、Ｆｉｎｄｅｒ）において、そのフォルダによって表されるディレクトリを開く（あるいは導く）ことができる。次に、ユーザがそのファイル管理システムウインドウを最小化すると、既存のユーザバーオブジェクトが最小化ウインドウ（例えば、フォルダアイコン）としてユーザバー６００上に配置される。同様に、ユーザバー６００から文書が開かれ、続いてユーザによってそのウインドウが最小化されると、その最小化ウインドウ表現は、そのオブジェクトに対しユーザバー６００に別タイルが追加されるよりも、既存の文書のタイルに対して使用される画像に置き換えられるのが好ましい。
【００３１】
ユーザによって最小化される文書ウインドウはユーザバー６００上に配置され、それが閉じられるあるいは最大化されるまではユーザバー６００上に存在している、この処理については、以下の「ユーザバー機能」という名のセクションでより詳細に説明する。タイル上で表される画像は、例えば、１）実際のウインドウのコンテンツの動的変倍表現、あるいは２）例えば、ウインドウのプロキシアイコンのようなアプリケーションによって提供される画像であり得る。例えば、最小化Ｆｉｎｄｅｒウインドウは、例えば、ユーザバー６００内のアイコン６２０のようなフォルダアイコンとしてより適切に配置され、これに対し、ユーザバー６００上のＦｉｎｄｅｒウインドウのコンテンツは変倍画像で提供される。
【００３２】
アプリケーション、文書及びウインドウに加えて、多くの他の種類のアイテムをユーザバー６００に配置しても良い。例えば、システムがサポートしているユニフォームリソースロケータ（ＵＲＬ）ファイルの種類の内の任意の種類のファイルをユーザバー６００上に配置することができ、このファイルの種類には、ｈｔｔｐ、ｆｔｐ、ｎｅｗｓ、ｍａｉｌｔｏ、ａｔ、ａｆｐ及びｆｉｌｅの拡張子を有するファイルの種類が含まれるが、これに限定されるものではない。加えて、デベロッパー定義プリファレンスあるいは設定モジュール（例えば、コンピュータのスピーカ音量を調整するスライダーコントロール）も、ユーザによってユーザバー６００に追加することができる。このようなプリファレンスあるいは設定モジュールのユーザバー６００への追加は、例えば、Ｆｉｎｄｅｒからユーザバー６００へ指定したオブジェクトをドラッグすることによって達成することができる。
【００３３】
本発明の実施形態に従えば、２つのアイテムが、ユーザバー６００の常駐物となっている。参照番号６３０と６４０で示されるこれらのアイテムは、ユーザバー６００上のこれらのアイテム間のコンテンツを規制する「ブックエンド」として動作する。ブックエンドとして動作するための特定タイルの選択の形態には本発明では様々であることが当業者には理解されるであろう。しかしながら、本明細書でのタイル６３０で説明される実施形態では、このタイル６３０はＦｉｎｄｅｒプロセスとそのウインドウリストを表しており、ユーザバー６００の左ブックエンドとして提供されている。このタイル６３０は、実行中のＦｉｎｄｅｒプロセスを表しており、本実施形態に従えば、それ以外のタイルは、ユーザバー６００上のこのオブジェクトの左側には配置されない。同様に、ごみ箱オブジェクトを表すタイル６４０は、本実施形態ではユーザバー６００の右ブックエンドとして動作する。このタイルは、デスクトップＧＵＩ上で他のアイコン表現のごみ箱オブジェクトに置き換えられても良い。右ブックエンドとして動作すると、ユーザは、ユーザバー６００上のこのオブジェクトの右側には他のタイルを配置することはできない。
【００３４】
タイル６３０と６４０で例示されるユーザバー６００上の２つの常駐物例に加えて、ユーザの指示あるいはＧＵＩで定義される方法によって、他の所定コンテンツをユーザバー６００上に配置することもできる。ユーザバー６００上のこのような常駐物に対する候補アイテムには、例えば、アプリケーションフォルダ、お気に入り、アドレスブック、時計、ウェブブラウザ及び電子メールアプリケーションが含まれる。
【００３５】
ユーザバーアピアレンス
本発明の実施形態は、ユーザバー６００の外観に映像効果を与える様々なメカニズムを提供し、これは、頻繁に使用されるオブジェクトを扱うために、オブジェクトを単純に一元管理しかつ容易に拡張することを実現することを支援すること意図する方法で提供される。ユーザバー６００は、横１列に並ぶアイテム群、あるいはそれぞれが特定オブジェクトあるいはプロセスを表す「タイル群」として実現することができる。オペレーティングシステムにおける各オブジェクトあるいはプロセスに対してサポートされている任意の状態も、各状態において異なる表示形態を提供することによって、ユーザバー６００上でサポートされるべきである。例えば、ユーザバー６００に配置されたタイルは、ある状態では選択され、別の状態では開かれるあるいはオフラインに切り替えるようにして、その表示形態を変更することができる。これは、ユーザバー６００上の各アイテムの現在の状態をユーザに容易に認識させることができる。現在実行中のアプリケーションは、上述あるいは後述のアプリケーションのタイルあるいはアイコンに対応する、例えば、ＬＥＤのようなインジケータ画像を配置することによって示すことができる。また、アプリケーションは、ユーザバー６００内の実行中のアプリケーションのタイルを別のタイル画像に置き換えるあるいは、ユーザバー６００内の実行中のアプリケーションのタイル上に別のタイル画像を構成することもできる。例えば、電子メールアプリケーションのタイルは、そのアプリケーションのアイコン上に新規メッセージ数を重ねて表示することができる。
【００３６】
本発明の実施形態に従えば、ユーザバー６００のデフォルト位置はメインモニターの下部中央に水平に固定される。つまり、ユーザバー６００は、そのユーザバー６００内に配置されるアイテム数に関係なく、画面の水平方向の中央を中心にする位置で維持される。好ましい形態によれば、ユーザは、ユーザバーをそのデフォルト位置から移動することも、あるいはしないことも可能である。
【００３７】
ユーザバー６００のサイズに関しては、本実施形態に従えば、ユーザバー６００は６４×６４画素のデフォルトサイズを有している。このデフォルト高は、以下の「ユーザバータイルの可変拡大」という名のセクションで説明されるように、カーソル位置で関連づけられる配置を変更することができる。ユーザバー６００の下部と画面下部の間には、ユーザバーの下に配置されるあるいはドラッグされるウインドウが部分的に見えるようにするために、数画素のギャップが設けられている。あるいは、ユーザバーは、ギャップが存在しないような表示領域のかなり下部に配置されても良い。実際には、ユーザバー６００は、ディスプレイに上の任意の領域に配置することができる。
【００３８】
ユーバー６００は、これらの実施形態に従えば、画面上の最前面ウインドウである、即ち、それ以外のウインドウすべては、ユーザバー６００の背面に存在する。文書ウインドウを生成あるいは拡大する場合には、アプリケーションは、ユーザバーの前面の文書ウインドウの下部に配置すべきであり、そうすることで、新たに生成されたウインドウが重ねられない限り、ユーザバー６００のウインドウの任意の部分が曖昧にならない。
【００３９】
各タイルは、それに関連付けられるラベルを持つことができる。例えば、図６では、ラベル「時計」は、タイル６１０上の中央に示すことができる。このラベルが対応するタイルの下に選択的に表示することができることは当業者には理解されるであろう。本発明の実施形態に従えば、各タイルに対するラベルは、カーソルがそのタイルに近接しているときだけ、モニタ上で可視状態となる。例えば、カーソルが特定タイルに関連付けられた領域に移動すると、そのタイルに関連付けられたタイルが表示される。カーソルがその領域から離れると、そのタイルのラベルは消滅する。タイルのラベルは、可視あるいは不可視とする場合は、それをフェードインあるいはフェードアウトすることでそのようにすることもできる。本発明の実施形態では、カーソル６１０がユーザバー領域に入ると、ゼロミリ秒のフェードイン時間が設定されるが、この値が変更できることは当業者には明らかであろう。実際には、本明細書で説明されるフェードイン及びフェードイン値は、例えば、以下の図７で説明されるユーザプリファレンスダイアログボックスを使用して、ユーザによって変更可能である。
【００４０】
カーソル６１０をユーザバー６００上のタイル群上を移動させてゆくと、注目のタイルラベルがフェードインし、直前のタイルラベルはフェードアウトする。但し、本発明の実施形態では、カーソルのユーザバー６００上の移動に応じて、タイルラベルをフェードインし、フェードアウトする値はゼロミリ秒に設定している。カーソル６１０がユーザバー６００から離れる場合は、直前のラベルは、短時間、例えば、２５０ミリ秒表示され続け、その後、フェードアウトする。本発明の実施形態では、一回に１つのラベルだけを表示する構成で説明されているが、本発明の構成が様々な形態に容易に適用できることは当業者には明らかであろう。例えば、現在カーソルが指示されているタイルに関連付けられているタイルラベルと、そのタイルの両側のタイルのラベルを同時に表示することもできる。また、表示されるタイルラベルの数を、ユーザで設定可能としても良い。
【００４１】
本発明の別の実施形態に従えば、ユーザバーのユーザによるコンテンツ管理を支援するために、セパレータタイルを提供することができる。このカラー化あるいは半透明化セパレータタイルは、タイルグループ間の視覚的区別を提供するために既存タイル間に配置することができる。例えば、セパレータタイルは、半幅タイル（例えば、３２画素）及び１／４幅タイル（例えば、１６画素）の少なくとも一方で提供することができる。
【００４２】
ユーザバータイルの可変拡大
上述のように、本発明の有益な効果は、ユーザバー６００の１行に多くのタイルを配置することが可能な機能から得ることができる。もちろん、ユーザバー６００の１行に配置できるタイル数は画面サイズや各タイルのサイズに依存する。画面サイズは固定であるので、ユーザバー６００内のタイルの数を増やす方法は、そのサイズを縮小することしかない。しかしながら、相対的に小さいサイズの各タイルの画像は、ユーザからは区別しにくくなる。そこで、本発明の実施形態では、ユーザバー６００上の各タイル間に拡大レベルを与えることによって、この問題を解決する。
【００４３】
図６で示される実施形態を再度参照すると、ユーザバー６００内のあるタイル、即ち、「時計」という文字を有するタイル上にカーソル６１０が存在していることがわかる。そして、カーソル６１０が存在する「時計」タイルは、ユーザバー６００内の周辺タイルよりも大きくなるように拡大されていることが認識される。この拡大は、本発明の実施形態に従うユーザバー６００で提供される「魚眼」エフェクトに起因するものである。
【００４４】
本発明の実施形態では、カーソル６１０が存在するタイルだけが拡大されるのではなく、その周辺タイルも拡大される。拡大量は、カーソル位置に近接するタイルに応じて変更することができる。本例では、拡大レベル量は、カーソル６１０から各タイルエッジの距離の関数となる。もちろん、この種の機能を提供するために採用できる様々な種類の拡大技術及びアルゴリズムが存在することが当業者には明らかであろう。例えば、カーソルが複数のタイルに跨がって存在している複数のタイルの一方は、いくつかの拡大レベルで表現することができる。選択的には、カーソルが存在している各タイル毎に拡大することができる。各タイルの拡大レベル（パーセンテージ）も、任意の所望の方法で変更することができる。
【００４５】
但し、より基本的なレベルでは、この拡大はユーザバー６００内の１つ以上の選択されたタイルに可能とする、即ち、カーソル６１０によって指示されるタイルとそのカーソル６１０に近接するタイルに可能とする、これにより、ユーザバー６００内に他のタイルが存在して区別が難しい場合でさえも、容易に確認し識別することができる。本発明に従うユーザインタフェースに関連付けられているの技術の内のこの拡大機能は、一方では、従来のユーザインタフェース１つでも可能であったより多くのオブジェクトを扱うことをユーザバー６００で可能とし、同時に、ユーザバー上に存在する各オブジェクトをユーザが容易に識別し操作することを可能にする。
【００４６】
カーソル６１０がユーザバー６００上を移動すると、現在のカーソルとの相対位置に基づいて、あるタイルは拡大され、一方で、他のタイルは縮小される。例えば、図６と図７を比較してみる。これらの２つの図は同一のユーザバー６００を示している、即ち、そのユーザバー６００内には同一タイルが存在しているが、拡大特性は異なっている。図７では、カーソル６１０は「８」が付されているタイルに存在している。「８」のタイルの周辺タイルのいくつかも拡大されているが、「時計」タイルは非拡大状態に戻り、デフォルトサイズ設定で表示されている。拡大エフェクトは、適用される拡大レベル（以下に説明するユーザが選択可能なレベル）による判定に応じて、カーソルがユーザバー６００のコンテンツ領域を離れる場合に止めることができる。例えば、タイルのデフォルトサイズが６４画素である場合、現在カーソルが指示しているタイルはその拡大エフェクトによって１２８画素に変倍されるが、このエフェクトはカーソルがユーザバー６００の１２８画素領域上辺境界を離れるまで終了しない。
【００４７】
図７にも示されるように、ユーザバー設定画面６２０はタイルサイズ、拡大特性及びユーザバーの表示／非表示をユーザに変更させることを可能にする。本発明に従うユーザインタフェースのこの特性例は、以下でより詳細に説明する。
【００４８】
図８Ａ〜８Ｄを参照すると、本発明に従う可変拡大機能の詳細例が説明される。ここでは、各タイルは、基準ベースライン８００（ディスプレイ上の任意の位置かつ任意の方向で配置することができる）に沿って配置される。図８Ａに示されるように、各タイルは同一高ｈを有するが、異なる幅を持つことができる。図８Ａは、カーソル６１０がユーザバー領域外にある場合、即ち、可変拡大機能エフェクトが起動されない場合のユーザバー６００に存在するタイルのグループのデフォルト表示状態を示している。
【００４９】
可変拡大機能を確立するためには、変倍高Ｈとエフェクト幅Ｗを選択する。これらのパラメータの両方あるいはどちらかをユーザが選択可能である。例えば、図７のユーザプリファレンスダイアログボックス７２０は、ユーザがスライダを介して変倍高Ｈを選択できる例を示している。エフェクト幅は、変倍されるユーザバー領域内でカーソル位置のどちらかの側にＷ画素が部分的に重なるタイルの領域を定義する。例えば、図８Ｂに示されるように、濃タイルは、カーソル６１０の位置に基づいて変倍されるが、ユーザバー６００のどちらかの端の淡タイルは変倍されない。パラメータＷは、デフォルトタイル幅の整数倍を選択することができるが、このような条件は必須ではない。
【００５０】
Ｗとカーソル位置に基づいてエフェクト領域が判定された後、エフェクト幅に基づく変倍量Ｓとタイル高の変更は、以下の式（１）に従って計算される。
【００５１】
Ｓ＝（（Ｈ−ｈ）÷２）÷ｓｉｎｅ（π×（ｈ÷２）÷（Ｗ×２））  （１）エフェクト領域外のタイルは変倍量Ｓによって、カーソル位置からずらされ、その結果、ユーザバー６００の幅は２Ｓ以上に増える。
【００５２】
カーソル６１０がユーザバー領域に入ると、２つの距離（ｄ1とｄ2）が各タイルに対して計算される。より詳しくは、図８Ｃに示されるように、各タイルに対して、カーソル６１０の位置からタイルの左エッジまでの距離ｄ1とカーソル６１０の位置からタイルの右エッジまでの距離ｄ2が計算される。ｄ1あるいはｄ2のどちらかの値が範囲｛−Ｗ，Ｗ｝外である場合、その値は−ＷとＷの近い方に変更される。次に、変倍値ｄ1'とｄ2'は、以下のｓｉｎｅ関数を使用して計算される。
【００５３】
ｄ1'＝Ｓ×ｓｉｎｅ（π÷２×ｄ1÷Ｗ）    （２）
ｄ2'＝Ｓ×ｓｉｎｅ（π÷２×ｄ2÷Ｗ）    （３）
次に、各タイルは、左下角から幅と高さが以下の倍率で等倍されるサイズを有するｄ1'とｄ2'の間で再描画される。
【００５４】
１＋（ｄ2'−ｄ1'）÷（ｄ2−ｄ1）    （４）
上述の内容は、単なる特定例であり、本発明に従う可変拡大エフェクトが実現できる別の実施形態が更にあることが当業者は理解するであろう。また、カーソルがユーザバー６００領域に移動する場合、即ち、ユーザバー６００内に存在するタイルの１つの境界にカーソルがふれる場合、可変拡大エフェクトが起動されるユーザインタフェースを本発明は説明しているが、例えば、カーソルがタイル境界の１つから所定距離内に移動する場合に、早めに拡大エフェクトを起動できることが当業者は更に理解するであろう。
【００５５】
ユーザバー機能
本発明の実施形態に従うユーザバーコンテンツ及び表示形態例の説明を用いて、ユーザバー６００が所望のユーザインタフェース機能を提供できる場合の技術例の説明に戻る。本発明の実施形態に従えば、ユーザバー６００はコンテナ（容器）として実現されなくても良いので、「固定（hold）」ファイルシステムオブジェクトとすることはできない。つまり、ユーザによってユーザバー６００上に配置されるオブジェクトは、ファイルシステムあるいはソースオブジェクトに対するエイリアスとして実現される。これは、例えば、ユーザバーからごみ箱６４０へオブジェクトを移動することは、そのソースファイルを削除しないことを意味する。
【００５６】
本発明に従うユーザバー６００は多くの機能と特徴を有し、これには、起動、ナビゲーション及びプロセス管理が含まれる。また、ユーザバー６００は、ドラッグによる起動及び記憶をサポートでき、例えば、タイルとしてユーザバー６００に存在するアプリケーションあるいはフォルダに文書をドラッグすることによって、その文書を開いたり記憶する機能をサポートできる。
【００５７】
ナビゲータとしては、ユーザバー６００は、ウインドウに限定されないお気に入りの「場所」へのアクセスあるいは案内をユーザに容易に行う方法を提供する。例えば、本実施形態に従えば、システム全体でサポートしているユニバーサルリソースロケータ（ＵＲＬ）やローカルあるいはリモートディレクトリをユーザバー６００に配置することができる。但し、ウインドウのコンテキストにおいては、最小化ウインドウは変倍することができ、かつユーザバー６００に追加することができる。最小化ウインドウは、ユーザバー６００上で、例えば、このコンテンツのサムネイルあるいはそのウインドウのプロキシアイコンとして存在することができる。Ｆｉｎｄｅｒビューのフォルダの最小化ウインドウは、そのウインドウのコンテンツのサムネイルではなく、フォルダアイコンとして示されるのがより適している場合がある。ユーザバー６００上のアプリケーションアイコンは、そのオープン文書ウインドウのコンテキストメニューを提供でき、それによって、ユーザは特定ウインドウを選択して前面に表示することができる。
【００５８】
プロセスマネージャとしては、ユーザバー６００は、実行アプリケーション間の識別と切替を行う方法をユーザに提供する。例えば、ユーザバー６００は、ユーザに、プロセスの表示／非表示を可能し、かつコンテキストメニューあるいはマウスクリックの変更を介するような他の動作の実行を可能にする。例えば、停止、起動、実行、非表示での実行のようなアプリケーションの状態を、例えば、表示形態、動作あるいはユーザバー６００上のアプリケーションの表現タイルの他の特性を変更することによって、ユーザバー６００で示すことができる。アプリケーションはユーザバー６００上でその状態を更新することができ、それによって、表現タイルの表示形態あるいは動作が変更される。例えば、ユーザバー６００上に存在する電子メールアプリケーションを表現するタイルには、ユーザの受信ボックスの新規メッセージ数を表現する数を重ねて表示することができる。この数は更新することができ、かつ受信ボックスの状態の変化、例えば、受信ボックスの新規メッセージが増えるあるいはユーザが自身のメッセージを閲覧したことで新規メッセージが減るような変化に応じて変更することができる。
【００５９】
動作としては、本実施形態に従えば、実行中のアプリケーションはすべてユーザバー６００上に存在する。起動される場合は、これらのアプリケーションはそのタイルが直ちに左ブックエンドタイル６３０の右側に配置される。アプリケーションが実行中にタイルが触れられずに放されると、そのタイルはユーザバー６００から一旦消え、アプリケーションが終了する。アプリケーションが実行中にユーザがユーザバー６００内のアプリケーションタイルの位置を変更する場合には、そのタイルをユーザバー６００の常駐物として指定され、アプリケーションが終了した後でも消えることはない。
【００６０】
アイテムは、ユーザバーのコンテンツ領域にドラッグすることによってユーザバー６００に追加することができる。ドラッグ中に、カーソル６１０がユーザバー６００の領域に入ると、ユーザバー６００は、そのドラッグされているアイテム（群）を登録するために、既存の２つのタイル間の付近で拡がる。これは、ユーザバー６００内の任意の位置にアイテムを挿入することを可能にする。拡げられている間に、ドラッグされるアイテムの画像が、ユーザバー６００内でドロップされた場合にその画像がしめる位置をユーザバー６００内で可視状態とされる。これらは、半透明の「挿入対象タイル」として表示することができ、これによって、ユーザバー６００のその位置にアイテムをドロップした後に、ユーザバー６００がどのようにして表示されるかの様子がユーザに伝えられる。
【００６１】
ドラッグしながらユーザバー６００内に移動してから、カーソル６１０がユーザバー６００上を移動し続けている場合、挿入対象タイル（群）は、カーソル６１０の水平位置に従って移動する。タイルが並ぶ中央位置に対するカーソル６１０の相対位置は、既存のタイルと挿入対象タイルをどのように並べ替えるかを判定するために使用される。アイテム（群）がドロップされると、アイテム（群）を表現する実際のタイル画像（群）が、各半透明の挿入対象タイル（群）と置き換わる。アニメーションシーケンスが、この動作を強調するために表示されても良い。
【００６２】
ユーザは、ユーザバー６００上のアイテムを再整列あるいは再配置することができる。但し、上述の実施形態の２つのアイテム、Ｆｉｎｄｅｒアプリケーションタイル６３０とごみ箱タイル６４０は再配置することはできない。その代わり、これらのタイルはブックエンドとして維持され、ユーザバーのコンテンツの境界を定義する。アイテムの再配置は、ユーザバー６００へアイテムを追加するプロセスに対して適用されるグラフィカルフィードバックと同様に、アイテム（タイル）を新しい位置へドラッグすることによる直接的な方法で実現することができる。つまり、削除される場合には、タイル画像を半透明のタイル画像に変更することが可能で、かつユーザバー６００に再挿入する場合は、タイルはその現在の状態に関連付けられている画像を再取得する。ユーザがドラッグ操作を開始する前にユーザバー６００内の複数のアイテムを選択している場合には、複数のアイテムを同時に再配置することができる。
【００６３】
複数のタイルの選択は、他の動作が発生しない状態で、例えば、１つのタイルだけを選択して実行するシフトクリックを定義することによって実行することができる。ユーザがシフトキーを押下している状態を維持している場合は、追加のタイルを選択することができる。タイル群の内の１つのタイルが予め選択されている状態からのドラッグ操作は、そのタイル群をすべて選択することになる。連続していないタイルの選択でそれらのタイルがユーザバー６００内で再配置される場合、その選択はドロップ後も維持されることになる。
【００６４】
アイテムは、それらをごみ箱タイル６４０あるいはデスクトップへドラッグすることによってユーザバー６００から消去することができる。ごみ箱タイル６４０は、自身にアイテムがドラッグされる場合には適切なドロップフィードバック（例えば、音声及びアニメーションのどちらか一方）を行う。上述のように、ユーザバー６００はオリジナルソース識別子ではなくそのエイリアス（即ち、ポインタ）のみを保持するコンテナあることが好ましいので、その動作は、アイテムのユーザバー表現を消去するのみで、オペレーティングシステムのソースオブジェクトは消去しない。選択的には、当業者にもよく理解されているように、ユーザバー６００は、エイリアス以外の実ファイルシステムオブジェクトを使用して実現することもできる。
【００６５】
ユーザバー６００は、そのユーザバー６００上に存在するアイテムとユーザの対話を、例えば、シングルマウスクリックを介して可能にするように実現することができる。本実施形態に従えば、ユーザバー６００に存在するタイル上のシングルクリックは、以下の結果となるような処理を行う。
【００６６】
−  アプリケーションタイル上では、この操作は、アプリケーションを開始する。
【００６７】
−  文書タイル上では、この操作は、必要であれば、アプリケーションを起動して、その適切なアプリケーションを用いてその文書を開く。
【００６８】
−  ＵＲＬタイル上では、この操作は、適切なアプリケーションを使用して実際の宛先へ進む。
【００６９】
−  コントロールストリップ上では、モジュールのインタフェース（即ち、メニュー）が表示される。そのインタフェースの外側でクリックすると、そのインタフェースを消去する。
【００７０】
−  最小化ウインドウ上では、この操作は、そのウインドウを最大化する。
【００７１】
ユーザは、所望のアプリケーションタイル上でクリックすることによって実行中のアプリケーションを切り替えることができる。これは、そのアプリケーションとそれに関連付けられているウインドウのすべてをウインドウ階層順で前面に持ってくる。
【００７２】
ユーザバー６００のドラッグ＆ドロップの構成に加えて、ユーザは、ファイルや他のユーザバーアイテムをユーザバー６００上に存在するタイルへドラッグ＆ドロップすることができる。例えば、文書を、ユーザバー６００のワープロアプリケーションを表現するタイル上にドラッグ＆ドロップすることができ、これによって、ワープロアプリケーションが起動され、そのドロップした文書が開かれる。選択的には、ファイルをユーザバー６００上に存在するフォルダにドロップすることができ、これにより、そのファイルが対象フォルダに移動されるあるいはコピーされる。
【００７３】
当業者に理解されるように、ユーザがユーザバー６００へアイテムを追加する操作と、ユーザバー６００に既に存在する既存タイル上にアイテムをドロップする操作とをＧＵＩが区別できるようにすることは有用なことである。本発明の実施形態に従えば、ドロップされる前のドラッグ中に任意のタイミングで押下される変更キーは、通常の挿入動作の代わりにドロップ動作を実行する。この変更キーは、挿入モードとドロップモード間のトグルとして動作し、ドラッグ中に放されると、デフォルトの挿入の代わりにドロップがなされる。変更キーの状態のトグルは、バーを開く（挿入を受付ける）ことと閉じることを繰り返す。
【００７４】
変更ドラッグ中に、ドラッグされるオブジェクトの種類を受信できることを示すために、適切な対象タイルをハイライト表示することができる。ユーザは、適切な対象を効果的に視認しながら、ユーザバー６００上でアイテムをドラッグし続けることができる。
【００７５】
ユーザバー６００は、ユーザに制限のある画面領域をより有用に使用することを可能にすることを意図するウインドウ管理ソリューションをいくつか提供する。例えば、本発明の実施形態に従えば、ユーザバー６００は、ユーザバー上には最小化ウインドウのみを配置するだけで、開かれているすべての文書ウインドウへのダイレクトアクセスは提供しない。ユーザバー６００上に存在するタイルに関連付けられている文書ウインドウへのアクセスは、例えば、２種類の方法の１つで実行できる。まず、サブメニューを各アプリケーションタイルに関連して表示することができ、このサブメニューは、アプリケーションが開いているすべての文書をリスト表示する。次に、専用アプリケーションタイルをユーザバー６００に追加することができ、これは、それに関連するアプリケーションによってグループ化されているすべての開かれている文書ウインドウに対するメニューインタフェースを提供する。
【００７６】
ユーザバーカスタム化
図７に示されるように、本発明の実施形態は、画面上に表示されるユーザバー６００を調整することをユーザに可能にする技術及びメカニズムを提供する。この例では、ダイアログボックス７２０は、その中で利用可能ないくつかのユーザ設定可能プリファレンスを持つように示されている。これらのプリファレンスは、ユーザの要求に適するようにユーザバーの表示形態や動作を調整することをユーザに可能にする。
【００７７】
例えば、上述のように、ユーザバーのデフォルトサイズは６４×６４画素であり得る。このデフォルト値は、非拡大状態でのタイルのサイズを示している。しかしながら、デフォルト値は、例えば、図７に示されるスライダを用いてユーザによって、例えば、１６から１２８画素四方の範囲内で変更することができる。プリファレンスダイアログボックス７２０は、いつ拡大エフェクトを起動し、拡大量を与えるかをユーザに決定させることを可能にするコントロール群を含むことができる。図７に示される本実施形態のダイアログボックス７２０では、コントロール群は、いつ拡大エフェクトを起動するかをユーザに決定させることを可能にするラジオボタンと、ユーザに、例えば、カーソル６１０が現在位置しているタイルに関連付けられる最大拡大レベルを設定させることを可能にするスライダを含ませるために提供されている。もちろん、拡大されるタイルのサイズは、そのタイルのデフェルトサイズよりは小さいことはなく、ある上限まで、例えば、１２８画素までの拡大が可能であることが好ましい。
【００７８】
ユーザバー６００は、画面外に隠す機能もサポートすることができる。プリファレンスダイアログボックス７２０は、図７に示されるようなラジオボタングループとするコントロールを含むことができ、これは、例えば、自動非表示機能に対し３つの状態（オフ、オン、ホットキー）をサポートしている。自動非表示がオンであると、ユーザバー６００は、カーソル６１０がユーザバー６００の領域内に存在しない場合に、画面外へ下がる（例えば、スライドする）。次に、ユーザバー６００によって通常しめられる表示領域が再現され、アプリケーションにこのイベントが通知される。新規のあるいは拡大された文書は、その通知されたアプリケーションによって変倍され、この追加の画面領域を使用する。カーソル６１０がディスプレイの下部に移動すると、ユーザバー６００が現れる。ホットキーを使用するユーザバー６００の非表示オプションがイネーブルであると、ユーザ定義キーを実行することによってユーザバー６００を隠すあるいは現すことができる。
【００７９】
上述のように、ユーザバー６００上のタイルは、ユーザバー上の常駐物を取得することができ、そうすることによって、例えば、グラフィカルユーザインタフェースが初期化される場合には、その常駐物が自動的にユーザバーの表示領域内に表示される。タイルの常駐あるいは非常駐の指定は、プリファレンスダイアログボックス７２０を介してユーザによって制御することもできる、これは、例えば、（図７では不図示の）常駐タイル選択／非選択機能を使用することによって制御することができ、この常駐タイル選択／非選択機能は、ユーザに常駐として指定するオブジェクトを識別させることを可能にし、かつ選択的には、ユーザバー６００上に配置されるタイルに対応する画像を選択させることを可能にする。
【００８０】
上述の実施形態は、本発明を制限するものではなく、むしろ本発明に関わるすべてのものを示すことを意図しているものである。例えば、上述の本発明の実施形態は、ディスプレイあるいは画面の下部に沿って配置される１行のタイルからなるユーザバーを示しているが、本発明に従うユーザバーがディスプレイ領域の任意の位置でかつ任意の方法で表示されても良いことが当業者には明らかであろう。本発明に従うユーザバーは所望の形状を持たせることができ、例えば、これは非線形形状としたり、複数行のタイルとして表現することができる。つまり、本発明は、本明細書の当業者によって含められる説明から導出することができる詳細実施形態で様々な変更が可能である。このようなあらゆる変形及び変更は、請求項によって定義される本発明の範囲及び精神に含むように考慮されるものである。
【図面の簡単な説明】
【図１Ａ】  従来のユーザインタフェースを示す図である。
【図１Ｂ】  従来のユーザインタフェースを示す図である。
【図２】  オブジェクトを扱うタスクバーとアプリケーションバーを採用する従来のユーザインタフェースを示す図である。
【図３】  アプリケーションドックを採用する従来のユーザインタフェースを示す図である。
【図４】  本発明で実現されるシステム例を示すブロック図である。
【図５】  本発明で実現される、図４の機能ブロックを含むことができるコンピュータシステム例を示す図である。
【図６】  本発明の実施形態に従うユーザバーを含むユーザインタフェースを示す図である。
【図７】  画面上のユーザバー領域内の別の位置に配置されているカーソルと、図６のユーザインタフェースを示す図である。
【図８Ａ】  本発明の実施形態に従う拡大エフェクトメカニズム例を示す図である。
【図８Ｂ】  本発明の実施形態に従う拡大エフェクトメカニズム例を示す図である。
【図８Ｃ】  本発明の実施形態に従う拡大エフェクトメカニズム例を示す図である。
【図８Ｄ】  本発明の実施形態に従う拡大エフェクトメカニズム例を示す図である。
【図１Ａ】
0004620922.tif 000002
【図１Ｂ】
0004620922.tif 000003
【図２】
0004620922.tif 000004
【図３】
0004620922.tif 000005
【図４】
0004620922.tif 000006
【図５】
0004620922.tif 000007
【図６】
0004620922.tif 000008
【図７】
0004620922.tif 000009
【図８Ａ】
0004620922.tif 000010
【図８Ｂ】
0004620922.tif 000011
【図８Ｃ】
0004620922.tif 000012
【図８Ｄ】
0004620922.tif 000013