(57)【要約】【課題】  ユーザにとって操作性が高く、かつ処理が複雑でないコンテンツデータ表示装置を提供する。【解決手段】  ペン入力とカーソル入力が可能なコンテンツデータ表示装置において範囲指定を行なう際、記憶部に格納される図１３に示される状態遷移表が用いられる。ペン入力モードでマークを作成する際、始めにマークの開始位置を選択するモードで通常文字上にペンダウンすると、図１３の表に基づいて、「イベント」がペンダウン、イベントの対象要素である「要素」が通常文字であることから実行する処理がマークの開始位置を決定する処理であり、次にマーク終了位置選択中モードに移行することが特定される。キー入力がなされた場合には、図１３の表に基づいて処理が実行されず、ペン入力モードでキーボードに触れても、誤作動が起こらない。【選択図】        図１３
2006209612.tif 000002
【特許請求の範囲】
【請求項１】
１以上の要素を含むコンテンツデータを表示する表示手段と、
前記コンテンツデータに含まれる要素に対する操作入力を行なう操作入力手段と、
前記操作入力手段での操作入力に応じて行なう処理と次に遷移する状態とを特定する情報であって、操作状態を含むモードと、前記操作入力の内容と、前記操作入力の対象である要素とに基づいて、必要な処理と次に遷移するモードとを特定する情報を格納する状態遷移格納手段と、
前記操作入力に応じて、前記情報で特定される処理を行ない、次のモードに遷移する処理を実行する状態遷移処理手段とを備える、コンテンツデータ表示装置。
【請求項２】
前記モードは複数の操作状態に応じた複数のモードであり、
前記状態遷移格納手段に格納される情報は、前記複数のモードに共有な複数の操作入力の内容と、前記複数のモードに共有な複数の操作入力の対象である要素とに関連付けて前記対応する処理と次に遷移するモードとを特定する、請求項１に記載のコンテンツデータ表示装置。
【請求項３】
前記操作入力手段は第１操作入力手段および第２操作入力手段を含み、
前記モードには、前記第１操作入力手段および前記第２操作入力手段のうち前記第１操作入力手段が有効であることを表わす操作入力手段の有効状態が含まれ、
前記状態遷移格納手段に格納される情報は、前記第１操作入力手段での操作入力に応じて必要な処理を特定し、前記第２操作入力手段での操作入力に応じて前記必要な処理とは異なる処理を特定する、請求項１または２に記載のコンテンツデータ表示装置。
【請求項４】
前記状態遷移処理手段は、前記処理の実行後にその旨を通知する、請求項１〜３のいずれかに記載のコンテンツデータ表示装置。
【請求項５】
前記状態遷移処理手段で実行されるプログラムを格納するプログラム格納手段をさらに備え、
前記状態遷移処理手段は、前記情報で特定される処理に必要なプログラムを前記プログラム格納手段から読込んで実行する、請求項１〜３のいずれかに記載のコンテンツデータ表示装置。
【請求項６】
前記操作入力が前記要素以外に対して行なわれた場合に、前記状態遷移処理手段は、前記操作入力が前記要素に対して行なわれたものとして前記情報で特定されるモードに遷移する処理を実行する、請求項１〜３のいずれかに記載のコンテンツデータ表示装置。
【請求項７】
前記操作入力が前記要素以外に対して行なわれた場合に、前記状態遷移処理手段はエラーを出力する処理を実行する、請求項１〜３のいずれかに記載のコンテンツデータ表示装置。
【請求項８】
操作入力を行なう操作入力手段と、
前記操作入力手段での操作入力に応じて行なう処理と次に遷移する状態とを特定する情報であって、操作状態を含むモードと、前記操作入力の内容と、前記操作入力の対象である要素とに基づいて、必要な処理と次に遷移する操作状態とを特定する情報を格納する状態遷移格納手段とを備えるコンテンツデータ表示装置において、
１以上の要素を含むコンテンツデータを表示する表示ステップと、
前記操作入力手段において、前記コンテンツデータに含まれる要素に対する操作入力を受付ける操作入力ステップと、
前記操作入力に応じて、前記情報で特定される処理を行ない、次のモードに遷移する処理を実行する状態遷移処理ステップとを実行させる、コンテンツデータ表示装置における処理プログラム。
【請求項９】
操作入力を行なう操作入力手段と、
前記操作入力手段での操作入力に応じて行なう処理と次に遷移する状態とを特定する情報であって、操作状態を含むモードと、前記操作入力の内容と、前記操作入力の対象である要素とに基づいて、必要な処理と次に遷移する操作状態とを特定する情報を格納する状態遷移格納手段とを備えるコンテンツデータ表示装置における処理プログラムを記録した記録媒体であって、
１以上の要素を含むコンテンツデータを表示する表示ステップと、
前記操作入力手段において、前記コンテンツデータに含まれる要素に対する操作入力を受付ける操作入力ステップと、
前記操作入力に応じて、前記情報で特定される処理を行ない、次のモードに遷移する処理を実行する状態遷移処理ステップとを実行させるプログラムを記録する、コンピュータ読取可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はコンテンツデータ表示装置、コンテンツデータ表示装置における処理プログラム、およびコンテンツデータ表示装置における処理プログラムを記録した記録媒体に関し、特に、複数種類の操作入力装置を用いて指示操作を行なうコンテンツデータ表示装置、コンテンツデータ表示装置における処理プログラム、およびコンテンツデータ表示装置における処理プログラムを記録した記録媒体に関する。
【背景技術】
【０００２】
特許文献１や特許文献２に示されるように、電子書籍ビューアなどのコンテンツデータ表示装置には、マウスやキーボードなどの複数種類の操作入力手段を有するものがある。
【０００３】
このような装置においては、ユーザは任意の操作入力手段を用いて操作入力を行なうことができるというメリットがある一方、複数種類の操作入力手段があるが故に誤入力・誤作動してしまうなど、操作性を損なう場合もある。
【０００４】
たとえば特許文献１では、マウス操作とキー入力とが可能な装置において、マウスカーソルを画面上の特定位置に表示させてキー入力中であっても容易にマウスカーソルを発見させることで操作性を高めるカーソル制御装置が開示されている。
【０００５】
また特許文献２では、ペン入力とキーボード入力とが可能な装置において、ペン入力を検知してキーボードからの信号を無視することで誤入力・誤作動を未然に防ぐ情報処理装置が開示されている。
【特許文献１】特開平３−１４２６２０号公報
【特許文献２】特開平５−８８８１５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、このような従来技術である複数種類の操作入力手段を有する装置においては範囲指定などの操作が複雑であり、該操作に伴う処理も複雑になるという問題がある。
【０００７】
具体的には、ペン入力を受付けるペンモードとキー入力を受付けるカーソルモードとを分けずに双方からの操作入力を共存させるとペンとキーとによる指定が組合わさるため、装置での処理が複雑になるという問題がある。
【０００８】
たとえば、マーク作成のための範囲指定を行なう際の開始位置をペンダウンで指定して、方向キーで指定範囲を延長し、決定キーを押した場合を考えると、範囲指定は決定キーが押された時のカーソル位置までに定まるものの、ペンを用いて終了位置が決定されていないため、装置の処理状態としては、マーク作成後もなお、マーク作成のための開始位置を選択ためのモードでペンダウンした状態が保たれていることになる。この場合、ペンダウンした位置から次の操作のためにペンがドラッグされると、該操作はペンダウンを行なうことなくペンドラッグから開始されていて開始点が指定されていないため、何らかの処理が必要となる。
【０００９】
より具体的には、ペンモードとカーソルモードとを分けない場合の処理および状態の遷移の具体例を図４１〜図４３に示す。ペンモードとカーソルモードとが共存している状態で上述の操作入力がなされた場合、図４１において通常文字がペンドラッグ（大移動）された場合の処理および状態が「開始位置決定。マーク終了位置選択中モードに移る」と定められており、最初にペンドラッグされた通常文字を開始位置と決定するなどの処理が必要となる。
【００１０】
またたとえば、ペンモードとカーソルモードとが共存している状態で開始位置がキーで決定され、指定範囲が方向キーで延長されたときに、ペンダウンが発生した場合、図４２を参照して、通常文字要素にペンダウンされた場合は、開始位置を該要素に変更し、反転表示を該要素のみに変更する処理が必要となる。また、その他の要素では、ユーザにより新たな開始位置が指定されたと解釈して、範囲指定を取消して、マーク開始位置選択中モードに移行する処理が必要となる。なお、これはペンダウンによる指定の方が優先されるという仕様の例である。
【００１１】
またたとえば、ペンモードとカーソルモードとが共存している状態で開始位置がキーで決定され、指定範囲が方向キーで延長されときに、ペンドラッグ（大移動）が発生した場合、すでに開始位置選択中で通常文字要素以外にペンダウンされているとすると、図４２を参照して、ペンドラッグ位置が文字要素であって該要素が反転表示範囲内もしくは反転表示範囲に隣接する場合は、ペンによって範囲が指定されたと解釈して、該要素までを反転表示する処理が必要となる。また、反転表示の途中にペンがある場合は、指定範囲を小さくする処理が必要となる。ペンドラッグ位置が文字要素でない場合は、新たな開始位置が指定されたと解釈して、開始位置を該要素に変更し、反転表示を該要素のみに変更する処理が必要となる。
【００１２】
またたとえば、ペンモードとカーソルモードとが共存している状態で開始位置がキーで決定され、指定範囲が方向キーで延長されときに、ペンアップが発生した場合、すでに開始位置選択中で通常文字要素以外にペンダウンされているとすると、図４３を参照して、ペンアップ位置が文字要素以外の場合であって、終了位置候補がペンで指定された場合（その後、上下左右キーによって位置が移動しなかった場合も含む）は、反転部分でマークを作成する処理が必要となる。
【００１３】
また、複数種類の操作入力手段を有する装置を利用する場合、ユーザの操作もわかりにくくなるという問題もある。すなわち、ユーザにとっても、範囲指定の仕方がペンモードとカーソルモードとの複数存在することになり、混乱を来たすおそれがある。一般にユーザインタフェースの観点からは、操作の選択肢を絞ることが、特に不慣れなユーザに対しては望ましい。また、たとえば操作入力手段として感圧式のタブレットを備える場合、キーで範囲指定している時に指などが画面に触れてしまうと意図しない範囲指定がされてしまうなど、誤作動・誤入力してしまう場合があるという問題もある。
【００１４】
これらの問題は、いずれか一方の操作入力を有効にして他方を無効にし、その場合には、ある操作入力手段から取得されたイベントを受取るかどうかの判断処理が不要になり、処理が複雑になってしまうという問題がある。
【００１５】
本発明はこのような問題に鑑みてなされたものであって、ユーザにとって操作性が高く、かつ処理が複雑でないコンテンツデータ表示装置、コンテンツデータ表示装置における処理プログラム、およびコンテンツデータ表示装置における処理プログラムを記録した記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１６】
上記目的を達成するために、本発明のある局面に従うと、コンテンツデータ表示装置は、１以上の要素を含むコンテンツデータを表示する表示手段と、コンテンツデータに含まれる要素に対する操作入力を行なう操作入力手段と、操作入力手段での操作入力に応じて行なう処理と次に遷移する状態とを特定する情報であって、操作状態を含むモードと、操作入力の内容と、操作入力の対象である要素とに基づいて、必要な処理と次に遷移するモードとを特定する情報を格納する状態遷移格納手段と、操作入力に応じて上記情報で特定される処理を行ない、次のモードに遷移する処理を実行する状態遷移処理手段とを備える。
【００１７】
さらに、モードは複数の操作状態に応じた複数のモードであり、状態遷移格納手段に格納される情報は、複数のモードに共有な複数の操作入力の内容と、複数のモードに共有な複数の操作入力の対象である要素とに関連付けて対応する処理と次に遷移するモードとを特定することが好ましい。
【００１８】
また、操作入力手段は第１操作入力手段および第２操作入力手段を含み、モードには、第１操作入力手段および第２操作入力手段のうち第１操作入力手段が有効であることを表わす操作入力手段の有効状態が含まれ、状態遷移格納手段に格納される情報は、第１操作入力手段での操作入力に応じて必要な処理を特定し、第２操作入力手段での操作入力に応じて該必要な処理とは異なる処理を特定することが好ましい。
【００１９】
また、状態遷移処理手段は、処理の実行後にその旨を通知することが好ましい。
【００２０】
また、状態遷移処理手段で実行されるプログラムを格納するプログラム格納手段をさらに備え、状態遷移処理手段は、情報で特定される処理に必要なプログラムをプログラム格納手段から読込んで実行することが好ましい。
【００２１】
また、操作入力が要素以外に対して行なわれた場合に、状態遷移処理手段は、操作入力が要素に対して行なわれたものとして該情報で特定されるモードに遷移する処理を実行することが好ましい。
【００２２】
または、操作入力が要素以外に対して行なわれた場合に、状態遷移処理手段はエラーを出力する処理を実行することが好ましい。
【００２３】
本発明の他の局面に従うと、コンテンツデータ表示装置における処理プログラムは、操作入力を行なう操作入力手段と、操作入力手段での操作入力に応じて行なう処理と次に遷移する状態とを特定する情報であって、操作状態を含むモードと、操作入力の内容と、操作入力の対象である要素とに基づいて、必要な処理と次に遷移するモードとを特定する情報を格納する状態遷移格納手段とを備えるコンテンツデータ表示装置において、１以上の要素を含むコンテンツデータを表示する表示ステップと、操作入力手段において、コンテンツデータに含まれる要素に対する操作入力を受付ける操作入力ステップと、操作入力に応じて上記情報で特定される処理を行ない、次のモードに遷移する処理を実行する状態遷移処理ステップとを実行させる。
【００２４】
本発明のさらに他の局面に従うと、コンピュータ読取可能な記録媒体は、操作入力を行なう操作入力手段と、操作入力手段での操作入力に応じて行なう処理と次に遷移する状態とを特定する情報であって、操作状態を含むモードと、操作入力の内容と、操作入力の対象である要素とに基づいて、必要な処理と次に遷移するモードとを特定する情報を格納する状態遷移格納手段とを備えるコンテンツデータ表示装置における処理プログラムを記録した記録媒体であって、１以上の要素を含むコンテンツデータを表示する表示ステップと、操作入力手段において、コンテンツデータに含まれる要素に対する操作入力を受付ける操作入力ステップと、操作入力に応じて上記情報で特定される処理を行ない、次のモードに遷移する処理を実行する状態遷移処理ステップとを実行させるプログラムを記録する。
【発明を実施するための最良の形態】
【００２５】
以下に、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰返さない。
【００２６】
本発明にかかるコンテンツデータ表示装置としては、図１に示されるような電子書籍ビューワ、パーソナルコンピュータ、ＰＤＡ（Personal Digital Assistants）、携帯電話機、およびゲーム機などが該当し、本実施の形態においては、主に電子書籍ビューワであるものとして説明を行なう。しかし、本発明は具体的にこれらの装置に限定されず、同様の機能を備える他の装置も含み得る。
【００２７】
本実施の形態においては、図１に示されるように、操作入力手段としてタブレットペンと、上下キー、決定キー、およびキャンセルキーからなるキーとが備えられるものとする。
【００２８】
図２は、一般的なコンテンツデータ表示装置のハードウェア構成の具体例を示す図である。
【００２９】
図２を参照して、本実施の形態にかかるコンテンツデータ表示装置は、全体を制御するＣＰＵ（Central Processing Unit）７０、第１の操作入力手段であるタブレット７３、マウス７２、第２の操作入力手段であるキーボード７８、情報表示手段であり、タブレット７３と対になって第３の操作入力手段となるディスプレイ７１、第４の操作入力手段ともなるマイク７６、スピーカ８０、ＣＰＵ７０で実行されるプログラムなどを記憶するＲＯＭ（Read Only Memory），ＲＡＭ（Random Access Memory），ＤＲＡＭ（Dynamic Random Access Memory）などのメモリデバイスやＣＰＵ７０に内蔵されるメモリなどから構成される主記憶装置７４、ＨＤＤ（Hard Disc Drive），メモリカードなどの着脱可能な記録媒体などから構成される外部記憶装置７５、およびネットワークを介して他の装置と通信を行なう通信デバイス７７を含んで構成され、これらがバス７９を介して接続されている。
【００３０】
本実施の形態にかかるコンテンツデータ表示装置は、図２に示されるハードウェア構成のうち、操作入力手段としてタブレット７３およびディスプレイ７１と、キーボード７８との２種類の操作入力手段を備える装置であるものとして以降の説明を行なうが、本発明にかかるコンテンツデータ表示装置は上記２種類に限定されない２以上の複数種類の操作入力手段を備える装置である。
【００３１】
本実施の形態にかかるコンテンツデータ表示装置において操作入力に対応する処理を行なうときの機能構成の具体例を図３に示す。図３に示される機能は、コンテンツデータ表示装置のＣＰＵ７０が主記憶装置７４に記憶されているプログラムを読出して実行することで実現される機能である。
【００３２】
図３を参照して、本実施の形態にかかるコンテンツデータ表示装置の機能は、キーボード７８に該当するキー入力部１と、ディスプレイ７１およびタブレット７３に該当するペン入力部５と、ディスプレイ７１に該当する表示部１４と、キー入力部１でのキーイベント（操作入力）を取得するキーイベント取得部２と、ペン入力部５でのペンイベントを取得するペンイベント取得部６と、キーイベントの対象である要素を探索するキーイベント対象要素探索部３と、ペンイベントの対象である要素を探索するペンイベント対象要素探索部７と、モード設定部４と、状態遷移に伴う処理を実行する状態遷移処理部８と、状態遷移に伴う処理のためのプログラムを記録する処理記録部１５と、状態遷移表を記録する状態遷移表記録部９と、コンテンツデータ上に付加された属性であるユーザデータを記録するユーザデータ記録部１１と、表示するコンテンツデータを読込むコンテンツデータ読込部１０と、表示部１４で表示するためのデータであるレイアウトデータを生成するレイアウトデータ生成部１２と、表示部１４で表示するレイアウトデータを記録する表示用メモリであるレイアウトデータ記録部１３とを含んで構成される。
【００３３】
状態遷移表記録部９に記録される状態遷移表は、モードとイベントとイベントの対象となる要素との３つのパラメータから、実行すべき処理と次に移行するモードとを特定する、テーブル形式の情報である。
【００３４】
モードは、マーク作成中、開始位置選択中、終了位置選択中、通常状態などの操作状態を示す状態モードに応じたものであり、さらに、本実施の形態にかかるコンテンツ表示装置のように複数の操作入力手段を備える装置の場合には、カーソルモードまたはペンモードなどの操作入力手段の有効状態を示す入力モードが含まれる。状態遷移表は、モードごとにイベントとイベントの対象となる要素とで実行すべき処理と次に移行するモードとを特定する。
【００３５】
イベントとは操作入力手段において発生した操作入力の内容を示し、状態遷移表のパラメータであるイベントは、モードに関わらず各モードに共通する。本実施の形態にかかるコンテンツ表示装置のように複数の操作入力手段を備える装置の場合、状態遷移表のパラメータであるイベントには、当該複数の操作入力手段の各々で発生するイベントすべてが含まれることが好ましい。同様に、状態遷移表のパラメータである要素も、モードおよびイベントに関わらず各モードに共通し、コンテンツデータを構成するすべての要素が含まれることが好ましい。なお、状態遷移表については後に具体例を挙げて説明する。
【００３６】
キーイベント取得部２およびペンイベント取得部６は、各々、キー入力部１およびペン入力部５からの入力信号を受信し、キーイベントおよびペンイベントを取得する。そして、該入力信号に対応して、各々、キーイベント取得信号およびペンイベント取得信号をキーイベント対象要素探索部３およびペンイベント対象要素探索部７に入力する。または、受信した該入力信号が入力モードを設定するのための操作入力を示す入力信号である場合には、キーイベント取得信号およびペンイベント取得信号をモード設定部４に入力する。
【００３７】
キーイベント対象要素探索部３およびペンイベント対象要素探索部７は、キーイベント取得信号およびペンイベント取得信号に基づいて、コンテンツデータの中からキーイベントの対象である要素、つまりキー入力部１で指定された要素、およびペンイベントの対象である要素、つまりペン入力部５で指定された要素を探索し、該要素を示す要素信号を状態遷移処理部８に入力する。
【００３８】
また、モード設定部４は、キーイベント取得信号およびペンイベント取得信号に基づいて、操作入力を有効とする操作入力手段がキー入力部１であるカーソルモード、またはペン入力部５であるペンモードに、入力モードを設定し、該入力モードを示すモード信号を状態遷移処理部８に入力する。
【００３９】
状態遷移処理部８は、入力された要素信号、入力モードを示すモード信号、および現在の状態モードに基づいて、状態遷移表記録部９に記録されている状態遷移表を参照して実行するべき処理を特定する。該処理に必要なプログラムを処理記録部１５から読出して実行し、ユーザデータを生成する。生成されたユーザデータは、ユーザデータ記録部１１に記録される。
【００４０】
ユーザデータの一例としては、図４に示されるように、ユーザ操作によって要素に付加された属性ごとのユーザデータ３００，３０１からなり、マークやマスクなどの属性の種類を示す種類、属性を一意に特定するためのＩＤ、電子データ中で属性を付加する要素を特定する情報である開始バイト位置およびバイトサイズ、マークやマスクの色などの情報を含む。なお、上記ＩＤは、メモリ上のアドレスやファイルのアドレスなどであってもよい。
【００４１】
また、状態遷移処理部８は、状態遷移表を参照して次に移行する状態モードを読取り、該状態モードにて次の処理を待機する。
【００４２】
コンテンツデータ読込部１０は、主記憶装置７４や外部記憶装置７５、通信デバイス７７を介した通信先などから図５に示されるような必要なコンテンツデータを読込む。図５に示されるコンテンツデータは図１の画面に表わされたコンテンツに該当するＨＴＭＬ（Hypertext Markup Language）形式のコンテンツデータの具体例であって、その他の、ＸＭＬ（Extensible Markup Language）形式などのテキスト形式や、バイナリ形式などのデータであってもよい。
【００４３】
レイアウトデータ生成部１２は、コンテンツデータ読込部１０で読込まれたコンテンツデータと、ユーザデータ記録部１１に記録されているユーザデータとに基づいて該コンテンツを表示するためのレイアウトデータを生成する。具体的には、図６および図７に示されるような、要素データおよび行データのような形式のレイアウトデータが生成される。図６および図７は、図１の画面に表わされたコンテンツに該当するコンテンツデータと、図４に示されたユーザデータとに基づいて生成される要素データおよび行データの具体例である。
【００４４】
要素データは、図６に示されるように、コンテンツに含まれる各文字や各画像の要素データ１２０〜１２８からなり、文字や画像などの要素種類を示す種類、電子データ中の開始位置を示す開始バイト、必要なデータ量を示すバイトサイズ、行内での位置を示すオフセットＸ，オフセットＹ、幅、高さ、文字色、背景色、リンクやマスクなどの選択されることでアクションが実行される属性であるイベント、および内容などの情報を含む。これらの情報のうち、文字色、背景色やイベントなどの情報は、ユーザデータでの指定に基づいて生成される場合もある。その場合、イベントにおいてはユーザデータに含まれるＩＤ情報が含されている。なお、図１に示されるように、イベントが付加されている要素である文字列（「リンク」）には下線が付されてもよいし、要素データに、さらに下線の有無を示す情報が含まれてもよい。
【００４５】
行データは、図７に示されるように、表示行ごとの行データ２００，２０１からなり、行高さ、下の行との間隔である下行間、当該行の開始要素を配置可能な位置を示す配置可能開始位置、当該行の終了要素を配置可能な位置を示す配置可能終了位置、当該行に含まれる要素の数である要素数、および当該行における要素の配列を特定する要素配列などの情報を含む。
【００４６】
表示部１４は、レイアウトデータ記録部１３に記録されたレイアウトデータを読出して表示する。
【００４７】
図８を用いて、本実施の形態にかかるコンテンツデータ表示装置において範囲指定操作が行なわれたときに実行される範囲指定処理について説明する。図８に示される処理は、ＣＰＵ７０が主記憶装置７４に記憶されるプログラムを読出して実行し、図３に示される各部を機能させることによって実現される。
【００４８】
なお、範囲指定とは、たとえば表示中の文字列に下線や打消し線やマーク（該範囲の情報の色を変更して強調する機能）やマスク（該範囲の情報を塗りつぶして隠す機能）などの属性を付加／削除するときなどに行なう操作であって、該当する範囲の開始位置と終了位置とを指定することで、その間の範囲を指定する操作を指す。
【００４９】
図８を参照して、始めに、ステップＳ１において、表示対象となるコンテンツデータがコンテンツデータ読込部１０によって読込まれ、表示部１４において表示される。そして、ＣＰＵ７０においては、ステップＳ２で、予めデフォルト設定されている初期モードが設定される。
【００５０】
なお、ステップＳ２では、デフォルト設定されている初期モードに替えて、ユーザ操作によって指定されたモードに切替えてもよい。具体的には、図９および図１０に示されるように、アイコン指定を受付けてペンモードまたはカーソルモードに入力モードを切替えてもよいし、メニュー指定を受付けて入力モードを切替えてもよい。あるいは、状態モードが通常状態やマーク／マスク開始位置決定モード時に、キーイベントやペンイベントを取得すると自動的に入力モードを切替えてもよい。状態モードも同様に切替えてもよい。なお、上記の切替え処理は、以下のステップＳ３からステップＳ８のループ処理の説明では特に説明していないが、必要に応じて処理を追加してもよい。
【００５１】
ステップＳ３で、キーイベント取得部２および／またはペンイベント取得部６でキー入力部１および／またはペン入力部５からの入力信号を受信してイベントが取得される。ステップＳ３で取得されたイベントがキーイベントである場合には（ステップＳ４でＹ）、処理はポイントＰ２−１に進み、ステップＳ５でキーイベント対象要素探索部３において表示部１４に表示されているレイアウトデータの中からキーイベントの対象要素が探索される。なお、ステップＳ５での処理については、後にさらにフローチャートを用いて説明する。
【００５２】
また、ペンイベントである場合には（ステップＳ４でＮ）、処理はポイントＰ２−２に進み、ステップＳ６でペンイベント対象要素探索部３においてペンイベントの対象要素が探索される。なお、ステップＳ６での処理についても、後にさらにフローチャートを用いて説明する。
【００５３】
その後、処理はポイントＰ３に進み、ステップＳ７で、状態遷移処理部８において、現在のモード、ステップＳ３で取得されたイベント、およびステップＳ５またはステップＳ６で探索されたイベント対象要素に基づいて状態遷移表記録部９に記録される状態遷移表に従って処理が特定され、実行される。また、次の状態モードが設定される。ここでの処理の結果は、ユーザデータとしてユーザデータ記録部１１に記録される。
【００５４】
ステップＳ７で設定された状態モードが処理終了モードになるまで（ステップＳ８でＮ）、処理はポイントＰ１に戻されてステップＳ３〜ステップＳ７が繰返され、範囲指定が行なわれる。そして、ステップＳ７で設定された状態モードが処理終了モードになると（ステップＳ８でＹ）、ステップＳ９で、状態遷移処理部８において終了処理が実行され、範囲指定が完了する。処理終了とは、たとえば、別のコンテンツデータの表示に差替える処理や、コンテンツデータ表示プログラムやコンテンツデータ表示装置を終了させる処理などがある。
【００５５】
上記ステップＳ５での処理について、図１１のフローチャートを用いて説明する。
【００５６】
図１１を参照して、キーイベントの対象要素を求める場合、表示中にカーソルまたはフォーカス（選択状態表示）が存在する状態で決定キーが押された場合（ステップＳ５−１でＹ、かつステップＳ５−２でＹ）、そのカーソルまたはフォーカス位置にある要素を取得し（ステップＳ５−３）、その要素を対象要素として処理をポイントＰ３へ返す（ステップＳ５−８）。
【００５７】
一方、表示中にカーソルまたはフォーカスが存在する状態で上下左右キーが押された場合（ステップＳ５−１でＹ、かつステップＳ５−２でＮ）、上下左右キーで指定された方向に要素が存在したら（ステップＳ５−４でＹ）その方向の要素を取得し（ステップＳ５−５）、その要素を対象要素として処理をポイントＰ３へ返す（ステップＳ５−８）。上下左右キーで指定された方向に要素が存在しないときには（ステップＳ５−４でＮ）、カーソルまたはフォーカス位置にある要素を取得し（ステップＳ５−３）、その要素を対象要素として処理をポイントＰ３へ返す（ステップＳ５−８）。
【００５８】
なお、表示中にカーソルもフォーカスも存在しない場合には（ステップＳ５−１でＮ）、対象要素を「無効要素」として（ステップＳ５−２）処理をポイントＰ３へ返す。
【００５９】
上記ステップＳ６での処理について、図１２のフローチャートを用いて説明する。
【００６０】
図１２を参照して、タッチされているペン位置に要素が存在する場合（ステップＳ６−１でＹ）、そのペン位置にある要素を取得し（ステップＳ６−２）、その要素を対象要素として処理をポイントＰ３へ返す（ステップＳ６−６）。
【００６１】
一方、タッチされているペン位置に要素が存在しない場合（ステップＳ６−１でＮ）、ペン位置が余白である場合には（ステップＳ６−３でＹ）、ペン位置に最も近い位置に存在する要素を取得し（ステップＳ６−４）、その要素を対象要素として処理をポイントＰ３へ返す（ステップＳ６−６）。ペン位置が余白でない場合には（ステップＳ６−３でＮ）、対象要素を「無効要素」として（ステップＳ６−５）処理をポイントＰ３へ返す。
【００６２】
次に、状態遷移表記録部９に記録される状態遷移表のうち、ペンモードでマーク作成のための範囲指定を行なう際に用いる状態遷移表の具体例を図１３，１４に挙げる。なお、説明の便宜上、状態遷移表の具体例を図１３，１４の２図に分けて示しているが、これらの表は連続した１つの表であってよい。また、本実施の形態においては、状態遷移表をテーブル形式の情報であるものとしているが、以降に説明するように、所定数のパラメータで次の状態遷移が特定できる情報であればテーブル形式に限定されず、その他の形式の情報であってよい。
【００６３】
先述のように、状態遷移表は、モードと取得されたイベントとイベント対象要素との３つのパラメータから実行すべき処理、および次に移行するモードを特定する表であって、図１３，１４に示される状態遷移表は、モード「マーク作成・開始位置選択中モード」，「マーク作成・終了位置選択中モード」の各モードに応じた状態遷移表である。すなわち、図１３は、状態モード「マーク作成・開始位置選択中モード」、入力モード「ペンモード」に応じたモードに対応する状態遷移表の具体例であって、図１４は、状態モード「マーク作成・終了位置選択中モード」、入力モード「ペンモード」に応じたモードに対応する状態遷移表の具体例である。
【００６４】
パラメータの１つである「イベント」にはモードに関わらず各入力手段（ペン、キーボード）での操作入力内容のすべてが含まれ、ここでは、ペンダウンと、ペンドラッグ（微小移動）と、ペンドラッグ（大移動）と、ペンアップと、上下左右キーと、決定キーとの６イベントが含まれる。なお、ペンドラッグ（微小移動）とは、ある要素内にペンダウンした後にペンが移動するイベントであって、ペンダウン位置から現在のペン位置までの距離が微小であるイベントを指す。「微小距離」の定義は様々考えられるが、たとえば、要素の縦または横の小さい方のサイズの半分を超えるかどうかで判断する、などの定義が挙げられる。また、ペンドラッグ（大移動）は、ペンダウンした要素から別の要素内にペン位置が移動するイベントを指す。
【００６５】
パラメータの１つである「要素」にはモード・イベントに関わらずコンテンツを構成するすべての要素が含まれ、ここでは、通常文字と、マークと、マスクと、リンクと、画像との５要素が含まれる。
【００６６】
モードがペンモードでマーク作成・開始位置選択中モードである場合、最初に有効なイベントはマーク作成のための開始位置を指定するペンダウンであり、有効な要素はマーク作成が許されている通常文字のみである。そのため、マーク作成・開始位置選択中モードにおいて通常文字にペンダウンされると、図１３を参照して、モード「ペンモード」，「マーク作成・開始位置選択中モード」、イベント「ペンダウン」、および要素「通常文字」の３つのパラメータで、状態遷移表において実行すべき処理および次に移行するモードが開始位置決定処理およびマーク終了位置選択中モードと特定される。より詳しくは、状態遷移表において、実行すべき処理に対応するプログラムが格納されているアドレス、および次のモードに移行させるために実行されるプログラムが格納されているアドレスが特定されることで、これらの処理およびモードが特定される。
【００６７】
その他のペンイベント（ペンドラッグ、ペンアップ）は発生することがないため、イベント「ペンドラッグ」，「ペンアップ」では、特定される状態が定義されていない。また、要素が、マーク作成が許されていないマーク、マスク、リンク、および画像である場合には、実行すべき処理が、エラーダイアログ表示処理と特定される。このとき、移行する次のモードが指定されていないので、現在のモードを継続すると特定される。
【００６８】
モードがペンモードでマーク作成・終了位置選択中モードに移行したときには開始位置として決定された通常文字にペンダウンされた状態であるので、有効なイベントはペンドラッグおよびペンアップである。また、ペンドラッグ（微小移動）は、ドラッグの開始が通常文字であるために、通常文字以外の要素では発生しない。そのため、図１４を参照して、イベント「ペンダウン」のパラメータのときと、イベント「ペンドラッグ（微小移動）」および要素「通常文字」以外のパラメータのときとは、状態遷移表においては特定される状態が定義されていない。また、通常文字内のペンドラッグ（微小移動）はユーザの誤操作とみなして処理を行なわないものと予め定めると、イベント「ペンドラッグ（微小移動）」および要素「通常文字」のパラメータでは、状態遷移表においては実行すべき処理がないと指定されている。また、移行する次のモードが指定されていない。より詳しくは、状態遷移表において、実行すべき処理に対応するプログラムが格納されているアドレスとして処理が空のアドレスが特定されることで実行すべき処理がないことが特定される。また、および次のモードに移行させるために実行されるプログラムが格納されているアドレスとして処理が空のアドレスが特定されることで、次のモードを指定せずに現在のモードを継続することが特定される。
【００６９】
マークの作成は通常文字列に許可され通常文字列以外の要素に許可されていないので、マーク作成・終了位置選択中モードにおいて通常文字からペンドラッグ（大移動）されると、図１４を参照して、モード「ペンモード」，「マーク作成・終了位置選択中モード」、イベント「ペンドラッグ（大移動）」、および要が「通常文字」の３つのパラメータで、状態遷移表において実行すべき処理が反転表示処理と特定される。また、要素が通常文字以外のパラメータで、実行すべき処理実行すべき処理が該要素の直前までの反転表示処理と特定される。なお、ここでいう「直前」とは、指定範囲に最初に含まれなくなる要素の直前という意味である。
【００７０】
モードがマーク作成・終了位置選択中モードである場合、指定中の範囲からペンアップされたときに、該指定範囲がマークを付加する範囲と決定される。そのため、マーク作成・終了位置選択中モードにおいてペンアップされると、図１４を参照して、モード「ペンモード」，「マーク作成・終了位置選択中モード」、およびイベント「ペンアップ」で、要素がいずれの要素のときも、その３つのパラメータで、状態遷移表において実行すべき処理および次に移行するモードが反転部分のマーク作成処理および処理終了モードと特定される。
【００７１】
なお、イベント「ペンモード」で有効なイベントでないキーイベント（上下左右キー、決定キー）のときには、図１３，１４に示される状態遷移表において実行すべき処理がないと指定されている。また、移行する次のモードが指定されていない。
【００７２】
状態遷移表においてこのように指定することで、ペンモードのときにキーイベントを取得しても処理が実行されず、動作上はペンモードとカーソルモードとを排他的にすることができる。このことより、複数の操作入力手段を備えるコンテンツデータ表示装置において、操作を容易にでき、誤作動・誤入力を防止できる。
【００７３】
かかる状態遷移表において特定される処理に対応するプログラムは処理記録部１５に記憶されている。状態遷移処理部８は状態遷移表にしたがって処理を特定し、対応するプログラムを処理記録部１５から読出して実行する。
【００７４】
図１３，１４に示される状態遷移表を用いてペンモードでマーク作成のための範囲指定を行なう操作および表示部１４に表示される画面の遷移を、具体例を挙げて説明する。
【００７５】
始めに、図１５に示されるように、ペンモードでマーク作成・開始位置選択中モードであるときに、ペンイベント取得部６において表示中のコンテンツの通常文字部分にペンダウンされたことが取得されると、モード「ペンモード」，「マーク作成・開始位置選択中」、イベント「ペンダウン」、および要素「通常文字」であるので、状態遷移処理部８において、図１３に示される状態遷移表より、この３つのパラメータより処理「開始位置決定処理」と、次に移行するモード「マーク終了位置選択中モード」とが特定され、必要なプログラムが処理記録部１５より読出されて実行される。その結果、ペンダウンされた要素である文字がマーク開始位置に決定される。
【００７６】
ペンモードでマーク作成・開始位置選択中モードであるときに、ペンイベント取得部６において表示中のコンテンツの画像にペンダウンされたことが取得されると、モード「ペンモード」，「マーク作成・開始位置選択中」、イベント「ペンダウン」、および要素「画像」であるので、状態遷移処理部８において、図１３に示される状態遷移表より、この３つのパラメータより処理「エラーダイアログ表示処理」が特定され、必要なプログラムが処理記録部１５より読出されて実行される。また、移行する次のモードが指定されていないので、現在のマーク作成・開始位置選択中モードを継続する。つまり、これは、マークは通常文字上のみに付加が許可されているときに、マーク開始位置として画像を指定した場合であって、図１６に示されるように、エラーダイアログが表示される。なお、これは、マークが付加された要素、マスクが付加された要素、およびリンクが付加された要素のいずれの要素が指定されたときも同様であって、「エラーダイアログ表示処理」のためのプログラムであって、画像が指定されたときに実行されるプログラムと共通したプログラムが処理記録部１５より読出されて実行され、同様のエラーダイアログが表示される。
【００７７】
また、ペンダウンした位置において要素内でユーザがドラッグを意図しない程度の微小長さペンドラッグしてしまった場合、つまりイベントとしてペンドラッグ（微小移動）が取得された場合、モード「ペンモード」，「マーク作成・終了位置選択中」、イベント「ペンドラッグ（微小移動）」、および要素「通常文字」であるので、状態遷移処理部８において、図１４に示される状態遷移表より、この３つのパラメータより実行すべき処理がないと特定される。その結果、ペン入力特有のユーザの意図しない移動による誤入力を容易に防ぐことできる。
【００７８】
次に、図１７，１８に示されるように、ペンモードでマーク作成・終了位置選択中モードであるときに、ペンイベント取得部６において表示中のコンテンツの通常文字部分がペンドラッグ（大移動）されたことが取得されると、モード「ペンモード」，「マーク作成・終了位置選択中」、イベント「ペンドラッグ（大移動）」、および要素「通常文字」であるので、状態遷移処理部８において、図１４に示される状態遷移表より、この３つのパラメータより処理「反転表示処理」が特定され、必要なプログラムが読出されて実行される。また、移行する次のモードが指定されていないので、現在のモードを継続すると特定される。
【００７９】
「反転表示処理」は、たとえば、開始位置の要素から終了位置の要素までの各要素に対して、文字色と背景色とを反転させればよい。開始位置の要素から終了位置の要素までの各要素は、開始位置の要素が含まれる行データの要素配列において、開始位置の要素から順方向に見ていき、終了位置の要素に至るまでの要素となる。選択範囲が複数行に及ぶ場合は、順に次の行データの要素配列を見ていけばよい。
【００８０】
図１９に示されるように、行間がペンドラッグされた場合、ペン位置は行間なのでどの要素内にも位置しないが、図１２のステップＳ６−４の処理が実行され、ペン位置から一番近い要素がイベント対象要素として取得されて、同様に反転表示処理が実行される。このため、先に述べたようなペンダウンを行なうことなくペンドラッグから範囲指定操作が開始されている状態が回避され、処理や操作が複雑になるのを防ぐことができる。つまり、文字間や行間、周囲はいずれかの要素に含まれるとすることで、このような状態が回避できる効果がある。
【００８１】
また、図２０に示されるように、余白がペンダウン／ペンドラッグされた場合に、エラーダイアログを表示してもよい。同様に、文字間や行間などがペンドラッグされた場合に、エラーダイアログを表示してもよい。これは、図１３，１４に示される状態遷移表の要素の列に文字間、行間、余白などの列を追加して、イベントがペンダウン／ペンドラッグであるときにエラーダイアログ表示処理が特定されるようにすることで容易に実現できる。または、ステップＳ６の対象要素を求める処理において、ステップＳ６−４，Ｓ６−５でエラーダイアログ表示処理を実行することでも実現できる。このようにしても、先に述べたようなペンダウンを行なうことなくペンドラッグから範囲指定操作が開始されている状態が回避され、処理や操作が複雑になるのを防ぐことができる。
【００８２】
同様に、ステップＳ６の対象要素を求める処理においてステップＳ６−５でペン位置が不適当な場合に対象要素が「無効要素」とされて、以降の範囲指定処理でその対象要素が考慮されないものとしているが、図１３，１４に示される状態遷移表の要素の列に「無効要素」の列を追加することで、その対象要素を他の要素に置換えるようにしてもよい。あるいは、対象要素が「無効要素」であるときにエラーダイアログを表示する、などの何らかの処理が実行される場合には、該処理が特定される他の要素（たとえば、マークなど）に置換えるようにしてもよい。
【００８３】
そのままペンモードでマーク作成・終了位置選択中モードにおいてペンドラッグが継続し、ペンイベント取得部６において画像がドラッグされたことが取得されると、モード「ペンモード」，「マーク作成・終了位置選択中」、イベント「ペンドラッグ（大移動）」、および要素「画像」であるので、状態遷移処理部８において、図１４に示される状態遷移表より、この３つのパラメータから処理「反転表示処理」が特定されて、必要なプログラムが処理記録部１５より読出されて実行される。その結果、図２１に示されるように、画像の直前の通常文字まで反転表示処理が実行される。これは、画像を含む、通常文字以外の他の要素であっても同様である。
【００８４】
これは入力モードがカーソルモードのときも同様であって、図２２に示されるように、カーソルモードでマーク作成・終了位置選択中モードにおいて右キーや下キーが押されても、画像の直前の通常文字まで反転表示処理が実行され、画像以降に反転表示が進まない。
【００８５】
そして、ペンモードでマーク作成・終了位置選択中モードであるときに、ペンイベント取得部６において表示部１４からペンアップされたことが取得されると、モード「ペンモード」，「マーク作成・終了位置選択中」、イベント「ペンアップ」であるので、要素がいずれの要素であっても、状態遷移処理部８において、図１４に示される状態遷移表より、３つのパラメータより処理「マーク作成処理」が特定され、必要なプログラムが処理記録部１５より読出されて先の反転表示処理で反転された部分にマークを付加するマーク作成処理が実行される。そして、作成されたマークの情報を含むユーザデータが生成され、ユーザデータ記録部１１に記録される。また、移行する次のモードが処理終了モードと特定される。なお、マークなどの属性の付加が完了したとき、図２３に示されるように、その旨を通知するダイアログを表示することで、現在のモードが終了位置選択中であるのか処理終了であるのかが容易に判別され、操作性が高められる。通知処理は、状態遷移表で特定される各処理で行なってもよいし、通知するかどうかの情報や通知する内容などの情報を状態遷移表で保持して一括処理してもよい。
【００８６】
以上のペンモードでのマーク作成の状態遷移を図２４，図２５に表形式で示す。図２４，図２５において、順番１〜に示されるユーザ操作（イベント）にしたがって、太枠で示された状態に遷移する。すなわち、通常文字の上にペンダウンされるとマーク開始位置決定処理が実行されて、マーク終了位置選択中モードに移行する。その状態でペンドラッグ（微小移動）が発生しても処理は実行されず、ペンドラッグ（大移動）が発生した場合に、ドラッグされた連続する通常文字に対して反転表示処理が実行される。そして、ペンアップされると、ペンドラッグ（大移動）に伴って反転表示された部分にマークを付加するマーク作成処理が実行され、処理終了モードに移行する。
【００８７】
なお、ペンドラッグ（大移動）された要素中に画像が含まれる場合には、図２５を参照して、その直前の通常文字まで反転表示処理が実行される。
【００８８】
カーソルモードでの範囲指定も、ペンモードでの範囲指定と同様に実行される。図２６，２７に、状態遷移表記録部９に記録される状態遷移表のうち、カーソルモードでマーク作成のための範囲指定を行なう際に用いる状態遷移表の具体例を示す。図２６，２７に示される状態遷移表もまた、モード「マーク作成・開始位置選択中モード」，「マーク作成・終了位置選択中モード」の各モードに応じた状態遷移表である。すなわち、図２６は、状態モード「マーク作成・開始位置選択中モード」、入力モード「カーソル入力」に応じたモードに対応する状態遷移表の具体例であって、図２７は、状態モード「マーク作成・終了位置選択中モード」、入力モード「カーソル入力」に応じたモードに対応する状態遷移表の具体例である。
【００８９】
モードがカーソルモードでマーク作成・開始位置選択中モードにおいては、上下左右キーでマーク作成・開始位置の通常文字にカーソルを移動させ、決定キーで開始位置に決定する。また、通常文字以外の要素にはカーソルに替えてフォーカスが存在するため、上下左右キーを押下してカーソルの移動先として通常文字以外を指定した場合であっても、その要素にカーソルを移動させることができない。
【００９０】
これらのことより、上下左右キーが押下されて通常文字にカーソルが移動された場合には、図２６を参照して、モード「カーソルモード」，「マーク作成・開始位置選択中モード」、イベント「上下左右キー」、および要素「通常文字」の３つのパラメータで、状態遷移表において実行すべき処理がカーソル移動処理と特定される。また、移行する次のモードが指定されていないため、現在のマーク作成・開始位置選択中モードを継続すると特定される。また、上下左右キーが押下されて通常文字以外にカーソルが移動された場合、つまり要素が通常文字以外のパラメータでは、状態遷移表においてカーソル移動処理不可と特定される。
【００９１】
通常文字にカーソルがあるときに決定キーが押下されると、図２６を参照して、モード「カーソルモード」，「マーク作成・開始位置選択中モード」、イベント「決定キー」、および要素「通常文字」の３つのパラメータで、状態遷移表において実行すべき処理および次のモードが開始位置決定処理およびマーク終了位置選択中モードと特定される。なお、要素が通常文字以外のパラメータでは、特定される状態が定義されていない。
【００９２】
モードがカーソルモードでマーク作成・終了位置選択中モードに移行したときには開始位置として決定された通常文字にカーソルが存在している。マークの作成は通常文字列に許可され通常文字列以外の要素に許可されていないので、マーク作成・終了位置選択中モードにおいて通常文字から上下左右キーが押下されると、図２７を参照して、モード「カーソルモード」，「マーク作成・終了位置選択中モード」、イベント「上下左右キー」、および要素「通常文字」の３つのパラメータで、状態遷移表において実行すべき処理がカーソル移動処理および反転表示処理と特定される。また、移行する次のモードが指定されていないため、現在のマーク作成・開始位置選択中モードを継続すると特定される。上下左右キーが押下されて通常文字以外にカーソルが移動された場合、つまり「要素」が通常文字以外のパラメータでは、状態遷移表においてカーソル移動処理不可と特定される。
【００９３】
マーク作成・終了位置選択中モードにおいて選択中の通常文字で決定キーが押下されたときに、該通常文字までの指定範囲がマークを付加する範囲と決定される。そのため、マーク作成・終了位置選択中モードにおいて通常文字で決定キーされると、図２７を参照して、モード「カーソルモード」，「マーク作成・終了位置選択中モード」、イベント「決定キー」、および要素「通常文字」の３つのパラメータで、状態遷移表において実行すべき処理および次に移行するモードが反転部分のマーク作成処理および処理終了モードと特定される。また、要素が通常文字以外のパラメータでは、特定される状態が定義されていない。
【００９４】
なお、イベントがカーソルモードで有効なイベントでないペンイベント（ペンダウン、ペンドラッグ、ペンアップ）のとき、図２６，２７に示される状態遷移表において実行すべき処理がないと指定されている。また、移行する次のモードが指定されていない。
【００９５】
状態遷移表においてこのように指定することで、カーソルモードのときにペンイベントを取得しても処理が実行されず、動作上はペンモードとカーソルモードとを排他的にすることができる。このことより、複数の操作入力手段を備えるコンテンツデータ表示装置において、操作を容易にでき、誤作動・誤入力を防止できる。
【００９６】
かかる状態遷移表において特定される処理に対応するプログラムもまた処理記録部１５に記憶されている。状態遷移処理部８は状態遷移表にしたがって処理を特定し、対応するプログラムを処理記録部１５から読出して実行する。開始位置決定処理や、反転表示処理など、カーソルモードにおいてもペンモードと同様の処理が特定され、対応するプログラムを共通のものとすることができる。
【００９７】
カーソルモードでのマーク作成の状態遷移を図２８，図２９に表形式で示す。図２８，図２９において、順番１〜に示されるユーザ操作（イベント）したがって、太枠で示された状態に遷移する。すなわち、通常文字にカーソルが存在する状態で決定キーが押下されるとマーク開始位置決定処理が実行されて、マーク終了位置選択中モードに移行する。その状態で通常文字以外に向かって上下左右キーが押下されもカーソル移動処理は実行されず、通常文字に向かって上下左右キーが押下された場合に、指定方向にある連続する通常文字にカーソルを移動させる処理が実行され、さらに、該通常文字に対して反転表示処理が実行される。そして、通常文字にカーソルが存在する状態で決定キーが押下されると、反転表示された部分にマークを付加するマーク作成処理が実行され、処理終了モードに移行する。
【００９８】
なお、上下左右キーで画像にカーソル移動が指定された場合には、図２９を参照して、その直前の通常文字まで反転表示処理が実行される。このように、ペンモードでもカーソルモードでも、図要素などは範囲指定できないようにしているため、ペンアップや決定キーでマークやマスクを付加するための指定範囲を行なう際、どちらのモードであるかを意識することなく、単純に範囲指定を行なうことができる。
【００９９】
以上の具体例は操作入力に対応する処理としてマーク作成のための範囲指定処理であるが、マスク作成のための範囲指定処理も同様である。マスク作成においては、マーク作成において許可されていなかった画像を範囲指定に含めることが許可されているものとする。そこで、ペンモードでマスク作成のための範囲指定を行なう際に用いる状態遷移表の具体例を図３０，３１、カーソルモードにおける状態遷移表の具体例を図３２，３３とすると、マーク作成の際に用いられる状態遷移表と比較して、「要素」が画像であるときにも他の要素と同様に範囲指定のための処理が特定されている。
【０１００】
次に、本実施の形態にかかるコンテンツデータ表示装置において操作入力手段を用いた通常の指示操作が行なわれたときに実行される処理について説明する。なお、「通常の指示操作」とは、マークなどの属性を付加するための属性作成モードでの操作ではなく、コンテンツ閲覧時の通常状態での操作を指す。
【０１０１】
状態遷移表記録部９に記録される状態遷移表のうち、ペンモードで通常状態における指示操作に対する処理を行なう際に用いる状態遷移表の具体例を図３４に挙げる。図３４は、状態モード「通常状態モード」、入力モード「ペンモード」に応じたモードに対応する状態遷移表の具体例である。
【０１０２】
図３４を参照して、範囲指定を行なわない通常状態でのペンモードでは、有効なイベントはペンダウンとペンアップとであり、その他のイベントでは状態遷移表において実行すべき処理がないと指定されている。
【０１０３】
選択されることでアクションが実行される属性であるマスクやリンクにペンダウンされた場合に、モード「ペンモード」，「通常状態モード」、イベント「ペンダウン」、および要素「マスク」または要素「リンク」の３つのパラメータで、状態遷移表において実行すべき処理がフォーカス移動処理と特定される。このとき、移行する次のモードが指定されていないので、現在のモードを継続すると特定される。
【０１０４】
また、マスクやリンクからペンアップされた場合に、モード「ペンモード」，「通常状態モード」、イベント「ペンアップ」、および要素「マスク」または要素「リンク」の３つのパラメータで、状態遷移表において実行すべき処理がマスク反転表示処理またはリンクジャンプ処理と特定される。
【０１０５】
ここでマスクには、付加された背後のコンテンツがマスク画像（ここでは暗色矩形）で隠されて表示されないＯＮマスクと、マスク画像が非表示となり背後のコンテンツが表示されいるＯＦＦマスクとの２種類の状態があり、マスク反転表示とは、ＯＮマスクをＯＦＦマスクに反転、あるいはＯＦＦマスクをＯＮマスクに反転させる表示を指す。
【０１０６】
かかる状態遷移表において特定される処理に対応するプログラムは処理記録部１５に記憶されている。状態遷移処理部８は状態遷移表にしたがって処理を特定し、対応するプログラムを処理記録部１５から読出して実行する。
【０１０７】
図３４に示される状態遷移表を用いてペンモードにおいて通常状態で操作入力された場合の画面の遷移を、具体例を挙げて説明する。
【０１０８】
図３５に示されるような、ＯＮマスクを含むコンテンツが表示された画面状態においてマスク要素にペンダウンされたことが取得されると、モード「ペンモード」，「通常状態モード」、イベント「ペンダウン」、および要素「マスク」であるので、状態遷移処理部８において、図３４に示される状態遷移表よりフォーカス移動処理が特定され、必要なプログラムが処理記録部１５より読出されて実行される。その結果、図３６に示されるように、ペンダウンされた要素であるＯＮマスクにフォーカスが移動される。なお、ＯＮマスクにフォーカスが存在している状態を、図３６では白抜きの選択枠を描画することで表わしている。この時、フォーカスの表示だけでなく、フォーカス位置の情報もこのマスクの要素データに移動させておくことが好ましい。
【０１０９】
この状態からペンアップされたことが取得されると、モード「ペンモード」，「通常状態モード」、イベント「ペンアップ」、および要素「マスク」であるので、状態遷移処理部８において、図３４に示される状態遷移表より、この３つのパラメータよりマスク反転表示処理が特定され、必要なプログラムが処理記録部１５より読出されて実行される。その結果、図３７に示されるように、ペンアップされた要素であるＯＮマスクが解除されてＯＦＦマスクとなって、下の「マスク」という文字が読めるようになっている。フォーカスはマスク上に存在したままなので、フォーカス表示で「マスク」は反転表示されている。
【０１１０】
同様に、状態遷移表記録部９に記録される状態遷移表のうち、カーソルモードで通常状態における指示操作に対する処理を行なう際に用いる状態遷移表の具体例を図３８に挙げる。図３８は、状態モード「通常状態モード」、入力モード「ペンモード」に応じたモードに対応する状態遷移表の具体例である。入力モードがカーソルモードで、状態モードが通常状態モードであるときの状態遷移表の具体例である。
【０１１１】
図３８を参照して、範囲指定を行なわない通常状態でのカーソルモードでは、有効なイベントは上下左右キーの押下と決定キーの押下とであり、その他のイベントでは状態遷移表において実行すべき処理がないと指定されている。
【０１１２】
表示されたコンテンツ上のカーソルを移動させるために上下左右キーが押下された場合に、モード「カーソルモード」，「通常状態モード」、イベント「上下左右キー」、および要素がいずれの要素であるときも、この３つのパラメータで、状態遷移表において実行すべき処理が（移動可能なら）指定方向のマスクまたはリンクへのフォーカス移動処理と特定される。このとき、移行する次のモードが指定されていないので、現在のモードを継続すると特定される。
【０１１３】
また、マスクやリンクにフォーカスが存在する状態で決定キーが押下された場合に、モード「カーソルモード」，「通常状態モード」、イベント「決定キー」、および要素「マスク」または要素「リンク」の３つのパラメータで、状態遷移表において実行すべき処理がマスク反転表示処理またはリンクジャンプ処理と特定される。
【０１１４】
図３４に示される状態遷移表を用いてペンモードにおいて通常状態で操作入力された場合の画面の遷移を、具体例を挙げて説明する。
【０１１５】
かかる状態遷移表において特定される処理に対応するプログラムもまた処理記録部１５に記憶されている。状態遷移処理部８は状態遷移表にしたがって処理を特定し、対応するプログラムを処理記録部１５から読出して実行する。フォーカス移動処理やマスク反転表示処理やリンクジャンプ処理など、カーソルモードにおいてもペンモードと同様の処理が特定され、異なる操作入力手段からの操作入力であっても同様の処理が特定されて対応するプログラムを共通化とすることができる。
【０１１６】
図３８に示される状態遷移表を用いてカーソルモードにおいて通常状態で操作入力された場合の画面の遷移を、具体例を挙げて説明する。すなわち、図３７に示されるＯＦＦマスクであるマスク要素にフォーカスが存在する画面状態において下キーまたは右キーが押下されたことが取得されると、モード「カーソルモード」，「通常状態」、イベント「上下左右キー」であるので、状態遷移処理部８において、図３８に示される状態遷移表より（移動可能なら）指定方向のマスクまたはリンクへのフォーカス移動処理が特定され、必要なプログラムが処理記録部１５より読出されて実行される。その結果、図３９に示されるように、フォーカスの存在したマスク要素の次のマスクまたはリンクであるリンク要素にフォーカスが移動される。
【０１１７】
なお、図３９においてＯＦＦマスクは下線が付されて表示されており、フォーカスの無いリンク要素と同様の表示方法となっている。これはフォーカス移動の対象要素としてＯＦＦマスクもリンクも同様に扱われるからであるが、ＯＦＦマスクとリンクとで異なる表示方式とすると、マスクかリンクかユーザが区別可能である利点がある。異なる表示方式としては、たとえば、下線の幅を変えたり、一方の下線を点線にしたり、背景色や文字色を変えたり、枠線を引いたり、などが考えられる。
【０１１８】
本実施の形態にかかるコンテンツデータ表示装置は、具体例として表形式の状態遷移表に示されたように、操作入力に応じた処理および状態遷移がモードとイベントとイベント対象要素とのパラメータで特定され、特定された処理に対応するプログラムおよび状態遷移に対応するプログラムを読込んで実行する。
【０１１９】
そのため、操作入力に応じた処理および状態遷移を特定するステップから当該処理の実行および当該状態への遷移までを１つのプログラムで制御する制御方法に比べて処理を平易にすることができる。また、状態遷移表がこのような構成であるため、装置の制御を変更する必要が生じた場合であっても、状態遷移表を変更することで容易に対応できる。なお、上述の具体例では、複数の操作入力手段を備える装置において状態遷移表を用いて制御を行なっているが、言うまでもなく１つの操作入力手段を備える装置においても状態遷移表を用いた制御が可能であって、同様の効果を奏する。
【０１２０】
さらに、本実施の形態のように複数の操作入力手段を備える装置において状態遷移表を用いて制御を行なう場合、複数種類の操作入力手段に応じて複数のプログラムを用意する必要なく、構成を容易にできる。また、状態遷移表において実行すべき処理がないと指定することで各操作入力手段からの操作入力を排他的にできるため、イベントを受付けるか否かの判断処理を行なうことなく単純に状態遷移表に従って処理でき、機械的にペンやカーソルのイベント自体を受付けない構成に比べて処理が簡単になるという効果もある。
【０１２１】
なお、上述のように各操作入力手段での入力を排他的にすることなく、状態遷移表を用いていずれの操作入力手段で操作を行なった場合でも共通の処理が実行されるようにすることもできる。
【０１２２】
状態遷移表記録部９に記録される状態遷移表のうち、通常状態におけるいずれの操作入力手段での指示操作にも対応する処理を行なう際に用いる状態遷移表の具体例を図４０に挙げる。図４０に示される状態遷移表は、先に図３４に示されたペンモードで通常状態における指示操作に対する処理を行なうために用いる状態遷移表と、図３８に示されたカーソルモードで通常状態における指示操作に対する処理を行なうために用いる状態遷移表とが組合された状態遷移表となっている。
【０１２３】
いずれの操作入力手段でも指示操作可能な場合、フォーカスがすでにＯＮマスクの位置に移動している図３６に示される状態で決定キーが押下されたことが取得されると、モード「通常状態モード」、イベント「決定キー」、および要素「マスク」であるので、状態遷移処理部８において、図４０に示される状態遷移表より、この３つのパラメータよりマスク反転表示処理が特定され、ペンモードにおいてマスクでペンアップした場合と同様にＯＮマスクが解除されて反転表示される。このようにペンとカーソルとで同じ処理が特定され、対応する同じプログラムが実行されるので、ユーザはどちらのモードであるかを意識することなく操作入力を行なうことができて利便性が高められる。
【０１２４】
さらに、上述のコンテンツデータ表示装置で実行されるこれらの処理方法を、プログラムとして提供することもできる。このようなプログラムは、コンピュータに付属するフレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disc-Read Only Memory）、ＲＯＭ、ＲＡＭおよびメモリカードなどのコンピュータ読取り可能な記録媒体にて記録させて、プログラム製品として提供することもできる。あるいは、コンピュータに内蔵するハードディスクなどの記録媒体にて記録させて、プログラムを提供することもできる。また、ネットワークを介したダウンロードによって、プログラムを提供することもできる。
【０１２５】
提供されるプログラム製品は、ハードディスクなどのプログラム格納部にインストールされて実行される。なお、プログラム製品は、プログラム自体と、プログラムが記録された記録媒体とを含む。
【０１２６】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【０１２７】
【図１】本実施の形態にかかるコンテンツデータ表示装置の概観の具体例を示す図である。
【図２】一般的なコンテンツデータ表示装置のハードウェア構成の具体例を示す図である。
【図３】本実施の形態にかかるコンテンツデータ表示装置において操作入力に対応する処理を行なうときの機能構成の具体例を示す図である。
【図４】ユーザデータの具体例を示す図である。
【図５】コンテンツデータの具体例を示す図である。
【図６】レイアウトデータの要素データの具体例を示す図である。
【図７】レイアウトデータの行データの具体例を示す図である。
【図８】範囲指定処理を説明するフローチャートである。
【図９】入力モードを切替えを説明する図である。
【図１０】入力モードを切替えを説明する図である。
【図１１】範囲指定処理のステップＳ５での処理を説明するフローチャートである。
【図１２】範囲指定処理のステップＳ６での処理を説明するフローチャートである。
【図１３】ペンモードでマーク作成のための範囲指定を行なう際に用いる状態遷移表の具体例を示す図である。
【図１４】ペンモードでマーク作成のための範囲指定を行なう際に用いる状態遷移表の具体例を示す図である。
【図１５】画面状態および操作の具体例を示す図である。
【図１６】画面状態および操作の具体例を示す図である。
【図１７】画面状態および操作の具体例を示す図である。
【図１８】画面状態および操作の具体例を示す図である。
【図１９】画面状態および操作の具体例を示す図である。
【図２０】画面状態および操作の具体例を示す図である。
【図２１】画面状態および操作の具体例を示す図である。
【図２２】画面状態の具体例を示す図である。
【図２３】画面状態の具体例を示す図である。
【図２４】ペンモードでのマーク作成の状態遷移を示す図である。
【図２５】ペンモードでのマーク作成の状態遷移を示す図である。
【図２６】カーソルモードでマーク作成のための範囲指定を行なう際に用いる状態遷移表の具体例を示す図である。
【図２７】カーソルモードでマーク作成のための範囲指定を行なう際に用いる状態遷移表の具体例を示す図である。
【図２８】カーソルモードでのマーク作成の状態遷移を示す図である。
【図２９】カーソルモードでのマーク作成の状態遷移を示す図である。
【図３０】ペンモードでマスク作成のための範囲指定を行なう際に用いる状態遷移表の具体例を示す図である。
【図３１】ペンモードでマスク作成のための範囲指定を行なう際に用いる状態遷移表の具体例を示す図である。
【図３２】カーソルモードでマスク作成のための範囲指定を行なう際に用いる状態遷移表の具体例を示す図である。
【図３３】カーソルモードでマスク作成のための範囲指定を行なう際に用いる状態遷移表の具体例を示す図である。
【図３４】ペンモードで通常状態における指示操作に対する処理を行なう際に用いる状態遷移表の具体例を示す図である。
【図３５】画面状態の具体例を示す図である。
【図３６】画面状態および操作の具体例を示す図である。
【図３７】画面状態の具体例を示す図である。
【図３８】カーソルモードで通常状態における指示操作に対する処理を行なう際に用いる状態遷移表の具体例を示す図である。
【図３９】画面状態の具体例を示す図である。
【図４０】通常状態におけるいずれの操作入力手段での指示操作にも対応する処理を行なう際に用いる状態遷移表の具体例を示す図である。
【図４１】従来技術である複数種類の操作入力手段を有する装置における処理および状態の遷移の具体例を示す図である。
【図４２】従来技術である複数種類の操作入力手段を有する装置における処理および状態の遷移の具体例を示す図である。
【図４３】従来技術である複数種類の操作入力手段を有する装置における処理および状態の遷移の具体例を示す図である。
【符号の説明】
【０１２８】
１  キー入力部、２  キーイベント取得部、３  キーイベント対象要素探索部、４  モード設定部、５  ペン入力部、６  ペンイベント取得部、７  ペンイベント対象要素探索部、８  状態遷移処理部、９  状態遷移表記録部、１０  コンテンツデータ読込部、１１  ユーザデータ記録部、１２  レイアウトデータ生成部、１３  レイアウトデータ記録部、１４  表示部、１５  処理記録部、７０  ＣＰＵ、７１  ディスプレイ、７２  マウス、７３  タブレット、７４  主記憶装置、７５  外部記憶装置、７６  マイク、７７  通信デバイス、７８  キーボード、７９  バス、８０  スピーカ、１２０〜１２８  要素データ、２００，２０１  行データ、３００，３０１  ユーザデータ。
【図１】
2006209612.tif 000003
【図２】
2006209612.tif 000004
【図３】
2006209612.tif 000005
【図４】
2006209612.tif 000006
【図５】
2006209612.tif 000007
【図６】
2006209612.tif 000008
【図７】
2006209612.tif 000009
【図８】
2006209612.tif 000010
【図９】
2006209612.tif 000011
【図１０】
2006209612.tif 000012
【図１１】
2006209612.tif 000013
【図１２】
2006209612.tif 000014
【図１３】
2006209612.tif 000015
【図１４】
2006209612.tif 000016
【図１５】
2006209612.tif 000017
【図１６】
2006209612.tif 000018
【図１７】
2006209612.tif 000019
【図１８】
2006209612.tif 000020
【図１９】
2006209612.tif 000021
【図２０】
2006209612.tif 000022
【図２１】
2006209612.tif 000023
【図２２】
2006209612.tif 000024
【図２３】
2006209612.tif 000025
【図２４】
2006209612.tif 000026
【図２５】
2006209612.tif 000027
【図２６】
2006209612.tif 000028
【図２７】
2006209612.tif 000029
【図２８】
2006209612.tif 000030
【図２９】
2006209612.tif 000031
【図３０】
2006209612.tif 000032
【図３１】
2006209612.tif 000033
【図３２】
2006209612.tif 000034
【図３３】
2006209612.tif 000035
【図３４】
2006209612.tif 000036
【図３５】
2006209612.tif 000037
【図３６】
2006209612.tif 000038
【図３７】
2006209612.tif 000039
【図３８】
2006209612.tif 000040
【図３９】
2006209612.tif 000041
【図４０】
2006209612.tif 000042
【図４１】
2006209612.tif 000043
【図４２】
2006209612.tif 000044
【図４３】
2006209612.tif 000045