(57)【要約】【課題】複数の端末装置を連係させて動作させる場合において、ユーザが所望する動作効果を得ることが可能な技術を提供する。【解決手段】自装置を含む複数の情報処理装置における画面のタッチ操作情報を管理する管理手段と、前記管理手段により管理されているタッチ操作情報に基づいて、ユーザによる画面のタッチ操作が情報処理装置間をまたいだ操作であるか否かを判定する判定手段と、前記判定手段によりユーザによる画面のタッチ操作が情報処理装置間をまたいだ操作であると判定された場合、前記複数の情報処理装置の画面を一つの画面とみなし、前記タッチ操作に応じて、自装置の画面の表示を制御する表示制御手段と、を有することによって課題を解決する。【選択図】図２Ｂ
2015125614.tif 000002
【特許請求の範囲】
【請求項１】
自装置を含む複数の情報処理装置における画面のタッチ操作情報を管理する管理手段と、
前記管理手段により管理されているタッチ操作情報に基づいて、ユーザによる画面のタッチ操作が情報処理装置間をまたいだ操作であるか否かを判定する判定手段と、
前記判定手段によりユーザによる画面のタッチ操作が情報処理装置間をまたいだ操作であると判定された場合、前記複数の情報処理装置の画面を一つの画面とみなし、前記タッチ操作に応じて、自装置の画面の表示を制御する表示制御手段と、
を有する情報処理装置。
【請求項２】
前記判定手段は、前記管理手段により管理されている第一の情報処理装置のタッチ操作情報と、第二の情報処理装置のタッチ操作情報とに基づいて、ユーザによる画面のタッチ操作が前記第一の情報処理装置と、前記第二の情報処理装置とをまたいだ操作であるか否かを判定する請求項１記載の情報処理装置。
【請求項３】
前記判定手段は、前記第一の情報処理装置のタッチ操作情報が示すドラッグ操作のタイミングと、前記第二の情報処理装置のタッチ操作情報が示すドラッグ操作のタイミングとの差が予め定められた時間以内の場合、ユーザによる画面のタッチ操作が前記第一の情報処理装置と、前記第二の情報処理装置とをまたいだピンチ操作であると判定する請求項２記載の情報処理装置。
【請求項４】
前記表示制御手段は、前記判定手段によりユーザによる画面のタッチ操作が情報処理装置間をまたいだ操作でないと判定された場合であって、前記タッチ操作が他の情報処理装置に対するタッチ操作であった場合、前記他の情報処理装置の画面の表示を俯瞰した表示を自装置の画面に表示する請求項１乃至３何れか１項記載の情報処理装置。
【請求項５】
前記表示制御手段は、前記他の情報処理装置の画面の表示を強調して俯瞰した表示を自装置の画面に表示する請求項４記載の情報処理装置。
【請求項６】
前記表示制御手段は、前記判定手段によりユーザによる画面のタッチ操作が情報処理装置間をまたいだ操作でないと判定された場合であって、前記タッチ操作がサムネール画像を表示中の他の情報処理装置に対するタップ操作であった場合、前記タップされたページのドキュメントを含むサムネール画像を自装置の画面に表示する請求項１乃至３何れか１項記載の情報処理装置。
【請求項７】
前記表示制御手段は、前記タップされたページの前のページのドキュメント、又は後のページのドキュメントを含むサムネール画像を自装置の画面に表示する請求項６記載の情報処理装置。
【請求項８】
自装置を含む複数の情報処理装置をグルーピングして連携動作させる連携動作モードに係る設定を受け付ける設定画面を表示する表示手段を更に有し、
前記管理手段は、前記表示手段により表示された前記設定画面を介して前記連携動作モードが設定された場合、前記グルーピングされた自装置を含む複数の情報処理装置における画面のタッチ操作情報を管理する請求項１乃至７何れか１項記載の情報処理装置。
【請求項９】
前記表示手段は、前記連携動作モードにおいて連携動作する複数の情報処理装置の配置情報の設定を受け付ける前記設定画面を表示し、
前記表示制御手段は、前記設定画面で設定された自装置の配置情報に基づいて、前記複数の情報処理装置の画面を一つの画面とみなし、前記タッチ操作に応じて、自装置の画面の表示を制御する請求項８記載の情報処理装置。
【請求項１０】
前記管理手段は、前記複数の情報処理装置において自装置が他の情報処理装置の情報を管理するマスター装置である場合、前記複数の情報処理装置における画面のタッチ操作情報を管理する請求項１乃至９何れか１項記載の情報処理装置。
【請求項１１】
前記複数の情報処理装置において自装置が他の情報処理装置の情報を管理するマスター装置である場合、前記判定手段による判定結果を前記他の情報処理装置に送信する送信手段を更に有する請求項１乃至１０何れか１項記載の情報処理装置。
【請求項１２】
コンテンツを表示する表示手段と、
他の情報処理装置と連携して動作する連携動作モードの設定を受け付ける設定手段と、
前記連携動作モードが設定された状態で自装置の画面におけるタッチ操作と、他の情報処理装置におけるタッチ操作との組み合わせが拡大操作を示す場合、前記コンテンツを拡大して表示する表示制御手段と、
を有する情報処理装置。
【請求項１３】
情報処理装置が実行する情報処理方法であって、
自装置を含む複数の情報処理装置における画面のタッチ操作情報を管理する管理ステップと、
前記管理ステップにより管理されているタッチ操作情報に基づいて、ユーザによる画面のタッチ操作が情報処理装置間をまたいだ操作であるか否かを判定する判定ステップと、
前記判定ステップによりユーザによる画面のタッチ操作が情報処理装置間をまたいだ操作であると判定された場合、前記複数の情報処理装置の画面を一つの画面とみなし、前記タッチ操作に応じて、自装置の画面の表示を制御する表示制御ステップと、
を含む情報処理方法。
【請求項１４】
情報処理装置が実行する情報処理方法であって、
コンテンツを表示する表示ステップと、
他の情報処理装置と連携して動作する連携動作モードの設定を受け付ける設定ステップと、
前記連携動作モードが設定された状態で自装置の画面におけるタッチ操作と、他の情報処理装置におけるタッチ操作との組み合わせが拡大操作を示す場合、前記コンテンツを拡大して表示する表示制御ステップと、
を含む情報処理方法。
【請求項１５】
コンピュータを、請求項１乃至１２何れか１項記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、携帯端末はひとつのコンピュータとして機能するため、通常は単独で使用されていた。しかし近年の携帯端末の普及に伴って、個人又は企業で複数の携帯端末を保有するケースが増えてきている。このような携帯端末の普及に伴い、複数の携帯端末を連携して動作させる処理が考えられている。特許文献１には、一台の携帯端末に対して操作があったときに、その操作情報を他の携帯端末に送信し、複数の携帯端末での表示を連携処理する技術が開示されている。より具体的には、２台の携帯端末を隣接して並べて書籍データを見開き２ページで表示する場合、一方の携帯端末にユーザによるページめくりの操作があった場合、もう片方の携帯端末にその操作情報を送信して同時にページめくり処理を行うという技術である。この技術によりユーザは、２台の携帯端末が連携して、見開きページで表示されたドキュメントデータを、書籍をめくるような操作により閲覧することが可能となる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１９８３１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし従来の技術において、一台の携帯端末の操作を他の端末に送信するケースでは、ユーザの操作情報を全携帯端末で共有するため、ユーザが複数の携帯端末に対して同時に操作を行った場合、ユーザが所望する動作効果を得ることができない可能性がある。例えば、携帯端末の画面操作方法としてピンチという方法がある。これはユーザが二本の指を同時に操作画面に接触させ、指を接触させたまま二本の指の間の距離を広げたり狭めたりする操作方法である。この操作は、表示されている画像を拡大又は縮小操作するときに用いられ、それぞれピンチアウト、ピンチインとも呼ばれている。ユーザがこのピンチ操作を一台の携帯端末上で行った場合は、この操作情報は他の携帯端末に送信されるため、連携している携帯端末の画面は連動して拡大又は縮小されることになり、ユーザは所望の動作効果を得ることができる。しかし、ユーザが複数の携帯端末上でこのピンチ操作を行った場合、即ち、一台の携帯端末に左手の何れかの１本の指を接触させ、他の一台の携帯端末に右手の何れかの１本の指を接触させてピンチ操作を行った場合、それぞれの携帯端末ではピンチ操作とは認識されない。その結果、ユーザが所望する動作効果を得ることができない場合があった。
本発明は、複数の端末装置を連係させて動作させる場合において、ユーザが所望する動作効果を得ることが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００５】
そこで、本発明の端末装置は、自装置を含む複数の情報処理装置における画面のタッチ操作情報を管理する管理手段と、前記管理手段により管理されているタッチ操作情報に基づいて、ユーザによる画面のタッチ操作が情報処理装置間をまたいだ操作であるか否かを判定する判定手段と、前記判定手段によりユーザによる画面のタッチ操作が情報処理装置間をまたいだ操作であると判定された場合、前記複数の情報処理装置の画面を一つの画面とみなし、前記タッチ操作に応じて、自装置の画面の表示を制御する表示制御手段と、を有する。
【発明の効果】
【０００６】
本発明によれば、複数の端末装置を連係させて動作させる場合において、ユーザが所望する動作効果を得ることが可能な技術を提供することができる。
【図面の簡単な説明】
【０００７】
【図１Ａ】携帯端末装置の一例を示す図である。
【図１Ｂ】携帯端末装置の構成の一例を示す図である。
【図１Ｃ】携帯端末装置を複数並べた場合の地図表示の一例を示す図である。
【図１Ｄ】携帯端末装置を複数並べた場合のドキュメント表示の一例を示す図である。
【図２Ａ】シーケンス処理の一例を示す図（その１）である。
【図２Ｂ】シーケンス処理の一例を示す図（その２）である。
【図３Ａ】携帯端末装置の処理の一例を示すフローチャート（その１）である。
【図３Ｂ】携帯端末装置の処理の一例を示すフローチャート（その２）である。
【図４Ａ】属性情報の設定画面の一例を示す図（その１）である。
【図４Ｂ】属性情報の設定画面の一例を示す図（その２）である。
【図４Ｃ】属性情報の設定画面の一例を示す図（その３）である。
【図５】ブロードキャストデータの一例を示す図である。
【図６】携帯端末装置間の時刻ずれを計数するシーケンスの一例を示す図である。
【図７】携帯端末装置の処理の一例を示すフローチャート（その３）である。
【図８】座標系の一例を示す図である。
【図９Ａ】携帯端末装置の処理の一例を示すフローチャート（その４）である。
【図９Ｂ】携帯端末装置の処理の一例を示すフローチャート（その５）である。
【図９Ｃ】携帯端末装置の処理の一例を示すフローチャート（その６）である。
【図９Ｄ】携帯端末装置の処理の一例を示すフローチャート（その７）である。
【図９Ｅ】携帯端末装置の処理の一例を示すフローチャート（その８）である。
【図１０Ａ】ユーザ操作イベント情報の一例を示す図（その１）である。
【図１０Ｂ】ユーザ操作イベント情報の一例を示す図（その２）である。
【図１１Ａ】ユーザ操作イベント情報の一例を示す図（その３）である。
【図１１Ｂ】ユーザ操作イベント情報の一例を示す図（その４）である。
【図１１Ｃ】ユーザ操作イベント情報の一例を示す図（その５）である。
【図１２Ａ】各携帯端末装置のドラッグ操作に対する状態の一例を示す図である。
【図１２Ｂ】ピンチ操作の拡大縮小率の算出方法の概要の一例を示す図である。
【図１３Ａ】携帯端末装置の表示画面の一例を示す図（その１）である。
【図１３Ｂ】携帯端末装置の表示画面の一例を示す図（その２）である。
【図１４Ａ】携帯端末装置の表示画面の一例を示す図（その３）である。
【図１４Ｂ】携帯端末装置の表示画面の一例を示す図（その４）である。
【図１４Ｃ】携帯端末装置の表示画面の一例を示す図（その５）である。
【図１４Ｄ】携帯端末装置の表示画面の一例を示す図（その６）である。
【発明を実施するための形態】
【０００８】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
＜実施形態１＞
図１Ａは、本実施形態における携帯端末装置（情報処理装置）の一例を示す図である。本実施形態の携帯端末装置１０１は、タッチセンサ付き表示装置（以下、単に表示装置という）１０２及びアプリケーションの終了指示やホーム画面に戻るためのハードウェアボタン（アプリケーション終了ボタン）１０３を備えている。ユーザが表示装置１０２に表示された画面を指やタッチペン等で操作することにより、携帯端末装置１０１がアプリケーションを動作させる。
【０００９】
図１Ｂは、携帯端末装置１０１の構成の一例を示す図である。ＣＰＵ１１１は、ＲＯＭ１１３や外部メモリ１２１等に記憶されているプログラムをＲＡＭ１１２に展開して実行する。これにより、ＣＰＵ１１１は、携帯端末装置１０１の機能（アプリケーションの機能、ＯＳの機能を含む）、後述するシーケンス図及びフローチャートの処理を実現する。また、ＣＰＵ１１１は、システムバス１１４に接続されている各デバイスを総括的に制御する。ＲＡＭ１１２は、ＣＰＵ１１１の主メモリ、ワークエリア等としても機能している。ＲＯＭ１１３は、各種プログラム及びデータを格納している。
表示操作部Ｉ／Ｆ１１５は、表示操作部１１９への情報の表示制御を行う。表示操作部１１９は、表示機能を備えると共にユーザからの入力を受け付ける入力機能を備えるタッチパネルであり、図１Ａの表示装置１０２に相当する。ネットワークＩ／Ｆ１１８は、ネットワークモジュール１１６の制御を行い、無線ネットワーク通信を実現する。外部メモリＩ／Ｆ１１７は、例えばフラッシュメモリー、Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｉｓｋ等の外部メモリ１２１とのアクセスを制御する。
【００１０】
外部メモリ１２１は、オペレーティングシステム（以下、単にＯＳという）１２２のプログラムをはじめ各種アプリケーション１２５のプログラム等を記憶している。クライアント装置は、上記のプログラムを外部メモリ１２１に保存したり、外部メモリ１２１から読み取ったりすることができる。
ＯＳ１２２は、アプリケーション１２５を動作させるためのアプリケーションフレームワーク１２３、及び各種ユーティリティ関数を格納したライブラリ１２４を備えている。アプリケーション１２５は、アプリケーション実行コードを備えている。また、アプリケーション１２５は、携帯端末装置１０１の表示装置１０２に表示するデータを格納しておくためのユーザファイル保存領域１２６、自身を含む関連する携帯端末装置の端末属性を保存しておくための端末属性保存領域１２７を備えている。更に、アプリケーション１２５は、携帯端末装置１０１の表示装置１０２に表示している画面の状態を保持しておくための表示状態保存領域１２８を備えている。
【００１１】
通常、携帯端末装置は独立して動作する装置であるため、ユーザは携帯端末装置を単独で使用することが多い。しかし携帯端末装置の普及に伴い、個人で複数の携帯端末装置を有していたり、企業で複数の共有可能な携帯端末装置を有していたりするケースがある。このような状況に応じ、複数の携帯端末装置を並べて、並べた複数の携帯端末装置の画面をひとつの仮想的な画面と見立てて、より大きな表示領域として確保する方法がある。
図１Ａの表示装置１０２には地図が表示されている。この携帯端末装置１０１を４台、例えば図１Ｃのように２×２の配置で並べて図１Ａの１台の携帯端末装置１０１に表示していた地図の一部を、より大きく表示することが可能なアプリケーションがある。図１Ｃでは、各携帯端末装置を携帯端末装置１３１、１３２、１３３、１３４とした。図１Ｃのケースでは地図の一部を表示しているが、他にも図１Ｄのように携帯端末装置１０１を３台並べて、各携帯端末装置にドキュメントの１ページずつを表示することで、複数のページを表示することが可能なアプリケーションもある。なお、図１Ｄでは、各携帯端末装置を携帯端末装置１４１、１４２、１４３とした。
【００１２】
このように複数の携帯端末装置を連携させて画面を共有する場合、ユーザによる画面操作にはいくつか方法がある。例えば、図１Ｃにおいて、右下の携帯端末装置１３４が表示している地図を移動させるためにユーザがドラッグ操作を行った場合を考える。このとき、携帯端末装置１３４は、そのドラッグ操作の操作情報を他の３台の携帯端末装置１３１、１３２、１３３に送信し、表示している地図全体を移動させる。
また、例えば図１Ｄにおいて、表示ページを変更するために、一番右側の携帯端末装置１４３に対してユーザがドラッグ操作を行った場合を考える。このとき、携帯端末装置１４３は、そのドラッグ操作の操作情報を他の２台の携帯端末装置１４１、１４２に送信し、表示しているページ全体を移動する。このように、複数の携帯端末装置を組み合わせて、より大きなひとつの画面を構成した場合、ひとつの携帯端末装置が、操作情報を他の連携している携帯端末装置に送信することにより複数の携帯端末装置と連携して画面表示をすることが可能となる。
【００１３】
しかし、ユーザが複数の携帯端末装置に対して同時にタッチするような操作を行った場合、ユーザが所望する表示にならないケースが考えられる。以下、より具体的に説明する。
まず、携帯端末装置の表示画面の操作方法として、ユーザが２本の指を画面に接触させ、そのまま指の間隔を広げたり狭めたりする「ピンチ」という操作がある。ユーザがこのピンチ操作を行うことにより、表示されている画像を拡大したり縮小したりすることが可能となる。ユーザがこのピンチ操作を単独の携帯端末装置で行った場合、前記携帯端末装置は、ユーザの操作をピンチ操作として認識することができる。
ユーザが図１Ｃの右上の携帯端末装置１３２と、右下の携帯端末装置１３４とのそれぞれを指でタッチし、ピンチ操作を行った場合、ユーザは全体の地図表示がピンチ処理されることを期待する。しかし、それぞれの携帯端末装置は、ユーザのピンチ操作を自身に対する単独の操作としてみた場合、ドラッグ操作として認識するため、全体に対するピンチ処理を行うことができないという課題がある。また、ユーザが右下の携帯端末装置１３４に対してピンチ操作を行った場合、ユーザはその携帯端末装置１３４のみの表示領域を拡大し、その他の表示領域はそのままにしたいケースも考えられる。ユーザがこのような操作処理を行うための方法について説明する。
【００１４】
複数の携帯端末装置上での表示処理の説明を大きく２つに分けて説明する。
まず、ユーザが複数の携帯端末装置を並べて設置し、それらの配置位置の設定を行いグルーピングする方法を説明する。複数の携帯端末装置の配置及びグルーピングができたら単独又は複数の携帯端末装置に対するユーザ操作に対応した処理の流れを説明する。また、それぞれの説明について、はじめに時系列処理シーケンスで全体的な流れを説明した後、フローチャートを用いて携帯端末装置の処理のより具体的な内容を説明する。
なお、この複数の携帯端末装置から構成されるシステムでは、ＣＰＵ１１１を有する複数の携帯端末装置が各々独立した独自処理を行いながら連携する点が特徴である。
【００１５】
図２は、本実施形態の制御シーケンスの一例を示す図である。
図２Ａは、ユーザが複数の携帯端末装置を並べて設置し、それらの配置位置の設定を行いグルーピングする際のシーケンス処理の一例を示す図である。なお、全ての携帯端末装置には、複数の携帯端末装置で連携して操作及び表示処理を行うためのアプリケーションがインストールされているものとする。本実施形態では、そのアプリケーションを、図１Ｂに示されるアプリケーション１２５として説明する。
図２Ｂは、単独又は複数の携帯端末装置に対するユーザ操作に対応したシーケンス処理の一例を示す図である。なお、携帯端末装置の数は任意であるが、このシーケンス図では説明をする上で必要十分な台数である３台とする。以降の説明では携帯端末装置が４台以上のケースも出てくるが、その場合でも、携帯端末装置は、図２と同様の処理を行うことが可能である。
【００１６】
まず図２Ａにおいて、ユーザ２０１は、携帯端末装置２０２、２０３、２０４を用意し、それらを所望の配置に並べる。次にＳ２１１において、ユーザ２０１は、携帯端末装置２０２の表示操作部１１９を操作して、アプリケーション１２５の起動指示を行う。このアプリケーション起動指示に応じて携帯端末装置２０２は、アプリケーション１２５を起動する。ユーザ２０１は、他の携帯端末装置２０３、２０４に対しても同様にアプリケーション起動指示を行う（Ｓ２１３、Ｓ２１５）。そのアプリケーション起動指示に対し、それぞれの携帯端末装置２０３、２０４は、同様にアプリケーション１２５を起動する（Ｓ２１４、Ｓ２１６）。
続いてユーザ２０１は、携帯端末装置の配置に関する情報を、表示操作部１１９を介してアプリケーション１２５上で設定する。なお、この設定の詳細は後述するフローチャートを用いて説明する。ここでは、端末の配置に関する属性情報設定のタイミングについて説明する。まずユーザ２０１は、何れかの携帯端末装置のアプリケーション１２５上にて端末の属性情報を設定する。なおこの属性情報とは、携帯端末装置が所属するグループＩＤ、そのグループＩＤに属する端末数及び配置位置の情報のことである。
【００１７】
Ｓ２１７において、ユーザ２０１は、携帯端末装置２０２の表示操作部１１９を操作して、端末属性設定を行う。携帯端末装置２０２は、ユーザ２０１の端末属性設定を受け付け、Ｓ２１８において自身の端末属性保存領域１２７に属性情報を保存する。この後、携帯端末装置２０２は、この属性情報をネットワークにブロードキャストする。
携帯端末装置２０２によるブロードキャストは１回の送信であるが、説明の便宜上、Ｓ２１９及びＳ２２１の２回の送信として説明している。携帯端末装置２０３は、Ｓ２１９のブロードキャストを受け、Ｓ２２０において携帯端末装置２０２の属性情報を端末属性保存領域１２７に保存する。同様に、携帯端末装置２０４は、Ｓ２２１のブロードキャストを受け、Ｓ２２２において携帯端末装置２０２の属性情報を端末属性保存領域１２７に保存する。
ユーザ２０１は、携帯端末装置の配置情報等を特定するために全ての携帯端末装置に対して上記の通りに属性設定を行う。Ｓ２２３のユーザ２０１による携帯端末装置２０３の属性設定から、Ｓ２２８の携帯端末装置２０４による属性情報の保存までの処理は上述したシーケンス処理と同様の処理となるため説明を省略する。また、Ｓ２２９のユーザ２０１による携帯端末装置２０４の属性設定から、Ｓ２３４の携帯端末装置２０２による属性情報の保存までの処理も、上述したシーケンス処理と同様の処理となるため説明を省略する。ここまでの処理において、各携帯端末装置の所属するグループＩＤや携帯端末の配置情報等が確定することになる。
【００１８】
各携帯端末装置の配置情報が確定すると、同じグループＩＤに所属する携帯端末装置間で、マスターとスレーブとを決定する。マスターとスレーブとの決定方法はいくつか手法があるが、本実施形態では以下の方法とする。
ユーザ２０１が携帯端末装置の属性設定の際に、その携帯端末装置の配置位置を指定する。このとき、携帯端末装置の配置が、一番左、かつ、一番上のものを１として、左から右、上から下の優先順位で自然数のＩＤが割り当てられていくものとする。例えば図１Ｃのような並びの場合、左上の携帯端末装置が１、右上が２、左下が３、右下が４、というＩＤが割り当てられるものとする。この割当後、各携帯端末装置は、ＩＤが１の携帯端末装置をマスター、他のＩＤの携帯端末装置をスレーブと決定する。
なお、マスター及びスレーブの決定方法として、他にも例えばＵＵＩＤ（Ｕｎｉｖｅｒｓａｌ  Ｕｎｉｑｕｅ  Ｉｄｅｎｔｉｆｉｅｒ）の比較により一番大きい又は一番小さいＩＤのものをマスターにする方法等がある。
【００１９】
図２Ａのシーケンスにおいて、携帯端末装置２０２がマスターに決定されたとする。このマスターの携帯端末装置２０２は、今後このグルーピングされた複数の携帯端末装置上でのユーザ操作イベント種別の判定を担う。マスターの携帯端末装置２０２は、そのユーザ操作イベント種別の判定を、操作イベント発生時刻を基に行うことがある。そのため、携帯端末装置２０２は、自身（自装置）を起点として、各携帯端末間の時刻調整を行う。なお時刻調整の方法の詳細は後述し、ここでは時刻調整のシーケンスについて説明する。
Ｓ２３５において、マスターの携帯端末装置２０２は、他の１台の携帯端末装置、例えば携帯端末装置２０３に時刻差測定リクエストを発行する。携帯端末装置２０３は、このリクエストを受けて、Ｓ２３６において時刻合わせ測定リプライを携帯端末装置２０２に返答する。携帯端末装置２０２は、このリプライを受けて、Ｓ２３７において携帯端末装置２０２、２０３間の時刻差を計算し、その計算結果を端末属性保存領域１２７に保存しておく。マスターの携帯端末装置２０２は、この処理を全てのスレーブの携帯端末装置２０３、２０４に対して行う。
Ｓ２３８からＳ２４０までにおいて、マスターの携帯端末装置２０２は、残るもう一台のスレーブの携帯端末装置２０４に対して同様の処理を行う。ここまでの処理で、各携帯端末装置は、表示操作部１１９を介したユーザ２０１の操作により、各携帯端末装置のアプリケーション１２５を立ち上げ、配置情報等の携帯端末装置の属性情報を設定し、時刻合わせを行い、携帯端末間の連携処理をするための準備を完了する。
【００２０】
続いて携帯端末装置のアプリケーション１２５は、ユーザ２０１による操作を受け付けて、ファイルを開いて表示する。そして、ユーザ２０１は、携帯端末装置が表示する前記ファイルに関する操作を表示操作部１１９を介して行う。
図２Ｂのシーケンス処理では、まずＳ２５１においてユーザ２０１は、任意の携帯端末装置の表示操作部１１９を介して表示したいファイルを選択する。ここでは携帯端末装置２０２にユーザ２０１が所望するファイルがあり、ユーザ２０１は、そのファイルを選択するものとする。
Ｓ２５２及びＳ２５３において、携帯端末装置２０２は、ユーザ操作に応じて開いたファイルをそれぞれ携帯端末装置２０３、２０４に送信する。それぞれの携帯端末装置２０２、２０３、２０４は、各々Ｓ２５４、Ｓ２５５、Ｓ２５６にてファイルを表示する。
【００２１】
続いてユーザ２０１は、携帯端末装置が表示するファイルに対して表示操作部１１９を介して操作を行う。この操作について、以下の３つのケースについて説明する。
まず、ユーザ２０１が携帯端末装置２０２のみ上で操作を行った場合である。次に、ユーザ２０１が携帯端末装置２０３のみ上で操作を行った場合である。そして、ユーザ２０１が２つの携帯端末装置２０３、２０４上でピンチ等の操作を行った場合である。以下、それぞれについて説明する。
まずユーザ２０１がＳ２５７において、携帯端末装置２０２のみ上で操作を行う。このとき、マスターである携帯端末装置２０２は、Ｓ２５８において他の携帯端末装置上でのユーザ操作がなかったと判定し、Ｓ２５９及びＳ２６０において、他の携帯端末装置２０３、２０４に対してその操作情報（タッチ操作情報）を送信する。この操作情報を受信した他の携帯端末装置２０３、２０４は、その操作情報に応じた処理を行う。
次に、ユーザ２０１は、携帯端末装置２０３のみ上で操作を行う。この操作を受けた携帯端末装置２０３は、自身はスレーブであるため、Ｓ２６２において一度この操作情報をマスターの携帯端末装置２０２に送信する。マスターの携帯端末装置２０２は、Ｓ２６４において、自身又は他の携帯端末装置からの操作情報がないため、このユーザ操作は携帯端末装置２０３のみ上で発生したと判定する。
続いて、携帯端末装置２０２は、Ｓ２６４及びＳ２６５において、他の携帯端末装置２０３、２０４に対してそのユーザ操作イベント情報を送信する。そして各携帯端末装置２０２、２０３、２０４は、そのユーザ操作に応じた処理を行う。
【００２２】
次に、ユーザ２０１が複数の携帯端末に対して同時に操作を行う場合について説明する。より具体的には、Ｓ２６６及びＳ２６７においてユーザ２０１は、携帯端末装置２０３、２０４に対して同時に操作を行う。この場合、それぞれのユーザ操作に対応して、Ｓ２６８及びＳ２６９においてユーザ操作のあった携帯端末装置２０３、２０４は、そのユーザ操作イベント情報をマスターの携帯端末装置２０２に送信する。
続いて、携帯端末装置２０２は、Ｓ２６８及びＳ２６９のユーザ操作イベントが時間的に近接しているため、Ｓ２７０において複数携帯端末装置にまたがるユーザ操作であると判定する。なお、ここでいう時間的に近接しているとは、予め定められた時間よりも短い場合のことをいう。マスターの携帯端末装置２０２は、これらの個別のユーザ操作イベントをひとつのイベントとして変換し、Ｓ２７１及びＳ２７２において他の携帯端末装置２０３、２０４に送信する。各携帯端末装置２０２、２０３、２０４は、このユーザ操作イベント情報に応じた処理を行う。
このように、マスターの携帯端末装置２０２は、自装置に対するユーザ操作に関する操作情報と、自装置と同一のグループに属する他のスレーブの携帯端末装置から受信したユーザ操作に関する操作情報とを管理する。そして、携帯端末装置２０２は、管理している操作情報に基づいて、ユーザ操作が複数の携帯端末装置間（情報処理装置間）をまたいだ操作であるか否かを判定し、その判定結果をスレーブの携帯端末装置に送信する。
以上が、ユーザが複数の携帯端末装置を配置してから、携帯端末装置が実際のユーザ操作に応じた処理を行うまでの全体の流れを説明するためのシーケンスの説明である。次に、このシーケンスに沿って、各携帯端末装置の処理についてフローチャートを用いて詳細に説明する。
【００２３】
図３Ａ及び図３Ｂは、図２Ａの携帯端末装置の設定シーケンスにおいて各携帯端末装置が実行する処理の一例を示すフローチャートである。図２Ａでは処理をシーケンシャルに説明しているが、携帯端末装置は、Ｓ２１９等のブロードキャストを任意のタイミングで受信するため、ブロードキャストイベント受信処理をイベント割り込みに対するコールバック関数を設定することにより行う。図３Ａのフローチャートは、各携帯端末装置のアプリケーションのメイン処理である。図３Ｂのフローチャートは、各携帯端末装置のブロードキャストイベント割り込み発生に対するコールバック関数処理である。
Ｓ３０１において、ＣＰＵ１１１は、ユーザからアプリケーション１２５の立ち上げ指示を受ける。ＣＰＵ１１１は、この立ち上げ指示を受けると、アプリケーション１２５の実行コードを外部メモリ１２１からＲＡＭ１１２にロードして、ＲＡＭ１１２上で実行する。
Ｓ３０２において、Ｓ３０１で起動したアプリケーション１２５は、他の携帯端末装置からのブロードキャストイベント発生時の割り込みイベントに対するコールバック関数を設定する。この設定により、アプリケーション１２５は、他の携帯端末装置からブロードキャストイベントを受信した際、割り込み処理により図３Ｂの処理を実行する。
【００２４】
図３Ｂにおいて、アプリケーション１２５は、ブロードキャストイベントを受信した際、Ｓ３２１において、ブロードキャストイベントからイベント内容を取得する。このブロードキャストイベントの詳細については後述する。
Ｓ３２２において、アプリケーション１２５は、受信した携帯端末装置の属性情報であるイベント内容を端末属性保存領域１２７に保存する。アプリケーション１２５は、ブロードキャストイベントを受信した際、割り込み処理としてこの処理を実行する。
図３Ａの説明に戻る。
Ｓ３０３において、アプリケーション１２５は、携帯端末装置の属性設定画面を表示して、ユーザから属性情報の設定を受ける。
【００２５】
図４Ａから図４Ｃまでは、Ｓ３０３においてアプリケーション１２５が携帯端末装置の表示操作部１１９に表示し、ユーザからの属性情報の入力（設定）を受ける設定画面の一例を示す図である。
アプリケーション１２５は、図４Ａの設定画面において携帯端末装置のグループＩＤ及び端末数の入力をユーザから受ける。図４Ａにおいて、設定画面６０１は、グループＩＤ及び端末数の入力を受け付ける設定画面である。設定画面６０１には、グループＩＤ入力領域６０２、端末数入力領域６０３、次の入力に進むためのボタン６０４、処理を中止するためのボタン６０５が表示されている。ユーザはこの設定画面６０１において、グループＩＤと端末数とを入力する。
グループＩＤは自然数であり、ユーザは、組み合わせる端末に対して同じグループＩＤを入力する。図４Ａの例では１と入力されているが、この数字は同じグループの携帯端末装置間で同じ数字であれば任意の数字でよい。このグループＩＤは、他のユーザがもし近くの場所で同時刻に同じように複数の携帯端末装置を組み合わせて使用する場合、一方のグループの端末における操作情報が、もう一方のグループの端末に影響しないようにするために用意される。即ち、ユーザがある携帯端末装置を操作した場合、前記携帯端末装置がその操作情報にグループＩＤを付加して他の携帯端末装置に送信するようにすることで、ユーザは、同じグループＩＤの携帯端末装置を操作することが可能となる。
【００２６】
また、ユーザは、端末数入力領域６０３に組み合わせる携帯端末装置の台数（端末数）を入力する。図４Ａの例では４台と入力されている。ユーザは、グループＩＤ及び端末数の入力完了後、次の設定に進むためボタン６０４を選択（押下）する。
次にユーザは、図４Ｂの設定画面６１０を介して携帯端末装置の配置等の設定を行う。携帯端末の配置形態を設定するための設定画面６１０には、配置パターンの選択肢６１１、６１２が表示されている。また、設定画面６１０には、前の設定画面に戻るための「戻る」ボタン６１３、次の設定に進むための「次へ」ボタン６１４、設定をキャンセルするためのキャンセルボタン６１５が表示されている。
ユーザは、上述の設定画面６０１で端末数を４台と入力したため、その４台の携帯端末装置の配置を選択肢６１１、６１２の何れかから選択する。ユーザは、配置の選択が完了したら次の画面に進むため、「次へ」ボタン６１４を押下する。
【００２７】
次にユーザは、図４Ｃの設定画面６２１を介して端末の配置位置を設定する。設定画面６２１には、配置位置を指定するためのアイコン６２２、前の設定画面に戻るための「戻る」ボタン６２３、携帯端末装置の設定を完了するための「完了」ボタン６２４、設定をキャンセルするためのキャンセルボタン６２５が表示されている。
ユーザは、携帯端末装置の配置位置指定を、該当の携帯端末装置が配置されている位置のアイコン６２２を押下することによって指定する。例えばユーザが設定画面６１０で携帯端末装置の配置パターンとして選択肢６１１を選択したとする。そして、該当の携帯端末装置が右上に配置されている場合、ユーザは、設定画面６２１で右上のアイコン６２２を押下することにより前記携帯端末装置の配置位置を指定する。ユーザは、設定を完了後、「完了」ボタン６２４を押下する。これにより、複数の携帯端末装置が連携動作するモードである「連携動作モード」の設定が完了する。
以上の処理により、ユーザは複数の携帯端末装置を連携させて使用する際に、所望の配置で連携させて使用することができるようになる。これにより、ユーザは、例えば携帯端末装置に表示させるコンテンツに応じて柔軟に携帯端末装置の配置を設定することができる。
【００２８】
図３Ａの説明に戻る。
Ｓ３０４において、アプリケーション１２５は、自身の携帯端末装置のＩＤを決定する。より具体的には、アプリケーション１２５は、設定画面６０１、６１０、６２１を介したユーザの入力に基づいてＩＤを決定する。先に説明したように、決定されるＩＤは自然数であり、ＩＤの優先順位は携帯端末装置の配置が左から右、上から下の順番とする。例えば、設定画面６２１のアイコン６２２では、左上のＩＤが１、右上が２、左下が３、右下が４となる。また、このＩＤ割り当ての結果、ＩＤが１の携帯端末装置がマスターとなり、それ以外のＩＤの携帯端末装置がスレーブとなる。
Ｓ３０５において、アプリケーション１２５は、ユーザが入力した携帯端末装置の属性情報を端末属性保存領域１２７に保存する。また、アプリケーション１２５は、保存した属性情報をブロードキャストで他の携帯端末装置に送信する。
【００２９】
図５は、携帯端末装置がブロードキャストするブロードキャストデータの一例を示す図である。図５において、データ７０１は、このブロードキャストデータがこのアプリケーション１２５の携帯端末装置に関するデータ情報であることを示す識別子である。データ７０２は、このブロードキャストデータが携帯端末装置の属性情報であることを示す識別子である。データ７０３は、この携帯端末装置のグループＩＤは１であることを示している。データ７０４は、この携帯端末装置のＩＤは２であることを示している。データ７０５は、この携帯端末装置のＩＰアドレスは１９２．１６８．１．１０であることを示している。
アプリケーション１２５がこの情報をブロードキャストすることにより、このデータを受信した携帯端末装置は、他の携帯端末装置の属性情報を知ることが可能となる。
【００３０】
Ｓ３０６において、アプリケーション１２５は、同じグループＩＤの全ての携帯端末装置から属性情報を受信したか確認する。ここで、アプリケーション１２５は、Ｓ３２１で保存した同じグループに属する他の携帯端末装置の属性情報を確認する。より具体的には、アプリケーション１２５は、端末属性保存領域１２７に保存された属性情報から、自身の携帯端末装置と同じグループＩＤの属性情報が端末数分あるかどうかを確認することで、同じグループＩＤの全ての携帯端末装置から属性情報を受信したか否かを確認する。この確認方法について以下に説明する。
端末数は設定画面６１０を介してユーザが入力し、アプリケーション１２５は、この端末数情報を端末属性保存領域１２７に保存する。アプリケーション１２５は、取得することができた他の携帯端末装置の端末数情報から、端末属性保存領域１２７に保存されている自分と同じグループＩＤの携帯端末装置を計数する。この確認方法により、アプリケーション１２５は、同一グループＩＤの全ての携帯端末装置から属性情報を受信したか確認可能となる。
【００３１】
Ｓ３０７において、アプリケーション１２５は、Ｓ３０６の処理の結果から同じグループＩＤの全ての携帯端末装置から属性情報を受信したか否かを判定する。アプリケーション１２５は、まだ端末数分の属性情報を受信していない場合、Ｓ３０６に処理を戻す。
この時点で自身の携帯端末装置がマスターかスレーブか決定している。この先、アプリケーション１２５は、各携帯端末の時刻のずれを計数する。フローチャートの説明をする前に時刻のずれの計数方法について説明する。
図６は、携帯端末装置間の時刻ずれを計数するシーケンスの一例を示す図である。時刻ずれの計数は、マスター携帯端末装置８０１からスレーブ携帯端末装置８０２に対して時刻計測のリクエストを行い、スレーブ携帯端末装置８０２からマスター携帯端末装置８０１に時刻計測のリプライを返すことにより行われる。
【００３２】
図６において、Ｔｍ＿ｒｅｑ８０３は、マスター携帯端末装置８０１が時刻計測のリクエストを送信した、マスター携帯端末装置８０１の時刻を示す。Ｔｍ＿ｒｅｐ８０４は、マスター携帯端末装置８０１がスレーブ携帯端末装置８０２から時刻計測のリプライを受信した、マスター携帯端末装置８０１の時刻を示す。Ｔｓ＿ｒｅｑ８０５は、スレーブ携帯端末装置８０２がマスター携帯端末装置８０１から時刻計測のリクエストを受信した、スレーブ携帯端末装置８０２の時刻を示す。Ｔｓ＿ｒｅｐ８０６は、スレーブ携帯端末装置８０２がマスター携帯端末装置８０１に時刻計測リプライを送信した、スレーブ携帯端末装置８０２の時刻を示す。スレーブ携帯端末装置８０２は、このリプライに、Ｔｓ＿ｒｅｑ８０５、Ｔｓ＿ｒｅｐ８０６の時刻情報を格納する。
携帯端末装置は、ネットワーク経由で通信を行う。そのため、通信そのものに時間がかかるので、携帯端末装置間で通信遅延が発生する。この通信遅延について、片道の通信遅延時間は、以下の計算式により算出される。
片道通信遅延時間（Ｔｄ）＝（（Ｔｍ＿ｒｅｐ８０４−Ｔｍ＿ｒｅｑ８０３）−（Ｔｓ＿ｒｅｐ８０６−Ｔｓ＿ｒｅｑ８０５））／２
【００３３】
また、この片道通信遅延時間（Ｔｄ）がわかると、マスター携帯端末装置８０１が応答パケットを受け取った、スレーブ携帯端末装置８０２での時刻（Ｔｒ）は、Ｔｓ＿ｒｅｐ８０６＋Ｔｄとなる。これにより、マスター携帯端末装置８０１は、自身とスレーブ携帯端末装置の時刻のずれを、Ｔｒ−Ｔｍ＿ｒｅｐ８０４から計算することができる。
マスター携帯端末装置８０１は、自身と各スレーブ携帯端末装置の時刻とのずれを示す時刻ずれ情報を端末属性保存領域１２７に保存する。今後、携帯端末装置は、他の携帯端末装置との間でユーザ操作イベント情報をやり取りする際、そのイベント情報にイベント発生時刻を格納する。この際、マスター携帯端末装置８０１は、自身と他の携帯端末装置との時刻のずれを把握しているため、イベント発生時刻をマスター携帯端末装置８０１での時刻に補正することが可能となる。
【００３４】
図３Ａの説明に戻る。
Ｓ３０８において、アプリケーション１２５は、自身がマスター携帯端末装置かの判定を行い、スレーブ携帯端末装置の場合、Ｓ３０９に進む。
Ｓ３０９において、アプリケーション１２５は、マスター携帯端末装置の時刻測定リクエストを受信したか判定し、受信していないと判定した場合、Ｓ３０９の処理を繰り返し、時刻測定リクエストを受信するまで待つ。一方、アプリケーション１２５は、マスター携帯端末装置から時刻測定リクエストを受信したと判定した場合、Ｓ３１０に進み、時刻測定リプライをマスター携帯端末装置に送信する。
Ｓ３０８において、アプリケーション１２５は、自身がマスター携帯端末装置の場合、Ｓ３１１に進み、時刻測定を行っていないスレーブ携帯端末装置に時刻測定リクエストを送信する。
【００３５】
Ｓ３１２において、アプリケーション１２５は、スレーブ携帯端末装置からの時刻測定リプライの受信を待つ。Ｓ３１２において、アプリケーション１２５は、時刻測定リプライを受信したら、図６の時刻ずれ計算により、スレーブ携帯端末装置との時刻のずれを示す時刻ずれ情報を端末属性保存領域１２７に保存する。
Ｓ３１４において、アプリケーション１２５は、全てのスレーブ携帯端末装置について時刻測定を行ったかの確認を行い、時刻測定を行っていないスレーブ携帯端末装置があれば、Ｓ３１１に戻る。アプリケーション１２５は、全てのスレーブ携帯端末装置について時刻測定を行った場合、図３Ａの処理を終了する。
以上の処理により、複数の携帯端末装置の配置及び複数の携帯端末装置間での通信が可能となる。
【００３６】
次に、図２Ｂで説明したユーザ操作があった場合の各携帯端末装置のアプリケーション１２５の処理を図７のフローチャートに沿って説明する。なお、図２Ｂでは、携帯端末装置のアプリケーション１２５が、ユーザ２０１による操作を受け付けて、ファイルを開いて表示する。そして、ユーザ２０１は、携帯端末装置が表示する前記ファイルに関する操作を表示操作部１１９を介して行う。図７を用いて、ファイルが開かれる際の携帯端末装置のアプリケーション１２５の処理について説明する。また、図９を用いて、ユーザが表示されたファイルを表示操作部１１９を介して操作した際の携帯端末装置のアプリケーション１２５の処理について説明する。
図７のフローチャートにおいて、携帯端末装置のアプリケーション１２５は、Ｓ４０１においてユーザからのファイル選択及びそのファイルの表示指示を確認する。
Ｓ４０２において、アプリケーション１２５は、ユーザからのファイル選択及び表示指示があった場合、Ｓ４０３に進み、その選択したファイルを同じグループＩＤに属する他の携帯端末装置に送信する。ここで、アプリケーション１２５は、端末属性保存領域１２７に保存されている内容から、同じグループＩＤの他の携帯端末装置のネットワークアドレス（本実施形態ではＩＰアドレス）を取得することができる。アプリケーション１２５は、そのアドレスに対してファイル送信プロトコルを使用してファイルを送信する。
【００３７】
Ｓ４０２において、アプリケーション１２５は、ユーザによるファイル選択及び表示指示がない場合、Ｓ４０４に進み、他の携帯端末装置からのファイル送信があるか確認する。
Ｓ４０５において、アプリケーション１２５は、他の携帯端末装置からのファイル送信があった場合、Ｓ４０６に進み、そのファイルを受信する。ここまでの処理で、ユーザがひとつの携帯端末装置において選択したファイルが同一グループＩＤの携帯端末装置間で共有されることとなる。
Ｓ４０７において、アプリケーション１２５は、ファイルタイプを確認する。本実施形態において、アプリケーション１２５は、例えば地図や写真等の画像タイプと、ページ毎に区切られているページドキュメント等のドキュメントタイプとによって表示方法を変える。そのためＳ４０７において、アプリケーション１２５は、ファイルタイプの確認を行う。ファイルタイプが画像タイプの場合、アプリケーション１２５は、Ｓ４０８に進み、画像タイプファイルの初期表示を行う。例えばアプリケーション１２５は、図１Ｃに示すように、複数の携帯端末装置の画面をひとつの画面に見立てて画像を表示する。
各携帯端末装置のアプリケーション１２５は、自身の携帯端末装置の配置位置がわかっているため、その配置位置と、画像の表示状態とから自身の携帯端末装置の画面に表示する画像領域を決定する。アプリケーション１２５は、この決定処理を、自身の携帯端末装置表示領域の座標系と、複数の携帯端末装置を合わせた表示領域の座標系とを基に行う。
【００３８】
図８は、座標系の一例を示す図である。表示領域１１０１から１１０４までは、各携帯端末装置の表示領域である。この表示領域を物理表示領域と呼ぶことにし、前記物理表示領域の座標系をＸｐ−Ｙｐ座標系１１０５とする。また、複数の携帯端末装置の表示領域を合わせた座標系を仮想表示領域と呼ぶことにし、前記仮想表示領域の座標系をＸｉ−Ｙｉ座標系１１０６とする。また、元の画像は拡大されることもあり、その場合、拡大された画像は領域１１０７のように仮想座標系に配置されるものとする。各携帯端末装置は、座標を仮想座標系から自分の物理座標系に変換し、自身の携帯端末装置の表示領域に表示する内容を算出する。
図７の説明に戻る。
Ｓ４０８において、アプリケーション１２５は、画像タイプの初期表示を行った後、Ｓ４０９に進みユーザ操作のイベント処理を行う。Ｓ４０９の処理の詳細については、図９Ａ、Ｂ、Ｃを用いて後述する。
Ｓ４０７において、アプリケーション１２５は、ファイルタイプがドキュメントタイプの場合、Ｓ４１０に進み、ドキュメントタイプファイルの初期表示を行う。例えばアプリケーション１２５は、図１Ｄに示すように、各携帯端末装置の表示領域に該当するページを表示する。
Ｓ４１０において、アプリケーション１２５は、ドキュメントタイプの初期表示を行った後、Ｓ４１１に進みユーザ操作のイベント処理を行う。Ｓ４１１の処理の詳細については、図９Ｃ、Ｄ、Ｅを用いて後述する。
【００３９】
ここで、図９のフローチャートの説明における、携帯端末装置のユーザ操作について説明しておく。まず「タップ」操作とは、指やタッチペン等で操作画面を短い時間接触する操作のことである。また「ピンチ」操作とは、二本の指を操作画面に接触させ、その指の間隔を広げたり狭めたりする操作のことである。なお、それぞれの操作を「ピンチアウト（拡大操作）」、「ピンチイン（縮小操作）」操作という。また「ドラッグ」とは、指を操作画面に接触させ、その指を接触させたまま接触位置を移動する操作のことである。
図７の処理において、ユーザが画像タイプのファイルを選択したとする。この場合、アプリケーション１２５は、Ｓ４０９において図９Ａ、Ｂ、Ｃの処理を行うことになる。
図９Ａで、まずＳ５０１において、アプリケーション１２５は、自身の携帯端末装置がマスター携帯端末装置かスレーブ携帯端末装置かを確認する。上述のとおり、アプリケーション１２５は、端末属性保存領域１２７に格納されている携帯端末装置ＩＤが１であればマスター、それ以外であればスレーブと判定することができる。
【００４０】
Ｓ５０２において、アプリケーション１２５は、自身の携帯端末装置がマスター携帯端末装置であればＳ５０３に進み、スレーブ携帯端末装置であればＳ５０４に進む。なお、Ｓ５０３におけるマスター携帯端末装置のユーザ操作イベント処理の詳細については、図９Ｃを用いて後述する。アプリケーション１２５は、自身の携帯端末装置がスレーブ携帯端末装置である場合、Ｓ５０４に進み、ユーザ操作があるか確認する。
Ｓ５０５において、アプリケーション１２５は、ユーザ操作があった場合、Ｓ５０６に進み、マスター携帯端末装置にユーザ操作イベント情報を送信する。一方、Ｓ５０５において、アプリケーション１２５は、ユーザ操作がなかった場合、Ｓ５０７に進む。
Ｓ５０７において、アプリケーション１２５は、マスター携帯端末装置からのユーザ操作イベント情報があるか確認する。Ｓ５０７において、アプリケーション１２５は、マスター携帯端末装置からのユーザ操作イベント情報がない場合、Ｓ５０４に戻る。
【００４１】
ここで、ユーザ操作イベント情報について詳しく説明する。図１０は、ユーザ操作イベント情報の一例を示す図である。図１０Ａは、単独の携帯端末装置に対してユーザ操作があったときに、その携帯端末装置が発行するユーザ操作イベント情報の一例を示す図である。
データ９０１は、イベント情報データが本実施形態で説明しているアプリケーションのものであることを示している。データ９０２は、この情報のタイプがユーザ操作であることを示している。データ９０３は、このユーザ操作があった携帯端末装置のグループＩＤを示している。データ９０４は、ユーザ操作があった携帯端末装置のＩＤを示している。データ９０５は、ユーザ操作の種類を示しており、例えばタップ操作であれば"Ｔａｐ"等が設定される。データ９０６は、ユーザ操作が発生した時刻を示しており、フォーマットを、年−月−日−時−分−秒−ミリ秒としている。データ９０７は、ユーザ操作のパラメータを示しており、ユーザ操作の種類に応じて、データ９０８からデータ９１０までの何れかのパラメータが設定される。
データ９０８は、タップ操作のときのパラメータを示しており、パラメータの種類はＸｐ−Ｙｐ物理座標系の（Ｘ，Ｙ）座標である。また、ページドキュメントが表示されているときは、Ｐａｇｅパラメータにタップ操作が発生した箇所のページ番号が設定され、ページドキュメントでないときは、ＰａｇｅパラメータにＮ／Ａが設定される。データ９０９は、ドラッグ操作のときのパラメータであり、Ｘｐ−Ｙｐ物理座標系のドラッグ開始座標（Ｘｂ，Ｙｂ）、ドラッグ終了座標（Ｘｅ，Ｙｅ）が設定される。データ９１０は、ピンチ操作のときのパラメータであり、Ｘｐ−Ｙｐ物理座標系のドラッグ中心点（Ｘ，Ｙ）、ピンチ操作による倍率Ｍが設定される。また、ページドキュメントが表示されているときは、Ｐａｇｅパラメータにピンチ操作が発生した中心座標に位置するページ番号が設定され、ページドキュメントでないときは、ＰａｇｅパラメータにＮ／Ａが設定される。
【００４２】
また、図１０Ｂは、マスター携帯端末装置が各携帯端末装置に送信するユーザ操作イベント情報の一例を示す図である。先に説明したように、ユーザ操作が単独の携帯端末装置に対して行われた場合、その携帯端末装置はマスター携帯端末装置に図１０Ａに示すフォーマットでユーザ操作イベント情報を送信する。マスター携帯端末装置は、受取ったユーザ操作イベント情報を図１０Ｂのフォーマットで各携帯端末装置に送信する。
ここで、マスター携帯端末装置値が、ユーザ操作のあった携帯端末装置から受信したユーザ操作イベント情報をそのまま各携帯端末装置に送信しない理由について説明する。ユーザは複数の携帯端末装置に対して操作を行うこともある。このとき、ユーザ操作があった携帯端末装置は、一度マスター携帯端末装置に図１０Ａのユーザ操作イベント情報を送信する。マスター携帯端末装置は、受信したユーザ操作イベント情報を解釈し、ユーザ操作イベント情報を各携帯端末装置に送信する。
【００４３】
より具体的な例を用いて説明する。ユーザが複数の携帯端末装置で構成された大きな画面に対して二台の携帯端末装置それぞれの操作画面上でユーザ操作としてドラッグ操作をするケースがある。この場合、それぞれの携帯端末装置の操作画面上ではドラッグ操作として認識されてしまうが、ユーザは複数の携帯端末装置で構成された大きな画面に対してピンチ操作をする意思がある。このようなケースに対応するために、まずユーザ操作のあった携帯端末装置は、そのユーザ操作をユーザ操作イベント情報としてマスター携帯端末装置に送信する。
マスター携帯端末装置は、ほぼ同じ時刻（予め定められた許容時間の範囲内）に２つのドラッグ操作をしたという図１０Ａのユーザ操作イベント情報を受信する。このとき、マスター携帯端末装置は、２つのドラッグ操作ではなくピンチ操作と判定し、各携帯端末装置に対して、ドラッグ操作のユーザイベント情報をピンチ操作のユーザ操作イベント情報に変換して送信する。即ち、図１０Ｂは、このようにマスター携帯端末装置が必要に応じて変換したユーザ操作イベント情報である。
【００４４】
図１０Ｂにおいて、データ９２１から９２３までは、図１０Ａのデータ９０１から９０３までと同じである。データ９２４は、図１０Ａのデータ９０４と同様、携帯端末装置のＩＤであるが、マスター携帯端末装置の送信するユーザ操作イベント情報は複数の携帯端末装置のユーザ操作イベント情報が組み合わされた情報であるケースもある。そのため、複数の携帯端末装置の操作情報イベント情報が組み合わされた場合、データ９２４には複数のＩＤが記述されることになる。
データ９２５は、図１０Ａのデータ９０５と同じユーザ操作のタイプを示す。データ９２６は、ユーザ操作イベント情報のパラメータで、操作の種類毎にパラメータの内容は変わる。データ９２６は、タップ操作のときのパラメータであり、ユーザ操作イベントのタイプを示すデータ９２５によってフォーマットが異なる。
データ９２７は、ユーザ操作イベントのタイプがタップ操作であるときのパラメータを示しており、パラメータの種類はＸｉ−Ｙｉ仮想座標系（Ｘ，Ｙ）である。また、ページドキュメントが表示されているときは、Ｐａｇｅパラメータにタップ操作が発生した箇所のページ番号が設定され、ページドキュメントでないときは、ＰａｇｅパラメータにＮ／Ａが設定される。データ９２８は、ドラッグ操作のときのパラメータを示しており、Ｘｉ−Ｙｉ仮想座標系のドラッグ開始座標（Ｘｂ，Ｙｂ）、ドラッグ終了座標（Ｘｅ，Ｙｅ）が設定される。
【００４５】
データ９２９は、ピンチ操作のときのパラメータを示しており、Ｘｉ−Ｙｉ仮想座標系のドラッグ中心点（Ｘ，Ｙ）、ピンチ操作による倍率Ｍが設定される。また、ページドキュメントが表示されているときは、Ｐａｇｅパラメータにピンチ操作が発生した中心座標に位置するページ番号が設定され、ページドキュメントでないときは、ＰａｇｅパラメータにＮ／Ａが設定される。
データ９３０から９３２までは、元のユーザ操作イベント情報であり、データ９３０は元の携帯端末装置ＩＤ、データ９３１は元のユーザ操作の種類、データ９３２は元のユーザ操作のパラメータを示している。なお、元のユーザ操作は２つのケースもある。その場合、アプリケーション１２５がデータ９３０から９３２までの記述をもう一度繰り返す。
【００４６】
図９Ａの説明に戻る。
アプリケーション１２５は、Ｓ５０２の判定において自身の携帯端末装置がマスター携帯端末装置である場合、Ｓ５０３の処理に進む。Ｓ５０３の処理内容は、図９Ｃに示すものである。ここで、Ｓ５０３においてマスター携帯端末装置のアプリケーション１２５が実行する処理の詳細について、図９Ｃのフローチャートを用いて説明する。
Ｓ５４１において、アプリケーション１２５は、ユーザ操作があるか確認する。次に、アプリケーション１２５は、Ｓ５４２に進み、ユーザ操作があった場合はＳ５４４に進む。Ｓ５４２において、アプリケーション１２５は、ユーザ操作がない場合、Ｓ５４３に進み、スレーブ携帯端末装置からのイベント受信を確認する。
Ｓ５４３において、アプリケーション１２５は、スレーブ携帯端末装置からのイベントがない場合、Ｓ５４１に処理を戻し、自身の携帯端末装置のユーザ操作、スレーブ携帯端末装置からのユーザ操作イベント情報の受信を確認する。Ｓ５４３において、アプリケーション１２５は、なんらかのユーザ操作があった場合、Ｓ５４４に進む。
Ｓ５４４において、アプリケーション１２５は、ユーザ操作イベント情報の解析を行う。より具体的には、アプリケーション１２５は、図１０Ａに示すようなユーザ操作イベント情報を解析する。
次に、アプリケーション１２５は、Ｓ５４５に進み、ユーザ操作イベントのタイプを判定する。より具体的には、アプリケーション１２５は、図１０Ａのユーザ操作イベント情報のイベントタイプを示すデータ９０５を確認することにより、イベントのタイプを判定する。
【００４７】
Ｓ５４５において、アプリケーション１２５は、ユーザ操作イベントのタイプがタップである場合、図１０Ｂのフォーマットに基づき、タップイベントを各スレーブ携帯端末装置に送信する（Ｓ５４６）。操作があった携帯端末装置は、このタップのユーザ操作イベント情報を基に、タップ処理を行う。このタップ処理の具体的例として、いくつかの実装例が考えられる。例えば、アプリケーション１２５は、地図画像を表示している場合、タップがあった地点の建物情報や店舗情報等の表示を行うようにしてもよい。また、アプリケーション１２５は、写真画像を表示している場合、タップがあった地点の色のデータ又はその画像撮影時刻や位置の情報を表示するようにしてもよい。
Ｓ５４５において、アプリケーション１２５は、ユーザ操作イベントのタイプがタップでない場合、Ｓ５４７に進み、イベントタイプがピンチか判定する。Ｓ５４７における判定方法も、Ｓ５４５の判定方法と同様である。Ｓ５４７において、アプリケーション１２５は、ユーザ操作がピンチである場合、各スレーブ携帯端末装置に図１０Ｂのフォーマットでピンチイベント情報を送信する（Ｓ５４８）。そして、各携帯端末装置のアプリケーション１２５は、このピンチ操作に応じた表示処理を行う。ピンチタイプのユーザ操作イベント情報にはピンチが発生した中心点のＸｉ−Ｙｉ仮想座標での（Ｘ，Ｙ）座標及び拡大縮小率の値が設定されている。各携帯端末装置のアプリケーション１２５は、この情報を基に、自身の携帯端末装置の表示領域に対する画像の表示処理を行う。
【００４８】
Ｓ５４９において、アプリケーション１２５は、ユーザ操作イベントのタイプがドラッグか判定し、ドラッグの場合、Ｓ５５０に進み、タイマーを開始する。この後の処理の説明に進む前に、このタイマーの役割について説明する。
通常、アプリケーション１２５は、ドラッグイベントに対してはドラッグ処理を行う。しかし、マスター携帯端末装置のアプリケーション１２５がドラッグのユーザ操作イベントを検知又は受信した際、そのドラッグイベントが発生した携帯端末装置以外の携帯端末装置でもドラッグイベントが発生する可能性がある。例えば、ユーザが複数の携帯端末装置の操作画面上に対してピンチ操作を行った場合である。このとき、ユーザの二本の指は複数の携帯端末装置の操作画面に同時に接触するわけではなく、多少の時間差がある。そのため、アプリケーション１２５は、ドラッグのユーザ操作が発生した場合、それがドラッグ操作であるか否かを判定するにあたり、多少の時間（予め定められた時間）をおいて判定する必要がある。
より具体的に説明すると、アプリケーション１２５は、ひとつのドラッグのユーザ操作イベントを検知又は受信した場合、そのイベントから予め定められた一定時間以内に他のドラッグ操作がない場合に、ユーザ操作をドラッグ操作と判定する。一方、アプリケーション１２５は、前記一定時間以内に他のドラッグ操作がある場合は、ユーザ操作をピンチ操作と判定する。
【００４９】
なお、上述したようなユーザ操作がドラッグ操作であるかピンチ操作であるかの判定は、ユーザ操作が単独の携帯端末装置に対して行われた場合においても必要な判定である。ただし、本実施形態では、前記一定時間の長さを、ユーザが単独の携帯端末装置に対して操作を行う場合よりも複数の携帯端末装置をまたいで操作を行う場合の方が長くなるように定めるものとする。これは、一般的にユーザが片手の二本指を操作画面に接触させる場合よりも、両手片方ずつの一本指を操作画面に接触させる方が、接触するまで時間間隔が長くなる傾向にあるためである。そのため、アプリケーション１２５は、ユーザ操作がドラッグ操作の場合には、時間計測を行う。
なお、アプリケーション１２５は、この時間計測を図１０Ａのフォーマットに設定されるＥｖｅｎｔＴｉｍｅの時刻情報に基づいて行うが、マスター携帯端末装置は、アプリケーション１２５の立ち上げ時に行った時刻差測定情報に基づいて時刻の補正を行う。
Ｓ５５１において、アプリケーション１２５は、予め定められた一定時間以内にユーザ操作イベントの発生又は受信がない場合、Ｓ５５２に進む。
Ｓ５５２において、アプリケーション１２５は、予め定められた一定時間経過したかの判定を行い、経過していない場合、Ｓ５５１に戻り、ユーザ操作イベントの発生又は受信がないか判定する。Ｓ５５２において、アプリケーション１２５は、ドラッグ操作を検知又は受信してから予め定められた一定時間、他のユーザ操作イベントがない場合、Ｓ５５４に進む。
【００５０】
Ｓ５５４において、アプリケーション１２５は、Ｓ５４９で判定されたドラッグ操作をそのままドラッグ操作と判定して、ドラッグのユーザ操作イベント情報をスレーブ携帯端末装置に送信する。
Ｓ５５１において、アプリケーション１２５は、予め定められた一定時間以内に他にもユーザ操作イベントがあった場合、Ｓ５５３に進む。
Ｓ５５３において、アプリケーション１２５は、Ｓ５５１で発生したと判定されたユーザ操作がドラッグ操作か判定する。ここでドラッグでない場合、アプリケーション１２５は、その操作を無視することとし、Ｓ５５４に進む。一方、Ｓ５５３において、アプリケーション１２５は、ユーザ操作イベントがドラッグである場合、Ｓ５５５に進む。
Ｓ５５５において、アプリケーション１２５は、ここで発生した二つのドラッグのユーザ操作イベントを、複数の携帯端末装置でのピンチイベントとして判定し、図１０Ｂに示すユーザ操作イベント情報をスレーブ携帯端末装置に送信する。
【００５１】
Ｓ５５５においてアプリケーション１２５が送信するユーザ操作イベント情報について詳細に説明する。図１１は、マスター携帯端末装置が、二つの携帯端末装置に発生したユーザ操作に対するドラッグのユーザ操作イベント情報と、その二つのドラッグ操作のイベント情報とを、ひとつのピンチ操作のイベント情報に変換したイベント情報の一例を示す図である。
図１１Ａは、ある携帯端末装置でドラッグのユーザ操作が発生したときのユーザ操作イベント情報の一例を示す図である。図１１Ｂは、他の携帯端末装置でドラッグのユーザ操作が発生したときのユーザ操作イベント情報の一例を示す図である。
データ１００１は、このデータが本実施形態のアプリケーションのデータであることを示す文字列のデータである。データ１００２は、このデータが操作情報であることを示す文字列のデータである。データ１００３は、ユーザ操作が発生した携帯端末装置の属するグループＩＤが１であることを示している。データ１００４は、ユーザ操作が発生した携帯端末装置のＩＤが２であることを示している。データ１００５は、発生したユーザ操作がドラッグであることを示している。データ１００６は、ユーザ操作の発生した時刻を示している。データ１００７は、ドラッグのユーザ操作のパラメータで、Ｘｐ−Ｙｐ物理座標上でのドラッグ開始位置（Ｘｂ，Ｙｂ）及びドラッグ終了位置（Ｘｅ，Ｙｅ）を示している。
【００５２】
図１１Ｂも、図１１Ａと同様のフォーマットで記載されており、データ１０１４、１０１５から、図１１Ｂが示すユーザ操作はＩＤが３の携帯端末装置で発生したドラッグのユーザ操作であることがわかる。
図１１Ｃは、マスター携帯端末装置が図１１Ａ及び図１１Ｂが示す二つのドラッグ操作をひとつのピンチ操作にまとめたユーザ操作イベント情報の一例を示す図である。データ１０２１は、このデータが本実施形態のアプリケーションのデータであることを示す文字列のデータである。データ１０２２は、このデータが操作情報であることを示す文字列のデータである。データ１０２３は、ユーザ操作が発生した携帯端末装置の属するグループＩＤが１であることを示している。データ１０２４は、ユーザ操作が２台の携帯端末装置で発生し、そのＩＤが２及び３であることを示している。データ１０２５は、ユーザ操作がピンチであることを示している。
データ１０２６は、ピンチ操作に対するパラメータで、Ｘｉ−Ｙｉ仮想座標上のピンチ操作の中心点（Ｘ，Ｙ）を示している。また、表示されているファイルがページドキュメントである場合、データ１０２６には、ピンチ操作の中心点のページ及び拡大縮小率が記述される。
【００５３】
異なる二台の携帯端末装置にドラッグ操作があった場合、それをピンチ操作とする場合の拡大縮小率の算出方法について説明する。図１２Ａは、携帯端末装置Ａ及びＢそれぞれの操作画面上でドラッグ操作が発生した状態の一例を示す図である。図１２Ａにおける座標は、Ｘｐ−Ｙｐ物理座標上の値となっている。
座標１２０１は、携帯端末装置Ａのドラッグ開始点座標（Ｘｐａｂ，Ｙｐａｂ）である。座標１２０２は、携帯端末装置Ａのドラッグ終了点座標（Ｘｐａｅ，Ｙｐａｅ）である。座標１２０３は、携帯端末装置Ｂのドラッグ開始点座標（Ｘｐｂｂ，Ｙｐｂｂ）である。座標１２０４は、携帯端末装置Ｂのドラッグ終了点座標（Ｘｐｂｅ，Ｙｐｂｅ）である。マスター携帯端末装置のアプリケーション１２５は、これらのドラッグ操作に関する座標を、Ｘｉ−Ｙｉ仮想座標に変換し、その仮想座標上でピンチの拡大縮小率を算出する。
図１２Ｂは、前記拡大縮小率の算出方法の概要の一例を示す図であり、図１２Ｂの座標は全てＸｉ−Ｙｉ仮想座標である。座標１２１１は、携帯端末装置Ａのドラッグ開始点座標（Ｘｉａｂ，Ｙｉａｂ）である。座標１２１２は、携帯端末装置Ａのドラッグ終了点座標（Ｘｉａｅ，Ｙｉａｅ）である。座標１２１３は、携帯端末装置Ｂのドラッグ開始点座標（Ｘｉｂｂ，Ｙｉｂｂ）である。座標１２１４は、携帯端末装置Ｂのドラッグ終了点座標（Ｘｉｂｅ，Ｙｉｂｅ）である。
【００５４】
アプリケーション１２５は、これらの操作をピンチとした場合の拡大縮小率を、ＳＱＲＴ（実線１２１５の面積／点線１２１６の面積）で算出する。なお、ＳＱＲＴは、平方根の意味である。アプリケーション１２５は、実線１２１５の面積を、（Ｘｉａｅ，Ｙｉａｅ）と（Ｘｉｂｅ，Ｙｉｂｅ）との座標から算出する。また、アプリケーション１２５は、点線１２１６の面積を、（Ｘｉａｂ，Ｙｉａｂ）と（Ｘｉｂｂ，Ｙｉｂｂ）との座標から算出する。
以上の算出方法により、マスター携帯端末装置のアプリケーション１２５は、異なる携帯端末装置で発生した二つのドラッグ操作をひとつのピンチ操作として変換することが可能となる。
図１１Ｃの説明に戻る。
データ１０２７から１０２９までは、元のユーザ操作イベント情報である図１１Ａの内容に対応するデータである。データ１０３０から１０３２までは、元のユーザ操作イベント情報である図１１Ｂの内容に対応するデータである。
このように、マスター携帯端末装置のアプリケーション１２５は、二つのドラッグ操作をひとつのピンチ操作として変換したユーザ操作イベント情報に、変換する前の元のユーザ操作イベント情報を含めて送信する。これにより、ユーザ操作が発生した携帯端末装置のアプリケーション１２５による仮想座標から物理座標への変換が不要になるため処理が容易になる。
ここまでの処理で、アプリケーション１２５によるユーザ操作イベント情報の処理が完了する。そして、この後、各携帯端末装置のアプリケーション１２５は、ユーザ操作イベント情報に基づき自身の携帯端末装置における表示処理を行う。
【００５５】
図９Ａの説明に戻る。
Ｓ５０８において、アプリケーション１２５は、マスター携帯端末装置が送信したユーザ操作イベント情報を解析する。
Ｓ５０９において、アプリケーション１２５は、イベント（ユーザ操作）がタップであるかの確認を行う。アプリケーション１２５は、イベントがタップの場合、Ｓ５１０に進む。
Ｓ５１０において、アプリケーション１２５は、ユーザ操作イベント情報の携帯端末装置ＩＤが自分のＩＤと一致するか確認し、一致しない場合はＳ５０１に戻る。一方、アプリケーション１２５は、携帯端末装置ＩＤが自分のＩＤと一致する場合、Ｓ５１１においてタップ処理を行う。このタップ処理の内容は上述した通りである。
【００５６】
Ｓ５１２において、アプリケーション１２５は、イベントがタップではない場合、ドラッグか確認する。アプリケーション１２５は、イベントがドラッグである場合、Ｓ５１３においてドラッグ処理を行う。上述したようにイベントがタップの場合、Ｓ５１０においてアプリケーション１２５は、ユーザ操作イベント情報の携帯端末装置ＩＤが自分のＩＤと一致するかの判定を行った。しかし、イベントがドラッグの場合、アプリケーション１２５は、Ｓ５１０のような判定を行わずドラッグ処理を行う。これは、ドラッグ操作がある携帯端末装置で発生した場合、その操作は表示している画像全体をドラッグすることを意図した操作だからである。そのため、ユーザのドラッグ操作が直接発生しなかった携帯端末装置でもドラッグ処理が行われる。
Ｓ５１２において、アプリケーション１２５は、イベントがドラッグ操作でない場合、Ｓ５１４においてピンチイン操作か確認し、ピンチイン操作の場合、Ｓ５１５に進み、ピンチイン処理を行う。Ｓ５１５のピンチイン処理でアプリケーション１２５がユーザ操作イベント情報の携帯端末装置ＩＤが自分のＩＤと一致するかの判定を行わない理由は、上述したＳ５１３におけるドラッグ処理の場合と同様である。
【００５７】
Ｓ５１４において、アプリケーション１２５は、イベントがピンチイン操作でない場合、図９ＢのＳ５２１に進む。
Ｓ５２１において、アプリケーション１２５は、イベントがピンチアウト操作か確認し、ピンチアウト操作でない場合、Ｓ５２７に進む。一方、Ｓ５２１において、アプリケーション１２５は、イベントがピンチアウトであった場合、Ｓ５２２に進む。
Ｓ５２２において、アプリケーション１２５は、ユーザ操作イベントが複数の端末に発生したかを判定する。アプリケーション１２５は、この判定を、マスター携帯端末装置が生成した図１０Ｂのユーザ操作イベント情報のデータ９２４が示す携帯端末装置ＩＤが複数あるか否かに基づいて行う。Ｓ５２２の判定において、ピンチアウト操作が複数の携帯端末装置で発生している場合、アプリケーション１２５は、Ｓ５２３に進みピンチアウト処理を行う。アプリケーション１２５は、このような処理をすることにより、ユーザ操作が複数の携帯端末装置の操作画面上でのドラッグである場合、それらをピンチ操作として認識し、全体に表示している画像をピンチアウト処理することになる。Ｓ５２２の判定において、ユーザ操作が単独の携帯端末装置の操作画面上で発生している場合、アプリケーション１２５は、処理をＳ５２４に進める。
【００５８】
Ｓ５２４において、アプリケーション１２５は、ユーザ操作イベント情報から、そのユーザ操作は自身の携帯端末装置で発生したものか判定する。アプリケーション１２５は、この判定を、図１０Ｂのユーザ操作イベント情報のデータ９２４が示す携帯端末装置ＩＤに基づいて行う。Ｓ５２４の判定において、そのユーザ操作は自身の携帯端末装置で発生したものである場合、アプリケーション１２５は、Ｓ５２５に進み、ピンチアウト処理を行う。また、アプリケーション１２５は、そのピンチアウト処理と併せて、元の表示に戻すボタンを表示する。Ｓ５２４の判定において、そのユーザ操作は自身以外の携帯端末装置で発生したものである場合、アプリケーション１２５は、Ｓ５２６に進み、全体画像表示処理を行う。また、アプリケーション１２５は、全体画像表示処理と併せて、元の表示に戻すボタンを表示する。
Ｓ５２５及びＳ５２６の処理について、図１３を用いてより具体的に説明する。
【００５９】
図１３Ａは、Ｓ５２５及びＳ５２６の表示処理を行う前の携帯端末装置の表示画面の一例を示す図である。図１３Ｂは、Ｓ５２５及びＳ５２６の表示処理を行った後の携帯端末装置の表示画面の一例を示す図である。
図１３Ａには、携帯端末装置Ａの表示画面１３０１と、携帯端末装置Ｂの表示画面１３０２とが示されている。この状態において、ユーザは、携帯端末装置Ｂ上でピンチアウト操作を行ったとする。この場合、携帯端末装置Ｂは、Ｓ５２４及びＳ５２５の処理により、自装置上においてピンチアウト処理を行う。その結果、携帯端末装置Ｂは、図１３Ｂの表示画面１３１２のように、表示画面１３０２で表示していた画像を拡大表示することになる。
一方、携帯端末装置Ａは、Ｓ５２４及びＳ５２６の処理により、初期画面表示を行うことになる。その結果、携帯端末装置Ａは、表示画面１３１１のように、地図全体を表示することになる。また、携帯端末装置Ａは、矩形１３１３のように、携帯端末装置Ｂで表示されている領域を示す矩形を表示するようにしてもよい。これにより、携帯端末装置Ａは、携帯端末装置Ｂで表示されている領域を強調してユーザに示すことができ、ユーザの利便性を向上させることができる。なお、携帯端末装置毎に異なる表示形態をしている状態を「個別表示モード」と呼ぶことにする。
このように、ユーザは、所望の位置を拡大した表示と、その位置を俯瞰した表示とを各々の携帯端末装置上に表示させることができる。これにより、複数の携帯端末装置を連係させて使用する際のユーザの利便性を向上させることができる。
また、図１３Ｂのような表示状態の場合、図１３Ａのような元の複数の携帯端末装置の表示画面全体で画像表示を行う表示状態に戻るため、各携帯端末装置の表示画面上に「戻る」ボタン１３１４、１３１５が表示される。ユーザが「戻る」ボタン１３１４、１３１５をタップすると、元の複数の携帯端末装置で連携した画面表示に戻ることになる。
【００６０】
図９Ｂの説明に戻る。
Ｓ５２７において、アプリケーション１２５は、元の複数の携帯端末装置で連携した画面表示に戻るための「戻る」ボタン１３１４、１３１５がタップされたか判定する。アプリケーション１２５は、「戻る」ボタン１３１４、１３１５がタップされた場合、Ｓ５２８に進み、元の複数の携帯端末装置で連携した画面表示に戻す。即ち、アプリケーション１２５は、個別表示モードを解除する。
Ｓ５２９において、アプリケーション１２５は、アプリケーション終了ボタン１０３が押下されたか判定する。アプリケーション１２５は、アプリケーション終了ボタンが押下された場合、アプリケーションを終了する。一方、アプリケーション１２５は、アプリケーション終了ボタンが押下されていない場合、Ｓ５０１に戻る。
以上の処理により、複数の携帯端末装置それぞれにユーザのドラッグ操作が発生した場合、各携帯端末装置は、それらをピンチアウト処理と認識し、全画面ピンチアウト処理を行うことが可能となる。また、単独の携帯端末装置でピンチアウト操作が発生した場合、その携帯端末装置は、自装置上でのみピンチアウト処理を行うことで、他の携帯端末装置は、他の処理を実行することが可能となる。
【００６１】
図７の説明に戻る。
Ｓ４０７において、アプリケーション１２５は、ユーザが選択したファイルのタイプがページから構成されるページドキュメントタイプである場合、Ｓ４１０に進み、ページドキュメントタイプの初期表示を行う。この場合における表示手法としては、例えば図１Ｄのように各携帯端末装置にそれぞれ１ページずつ連続したページが表示されるような手法でもよい。
Ｓ４１１において、アプリケーション１２５は、ページドキュメントタイプのユーザ操作イベント処理を行う。Ｓ４１１の処理の詳細については、図９Ｃ、Ｄ、Ｅを用いて後述する。なお、図９Ｃは、画像タイプのファイルのときの処理と同じ処理であるため説明を省略し、図９Ｄ及び図９Ｅの説明を行う。
図９Ｄにおいて、Ｓ５６１からＳ５６８までの処理は、それぞれ図９ＡのＳ５０１からＳ５０８までの処理と同じであるため説明を省略する。
【００６２】
Ｓ５６９において、アプリケーション１２５は、ユーザ操作イベントがドラッグかの確認を行い、ドラッグの場合、Ｓ５７０に進み、ドラッグ処理を行う。ここで、表示されているファイルがページドキュメントタイプである場合、Ｓ５７０で行われるドラッグ処理は、表示ページの移動処理とする。例えば、図１Ｄのように携帯端末装置１４１、１４２、１４３の各携帯端末装置は、それぞれ１、２、３ページ目のページを表示しているものとする。ここで、ある携帯端末装置上でユーザが右から左にドラッグした場合、各携帯端末装置は表示しているページを１ページ進める。即ち、携帯端末装置１４１、１４２、１４３の各携帯端末装置は、それぞれ２、３、４ページ目のページを表示することになる。
Ｓ５６９において、アプリケーション１２５は、ユーザ操作イベントがドラッグでない場合、Ｓ５７１に進み、ユーザ操作イベント情報がピンチインであるか判定する。Ｓ５７１の判定において、アプリケーション１２５は、ユーザ操作イベントがピンチインである場合、Ｓ５７２に進み、ピンチイン処理を行う。Ｓ５７２のピンチイン処理について、図１４を用いて説明する。
【００６３】
図１４Ａは、ユーザがピンチイン操作する前の各携帯端末装置の表示画面の一例を示す図である。携帯端末装置Ａは、表示画面１４０１に１ページ目を表示している。そして、携帯端末装置Ｂは、表示画面１４０２に２ページ目を表示している。この状態において、ユーザがピンチイン操作を行った場合、図１４Ｂに示すように、各携帯端末装置は、表示ページ数を増やすように表示処理を行う。より具体的には、携帯端末装置Ａは、表示画面１４１１に、１ページ目から４ページ目までを表示する。そして、携帯端末装置Ｂは、表示画面１４１２に５ページ目から８ページ目までを表示する。
図９Ｄの説明に戻る。
Ｓ５７１において、アプリケーション１２５は、ユーザ操作イベントがピンチイン操作でない場合、Ｓ５７３に進み、ユーザ操作イベントがピンチアウトか判定する。Ｓ５７３において、アプリケーション１２５は、ユーザ操作イベントがピンチアウトの場合、各携帯端末装置にてピンチアウト処理を行う（Ｓ５７４）。即ち、各携帯端末装置は、それぞれ自装置上でピンチアウト処理を行う。
Ｓ５７４の処理について、より詳細に説明する。アプリケーション１２５は、ピンチイン処理の逆の処理を行うことになる。上述したように図１４Ｂには、ピンチアウトする前の各携帯端末装置の表示画面が示されている。携帯端末装置Ａは、表示画面１４１１に１ページ目から４ページ目までを表示している。携帯端末装置Ｂは、表示画面１４１２に５ページ目から８ページ目までを表示している。この状態でユーザがピンチアウト操作をすると、図１４Ａに示すように、各携帯端末装置は表示ページ数を減らす処理を行う。より具体的には、携帯端末装置Ａは、表示画面１４０１に１ページ目を表示する。携帯端末装置Ｂは、表示画面１４０２に２ページ目を表示する。
【００６４】
Ｓ５７３において、アプリケーション１２５は、ユーザ操作イベントがピンチアウトでない場合、図９ＥのＳ５８１に進む。
Ｓ５８１において、アプリケーション１２５は、ユーザ操作イベントがタップか判定し、ユーザ操作イベントがタップでない場合、Ｓ５８８に進む。
Ｓ５８８において、アプリケーション１２５は、元の複数の携帯端末装置で連携した画面表示に戻るための「戻る」ボタン１４３３、１４３４がタップされたか判定し、タップされた場合、Ｓ５８９に進み、元の複数の携帯端末装置で連携した画面表示に戻す。
Ｓ５９０において、アプリケーション１２５は、アプリケーション終了ボタン１０３が押下されたか判定し、アプリケーション終了ボタン１０３が押下された場合、アプリケーションを終了する。一方、Ｓ５９０において、アプリケーション１２５は、アプリケーション終了ボタン１０３が押下されていない場合、Ｓ５６１に戻る。
【００６５】
Ｓ５８１において、アプリケーション１２５は、ユーザ操作イベントがタップであると判定した場合、Ｓ５８２に進み、表示モードが個別表示モードであるかどうかの判定を行う。ここで、アプリケーション１２５は、表示モードが個別表示モードの場合、Ｓ５６１に戻る。
Ｓ５８２において、アプリケーション１２５は、表示モードが個別表示モードでない場合、Ｓ５８３に進み、現在全携帯端末装置においてサムネールを表示中か判定する。なお、サムネール（サムネール画像）とは、複数の画像やドキュメント等のファイルを縮小して表示した縮小画像のことである。
Ｓ５８３において、アプリケーション１２５は、全携帯端末装置においてサムネール表示していないと判定した場合、即ち、各携帯端末装置において１ページずつの表示をしている場合、Ｓ５８４に進み、タップ処理を行う。このタップ処理についてはいくつか方法があるが、例えばアプリケーション１２５がタップされたページの文字数等の属性情報を表示する等の方法がある。
Ｓ５８３において、アプリケーション１２５は、全携帯端末装置においてサムネール表示していると判定した場合、Ｓ５８５に進み、ユーザ操作イベントが自身の携帯端末装置で発生したか判定する。
【００６６】
Ｓ５８５の判定において、自身の携帯端末装置でユーザ操作があった場合、アプリケーション１２５は、Ｓ５８６に進み、タップがあったページを１ページで表示する１ページ表示処理を行う。また、アプリケーション１２５は、併せて元のサムネール表示状態に戻すための「戻る」ボタンを表示する。Ｓ５８５の判定において、他の携帯端末装置でユーザ操作があった場合、アプリケーション１２５は、Ｓ５８７に進み、サムネール表示しているページのページ変更処理を行う。また、アプリケーション１２５は、併せて元のサムネール表示状態に戻すため「戻る」ボタンを表示する。
Ｓ５８６及びＳ５８７の処理について、図１４を用いてより具体的に説明する。
図１４Ｃは、Ｓ５８６及びＳ５８７の処理前の携帯端末装置の表示画面の一例を示す図である。携帯端末装置Ａは、表示画面１４２１に、１ページから４ページまでのサムネール表示をしている。携帯端末装置Ｂは、表示画面１４２２に、５ページから８ページまでのサムネール表示をしている。この状態において、ユーザが携帯端末装置Ｂの表示画面１４２２の８ページの表示領域内でタップ操作をしたとする。この場合、Ｓ５８６の処理において、携帯端末装置Ｂは、図１４Ｄに示すように表示画面１４３２に、８ページ目のみの表示を行う。一方、Ｓ５８７の処理において、携帯端末装置Ａは、図１４Ｄに示すように表示画面１４３１に、４ページから７ページまでのサムネール表示を行う。なお、この際、携帯端末装置Ａは、８ページ目を含むようにサムネール表示するようにしてもよい。その場合、携帯端末装置Ａは、５ページから８ページまでのサムネール表示をしてもよい。また、ここでは、携帯端末装置Ａは、４ページから７ページまでといったように、８ページ目の前までのページをサムネール表示したが、９ページから１２ページといったように、８ページ目の後のページをサムネール表示してもよい。
【００６７】
以上の処理により、特定の携帯端末装置にユーザのタップ操作が発生した場合に、各携帯端末装置とも１ページ表示をしている場合、そのページと併せてページ属性情報を表示することができる。また、各携帯端末装置がサムネール表示をしている場合、タップがあった携帯端末装置のみ１ページ表示を行い、その他の携帯端末装置はその表示に合わせたサムネール表示を行うことができる。これにより、複数の携帯端末装置を連係させて画面表示させる場合におけるユーザの利便性を向上させることができる。
以上、本実施形態によれば、複数の携帯端末装置を連係させて動作させる場合において、ユーザが所望する動作効果を得ることができるようになる。
【００６８】
＜実施形態２＞
実施形態１では、複数の携帯端末装置において画像タイプのファイルが表示されている際に、ユーザが単独の携帯端末装置の操作画面上でピンチアウト操作を行った場合、操作がなされた携帯端末装置は、自装置上でのみ画像を拡大して表示する表示処理を行った。また、他の携帯端末装置は、初期画面表示、又は全体画像表示を行った。しかし、このような表示手法に限る必要ななく、他の表示手法が用いられてもよい。本実施形態では、上述のユーザ操作があった場合、各携帯端末装置では以下のような表示処理を行うものとする。
まず、ユーザ操作がなされた携帯端末装置は、実施形態１と同様に画像を拡大して表示する。他の携帯端末装置が複数ある場合、まずひとつの携帯端末装置は、全体画像表示を行う。そして、残りの携帯端末装置は、ユーザ操作がなされた携帯端末装置で表示している画像領域を含む拡大率の異なる画像を表示する。
以上の処理により、ユーザは、拡大画像と、前記拡大画像の表示領域を含む拡大率の異なる画像と、全体を俯瞰した画像とを同時に確認することができるようになる。これにより、複数の携帯端末装置を連係させて動作させる場合において、ユーザが所望する動作効果をより容易に得ることができると共に、ユーザ操作における利便性をより向上させることができる。
【００６９】
＜実施形態３＞
実施形態１では、複数の携帯端末装置においてページドキュメントタイプのファイルが表示されている際に、ユーザが単独の携帯端末装置の操作画面上においてタップ操作を行った場合、操作がなされた携帯端末装置は、タップされたページを１ページで表示した（１ページ表示処理）。また、他の携帯端末装置は、サムネール表示を行った。しかし、このような表示手法に限る必要ななく、他の表示手法が用いられてもよい。本実施形態では、上述のユーザ操作があった場合、各携帯端末装置では以下のような表示処理を行うものとする。
まず、ユーザ操作がなされた携帯端末装置は、実施形態１と同様に１ページ表示処理を行う。他の携帯端末装置が複数ある場合、まずひとつの携帯端末装置は、自装置上にサムネールページ表示処理を行う。そして、残りの携帯端末装置は、ユーザ操作がなされた携帯端末装置に表示されているページの前後のページを１ページ表示処理する。
以上の処理により、ユーザは、サムネール表示の場合においても、所望の表示結果を容易に得ることができるようになる。これにより、ユーザが所望する動作効果をより容易に得ることができると共に、ユーザ操作における利便性をより向上させることができる。
【００７０】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００７１】
以上、上述した各実施形態によれば、複数の端末装置を連係させて動作させる場合において、ユーザが所望する動作効果を得ることが可能な技術を提供することができる。
【００７２】
以上、本発明の好ましい形態について詳述したが、本実施形態は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図１Ａ】
2015125614.tif 000003
【図１Ｂ】
2015125614.tif 000004
【図１Ｃ】
2015125614.tif 000005
【図１Ｄ】
2015125614.tif 000006
【図２Ａ】
2015125614.tif 000007
【図２Ｂ】
2015125614.tif 000008
【図３Ａ】
2015125614.tif 000009
【図３Ｂ】
2015125614.tif 000010
【図４Ａ】
2015125614.tif 000011
【図４Ｂ】
2015125614.tif 000012
【図４Ｃ】
2015125614.tif 000013
【図５】
2015125614.tif 000014
【図６】
2015125614.tif 000015
【図７】
2015125614.tif 000016
【図８】
2015125614.tif 000017
【図９Ａ】
2015125614.tif 000018
【図９Ｂ】
2015125614.tif 000019
【図９Ｃ】
2015125614.tif 000020
【図９Ｄ】
2015125614.tif 000021
【図９Ｅ】
2015125614.tif 000022
【図１０Ａ】
2015125614.tif 000023
【図１０Ｂ】
2015125614.tif 000024
【図１１Ａ】
2015125614.tif 000025
【図１１Ｂ】
2015125614.tif 000026
【図１１Ｃ】
2015125614.tif 000027
【図１２Ａ】
2015125614.tif 000028
【図１２Ｂ】
2015125614.tif 000029
【図１３Ａ】
2015125614.tif 000030
【図１３Ｂ】
2015125614.tif 000031
【図１４Ａ】
2015125614.tif 000032
【図１４Ｂ】
2015125614.tif 000033
【図１４Ｃ】
2015125614.tif 000034
【図１４Ｄ】
2015125614.tif 000035