(57)【要約】  ユーザインタラクション方法および対応するシステム（１００）ならびにコンピュータ読み取り可能媒体（１２６）。方法は、複数のタブ（３０２，３０６）を有する１つのメニューバー（３００）を含むユーザインタフェース（２２０）を表示するステップ（７０５）を含み、各タブ（３０２，３０６）は、少なくとも１つのサブメニューアイテム（３２０，３２２）に関連づけられており、複数のタブは、１つのアクティブタブ（３０２）と、少なくとも１つの非アクティブタブ（３０６）とを含む。この方法は、アクティブタブ（３０２）に関連づけられたサブメニューアイテム（３２２）を含むアクティブリボンエリア（３０４）を、メニューバー（３００）に表示するステップ（７１０）と、インタラクション入力（３１０）をメニューバー（３００）において受け取るステップ（７１５）とを含む。この方法はさらに、インタラクション入力（３１０）に基づき、付加的なサブメニューアイテム（３２０，３２２）を表示するために、アクティブリボンエリア（３０４）をスクロールするステップ（７２０）を含み、このステップは、アクティブタブ（３０２）に関連づけられたサブメニューアイテム（３２２）と、１つの非アクティブタブ（３０６）に関連づけられた少なくとも１つのサブメニューアイテム（３２０）とを同時に表示するステップを含む。さらにこの方法は、付加的なサブメニューアイテム（３２０，３２２）のうち少なくとも半分が、隣接する次の非アクティブタブ（３０６）に関連づけられたサブメニューアイテム（３２０）であれば、隣接する次の非アクティブタブ（３０６）をアクティブタブに指定し、以前のアクティブタブ（３０２）を非アクティブタブに指定するステップ（７２５）を含む。
2017525021.tif 000002
【特許請求の範囲】
【請求項１】
データ処理システム（１００）により実施される方法であって、該方法は以下のステップを含む、すなわち、
・複数のタブ（３０２，３０６）を有する１つのメニューバー（３００）を含むユーザインタフェース（２２０）を表示するステップ（７０５）であって、ただし各タブ（３０２，３０６）は、少なくとも１つのサブメニューアイテム（３２０，３２２）に関連づけられており、前記複数のタブは、１つのアクティブタブ（３０２）と、少なくとも１つの非アクティブタブ（３０６）とを含む、ステップ（７０５）と、
・前記アクティブタブ（３０２）に関連づけられたサブメニューアイテム（３２２）を含むアクティブリボンエリア（３０４）を、前記メニューバー（３００）に表示するステップ（７１０）と、
・インタラクション入力（３１０）を、前記メニューバー（３００）において受け取るステップ（７１５）と、
・該インタラクション入力（３１０）に基づき、付加的なサブメニューアイテム（３２０，３２２）を表示するために、前記アクティブリボンエリア（３０４）をスクロールするステップ（７２０）であって、前記アクティブタブ（３０２）に関連づけられたサブメニューアイテム（３２２）と、１つの非アクティブタブ（３０６）に関連づけられた少なくとも１つのサブメニューアイテム（３２０）とを同時に表示するステップを含む、ステップ（７２０）と、
・前記付加的なサブメニューアイテム（３２０，３２２）のうち少なくとも半分が、隣接する次の非アクティブタブ（３０６）に関連づけられたサブメニューアイテム（３２０）であれば、該隣接する次の非アクティブタブ（３０６）をアクティブタブに指定し、以前のアクティブタブ（３０２）を非アクティブタブに指定するステップ（７２５）と
を含む、
データ処理システム（１００）により実施される方法。
【請求項２】
前記アクティブタブ（３０２）を、前記非アクティブタブ（３０６）とは外観を異ならせて表示する、
請求項１記載の方法。
【請求項３】
前記インタラクション入力（３１０）は、パンジェスチャとフリックジェスチャのうち一方のジェスチャであり、タッチ入力によって受け取られる、
請求項１記載の方法。
【請求項４】
前記付加的なサブメニューアイテム（３２０，３２２）は、前記アクティブタブ（３０２）に関連づけられた付加的なサブメニューアイテム（３２０，３２２）を含む、
請求項１記載の方法。
【請求項５】
前記インタラクション入力（３１０）は、初期ポジションと最終ポジションとを有するタッチ入力であり、前記スクロール動作は、前記初期ポジション（３１２）と前記最終ポジション（３１４）との間における前記タッチ入力の速度に基づく、
請求項１記載の方法。
【請求項６】
付加的なサブメニューアイテム（３２０，３２２）を表示するための前記アクティブリボンエリア（３０４）のスクロール動作は、前記メニューバー（３００）のリボンエリア内において、複数のサブメニューアイテムから成る１つの連続するチェーンとしてユーザに見える、
請求項１記載の方法。
【請求項７】
前記データ処理システム（１００）は、前記複数のサブメニューアイテム（３２０，３２２）のうち１つのサブメニューアイテムのユーザ選択も受け取り（７３０）、該ユーザ選択に基づきオペレーションを実行する（７３５）、
請求項１記載の方法。
【請求項８】
データ処理システム（１００）であって、
該データ処理システム（１００）は、プロセッサ（１０２）と、アクセス可能メモリ（１０８）と、ディスプレイ（１１１）と、タッチ入力デバイス（１２８）とを備えており、
該データ処理システム（１００）は、特に以下のように構成されている、すなわち、
・複数のタブ（３０２，３０６）を有する１つのメニューバー（３００）を含むユーザインタフェース（２２０）を表示し（７０５）、ただし各タブ（３０２，３０６）は、少なくとも１つのサブメニューアイテム（３２０，３２２）に関連づけられており、前記複数のタブは、１つのアクティブタブ（３０２）と、少なくとも１つの非アクティブタブ（３０６）とを含み、
・前記アクティブタブ（３０２）に関連づけられたサブメニューアイテム（３２２）を含むアクティブリボンエリア（３０４）を、前記メニューバー（３００）に表示し（７１０）、
・前記タッチ入力デバイス（１２８）を介して、インタラクション入力（３１０）を前記メニューバー（３００）において受け取り（７１５）、
・該インタラクション入力（３１０）に基づき、付加的なサブメニューアイテム（３２０，３２２）を表示するために、前記アクティブリボンエリア（３０４）をスクロールし（７２０）、前記アクティブタブ（３０２）に関連づけられたサブメニューアイテム（３２２）と、１つの非アクティブタブ（３０６）に関連づけられた少なくとも１つのサブメニューアイテム（３２０）とを同時に表示し、
・前記付加的なサブメニューアイテム（３２０，３２２）のうち少なくとも半分が、隣接する次の非アクティブタブ（３０６）に関連づけられたサブメニューアイテム（３２０）であれば、該隣接する次の非アクティブタブ（３０６）をアクティブタブに指定し、以前のアクティブタブ（３０２）を非アクティブタブに指定する（７２５）、
データ処理システム（１００）。
【請求項９】
前記アクティブタブ（３０２）は、前記非アクティブタブ（３０６）とは外観が異なるように表示される、
請求項８記載のデータ処理システム。
【請求項１０】
前記インタラクション入力（３１０）は、パンジェスチャとフリックジェスチャのうち一方のジェスチャであり、タッチ入力によって受け取られる、
請求項８記載のデータ処理システム。
【請求項１１】
前記付加的なサブメニューアイテム（３２０，３２２）は、前記アクティブタブ（３０２）に関連づけられた付加的なサブメニューアイテム（３２０，３２２）を含む、
請求項８記載のデータ処理システム。
【請求項１２】
前記インタラクション入力（３１０）は、初期ポジションと最終ポジションとを有するタッチ入力であり、前記スクロール動作は、前記初期ポジション（３１２）と前記最終ポジション（３１４）との間における前記タッチ入力の速度に基づく、
請求項８記載のデータ処理システム。
【請求項１３】
付加的なサブメニューアイテム（３２０，３２２）を表示するための前記アクティブリボンエリア（３０４）のスクロール動作は、前記メニューバー（３００）のリボンエリア内において、複数のサブメニューアイテムから成る１つの連続するチェーンとしてユーザに見える、
請求項８記載のデータ処理システム。
【請求項１４】
前記データ処理システム（１００）は、前記複数のサブメニューアイテム（３２０，３２２）のうち１つのサブメニューアイテムのユーザ選択も受け取り（７３０）、該ユーザ選択に基づきオペレーションを実行する（７３５）、
請求項８記載のデータ処理システム。
【請求項１５】
実行可能な命令によってコーディングされた非一時的なコンピュータ読み取り可能媒体（１２６）であって、前記命令が実行されると、１つまたは複数のデータ処理システム（１００）は以下を実行する、すなわち、
・複数のタブ（３０２，３０６）を有する１つのメニューバー（３００）を含むユーザインタフェース（２２０）を表示し（７０５）、ただし各タブ（３０２，３０６）は、少なくとも１つのサブメニューアイテム（３２０，３２２）に関連づけられており、前記複数のタブは、１つのアクティブタブ（３０２）と、少なくとも１つの非アクティブタブ（３０６）とを含み、
・前記アクティブタブ（３０２）に関連づけられたサブメニューアイテム（３２２）を含むアクティブリボンエリア（３０４）を、前記メニューバー（３００）に表示し（７１０）、
・タッチ入力デバイス（１２８）を介して、インタラクション入力（３１０）を前記メニューバー（３００）において受け取り（７１５）、
・該インタラクション入力（３１０）に基づき、付加的なサブメニューアイテム（３２０，３２２）を表示するために、前記アクティブリボンエリア（３０４）をスクロールし（７２０）、前記アクティブタブ（３０２）に関連づけられたサブメニューアイテム（３２２）と、１つの非アクティブタブ（３０６）に関連づけられた少なくとも１つのサブメニューアイテム（３２０）とを同時に表示し、
・前記付加的なサブメニューアイテム（３２０，３２２）のうち少なくとも半分が、隣接する次の非アクティブタブ（３０６）に関連づけられたサブメニューアイテム（３２０）であれば、該隣接する次の非アクティブタブ（３０６）をアクティブタブに指定し、以前のアクティブタブ（３０２）を非アクティブタブに指定する（７２５）、
コンピュータ読み取り可能媒体。
【請求項１６】
前記アクティブタブ（３０２）は、前記非アクティブタブ（３０６）とは外観が異なるように表示される、
請求項１５記載のコンピュータ読み取り可能媒体。
【請求項１７】
前記インタラクション入力（３１０）は、パンジェスチャとフリックジェスチャのうち一方のジェスチャであり、タッチ入力によって受け取られる、
請求項１５記載のコンピュータ読み取り可能媒体。
【請求項１８】
前記付加的なサブメニューアイテム（３２０，３２２）は、前記アクティブタブ（３０２）に関連づけられた付加的なサブメニューアイテム（３２０，３２２）を含む、
請求項１５記載のコンピュータ読み取り可能媒体。
【請求項１９】
前記インタラクション入力（３１０）は、初期ポジションと最終ポジションとを有するタッチ入力であり、前記スクロール動作は、前記初期ポジション（３１２）と前記最終ポジション（３１４）との間における前記タッチ入力の速度に基づく、
請求項１５記載のコンピュータ読み取り可能媒体。
【請求項２０】
付加的なサブメニューアイテム（３２０，３２２）を表示するための前記アクティブリボンエリア（３０４）のスクロール動作は、前記メニューバー（３００）のリボンエリア内において、複数のサブメニューアイテムから成る１つの連続したチェーンとしてユーザに見える、
請求項１５記載のコンピュータ読み取り可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
他の出願の参照
本願は、２０１４年６月１４日に出願された米国特許仮出願第６２／０１２，２７７号、発明の名称："System and Method for Touch Screen Ribbon Interaction"の出願日の利益を請求するものであり、ここでこの文献を参照したことによりその開示内容全体を本明細書の一部とする。
【０００２】
技術分野
本発明は、タッチスクリーンコンピュータプログラムとのインタラクションに関し、以下に限定されるものではないが、コンピュータ支援による設計、視覚化および製造システム("CAD/CAM system")、製品ライフサイクルマネージメント（"PLM"）システム、ならびに製品および他のアイテムのデータを管理する同等のシステム（これらをまとめて「製品データ管理」システムまたはＰＤＭシステムと称する）を対象としたものを含むものである。
【０００３】
発明の背景
以下に限定されるものではないが、スマートフォン、モバイルフォン、モバイルデバイス、タブレット等を含め、小型化されたコンピューティングデバイスにおけるインタラクションの場合には、リボンスタイルのレイアウトを採用したユーザインタフェース（ＵＩ）とのインタラクションは、アクティブタブを変更するために小さいタブエリアをタップしなければならないことから、扱いにくくなるおそれがある。したがって、改善されたシステムが望まれる。
【０００４】
発明の概要
本発明の種々の実施形態は、タッチスクリーン環境におけるリボンメニューシステムとのインタラクションのための方法およびシステムを含む。本発明による実施形態は、ユーザインタラクションのための方法および対応するシステムならびにコンピュータ読み取り可能媒体を含む。本発明による方法は、複数のタブを有するメニューバーを含むユーザインタフェースを表示するステップを含む。各タブは、少なくとも１つのサブメニューアイテムに関連づけられており、これら複数のタブは、１つのアクティブタブと、少なくとも１つの非アクティブタブとを含む。この方法は、アクティブタブに関連づけられたサブメニューアイテムを含むアクティブリボンを、メニューバーに表示するステップと、このメニューバーにおいてインタラクション入力を受け取るステップとを含む。この方法は、インタラクション入力に基づき付加的なサブメニューアイテムを表示するために、アクティブリボンをスクロールするステップを含み、このステップは、アクティブタブに関連づけられたサブメニューアイテムと、非アクティブタブに関連づけられた少なくとも１つのサブメニューアイテムとを同時に表示するステップを含む。さらにこの方法は、付加的なサブメニューアイテムの少なくとも半分が、隣接する次の非アクティブタブに関連づけられたサブメニューアイテムであるならば、隣接する次の非アクティブタブをアクティブタブに指定し、以前のアクティブタブを非アクティブタブに指定するステップを含む。
【０００５】
これまでの記載は、以下の詳細な説明を当業者がよりよく理解できるよう、本発明の特徴および技術的な利点をどちらかと言えば大雑把に略述したものである。各請求項の要旨を成す本発明のその他の特徴および利点については、以下で述べることにする。当業者であれば理解できるように、当業者は開示された着想や特定の実施形態を、本発明と同じ目的を成し遂げるための変更または異なる構造設計のベースとして、ただちに使用することができる。さらに当業者であれば、かかる等価の構造が最も広い形態で開示した本発明の着想および範囲を逸脱しないことを理解するであろう。
【０００６】
以下の発明の詳細な説明に入る前に、本明細書全体を通して用いられるいくつかの用語や表現について、ここで定義しておくのがよいと思われる。「を含む」および「を有する」なる表現ならびにそれらの派生語は、制限のない包含を表す。「または」なる表現は、「および／または」の意味も含む。「と関連する」および「それと関連する」ならびにそれらの派生語は、「含む」、「の中に含まれる」、「と相互接続する」、「を含有する」、「の中に含有される」、「に接続する」または「と接続する」、「に結合する」または「と結合する」、「と連携可能である」、「と共働する」、「をはさむ」、「に並置する」、「のすぐ近くにある」、「に結び付けられる」または「と結び付けられる」、「を有する」、「の所有物である」等を意味する場合もある。さらに「コントローラ」なる用語は、ハードウェアで実装されていようと、ファームウェア、ソフトウェア、またはそれらのうち少なくとも２つの組み合わせで実装されていようと、少なくとも１つのオペレーションを制御する何らかのデバイス、システムまたはそれらの一部分を表す。さらにここで留意しておきたいのは、いずれかの特定のコントローラと結び付けられた機能を、ローカルであろうとリモートであろうと、集中させてもよいし分散させてもよい、ということである。いくつかの用語および表現に対する定義は、本明細書全体にわたって規定されるものであり、当業者であれば理解できるように、かかる定義は、大部分の事例ではないにしても数多くの事例において、ここで定義した用語および表現の以前の使用にも将来の使用にも適用される。いくつかの用語は、幅広い種類の実施形態を含むことができるけれども、添付の特許請求の範囲では、それらの用語が特定の実施形態に明確に制限されてもよい。
【０００７】
本発明およびその利点について、いっそう完全に理解できるようにする目的で、添付の図面を参照しながら本発明について以下で説明する。なお、図中、対象が同じであれば同じ参照符号が付されている。
【図面の簡単な説明】
【０００８】
【図１】１つの実施形態を実現可能なデータ処理システムを示すブロック図
【図２】例示的なメニューバーを有する１つの実施形態を示す図
【図３】最初のパンジェスチャの結果として生じるリボンレイアウトの実施形態を示す図
【図４】パンジェスチャの間に、メニューバーにおいて以前のアクティブタブから新たなアクティブタブへアクティブタブを切り替える実施形態を示す図
【図５】スクロール動作を含むリボンタブレイアウトの例示的な実施形態を示す図
【図６】１つまたは複数の垂直スクロールメニューにおいてインタラクションがサポートされる実施形態を示す図
【図７】本発明の実施形態によるプロセスを示すフローチャート
【０００９】
詳細な説明
本発明の基本原理を説明するために、以下で説明する図１〜図７および種々の実施形態が用いられているが、これらは例示の目的で用いたにすぎず、いかなる点においても本発明における本発明の範囲の限定を意図したものではない。当業者であれば理解できるように、本発明の基本原理を、適切に構成された任意の装置において実現することができる。本発明の数多くの革新的な着想について、具体例として挙げた非限定的な実施形態を参照しながら説明する。
【００１０】
複雑なコンピュータプログラムとのインタラクションは、（タッチスクリーンを含むデバイスのような）モバイルデバイスまたはタブレットデバイスにおいて操作される場合には、以下の理由に限定されるものではないが、ユーザが多数のメニュー選択候補とインタラクションを実施できるスペースが限られていることから、難しく扱いづらいものである。開示された実施形態によれば、使い勝手がよく直観的に理解できるユーザインタフェースオペレーションが提供され、これによってタッチベースの入力を用いたリボンタブのナビゲーションが可能になる。直観的に理解できるようにする目的で、ナビゲーションの結果を伝達する視覚的なフィードバックも、インタラクションによって提供することができる。理想的には、タッチ入力を使用してインタラクションを簡単に実行することができ、それを物理的実体との自然なインタラクションであるかのように感じることができる。インタラクション入力を、タッチスクリーン、タッチパッドまたは類似の入力手段において、ユーザの指を介して、またはタッチペンなど他のポインティングデバイスを介して、行うことができる。
【００１１】
図１には、１つの実施形態を実現することのできるデータ処理システムのブロック図が示されている。これはたとえば、特に以下で述べるプロセスを実行するためのソフトウェアまたは他の手段によって構築されたＰＤＭシステムとして実現可能であり、特に、以下で説明するように、相互接続され通信を行う複数のシステムのうちの１つとして実現可能である。図示されているデータ処理システムには、レベル２キャッシュ／ブリッジ１０４と接続されたプロセッサ１０２が含まれており、キャッシュ／ブリッジ１０４自体はローカルシステムバス１０６と接続されている。たとえばローカルシステムバス１０６を、ＰＣＩ（peripheral component interconnect）アーキテクチャのバスとすることができる。図示の実施例ではローカルシステムバスにさらに、メインメモリ１０８とグラフィックアダプタ１１０も接続されている。グラフィックアダプタ１１０を、ディスプレイ１１１と接続することができる。
【００１２】
ローカルエリアネットワーク（ＬＡＮ）／ワイドエリアネットワーク／ワイヤレス（たとえばWiFi）アダプタ１１２などといった他の周辺機器を、ローカルシステムバス１０６と接続することもできる。拡張バスインタフェース１１４によって、ローカルシステムバス１０６が入出力（Ｉ／Ｏ）バス１１６と接続されている。Ｉ／Ｏバス１１６は、キーボード／マウスアダプタ１１８、ディスクコントローラ１２０、およびＩ／Ｏアダプタ１２２と接続されている。ディスクコントローラ１２０を記憶装置１２６と接続することができ、この記憶装置１２６を、機械で使用可能または機械で読み取り可能な任意の適切な記憶媒体とすることができ、このような記憶媒体には、以下に限定されるわけではないが、リードオンリーメモリ（ＲＯＭ）など不揮発性で変更不可能な媒体、または消去可能であり電気的にプログラミング可能なリードオンリーメモリ（ＥＥＰＲＯＭ）、磁気テープ媒体、ユーザが記録可能なタイプの媒体たとえばフロッピーディスク、ハードディスクドライブ、およびコンパクトディスク型リードオンリーメモリ（ＣＤ−ＲＯＭ）、またはディジタル多用途ディスク（ＤＶＤ）、さらに他の周知の光学的、電気的または磁気的な記憶デバイスが含まれる。
【００１３】
図示されているこの実施例では、Ｉ／Ｏバス１１６にオーディオアダプタ１２４も接続されており、サウンド再生のためにこのアダプタにスピーカ（図示せず）を接続することができる。キーボード／マウスアダプタ１１８は、マウス、トラックボールまたはその他のデバイスなどポインティングデバイスのためのコネクションを提供し、特に、トラックポインタ、タッチスクリーン、タッチパッド等のタッチ入力デバイス１２８と接続することができる。いくつかの実施形態において、たとえばタッチスクリーンとして、タッチ入力デバイスをディスプレイ１１１と一体化することができる。
【００１４】
当業者であれば理解できるように、図１に描かれているハードウェアを個々の実現形態に合わせて変更できる。たとえば、図示されているハードウェアに加えて、またはその代替として、光ディスクドライブなどのような他の周辺機器を使用してもよい。図示されている実施例は、例示目的で示されているにすぎず、本発明に関して構造上の制限を意図したものではない。
【００１５】
本発明の１つの実施形態によるデータ処理システムには、グラフィックユーザインタフェースを用いるオペレーティングシステムが含まれている。このオペレーティングシステムによれば、同時に複数のディスプレイウィンドウをグラフィックユーザインタフェースとして表示させることができ、各ディスプレイウィンドウによって、それぞれ異なるアプリケーションに対するインタフェースが提供され、または同じアプリケーションの異なるインスタンスに対するインタフェースが提供される。ユーザはポインティングデバイスによって、グラフィックユーザインタフェースのカーソルを操作することができる。その際、カーソルのポジションを変更することができ、および／または、望ましいレスポンスを生じさせるために、マウスボタンのクリックなどのイベントを発生させることができる。
【００１６】
適切に変更を加えれば、様々な市販のオペレーティングシステムのうちの１つを採用することができ、たとえば, Washington州RedmondのMicrosoft社の製品であるMicrosoft Windows（登録商標）の１つのバージョンを採用することができる。オペレーティングシステムは、ここで説明する本発明に従って変更または作成される。
【００１７】
ＬＡＮ／ＷＡＮ／ワイヤレスアダプタ１１２を（データ処理システム１００の一部ではない）ネットワーク１３０に接続することができ、このネットワークを、当業者に周知のように、公用または専用のデータ処理システムネットワークあるいは複数のネットワークの組み合わせとすることができ、これにはインターネットが含まれる。データ処理システム１００は、ネットワーク１３０を介してサーバシステム１４０と通信することができ、このサーバシステムもデータ処理システム１００の一部ではないが、たとえば別個の異なるデータ処理システム１００として実装してもよい。
【００１８】
図２には、例示的なメニューバー２００を有する１つの実施形態が示されている。他のメニューバーも考えられ、この図に描かれたものに限定されるものではなく、ここに描かれている例示的なメニューバーは、ＣＡＤドラフティングに関連するファンクションおよびコマンドを示すものであるけれども、本明細書で説明する技術は、このメニューバーで採用されている特定のファンクションおよびコマンドとは関係なく、任意のメニューバーに適用することができる。また、以下の実施例には、右から左へ向かうインタラクション入力が示されているが、左から右へ向かうインタラクション入力のために、それに応じて反転させた相応の方向で、同じ技術を用いることができる。ユーザインタフェース２２０は１つのボックスで表現されており、すべての図面に示されているわけではないにしても、当業者であれば、ここで説明するメニューバーがデータ処理システムのユーザインタフェースの一部分である、と認識することができる。
【００１９】
メニューバー２００は１つまたは複数のタブ２０２を含み、それらのタブは各々、アクティブリボン２０４に複数のアイコンまたは選択候補として描かれているような、１つまたは複数のサブメニューアイテム２０６を有している。本明細書では用語「タブ」は、選択可能なメニューアイテムを表すために使われているが、この用語は、本明細書で説明する１つまたは複数のサブメニューアイテムに対応するコマンドまたはファンクションのための、任意のタイプの選択可能なメニューアイテムを含むことを意図したものである。
【００２０】
１つの実施形態によれば、ユーザは、スペースの制約に起因して、アクティブリボン２０４全体（つまりアクティブリボンに含まれるサブメニューアイテムすべて）を見ることはできず、したがってアクティブタブ２０８に関連づけられたサブメニューアイテム２０６だけを、所与の時点で閲覧可能である。さらに、アクティブタブに関連づけられたサブメニューアイテム２０６が、所与の時点ではディスプレイ中にうまく収まらない可能性がある。このことに加えて、その他の非アクティブタブ２０２に関連づけられた１つまたは複数のサブメニューアイテムは、まったく表示されない。
【００２１】
本発明の実施形態によれば、システムは、上述のメニューバー２００とのユーザインタラクションを受け取ることができ、本明細書では「パン」ジェスチャと称する、左から右または右から左へ「スワイプ」するユーザの指、タッチペンまたは他の手段などのようなインタラクション入力を受け取ることで、アクティブタブ２０８において使用可能な１つまたは複数の付加的なサブメニューアイテム２０６を表示することができる。インタラクション入力が左へ移動すると、１つまたは複数の付加的なサブメニューアイテム２０６がスクリーンの右側に現れ、インタラクション入力が右へ移動すると、１つまたは複数の付加的なサブメニューアイテム２０６がスクリーンの左側に現れる。
【００２２】
いくつかの実施形態によれば、これによってユーザは、タブ２０２各々についてサブメニューアイテム２０６を順番に「全体にわたりスクロール」できるようになる。つまり、"Home"（ホーム）タブがアクティブタブ２０８であるこの実施例で示されているように、システムは、右から左へのインタラクション入力に対し、さらに別の何らかの"Home"サブメニューアイテムをメニューバー２００の右側から表示することによって、応答する。"Home"のサブメニューアイテムがすべて表示されてしまったならば、システムは、アクティブタブ２０８を隣接する次の非アクティブタブ２０２（このケースでは"Surface"タブ）に変更することができ、代わりに"Surface"（サーフェス）タブに対応するサブメニューアイテムを表示することができる。
【００２３】
図３には、最初のパンジェスチャの結果として生じるリボンレイアウトの１つの実施形態が示されている。この図には、図２の例示的なメニューバー２００に対応するメニューバー３００が示されている。この図の場合、"Home"タブがアクティブタブ３０２である。また、"Surface"タブが隣接する次の非アクティブタブ３０６である。アクティブリボンエリア３０４は、アクティブタブ３０２に対応するリボンのエリアを、関連づけられたそのサブメニューアイテム３２２と共に表している。隣接リボンエリア３０８は、隣接する非アクティブタブ３０６に対応するリボンのエリアを、関連づけられたそのサブメニューアイテム３２０と共に表している。この実施例ではパンジェスチャであるインタラクション入力３１０は、リボン上に表されておらず、つまりここでは、リボン上の指またはタッチペンなどのようなユーザからのインタラクション入力が、初期ポジション３１２（ジェスチャの最初のタッチ）から最終ポジション３１４（タッチの「リフト」）へ移動したときの、インタラクション入力が表されている。
【００２４】
この実施例では、インタラクション入力３１０が、初期ポジション３１２から最終ポジション３１４に向かって左へ移動すると、アクティブリボンエリア３０４が左へ移動し（したがって最も左側の部分がメニューバー３００の外に移動し）、隣接リボンエリアが視界の中に「ドラッグ」されると、この隣接リボンエリアが右側からメニューバー３００の中に移動する。
【００２５】
図４には、パンジェスチャ４１０の間に、メニューバー４００において以前のアクティブタブ４０２から新たなアクティブタブ４０６へアクティブタブを切り替える実施形態が示されている。このケースでは、"Home"タブ４０２が、アクティブタブである状態から隣接タブへと変化し、以前は隣接タブであった"Surface"タブ４０６が、新たなアクティブタブになる。現時点のアクティブタブを、メニューバー４００上で知らせることができ、この実施例ではタブ４０６であるアクティブタブを、異なるカラーまたはシェードで強調するなどして、そのことを知らせることができる。この図に示されているように、インタラクション入力を初期ポジション４１２から最終ポジション４１４へ移動させることによって、パンジェスチャ４１０がさらに続けられると、かつてのアクティブリボンエリア４０４が左に向かってメニューバー４００の外に移動し、かつての隣接リボンエリア４０８がメニューバー４００の中に移動して、アクティブリボンエリアとなる。
【００２６】
図３〜図４に示されているように、現時点で表示されるリボンエリアは、インタラクション入力のポジションを追従し、移動方向とは逆方向にある隣接リボンエリアは、移動中のタブの隣りで引きずられていくことになる。このことは視覚的には、複数のタブと、サブメニューアイテムを含みそれらのタブに対応するリボンエリアとから成る、１つの連続したチェーンのように見える。アクティブタブが、複数のリボンタブから成るリストの始端または終端に位置している場合には、オプションとして、インタフェースをリストの他方の端部にラップさせてつなげてもよいし、または現在のポジションで停止させてもよい。
【００２７】
１つの実施形態によれば、パンジェスチャのドラッグによってアクティブリボンがメニューバーの中間点を過ぎたならば、アクティブタブは好ましくは、後ろから引き込まれた隣接タブに変化する。このことは、タブフラグのテキストにおける強調、カラー、フォント、またはタブがアクティブであることを知らせる他のメカニズムによって伝達される。
【００２８】
インタラクション入力が終了する時点でのリボンの挙動を、リリース時点でのインタラクション入力の速度と、アクティブリボンエリアのスクロールの現在ポジションとに依存させることができる。たとえば、速度ゼロまたは極めて低速で移動しているケースでは、アクティブリボンエリアは好ましくは、移動方向における「慣性」を利用して、現在アクティブなタブのスタートポジションまで動いていく。したがって、インタラクション入力が停止したときに十分な移動速度が生じていれば、このような慣性の結果としてアクティブタブを切り替え、最終ポジションでタッチをリリースした時点のアクティブタブの代わりに、次の隣接タブにリターンすることができる。インタラクション入力のリリース時点で、速度が閾値を超えていたならば、アクティブリボンタブは好ましくは素速く、移動方向で次のタブまで動いていく。このことを、「リボンフリック」または文字通り「フリックジェスチャ」と称する。
【００２９】
図５には、スクロール動作を含むリボンタブレイアウトの例示的な実施形態が示されている。この実施例の場合、メニューバー５００は、スクロールインジケータ５０２およびスクロールインジケータ５０４を含んでおり、それらをアクティブリボンエリア５０６の境界を表すために用いることができ、各アクティブリボンエリアがメニューバー５００の中および外にスクロールされた時点について、視覚的な指示を与えることができる。
【００３０】
１つの実施形態によれば、サブメニューアイテムすべてのためには十分なスペースがないのであれば、リボンレイアウトには１つのタブ内でのスクロール動作も含まれる。ある１つの所与のタブにおいて、すべてのアイテムを閲覧するためにスクロール動作が必要とされる場合、スクロールエリアの境界に到達すると、スクロールは好ましくはパンジェスチャにスムーズに移行する。これに連動して、パンジェスチャが再び元のポジションまたは隣接タブの元のポジションに戻ると、必要であれば、好ましくはタブ内のスクロール動作が続けられる。
【００３１】
図６には、１つまたは複数の垂直スクロールメニュー６０２において、インタラクションがサポートされる別の実施形態が示されている。リボンギャラリーとの垂直方向のパンインタラクションによって、垂直な向きでのパンジェスチャが可能となり、このインタラクションが完了するまで、水平方向では何らかの後続のパンジェスチャが一時的に停止される。この実施例によれば、インタラクション入力を、複数のスクロールメニュー６０２のうち１つのスクロールメニュー内での垂直方向のパンジェスチャとすることができる。これに応答してスクロールメニューは、さらに多くのサブメニューアイテムを垂直方向でスクロールして表示する一方、水平方向のパン動作は一時的に阻止される。
【００３２】
あるメニューアイテムをユーザがタッピングするというような、「タップ」インタラクション入力を受け取ることで、タッピングされたメニュー選択候補が選ばれた、ということがシステムに伝えられる。システムは、初期ポジションと最終ポジションとに基づき、タップジェスチャを意図しているのか、またはパンジェスチャを意図しているのか、を区別することができる。
【００３３】
図７には、本発明の実施形態によるプロセスのフローチャートが示されている。このプロセスは、タッチスクリーン、タッチパッドまたはその他のデバイスなどのタッチ入力デバイスを備えたデータ処理システム１００または他のシステムによって実施され、このシステムには、ラップトップコンピュータ、タブレットコンピュータ、スマートフォン、または他のコンシューマデバイスの形態のデータ処理システムが含まれる。かかるデータ処理システムを、以下では「システム」と総称する。
【００３４】
このシステムは、複数のタブを有するメニューバーを含むユーザインタフェースを表示する（７０５）。各タブは、少なくとも１つのサブメニューアイテムに関連づけられており、これら複数のタブは、１つのアクティブタブと、少なくとも１つの非アクティブタブとを含む。その際、アクティブタブを、１つまたは複数の非アクティブタブとは外観を異ならせて表示することができる。
【００３５】
システムは、アクティブタブと関連づけられたサブメニューアイテムを含むアクティブリボンを、メニューバーに表示する（７１０）。
【００３６】
システムは、メニューバーにおいてインタラクション入力を受け取る（７１５）。インタラクション入力を、パンジェスチャ、フリックジェスチャ、または他のものとすることができる。タッチスクリーンまたはタッチパッドを含むタッチ入力デバイスによって、インタラクション入力を受け取ることができ、これをフィンガータッチ入力またはタッチペン入力とすることができる。「メニューバーにおいて」は、メニューバーの表示エリアでの、タッチスクリーンディスプレイ上などでのタッチ入力に関連して用いた表現であり、または、メニューバーの表示エリアに対応するタッチパッドのエリアでの、タッチパッド上などでのタッチ入力に関連して用いた表現である。タッチ入力は、初期ポジションと最終ポジションとを有しており、システムは、これら初期ポジションと最終ポジションとの間のタッチ入力速度を測定することができる。
【００３７】
インタラクション入力に基づき、システムはアクティブリボンをスクロールして、付加的なサブメニューアイテムを表示させる（７２０）。付加的なサブメニューアイテムを、アクティブタブに関連づけられた付加的なサブメニューアイテムとすることができ、スクロール動作によって、アクティブタブに関連づけられたサブメニューアイテムと、非アクティブタブに関連づけられた少なくとも１つのサブメニューアイテムとを、同時に表示させることができる。付加的なサブメニューアイテムを、隣接する次の非アクティブタブに関連づけられたサブメニューアイテムとすることができる。この場合、スクロール動作を、初期ポジションと最終ポジションとの間のタッチ入力速度に基づくものとすることができる。付加的なサブメニューアイテムを表示するためのアクティブリボンのスクロール動作を、メニューバーのリボンエリア内において複数のサブメニューアイテムから成る１つの連続するチェーンのように、ユーザに見せることができる。
【００３８】
付加的なサブメニューアイテムが、隣接する次の非アクティブタブに関連づけられたサブメニューアイテムであるならば、システムは隣接する次の非アクティブタブをアクティブタブに指定し、以前のアクティブタブを非アクティブタブに指定する（７２５）。その際、新たなアクティブタブを、１つまたは複数の新たな非アクティブタブとは外観を異ならせて表示することができる。このことを、付加的なサブメニューアイテムの少なくとも半分が、隣接する次の非アクティブタブに関連づけられたサブメニューアイテムであるか否か、所定の複数の付加的なサブメニューアイテムが隣接する次の非アクティブタブに関連づけられたサブメニューアイテムであるか否か、を条件として行うことができ、あるいはさらに別のやり方で行うことができる。
【００３９】
システムは、複数のサブメニューアイテムのうち１つのサブメニューアイテムのユーザ選択を受け取ることができる（７３０）。
【００４０】
ついでシステムは、ユーザ選択に基づきオペレーションを実行することができる（７３５）。かかるオペレーションにはＣＡＤオペレーションを含めることができ、ただしこれに限定されるものではない。
【００４１】
当業者に自明のとおり、オペレーションシーケンスにより特に指示または要求がなされないかぎり、上述のプロセスにおけるいくつかのステップを省略してもよいし、同時に実施しても逐次実施してもよく、あるいは異なる順序で実施してもよい。
【００４２】
付加的な実施形態も考えられ、そのような実施形態には、以下に限定されるものはないが、リボン上の他のタイプのユーザインタフェース要素との共働を提供することが含まれる。たとえば、リボン上に配置された他の要素も、パンまたはジェスチャに基づくインタラクションに同様に応答することができる。また、あるパンジェスチャが、所定のユーザインタフェース要素のためのものであると識別されたならば、他のエレメントに対するパン動作をブロックすることができる。
【００４３】
さらに付加的な実施形態も考えられ、これには、ユーザが種々の態様でメニューシステムとインタラクションを実施するものが含まれ、以下に限定されるものではないが、ピンチまたは他のインタラクションを含めることができる。
【００４４】
さらに当業者に理解できるとおり、簡単かつ明瞭にするため、本発明による使用に適したあらゆるデータ処理システムの構造およびオペレーションを、本明細書においてすべて描いたまたは説明したわけではない。そうではなく、データ処理システムのうち、本発明に特有のところだけを、または本発明の理解に必要なところだけを描いて説明したにすぎない。データ処理システム１００の構造およびオペレーションのその他の部分は、この分野で周知の現在行われている様々な実装形態および実施手法の任意のものに適合させることができる。
【００４５】
ここで特に述べておきたいのは、本発明には、完全に機能的なシステムに関連した説明が含まれているけれども、当業者に自明であるとおり、本発明におけるメカニズムは少なくとも部分的には、機械で使用可能な媒体、コンピュータで使用可能な媒体、またはコンピュータで読み取り可能な媒体に記憶された命令として、任意の種類の形態で配布可能なものであること、さらに本発明は、特定のタイプの命令、信号担体または記憶媒体が使用されようとも、そのような配布物を実際に実行するために等しく適用されることである。機械で使用可能／読み取り可能な媒体、またはコンピュータで使用可能／読み取り可能な媒体の例として、以下のものが含まれる：リードオンリーメモリ（ＲＯＭ）など不揮発性で変更不可能にコーディングされたタイプの媒体、または消去可能であり電気的にプログラミング可能なリードオンリーメモリ（ＥＥＰＲＯＭ）、ならびにユーザが記録可能なタイプの媒体たとえばフロッピーディスク、ハードディスクドライブ、およびコンパクトディスク型リードオンリーメモリ（ＣＤ−ＲＯＭ）、またはディジタル多用途ディスク（ＤＶＤ）。
【００４６】
これまで本発明の実施例について詳しく説明してきたが、当業者であれば理解できるように、最も広い形態で開示した本発明の着想および範囲を逸脱することなく、様々な変更、置き換え、変形ならびに本明細書で開示した改善を行うことができる。
【００４７】
本願の記載内容のいずれも、何らかの特定の部材、ステップまたは機能が特許請求の範囲に含まれなければならない必須の要素である、という趣旨で読まれるべきではない。本発明の範囲は、特許付与された請求項によってのみ定められるものである。しかも、厳密な語「〜のための手段」の次に分詞が続かないのであれば、これらの請求項のいずれも、米国特許法第１１２条（ｆ）が適用されることを意図したものではない。
【図１】
2017525021.tif 000003
【図２】
2017525021.tif 000004
【図３】
2017525021.tif 000005
【図４】
2017525021.tif 000006
【図５】
2017525021.tif 000007
【図６】
2017525021.tif 000008
【図７】
2017525021.tif 000009
【国際調査報告】
2017525021.tif 000010
2017525021.tif 000011