【文献】
野沢 直樹,“ファイルとフォルダの操作”,すぐにできる! OS X Lion,日本,株式会社ソーテック社,2011年 8月10日,第1版,pp.51-55
(58)【調査した分野】(Int.Cl.,DB名)
前記選択済みタイルを前記領域に移動させるという選択を受け取るステップにおいて、前記選択済みタイルを前記領域にドラッグする第1のジェスチャを受け取り、前記選択済みタイルを前記新たな位置に移動させるという選択を受け取るステップにおいて、前記選択済みタイルを前記領域から前記新たな位置にドラッグする第2のジェスチャを受け取り、該第2のジェスチャを、前記第2のビューを提示したときに前記ユーザインタフェースを通じて受け取る、請求項1に記載のコンピュータによって実行される方法。
前記選択済みタイルを移動させるという選択を受け取るステップにおいて、1つ又は複数の他の選択済みタイルも受け取り、前記選択済みタイルを前記新たな位置に配置するステップにおいて、前記1つ又は複数の他の選択済みタイルを前記新たな位置に隣接する位置に配置する、請求項1に記載のコンピュータによって実行される方法。
前記選択済みタイルを前記領域に移動させるという選択を受け取ること、及び前記選択済みタイルを前記新たな位置に移動させるという選択を受け取ることは、単一の持続的なジェスチャを通じて受け取られ、前記選択済みタイルを前記領域に移動させること、及び前記選択済みタイルを前記新たな位置に移動させることは、前記選択済みタイルが前記単一の持続的なジェスチャのセレクタに接続されていることを示し、前記第1のビューから前記第2のビューに縮小表示すること、及び前記第2のビューから前記第3のビューに拡大表示することは、前記単一の持続的ジェスチャの間に実行される、請求項1に記載のコンピュータによって実行される方法。
前記選択済みタイルは、選択時には隣接していない、2つのタイルを含み、前記選択済みタイルを前記位置に配置するステップは、前記2つのタイルを相互に隣接させて配置する、請求項5に記載のコンピュータによって実行される方法。
前記選択済みタイルのうちの1つは、前記ユーザインタフェースの前記第1のビュー内に表示されていない異なるアレイから、前記第1のビュー内に表示される前記アレイに自動的にスクロールされる、請求項5に記載のコンピュータによって実行される方法。
【発明を実施するための形態】
【0009】
<概要>
本明細書は、タイルを配列するための技術を説明する。これらの技術は、ユーザが、選択インタフェース内における簡単かつ容易なタイルの配列を介して、これらの選択インタフェースをより良く使用できるようにする。アプリケーション起動インタフェースに関して、例えばこれらの技術は、ユーザが、直感的かつ労力をあまり要さずに、グループ内又はグループ間にまたがってタイルを配列することを可能にする。本技術により、タイルの移動が容易になるだけでなく、タイルがその中に又はその中から移動される、タイルのアレイを自動的にリフローすることができる。
【0010】
タイルを配列するための技術は、任意の数の異なるデバイス、システム、環境及び/又は構成において実装されることが可能であるが、タイルを配列するための例示的な実施形態は、以下の例示的なデバイス、システム及び方法の文脈で説明される。
【0011】
<例示的システム>
図1は、タイルを配列するための技術を具現化することができる例示的なシステム100を図示している。システム100は、6つの例を用いて例示されているコンピューティングデバイス102を含む。コンピューティングデバイス102の6つの例には、ラップトップコンピュータ104、タブレットコンピュータ106、スマートフォン108、セットトップボックス110、デスクトップコンピュータ112及びゲームデバイス114があり、これらはサーバ及びネットブックなどの他のコンピューティングデバイス及びシステムを通じて使用されることもある。
【0012】
コンピューティングデバイス102は、コンピュータプロセッサ116及びコンピュータ読取可能記憶媒体118(媒体118)を含む。媒体118は、オペレーティングシステム120、ウィンドウ(windows)ベースのモードモジュール122、イマーシブモードモジュール124、マネージャ126及びアプリケーション128を含む。コンピューティングデバイス102はまた、
図1で4つの例が示されている、1つ又は複数のディスプレイ130へのアクセスを含むか、有することができる。
【0013】
ウィンドウベースのモードモジュール122は、フレームを有するウィンドウを通じてアプリケーション128を提示することができる。これらのフレームは、アプリケーションと対話するためのコントロール、及び/又はユーザがウィンドウを移動させてサイズ調整する(size)ことができるようにするコントロールを提供することができる。
【0014】
イマーシブモードモジュール124は、ユーザがアプリケーション128を見て対話するモードを提供する。一部の実施形態において、このモードは、ウィンドウフレームが小さいかウィンドウフレームのないアプリケーション、及び/又はユーザが手動でコンテンツをサイズ調整するか位置決めをする必要のないアプリケーションのコンテンツを提示し、またこれらのアプリケーションと対話することを可能にする。このモードは、必ずではないが、典型的なデスクトップ(例えばウィンドウベース)モードを使用することなくホストされるか、及び/又は表れることがある。したがって、一部の場合において、イマーシブモードモジュール124は、ウィンドウ(実質的なフレームを有さないものも)ではないイマーシブモードを提示し、デスクトップ類似のディスプレイ(例えばタスクバー)の利用を妨げる。さらにまた、一部の実施形態において、このイマーシブモードは、閉じることができない又はアンインストールすることができないという点で、オペレーティングシステムと同様である。
【0015】
マネージャ126は、アプリケーション128を、ウィンドウベースモード又はイマーシブモードのいずれかで起動、提示、又は再訪問する選択を可能にする、アプリケーション選択インタフェースを提供し、それ自体を、ウィンドウベースモード又はイマーシブモードのいずれかで提示することができる。また、マネージャ126は、ユーザがアプリケーション選択インタフェース内でタイルを配列することも可能にする。システム100及びマネージャ126を、アプリケーション選択インタフェースのコンテキストで説明するが、マネージャ126は、ファイルシステム、イメージ取得システム、ドキュメント取得システム及び同様のものなどの他のコンテキストでは、タイル、アイコン又はラベルを配列するように動作することがあることに留意されたい。
【0016】
オペレーティングシステム120、モードモジュール122及び124並びにマネージャ126は、互いに別個のものとしてもよく、あるいは何らかの形式で組み合わせるか又は統合してもよい。したがって、一部の場合ではオペレーティングシステム120が、モードモジュール122及び124とマネージャ126とを含む。
【0017】
<例示的な方法>
本明細書は、次にタイルを配列するための例示的な方法を説明する。これらの方法は、実行される動作を指定するブロックのセットとして示されているが、必ずしも示される順序に限定されない。以下の説明の一部は、
図1のシステム100を参照するが、この参照は単に例示のために行うものである。
【0018】
図2は、タイルのグループ内、又はグループ間で或るタイルを移動させる複数のやり方を含む、タイルを配列するための方法200を示している。ブロック202において、ユーザインタフェース内において第1のビュー内に表示された複数のタイルのうち、選択済みタイルの選択を受け取る。この選択は、選択済みタイルを、複数のタイル内における現在の位置から、ユーザインタフェースの或る領域に移動させることができる。
【0019】
例示的なユーザインタフェースの説明に進む前に、この選択を、単一のジェスチャ及び複数のジェスチャを含め様々な手法によるものとすることができることに留意されたい。数例を挙げると、ジェスチャは、マウスポインタ、インタフェースを表示するタッチセンサ型ディスプレイを介して行われたタッチジェスチャ、及び一部のゲームシステムにおいて使用される動き検出デバイスなどを介した動きセンタ型ジェスチャを通して受け取ることができる。
【0020】
複数のタイルが表示されるインタフェースは、上記で示したように、アプリケーション選択インタフェース及びファイルシステムなど、様々なタイプのものとすることができる。したがって、インタフェース内のタイルは、アプリケーション、イメージ、ファイル等を表すことができる。さらに、タイルは必ずしもパッシブ又はフラットなものである必要はなく、代わりに、アプリケーション自身からのコンテンツ、又はアプリケーション自身が実行中でない場合であってもアプリケーションに関連付けられたリモートソースからのコンテンツを表示することができる。
【0021】
例示として、
図3に示される例示的なアプリケーション選択インタフェース300を検討する。アプリケーション選択インタフェース300は、複数のアプリケーションに関連付けられた複数のタイルを表示する。各タイルが1つのアプリケーションに関連付けられ、グラフィック又はテキスト記述子などにより、この関連付けを示す。アプリケーションは、これらのタイルを通じて、例えばマウスクリックやジェスチャ(例えばディスプレイ130のタッチスクリーン実装を通じて)などにより選択可能である。しかしながら、一部の場合において、アプリケーションは、グループとして、及び/又はホットキー若しくはタイルを通じて直接選択する以外の他の選択手法を通じて選択可能である。
【0022】
図1のマネージャ126は、13個のアプリケーションに関連付けられた13個の選択可能なタイルを含むインタフェース300を提供する。タイル302、304及び306は、ウェブ対応のコンテンツ指向アプリケーションに関連付けられた大きなタイルであり、タイル308は、ローカルのワードプロセッシングアプリケーションに関連付けられた大きなタイルであり、タイル310及び312は、ウェブ対応のコンテンツ指向アプリケーションに関連付けられた小さなタイルである。
【0023】
上記のように、ブロック202において、
図4に図示されるタッチジェスチャ402などのタッチジェスチャによる選択を受け取る。このジェスチャ402は、タイル304を選択して、上端領域404に移動させる。この領域は、インタフェース300内のエリアまたは端(edge)とすることができる。必須ではないが、上方又は下方の選択(例えば
図4のジェスチャ402)の使用は、このタイプのジェスチャ(左右ではなく、上下)を他のジェスチャと区別するのを助けることができる。ここでは上下の動きを使用してタイルを配列しているが、一般には左右の動きを使用してタイル間を動かす(パンする)かスクロールする。この区別は、ユーザが、インタフェースを直感的に使用する際の助けとなり、一部の場合においては、命令又は情報を用いてインタフェースを記述する必要、あるいは命令又は情報をインタフェースに盛り込む必要をなくすことができる。上端領域404をユーザに指示しても、指示しなくてもよいが、ここでは説明の目的で示している。マネージャ126は、ジェスチャの一部又は接触点が領域内にあるとすぐにブロック204に進んでもよく、あるいは、ブロック204に進む前に、ジェスチャ402が上端領域404をホバリングするまで待つなど、その領域でのドウェル又はホバリングを待ってもよい。
【0024】
上記選択に応答して、ブロック204において、第1のビューから、該第1のビュー内に表示されていない他の複数のタイルを含む第2のビューへと縮小表示をする。上記のように、ジェスチャ及び他の選択が持続的なものであることも、あるいはそうでないこともある。複数のジェスチャの例は、本明細書の他の箇所において提供される。
【0025】
この例を続けると、ジェスチャ402は持続的なものであると想定する。すなわち、ジェスチャ402は、少なくとも方法200のブロック202、204及び206の間保持される、単一のジェスチャである。持続的ジェスチャの場合、マネージャ126は、タイル304を、ジェスチャ402を行うセレクタ(例えば指又はスタイラス)に「くっつける(stick)」。したがって、ジェスチャ402が保持されて、タイル304が
図4に示される指にくっついている間、マネージャ126は第1のビュー内に提示されていない複数の他のタイルを提示するよう縮小表示をする。この第2のビューが
図5に図示されている。
図5は、低解像度で、タイルの複数の異なるグループ502、504及び506を有するインタフェース300を示している。グループ506は、縮小された(及び部分的に不明瞭になった)
図3及び
図4のタイルを含む。タイル304はフルサイズで示されているが、グループ502、504及び506内のタイルの解像度に対応するように小さくすることができる。
【0026】
ブロック206において、選択済みのタイルを、第2のビュー内の新たな位置に移動させる選択を受け取る。この選択は、単一の持続的なジェスチャが用いられているときなどに、選択済みのタイルを新たな位置へドロップするか、あるいは新たな位置上でドウェルするかホバリングすることである。この新たな位置を、マネージャ126によって異なる方法でアドレス指定することができる。ある場合において、方法200は、更なる選択なしに、選択済みタイルを新たな位置に自動的に配置する。別の場合において、方法200は更なる選択を待つ。しかしながら、双方の場合において、方法200は、ブロック208において、複数のタイルを高解像度で示すように拡大表示をすることができる。
【0027】
ブロック208において、新たな位置を拡大表示し、この拡大表示では第3のビューを提示する。第3のビューは、新たな位置と、複数の他のタイルのうちの1つ又は複数とを含む。方法200が、選択済みタイルを、更なる選択なしに自動的に配置する場合、選択済みタイルはグループ内に示され、配置される。
【0028】
方法200が、選択済みのタイルを新たな位置に自動的に配置せず、代わりに、更なる選択を待つ場合、選択済みタイルはグループ内には示されず、このタイルはグループ外に示されるか、又はグループ上に置かれる。
【0029】
現在の例において、マネージャ126は、ジェスチャ402の別の部分を受け取る。このジェスチャ402の別の部分は、タイル304を、
図5のグループ502内のタイルに隣接する位置602に移動させることを選択するものである。この移動の結果が
図6に示されている。
【0030】
それに応じて、マネージャ126は、グループ502の複数のタイル及び選択済みタイル304を、
図7に図示される高解像度のビュー702で示すように拡大表示する。この場合において、タイル304は、ジェスチャ402のセレクタにまだ接続されており、グループ502上に置かれるように示されている。したがって、この場合において、マネージャ126は、新たな位置が中に存在しているグループ内のタイルを示すように拡大表示する。マネージャ126は、次いで選択済みタイルを配置する正確な位置を待つ。
【0031】
方法200は、タイルのグループ内における正確な位置を待つ場合は、「選択を待つ」の経路に従ってブロック210に進み、マネージャ126が、更なる選択なしに、選択済みタイルをグループ内の新たな位置に置く場合には「自動配列」の経路に従ってブロック212に進む。
【0032】
ブロック210において、第3の選択を受け取る。この第3の選択は、選択済みタイルを、複数のタイルのうちの1つ又は複数のタイルの間に配置するか、あるいは複数のタイルのうちの1つ又は複数のタイルの近くに配置する。マネージャ126は第3の選択を受け取る前に、上記複数のタイルのうちの1つ又は複数のタイルの間、あるいはその近くで、選択済みタイルを配置することができる有効な位置を、選択済みタイルが現在存在している位置の上及び/又は下にあるタイルの外観を変更すること(例えばタイルを斜めにすること)など、グループの周りを移動する選択済みタイルに応じたフィードバックを通じて、指示することができる。他の場合において、マネージャ126は一般に、タイルに近接するかタイルの間の空間に影をつけるか色を付けることなどによって、有効な位置を示す。
【0033】
ブロック212において、選択済みタイルを新たな位置に配置する。上で述べたように、この新たな位置を、ブロック206及び210において受け取ることができる。
【0034】
ブロック202において上記したように、タイルを現在の位置からユーザインタフェースの或る領域に移動させる選択は、ユーザインタフェース内のマークされたエリアを含む。これは
図8のマークされたエリア802で図示されている。必須ではないが、このマークされたエリア802は、テキスト(「Tile Bucket」)で、この領域内のタイルが後でこの中で移動されるか又は他のタイルのグループに移動されることを指示する。ここでは、タイル304、308及び310が、各々別個の選択(例えば3つのマウスクリックまたはドラッグアンドドロップジェスチャ)により選択され、マークされたエリア802内に配置される、と想定する。これに応答してマネージャ126は、これらのタイルをその現在の位置から除去することを、これらの選択済みタイルの元の位置、それぞれ804、806及び808における影付きのブロックで示す。マネージャ126はまた、これらの選択済みタイルが、移動できる状態にあることを、マークされたエリア802内にタイル(ここでは小さいバージョンのタイル)を表すことによって指示する。方法200は次いで、ブロック204と206と208と212、又はブロック204と206と208と210と212の複数の繰り返し又は単一の繰り返しにより、各選択済みタイルを1つ1つ移動するか、又は一度に移動することを可能にする。一度に移動される場合、選択済みタイルのうちの1つが新たな位置に移動され、選択済みタイルのうちの他のものは、新たな位置の近くに移動される。このようにすることによって、本技術は、ユーザが、複数のタイルをグループ内で又はグループにまたがって迅速かつ容易に移動させることを可能にする。
【0035】
方法200とは別個に又は方法200と併せて、本技術は、下記で方法900において説明されるように、タイルが移動されることに応答して、グループのタイルを自動的にリフローすることができる。
【0036】
図9は、タイルを自動的にリフローすることを含む、タイルを配列するための方法900を示す。ブロック902において、複数のタイルをアレイ内に提示する。アレイは、上述のグループ、並びに円形パターン又は3次元パターン(例えば行と列のレイヤ)を有するグループなどの他のタイルの配列のうちのいずれか1つとすることができる。現在の例において、アレイは、
図3に示される行と列、
図5のグループ502若しくは506、又は
図10のグループ1002などの複数の行と列を含む。
【0037】
アレイ内にタイルをリフローすることの一部として、上から下へ、次いで左から右へなど、様々なルールを用いることができる。代わりに、(例えば一般に左から右に配列されない言語文化の場合)右から左又は下から上など、他のルールを用いることもできる。現在の例において、アレイは、上流の位置及び下流の位置を有するように順序付けされる。この例示的なアレイは、左端の列が、該左端の列の右に配列された列の位置よりも上流の位置を有し、各列の一番上の行が、この一番上の行の下に配列された各列内にある位置よりも上流の位置を有する。
【0038】
ブロック904において、アレイ内の位置であって、複数のタイルのうちの1つの現タイルが存在する位置に、選択済みタイルを配置する選択を受け取る。上述のように、これらのタイルを、方法200で説明したように、あるいはそうでなくとも、同じアレイ内のオートスクロールを通じて、又はオフスクリーンの位置から選択された位置へタイルをドラッグアンドドロップすることによって異なるアレイにわたって選択し、配置することができる。
【0039】
さらに、タイルを選択された位置に配置する前に、マネージャ126は、選択済みタイルが配置されることとなる位置を、例えば選択済みタイルの位置上でのドウェル、ホバリング又は移動に応答して、その位置内のすぐ上流のタイル又は現タイルを傾けることなどにより、指示することができる。マネージャ126は上記位置を、該位置においてタイルを配置すべきアレイの配列、又はその配置に基づいてリフローすべきタイルのアレイをプレビューすることによって指示することもできる。
【0040】
例として
図10を検討する。
図10は、ジェスチャ1004による位置1008におけるタイル1006の配置を図示している。タイル1010は現在、位置1008に存在していることに留意されたい。
【0041】
ブロック906において、選択済みタイルをアレイ内の位置に配置する。方法900は、ブロック906を、ブロック908の前に、後に又は同時に実行することができる。したがって、リフローは、選択済みタイルの上記位置への配置の前に、後に又は同時に示される。
【0042】
ブロック908は、複数のタイルの1つ又は複数をアレイ内において自動的にリフローする。リフローは、少なくとも現タイルをアレイ内の下流位置に移動させる。マネージャ126は、タイルを上記位置に配置する選択に応答して、アレイのタイルをリフローする。このようにすることによって、ユーザはアレイ内でタイルを手動で配列する時間及び努力をする必要がない。
【0043】
現在の例において、アレイは、列によって、上から下へ、次いで左から右に順序付けられる。この順序では、マネージャ126は、現タイルと、現タイルの下流にあるいずれかのタイルとを、それぞれの列内により低い位置が存在しない場合を除いて、それぞれの列の下の方に移動させ、それぞれの列内により低い位置が存在しない場合には、タイルをそのそれぞれの列から、それぞれの列の右側に配列された列へと移動させる。
【0044】
その結果が
図11に示されている。マネージャ126は、タイル1006を位置1008に配置し、グループ1002のタイルをリフローする。自動リフローの移動は、リフロー経路1102で示されており、この経路は、タイルの上から下、次いで左から右、そして上から下のリフローを図示している。
【0045】
選択済みタイルをアレイ内に配置することに起因して、アレイを自動的にリフローすることに加えて、本技術は、タイルをアレイから除去することにも応答して、(タイルが異なるアレイに移動される場合であっても、同じアレイに移動される場合であっても)タイルをリフローすることもできる。例として、タイル304をインタフェース300から除去する選択を図示している
図4を再び検討する。
図4において、タイル304が除去される位置は、破線のボックス406で示されている。しかしながら、本技術は、
図4のインタフェース300の他のタイルを、タイル304の移動に応じでリフローすることができる。このような場合において、リフローは、ブロック204などのタイルの選択に応答してすぐに、又はブロック212における選択済みタイルの新たな位置への配置の後に行うことができる。
【0046】
アレイ内のタイルを自動的にリフローすることが、タイルの除去に応答して行われる場合であっても、タイルの追加に応答して行われる場合であっても、本技術は、アレイ内のサブアレイをリフローすることもできる。再び
図11を検討する。
図11には、小さなタイル1104、1106及び1108が示されている。小さなタイル1104は現在位置1110にある。小さなタイル1108を位置1110に移動させる選択に応答して、マネージャ126は、これらの小さなタイルを、小さなタイルで作られるサブアレイ内でリフローする。これが
図12に図示されている。
図12は、マネージャ126が自動的に、小さなタイル1108を位置1110に配置し、小さなタイル1104を右に移動させ、次いで小さなタイル1106を下に(そして経路1202によって示されるように下流のタイル全てを下に)移動させた結果を示している。
【0047】
上述のように、本技術は、アレイ内及び/又はサブアレイ内の位置からタイルを除去することに応答して、アレイを自動的にリフローすることができる。
図12に示されるように、タイル1108は移動された。これに応答して、マネージャ126は、以前に下流であったタイル、すなわちタイル1204を、タイル1108の元の位置に移動させた。本技術は、このような処理を、タイルの追加に関して上記した手法と反対の手法で、例えば経路1120又は1202の反対の方向で行うことができる。したがって、タイル1106を異なるアレイに移動し、削除し、あるいはそうでなくとも移動させると、マネージャ126は、
図12のグループ1002内のタイルを自動的にリフローして、元々タイル1106によって占有されていた位置へと下流タイル(この場合は大きなタイル)を移動させる。
【0048】
一部の場合において、ユーザはタイルを移動させないと決めることもできる。ユーザが選択済みタイルをアレイ内の或る位置に移動させる場合を検討する。マネージャ126は、選択済みタイルがその位置に追加された場合にアレイがどのように見えるか、プレビューすることができる。ユーザは、これに応じて、タイルを移動させるのをやめると決定することができる。本技術は、ユーザが迅速かつ容易に、移動されたタイルをその元の位置に戻すことを可能にする。ユーザはこの決定を示して、例えばホットキーを選択することや、タイルをインタフェースの特定の領域内に、アレイ若しくはインタフェースの外に、又はインタフェース内の有効として指示されていない位置にドロップすることなど、様々な方法でタイルを移動させることを中止することができる。マネージャ126は、選択済みタイルを元の位置に提示することなどによって、本技術がタイルを元の位置に戻すことを強化することができる。元の位置が現在のビュー内に示されていない場合、マネージャ126は自動的に、元の位置を示す以前のビューを提示する。
【0049】
前述の議論は、本技術がタイルを配列するように動作する方法について説明している。これらの方法の諸態様は、ハードウェア(例えば固定の論理回路)、ファームウェア、ソフトウェア、手動の処理又はこれらの任意の組み合わせで実装され得る。ソフトウェアの実装は、コンピュータプロセッサによって実行されると、指定されたタスクを実行するプログラムコードを表す。例示的な方法がコンピュータ実行可能命令を通じて実行されることもあり、そのようなコンピュータ実行可能命令には、ソフトウェア、アプリケーション、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造、プロシージャ、モジュール、関数等が含まれ得る。プログラムコードを、コンピュータプロセッサに対してローカル及び/又はリモートの1つ又は複数のコンピュータ読取可能メモリデバイスに格納することができる。本方法を、複数のコンピューティングデバイスによる分散コンピューティングモードにおいて実施することもできる。さらに、本明細書で説明される特徴は、プラットフォーム独立であり、様々なプロセッサを有する様々なコンピューティングプラットフォームにおいて実装されることがある。
【0050】
例として、これらの技術を
図1のシステム100、及び/又は以下で説明される例示のデバイス1300に示されるエンティティの1つ又は複数において具現化することができ、これらのエンティティは更に分割しても組み合わせてもよい。したがって、システム100及び/又はデバイス1300は、説明される技術を用いることができる多くの可能なシステム又は装置の一部を例示している。システム100及び/又はデバイス1300のエンティティは一般に、ソフトウェア、ファームウェア、ハードウェア、デバイス若しくはネットワーク全般、又はこれらの組み合わせを表す。ソフトウェア実装の場合、例えばエンティティ(例えばマネージャ126、モードモジュール122及び124)は、プロセッサ(例えばプロセッサ116)において動作するときに指定されたタスクを実行するプログラムコードを表す。プログラムコードを、コンピュータ読取可能記憶媒体118又は
図13のコンピュータ読取可能媒体1314などの1つ又は複数のコンピュータ読取可能メモリデバイスに格納することができる。
【0051】
<例示的なデバイス>
図13は、例示的デバイス1300の様々なコンポーネントを図示している。例示的デバイス1300は、上記
図1〜12を参照して説明したデバイス、あるいはこのデバイスによって実装されるサービス及び動作のいずれかとして実装されうる。一部の実施形態において、デバイス1300は、有線及び/又は無線デバイスのいずれか一方又は組み合わせとして、テレビジョンクライアントデバイス(例えばテレビジョンセットトップボックス、デジタルビデオレコーダ(DVR)等)として、消費者デバイス、コンピュータデバイス、サーバデバイス、ポータブルコンピュータデバイス、ユーザデバイス、通信デバイス、ビデオ処理及び/又はレンダリングデバイス、電化製品デバイス、ゲームデバイス、電子デバイスの形式、及び/又は別のタイプのデバイスとして実装されることがある。デバイス1300は、ユーザ(例えばヒト)に、及び/又はデバイスがユーザ、ソフトウェア、ファームウェア、及び/又はデバイスの組み合わせを含む論理デバイスを記述するように、デバイスを操作するエンティティに関連付けられることもある。
【0052】
デバイス1300は、デバイスデータ1304(例えば受信したデータ、受信しているデータ、放送用にスケジュールされたデータ、データのデータパケット等)の有線及び/又は無線通信を可能にする通信デバイス1302を含む。デバイスデータ1304又は他のデバイスコンテンツは、デバイスの構成設定、デバイスに格納されたメディアコンテンツ、及び/又はデバイスのユーザに関連付けられた情報を含むことができる。デバイス1300に格納されたメディアコンテンツは、任意のタイプのオーディオ、ビデオ及び/又はイメージデータを含むことができる。デバイス1300は、ユーザ選択可能な入力、メッセージ、音楽、テレビメディアコンテンツ、記録されたビデオコンテンツ並びに任意の他のタイプのオーディオ、ビデオ、及び/又は任意のコンテンツソース及び/又はデータソースから受信したイメージデータなど、受信することが可能な任意のタイプのデータ、メディアコンテンツ及び/又は入力による、1つ又は複数のデータ入力1306を含む。
【0053】
デバイス1300は、シリアル及び/又はパラレルインタフェース、無線インタフェース、任意のタイプのネットワークインタフェース、モデム及び任意の他のタイプの通信インタフェースのいずれか1つ又は複数として実装することができる、通信インタフェース1308も含む。通信インタフェース1308は、デバイス1300と通信ネットワークとの間の接続リンク及び/又は通信リンクを提供し、このリンクにより、他の電子的なコンピューティング及び通信装置がデバイス1300とデータを通信する。
【0054】
デバイス1300は、1つ又は複数のプロセッサ1310(例えばマイクロプロセッサ、コントローラ等のいずれか)を含み、プロセッサ1310は、デバイス1300の動作を制御し、及びタイルを配列するための様々なコンピュータ実行可能命令を処理することができる。あるいはまた、デバイス1300は、ハードウェア、ファームウェア、又は1312で一般的に識別された処理及び制御回路とともに実装される固定の論理回路のうちのいずれか1つ又は組み合わせにより実装される。図示されていないが、デバイス1300は、該デバイス内の様々なコンポーネントを接続するシステムバス又はデータ伝送システムを含むことができる。システムバスは、メモリバス若しくはメモリコントローラ、周辺バス、ユニバーサルシリアルバス、及び/又は様々なバスアーキテクチャのいずれかを用いるプロセッサ又はローカルバスなど、異なるバス構造のいずれか1つ又は組み合わせを含むことができる。
【0055】
デバイス1300は、持続型及び/又は非一時的なデータ記憶を可能にする1つ又は複数のメモリバスなどの(すなわち単なる信号伝搬とは対照的な)コンピュータ読取可能記憶媒体1314も含み、そのような記憶媒体の例には、ランダムアクセスメモリ(RAM)、非揮発性メモリ(例えば読み取り専用メモリ(ROM)、フラッシュメモリ、EPROM、EEPROM等のいずれか1つ又は複数)及びディスク記憶デバイスが含まれる。ディスク記憶デバイスを、ハードディスクドライブ、記録可能及び/又は書き込み可能コンパクトディスク(CD)、任意のタイプのデジタル多用途ディスク(DVD)等、任意のタイプの磁気又は光記憶デバイスとして実装することができる。デバイス1300は、大容量記憶デバイス1316も含むことができる。
【0056】
コンピュータ読取可能記憶媒体1314は、デバイスデータ1304に加え、様々なデバイスアプリケーション1318並びにデバイス1300の動作的態様に関連する任意の他のタイプの情報及び/又はデータを格納する、データ記憶機構を提供する。例えばオペレーティングシステム1320を、コンピュータ読取可能記憶媒体1314を用いてコンピュータアプリケーションとして保持し、プロセッサ1310において実行することができる。デバイスアプリケーション1318は、任意の形式の制御アプリケーション、ソフトウェアアプリケーション、信号処理及び制御モジュール、特定のデバイスにネイティブなコード及び特定のデバイス用のハードウェア抽象レイヤなどの、デバイスマネージャを含むことができる。
【0057】
デバイスアプリケーション1318は、タイルを配列するための技術を実装する任意のシステムコンポーネント又はモジュールも含む。この例において、デバイスアプリケーション1318は、ウィンドウベースのモードモジュール122、イマーシブモードモジュール124及びマネージャ126を含むことができる。
【0058】
<結論>
タイルを配列するための技術及び装置の諸実施形態を特徴及び/又は方法に特有の言葉で説明してきたが、添付の特許請求の範囲は、必ずしも説明された特有の特徴又は方法に限定されない。むしろ、そのような特有の特徴及び方法は、タイルを配列するための例示的な実装として開示されている。