(57)【特許請求の範囲】
【請求項１】
ディスプレイを有するコンピュータにおいて、
第１のアプリケーションに関連付けられた第１のタスクバーボタンと、前記第１のアプリケーションとは異なる第２のアプリケーションに関連付けられた第２のタスクバーボタンとをタスクバー内に表示するステップであって、前記第１のアプリケーションおよび第２のアプリケーションは、前記タスクバーに個々の内容を提供し、第１のウィンドウが、前記第１のアプリケーションによって提供される、前記第１のアプリケーションに関連付けられた第１の内容を含み、第２のウィンドウが、前記第２のアプリケーションによって提供される、前記第２のアプリケーションに関連付けられた第２の内容を含む、ステップと、
前記第１のアプリケーションに関連付けられた前記第１の内容の少なくとも一部を含む第１のサムネイルを、前記第１のタスクバーボタンに近接して表示するステップと、
前記第１のサムネイルが表示されている間に、前記第２のアプリケーションに関連付けられた前記第２の内容の少なくとも一部を含む第２のサムネイルを、前記第２のタスクバーボタンに近接して表示するステップと
を備えたことを特徴とする方法。
【請求項２】
請求項１に記載の方法において、前記第１のサムネイルを表示するステップは、カーソルが前記第１のタスクバーボタン上にあるときに実行されることを特徴とする方法。
【請求項３】
請求項２に記載の方法において、前記カーソルが前記第１のタスクバーボタンから離れたとき、前記第１のサムネイルを消すステップをさらに備えたことを特徴とする方法。
【請求項４】
請求項１に記載の方法において、前記第１のサムネイルは、前記第１のアプリケーションに関連付けられた対応する動的情報を反映するように前記第１のサムネイルにおいてリアルタイムに変更される動的情報を含むことを特徴とする方法。
【請求項５】
請求項４に記載の方法において、前記動的情報は、前記第１のアプリケーションによって再生されているビデオ情報を含むことを特徴とする方法。
【請求項６】
請求項１に記載の方法において、前記第１のタスクバーボタンは、前記第１のアプリケーションによって実行されているプロセスのステータスに関する情報を提供することを特徴とする方法。
【請求項７】
請求項１に記載の方法において、前記タスクバー内に、前記第１および第２のタスクバーボタンに加えて複数のタスクバーボタンを表示するステップをさらに備え、前記複数のタスクバーボタン、前記第１および第２のタスクバーボタンのサイズは、前記タスクバーに適合するようにスケーリングされて、各タスクバーボタンが同じサイズを有することを特徴とする方法。
【請求項８】
ディスプレイを有するコンピュータに、
第１のアプリケーションに関連付けられた第１のタスクバーボタンと、前記第１のアプリケーションとは異なる第２のアプリケーションに関連付けられた第２のタスクバーボタンとをタスクバー内に表示するステップであって、前記第１のアプリケーションおよび第２のアプリケーションは、前記タスクバーに個々の内容を提供し、第１のウィンドウが、前記第１のアプリケーションによって提供される、前記第１のアプリケーションに関連付けられた第１の内容を含み、第２のウィンドウが前記第２のアプリケーションによって提供される、前記第１のアプリケーションに関連付けられた第２の内容を含む、ステップと、
前記第１のアプリケーションに関連付けられた前記第１の内容の少なくとも一部を含む第１のサムネイルを、前記第１のタスクバーボタンに近接して表示するステップと、
前記第１のサムネイルが表示されている間に、前記第２のアプリケーションに関連付けられた前記第２の内容の少なくとも一部を含む第２のサムネイルを、前記第２のタスクバーボタンに近接して表示するステップと
を含む動作を実行させるコンピュータ実行可能命令を記録したことを特徴とするコンピュータ読取可能記録媒体。
【請求項９】
請求項８に記載のコンピュータ読取可能記録媒体において、前記第１のサムネイルを表示するステップは、カーソルが前記第１のタスクバーボタン上にあるときに実行されることを特徴とするコンピュータ読取可能記録媒体。
【請求項１０】
請求項９に記載のコンピュータ読取可能記録媒体において、前記動作は、前記カーソルが前記第１のタスクバーボタンから離れたとき、前記第１のサムネイルを消すステップをさらに備えたことを特徴とするコンピュータ読取可能記録媒体。
【請求項１１】
請求項８に記載のコンピュータ読取可能記録媒体において、前記第１のサムネイルは、前記第１のアプリケーションに関連付けられた対応する動的情報を反映するように前記第１のサムネイルにおいてリアルタイムに変更される動的情報を含むことを特徴とするコンピュータ読取可能記録媒体。
【請求項１２】
請求項１１に記載のコンピュータ読取可能記録媒体において、前記動的情報は、前記第１のアプリケーションによって再生されているビデオ情報を含むことを特徴とするコンピュータ読取可能記録媒体。
【請求項１３】
請求項８に記載のコンピュータ読取可能記録媒体において、前記第１のタスクバーボタンは、前記第１のアプリケーションによって実行されているプロセスのステータスに関する情報を提供することを特徴とするコンピュータ読取可能記録媒体。
【請求項１４】
請求項８に記載のコンピュータ読取可能記録媒体において、前記動作は、前記タスクバー内に、前記第１および第２のタスクバーボタンに加えて複数のタスクバーボタンを表示するステップをさらに備え、前記複数のタスクバーボタン、前記第１および第２のタスクバーボタンのサイズは、前記タスクバーに適合するようにスケーリングされて、各タスクバーボタンが同じサイズを有することを特徴とするコンピュータ読取可能記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はタスクバーボタンに関し、より詳細には、タスクバーボタンのカスタムユーザインタフェースに関する。
【背景技術】
【０００２】
コンピュータ上で、ユーザは一般に、アプリケーションを維持、利用し、使用中のアプリケーションを制御しながら、複数のタスクを実行しなければならない。ユーザは一般に、ディスプレイ上の限られたスペースでこうした多数のタスクのすべてを遂行しなければならない。このため、ユーザはしばしば、アプリケーションを制御しながら、同時にコンピュータのタスクを実行することができないジレンマに直面する。このような欠点は、たとえば、ディスプレイの作業スペースが限定されているという問題に起因するであろう。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
これまで、システムは、ユーザがウィンドウをタスクバーに最小化することができるようなメカニズムを提供することにより、ディスプレイ上の作業スペースを管理する問題を多少とも解決しようとしてきた。この方法によれば、ユーザはウィンドウをタスクバーに最小化し、そのウィンドウをディスプレイ上で見えないようにして、大きなスペースをとらなくてすむようにするかもしれない。このように、ユーザは主要なコンピュータタスクを引き続き実行しながら、他のアプリケーションは利用可能な状態のまま、見えないようにすることができる。しかしながら、アプリケーションウィンドウが最小化されると、ユーザは、そのアプリケーションを制御するのに、まず対応するウィンドウを再び開かなければならなくなる。アプリケーションウィンドウがタスクバーに最小化されると、その結果現れるタスクバーボタンにはアプリケーションの名前が含まれるかもしれない。ユーザは、どのアプリケーションボタンがタスクバーボタンに関連付けられているかは判断できるが、アプリケーションがタスクバーに最小化されている状態でタスクを実行することはできない。オープンウィンドウアプリケーションでアプリケーションの操作を実行した後、ユーザは再びそのウィンドウを閉じて、ディスプレイ上の作業スペースを空けなければならない。このようにする中で、ユーザは、アプリケーションウィンドウを開く（および閉じる）ことと、アプリケーションを管理するのに必要なステップを実行することに注意を向けなければならない。さらに、アプリケーションウィンドウを再度開くと、スペースはその再度開かれたウィンドウによって占められ、これによってユーザは、別の開かれたウィンドウを制御するために活動を一時停止せざるをえない。
【０００４】
ユーザのフラストレーションは、アプリケーションウィンドウを最小化し、アプリケーション制御が必要になるとウィンドウを再度開く（そして閉じる、あるいは最小化する）ための上記のような面倒で時間のかかる方法から生じる。ユーザは、ウィンドウを開閉するのに、自分のコンピュータ上の作業を中断しなければならない。その結果、ユーザはディスプレイ上の開かれたウィンドウの管理に時間をとられるため、効率が急激に低下する。
【０００５】
以上のように、業界では、ディスプレイの作業スペースを無駄にすることなく、カスタムユーザインタフェースを通じてユーザによる便利なアプリケーション制御を可能にするためのシステムと方法が求められている。
【課題を解決するための手段】
【０００６】
本発明の態様は、対応するアプリケーションのためのリッチプレゼンテーションタスクバーボタンを表示するためのシステムまたは方法を提供する。一例において、リッチプレゼンテーションタスクバーボタンは豊富な（リッチ）プレゼンテーション要素を表示するために、プログラミングインタフェースを通じてアプリケーションから内容を受け取ることができる。別の例において、リッチプレゼンテーションタスクバーボタンは、動的情報を表示するための対話的な制御用表示要素（コントロールディスプレイエレメント: control display element）で構成される。
【０００７】
本発明の別の態様において、タスクバーボタンを表示し、そのタスクバーボタンに関連付けられているアプリケーションウィンドウのサムネイルを表示するためシステムと方法が提供される。本発明の他の態様において、表示されているアプリケーションのサムネイルは、リッチプレゼンテーションタスクバーボタンに関連付けられている。本発明はさらに、ディスプレイ上にサムネイルをピン留めし、あるいはサムネイルを消すシステムと方法を含む。別の例では、サムネイルは、ディスプレイから消される。
【０００８】
本発明の他の態様において、プログラミングインタフェースを通じてアプリケーションからタスクバーのサムネイルの内容を受け取るタスクバーを提供し、アプリケーションから受け取ったサムネイルの内容に基づいて、サムネイルを表示するためのシステムと方法が提供される。
【０００９】
本発明はさらに、タスクバー上でシンプルタスクバーボタンとともにリッチプレゼンテーションタスクバーボタンを表示することを提供する。一態様では、リッチプレゼンテーションタスクバーボタンは、シンプルタスクバーボタンと同じサイズで表示される。別の例では、リッチプレゼンテーションタスクバーボタンは、シンプルタスクバーボタンより大きなサイズで表示される。また別の例において、タスクバーボタンは、タスクバーボタン統合によって結合される。また、タスクバーボタンをオーバーフローの上に位置づけられるシステムと方法も提供される。
【図面の簡単な説明】
【００１０】
【図１Ａ】コンピュータの形態の汎用コンピューティング装置を含む、本発明を実現するためのシステムの例を示す図である。
【図１Ｂ】本発明のひとつまたは複数の態様をサポートする汎用コンピュータ環境を示す図である。
【図１Ｃ】本発明のひとつまたは複数の態様をサポートする汎用コンピュータ環境を示す図である。
【図１Ｄ】本発明のひとつまたは複数の態様をサポートする汎用コンピュータ環境を示す図である。
【図１Ｅ】本発明のひとつまたは複数の態様をサポートする汎用コンピュータ環境を示す図である。
【図１Ｆ】本発明のひとつまたは複数の態様をサポートする汎用コンピュータ環境を示す図である。
【図１Ｇ】本発明のひとつまたは複数の態様をサポートする汎用コンピュータ環境を示す図である。
【図１Ｈ】本発明のひとつまたは複数の態様をサポートする汎用コンピュータ環境を示す図である。
【図１Ｉ】本発明のひとつまたは複数の態様をサポートする汎用コンピュータ環境を示す図である。
【図１Ｊ】本発明のひとつまたは複数の態様をサポートする汎用コンピュータ環境を示す図である。
【図１Ｋ】本発明のひとつまたは複数の態様をサポートする汎用コンピュータ環境を示す図である。
【図１Ｌ】本発明のひとつまたは複数の態様をサポートする汎用コンピュータ環境を示す図である。
【図１Ｍ】本発明のひとつまたは複数の態様をサポートする汎用コンピュータ環境を示す図である。
【図２】オープンウィンドウがディスプレイ上に表示されている本発明の１つの態様の一例を示す図である。
【図３】ディスプレイ上のウィンドウが最小化されている、または隠されている本発明の１つの態様の一例を示す図である。
【図４】リッチプレゼンテーションタスクバーボタンが表示されている、本発明の１つの態様の一例を示す図である。
【図５】タスクバーボタンを使ってディスプレイ上にウィンドウが示されている、本発明の１つの態様の一例を示す図である。
【図６】最小化された、または隠されたウィンドウに対応するリッチプレゼンテーションタスクバーボタンが制御インタフェースで表示されている、本発明の１つの態様の一例を示す図である。
【図７】サムネイルがアプリケーションとリッチプレゼンテーションタスクバーボタンに関連付けられている、本発明の１つの態様の一例を示す図である。
【図８】サムネイルが閉じられた、本発明の１つの態様の一例を示す図である。
【図９】サムネイルがディスプレイ上にピン留めされている、本発明の１つの態様の一例を示す図である。
【図１０】開いてピン留めされたサムネイルが閉じられた、あるいは消された、本発明の１つの態様の一例を示す図である。
【図１１】サムネイルが閉じられた、あるいは消された、本発明のある態様の一例を示す図である。
【図１２】複数のサムネイルが連続的に表示される、本発明の１つの態様の一例を示す図である。
【図１３】カーソルがタスクバーボタンの上に合わせられ、これによってサムネイルが表示され、別のサムネイルが消される、本発明の１つの態様の一例を示す図である。
【図１４】複数のサムネイルが同時に表示される、本発明の１つの態様の一例を示す図である。
【図１５】サムネイルを表示し、消す方法の例を示すフローチャートである。
【図１６】複数のサムネイルが表示されている状態で、あるサムネイルの表示を遅らせる方法の別の例を示すフローチャートである。
【図１７】サムネイルを消す方法を示すフローチャートである。
【図１８Ａ】シンプルタスクバーボタンでリッチプレゼンテーションタスクバーボタンを表示する例を示す図である。
【図１８Ｂ】シンプルタスクバーボタンでリッチプレゼンテーションタスクバーボタンを表示する例を示す図である。
【図１８Ｃ】シンプルタスクバーボタンでリッチプレゼンテーションタスクバーボタンを表示する例を示す図である。
【図１９Ａ】シンプルタスクバーボタンでリッチプレゼンテーションタスクバーボタンを表示する別の例を示す図である。
【図１９Ｂ】シンプルタスクバーボタンでリッチプレゼンテーションタスクバーボタンを表示する別の例を示す図である。
【図１９Ｃ】シンプルタスクバーボタンでリッチプレゼンテーションタスクバーボタンを表示する別の例を示す図である。
【図１９Ｄ】シンプルタスクバーボタンでリッチプレゼンテーションタスクバーボタンを表示する別の例を示す図である。
【図１９Ｅ】シンプルタスクバーボタンでリッチプレゼンテーションタスクバーボタンを表示する別の例を示す図である。
【図１９Ｆ】シンプルタスクバーボタンでリッチプレゼンテーションタスクバーボタンを表示する別の例を示す図である。
【図２０Ａ】タスクバーボタンをオーバーフロー上に設置することによって、シンプルタスクバーボタンでリッチプレゼンテーションタスクバーボタンを表示する他の例を示す図である。
【図２０Ｂ】タスクバーボタンをオーバーフロー上に設置することによって、シンプルタスクバーボタンでリッチプレゼンテーションタスクバーボタンを表示する他の例を示す図である。
【図２０Ｃ】タスクバーボタンをオーバーフロー上に設置することによって、シンプルタスクバーボタンでリッチプレゼンテーションタスクバーボタンを表示する他の例を示す図である。
【図２０Ｄ】タスクバーボタンをオーバーフロー上に設置することによって、シンプルタスクバーボタンでリッチプレゼンテーションタスクバーボタンを表示する他の例を示す図である。
【図２０Ｅ】タスクバーボタンをオーバーフロー上に設置することによって、シンプルタスクバーボタンでリッチプレゼンテーションタスクバーボタンを表示する他の例を示す図である。
【発明を実施するための形態】
【００１１】
本発明の態様は、ユーザが作業スペースを確保しながらアプリケーションを制御することができるようにするためのシステムと方法を提供する。タスクバーは通常、コンピュータ上のグラフィカルユーザインタフェースであり、このコンピュータは、アプリケーション、ウィンドウ、フォルダまたは、データまたはデータ処理に関連付けられたコンピュータ上の他の要素に対応するユーザインタフェースを含む。タスクバーは一般に、ディスプレイの下端に配置され、各種のコンピュータユーティリティのためのアイコンを含む場合がある。また、タスクバーは一般に、タスクバーボタンを含む。タスクバーボタンはタスクバーに格納される要素であり、そのコンピュータ上で現在どのウィンドウまたはアプリケーションがアクティブであるかを判断する視覚的手段となる。ウィンドウまたはアプリケーションは、さまざまな理由（たとえば、スペースを節約するため）によりディスプレイ上で最小化されるため、単にディスプレイ上で開いているウィンドウを確認するだけでは、たとえば、どのアプリケーションがそのコンピュータ上でアクティブであるかが常に明らかになるとは限らない。
【００１２】
代表的なタスクバーボタンは、タスクバーの中で、コンピュータ上のアクティブなアプリケーションの名前を提供するユーザインタフェースとなる。たとえば、メディアプレイヤアプリケーションがコンピュータ上でアクティブであるが、ウィンドウが最小化されている場合、メディアプレイヤアプリケーションに対応するタスクバーボタンがタスクバーの中に存在することができる。メディアプレイヤアプリケーションに対応するこのタスクバーボタンは、アプリケーションの名前を提供できる（つまり、たとえば“Ｍｅｄｉａ  Ｐｌａｙｅｒ  Ａｐｐｌｉｃａｔｉｏｎ”という単語がタスクバーボタンの中に書き込まれる）。タスクバーはまた選択的に、アプリケーションを特定できるアイコンを表示してもよい。たとえば、ユーザがアプリケーションそのものを認識しやすいように、商標またはロゴがタスクバーボタンの中に現れる。この種のタスクバーボタンをクリックまたは選択する（つまり、たとえば、タスクバーボタン内のいずれかの場所をクリックする）ことにより、対応するウィンドウがディスプレイに回復される。ウィンドウがディスプレイ上ですでに開いているが、他のウィンドウによって隠されている場合、対応するタスクバーボタンをクリックすることにより、そのウィンドウがディスプレイの前面に出て、対応するアプリケーションウィンドウがディスプレイ上の他のウィンドウより前に表示される。タスクバーボタンを再度クリックすることにより、たとえば、ウィンドウは最小化され、ディスプレイ上で見えなくなる。しかしながら、アプリケーションに対応するタスクバーボタンが、アプリケーションがまだアクティブであるとの視覚的合図としてタスクバーの中に残る。対応するアプリケーションの名前と、選択的に商標やロゴがその上に書き込まれており、ウィンドウを最小化し、最小化されたウィンドウを開く機能しかないこのような標準的なタスクバーボタンを本明細書において、「シンプルタスクバーボタン」という。なぜなら、シンプルタスクバーボタンは、アプリケーションの名前を示すシンプルなテキストとそのアプリケーションを視覚的に特定する選択的アイコンだけを提供するからである。また、シンプルタスクバーボタンは、最小化されたウィンドウを開き（あるいは表示されているウィンドウを最小化し）、および／またはウィンドウをディスプレイの前面に持ってくること以外の機能を提供しない。
【００１３】
本発明の一実施形態において、リッチプレゼンテーションタスクバーが提供される。本明細書で提案する「リッチプレゼンテーションタスクバーボタン」は、アプリケーションの単純な名前および／またはアプリケーションを特定するアイコン以上の情報を含むカスタムユーザインタフェースを有する。一例として、リッチプレゼンテーションタスクバーボタンは、対応するアプリケーションに関連付けられ、ユーザが対応するアプリケーションの動作または機能性を制御できるようにするための制御用表示要素を含んでいる。この例では、リッチプレゼンテーションタスクバーボタンが、タスクバーボタンと関連付けられているアプリケーションを制御するユーザ入力を受けることができる。別の例において、リッチプレゼンテーションタスクバーボタンは、対応するアプリケーションを通じて、たとえば、アニメーション、動的情報またはその他関連する情報を受け取り、提供することができる。この場合、リッチプレゼンテーションタスクバーボタンは、ユーザに情報を提供するが、ユーザからの入力は受け取らない。
【００１４】
したがって、リッチプレゼンテーションタスクバーボタンは、タスクバーボタンがユーザからの入力を受け取らないが、アプリケーションから情報またはデータ（たとえば、動的情報）をユーザに供給する一方向インタフェースを提供する場合がある。このような一方向インタフェースにより、リッチプレゼンテーションタスクバーボタンは、対応するアプリケーションから情報を受け取り、ユーザに提示する場合がある。同様に、リッチプレゼンテーションタスクバーボタンは、ユーザに出力を供給せずに、一方向インタフェースにおいて、対応するアプリケーションに関するユーザからの情報等、アプリケーションを動作させ、制御または維持するためのユーザからの情報を受け取ることができる。別の例として、リッチプレゼンテーションタスクバーは、関連付けられたアプリケーションに二方向インタフェースを提供し、ユーザがアプリケーションを制御およびその他操作を行うデータやコマンドをリッチプレゼンテーションタスクバーボタンに入力し、アプリケーションが、そのアプリケーションからの情報、制御、機能、アニメーションまたはその他の関連情報をユーザに提供する場合がある。この種のタスクバーボタンを、本明細書において、「リッチプレゼンテーションタスクバーボタン」と呼ぶ。なぜなら、タスクバーボタンは、関連付けられているアプリケーションの名前および／またはロゴ／アイコン以上の情報を提供し、また、最小化されたアプリケーションウィンドウを単純に開くこと以上の機能性も提供するからである。リッチプレゼンテーションタスクバーボタンの中で提供されている情報または制御用表示要素は、リッチプレゼンテーションタスクバーボタンと関連付けられたアプリケーションによって作成される。たとえば、アプリケーションは、関連付けられているリッチプレゼンテーションタスクバーボタンの内容を作成し、情報をタスクバープログラミングインタフェースに提供することができる。この場合、リッチプレゼンテーションタスクバーボタンのプログラミングインタフェースは、リッチプレゼンテーションタスクバーボタンに関連付けられているアプリケーションからの内容を受け取り、関連するアプリケーションからの内容とともにリッチプレゼンテーションタスクバーボタンを表示する。
【００１５】
一例において、リッチプレゼンテーションタスクバーボタンは、動的情報等のリッチプレゼンテーション材料を含む場合がある。この情報は、シンプルタスクバーボタンによって提供されるアイコンまたはスタティックテキストに加えて提供される。この種のリッチプレゼンテーションタスクバーボタンは、たとえば、これに限られないが、複数のアイコン、異なるサイズのアイコン、テキストの特別なフォーマッティング、アニメーション、スクローリングテキスト、継続的にアップデートされ、ユーザにとって有益であるアプリケーションに関する動的情報等、さまざまな情報を表示することができる。このような情報には、たとえば、アプリケーションに関する動的情報がある。リッチプレゼンテーションタスクバーボタンの中に表示されるアプリケーションに関連付けられる動的情報の例としては、ステータス情報、進行メータあるいは、セキュリティ情報、天気予報情報、スポーツの結果、ニュースイベント、オークションの結果とステータス、アプリケーションのステータス情報、バディリスト等、アプリケーションによって提供されるその他の情報が挙げられる。
【００１６】
リッチプレゼンテーションタスクバーボタンはまた、ユーザがリッチプレゼンテーションタスクバーボタンを介してアプリケーションの動作を引き続き制御できるよう、対話的制御手段を提供できる場合がある。これは、二方向インタフェースを有するリッチプレゼンテーションタスクバーボタンの一例である。たとえば、リッチプレゼンテーションタスクバーボタンは、制御用アイコン、ボタンまたはメニュー等の表示要素を含み、リッチプレゼンテーションタスクバーボタンの中にある対応するアイコン、ボタンまたはメニューアイテムを作動させ、または選択することによってプロセスが呼び出される。ユーザは、リッチプレゼンテーションタスクバーボタンの中に表示されているアプリケーション制御ボタンをクリックし、リッチプレゼンテーションタスクバーボタンに関連付けられているアプリケーションにユーザが望むタスクを実行させる。
【００１７】
たとえば、メディアプレイヤアプリケーションは、本発明によるリッチプレゼンテーションタスクバーボタンに関連付けられているかもしれない。メディアプレイヤアプリケーションは、コンピュータ上で各種のメディアを再生できる。たとえば、ユーザはメディアプレイヤアプリケーションを通じてコンピュータ上で音楽を再生する（たとえば、ＣＤ−ＲＯＭ，ＭＰ３等）、あるいはビデオ、アニメーションを再生し、グラフィック画像を表示する等を行うことが可能である。メディアプレイヤアプリケーションのアプリケーションウィンドウは、ユーザが、たとえば、音楽を聴きたい、ビデオを見たい等の場合にアプリケーションウィンドウ内にある“ＰＬＡＹ”ボタンをクリックできるような制御手段を含むかもしれない。同様に、ユーザは“ＳＴＯＰ“ボタンをクリックしてメディアの再生を停止できる。ユーザは、“ＦＦ”，“ＲＥＶ”，“ＰＡＵＳＥ”その他、アプリケーションウィンドウ内に設置されているどの制御手段も選択できる。しかしながら、メディアプレイヤアプリケーションウィンドウが何らかの理由で最小化されている、または隠されている場合（たとえば、ディスプレイ上のスペースを節約するため、重複するウィンドウで隠れている場合等）、メディアプレイヤアプリケーションのウィンドウはディスプレイ上で見えなくなり、したがって、代表的な「シンプルタスクバーボタン」が使用されていれば、ユーザは通常、制御用表示要素も利用できない。このように、メディアプレイヤアプリケーションの動作を制御したい（たとえば、現在再生中の曲を停止する、現在の曲を早送りする、次の曲または前の曲にスキップする、ランダムプレイに切り替える等）ユーザは、シンプルタスクバーボタンが使用されている場合、上記のような制御を可能にするのに、メディアプレイヤアプリケーションウィンドウを開くか、隠れているメディアプレイヤアプリケーションのウィンドウを選択しなければならないであろう。
【００１８】
本発明による上記の例のリッチプレゼンテーションタスクバーボタンにより、シンプルタスクバーボタンを使う場合のように最小化されているウィンドウを開くことなく、対応するアプリケーションを制御することができる。この例では、リッチプレゼンテーションタスクバーボタンは、対応するリッチプレゼンテーションタスクバーボタンを通じて、直接メディアプレイヤアプリケーションを制御するための制御用表示要素を含む。たとえば、メディアプレイヤアプリケーションに対応するリッチプレゼンテーションタスクバーボタンは、メディアアプリケーションウィンドウが最小化されているときに、トランスポート制御ボタン（つまり、“ＳＴＯＰ”，“ＰＬＡＹ”，“ＦＦ”，“ＲＥＶ”，“ＰＡＵＳＥ”，“ＲＥＣ”等）を提供することができる。したがって、メディアアプリケーションプログラムの制御は、リッチプレゼンテーションタスクバーボタンを通じて直接実行することができ、リッチプレゼンテーションタスクバーボタンを使用すれば、対応するメディアアプリケーションのウィンドウを開かなくてよい。
【００１９】
別の例として、リッチプレゼンテーションタスクバーボタンはまた、ユーザが、リッチプレゼンテーションタスクバーボタンに関連付けられているアプリケーションに関係するリッチプレゼンテーションタスクバーボタンにデータを入力できるような入力手段を提供するかもしれない。たとえば、ユーザは所望のテキストをリッチプレゼンテーションタスクバーボタンに直接入力することにより、アプリケーションにテキストを入力できる。ユーザは、使用中のアプリケーションに応じたさまざまな理由でテキストの入力を望む場合がある。たとえば、他のユーザとインスタントメッセージングを通じて通信している際、ユーザはテキストをインスタンスメッセージングアプリケーションのウィンドウに入力するかもしれない。代表的なインスタントメッセージングアプリケーションのウィンドウは、ウィンドウの中に、テキストを入力し、そのテキストが受信者に瞬時に送信されるようにするためのフィールドがある。しかしながら、インスタントメッセージングアプリケーションのアプリケーションウィンドウが何らかの理由（たとえば、ディスプレイ上のスペースを節約するため）で最小化されている場合、「シンプルタスクバーボタン」が使われていれば、ユーザはインスタントメッセージングを介して現在進行中の会話を続けることができる。ユーザは、インスタントメッセージングを通じて会話したいと望んだ場合、まずインスタンスメッセージングアプリケーションのウィンドウを開かなければ、受信者に向けて何のメッセージも入力できない。これは、インスタントメッセージングアプリケーションの「シンプルタスクバーボタン」しか提供されていないユーザが、アプリケーションの名前（たとえば、対応するシンプルタスクバーボタンの中に表示される“Ｉｎｓｔａｎｔ  Ｍｅｓｓａｇｉｎｇ  Ａｐｐｌｉｃａｔｉｏｎ”という単語）しか見えないからである。しかしながら、シンプルタスクバーボタンでは、ユーザがテキストを入力し、会話を続け、あるいは入ってくるメッセージまたは会話スレッドのいずれかの部分を読むことを可能にするような追加の機能を提供できない。
【００２０】
リッチプレゼンテーションタスクバーボタンのこの例では、ユーザはインスタントメッセージングアプリケーションウィンドウを最小化するかもしれない（たとえば、ディスプレイ上のスペースを節約するため、あるいは他のコンピュータタスクを処理し易くするため）。あるいは、インスタントメッセージングアプリケーションのウィンドウは、ディスプレイ上の別のウィンドウによって隠されるかもしれない。インスタントメッセージングアプリケーションのウィンドウが最小化されると（あるいは隠されると）、対応するリッチプレゼンテーションタスクバーボタンがタスクバーの中に現れる。対応するリッチプレゼンテーションタスクバーボタンは、情報と、インスタントメッセージングアプリケーションの動作を制御するための追加の機能を可能にする制御用表示要素を含む。たとえば、インスタントメッセージングシステムに関連付けられているリッチプレゼンテーションタスクバーボタンは、アプリケーションそのものの名前だけでなく、会話スレッドの一部および／または入力手段を提供でき、その結果、ユーザはリッチプレゼンテーションタスクバーボタンにデータを直接入力できる。この例では、ユーザはリッチプレゼンテーションタスクバーボタンにテキストを入力し、それによってできるメッセージを、インスタンスメッセージングアプリケーションを介して受信者に送ることができる。
【００２１】
さらに、リッチプレゼンテーションタスクバーボタンは、対応するアプリケーションの動作に関する情報を提供することができる。たとえば、リッチプレゼンテーションタスクバーボタンは、対応するアプリケーションが実行しているプロセスの進行状況やステータスに関する情報を提供できる。
【００２２】
これらの例が説明しているように、アプリケーションがリッチプレゼンテーションタスクバーボタンに最小化されると、ユーザはウィンドウを最大化せずに、あるいはアプリケーションウィンドウが開いているが、重複するウィンドウ等の別の表示要素によって隠されている場合は、隠している表示要素を退けることなく、リッチプレゼンテーションタスクバーボタンを通じてアプリケーションを引き続き制御することができる。
【００２３】
本発明の１つの態様において、ユーザはコンピュータタスクを実行する。コンピュータタスクには、ディスプレイ上で少なくとも１つのウィンドウが開かれていることを必要とする場合がある。たとえば、ユーザは、たとえば、これに限られないが、ワードプロセシングプログラムを通じたワードプロセシング等の第１のアプリケーションを実行しているかもしれない。ワードプロセシングプログラムはディスプレイ上にウィンドウを表示し、この中で、ユーザは文字を打ち込んだり、書かれた資料を編集したりすることができる。しかしながら、ワードプロセシングプログラムに関連付けられているウィンドウは、ディスプレイの中で大きな面積を必要とする。したがって、ディスプレイ上にウィンドウを表示する第２のアプリケーションが同時にアクティブであれば、第１のアプリケーションのウィンドウと第２のアプリケーションのウィンドウとは干渉しあう。
【００２４】
この例では、ユーザの最優先事項は、主要なコンピュータタスクを実行することかもしれない。その場合、ユーザは第１のアプリケーションを選択し、第２のアプリケーションのウィンドウを最小化するかもしれない。また、別のアプリケーションがアクティブであれば、ユーザは第２のアプリケーションのウィンドウだけでなく、このような別のアプリケーションのウィンドウも最小化するかもしれない。このように、ユーザは最初のアプリケーションで作業し、主要なコンピュータタスクを実行している間は、他のすべてのアクティブなアプリケーションのウィンドウを最小化するかもしれない。他のアクティブなアプリケーションウィンドウが最小化されなかったとしても、第１のアプリケーションのウィンドウに焦点を当て、他のアクティブなプリケーションのウィンドウをすべて隠すかもしれない。このように、他のアクティブなアプリケーションウィンドウは、最小化されているか、あるいは他のウィンドウによって隠されているため、ユーザによってアクセスされない。その代わりに、他のアクティブ状態のアプリケーションウィンドウ（最小化されているか、あるいは隠されている）に関連付けられているアプリケーションは、タスクバーボタンとして表示される。このように、ユーザは、他のアクティブなアプリケーションのウィンドウの干渉を受けずに主要なコンピュータタスク（たとえば、ワードプロセシング）を引き続き実行することができる。
【００２５】
しかしながら、ユーザが第２のアプリケーションまたは、ウィンドウが最小化されているか、あるいは隠されている他のアプリケーションの動作を実行したい、あるいはこれに関する情報を入手したいと希望した場合、シンプルタスクバーボタンが使用されていれば、ユーザは通常、まず関係するウィンドウを開くか、あるいは、関係するウィンドウをディスプレイ全体に表示されるようにしなければならない。たとえば、ユーザが第２のアプリケーションの動作を実行したいとすると、ユーザは通常、まず、第２のアプリケーションの関係するウィンドウが全体に表示されるようにし（たとえば、ウィンドウを最大化するか、あるいはウィンドウの表示を前面にもってくる）、それから、第２のアプリケーションのウィンドウで完全に見え、アクセスできる状態にしたうえで、第２のアプリケーションの動作を実行する。第２のアプリケーションのアクセス可能なウィンドウが第１のアプリケーションのウィンドウを隠すかもしれないため、ユーザは第２のアプリケーションの動作が完了した後に、第１のアプリケーションの主要なコンピュータタスクの実行を続けるために、第２のアプリケーションのウィンドウを閉じる、または最小化しなければならない。あるいは、ユーザは第１のアプリケーションのウィンドウを前面に持ってくるか、あるいは第２のアプリケーションのウィンドウを隠すかもしれない。
【００２６】
本発明のこの態様において、ユーザは第２のアプリケーションのウィンドウを最小化したまま、あるいは隠されたままにし、その上で第２のアプリケーションの動作を実行することができる。たとえば、ユーザは本発明による、関係するリッチプレゼンテーションタスクバーボタンを通じて、アプリケーションを制御できる。したがって、第２のアプリケーションの動作を実行する前に、第２のアプリケーションのウィンドウを最大化し、あるいはディスプレイの前面に持ってくる必要がない。このように、ユーザは、第２のアプリケーションの動作を都合よく実行することにより、時間と労力を節約できる。同時に、ユーザは第１のアプリケーションでの主要な活動にすばやく戻ることができる。
【００２７】
本発明の別の態様において、ウィンドウ切り替え機能がリッチプレゼンテーションタスクバーボタンに備えられる。限定的な意味を持たない例において、リッチプレゼンテーションタスクバーボタンは、所定の領域を含んでいてもよい。リッチプレゼンテーションタスクバーボタンの中の所定の領域は、ウィンドウ管理機能を提供するために選択されるかもしれない。たとえば、リッチプレゼンテーションタスクバーボタンに関連付けられているウィンドウが現在最小化されている、あるいはその他隠されていれば、ユーザはリッチプレゼンテーションタスクバーボタンの中の所定の領域をクリックし、そのウィンドウを最大化し、あるいは見える状態にすることができる。たとえば、所定の領域をクリックすると、リッチプレゼンテーションタスクバーボタンに関連付けられている、最小化されたウィンドウを最大化できる。あるいは、アイコンをクリックすると、アプリケーションに関連付けられているウィンドウが最大化されていれば、そのウィンドウを最小化するか、あるいは見える、アクセス可能なウィンドウを他の表示要素の背後に表示されるようにすることができる。さらに別の例として、ユーザはリッチプレゼンテーションタスクバーの中の所定の領域をクリックし、アプリケーションに関連付けられるウィンドウを最大化または最小化することができる。１つの実施形態において、所定の領域は、リッチプレゼンテーションタスクバーボタンの中の、スクリーンの側辺に最も近い縁部である。
【００２８】
本発明のまた別の態様において、タスクバーボタンに関連付けられているサムネイルが提供される。このタスクバーボタンは、本発明によるリッチプレゼンテーションタスクバーボタンであっても、アプリケーション、フォルダまたは表示要素に関連付けられたどのようなタスクバーボタンであってもよい。サムネイルは、選択されたタスクバーボタンに関連付けられているウィンドウに対応して表示されるかもしれない。たとえば、ユーザはアプリケーションウィンドウに関連付けられているリッチプレゼンテーションタスクバーボタンを選択し、アプリケーションウィンドウのサムネイルを表示させることができる。アプリケーションウィンドウのサムネイルは、ディスプレイのどこにでも表示できる。ユーザの便宜のために、アプリケーションウィンドウのサムネイルは、好ましくは、関係するタスクバーボタンの近辺に表示される。サムネイルを表示するために、ユーザは関係するタスクバーボタンをさまざまな方法で「選択」できる。たとえば、ユーザはタスクバーボタン上にカーソルを合わせ、そのタスクバーボタンを「選択」してサムネイルを表示させることができる。あるいは、タスクバーボタンにボタンやアイコンを含め、ボタンまたはアイコンをクリックすると、対応するサムネイルがディスプレイ上に表示されるようにすることもできる。
【００２９】
表示されたサムネイルは、さまざまな形態をとりうる。たとえば、サムネイルは、フルウィンドウのミニチュア版であっても、あるいはウィンドウのクライアント領域であってもよい。サムネイルはまた、ユーザがウィンドウを特定しやすいように、タイトルバーを含んでいてもよい。サムネイルに関連付けられているアプリケーションに応じて、サムネイルはまた、動的情報や、ウィンドウの内容を反映するようにリアルタイムに変化する情報を含んでいてもよい。タスクバーボタンは、そのタスクバーボタンに関連付けられているアプリケーションがアプリケーションの中で作成された内容情報を、サムネイルの内容を特定するタスクバーＡＰＩに供給するようなプログラミングインタフェースを提供してもよい。このように、サムネイルの内容は、特定のアプリケーションとの関連性が高められた、よりよい情報を提供するようアプリケーションによってカスタマイズできる。
【００３０】
本発明の他の態様において、サムネイルは、カーソルを、サムネイルが呼び出された場所から離れた場所に移動させることによって消すことができる。たとえば、カーソルが所定の場所（たとえば、対応するタスクバーボタン）の上にあり、サムネイルを表示させている場合、そのサムネイルは、カーソルを所定の場所から移動させることによって消される。このように、サムネイルは、ウィンドウ等、他の表示要素を干渉しない。
【００３１】
本発明のさらに別の態様において、サムネイルは、ディスプレイにピン留めされ、カーソルをその領域から移動させただけでは、サムネイルが消えないようにすることができる。サムネイルは消える代わりに、カーソルが移動され、所定の領域上になくても、見える状態で残る。これにより、ユーザは他のウィンドウのサムネイルにアクセス可能な状態にありながら、１つのウィンドウで作業することができる。サムネイルが開いているときに、サムネイルを消したい場合があるかもしれない。「消す」とは、サムネイルを視覚的ディスプレイから除くことを意味する。このように、サムネイルが「消された」後、このサムネイルはディスプレイ上では見えなくなる。開いた状態でピン留めされたサムネイルを消したい場合、カーソルはサムネイルを閉じる場所の上に移動される。たとえば、サムネイル上の、そのサムネイルを閉じるための領域（たとえば、「閉じる」ボタン）を設け、その領域がクリックされると、サムネイルが消えるようにすることができる。あるいは、サムネイルは、所定の場所のカーソルをサムネイル上に合わせることによって消される。
【００３２】
本発明の別の態様において、カーソルは、リッチプレゼンテーションタスクバーボタン等のタスクバーボタンに関連付けられたサムネイルを表示するための場所の上に合わせられ、あるいはカーソルはサムネイルが表示された後にその場所から移動されるかもしれない。しかしながら、この例において、サムネイルは、所定の時間が経過した後にのみ、表示され、または消される。このように、サムネイルは、偶発的に、あるいは早まって表示され、あるいは消されることがなくなる。
【００３３】
本発明の他の態様において、アプリケーションウィンドウに関連付けられるリッチプレゼンテーションタスクバーボタンは、タスクバーの中の他のタスクバーボタンに基づくタスクバーボタンの拡大、縮小を行い、変更される。アプリケーションウィンドウに関連付けられたタスクバーボタンは、タスクバーの上で利用できるスペースに適応でき、別のタスクバーボタンをタスクバーに追加することができる。追加されたタスクバーボタンあるいはタスクバーにすでにあるタスクバーボタンは、たとえば、大きさが縮小されるか、幅が狭められてタスクバーに適合される。あるいは、タスクバーボタンは、タスクバーボタン統合によって他のタスクバーと結合することができる。つまり、タスクバーボタンは、他の選択されたタスクバーボタンと融合され、融合されたボタンの中で１つの結合タスクバーボタンを形成する。１つの実施形態において、タスクバーボタンは、必要に応じて、「オーバーフロー」の場所、たとえば、メニューまたはタスクバースクローリングメカニズムの中に設けることができる。
【００３４】
本発明によるリッチプレゼンテーションタスクバーボタンのサイズは、さまざまな方法で変更できる。リッチプレゼンテーションタスクバーボタンは、シンプルタスクバーボタンとほぼ同じ比率で縮小してもよい。この場合、タスクバーの中のタスクバーボタンの各々は、実質的に同じサイズとなる。別の例において、リッチプレゼンテーションタスクバーボタンは、所定の限度まで縮小するが、所定の限度に到達した後は一定のサイズに保たれる。したがって、リッチプレゼンテーションタスクバーボタンは、この限度以上には縮小されない。これは、リッチプレゼンーションタスクバーボタンの内容に応じて有益となりうる。リッチプレゼンテーションタスクバーボタンが、たとえば、大量の内容を含んでいると、このリッチプレゼンテーションタスクバーボタンは、縮小しすぎると有益でなくなるかもしれない。この場合、リッチプレゼンテーションタスクバーボタンは、縮小しすぎないようにされ、さらに有益なユーザインタフェースを提供する。
【００３５】
別の例において、本発明によるリッチプレゼンテーションタスクバーボタンは、サイズの面で縮小しない。これに対し、シンプルタスクバーボタンはサイズが減少する。このように、リッチプレゼンテーションタスクバーボタンは依然として、タスクバー上に残りながら、有益なユーザインタフェースをユーザに提供する。別のタスクバーボタンがタスクバーに追加されると、シンプルタスクバーボタンの縮小により、リッチプレゼンテーションタスクバーボタンに追加のスペースが提供される。
【００３６】
他の例において、リッチプレゼンテーションタスクバーボタンは、別のタスクバーボタンがタスクバーに追加されると、タスクバーにフィットするよう縮小するが、リッチプレゼンテーションタスクバーボタンは、そのタスクバー上の他の（シンプル）タスクバーボタンが縮小した後にのみ縮小する。
【００３７】
縮小の代わりに、リッチプレゼンテーションタスクバーボタンは、タスクバーボタン統合によって他のタスクバーボタンと結合する、つまり、他のタスクバーボタンと融合する。このようにして、複数のタスクバーボタンが１つのタスクバーボタンになると、ディスプレイ上のスペースが節約される。一例において、リッチプレゼンテーションタスクバーボタンは、他のタスクバーボタンと結合または統合されない。タスクバー上のスペースは、シンプルタスクバーボタンを結合または統合することによって取得される。このように、リッチプレゼンテーションタスクバーボタンの中のユーザインタフェースは保護される。
【００３８】
別の例において、リッチプレゼンテーションボタンは、タスクバーボタン統合によって他のボタンと結合するが、これは他のタスクバーボタンが結合した後に限られる。このように、リッチプレゼンテーションタスクバーボタンが他のタスクバーボタンと結合するのは、スペースが限定され、他のタスクバーボタンの結合によってすでに最大のスペースが取得できた後である。
【００３９】
あるいは、リッチプレゼンテーションタスクバーボタンは、タスクバーボタン統合によって他のタスクバーボタンと結合し、新たなタスクバーボタンがタスクバーに追加されたときにタスクバー上のスペースが確保されるようにすることができる。
【００４０】
本発明は、オペレーティング環境で実現できる。図１は、本発明の態様を実現できる、適当なオペレーティング環境１００の例を示している。オペレーティング環境１００は、適当なオペレーティング環境の一例にすぎず、本発明の用途または機能の範囲について、いかなる限定も示唆しない。本発明を使用するのに適した他の周知のコンピューティングシステムおよび／または構成としては、これに限定されないが、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドまたはラップトップ装置、マルチプロセッサシステム、マイクロプロセッサベースのシステム、プログラム可能な民生用電子機器、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、上記システムまたは装置のいずれかを含む分散型コンピューティング環境その他がある。
【００４１】
図１には、本発明を実現できる、適当なコンピューティングシステム環境１００の一例が描かれている。コンピューティングシステム環境１００は、適当なコンピューティング環境の一例にすぎず、本発明の用途または機能の範囲についていかなる限定も示唆しない。また、コンピュータ環境１００は、オペレーティング環境の例１００に示されているコンポーネントの１つまたは組み合わせに対する依存性または要求事項があると解釈されるべきではない。
【００４２】
本発明は、他のさまざまな汎用または特定用途のコンピューティングシステム環境または構成で運用できる。本発明で使用するのに適した周知のコンピューティングシステム、環境および／または構成の例としては、これに限定されないが、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドまたはラップトップ装置、マルチプロセッサシステム、マイクロプロセッサベースのシステム、プログラム可能な民生用電子機器、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、上記システムまたは装置のいずれかを含む分散型コンピューティング環境その他がある。
【００４３】
図１を参照すると、本発明を実現するためのシステムの一例には、コンピュータ１１０の形態をとる汎用コンピューティング装置が含まれる。コンピュータ１１０のコンポーネントには、これに限定されないが、処理装置１２０、システムメモリ１３０、システムメモリを含む各種のシステムコンポーネントを処理装置１２０に接続するシステムバス１２１が含まれる。システムバス１２１は、メモリバスまたはメモリコントローラ、周辺バスおよび各種のバスアーキテクチャのいずれかを用いたローカルバスを含む数種類のバス構造のいずれでもよい。たとえば、これに限定されないが、このようなアーキテクチャにはＩｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ（ＩＳＡ）バス、Ｍｉｃｒｏ  Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ（ＭＣＡ）バス、エンハンストＩＳＡ（ＥＩＳＡ）バス、Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ（ＶＥＳＡ）ローカルバス、メザニンバスとも呼ばれるＰｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｔ（ＰＣＩ）バスがある。
【００４４】
コンピュータ１１０は通常、各種のコンピュータ読取可能媒体を含む。コンピュータ読取可能媒体には、揮発性および不揮発性媒体、取り外し可能および固定の媒体の両方が含まれる。たとえば、これに限定されないが、コンピュータ読取可能媒体はコンピュータ記憶媒体や通信媒体であってよく、これには、これに限定されないが、ＲＡＭ，ＲＯＭ，ＥＥＰＲＯＭ，フラッシュメモリまたはその他のメモリ技術、ＣＤ−ＲＯＭ、デジタルバーサタイルディスク（ＤＶＤ）またはその他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置またはその他の磁気記憶装置あるいはその他、所望の情報を記憶するのに使用でき、コンピュータ１１０によってアクセス可能なあらゆる媒体が含まれる。通信媒体は一般的に、コンピュータ読取可能命令、データストラクチャ、プログラムモジュールまたはその他、搬送波その他の伝送メカニズム等、変調データ信号におけるデータを具現化し、すべての情報伝達媒体を含む。「変調データ信号」とは、その特徴のひとつまたは複数が、信号の中の情報を暗号化するような方法で設定または変更されている信号を意味する。たとえば、これに限定されないが、通信媒体には、有線ネットワークまたは直接配線接続等の有線媒体および音響、ＲＦ、赤外線その他の無線媒体等の無線媒体がある。上記のいずれかを組み合わせたものも、コンピュータ読取可能媒体の範囲に含まれるはずである。
【００４５】
システムメモリ１３０は、リードオンリメモリ（ＲＯＭ）１３１とランダムアクセスメモリ（ＲＡＭ）１３２等の揮発性および／または不揮発性メモリの形態のコンピュータ記憶媒体を含む。起動時等にコンピュータ１１０内の要素間の情報伝達に役立つ基本的ルーチンを含むベーシック入出力システム（ＢＩＯＳ）１３３が通常、ＲＯＭ１３１の中に記憶されている。ＲＡＭ１３２は一般に、処理装置１２０によって即座にアクセス可能であり、および／または現在操作されているデータおよび／またはプログラムモジュールを含む。たとえば、これに限定されないが、図１には、オペレーティングシステム１３４、アプリケーションプログラム１３５、他のプログラムモジュール１３６およびプログラムデータ１３７が描かれている。
【００４６】
コンピュータ１１０はまた、他の取り外し可能／固定の揮発性／不揮発性コンピュータ記憶媒体も含んでいてもよい。例にすぎないが、図１には、固定の、不揮発性磁気媒体の読み書きを行うハードディスクドライブ、取り外し可能、不揮発性磁気ディスク１５２の読み書きを行う磁気ディスクドライブ１５１および、ＣＤ  ＲＯＭまたはその他の光媒体等の取り外し可能、不揮発性光ディスク１５６の読み書きを行う光ディスクドライブ１５５が描かれている。このオペレーティング環境の例において使用できるその他の取り外し可能／固定の揮発性／不揮発性コンピュータ記憶媒体としては、たとえば、磁気テープカセット、フラッシュメモリカード、デジタルバーサタイルディスク、デジタルビデオテープ、ソリッドステートＲＡＭ、ソリッドステートＲＯＭその他がある。ハードディスクドライブ１４１は通常、インタフェース１４０等の固定のメモリインタフェースを介してシステムバス１２１に接続され、磁気ディスクドライブ１５１と光ディスクドライブ１５５は通常、インタフェース１５０等の取り外し可能メモリインタフェースによってシステムバス１２１に接続されている。
【００４７】
上述の、図１に描かれているドライブとこれに関連するコンピュータ記憶媒体は、コンピュータ読取可能命令、データストラクチャ、プログラムモジュールおよびコンピュータ１１０用のその他のデータを記憶する。図１において、たとえば、ハードディスクドライブ１４１は、オペレーティングシステム１４４、アプリケーションプログラム１４５、その他のプログラムモジュール１４６およびプログラムデータ１４７を記憶しているように描かれている。これらのコンポーネントは、オペレーティングシステム１３４、アプリケーションプログラム１３５、他のプログラムモジュール１３６およびプログラムデータ１３７と同じでも違っていてもよい。オペレーティングシステム１４４、アプリケーションプログラム１４５、他のプログラムモジュール１４６およびプログラムデータ１４７には、少なくとも、これらの異なるコピーであることを示すために、ここでは別の番号が付与されている。ユーザは、キーボード１６２および、一般的にマウス、トラックボールまたはタッチパッドと呼ばれるポインティングデバイス１６１等の入力装置を通じてコンピュータ２０にコマンドや情報を入力することができる。他の入力装置（図示せず）には、マイクロフォン、ジョイスティック、ゲームパッド、パラボラアンテナ、スキャナその他が含まれる。これらおよびその他の入力装置はしばしば、システムバスに接続されるユーザ入力インタフェース１６０を通じて処理装置１２０に接続されるが、パラレルポート、ゲームポートまたはユニバーサルシリアルバス（ＵＳＢ）等、他のインタフェースおよびバスストラクチャによって接続してもよい。モニタ１９１またはその他の種類のディスプレイ装置また、ビデオインタフェース１９０等のインタフェースを通じてシステムバス１２１にも接続されている。モニタのほかに、コンピュータは、スピーカ１９７とプリンタ１９６等の他の周辺出力装置を備えていてもよく、これらは出力周辺インタフェース１９０を通じて接続される。
【００４８】
コンピュータ１１０は、リモートコンピュータ１８０等、ひとつまたは複数のリモートコンピュータとの論理接続を使ったネットワーク環境においても動作できる。リモートコンピュータ１８０は、パーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピア装置またはその他の一般的ネットワークノードであってよく、一般的には、コンピュータ１１０に関係する上記の要素の多くまたは全部を含むが、図１にはメモリ記憶装置１８１だけが描かれている。図１に示されている論理接続には、ローカルエリアネットワーク（ＬＡＮ）１７１と広域ネットワーク（ＷＡＮ）１７３が含まれるが、他のネットワークを含んでいてもよい。このようなネットワーク環境は、オフィス、企業コンピュータネットワーク、イントラネットおよびインターネットにおいて一般的である。
【００４９】
ＬＡＮネットワーク環境において使用する場合、コンピュータ１１０は、ネットワークインタフェースまたはアダプタ１７０を通じてＬＡＮ１７１に接続されている。ＷＡＮネットワーキング環境において、コンピュータ１１０は通常、モデム１７２または、インターネット等、ＷＡＮ１７３上での通信を確立するその他の手段を含む。モデム１７２は、内蔵されていても外付けでもよいが、ユーザ入力インタフェース１６０またはその他の適当なメカニズムを介してシステムバス１２１に接続されているかもしれない。ネットワーク環境において、コンピュータ１１０に関して描かれているプログラムモジュールまたはその一部は、リモートメモリ記憶装置の中に記憶されているかもし。たとえば、これに限定されないが、図１は、リモートアプリケーションプログラム１８５がメモリ装置１８１の中にあるように描いている。図のネットワーク接続は一例に過ぎず、コンピュータ間の通信リンクを確立するその他の手段も使用できることが推測できるであろう。
【００５０】
図のネットワーク接続は一例にすぎず、コンピュータ間の通信リンクを確立するその他の手段も使用できることが推測できであろう。ＴＣＰ／ＩＰ、イーサネット（登録商標）、ＦＴＰ，ＨＴＴＰ等の各種の周知のプロトコルのいずれかが存在することが前提とされ、システムは、ユーザがウェブベースのサーバからウェブページを読み出すことができるようにするよう、クライアント−サーバ構成で運用できる。各種の従来のウェブブラウザのいずれを使用しても、ウェブページ上のデータの表示と操作を行うことができる。
【００５１】
本発明のある態様において、カスタムユーザインタフェースは、アプリケーションに関連付けられたタスクバーボタンの中に設置されている。タスクバーボタンの中のカスタムユーザインタフェースは、アプリケーションそのものによって特定される内容を提供できる。たとえば、タスクバーにプログラミングインタフェースを含め、アプリケーションが内容を作成し、その内容をプログラミングインタフェースに供給して表示するようにしてもよい。
【００５２】
プログラミングインタフェース（または省略して「インタフェース」）は、ひとつまたは複数のコードセグメントが１つまたは複数の他のコードセグメントと通信する、またはこれによって提供される機能にアクセスできるようにする、あらゆるメカニズム、プロセス、プロトコルとして見ることができる。あるいは、プログラミングインタフェースは、他のコンポーネントの１つまたは複数のメカニズム、方法、関数呼び出し、モジュールその他との通信が可能なシステムのコンポーネントの１つまたは複数のメカニズム、方法、関数呼び出し、モジュール、オブジェクト等として見ることができる。上文の「コードセグメント」とは、１つまたは複数の命令またはコードラインを含むものであり、たとえば、コードモジュール、オブジェクト、サブルーチン、機能等が含まれ、使用される専門用語を問わず、またコードセグメントが別に編集されたか否かを問わず、またコードセグメントがソースコード、中間コードまたはオブジェクトコードのいずれで提供されているかを問わず、コードセグメントがランタイムシステムまたはプロセスにおいて利用されているか否かを問わず、またこれらが同じまたは異なる機械上に位置づけられているか、あるいは複数の機械に分散されているかを問わず、またコードセグメントによって表される機能がすべてソフトウェアで、すべてハードウェアで、あるいはハードウェアとソフトウェアの組み合わせで実行されているかを問わない。
【００５３】
理論上、プログラミングインタフェースは、図１Ｂまたは図１Ｃに示されているように、全体的に見られる。図１Ｂにおいて、インタフェースＩｎｔｅｒｆａｃｅ１は第１と第２のコードセグメントが通信するためのパイプとして描かれている。図１Ｃでは、インタフェースが、インタフェースオブジェクトＩ１，Ｉ２（これらは、第１と第２のコードセグメントの一部か否かを問わない）として描かれており、これによれば、システムの第１と第２のコードセグメントは媒体Ｍを通じて通信できる。図１Ｃにおいて、インタフェースＩ１，Ｉ２は、同じシステムの別のインタフェースとして考えることができ、また、オブジェクトＩ１，Ｉ２と媒体Ｍがインタフェースを構成すると考えることもできる。図１Ｂ，１Ｃは双方向の流れと流れの両側のインタフェースを示しているが、特定の実現形態では、一方向の情報の流れしかないもの（あるいは以下のように情報の流れがないもの）、または片側にだけインタフェースオブジェクトがあるものも可能である。たとえば、これに限られないが、アプリケーションプログラミングインタフェース（ＡＰＩ）、入力ポイント、方法、機能、サブルーチン、リモート手順読み出し、コンポーネントオブジェクトモデル（ＣＯＭ）インタフェース等は、プログラミングインタフェースの定義に含まれる。
【００５４】
上記のようなプログラミングインタフェースの態様には、第１のコードセグメントが第２のコードセグメントに情報を伝達する（ここで、「情報」とは、そのもっとも広い意味で使用されており、データ、コマンド、リクエスト等を含む）方法、第２のコードセグメントが情報を受け取る方法、情報の構造、シーケンス、シンタックス、編成、スキーマ、タイミング、内容が含まれる。この点で、基本的な伝送媒体そのものは、媒体が有線か無線か、あるいはその複合かを問わず、情報がインタフェースによって定義されている方法で伝送されるかぎり、インタフェースの動作にとってあまり重要でない。特定の状況において、１つのコードセグメントが第２のコードセグメントによって実行される機能に単純にアクセスする場合等、情報伝送は別のメカニズムを通じているか（たとえば、コードセグメント間の情報の流れとは別のバッファ、ファイルに置かれている情報）、または存在しないため、情報は従来の意味における一方向または両方向では受け渡されないかもしれない。これらの態様のいずれかまたはすべては、たとえば、コードセグメントがゆるく連結された、あるいはきつく連結された構成におけるシステムの一部であるか否かに応じて、状況に応じて重要かもしれないため、このリストは、一例であり、限定的と考えるべきではない。
【００５５】
このようなプログラミングインタフェースの概念は、当業者にとって周知であり、本発明の上記の詳細な説明から明確である。しかしながら、これ以外にもプログラミングインタフェースを実現する方法があり、明確に除外されていないかぎり、本願の特許請求範囲に含まれるものとする。このような他の方法は、図１Ｂ，図１Ｃに示す簡略化されたものより高度または複雑に見えるかもしれないが、全体として同じ結果を達成するために、同様の機能を果たす。次に、プログラミングインタフェースの別の実施例をいくつか簡単に説明する。
【００５６】
＜Ａ．因数処理（ファクタリング: factoring）＞
１つのコードセグメントから他のコードセグメントへの通信は、通信を複数の個別の通信に分解することによって間接的に達成できる。これを図１Ｄ，１Ｅに図式的に描く。図のように、いくつかのインタフェースは分解可能な機能群として描くことができる。このように、図１Ｂ，図１Ｃのインタフェース機能は、数学的に２４、あるいは２×２×３×２と規定することができるように、同じ結果を達成するために因数処理される。したがって、図１Ｄに描かれているように、インタフェースＩｎｔｅｒｆａｃｅ１によって提供される機能は再分割され、インタフェースの通信を複数のインタフェースＩｎｔｅｒｆａｃｅ１Ａ，Ｉｎｔｅｒｆａｃｅ１Ｂ，Ｉｎｔｅｒｆａｃｅ１Ｃ等に変換しながら、同じ結果を得ることができる。図１Ｅに示されているように、インタフェースＩ１によって提供される機能は、複数のインタフェースＩ１ａ，Ｉ１ｂ，Ｉ１ｃ等に再分割され、同じ結果が得られる。同様に、第１のコードセグメントから情報を受け取る第２のコードセグメントのインタフェースＩ２は複数のインタフェースＩ２ａ，Ｉ２ｂ，Ｉ２ｃ等に因数処理される。因数処理の際、第１のコードセグメントに含まれるインタフェースの数は、第２のコードセグメントに含まれるインタフェースの数と一致する必要はない。図１Ｄ、図１Ｅのいずれの場合も、インタフェースＩｎｔｅｒｆａｃｅ１とＩ１の機能分割は、それぞれ図１Ｂと図１Ｃと同じままである。インタフェースの因数処理はまた、結合法則、交換法則およびその他の数学的特性に従い、因数処理が認識しにくい場合もある。たとえば、操作の順序は重要ではなく、そのため、インタフェースによって実行される機能は、インタフェースに至るずっと前に他のコードまたはインタフェースによって実行されても、あるいはシステムの別のコンポーネントによって実行されてもよい。さらに、プログラミング分野の熟練者であれば、同じ結果を得るために、異なる関数呼び出しを行うさまざまな方法があることを推測できる。
【００５７】
＜Ｂ．再定義＞
ある場合において、所期の結果を達成しながら、プログラミングインタフェースの特定の面（たとえば、パラメータ）を無視し、追加し、あるいは再定義することが可能である。これは、図１Ｆと図１Ｇに描かれている。たとえば、図１ＢのインタフェースＩｎｔｅｒｆａｃｅ１は関数呼び出Square（入力、精度、出力）を含むものと仮定し、この呼び出しは、入力、精度、出力の３つのパラメータを含み、第１のコードセグメントから第２のコードセグメントに発行される。中間のパラメータである精度が、図１Ｆのように、特定の状況において問題にならない場合、これは無視されるか、あるいは（この状況では）意味のないパラメータに置き換えられる。また、重要性を持たない別のパラメータを追加することもできる。いずれの場合も、Squareの機能は、第２のコードセグメントによって入力が一致された（squared）後に出力が返されるかぎり、squareの機能は果たされる。精度は、コンピュータシステムの下流またはその他の部分にとっては有意義なパラメータとなる。しかしながら、精度がsquareの計算という狭い目的にとって不要と認識されると、これは置換または無視される。たとえば、有効な精度の数値を受け渡す代わりに、誕生日等の無意味な数値を、結果に不利な影響を与えることなく、受け渡すことができる。同様に、図１Ｇに描かれているように、インタフェースＩ１は無視するか、あるいはインタフェースにパラメータを追加するよう再定義されたインタフェースＩ１’に置き換えられる。インタフェースＩ２は同様に、不要なパラメータ、または別の箇所で処理されるパラメータを無視するよう、インタフェースＩ２’として再定義される。ここでのポイントは、場合に応じて、プログラミングインタフェースは、特定の目的のためには必要ではなく、したがって無視または再定義され、あるいは他の目的のために別の場所で処理されるような、パラメータ等の面を含む場合があるという点である。
【００５８】
＜Ｃ．インラインコーディング＞
２つの別個のコードモジュールの機能の一部または全部を融合し、その間の「インタフェース」が形を変えるようにすることも可能である。たとえば、図１Ｂと図１Ｃの機能は、それぞれ図１Ｈと図１Ｉの機能に変換することができる。図１Ｈにおいて、図１Ｂに示されていた従前の第１と第２のコードセグメントは、その両方を含むモジュールに融合される。この場合、コードセグメントは依然として相互に通信しているが、インタフェースは、より単独のモジュールに適した形態に構成される。このように、たとえば、正式な呼び出しとリターンのステートメントが不要となるが、インタフェースＩｎｔｅｒｆａｃｅ１による同様の処理またはレスポンスは依然として有効である。同様に、図１Ｉに示されているように、図１ＣからのインタフェースＩ２の一部（または全部）をインタフェースＩ１にインラインで書き込み、インタフェースＩ１”を作ることができる。図に示すように、インタフェースＩ２はＩ２ａとＩ２ｂに分割されており、インタフェースの部分Ｉ２ａはインタフェースＩ１とインラインでコード化され、インタフェースＩ１”が形成されている。具体的な例として、図１ＣからのインタフェースＩ１が関数呼び出しSquare（入力、出力）を実行し、これがインタフェースＩ２によって受け取られ、これは第２のコードセグメントによって入力とともに受け渡された数値を処理した後（入力のsquareを計算するため）、出力とともにsquareの結果を戻すことを考える。この場合、第２のコードセグメントによって行われた処理（入力のSquare）は、インタフェースへの呼び出しを行わずに、第１のコードセグメントによって実行される。
【００５９】
＜Ｄ．分離（ディボース: divorce）＞
１つのコードセグメントから別のコードセグメントへの通信は、通信を複数の個別の通信に分割することによって間接的に達成される。これを、図１Ｊと図１Ｋに図式的に示す。図１Ｊに描かれているように、ひとつまたは複数のコード（これらは当初のインタフェースからの機能および／またはインタフェース関数を分離するため、分離インタフェースという）が設けられ、これが第１のインタフェースＩｎｔｅｒｆａｃｅ１上の通信を別のインタフェース、つまりこの場合はインタフェースＩｎｔｅｒｆａｃｅ２Ａ，Ｉｎｔｅｒｆａｃｅ２Ｂ，Ｉｎｔｅｒｆａｃｅ２Ｃに適合するよう変換する。これは、Ｉｎｔｅｒｆａｃｅ１のプロトコルにしたがって、たとえばオペレーティングシステムと通信するよう設計されたアプリケーションのベースがインストールされているが、その後、オペレーティングシステムが別のインタフェース、この場合ではインタフェースＩｎｔｅｒｆａｃｅ２Ａ，Ｉｎｔｅｒｆａｃｅ２Ｂ，Ｉｎｔｅｒｆａｃｅ２Ｃを使用するために変更される場合等に行われる。ポイントは、第２のコードセグメントによって使用される元のインタフェースが、第１のコードセグメントによって使用されるインタフェースとは両立しなくなるように変更されるため、古いインタフェースと新しいインタフェースを両立させるために、中間物が使用されるという点である。同様に、図１Ｋに示されているように、第三のコードセグメントを、インタフェースＩ１からの通信を受けるために分離インタフェースＤＩ１とともに導入し、またインタフェース機能を、たとえば、ＤＩ２と協働するよう再設計されたインタフェースＩ２ａとＩ２ｂに伝送するが、同じ機能的結果をもたらすために分離インタフェースＤＩ２とともに導入することができる。同様に、ＤＩ１とＤＩ２は協働し、図１ＣのインタフェースＩ１とＩ２の機能を新しいオペレーティングシステムに翻訳し、その一方で、同じまたは同様の機能上の結果をもたらす。
【００６０】
＜Ｅ．書き換え＞
また別の考えうる変形は、インタフェースの機能を別のものに置き換えるが、全体として同じ結果を実現するようにコードを動的に書き換えることである。たとえば、中間言語（たとえば、Ｍｉｃｒｏｓｏｆｔ  ＩＬ，Ｊａｖａ（登録商標）  ＢｙｔｅＣｏｄｅ等）の中にあるコードセグメントが実行環境（．Ｎｅｔフレームワーク、Ｊａｖａ（登録商標）ランタイム環境またはその他同様のランタイム型の環境等）でＪｕｓｔ−Ｉｎ−Ｔｉｍｅ（ＪＩＴ）コンパイラまたはインタープリタに供給されるシステムがある。ＪＩＴコンパイラは、第１のコードセグメントからの通信を第２のコードセグメントに動的に変換し、つまり、これらを、第２のコードセグメント（もとの、あるいは異なる第２のコードセグメント）によって必要とされる、別のインタフェースに適合させるように書かれるかもしれない。これを、図１Ｌと図１Ｍに示す。図１Ｌに示されているように、この方法は、上記の分離の場合に似ている。これは、たとえば、インストールされているアプリケーションのベースが、Ｉｎｔｅｒｆａｃｅ１のプロトコルにしたがってオペレーティングシステムと通信するよう設計されているが、その後、オペレーティングシステムが異なるインタフェースを使用するよう変更される場合等に行われる。ＪＩＴコンパイラは、インストールベースのアプリケーションからオペレーティングシステムの新しいインタフェースへのオンザフライでの通信に適合するために使用できる。図１Ｍに示すように、このようなインタフェースを動的に書き換える方法は、インタフェースを動的に因数処理し、あるいはその他変更するために適用される。
【００６１】
別の実施形態を通じたインタフェースと同じまたは同様の結果を達成するための上記の仕組みは、逐次的および／または並列的なさまざまな方法で組み合わせる、あるいは他の介入コードとも組み合わせることができる点にも注意すべきである。このように、上記の異なる実施形態は、相互に排他的でなく、混合し、適合させ、組み合わせて、図１Ｂと１Ｃに示す一般的な仕組みと同じ、または同等の仕組みを実現することができる。また、多くのプログラミング構造と同様に、ここでは述べられていないが、本発明の精神と範囲によって表されるインタフェースと同じまたは同様の機能を実現する同様の方法がほかにもあることに注意すべきであり、つまりこれは、少なくとも部分的に、インタフェースの数値の根底にあるインタフェースによって表される機能およびそれによって実現される有利な結果である点に注意すべきである。
【００６２】
図２は、ウィンドウが開かれているディスプレイ２０１を示す。ディスプレイ２０１には、コンピュータのための記憶サイトのウィンドウを含む。たとえば、記憶された要素を含むフォルダのためのウィンドウが表示されるかもしれない。図２の例において、フォルダは、ディスプレイ２０１の上で、「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ２０２の中に表示されている「ＭｙＤｏｃｕｍｅｎｔｓ」フォルダである。「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ２０２は、一部が他の開いているウィンドウによって隠されている。図２に描かれている他の開いたウィンドウには、ワードプロセシングアプリケーションウィンドウ２０３が含まれ、これは、メディアプレイヤウィンドウ２０４とインスタントメッセージングウィンドウ２０５によって部分的に隠されている。ディスプレイ２０１上の各ウィンドウは、対応するタスクバーボタンと関連付けられている。この例において、タスクバーボタンの各々は、「シンプルタスクバーボタン」である。この例のシンプルタスクバーボタンの各々は、対応するアプリケーションの名前またはフォルダ名を表示する。たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウは、“ＭｙＤｏｃｕｍｅｎｔ”という名前を表示する「ＭｙＤｏｃｕｍｅｎｔｓ」のシンプルタスクバーボタン２０６に関連付けられ、ワードプロセシングアプリケーションウィンドウ２０３は、“Ｍｉｃｒｏｓｏｆｔ  Ｗｏｒｄ”という名前を表示するシンプルタスクバーボタン２０７に関連付けられ、メディアプレイヤウィンドウ２０４は、“Ｗｉｎｄｏｗｓ（登録商標）  Ｍｅｄｉａ”という名前を表示するシンプルタスクバーボタン２０８に関連付けられ、インスタントメッセージングウィンドウ２０５は、“Ｉｎｓｔａｎｔ  Ｍｅｓｓａｇｉｎｇ”という名前を表示するシンプルタスクバーボタン２０９に関連付けられる。
【００６３】
図３は、ディスプレイ上でウィンドウを最小化する例を示す。図３において、ディスプレイ３０１は、ウィンドウを含むように描かれている。この例で目に見えるウィンドウは、フォルダに関連付けられているウィンドウ（この場合、「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ３０２）であり、これは、ワードプロセシングアプリケーションウィンドウ３０３が「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ３０２の上にあるため、ワードプロセシングアプリケーションウィンドウ３０３によって部分的に隠されている。「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ３０２は、シンプルタスクバーボタン３０４に関連付けられており、ワードプロセシングアプリケーションウィンドウもまた、対応するシンプルタスクバーボタン３０５に関連付けられている。メディアプレイヤアプリケーションのアプリケーションウィンドウとインスタントメッセージングウィンドウは、最小化されているため、図３では見えない。しかしながら、メディアプレイヤアプリケーション３０６とインスタントメッセージングアプリケーション３０７の対応するシンプルタスクバーボタンは、図３に示されるディスプレイ３０１のタスクバーの中に見られる。
【００６４】
図４は、本発明によるリッチプレゼンテーションタスクバーボタンの表示の例を示す。この例のリッチプレゼンテーションタスクバーボタンは、ユーザが対応するアプリケーションの動作または機能を制御できるようにする、対応するアプリケーションに関連付けられている情報または制御用表示要素を含む。ディスプレイ４０１は、開かれたウィンドウを有する。この例において、ファイルフォルダ（たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ４０２）とワードプロセシングアプリケーションウィンドウ４０３がディスプレイ４０１の上にある。ウィンドウの各々、つまり「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ４０２とワードプロセシングアプリケーションウィンドウ４０３は、シンプルタスクバーボタン（それぞれ４０４，４０５）に関連付けられている。シンプルタスクバーボタン４０４，４０５はディスプレイ４０１のタスクバーの中に描かれている。さらに、メディアプレイヤアプリケーション４０６とインスタントメッセージングアプリケーション４０７のためのタスクバーボタンもタスクバーの中にある。図４に示されるように、メディアプレイヤアプリケーション４０６とインスタントメッセージングアプリケーション４０７に関連付けられているタスクバーボタンは、リッチプレゼンテーションタスクバーボタンである。メディアプレイヤアプリケーションまたはインスタントメッセージングアプリケーションに対応するウィンドウは、これらのウィンドウが最小化されているため、ディスプレイ上にはない。しかしながら、各々のリッチプレゼンテーションタスクバーボタン（４０６，４０７）は、タスクバーの中に見られる。
【００６５】
この例において、メディアプレイヤアプリケーション４０６のリッチプレゼンテーションタスクバーボタンは、ユーザがメディアプレイヤアプリケーションの動作／機能を制御できるようにする、制御用表示要素を含む。この例において、リッチプレゼンテーションタスクバーボタン４０６は、選択されるとアプリケーションの動作を実行するボタンを含む。この例において、リッチプレゼンテーションタスクバーボタン４０６は、トランスポート制御のためのユーザインタフェースボタン（つまり、“ＰＬＡＹ”，“ＳＴＯＰ”，“ＦＦ”，“ＲＥＶ”等）を含む。トランスポート制御のためのボタンには、たとえば、再生のためのボタン４１０、曲を巻き戻し、またはリプレイするボタン４０９、曲を早送りまたはスキップするボタン４１１、一時停止ボタン４０８または停止ボタン４１２が含まれる。図４は、アプリケーションを制御するのに使用できる表示要素の形式の一例にすぎない。メディアプレイヤアプリケーションのリッチプレゼンテーションタスクバーボタン４０６は、たとえば、録音またはスキャニング等、他の多くの制御ボタンを含むことができる。
【００６６】
図４はまた、インスタントメッセージングアプリケーションに関連付けられたリッチプレゼンテーションタスクバーボタン４０７を示している。リッチプレゼンテーションタスクバーボタンは、情報が継続的にアップデートされる一種の動的情報を含んでいる。この例において、インスタントメッセージングアプリケーションは、複数のユーザ間のテキスト情報を含む。リッチプレゼンテーションタスクバーボタン４０７は、会話スレッドの一部を提供する。この例において、インスタントメッセージングアプリケーションのウィンドウが最小化され、そのウィンドウは見えなくなっているが、ユーザは、関連するリッチプレゼンテーションタスクバーボタン４０７の中で、入ってくるメッセージを読むことができる。このように、ユーザは、インスタントメッセージングのウィンドウが表示されている間に、タスクバーボタンの中で入ってくるメッセージの表示を読み、これに応答してタスクバーボタンの中にダイアログまたはテキストを入力することによって、他のユーザとの会話を続けることができる。図４は、タスクバーボタン４０７の中の、現在進行中の会話の例を示す。リッチプレゼンテーションタスクバーボタン４０７は、動的に変化するデータによって定期的にアップデートされる（つまり、会話の進行とともに、会話内のメッセージラインをアップデートする）。
【００６７】
別の例において、リッチプレゼンテーションタスクバーボタンは、情報、制御用表示要素またはアップデートのための動的情報を、対応するウィンドウが最小化されている、または重複したウィンドウによって隠されているときのみ表示することができる。たとえば、（たとえば、ディスプレイ上のスペースを節約する場合等、）メディアプレイヤアプリケーションがコンピュータ上で依然としてアクティブであっても、メディアプレイヤウィンドウがディスプレイ上では見えなくなるようにメディアプレイヤウィンドウが最小化される。メディアプレイヤアプリケーションウィンドウが最小化されると、対応するリッチプレゼンテーションタスクバーボタンは、図４に描かれているような制御用表示要素を表示することができる。あるいは、メディアプレイヤアプリケーションウィンドウはディスプレイ上に残るが、他の表示要素によって隠される。隠されたアプリケーションウィンドウに関連付けられているリッチプレゼンテーションタスクバーボタンは、図４に示される要素を表示することができる。この例において、リッチプレゼンテーションタスクバーボタンはトランスポート制御を表示し、ユーザは、リッチプレゼンテーションタスクバーボタンの中の対応する制御用表示要素（たとえば、ＰＬＡＹ，ＳＴＯＰ等）をクリックすることにより、アプリケーションの動作を制御することができる。この例において、メディアプレイヤアプリケーションウィンドウがディスプレイに回復されると（たとえば、リッチプレゼンテーションタスクバーボタン上の所定の場所をクリックすることによる）、メディアプレイヤアプリケーションに関連付けられているリッチプレゼンテーションタスクバーボタンはシンプルタスクバーボタンに切り替わる。メディアプレイヤアプリケーションウィンドウが最小化されると、あるいはメディアプレイヤアプリケーションウィンドウがディスプレイ上の重複する表示要素（たとえば、他のウィンドウ）によって隠されると、メディアプレイヤアプリケーションに関連付けられているシンプルタスクバーボタンは、リッチプレゼンテーションタスクバーボタンに切り替わる。このように、ユーザは、ウィンドウが最小化されているか、あるいは他の表示要素によって隠されているか、あるいはその他アクセス不能であっても、この例のメディアプレイヤアプリケーションを引き続き制御できる。
【００６８】
図５は、ウィンドウが表示されているディスプレイの例を示す。図５に示されているように、ディスプレイ５０１は複数のウィンドウを含む。「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ５０２は、ディスプレイ５０１の上に表示され、タスクバーのシンプルタスクバーボタン５０６に関連付けられている。フォルダに関連するシンプルタスクバーボタン５０６（たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」のウィンドウ５０２）は、フォルダの名前を表示する。また、シンプルタスクバーボタン５０６をクリックすることにより、フォルダのウィンドウ（この場合、「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ）が最小化される。ウィンドウがすでに最小化されていれば、シンプルタスクバーボタン５０６をクリックすると、ウィンドウは、ディスプレイ／デスクトップに回復する。ワードプロセシングアプリケーションウィンドウ５０３もディスプレイ５０１上に表示され、タスクバーの中のシンプルタスクバーボタン５０７に関連付けられる。シンプルタスクバーボタン５０７はまた、対応するアプリケーションの名前を表示する。この場合、シンプルタスクバーボタン５０７は、“Ｍｉｃｒｏｓｏｆｔ  Ｗｏｒｄ”という単語を表示する。図５はまた、ディスプレイ５０１上に表示されるメディアプレイヤアプリケーション５０４のウィンドウも示している。メディアプレイヤアプリケーションタスクバーボタン５０８は、タスクバーボタン５０８が対応するアプリケーションの名前（つまり、“Ｗｉｎｄｏｗｓ（登録商標）  Ｍｅｄｉａ”）のみを表示するという点で、シンプルタスクバーボタンのような外観を持つ。さらに、タスクバーボタンは、関連するアプリケーションの特定を助けるためのロゴを表示する。あるいは、タスクバーボタン５０８は、リッチプレゼンテーションタスクバーボタンで、メディアプレイヤアプリケーションのためのトランスポート制御等の制御用表示要素を提供してもよい。しかしながら、この例において、メディアプレイヤアプリケーション５０４に関連するタスクバーボタン５０８はシンプルタスクバーボタンの外観を持ち、アプリケーションの名前および／またはウィンドウ５０４がディスプレイ５０１上で開いている間に対応するメディアプレイヤアプリケーションを制御するための制御用表示要素等のアプリケーションを特定するロゴ以外の情報は含まない。
【００６９】
図５に描かれているように、カーソル５０５は、メディアプレイヤアプリケーションウィンドウ５０４の最小化ボックス５０９の上に合わせられる。最小化ボックス５０９がアクティブ化され、または選択されると、ウィンドウ５０４はディスプレイ５０１上に表示されないが、タスクバーボタン５０８がタスクバーボタンの中に残る。
【００７０】
図６は、メディアプレイヤアプリケーションウィンドウが最小化された後の図５のディスプレイを示す。図６において、ディスプレイ６０１は開かれたウィンドウを含む。コンピュータ上のフォルダのウィンドウ（たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ６０２）がディスプレイ上に存在し、対応するシンプルタスクバーボタン６０５に関連付けられている。「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウは、同様にディスプレイ６０１上で開いており、目に見えるワードプロセシングアプリケーションウィンドウ６０３によって部分的に隠れている。ワードプロセシングアプリケーションウィンドウ６０３もまた、タスクバー中に表示されているシンプルタスクバーボタン６０６に関連付けられている。メディアプレイヤアプリケーションウィンドウ（図示せず）は、メディアプレイヤアプリケーションウィンドウが最小化されているため、ディスプレイ６０１上では見えない。この例において、メディアプレイヤアプリケーションウィンドウは、カーソル６０４でウィンドウ最小化ボックスをクリックすることによって最小化される。メディアプレイヤアプリケーションに関連付けられているタスクバーボタン６０７は、タスクバー内に依然として存在するが、図６の例に示されているタスクバーボタン６０７は、リッチプレゼンテーションタスクバーボタン６０７に変換されている。この例のリッチプレゼンテーションタスクバーボタン６０７は、アップデートされる動的情報を提供する。この場合、リッチプレゼンテーションタスクバーボタン６０７の中で提供されている動的情報は、再生されている楽曲のアーティスト名とトラック番号である。
【００７１】
この例において、メディアプレイヤに関連付けられているリッチプレゼンテーションタスクバーボタン６０７は、メディアプレイヤアプリケーションに関するリッチプレゼンテーション情報を含み、継続的にアップデートされる。図６に示すように、この例では、アーティストの名前とトラック番号がタスクバーボタンの中に提供される。この情報は、アーティストと同様にトラックが変わるとアップデートされる。図６は、本発明の１つの実施形態を示している。しかしながら、リッチプレゼンテーションタスクバーボタンは、改良されたどのような情報でも提供するため、本発明はこれに限定されていない。
【００７２】
タスクバーボタンは、サムネイルディスプレイに関連付けられていてもよい。図７は、アプリケーションに関連付けられているサムネイルと本発明によるリッチプレゼンテーションタスクバーボタンのディスプレイを示している。図７に示されているように、ディスプレイ７０１は、開かれたウィンドウを表示している。フォルダのウィンドウ（たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ７０２）がディスプレイ７０１上に表示され、対応するシンプルタスクバーボタン７０５に関連付けられている。ワードプロセシングアプリケーションウィンドウ７０３もディスプレイ７０１上に表示され、これも対応するシンプルタスクバーボタン７０６に関連付けられている。メディアプレイヤアプリケーションは最小化され、メディアプレゼンテーションウィンドウはディスプレイ上に存在しない。しかしながら、メディアプレイヤアプリケーションに関連付けられている対応するリッチプレゼンテーションタスクバーボタン７０７は、ディスプレイ７０１のタスクバーの中に存在する。この例のリッチプレゼンテーションタスクバーボタン７０７は、メディアプレイヤアプリケーションのための制御用表示要素を含む（たとえば、トランスポート制御）。図７に示されるこの例において、メディアプレイヤアプリケーションに対応するリッチプレゼンテーションタスクバーボタン７０７は、アプリケーションの制御、つまりメディアの再生に使用できるボタンを提供する。
【００７３】
カーソル７０４は、リッチプレゼンテーションタスクバーボタン７０７の上の所定の場所に合わされ、サムネイル７０８を表示させる。サムネイル７０８は、メディアプレイヤアプリケーションに関連付けられている。図７に示す例において、リッチプレゼンテーションタスクバーボタン７０７の上の所定の場所は、リッチプレゼンテーションタスクバーボタン７０７の脇にある。この例のサムネイル７０８は、この例のフルメディアプレイヤアプリケーションのミニチュアバージョンである。しかしながら、本発明は、これに限られない。サムネイルは、アプリケーションに関連する情報を含むかもしれない。メディアプレイヤアプリケーションの場合、対応するサムネイルはストリーム情報、アルバムアート、映像化、ビデオその他を表示するかもしれない。
【００７４】
サムネイルの内容は、関連するアプリケーションによって変わるかもしれない。また、内容は、アプリケーションによって特定または作成され、タスクバープログラミングインタフェースに提示されるかもしれない。サムネイルの内容がアプリケーションによって特定されると、アプリケーション（たとえば、メディアプレイヤアプリケーション）は、対応するサムネイルの内容をタスクバーのプログラミングインタフェースに特定する。このように、結果として得られるサムネイルは、特定のアプリケーションに合わせてカスタマイズできる、あるいはユーザのニーズに合わせて調整される、改善された情報を提供するかもしれない。
【００７５】
図８は、サムネイルを消す様子を示す。図８に示されるように、ディスプレイ８０１は、開いたウィンドウを含む。フォルダウィンドウ（たとえば、この場合では「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ８０２）がディスプレイ８０１上に存在し、対応するシンプルタスクバーボタン８０５に関連付けられている。「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ８０２は、ワードプロセシングアプリケーションウィンドウ８０３によって部分的に隠れている。ワードプロセシングアプリケーションウィンドウ８０３もまた、シンプルタスクバーボタン８０７に関連付けられている。図７の例のように、メディアプレイヤアプリケーションウィンドウは、これが最小化されている、あるいは他の表示要素の背後に表示されているため、表示されない。たとえば、メディアプレイヤアプリケーションウィンドウは、ワードプロセシングアプリケーションウィンドウ８０３によって完全に隠されているかもしれない。しかしながら、メディアプレイヤアプリケーションに関連付けられているリッチプレゼンテーションタスクバーボタン８０７は、制御用表示要素を提供する。この例において、リッチプレゼンテーションタスクバーボタン８０７は、ユーザがリッチプレゼンテーションタスクバーボタンの中の対応する制御用表示要素を選択することにより、メディアプレイヤアプリケーションの動作を制御できるように、トランスポート制御を提供する。このように、この例のリッチプレゼンテーションタスクバーボタン８０７の中の対話的制御用表示要素を通じて、ユーザは、ディスプレイ８０１上に完全なメディアプレイヤアプリケーションウィンドウを開くことなく、メディアプレイヤアプリケーションを制御できる。
【００７６】
カーソル８０４は、リッチプレゼンテーションタスクバーボタン８０７の上の所定の場所から移動される。所定の場所とは、たとえば、カーソルが所定の場所の上に合わせられると、対応するアプリケーションのサムネイルを提供する場所である。図８は、カーソル８０４が所定の場所から移動されると、サムネイルが消され、それによって、ディスプレイ８０１上のスペースを節約している様子を示している。
【００７７】
ユーザは、カーソルが所定の領域から移動されても、サムネイルをディスプレイ上に見える状態で残したいと希望する場合がある。図９は、サムネイルをピン留めし、カーソルが所定の場所から移動されても、サムネイルがディスプレイ上で見える状態で残るようにする方法を示す。図９は、開いたウィンドウを含むディスプレイ９０１を示している。フォルダウィンドウ（たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ９０２）がディスプレイ９０１に表示され、対応するシンプルタスクバーボタン９０５に関連付けられている。ワードプロセシングアプリケーションウィンドウ９０３もまたディスプレイ９０１上に表示され、「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ９０２を部分的に隠している。ワードプロセシングアプリケーションウィンドウ９０３は、タスクバーの中に存在するシンプルタスクバーボタン９０６に関連付けられている。図７、図８の例と同様に、メディアプレイヤアプリケーションウィンドウは、最小化されたか、他の表示要素によって隠され、ディスプレイ９０１の上では見えない。しかしながら、メディアプレイヤアプリケーションに関連付けられているリッチプレゼンテーションタスクバーボタン９０７がタスクバーの中に表示される。リッチプレゼンテーションタスクバーボタン９０７は、ユーザが、開かれたメディアプレイヤアプリケーションウィンドウによってディスプレイ９０１の上のスペースを占領することなく、メディアプレイヤアプリケーションの動作または機能を制御できるように、対話的制御用表示要素を含む。図９が示すように、メディアプレイヤアプリケーションに関連付けられているリッチプレゼンテーションタスクバーボタン９０７は、対話的制御用表示要素等のトランスポート制御を含む。
【００７８】
図９が示すように、カーソル９０４は、サムネイル９０８を開くためのリッチプレゼンテーションタスクバーボタン９０７の上の所定の場所から移動されている。しかながら、サムネイル９０８は、サムネイルが開いてピン留めされているため、開いたままでディスプレイ９０１上に残り、見ることができる。サムネイルのピン留めは、さまざまな技術で実行できる。たとえば、サムネイルは、指定されたアイコンまたは表示要素をクリックする、あるいはメニュー上のオプションを選択することによって、開いた状態でピン留めできる。メニューは、たとえば、メニューをプルダウンする、右クリックする、その他の方法で呼び出すことができる。サムネイルは、希望に応じて、デフォルトによって開いた状態でピン留めすることもできる。サムネイル９０８が開いた状態でピン留めされると、カーソルは、サムネイル９０８に影響を与えることなく、ディスプレイ上のどの場所にも移動できる。つまり、サムネイル９０８は、カーソル９０４がタスクバーボタン９０７から移動されても、開いたまま残る。サムネイルが開いた状態でピン留めされていると、ユーザはカーソルがサムネイルを開くための所定の場所から移動されたとしても、サムネイルに含まれる追加情報に引き続きアクセスできる。たとえば、ユーザは、コンピュータ上で他のプロジェクトについと作業を行いながら、メディアプレイヤプリケーションで再生されているビデオを見たいかもしれない。ビデオのサムネイルバージョンは、ディスプレイ上で開いた状態でピン留めされているサムネイルの上で再生する。リッチプレゼンテーションタスクバーボタン９０７により、ユーザはメディアプレイヤアプリケーションの動作（従って、ビデオの再生／停止／サーチ／その他）を制御しながら、ビデオも見ることができる。同時に、ユーザは、フルサイズウィンドウに対してアプリケーションの小型版が表示されるため、ディスプレイ上のスペースを節約できる。
【００７９】
図９はまた、開いた状態でピン留めされているサムネイルを閉じる方法も示している。サムネイルは、閉ボタン９０９を含むことができる。カーソル９０４は、サムネイル９０８を閉じるために、サムネイル９０８の閉ボタン９０９の上に移動される。たとえば、閉ボタン９０９を選択またはクリックすることにより、サムネイル９０８を閉じることができる。
【００８０】
図１０は、開いた状態でピン留めされていたサムネイルを閉じる様子を示している。図１０が示すように、ディスプレイ１００１は開いたウィンドウを含む。フォルダウィンドウ（たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ１００２）が対応するシンプルタスクバーボタン１００５とともに表示される。ワードプロセシングウィンドウ１００３が表示され、「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ１００２を部分的に隠している。ワードプロセシングウィンドウ１００３は、タスクバー内のシンプルタスクバーボタン１００６に関連付けられている。図７、図８の例と同様に、メディアプレイヤアプリケーションウィンドウは、最小化されているため、ディスプレイ１００１の上にはない。メディアプレイヤアプリケーションウィンドは、ユーザがリッチプレゼンテーションタスクバーボタン１００７の制御ボタンを選択することによって、メディアプレイヤアプリケーションの動作を制御できるような制御用表示要素を含む、対応するリッチプレゼンテーションタスクバーボタン１００７に関連付けられている。この例において、タスクバーボタン１００７の中の制御用表示要素は、トランスポート制御を提供する。したがって、制御用表示要素を通じて、ユーザは、メディアプレイヤアプリケーションウィンドウを開くことによってディスプレイ１００１上の余分なスペースを使うことなく、メディアプレイヤアプリケーションの動作を制御できる。メディアプレイヤアプリケーションに対応するサムネイル１００８が表示され、開いた状態でピン留めされる。このように、カーソル１００４がタスクバーボタン１００７の中の所定の場所から移動されていても、サムネイル１００８はディスプレイ１００１の上に表示されたままである。
【００８１】
カーソル１００４は、この例において、閉ボタン１００９を選択するために使用される。閉ボタン１００９が選択されると（たとえば、クリックされる）、サムネイルは閉じられ、ディスプレイ１００１の上では見えなくなる。
【００８２】
図１１は、サムネイルが閉じられた後の図１０の例を示す。前の例と同様に、図１１は、フォルダウィンドウ（たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ１１０２）と、「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ１１０２を部分的に隠すワードプロセシングアプリケーションウィンドウ１１０３を含むディスプレイ１１０１を示している。「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ１１０２とワードプロセシングアプリケーションウィンドウ１１０３はどちらもシンプルタスクバーボタン（それぞれ１１０５，１１０６）に関連付けられている。メディアプレイヤアプリケーションに対応するサムネイル（図示せず）は、サムネイル閉ボックス（図示せず）を選択することにより、カーソル１１０４で消される、または閉じられる。この例において、サムネイルを閉じても、メディアプレイヤアプリケーションの動作を制御するための制御用表示要素（たとえば、トランスポート制御）を表示する、対応するリッチプレゼンテーションタスクバーボタン１１０７は影響を受けない。
【００８３】
さらに、複数のタスクバーボタンからのサムネイルも表示されるかもしれない。図１２は、ワードプロセシングアプリケーションウィンドウ１２０３によって部分的に隠されているフォルダウィンドウ（「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ１２０２）を含むディスプレイ１２０１を示している。「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ１２０２とワードプロセシングアプリケーションウィンドウ１２０３は、シンプルタスクバーボタン（それぞれ、１２０５，１２０６）に関連付けられている。図１２に示す例において、メディアプレイヤアプリケーションウィンドウとインスタントメッセージングアプリケーションウィンドウが最小化されており、したがって、ディスプレイ１２０１には表示されていないが、各アプリケーションはタスクバーの中に関連するタスクバーボタン（それぞれ１２０７，１２０８）を持っている。メディアプレイヤアプリケーションは、メディアプレイヤアプリケーションの制御を可能にする対話的な制御用表示要素を提供するリッチプレゼンテーションタスクバーボタン１２０７に関連付けられている。リッチプレゼンテーションタスクバーボタン１２０７の中の対話的制御用表示要素を選択する（たとえば、クリックする）ことによって、ユーザは、メディアプレイヤアプリケーションそのものの動作または機能を制御できる。同様に、インスタントメッセージングアプリケーションは、リッチプレゼンテーションタスクバーボタン１２０８に関連付けられている。リッチプレゼンテーションタスクバーボタン１２０８は、ユーザがリッチプレゼンテーションタスクバーボタン１２０８により、インスタントメッセージングを介してテキストを入力し、入力されたテキストを送信できるようにする対話的制御用表示要素を提供する。また、ユーザは、イベントが発生すると定期的に変化する動的情報（つまり、アップデートされる情報）の提供を受ける。この場合、インスタントメッセージングを介した会話の会話スレッドは、ユーザによって送信された最新のメッセージを含むようアップデートされる。
【００８４】
カーソル１２０４は、メディアプレイヤアプリケーションのリッチプレゼンテーションタスクバーボタン１２０７の上に合わせられ、メディアプレイヤアプリケーションのサムネイル１２０９がディスプレイ１２０１の上に現れるようにする。サムネイルは、メディアプレイヤアプリケーションに関連付けられたさまざまな情報を含むことができる。たとえば、サムネイルは、アプリケーション上で再生されるビデオの小型バージョン、演奏している音楽アーティストの名前、音楽またはメディアの再生に関係するビジュアル、またはその他の関連情報を含む場合がある。カーソルは、図１２の矢印で示されているように、リッチプレゼンテーションタスクバーボタン１２０７から移動される。
【００８５】
図１３はカーソルがリッチプレゼンテーションタスクバーボタン１２０７から移動された後の、図１２に示す例を示す。図１３の例において、ディスプレイ１３０１はフォルダウィンドウ（たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ１３０２）とワードプロセシングアプリケーションウィンドウ１３０３を含む。「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ１３０２は関連付けられているシンプルタスクバーボタン１３０５を持ち、ワードプロセシングアプリケーションウィンドウ１３０３は関連付けられているシンプルタスクバーボタン１３０６を有する。さらに、メディアプレイヤアプリケーションは、タスクバーの中に関連付けられたリッチプレゼンテーションタスクバーボタン１３０７を有し、インスタントメッセージングアプリケーションは、対応するリッチプレゼンテーションタスクバーボタン１３０８を有する。図１３に示されているように、メディアプレイヤアプリーションとインスタントメッセージングアプリケーションのリッチプレゼンテーションタスクバーボタンはそれぞれ、対応するリッチプレゼンテーションタスクバーボタンの中の制御ボタンを選択することを通じて、対応するアプリケーションの動作を制御するための制御用表示要素を含む。インスタントメッセージングアプリケーションのリッチプレゼンテーションタスクバーボタン１３０８は、動的情報（つまり、定期的に変更され、アップデートされる情報）も含むかもしれない。図１３の例において、メディアプレイヤアプリケーションは、「再生」、「早送り」等のトランスポート制御を含む制御ボタン（制御用表示要素）を含み、インスタントメッセージングアプリケーションのリッチプレゼンテーションタスクバーボタン１３０８は、会話スレッドの一部を含む。
【００８６】
カーソル１３０４は、メディアプレイヤアプリケーションに関連付けられているリッチプレゼンテーションタスクバーボタン１３０７から移動させられている。このため、メディアプレイヤアプリケーションに関連付けられたサムネイルは消され、ディスプレイ１３０１上では見えなくなっている。しかしながら、カーソル１３０４は、インスタントメッセージングアプリケーションに対応するリッチプレゼンテーションタスクバーボタン１３０８に移動され、インスタントメッセージングアプリケーションのサムネイル１３０９が表示されている。
【００８７】
また、複数のサムネイルを同時に表示することができる。たとえば、サムネイルをピン留めし、カーソルが対応するタスクバーボタンから移動されても、サムネイルが表示されたままとすることができる。図１４は、フォルダウィンドウ（たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ１４０２）とこれに重なるワードプロセシングアプリケーションウィンドウ１４０３を含むディスプレイ１４０１を示す。そのほか、メディアプレイヤアプリケーションとインスタントメッセージングアプリケーションはアクティブであるが、最小化されている。アプリケーションの各々に対応するタスクバーボタンが表示されている。たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ１４０２は、シンプルタスクバーボタン１４０５に関連付けられ、ワードプロセシングアプリケーションウィンドウ１４０３はシンプルタスクバーボタン１４０７に関連付けられ、インスタントメッセージングアプリケーションは、リッチプレゼンテーションタスクバーボタン１４０８に関連付けられている。
【００８８】
図１４は、ディスプレイ１４０１にピン留めされたメディアプレイヤアプリケーションのサムネイル１４０９を示している。カーソル１４０４は、インスタントメッセージングアプリケーションに関連付けられたリッチプレゼンテーションタスクバーボタン１４０８の上に合わせられ、インスタントメッセージングアプリケーションに関連付けられたサムネイル１４１０がディスプレイ１４０１上に表示される。同様に、インスタントメッセージングアプリケーションに関連付けられたサムネイル１４１０もピン留めされ、カーソル１４０４がインスタントメッセージングアプリケーションに関連づけられた対応するタスクバーボタン１４０８から移動されても、表示されたままとすることができる。図１４に示された例において、メディアプレイヤアプリケーションとインスタントメッセージングアプリケーションのサムネイルはどちらも開いており、ディスプレイ１４０１に表示されている。
【００８９】
サムネイルが表示され、および消される際、偶発的に、あるいは早まってサムネイルが消される、あるいは表示される可能性がある。図１５は、サムネイルが早まって、あるいは偶発的に表示され、または消されるのを防止する方法を描いたものである。ステップ１５００で、カーソルの位置が決められ、ステップ１５０１で、カーソルは、サムネイルが呼び出される所定の場所の上に移動されたか否かが判断される。所定の場所は、ディスプレイ上のどこにあってもよく、好ましくは、対応するタスクバーボタンの上がよい。カーソルが正しい位置にあると（ステップ１５０１の「イエス」の分枝）、カーソルが正しい位置にある間に所定の遅延時間が経過したか否かがさらに判断される。遅延期間は、ユーザの選好または個々の状況に基づいて設定される。カーソルがサムネイルを開くための場所に位置づけられた後に経過した時間が不十分であれば、システムは遅延期間が経過する（ステップ１５０２の「イエス」の分岐）まで待ち、つまり、サムネイルが表示される（ステップ１５０３）か、あるいはカーソルが再びその場所から移動される（サムネイルが表示されるべきではないことを示す）。カーソルが所定の期間にわたり、サムネイルを表示するための場所にあると、サムネイルが表示される（ステップ１５０３）。
【００９０】
図１５はまた、偶発的または早まってサムネイルが消されるのを防止するための方法の例を示している。サムネイルが表示された後、カーソルの位置が決められ（ステップ１５０４）、カーソルが、サムネイルが呼び出される場所から移動されたか否かが判断される（ステップ１５０５）。カーソルがサムネイルを呼び出す場所に留まっていると（ステップ１５０５の「ノー」の分岐）、サムネイルは表示されたままとなる。カーソルがサムネイルを呼び出す場所から移動されると、まず、カーソルがサムネイルを呼び出す場所から移動された状態で所定の遅延時間が経過したか否かが判断される。この遅延期間は、たとえば、特定の状況における各ユーザの選好やニーズに従って設定できる。カーソルがサムネイルを呼び出す場所から移動されている状態で経過した時間が不十分であると、システムは、カーソルが指定された長さの時間だけサムネイルを呼び出す場所から移動されたままになるまで待ち（ステップ１５０６の「イエス」の分岐）、つまり、サムネイルが消されるべきであることを意味する。あるいは、システムは、所定の時間が経過する前にカーソルがサムネイルを呼び出す場所に戻されるまで待ち、これはサムネイルが表示されたままとすべきことを意味する（ステップ１５０６の「ノー」の分岐）。カーソルが、少なくとも指定された遅延時間と同じ長さの時間だけ、サムネイルを呼び出す場所から移動されると、サムネイルは消される（ステップ１５０７）。
【００９１】
図１６は、サムネイルの表示を遅延させる方法の別の例を示す。この例において、それが表示されるべき最初のサムネイルであれば、そのサムネイルが早まって、望まずに、あるいは不注意で表示されることを防止するためにサムネイルの表示が遅延されるが、すでに他のサムネイルが表示されていれば、遅延はない。これにより、ユーザは一連のアプリケーションのサムネイルとそれらのタスクバーボタンを迅速にスキャニングすることができる。この例において、カーソルはサムネイルを呼び出す（ステップ１６０１）場所に位置づけられる（ステップ１６００）。たとえば、カーソルは、タスクバーボタンの所定の場所に移動される場合がある。他に現在表示中のサムネイルがなければ（ステップ１６０２の「ノー」の分岐）、所定の遅延期間が経過したか否かが判断される（ステップ１６０３）。この期間は、たとえば、ユーザの選好や特定状況でのニーズにしたがって設定される。いったんカーソルが十分な期間にわたってサムネイルを呼び出す場所に留まると（ステップ１６０３の「イエス」の分岐）、サムネイルが表示される（ステップ１６０４）。あるいは、カーソルが他のサムネイルを呼び出す場所に移動されたときに、ディスプレイ上に表示されている他のサムネイルが少なくともひとつあると（ステップ１６０２の「イエス」の分岐）、そのサムネイルは、所定の遅延期間だけ待つことなく、表示される（ステップ１６０２の「イエス」の分岐とステップ１６０４）。図１６の例において、サムネイルが表示された後、カーソルの位置が決められ（ステップ１６０５）、カーソルがサムネイルを呼び出す場所から移動されるとサムネイルは消される（ステップ１６０６の「イエス」の分岐）（たとえば、対応するタスクバーボタン）。
【００９２】
図１７は、サムネイルを消す別の例を示す。この例において、カーソルがサムネイルを表示する場所（たとえば、タスクバーボタンの中）にあり、サムネイルがすでに表示されている。ステップ１７００で、カーソルの位置が決められる。カーソルがその場所（たとえば、タスクバーボタン）から移動されると（ステップ１７０１の「イエス」の分岐）、少なくとも１つの他のサムネイルが表示されているかがまず判断される（ステップ１７０２）。他のサムネイルが表示されていないと（ステップ１７０２の「ノー」の分岐）（つまり、現在のサムネイルが、表示されている最後のサムネイルであると）、システムはサムネイルを消す前に、カーソルが所定の遅延期間だけ、その場所から外れた場所に留まるまで待つ（ステップ１７０３の「イエス」の分岐）。しかしながら、カーソルがその場所から移動された時点で開かれている他のサムネイルがあれば（ステップ１７０２の「イエス」の分岐）、サムネイルは遅延なく消される（ステップ１７０４）。この例において、遅延は、最後のサムネイルが閉じられる前であり、かつ、それ以前のサムネイルが閉じられた後に発生する。これにより、サムネイルが偶発的または早まって閉じられるのを防止する一方で、必要なときにサムネイルを閉じる際の応答もすばやいままである。
【００９３】
本発明の別の態様では、タスクバーボタンを縮小、拡大することができる。たとえば、複数のタスクバーボタンがタスクバー内に存在する場合、これらのタスクバーボタンは、すべてのタスクバーボタンに利用可能なスペースの量を融通するよう、サイズまたは内容が変えられる。図１８Ａ−Ｃは、サイズに基づいてタスクバーボタンを縮小、拡大する例を示す。
【００９４】
図１８Ａは、３つのタスクバーボタン、つまり、シンプルタスクバーボタンであるフォルダタスクバーボタン（たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」タスクバーボタン１８０１）、同じくシンプルタスクバーボタンであるワードプロセシングアプリケーションタスクバーボタン１８０２、リッチプレゼンテーションタスクバーボタンであるメディアプレイヤアプリケーションタスクバーボタン１８０３を含むタスクバーの例を示す。この例において、タスクバーには、タスクバーボタンの３つすべてを収容するのに十分なスペースがある。したがって、３つのタスクバーボタンの各々はフルサイズであり、他のタスクバーボタンの各々とほぼ同じサイズである。
【００９５】
図１８Ｂは、図１８Ａのタスクバーボタン、つまり、シンプルタスクバーボタンであるフォルダタスクバーボタン（たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」タスクバーボタン１８０４）、シンプルタスクバーボタンであるワードプロセシングアプリケーションタスクバーボタン１８０５およびリッチプレゼンテーションタスクバーボタンであるメディアプレイヤアプリケーションタスクバーボタン１８０６に、インスタントメッセージングアプリケーションに関連付けられた新たなタスクバーボタン１８０７（リッチプレゼンテーションタスクバーボタンである）が追加されているものを示す。タスクバーで利用可能なスペースの量で、新たなリッチプレゼンテーションタスクバーボタン１８０７を収容するために、４つのタスクバーボタンの各々はサイズが減少する。図１８Ｂ示す例において、結果として現れている４つのタスクバーボタンの各々は、図１８Ａの例のタスクバーボタンの各々より小さいが、図１８Ｂの例における他のタスクバーボタンの各々とサイズが同等である。この例において、タスクバーボタンの各々は同等にサイズが減少し、リッチプレゼンテーションタスクバーボタンが、シンプルタスクバーボタンと同じ比率でサイズが減少するようになっている。
【００９６】
図１８Ｃは、タスクバーボタンの縮小、拡大の別の例を示す。この例において、新たなリッチプレゼンテーションタスクバーボタン１８１１が、タスクバーの中のすでに存在していたタスクバーボタンに追加される。つまり、インスタントメッセージングアプリケーションとそのリッチプレゼンテーションタスクバーボタン１８１１がアクティブ化されたとき、フォルダタスクバーボタン（たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」タスクバーボタン１８０８）（シンプルタスクバーボタン）、ワードプロセシングアプリケーションタスクバーボタン１８０９（シンプルタスクボタン）とメディアプレイヤアプリケーションタスクバーボタン１８１０（リッチプレゼンテーションタスクバーボタン）はすでにタスクバーの中にある。この例において、通常のシンプルタスクバーボタンは新たなリッチプレゼンテーションタスクバーボタン１８１１を収容するためのスペースを確保するためにサイズが減少し、その一方で、他のリッチプレゼンテーションタスクバーボタン（たとえば、託すバーボタン１８１０）はサイズが減少しない。図１８Ｃに描かれているように、どちらもシンプルタスクバーボタンである「ＭｙＤｏｃｕｍｅｎｔｓ」タスクバーボタン１８０８とワードプロセシングアプリケーションタスクバーボタン１８０９はサイズが減少するが、リッチプレゼンテーションタスクバーボタンであるメディアプレイヤタスクバーボタン１８１０はサイズが減少しない。この例における新たなリッチプレゼンテーションタスクバーボタン１８１１は、インスタントメッセージングアプリケーションに関連付けられ、また、カスタムインタフェースを含む。したがって、図１８Ｃが示すように、シンプルタスクバーボタン（つまり、「ＭｙＤｏｃｕｍｅｎｔｓ」タスクバーボタン１８０８とワードプロセシングアプリケーションタスクバーボタン１８０９）は、より小さな形態で表示され、リッチプレゼンテーションタスクバーボタン（つまり、メディアプレイヤタスクバーボタン１８１０とインスタントメッセージングアプリケーションタスクバーボタン１８１１）は、フルサイズで表示される。この例において、リッチプレゼンテーションタスクバーボタンのサイズは、シンプルタスクバーボタンのサイズを犠牲にして保持される。
【００９７】
新たなタスクバーボタンが図１８Ａ−Ｃのタスクバーに追加されると、リッチプレゼンテーションタスクバーボタンのサイズを減少させる必要があるかもしれない。この場合（図示せず）、シンプルタスクバーボタンのサイズを特定の最小限界値まで減少してから、リッチプレゼンテーションタスクバーボタンのサイズが減少する。たとえば、シンプルタスクバーボタンのサイズは、そのタスクバーボタンの中で有益な情報が利用できなくなるポイントまでサイズが減少する。このように、この例において、タスクバーボタンの個々のサイズは、優先順位付けスキームにしたがって減少される。一例において、優先順位付けスキームは、リッチプレゼンテーションタスクバーボタンを優先させ、シンプルタスクバーよりリッチプレゼンテーションタスクバーボタンが当初のサイズを保持できるようにする。シンプルタスクバーボタンのサイズが、さらに小さくするとシンプルタスクバーボタンからの有益な情報が劣化する地点まで減少してから、リッチプレゼンテーションタスクバーボタンのサイズが減少し始める。
【００９８】
別の例（図示せず）において、リッチプレゼンテーションタスクバーボタンの大きさは、その他すべてのタスクバーボタン（つまり、シンプルタスクバーボタン）に比例して減少するか、あるいは、他のシンプルタスクバーボタンが、それ以上サイズが小さくなると、タスクバーボタンが情報的でなくなる点までサイズが減少しているが、リッチプレゼンテーションタスクバーボタンのサイズが小さくなった後には、リッチプレゼンテーションタスクバーボタンは、十分な情報または制御能力を提供できる点までサイズが減少する。この点で、リッチプレゼンテーションタスクバーボタンはサイズが減少しない。
【００９９】
さらに、タスクバーボタンは、たとえば、タスクバーボタン統合を通じて、タスクバー内のスペースを節約するために、相互に融合させることができる。ここで、「タスクバーボタン統合」とは、タスクバーボタンが１つのタスクバーボタンに結合されることを意味する。少なくとも２つのタスクバーボタンからの情報が１つのタスクバーボタンに設置されるとき、タスクバーの中で、他の表示項目のためにより多くのスペースが利用可能となる。このように、特にタスクバーの中に新たなスペースが必要となると、タスクバーボタン統合を通じ、複数のタスクバーボタンが結合される。図１９ａ−ｆは、タスクバーボタン統合の例を示す。図１９Ａは、３つのタスクバーボタンを含むタスクバーの例を示す。この例では、フォルダタスクバーボタン（たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」タスクバーボタン１９０１）とワードプロセシングアプリケーションタスクバーボタン１９０２がある。「ＭｙＤｏｃｕｍｅｎｔｓ」タスクバーボタン１９０１とワードプロセシングアプリケーションタスクバーボタン１９０２はどちらもシンプルタスクバーボタンである。メディアプレイヤアプリケーションに関連付けられている第三のタスクバーボタン１９０３は、このアプリケーションの中にある。メディアプレイヤアプリケーションに関連付けられているタスクバーボタン１９０３は、図１９Ａに示されているように、リッチプレゼンテーションタスクバーボタンである。この例において、３つのタスクバーボタンのすべてを収容するために十分なスペースがタスクバー上にある。その結果、３つすべてのタスクバーボタンは、個々に、フルサイズで表示される。
【０１００】
図１９Ｂは、タスクバー内にタスクバーボタンを表示する別の例を示す。図１９Ｂのタスクバーは、図１９Ａに示されている３つのアプリケーションとウィンドウに関するタスクバーボタン、つまり、「ＭｙＤｏｃｕｍｅｎｔｓ」タスクバーボタン、ワードプロセシングアプリケーションタスクバーボタンおよびメディアプレイヤアプリケーションタスクバーボタンを含む。しかしながら、図１９Ｂにおいては、タスクバーに新たなリッチプレゼンテーションタスクバーボタン１９０６が追加されている。この例において、追加されたこのリッチプレゼンテーションタスクバーボタン１９０６は、インスタントメッセンジャアプリケーションに関連付けられている。タスクバーボタン統合は、リッチプレゼンテーションタスクバーボタン１９０６の追加を可能にするために実行されるかもしれない。この例において、図１９Ａに示されているシンプルフォルダタスクバーボタン（「ＭｙＤｏｃｕｍｅｎｔｓ」タスクバーボタン１９０１）は、図１９Ａに示されているワードプロセシングアプリケーションタスクバーボタン１９０２と統合され、フォルダ（たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」とワードプロセシングアプリケーションを統合する単独のタスクバーボタン１９０４を形成する。このように、タスクバーの上には、メディアプレイヤタスクバーボタン１９０５（リッチプレゼンテーションタスクバーボタン）と新たに追加されたインスタントメッセージングアプリケーションタスクバーボタン１９０６（リッチプレゼンテーションタスクバーボタン）を個々に、フルサイズで表示するための十分なスペースがある。図１９Ｂに描かれているように、シンプルタスクバーボタンは、タスクバーボタン統合によって結合され、リッチプレゼンテーションタスクバーボタンはタスクバーボタン統合によって結合されない。あるいしは、新たなリッチプレゼンテーションタスクバーボタンがタスクバーに追加されると（図示せず）、リッチプレゼンテーションタスクバーボタンはタスクバーボタン統合によって結合されるかもしれないが、これは、シンプルタスクバーボタンがタスクバーボタン統合によってすでに結合された後に限られる。このように、リッチプレゼンテーションタスクバーボタンは優先され、シンプルタスクバーボタンがタスクバーボタン統合によってすべて結合されるまでリッチプレゼンテーションタスクバーボタンは保護され、シンプルタスクバーボタンがすべて結合されると、リッチプレゼンテーションタスクバーボタンがタスクバーボタン統合によって結合される。
【０１０１】
図１９Ｃは、タスクバーボタンを表示する他の例を示している。この例において、新たなリッチプレゼンテーションタスクバーボタン１９０９が、すでにシンプルおよび／またはリッチプレゼンテーションタスクバーボタンを含むタスクバーに追加されている。この例において、すべてのタスクバーボタンを収容するために、シンプルタスクバーボタンがタスクバーボタン統合によって結合され、リッチプレゼンテーションタスクバーボタンがタスクバーボタン統合によって結合される。図１９Ｃに描かれているように、図１９Ａに描かれているフォルダウィンドウ（たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」ウィンドウ）に関連するシンプルタスクバーボタン１９０１と図１９Ａに描かれているワードプロセシングアプリケーションに関連するタスクバーボタン１９０２は、タスクバーボタン統合によって結合され、図１９Ｃの単独のタスクバーボタン１９０７を形成する。また、図１９Ｂに描かれているメディアプレイヤアプリケーションのリッチプレゼンテーションタスクバーボタン１９０５と図１９Ｂに描かれているインスタントメッセージングアプリケーションに関連するリッチプレゼンテーションタスクバーボタン１９０６は、タスクバーボタン統合によって結合され、図１９Ｃに描かれている単独のタスクバーボタン１９０８を形成する。しがって、シンプルタスクバーボタンはタスクバーボタン統合によって結合され、あるいは１つのタスクバーボタン（たとえば、タスクバーボタン１９０７）に融合され、リッチプレゼンテーションタスクバーボタンはタスクバーボタン統合によって結合されるか、あるいは相互に融合されて別のタスクバーボタン（たとえば、タスクバーボタン１９０８）となり、新たなタスクバーボタン１９０９を追加するスペースが確保される。
【０１０２】
図１９Ｄは、タスクバーボタンを表示する別の例を描いたものである。この例において、リッチプレゼンテーションタスクバーボタンは、シンプルタスクバーボタンとのタスクバーボタン統合によって結合される。図１９Ｄに描かれているように、別のアプリケーションのための新たなリッチプレゼンテーションタスクバーボタン１９１２がタスクバーに追加される。タスクバーの上ですべてのタスクバーボタンを収容するためのスペースを確保するために、タスクバーボタンは、タスクバーボタンがシンプルタスクバーボタンかリッチプレゼンテーションタスクバーボタンかを問わず、タスクバーボタン統合によって結合される。たとえば、図１９Ｄに描かれているように、リッチプレゼンテーションタスクバーボタン１９１２がタスクバーに追加される。シンプルフォルダタスクバーボタン（たとえば、図１９Ａに描かれている「ＭｙＤｏｃｕｍｅｎｔｓ」タスクバーボタン１９０１）は、タスクバーボタン統合により、図１９Ａのワードプロセシングアプリケーションのシンプルタスクバーボタン１９０２と結合される。さらに、図１９Ｂのメディアプレイヤアプリケーションに関連付けられたリッチプレゼンテーションタスクバーボタン１９０５は、「ＭｙＤｏｃｕｍｅｎｔｓ」タスクバーボタン１９０１とワードプロセシングアプリケーションタスクバーボタン１９０２とタスクバーボタン統合によって結合され、「ＭｙＤｏｃｕｍｅｎｔｓ」タスクバーボタン、ワードプロセシングアプリケーションタスクバーボタンおよびメディアプレイヤリッチプレゼンテーションタスクバーボタンを組み込んだ単独のタスクバーボタン（図１９Ｄ）を形成する。前述の例と同様に、この例の「ＭｙＤｏｃｕｍｅｎｔｓ」タスクバーボタンとワードプロセシングアプリケーションタスクバーボタンはシンプルタスクバーボタンであり、メディアプレイヤタスクバーボタンはリッチプレゼンテーションタスクバーボタンである。この例において、タスクバーボタンは、個々のタスクバーボタンがシンプルかリッチプレゼンテーションかを問わず、タスクバーボタン統合によって結合される。
【０１０３】
図１９Ｅは、複数のアプリケーションに関連付けられているタスクバーボタンが単独のタスクバーボタンに結合され、メニューの中で表示されるタスクバーボタン統合の別の例を描いたものである。図１９Ｅに描かれているように、メディアプレイヤアプリケーションに関連付けられているリッチプレゼンテーションタスクバーボタン１９２１は制御用表示要素を含み、タスクバーの中にある。また、インスタントメッセージングアプリケーションに関連付けられた別のリッチプレゼンテーションタスクバーボタン１９２２がタスクバーの中にある。タスクバー１９２０は、複数のアプリケーションを表す単独のタスクバーボタンである。この例において、タスクバーボタン１９２０はワードプロセシングアプリケーションとフォルダ（たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」フォルダ）を表す。カーソル１９２４は、メニュー１９２３をアクティブ化する。図１９Ｃの例と同様に、シンプルタスクバーボタンは統合されるが、リッチプレゼンテーションタスクバーボタンはシンプルタスクバーボタンと融合または統合されない。むしろ、シンプルタスクバーボタンだけが結合される。この例において、メニュー１９２３をアクティブ化したことは、統合されたタスクバーボタン１９２０の中の矢印１９２５によって表される。このように、ユーザは、統合されたタスクバーボタンに含まれるすべてのアプリケーションのメニューを表示させることができる。
【０１０４】
図１９Ｆは、タスクバー統合の別の例を描いたものである。この例において、新たなリッチプレゼンテーションタスクバーボタン１９３２がタスクバーに追加され、リッチプレゼンテーションタスクバーボタンは、シンプルタスクバーボタン等、種類の異なるタスクバーボタンと結合される。したがって、この例において、メディアプレイヤアプリケーションに関連付けられているリッチプレゼンテーションタスクバーボタンは、「シンプル」タスクバーボタンと結合または統合され、単独の統合されたタスクバーボタン１９３０を形成する。前の例と同様に、カーソル１９３４を使い、統合されたタスクバーボタン１９３０に含まれるアプリケーションのメニュー１９３３が表示される。この例において、フォルダ、ワードプロセシングアプリケーションとメディアプレイヤアプリケーションは、統合されたタスクバーボタン１９３０に含まれ、カーソル１９３４によってアクティブ化された後に現れるメニュー１９３３の中に表示される。非限定的な例として、タスクバーボタン１９３０に含まれるアプリケーションのメニュー１９３３の表示は、タスクバーボタン１９３０の中のアイコンまたは所定の領域とすることができる。この例において、所定の領域は、矢印１９３５によって示されている。
【０１０５】
あるいは、タスクバーボタンをオーバーフローメニューに設置し、タスクバー上で、タスクバーボタンを収容するためのスペースを確保することができる。図２０Ａ−Ｃは、オーバーフローの中に設置されているタスクバーボタンの例を描いたものである。図２０Ａは、３つのタスクバーボタン、つまり、「ＭｙＤｏｃｕｍｅｎｔｓ」タスクバーボタン２００１、ワードプロセシングアプリケーションタスクバーボタン２００２およびメディアプレイヤタスクバーボタン２００３を含むタスクバーを描いている。前述の例と同様に、「ＭｙＤｏｃｕｍｅｎｔｓ」のタスクバーボタン２００１とワードプロセシングアプリケーションタスクバーボタン２００２はシンプルタスクバーボタンであり、メディアプレイヤタスクバーボタン２００３はリッチプレゼンテーションタスクバーボタンである。
【０１０６】
図２０Ｂは、タスクバーに追加されているタスクバーボタンの例を描いたものである。この例において、シンプルワードプロセシングアプリケーションタスクバーボタン２００４とメディアプレイヤタスクバーボタン２００５等のタスクバーボタンは、タスクバーの中に、個々に、フルサイズで、インスタントメッセージングアプリケーションに関連付けられている新たに追加されたリッチプレゼンテーションタスクバーボタン２００６とともに表示されたままである。タスクバー上で、すべてのタスクバーボタンのための空間を設けるために、「ＭｙＤｏｃｕｍｅｎｔｓ」タスクバーボタン（図２０Ａの２００１）は、矢印２０１１によって示されているように、オーバーフローの中に設置されている。
【０１０７】
図２０Ｄは、オーバーフローの中のアプリケーションの表示を描いたものである。この例において、カーソル２０１７は、所定の領域の上でアクティブ化され、オーバーフローの中に存在するアプリケーションを含むメニューが表示されるようになっている。図２０Ｄに描かれているように、リッチプレゼンテーションタスクバーボタン２０１５が、すでに他のタスクバーボタンを含むタスクバーに追加される。新しいリッチプレゼンテーションタスクバーボタンのための空間を設けるために、タスクバーボタンは、所望の優先順位でオーバーフローの中に設置される。たとえば、シンプルタスクバーボタンは、リッチプレゼンテーションタスクバーボタンをオーバーフローの中に設置する前に、オーバーフローの中に設置される。このように、この例において、リッチプレゼンテーションタスクバーボタンがタスクバーに追加され、タスクバーから別のアプリケーションを移動させることが必要となった後に、「ＭｙＤｏｃｕｍｅｎｔｓ」フォルダに関連付けられているタスクバーボタンが最初にオーバーフローの中に位置づけられる。カーソル２０１７は、所定の領域２０１６（図２０Ｄにおいて矢印で表される）の上でアクティブ化され、オーバーフローの中にあるアプリケーション２０１８のメニューを表示する。この例において、アプリケーション２０１８のメニューの上の「ＭｙＤｏｃｕｍｅｎｔｓ」のリストによって示されるように、オーバーフローの中にフォルダがある。
【０１０８】
図２０Ｅは、オーバーフローの中にシンプルタスクバーボタンを設置する他の例を描いたものである。この例において、別のリッチプレゼンテーションタスクバーボタン２０２１がタスクバーに追加される。タスクバーには、すべてのタスクバーボタンを表示するのに十分な空間がないため、他のシンプルタスクバーボタンはオーバーフローの中に設置される。オーバーフローメニュー２０２３は、所定の領域でカーソル２０２２をアクティブ化することによってアクセスされる。この例においてカーソル２０２２は、矢印２０１２によって指定される所定の領域の中に位置づけられる。次にメニュー２０２３が表示され、ワードプロセシングアプリケーション（この例では、Ｍｉｃｒｏｓｏｆｔ  Ｗｏｒｄ）とファイルフォルダがオーバーフローの中にあることを示している。
【０１０９】
図２０Ｃもまた、タスクバーがオーバーフローに設置されることを描いたものであり、タスクバーにより多くのタスクバーボタンが追加されている。この例において、新たなリッチプレゼンテーションタスクバーボタン２００９がタスクバーに追加される。その結果、別のタスクバーボタンはオーバーフローの中に設置される。この場合、シンプルワードプロセシングアプリケーションタスクバーウィンドウ（図２０Ｂの２００４）は、二重矢印２０１２によって示されるように、オーバーフローの中に設置されている。
【０１１０】
これらの例において、どのアプリケーションをオーバーフローの中に設置するかの選択は、ユーザの選好または特定の状況における必要性に依存する。たとえば、リッチプレゼンテーションボタン（メディアプレイヤタスクバーボタンまたはインスタントメッセージングアプリケーションタスクバーボタン）は、シンプルタスクバーボタン（たとえば、「ＭｙＤｏｃｕｍｅｎｔｓ」のタスクバーボタンとワードプロセシングアプリケーションタスクバーボタン）より優先的に保護される。この例において、シンプルタスクバーボタンが最初にオーバーフローの中に設置される。タスクバーの中にシンプルタスクバーボタンがなくなったら、次に、リッチプレゼンテーションタスクバーボタンをオーバーフローに設置することができる。この例において、リッチプレゼンテーションタスクバーボタンは、すべてのシンプルタスクバーボタンがオーバーフローの中に設置されてしまった後でのみ、オーバーフローの中に設置される。
【０１１１】
本発明の態様は、さまざまな形式や実施形態をとることができると理解される。本明細書で紹介した実施形態は、本発明を限定するのではなく、例を示すためのものであり、本発明の精神と範囲から逸脱することなく、変形版を作ることができると推測される。本発明の実施形態を紹介、説明したが、上記の説明の中ではさまざまな改変、変更または置換が上記の説明の中で意図されており、ある例において、本発明の一部の特徴は、他の特徴を用いずに利用されるかもしれない。したがって、添付の特許請求範囲は広く、本発明の範囲と一致するように解釈されることが適当である。
【図１Ａ】
0005362798.tif 000002
【図１Ｂ】
0005362798.tif 000003
【図１Ｃ】
0005362798.tif 000004
【図１Ｄ】
0005362798.tif 000005
【図１Ｅ】
0005362798.tif 000006
【図１Ｆ】
0005362798.tif 000007
【図１Ｇ】
0005362798.tif 000008
【図１Ｈ】
0005362798.tif 000009
【図１Ｉ】
0005362798.tif 000010
【図１Ｊ】
0005362798.tif 000011
【図１Ｋ】
0005362798.tif 000012
【図１Ｌ】
0005362798.tif 000013
【図１Ｍ】
0005362798.tif 000014
【図２】
0005362798.tif 000015
【図３】
0005362798.tif 000016
【図４】
0005362798.tif 000017
【図５】
0005362798.tif 000018
【図６】
0005362798.tif 000019
【図７】
0005362798.tif 000020
【図８】
0005362798.tif 000021
【図９】
0005362798.tif 000022
【図１０】
0005362798.tif 000023
【図１１】
0005362798.tif 000024
【図１２】
0005362798.tif 000025
【図１３】
0005362798.tif 000026
【図１４】
0005362798.tif 000027
【図１５】
0005362798.tif 000028
【図１６】
0005362798.tif 000029
【図１７】
0005362798.tif 000030
【図１８Ａ】
0005362798.tif 000031
【図１８Ｂ】
0005362798.tif 000032
【図１８Ｃ】
0005362798.tif 000033
【図１９Ａ】
0005362798.tif 000034
【図１９Ｂ】
0005362798.tif 000035
【図１９Ｃ】
0005362798.tif 000036
【図１９Ｄ】
0005362798.tif 000037
【図１９Ｅ】
0005362798.tif 000038
【図１９Ｆ】
0005362798.tif 000039
【図２０Ａ】
0005362798.tif 000040
【図２０Ｂ】
0005362798.tif 000041
【図２０Ｃ】
0005362798.tif 000042
【図２０Ｄ】
0005362798.tif 000043
【図２０Ｅ】
0005362798.tif 000044