(57)【要約】【課題】メニュー画面に表示される選択ボタンのレイアウトを容易に変更可能とした情報処理装置を提供する。【解決手段】情報処理装置１０１は、タッチパネル１１８と、処理に関連付けられた選択ボタンを一覧表示するためのメニュー画面の選択ボタンの数を示すレイアウトパタンを複数記憶する外部メモリ１２１と、タッチパネル１１８へのユーザのピンチ操作を検出して、検出したピンチ操作の内容に応じて複数のレイアウトパタンから１つを選択し、選択したレイアウトパタンが示す数の選択ボタンを一覧表示するメニュー画面を生成する制御部１０９と、を備える。制御部１０９は、生成したメニュー画面をディスプレイ１２０に表示する。【選択図】図１
2014238700.tif 000002
【特許請求の範囲】
【請求項１】
ディスプレイを備えるタッチパネルと、
処理に関連付けられた選択ボタンを一覧表示するためのメニュー画面の前記選択ボタンの数を示すレイアウトパタンを複数記憶する記憶手段と、
前記タッチパネルへのユーザのピンチ操作を検出する入力検出手段と、
前記入力検出手段で検出した前記ピンチ操作の内容に応じて複数の前記レイアウトパタンから１つを選択し、選択したレイアウトパタンが示す数の選択ボタンを一覧表示する前記メニュー画面を生成するメニュー生成手段と、
前記メニュー生成手段により生成された前記メニュー画面を前記ディスプレイに表示する画面表示手段と、を備えることを特徴とする、
情報処理装置。
【請求項２】
前記メニュー生成手段は、前記ディスプレイへ前記メニュー画面を表示中に前記入力検出手段で検出した前記ピンチ操作の内容に応じて、表示中の前記メニュー画面に含まれる前記選択ボタンの数とは異なる数を示すレイアウトパタンを選択することを特徴とする、
請求項１記載の情報処理装置。
【請求項３】
前記記憶手段に記憶される前記レイアウトパタンは、前記選択ボタンの数の他に、前記選択ボタンの表示サイズを示しており、
前記入力検出手段は、前記ピンチ操作が前記タッチパネルの特定の位置で行われたか否かを検出し、
前記メニュー生成手段は、前記ピンチ操作が前記特定の位置で行われた場合に、前記ピンチ操作の内容に応じて、表示中の前記メニュー画面に含まれる前記選択ボタンの表示サイズを変更したレイアウトパタンを選択し、前記ピンチ操作が前記特定の位置以外で行われた場合に、前記ピンチ操作の内容に応じて、表示中の前記メニュー画面に含まれる前記選択ボタンの数を変更したレイアウトパタンを選択することを特徴とする、
請求項２記載の情報処理装置。
【請求項４】
前記入力検出手段は、前記ピンチ操作による操作量を検出し、
前記メニュー生成手段は、前記操作量に応じて前記選択ボタンの表示サイズを変更することを特徴とする、
請求項３記載の情報処理装置。
【請求項５】
前記入力検出手段は、前記ピンチ操作が前記メニュー画面に表示される２つの選択ボタン上で行われることを検出し、
前記メニュー生成手段は、当該２つの選択ボタンの間に空白を設けた前記メニュー画面を生成することを特徴とする、
請求項１〜４のいずれか１項記載の情報処理装置。
【請求項６】
ディスプレイを有するタッチパネルと、処理に関連付けられた選択ボタンを一覧表示するためのメニュー画面の前記選択ボタンの数を示すレイアウトパタンを複数記憶する記憶手段と、を備えた情報処理装置により実行される方法であって、
前記ディスプレイに、予め定められたレイアウトパタンに基づいて生成されたメニュー画面を表示するステップと、
前記タッチパネルへのユーザのピンチ操作を検出するステップと、
検出した前記ピンチ操作の内容に応じて、前記ディスプレイに表示中の前記メニュー画面に含まれる選択ボタンの数を変更したレイアウトパタンを選択するステップと、
選択した前記レイアウトパタンが示す数の選択ボタンを一覧表示するメニュー画面を生成して、当該メニュー画面に前記ディスプレイの表示を変更するステップと、を含むことを特徴とする、
表示制御方法。
【請求項７】
ディスプレイを有するタッチパネルを備えたコンピュータに、
処理に関連付けられた選択ボタンを一覧表示するためのメニュー画面の前記選択ボタンの数を示すレイアウトパタンを複数記憶する記憶手段、
前記タッチパネルへのユーザのピンチ操作を検出する入力検出手段、
前記入力検出手段で検出した前記ピンチ操作の内容に応じて複数の前記レイアウトパタンから１つを選択し、選択したレイアウトパタンが示す数の選択ボタンを一覧表示する前記メニュー画面を生成するメニュー生成手段、
前記メニュー生成手段により生成された前記メニュー画面を前記ディスプレイに表示する画面表示手段、
を形成するためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置における画面への表示技術に関する。
【背景技術】
【０００２】
多点検出が可能なタッチパッド及びディスプレイから構成されるタッチパネルを備えた情報処理装置が普及している。このような情報処理装置では、いわゆるマルチタッチ入力やジェスチャ入力と呼ばれる入力操作が可能である。マルチタッチ入力やジェスチャ入力には、例えばフリック操作やピンチ操作等がある。
【０００３】
フリック操作は、ディスプレイの表示画面を指先で弾くように行う操作である。フリック操作により、例えば、画面のスクロールが行われる。ピンチ操作には、ピンチアウト操作及びピンチイン操作がある。ピンチアウト操作は、ディスプレイの表示画面を２本の指で広げるように行う操作である。ピンチイン操作は、ディスプレイの表示画面を２本の指でつまむように行う操作である。ピンチ操作により、例えば、ディスプレイに表示された画像や文字の拡大、縮小が行われる。これらの操作は、ユーザにとって直感的でわかりやすい操作であるために、タブレットＰＣ（Personal Computer）やスマートフォン等の様々な情報処理装置に用いられている。
【０００４】
このような情報処理装置には、機能選択のための選択ボタンをアイコン等によりディスプレイに一覧表示し、ユーザによる選択を受け付けるものがある。選択ボタンが一覧表示された画面を、以下、「メニュー画面」という。メニュー画面は、情報処理装置の起動時や、メニュー画面を呼び出すための専用のボタンが操作されたときにディスプレイに表示される。特許文献１には、複数の処理機能（コピー機能、ファクシミリ機能、スキャナ機能、電子メール機能等）を備えた画像形成装置において、処理機能を選択するためのメニュー画面を表示する画像形成装置が開示される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−３０８８３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
情報処理装置には、メニュー画面に表示される選択ボタンのレイアウトをユーザが変更可能とすることで、利便性を向上させたものがある。例えば、メニュー画面に表示する選択ボタンの数、大きさ、配置等がユーザにより変更可能となっている。しかしながら、メニュー画面に表示される選択ボタンのレイアウトの変更は、レイアウト変更用の画面を表示して行うために、操作が煩雑である。また、レイアウト変更の操作自体は直感的ではない。そのために、メニュー画面に表示される選択ボタンのレイアウト変更は、ユーザが容易に使用する機能とはなっていない。
【０００７】
本発明は、上記の問題を解決するために、メニュー画面に表示される選択ボタンのレイアウトを容易に変更可能とした情報処理装置を提供することを主たる課題とする。
【課題を解決するための手段】
【０００８】
上記課題を解決する本発明の情報処理装置は、ディスプレイを備えるタッチパネルと、処理に関連付けられた選択ボタンを一覧表示するためのメニュー画面の前記選択ボタンの数を示すレイアウトパタンを複数記憶する記憶手段と、前記タッチパネルへのユーザのピンチ操作を検出する入力検出手段と、前記入力検出手段で検出した前記ピンチ操作の内容に応じて複数の前記レイアウトパタンから１つを選択し、選択したレイアウトパタンが示す数の選択ボタンを一覧表示する前記メニュー画面を生成するメニュー生成手段と、前記メニュー生成手段により生成された前記メニュー画面を前記ディスプレイに表示する画面表示手段と、を備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、ユーザのピンチ操作によりメニュー画面のレイアウトを変更するために、より直感的にメニュー画面に表示される選択ボタンのレイアウトを変更可能である。
【図面の簡単な説明】
【００１０】
【図１】情報処理装置のハードウェア構成図。
【図２】情報処理装置の機能ブロック図。
【図３】レイアウトパタンの例示図。
【図４】選択ボタン情報の例示図。
【図５】（ａ）、（ｂ）はメニュー画面の例示図。
【図６】メニュー画面のレイアウト変更操作の説明図。
【図７】メニュー画面のレイアウト変更処理のフローチャート。
【図８】（ａ）、（ｂ）はレイアウトの変更前後のメニュー画面の説明図。
【図９】レイアウトパタンの例示図。
【図１０】メニュー画面のレイアウト変更処理のフローチャート。
【発明を実施するための形態】
【００１１】
以下、本発明の実施の形態を図面を参照しつつ詳細に説明する。
【００１２】
＜ハードウェア構成＞
図１は、本実施形態の情報処理装置１０１のハードウェア構成図である。
情報処理装置１０１は、制御部１０９、タッチパッド１１９及びディスプレイ１２０を備えるタッチパネル１１８、及び外部メモリ１２１を備える。制御部１０９は、ＣＰＵ（Central Processing Unit）１１１、ＲＡＭ（Random Access Memory）１１２、及びＲＯＭ（Read Only Memory）１１３を備える。また制御部１０９は、入出力インタフェースとして、入力制御部１１４、表示制御部１１５、外部メモリインタフェース（Ｉ／Ｆ）１１６、通信インタフェース（Ｉ／Ｆ）コントローラ１１７を備える。これらの制御部１０９内の各構成要素は、システムバス１１０を介して、相互にデータの送受信が可能に接続される。
【００１３】
ＣＰＵ１１１は、ＲＯＭ１１３に格納されるコンピュータプログラムを読み出し、ＲＡＭ１１２をワークエリアとして用いて実行することで、情報処理装置１０１内の各部の制御を行う。ＲＯＭ１１３は、不揮発性メモリであり、上記のコンピュータプログラムの他に、画像データ等が格納される。ＲＡＭ１１２は、揮発性メモリであり、ＣＰＵ１１１が実行する各種処理の一時記憶領域として用いられる。なお、ＣＰＵ１１１は、コンピュータプログラムを、ＲＯＭ１１３以外にも、外部メモリ１２１から読み出して実行してもよい。
【００１４】
入力制御部１１４は、タッチパネル１１８へのユーザの操作（以下、「ユーザ操作」という。）に応じた制御信号を生成して、ＣＰＵ１１１に送る。タッチパネル１１８は、ディスプレイ１２０上に、透明なタッチパッド１１９が設けられた構成である。タッチパネル１１８は、タッチパッド１１９上のユーザが接触した位置を表す位置情報を入力制御部１１４に送信する。タッチパネル１１８の位置情報と、ディスプレイ１２０内の画像の表示位置とは対応付けらる。そのために、タッチパネル１１８は、ユーザがディスプレイ１２０上に表示された画像を直接的に操作可能であるかのようなＧＵＩ（Graphical User Interface）を構成することができる。入力制御部１１４は、この位置情報に応じて制御信号を生成する。ＣＰＵ１１１は、制御信号に基づいて処理を行う。このようにして情報処理装置１０１は、ユーザ操作に応じた処理を行う。
【００１５】
表示制御部１１５は、ディスプレイ１２０に画像を表示させる。表示制御部１１５は、ＣＰＵ１１１が生成した表示制御信号を受け取り、表示制御信号に基づいて表示信号を生成してディスプレイ１２０に出力する。これにより表示制御部１１５は、例えば、ＧＵＩを構成するＧＵＩ画面をディスプレイ１２０に表示させる。
【００１６】
外部メモリＩ／Ｆ１１６には、外部メモリ１２１が接続可能である。外部メモリ１２１は、例えばハードディスク、フレキシブルディスク、ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disc）、メモリカード、ＳＳＤ（Solid State Drive）等である。外部メモリＩ／Ｆ１１６は、ＣＰＵ１１１の制御に基づき、外部メモリ１２１からのデータの読み出しや、外部メモリ１２１へのデータの書き込みを行う。通信Ｉ／Ｆコントローラ１１７は、ＣＰＵ１１１の制御に基づき、例えばＬＡＮ（Local Area Network）やインターネット、有線、無線等のネットワーク１０２を介して他の装置との通信を行う。
【００１７】
タッチパネル１１８及びＣＰＵ１１１の処理について詳述する。ＣＰＵ１１１は、タッチパネル１１８への以下の操作や状態を検出する。なお、タッチパネル１１８の操作には、ユーザの指やスタイラスペンを用いることができるが、以下の説明では単に「指」と記す。
・タッチダウン：指がタッチパッド１１９への接触
・タッチオン：指がタッチパッド１１９に接触している状態
・ムーブ：指がタッチパッド１１９に接触したまま移動
・タッチアップ：タッチパッド１１９に接触していた指が離隔する
・タッチオフ：タッチパッド１１９に何も接触していない状態
【００１８】
タッチパネル１１８は、マルチタッチを検出可能である。すなわち、タッチダウン、タッチオン、ムーブ、タッチアップが、それぞれ複数の指で同時に行われた場合、その操作や状態を検出することができる。これらの操作やタッチパッド１１９上に指が接触している位置情報に基づいて入力制御部１１４が、制御信号を生成してＣＰＵ１１１に通知する。ＣＰＵ１１１は、制御信号に基づいてタッチパッド１１９上でどのような操作が行なわれたかを判定する。
【００１９】
ＣＰＵ１１１は、「ムーブ」について、位置情報の時間変化により、タッチパッド１１９上で移動する指の垂直成分・水平成分毎の移動方向についても判定する。またタッチダウンから一定のムーブを経てタッチアップを検出したとき、ＣＰＵ１１１は、タッチパッド１１９上で「ストローク」を描いたと判定する。素早くストロークを描く操作を「フリック操作」と呼ぶ。フリック操作は、タッチパッド１１９上に指を触れたままある程度の距離だけ素早く動かして、そのまま離すといった操作であり、言い換えればタッチパッド１１９上を指で弾くように素早くなぞる操作である。ＣＰＵ１１１は、所定距離以上を、所定速度以上でムーブしたことが検出され、そのままタッチアップが検出されるとフリック操作が行なわれたと判定する。また、ＣＰＵ１１１は、所定距離以上のムーブが検出され、そのままタッチオンが検出されている場合には、「ドラッグ」が行なわれたと判定する。また、タッチパッド１１９が２本の指で同時にタッチダウンされ、２本の指の位置が近づく方向にムーブにした場合、ＣＰＵ１１１は、「ピンチイン操作」が行われたと判定する。同様に、２本の指の位置が遠ざかる方向にムーブされた場合、ＣＰＵ１１１は、「ピンチアウト操作」が行われたと判定する。なお、ピンチイン操作とピンチアウト操作をまとめて「ピンチ操作」と言う。
【００２０】
なお、タッチパネル１１８には、抵抗膜方式や静電容量方式、表面弾性波方式、赤外線方式、電磁誘導方式、画像認識方式、光センサ方式等、様々な方式のタッチパネルのうちいずれの方式のものを用いてもよい。
【００２１】
＜機能ブロック＞
図２は、情報処理装置１０１の機能ブロック図である。情報処理装置１０１は、ＣＰＵ１１１がＲＯＭ１１３又は外部メモリ１２１に格納されたコンピュータプログラムを読み込んで実行することで、図２に示す各機能ブロックを形成する。情報処理装置１０１は、メニュー生成部２０１、画面表示部２０２、操作入力検出部２０３、レイアウトパタン記憶部２０４、及び選択ボタン情報記憶部２０５を備える。
【００２２】
メニュー生成部２０１は、ディスプレイ１２０に表示されるメニュー画面を生成する。メニュー画面は、機能選択のための選択ボタンを一覧表示するための画面である。メニュー生成部２０１は、ディスプレイ１２０に表示するメニュー画面の画像データをＲＡＭ１１２上に記憶する処理を行う。また、操作入力検出部２０３から通知されるイベントに応じて、メニュー画面のレイアウトを変更し、メニュー画面からユーザが選択した機能に応じて、画面を切り替える。メニュー生成部２０１の処理の詳細は後述する。
【００２３】
画面表示部２０２は、表示制御部１１５を制御して、メニュー生成部２０１が生成したメニュー画面をディスプレイ１２０に表示する。画面表示部２０２は、ＲＡＭ１１２に記憶されたメニュー画面の画像データから表示制御信号を生成して表示制御部１１５に送り、表示制御信号に応じた画像をディスプレイ１２０に表示させる。操作入力検出部２０３は、入力制御部１１４から送られた制御信号を解析することでタッチパネル１１８へのユーザ操作を検出し、ユーザ操作に応じたイベントをメニュー生成部２０１に通知する。
【００２４】
レイアウトパタン記憶部２０４は、複数のメニュー画面のレイアウトパタンをＲＯＭ１１３や外部メモリ１２１に記憶する。レイアウトパタンは、メニュー画面に表示する選択ボタンのレイアウトを示す情報であり、１画面に表示する選択ボタンの数や表示サイズについての情報を持つ。レイアウトパタン記憶部２０４は、メニュー画面として表示可能なすべてのレイアウトパタンを記憶する。各レイアウトパタンには、レイアウトパタンを識別するための識別情報としてインデックスが割り当てられる。
【００２５】
図３は、レイアウトパタンの例示図である。レイアウトパタン３０１〜３０５には、インデックス「０」〜「４」が割り当てられる。図中、各レイアウトパタン３０１〜３０５の中の複数の四角で囲んだ領域は、選択ボタンが表示される領域を表している。レイアウトパタン３０１は、３個の選択ボタンを表示可能であり、選択ボタンの表示サイズは「大」である。レイアウトパタン３０２〜３０４は、それぞれ４個、６個、８個の選択ボタンが表示可能であり、選択ボタンの表示サイズは「中」である。レイアウトパタン３０５は、１２個の選択ボタンを表示可能であり、選択ボタンの表示サイズは「小」である。
【００２６】
選択ボタン情報記憶部２０５は、メニュー画面に表示する選択ボタンに関する情報（選択ボタン情報）を外部メモリ１２１に記憶する。レイアウトパタン記憶部２０４及び選択ボタン情報記憶部２０５が記憶する情報は、メニュー生成部２０１がメニュー画面を生成する処理を行う際に読み出して利用する。
【００２７】
図４は、選択ボタン情報の例示図である。選択ボタン情報は、選択ボタン毎に、表示順４０１、ボタン名称４０２、アイコン４０３、４０４、４０５の各情報を持つ。表示順４０１は、機能ボタンを表示する順番を表す。メニュー生成部２０１は、表示順４０１に従った順に選択ボタンをレイアウトパタンに配置する。ボタン名称４０２は、選択ボタン上に表示する文字列であり選択ボタンの名称を表す。アイコン４０３、４０４、４０５は、選択ボタン上に表示するアイコンのファイル名を示す。アイコンは、小（Ｓ（small））、中（Ｍ（medium））、大（Ｌ（large））の表示サイズが用意されている。アイコンには、レイアウトパタン中の四角で囲んだ領域の大きさに応じた表示サイズのものが使用される。選択ボタン情報は、選択ボタンの選択により起動されるアプリケーションの起動時やインストール時に、当該アプリケーションから通知されて、選択ボタン情報記憶部２０５に記憶される。
【００２８】
メニュー生成部２０１は、レイアウトパタン記憶部２０４が記憶するレイアウトパタン３０１〜３０５から、いずれかのレイアウトパタンを取得し、取得したレイアウトパタンに応じて選択ボタンを配置することでメニュー画面を生成する。メニュー生成部２０１は、レイアウトパタン３０１〜３０５の１画面（１ページ）にすべての選択ボタンを表示できない場合、次の画面（ページ）に選択ボタンを配置する。次の画面（ページ）への切り替えは、例えばフリック操作のような特定の操作により行われる。
【００２９】
例えばインデックス「１」のレイアウトパタン３０２に図４の選択ボタン情報で表される選択ボタンを配置する場合、表示順「０」〜「３」の選択ボタンがメニュー画面に順に配置される。情報処理装置１０１は、メニュー画面上でフリック操作を受け付けると、表示順「０」〜「３」の選択ボタンが画面外に移動するのと同時に、表示順「４」〜「７」の選択ボタンがメニュー画面内に移動して、滑らかに表示が切り替わる。
【００３０】
なお、選択ボタン情報は、選択ボタンを表示しないことを示す空白行４０６を含むことがある。この場合、メニュー生成部２０１は、当該部分に選択ボタンを配置せずに、メニュー画面内の当該領域を空白とする。また、選択ボタンの表示順４０１は、ユーザの操作により変更可能である。例えば、メニュー画面を長押ししたあと、選択ボタンをドラッグアンドドロップする操作を行うことによって選択ボタンの表示順を変更することができる。
【００３１】
図５は、インデックス「１」のレイアウトパタン３０２に図４の選択ボタン情報で表される選択ボタンを配置したメニュー画面の例示図である。図５（ａ）は、メニュー画面の１ページ目の例示図である。選択ボタン５０１〜５０４には、それぞれボタン名称４０２及びアイコン４０４が表示される。操作入力検出部２０３から通知されるイベントにより、選択ボタン５０１〜５０４が選択されたと判断すると、選択された選択ボタンに関連付けられた処理が実行され、当該処理による画面表示に画面が切り替わる。
【００３２】
図５（ｂ）は、メニュー画面の２ページ目の例示図であり、選択ボタン５０５〜５０７を表示する。図５（ａ）のメニュー画面中でフリック操作があると、図５（ｂ）のメニュー画面に遷移する。図５（ｂ）のメニュー画面中でフリック操作があると、図５（ａ）のメニュー画面に戻る。図５（ｂ）の空白５０８は、図４の選択ボタン情報における表示順「５」に相当する。表示順「５」は、選択ボタンを表示しないことを示す空白行４０６であるため、空白５０８が設けられる。
【００３３】
図５では、メニュー画面の１画面（１ページ）に表示可能な機能ボタンの数が「４」のレイアウトであり、２画面（２ページ）で、空白５０８を含めて８個の選択ボタンを表示する例を示した。従って、図５（ａ）及び図５（ｂ）の２画面（２ページ）からなるメニュー画面が提供される。レイアウトパタンや、選択ボタンの数によっては、さらに多くの画面（ページ）が表示され、それらを切り替えて表示させることができる。
【００３４】
［第１実施形態］
図６は、情報処理装置１０１によるメニュー画面のレイアウト変更操作の説明図である。ディスプレイ１２０に表示されるメニュー画面をユーザが手６０１によりピンチ操作することで、情報処理装置１０１はメニュー画面のレイアウトを変更する。ピンチイン操作６０２の場合、１画面に表示される選択ボタンの数が増加するようにレイアウトパタンが切り替わる。ピンチアウト操作６０３の場合、逆に、１画面に表示される選択ボタンの数が減少するようにレイアウトパタンが切り替わる。ユーザは、所望のレイアウトになった時点でピンチ操作を止めればよい。
【００３５】
図７は、メニュー画面のレイアウトを変更する際の情報処理装置１０１の処理を表すフローチャートである。
【００３６】
ＣＰＵ１１１は、情報処理装置１０１の起動時や、メニュー画面を呼び出すための専用のボタンが操作されたときに、その時点で指定されているレイアウトパタンを取得する（Ｓ７０１）。例えば、メニュー生成部２０１は、レイアウトパタン記憶部２０４から、前回のメニュー画面の表示時のレイアウトパタン或いは予め定められたレイアウトパタンを取得する。
【００３７】
ＣＰＵ１１１は、取得したレイアウトパタンに従って生成したメニュー画面を表示する（Ｓ７０２）。具体的には、メニュー生成部２０１が、選択ボタン情報記憶部２０５から選択ボタン情報を取得し、その表示順に従って、レイアウトパタンに選択ボタンを配置したメニュー画面の画像データを生成してＲＡＭ１１２に書き込む。画面表示部２０２は、ＲＡＭ１１２からメニュー画面の画像データを読み出し、表示制御部１１５によりディスプレイ１２０にメニュー画面を表示する。
【００３８】
メニュー画面の表示後、ＣＰＵ１１１は、タッチパネル１１８からの入力を待つ（Ｓ７０３）。具体的には、操作入力検出部２０３が、入力制御部１１４から、タッチパネル１１８によるユーザ操作に応じた制御信号が入力されるまで待機する。
【００３９】
ＣＰＵ１１１は、制御信号が入力されると、ユーザ操作がピンチイン操作であるかを確認する（Ｓ７０３：Y、Ｓ７０４）。具体的には、操作入力検出部２０３が、制御信号を解析して、ユーザによりタッチされた位置の位置情報及びその時間変化から、ユーザ操作の種別を特定する。操作入力検出部２０３は、２点でタッチダウンされ、２点の位置情報が近づく方向にムーブした場合にピンチイン操作であると判断する。
【００４０】
ＣＰＵ１１１は、ユーザ操作がピンチイン操作である場合に、次のインデックスのレイアウトパタンを取得する（Ｓ７０４：Y、Ｓ７０５）。具体的には、メニュー生成部２０１が現在のレイアウトパタンの次のインデックスが付されたレイアウトパタンをレイアウトパタン記憶部２０４から取得する。例えば、図３に示したレイアウトパタンにおいて、現在、インデックス「１」のレイアウトパタン３０２の場合に、インデックス「２」のレイアウトパタン３０３を取得する。なお、次のインデックスのレイアウトパタンが存在しない場合、ＣＰＵ１１１はレイアウトパタンを取得せず、レイアウトの変更を行わない。
【００４１】
ＣＰＵ１１１は、次のインデックスのレイアウトパタンを取得すると、取得したレイアウトパタンに従って生成したメニュー画面を表示する（Ｓ７０６）。具体的な処理は、ステップＳ７０２と同様である。これによって、レイアウトが変更されたメニュー画面が表示される。引き続きレイアウトパタンの変更を行う場合には、ステップＳ７０３の処理に戻り、ＣＰＵ１１１は、タッチパネル１１８からの入力を待つ。
【００４２】
ステップＳ７０４において、ユーザ操作がピンチイン操作ではない場合、ＣＰＵ１１１は、ユーザ操作がピンチアウト操作であるかを確認する（Ｓ７０４：N、Ｓ７０７）。具体的には、操作入力検出部２０３が、２点でタッチダウンされ、２点の位置情報が遠ざかる方向にムーブした場合に、ピンチアウト操作であると判断する。
【００４３】
ＣＰＵ１１１は、ユーザ操作がピンチアウト操作である場合に、一つ前のインデックスのレイアウトパタンを取得する（Ｓ７０８）。具体的には、メニュー生成部２０１が現在のレイアウトパタンの一つ前のインデックスが付されたレイアウトパタンをレイアウトパタン記憶部２０４から取得する。例えば、図３に示したレイアウトパタンにおいて、現在、インデックス「１」のレイアウトパタン３０２の場合に、インデックス「０」のレイアウトパタン３０１を取得する。なお、一つ前のインデックスのレイアウトパタンが存在しない場合、ＣＰＵ１１１はレイアウトパタンを取得せずレイアウトの変更を行わない。ＣＰＵ１１１は、一つ前のインデックスのレイアウトパタンを取得すると、取得したレイアウトパタンに従って生成したメニュー画面を表示する（Ｓ７０６）。
【００４４】
ステップＳ７０７において、ユーザ操作がピンチアウト操作ではない場合、ＣＰＵ１１１は、ユーザ操作に対応した処理を実行する（Ｓ７０７：N、Ｓ７０９）。この場合、ユーザ操作がピンチ操作ではないことになる。そのためにＣＰＵ１１１は、例えば、メニュー画面内の選択ボタンの選択操作であれば、選択された選択ボタンに関連付けられた処理を実行する。また、フリック操作であれば、ＣＰＵ１１１は、フリック方向に応じてメニュー画面を次のページの画面に変更する。
【００４５】
このように情報処理装置１０１は、メニュー画面においてユーザがピンチ操作を行うことで、ピンチ操作の内容に応じてメニュー画面のレイアウトを変更することができる。具体的には、ユーザがピンチイン操作、すなわち画面を縮めるように操作することで、情報処理装置１０１が、メニュー画面を１画面により多くの選択ボタンが表示されるレイアウトに変更する。ユーザがピンチアウト操作、すなわち画面を広げるように操作することによって、情報処理装置１０１が、メニュー画面を１画面により少ない選択ボタンが表示されるレイアウトに変更する。従って、ユーザは直感的な操作によりメニュー画面のレイアウトを変更することが可能となる。
【００４６】
図８は、レイアウトの変更前後のメニュー画面の説明図である。図８では、メニュー画面に９個の選択ボタンを表示する。図８（ａ）のメニュー画面のレイアウトでは、１画面（１ページ）に３個の選択ボタンを表示可能である。図８（ｂ）のメニュー画面のレイアウトでは、１画面（１ページ）に４個の選択ボタンを表示可能である。ユーザによるピンチイン操作により、図８（ａ）のメニュー画面から図８（ｂ）のメニュー画面へレイアウト変更が行われる。ユーザによるピンチアウト操作により、図８（ｂ）のメニュー画面から図８（ａ）のメニュー画面へレイアウト変更が行われる。
【００４７】
図８（ａ）のメニュー画面は、３つの画面１００１、１００２、１００３（３ページ）で構成される。フリック操作により、画面（ページ）の切り替えが可能である。同様に、図８（ｂ）のメニュー画面は、３つの画面１００４、１００５、１００６（３ページ）で構成される。フリック操作により、画面（ページ）の切り替えが可能である。
【００４８】
図８（ａ）の画面１００１〜１００３のいずれが表示中であっても、ユーザがピンチイン操作を行うことで、メニュー画面のレイアウトの変更が可能である。レイアウトの変更が行われると、メニュー画面の最初の画面（１ページ目、表示順「０」の選択ボタンが表示される画面）が表示される。例えば、画面１００３の表示中にユーザがピンチ操作を行うことで、画面１００４が表示される。同様に、図８（ｂ）の画面１００４〜１００６のいずれが表示中であっても、ユーザがピンチアウト操作を行うことで、画面１００１が表示される。
【００４９】
また、レイアウトの変更が行われると、ピンチ操作が行われたときに表示される画面の特定の位置（例えば左上）に表示される選択ボタンが含まれる変更後の画面が表示されるようにしてもよい。例えば、画面１００３（左上の選択ボタンは「７」）を表示しているときにピンチイン操作が行われると、画面１００５（選択ボタン「７」を含む画面）が表示される。同様に、図８（ｂ）の画面１００５（左上の選択ボタンは「５」）を表示しているときにピンチアウト操作が行われると、画面１００２（選択ボタン「５」を含む画面）が表示される。
【００５０】
また、レイアウトの変更が行われると、ピンチ操作が行われたときに表示されていたページの画面と同じページの画面が表示されてもよい。例えば、画面１００３（３ページ目のメニュー画面）を表示しているときにピンチ操作が行われると、画面１００６（３ページ目のメニュー画面）が表示される。同様に、図８（ｂ）の画面１００６（３ページ目のメニュー画面）を表示しているときにピンチアウト操作が行われると、画面１００３（３ページ目のメニュー画面）が表示される。
【００５１】
また、メニュー画面のレイアウトを変更可能なユーザを限定してもよい。例えば、レイアウトの変更を許可されたユーザが情報処理装置１０１にログインしている場合にのみ、上記の処理を実行可能とする。
【００５２】
［第２の実施形態］
第１実施形態では、メニュー画面上でユーザがピンチ操作を行うことで、ピンチ操作の内容に応じてメニュー画面のレイアウトの変更を行っている。第２実施形態では、メニュー画面上の、選択ボタン上の位置でピンチ操作が行われた場合と、それ以外の位置でピンチ操作が行われた場合とで、異なる処理を行う。以下、第１実施形態との差分を中心に第２実施形態について説明する。
【００５３】
図９は、第２実施形態のレイアウトパタン記憶部２０４に記憶されるレイアウトパタンの例示図である。図９では、１０個のレイアウトパタン８０１〜８１０が用意される。各レイアウトパタンは、インデックスにより識別される。
【００５４】
レイアウトパタン８０１は、１画面に３個の選択ボタンを表示可能であり、選択ボタンの表示サイズは「中」である。レイアウトパタン８０２は、１画面に３個の選択ボタンを表示可能であり、選択ボタンの表示サイズは「大」である。レイアウトパタン８０１、８０２は、ともに１画面に３個の選択ボタンを表示可能であるが、選択ボタンの表示サイズが異なる。そこで、レイアウトパタン８０１にはインデックス「０＿０」、レイアウトパタン８０２にはインデックス「０＿１」を割り振る。インデックスの左の数値を同じにすることで、１画面に表示可能な選択ボタンの数が同じであることを表す。
【００５５】
レイアウトパタン８０３、８０４は、いずれも１画面に４個の選択ボタンを表示可能である。レイアウトパタン８０３に表示される選択ボタンの表示サイズは「小」であり、レイアウトパタン８０３に表示される選択ボタンの表示サイズは「中」である。レイアウトパタン８０３にはインデックス「１＿０」、レイアウトパタン８０４にはインデックス「１＿１」が割り振られる。
【００５６】
レイアウトパタン８０５、８０６は、いずれも１画面に６個の選択ボタンを表示可能である。レイアウトパタン８０５に表示される選択ボタンの表示サイズは「中」であり、レイアウトパタン８０６に表示される選択ボタンの表示サイズは「大」である。レイアウトパタン８０５にはインデックス「２＿０」、レイアウトパタン８０６にはインデックス「２＿１」が割り振られる。
【００５７】
レイアウトパタン８０７、８０８、８０９は、いずれも１画面に８個の選択ボタンを表示可能である。レイアウトパタン８０７に表示される選択ボタンの表示サイズはすべて「小」である。レイアウトパタン８０８に表示される選択ボタンの表示サイズは上段が「中」、下段が「小」である。レイアウトパタン８０９に表示される選択ボタンの表示サイズはすべて「中」である。レイアウトパタン８０７にはインデックス「３＿０」、レイアウトパタン８０８にはインデックス「３＿１」、レイアウトパタン８０９にはインデックス「３＿２」が割り振られる。
【００５８】
レイアウトパタン８１０は、１画面に１２個の選択ボタンを表示可能である。レイアウトパタン８１０に表示される選択ボタンの表示サイズは「小」である。レイアウトパタン８１０のインデックスには、「４」が割り振られる。
【００５９】
このように、第２実施形態では、レイアウトパタン記憶部２０４が、選択ボタンの数が同じでその表示サイズが異なるレイアウトパタンを記憶する。情報処理装置１０１は、選択ボタンの数を変更するか、選択ボタンの表示サイズを変更するかを、ピンチ操作が行われた位置によって判断する。例えば、選択ボタン上の位置でピンチ操作８２０が行われた場合は、ボタンの表示サイズを変更するレイアウトパタンに切り替える。選択ボタン以外の場所でピンチ操作８３０が行われた場合は、選択ボタンの数を変更するレイアウトパタンに切り替える。
【００６０】
図１０は、第２実施形態による、メニュー画面のレイアウトを変更する際の情報処理装置１０１の処理を表すフローチャートである。ステップＳ７０１〜Ｓ７０４の処理は、第１実施形態と同様であるので説明を省略する。
【００６１】
ステップＳ７０４でピンチイン操作が行われたと判断すると、ＣＰＵ１１１は、ピンチイン操作が選択ボタン上の位置で行われたか否かを確認する（Ｓ７０４：Y、Ｓ９０１）。具体的には、操作入力検出部２０３が、ピンチ操作の開始時にタッチダウンされた位置が、２点とも選択ボタンの領域内であるときは選択ボタン上の位置の操作と判断する。
【００６２】
ピンチイン操作が選択ボタン上の位置で行われた場合、ＣＰＵ１１１は、選択ボタンの表示サイズを小さくしたレイアウトパタンを取得する（Ｓ９０１：Y、Ｓ９０２）。例えば、図９に示したレイアウトパタンにおいて、現在、インデックス「０＿１」のレイアウトパタン８０２を用いている場合、メニュー生成部２０１が、レイアウトパタン記憶部２０４から、インデックス「０＿０」のレイアウトパタン８０１を取得する。なお、選択ボタンの表示サイズを小さくしたレイアウトパタンが存在しない場合、ＣＰＵ１１１はレイアウトパタンを取得せずレイアウト変更を行わない。レイアウトパタンの取得後、第１実施形態のステップＳ７０６と同様に、ＣＰＵ１１１は、取得したレイアウトパタンに従ったメニュー画面をディスプレイ１２０に表示する（Ｓ７０６）。これにより、選択ボタンの表示サイズを小さくしたメニュー画面が表示される。
【００６３】
ステップＳ９０１において、ピンチイン操作が選択ボタン上の位置以外で行われた場合、ＣＰＵ１１１は、選択ボタンの数を増やしたレイアウトパタンを取得する（Ｓ９０１:N、Ｓ９０３）。例えば、図９に示したレイアウトパタンにおいて、現在、インデックス「０＿１」のレイアウトパタン８０２を用いている場合、メニュー生成部２０１が、レイアウトパタン記憶部２０４から、インデックス「１＿１」のレイアウトパタン８０４を取得する。なお、選択ボタンの数を増やしたレイアウトパタンが存在しない場合、ＣＰＵ１１１はレイアウトパタンを取得せずレイアウト変更を行わない。レイアウトパタンの取得後、第１実施形態のステップＳ７０６と同様に、ＣＰＵ１１１は、取得したレイアウトパタンに従ったメニュー画面をディスプレイ１２０に表示する（Ｓ７０６）。これにより、選択ボタンの数が３個から４個に変更されたメニュー画面が表示される。
【００６４】
ステップＳ７０４において、ユーザ操作がピンチイン操作ではない場合、ＣＰＵ１１１は、ユーザ操作がピンチアウト操作であるかを判断する（Ｓ７０３：N、Ｓ７０７）。ピンチアウト操作が行われたと判断すると、ＣＰＵ１１１は、ピンチアウト操作が選択ボタン上の位置で行われたか否かを確認する（Ｓ７０７：Y、Ｓ９０４）。この処理は、ステップＳ９０１と同様の処理である。
【００６５】
ピンチアウト操作が選択ボタン上の位置で行われた場合、ＣＰＵ１１１は、選択ボタンの表示サイズを大きくしたレイアウトパタンを取得する（Ｓ９０４：Y、Ｓ９０５）。例えば、図９に示したレイアウトパタンにおいて、現在、インデックス「０＿０」のレイアウトパタン８０１を用いている場合、メニュー生成部２０１が、レイアウトパタン記憶部２０４から、インデックス「０＿１」のレイアウトパタン８０２を取得する。なお、選択ボタンの表示サイズを大きくしたレイアウトパタンが存在しない場合、ＣＰＵ１１１はレイアウトパタンを取得せずレイアウト変更を行わない。レイアウトパタンの取得後、第１実施形態のステップＳ７０６と同様に、ＣＰＵ１１１は、取得したレイアウトパタンに従ったメニュー画面をディスプレイ１２０に表示する（Ｓ７０６）。これにより、選択ボタンの表示サイズを大きくしたメニュー画面が表示される。
【００６６】
ステップＳ９０４において、ピンチアウト操作が選択ボタン上の位置以外で行われた場合、ＣＰＵ１１１は、選択ボタンの数を減らしたレイアウトパタンを取得する（Ｓ９０４:N、Ｓ９０６）。例えば、図９に示したレイアウトパタンにおいて、現在、インデックス「１＿１」のレイアウトパタン８０４を用いている場合、メニュー生成部２０１が、レイアウトパタン記憶部２０４から、インデックス「０＿１」のレイアウトパタン８０２を取得する。なお、選択ボタンの数を減らしたレイアウトパタンが存在しない場合、ＣＰＵ１１１はレイアウトパタンを取得せずレイアウト変更を行わない。レイアウトパタンの取得後、第１実施形態のステップＳ７０６と同様に、ＣＰＵ１１１は、取得したレイアウトパタンに従ったメニュー画面をディスプレイ１２０に表示する（Ｓ７０６）。これにより、選択ボタンの数が４個から３個に変更されたメニュー画面が表示される。
【００６７】
ステップＳ７０７において、ピンチアウト操作ではないと判断すると、ＣＰＵ１１１は、第１実施形態のステップＳ７０９と同様の処理を行う（Ｓ７０７：N、Ｓ７０９）。
【００６８】
第２実施形態の情報処理装置１０１は、選択ボタン上の位置でピンチ操作が行われた場合と選択ボタン上の位置以外でピンチ操作が行われた場合とで、異なるレイアウトパタンを用いてメニュー画面を生成する。具体的には、情報処理装置１０１は、選択ボタン上のピンチ操作に応じて選択ボタンの表示サイズを変更し、選択ボタン上の位置以外のピンチ操作の内容に応じて１画面に表示される選択ボタンの数を変更する。そのために、ユーザは、より直感的な操作によってメニュー画面のレイアウトを変更することが可能である。
【００６９】
第２実施形態では、選択ボタンの表示サイズに、予め定められた「大（Ｌ）」、「中（Ｍ）」、「小（Ｓ）」のいずれかを用いる例を示した。この他に、表示サイズを、ピンチ操作の操作量に応じて決めるようにしてもよい。この場合、操作入力検出部２０３が、入力制御部１１４から送られる制御信号を解析することで、ピンチ操作の操作量を導出する。メニュー生成部２０１は、導出された操作量に応じて選択ボタンの表示サイズを決める。
【００７０】
また、左右に隣り合う２つの選択ボタン上にそれぞれ指をおいた状態からピンチアウト操作を行った場合、該２つの選択ボタンの間に、選択ボタンを表示しない領域（図５における空白５０８）を挿入するようにしてもよい。例えば、隣り合う２つの選択ボタンにそれぞれ指を置いてピンチアウト操作が行われたことを検出すると、情報処理装置１０１は、図４の選択ボタン情報の該２つの選択ボタンの間に、選択ボタンを表示しないことを示す空白行４０６を挿入する。この選択ボタン情報に基づいてメニュー画面を生成することで、図５（ｂ）のように選択ボタン５０５、５０６間に空白５０８が挿入される。逆に、空白５０８上でピンチイン操作が行われた場合は、当該空白５０８を削除する。具体的には、空白５０８上でピンチイン操作が行われたことを検知すると、情報処理装置１０１は、選択ボタン情報から該当する空白行４０６を削除する。この選択ボタン情報に基づいてメニュー画面を生成することで、空白５０８が削除される。
【００７１】
［その他の実施形態］
以上、第１、第２実施形態を詳述したが、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体（記録媒体）等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【００７２】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接あるいは遠隔から供給する。そして、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であっても良い。
プログラムを供給するための記録媒体としては、例えば、以下のようなものがある。フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）。
【００７３】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページからハードディスク等の記録媒体にダウンロードすることによっても供給できる。すなわち、ホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをダウンロードする。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【００７４】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布する。そして、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他にも、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００７５】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後にも前述した実施形態の機能が実現される。すなわち、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行うことによっても前述した実施形態の機能が実現される。
【図１】
2014238700.tif 000003
【図２】
2014238700.tif 000004
【図３】
2014238700.tif 000005
【図４】
2014238700.tif 000006
【図５】
2014238700.tif 000007
【図６】
2014238700.tif 000008
【図７】
2014238700.tif 000009
【図８】
2014238700.tif 000010
【図９】
2014238700.tif 000011
【図１０】
2014238700.tif 000012