(57)【要約】【課題】フリック操作のような特定の操作に非対応であっても、他の処理に影響すること無く、効率よく特定の操作と同等の操作結果を得る情報処理装置を提供する。【解決手段】ＭＦＰ１００は、操作受付部２０１によりユーザの操作を受け付け、操作判定部２０２により受け付けた操作が特定の操作であるかを判定する。受け付けた操作が特定の操作であれば、ＭＦＰ１００は、ＭＦＰ状態管理部２０３により、ＭＦＰ１００が該特定の操作に対応しているかを判断する。ＭＦＰ１００は、ＡＰ実行部２０５により、ＭＦＰ１００が特定の操作に対応していれば該特定の操作に応じた処理を実行し、ＭＦＰ１００が特定の操作に対応していなければ該特定の操作と同等の操作結果が得られる他の操作に応じた処理を実行する。【選択図】図２
2016038808.tif 000002
【特許請求の範囲】
【請求項１】
ユーザの操作を受け付ける操作受付手段と、
受け付けた前記操作が特定の操作であるかを判定する操作判定手段と、
受け付けた前記操作が前記特定の操作であれば、自装置が該特定の操作に応じた処理が可能であるかを判断する状態管理手段と、
前記特定の操作に応じた処理が可能であれば該特定の操作に応じた処理を実行し、前記特定の操作に応じた処理が可能でなければ該特定の操作と同等の操作結果が得られる他の操作に応じた処理を実行する実行手段と、を備えることを特徴とする、
情報処理装置。
【請求項２】
前記状態管理手段は、自装置が前記特定の操作に対応しているか否かを記憶しており、これにより該特定の操作に応じた処理が可能であるかを判断することを特徴とする、
請求項１記載の情報処理装置。
【請求項３】
前記状態管理手段は、自装置の処理状態を監視しており、自装置が前記特定の操作に対応しているか否か及び前記処理状態により、前記特定の操作に応じた処理が可能であるかを判断することを特徴とする、
請求項２記載の情報処理装置。
【請求項４】
前記状態管理手段は、自装置が前記特定の操作に対応しているか否か及び自装置が実行中の処理の種類により、前記特定の操作に応じた処理が可能であるかを判断することを特徴とする、
請求項３記載の情報処理装置。
【請求項５】
前記状態管理手段は、実行中の処理の種類に応じて処理負荷が所定の量よりも高いか否かを確認して、低ければ前記特定の操作に応じた処理が可能であると判断し、高ければ前記特定の操作に応じた処理が可能ではないと判断することを特徴とする、
請求項４記載の情報処理装置。
【請求項６】
前記実行手段は、自装置が前記特定の操作に応じた処理が可能ではないときに、受け付けた前記操作の第１の操作量に応じた前記他の操作の第２の操作量を算出し、算出した前記第２の操作量に応じて、前記他の操作に応じた処理を実行することを特徴とする、
請求項１〜５のいずれか１項記載の情報処理装置。
【請求項７】
前記操作判定手段は、受け付けた前記操作がフリック操作であるかを判断し、
前記状態管理手段は、自装置がフリック操作に応じた処理が可能であるかを判断し、
前記実行手段は、自装置がフリック操作に応じた処理が可能であればフリック操作に応じた処理を実行し、自装置がフリック操作に応じた処理が可能でなければタッチ操作に応じた処理を実行することを特徴とする、
請求項１〜６のいずれか１項記載の情報処理装置。
【請求項８】
実行中のアプリケーションの実行画面を表示する表示手段を備えており、
前記実行手段は、自装置がフリック操作に応じた処理が可能であればフリック操作の操作量に応じて前記実行画面をスクロールさせ、自装置がフリック操作に応じた処理が可能でなければタッチ操作の操作量に応じて前記実行画面をスクロールさせることを特徴とする、
請求項７記載の情報処理装置。
【請求項９】
前記実行手段は、前記フリック操作による操作量に応じた前記タッチ操作の回数を算出し、算出した回数のタッチ操作の操作量に応じて前記実行画面をスクロールさせることを特徴とする、
請求項８記載の情報処理装置。
【請求項１０】
ユーザにより操作されるタッチパネルを備える情報処理装置により実行される方法であって、
前記タッチパネルへの前記ユーザの操作を受け付けて、受け付けた前記操作が特定の操作であれば前記情報処理装置が前記特定の操作に応じた処理が可能であるかを判断し、
前記特定の操作に応じた処理が可能であれば該特定の操作に応じた処理を実行し、前記特定の操作に応じた処理が可能でなければ該特定の操作と同等の操作結果が得られる他の操作に応じた処理を実行することを特徴とする、
情報処理方法。
【請求項１１】
ユーザにより操作されるタッチパネルを備えるコンピュータを、
ユーザの操作を受け付ける操作受付手段、
受け付けた前記操作が特定の操作であるかを判定する操作判定手段、
受け付けた前記操作が前記特定の操作であれば、自装置が該特定の操作に応じた処理が可能であるかを判断する状態管理手段、
前記特定の操作に応じた処理が可能であれば該特定の操作に応じた処理を実行し、前記特定の操作に応じた処理が可能でなければ該特定の操作と同等の操作結果が得られる他の操作に応じた処理を実行する実行手段、
として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションソフトウェア（以下、「ＡＰ」という。）がインストールされた情報処理装置において、ユーザの入力操作を制御する技術に関する。なお、本明細書では、情報処理装置として、組み込みＡＰを搭載した高機能な複合機であるＭＦＰ（Multi Function Peripheral）を例として説明する。
【背景技術】
【０００２】
ＭＦＰが搭載するユーザインタフェースは年々進歩している。例えば、現在普及しているＭＦＰのユーザインタフェースには、タッチパネルが多く採用されている。タッチパネルは、液晶パネルのようなディスプレイの表示面にタッチパッドのような透明の位置検出装置が設けられて構成される。タッチパネルを用いたユーザインタフェースは、ＧＵＩ（Graphical User Interface）であり、ディスプレイに、処理に関連付けられたオブジェクトが表示される。オブジェクトには、ボタン、テキストフィールド、リストを表示するためのリストコンポーネント、画像を表示するための画像表示コンポーネント等のＧＵＩ部品（以下、「ＵＩコンポーネント」という。）がある。ユーザは、ディスプレイに表示されるＵＩコンポーネントをタッチ操作することで、ＡＰの起動、ＡＰの実行画面におけるテキストの入力、画面のスクロール、画像の編集等の各種操作を行うことができる。
【０００３】
タッチパネルには、タッチ操作の他に、タッチする指の速度を検知してＵＩコンポーネント等を高速に再描画するフリック操作等の高度な操作をサポートするものがある。フリック操作は、タッチパネルのハードウェアの能力や、タッチパネルを搭載するＭＦＰの処理能力に応じてサポートされるか否かが決まる。そのために、処理能力の低いＭＦＰに最新のタッチパネルを搭載しても、フリック操作を行えない場合がある。
【０００４】
フリック操作に対応したＡＰをフリック操作に対応していないＭＦＰ（以下、「フリック非対応ＭＦＰ」という。）にインストールした場合、フリック機能を利用することは可能である。この場合、フリック非対応ＭＦＰは、処理内容が異なっていても、フリック操作に対応したＭＦＰ（以下、「フリック対応ＭＦＰ」という。）と同等の操作結果を出力する。しかし、ＵＩコンポーネントに対するフリック操作は、ＵＩコンポーネントを多くの回数再描画する必要があるために、フリック非対応ＭＦＰは、ＣＰＵ等の資源を大量に使用する。そのために、フリック操作と同時に他の負荷の大きい処理（例えばプリント処理）を行う場合、フリック非対応ＭＦＰのＣＰＵに高負荷がかかり、処理速度が遅くなる。
また、フリック対応ＭＦＰであっても、フリック操作はＣＰＵ等の資源の占有率が高いために、印刷等の処理速度が遅くなる。逆に、ＣＰＵに高負荷がかかる印刷等の処理は、フリック操作によるＵＩコンポーネントの動きに影響を与え、操作性が悪くなる。
【０００５】
特許文献１には、標準操作画面と簡易操作画面とを切り替えて用いる画像処理装置が開示される。標準操作画面は、マルチタッチが可能な画面であり、簡易操作画面は、シングルタッチが可能な画面である。画像処置装置のＣＰＵの負荷に応じて標準操作画面と簡易操作画面とを切り替えることで、画像処理装置は、ＵＩの処理により画像処理装置の他の処理を制限されることなく、効率よく処理を実行する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特表２０１２−１４２９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１では、画像処理装置の処理状況に応じて、標準操作画面と簡易操作画面とが切り替わる。ユーザは、この切り替わりのタイミングが不明であり、操作中に画面が切り替わることもあり得る。また、標準操作画面の表示中は印刷等の処理を制限して実行するために、印刷等の処理の実行が遅くなる可能性がある。
【０００８】
本発明は、上記の問題を解決するために、フリック操作のような特定の操作に非対応であっても、他の処理に影響すること無く、効率よく特定の操作と同等の操作結果を得る情報処理装置を提供することを主たる課題とする。
【課題を解決するための手段】
【０００９】
上記課題を解決する本発明の情報処理装置は、ユーザの操作を受け付ける操作受付手段と、受け付けた前記操作が特定の操作であるかを判定する操作判定手段と、受け付けた前記操作が前記特定の操作であれば、自装置が該特定の操作に応じた処理が可能であるかを判断する状態管理手段と、前記特定の操作に応じた処理が可能であれば該特定の操作に応じた処理を実行し、前記特定の操作に応じた処理が可能でなければ該特定の操作と同等の操作結果が得られる他の操作に応じた処理を実行する実行手段と、を備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、情報処理装置がフリック操作のような特定の操作に非対応であっても、他の処理に影響すること無く、効率よく特定の操作と同等の操作結果を得ることができる。
【図面の簡単な説明】
【００１１】
【図１】ＭＦＰのハードウェア構成図。
【図２】（ａ）はＭＦＰの機能ブロック図、（ｂ）はプログラムの構成図。
【図３】（ａ）、（ｂ）は実行画面の例示図。
【図４】ユーザがフリック操作を行う場合の処理を表すフローチャート。
【図５】ユーザがフリック操作を行う場合の処理を表すフローチャート。
【図６】実行画面の例示図。
【図７】ユーザがフリック操作を行う場合の処理を表すフローチャート。
【図８】ジョブ実行時のフローチャート。
【図９】ユーザがフリック操作を行う場合の処理を表すフローチャート。
【発明を実施するための形態】
【００１２】
以下、図面を参照して実施の形態を詳細に説明する。
【００１３】
（構成）
図１は、本実施形態の情報処理装置であるＭＦＰのハードウェア構成図である。ＭＦＰ１００は、制御部１１０、操作部１２０、ＨＤＤ（Hard Disk Drive）１３１、通信インタフェース（Ｉ／Ｆ）１３２、スキャナ１３３、プリンタ１３４、及びファクシミリ１３５を備える。
【００１４】
制御部１１０は、ＭＦＰ１００の各部の動作制御を行う。制御部１１０は、ＣＰＵ（Central Processing Unit）１１１、ＲＯＭ（Read Only Memory）１１２、及びＲＡＭ（Random Access Memory）１１３を備える。ＣＰＵ１１１は、ＲＯＭ１１２に格納されるブートプログラムを読み出し、ＲＡＭ１１３をワークエリアとして用いて実行する。また、ＣＰＵ１１１は、ＨＤＤ１３１にインストールされているコンピュータプログラムを読み出し、ＲＡＭ１１３に展開して実行する。
【００１５】
操作部１２０は、入力部１２１及び表示部１２３を備える。入力部１２１は、ユーザからの操作を受け付け、操作内容に応じた制御信号をＣＰＵ１１１に送信する。入力部１２１は、例えばマウス、キーボード、タッチパネル１２２により構成される。表示部１２３は、画像を表示するためのディスプレイである。タッチパネル１２２は、表示部１２３の表示面にタッチパッドのような透明の位置検出装置が設けられて構成される。
【００１６】
ＨＤＤ１３１は、コンピュータプログラムの他に、ＭＦＰ１００で印刷される画像データやＭＦＰ１００の設定データを格納する。ＨＤＤ１３１に格納されるコンピュータプログラムは、例えばＭＦＰに組み込まれるＡＰ（アプリケーション）を実行するためのプログラムである。なお、ＨＤＤ１３１は、ＭＦＰ１００の外部に設けられていてもよい。また、ＨＤＤ１３１は、大容量の記憶媒体であればどのような形式の記憶媒体であってもよい。通信Ｉ／Ｆ１３２は、ＬＡＮ（Local Area Network）等のネットワーク１３６を介した他の情報処理装置との間の通信制御を行う。スキャナ１３３は、原稿から画像を読み取って生成した画像データをＨＤＤ１３１に格納する。プリンタ１３４は、ＨＤＤ１３１に格納されている画像データによりプリント処理を行う。ファクシミリ１３５は、ＨＤＤ１３１に格納されている画像データを、公衆電話回線を介して他のファクシミリ装置に送信し、他のファクシミリ装置から公衆電話回線を介して受信した画像データをＨＤＤ１３１に格納する。
【００１７】
ＭＦＰ１００のユーザがタッチパネル１２２により操作を行うことで、ＣＰＵ１１１は、入力部１２１を介して、タッチパネル１２２への操作内容に応じた制御信号を受信する。ＣＰＵ１１１は、受信した制御信号によりタッチパネル１２２への操作内容を判断して、操作内容に応じたイベントを発行する。
【００１８】
ＡＰの実行中は、表示部１２３に、処理に関連付けられたオブジェクトであるＵＩコンポーネントを含むＡＰの実行画面が表示される。ＵＩコンポーネントには、ボタン、テキストフィールド、リストを表示するためのリストコンポーネント、画像を表示するための画像表示コンポーネント等がある。ＣＰＵ１１１は、ユーザによるタッチパネル１２２への操作内容に応じて発行されたイベントにより、ＵＩコンポーネントの内部状態を変更する。内部状態の変更には、例えば、リストコンポーネントの表示項目の変更、リストコンポーネントの選択されている項目の変更等がある。ＵＩコンポーネントの内部状態の変更により、ＣＰＵ１１１は、表示部１２３のＵＩコンポーネントの表示を変更する。
【００１９】
ＣＰＵ１１１は、タッチパネル１２２への操作としてプレス操作及びリリース操作を判別可能である。「プレス操作」は、ユーザがタッチパネル１２２を押す操作である。「リリース操作」は、ユーザがタッチパネル１２２をプレス操作している状態を止める操作である。表示部１２３に表示されるＵＩコンポーネントの選択は、ユーザが該ＵＩコンポーネントをタッチパネル１２２上でプレス操作及びリリース操作することで行われる。プレス操作後に同じ位置でリリース操作を行うと、タッチ操作となる。ＣＰＵ１１１は、この他に、タッチパネル１２２への操作としてムーブ操作を判別可能である。「ムーブ操作」は、ユーザがタッチパネル１２２上でプレス操作を維持しながら押している位置を移動し、リリース操作を行う一連の操作である。ムーブ操作を所定の時間よりも短時間で素早く行う場合を「フリック操作」という。フリック操作は、タッチパネル１２２を弾くような操作となる。
【００２０】
フリック操作は、リストコンポーネントのように複数のコンテンツを表示するＵＩコンポーネントにおいて、リストの一部のコンテンツしか表示されていない場合に、表示をスクロールする場合等に行われる。表示のスクロールは、例えばユーザの指の動きに追従する。そのために、フリック操作による表示のスクロールには、大量の再描画処理が必要になる。フリック対応ＭＦＰであれば、大量の再描画処理を実行するためのハードウェア資源を備えるが、フリック非対応ＭＦＰでは、ハードウェア資源が乏しいために大量の再描画処理が実行できない。
【００２１】
また、フリック操作による再描画処理は、制御部１１０の処理状況にも影響される。制御部１１０の処理状況は、ＣＰＵ１１１の使用率、ＲＡＭ１１３の使用状況等で表される。例えば、負荷の大きいプリント処理等の処理を実行すると、制御部１１０の処理負荷が大きくなり、ＭＦＰ１００の他の処理を実行する速度が遅くなる。操作部１２０からの複雑な入力操作や、表示部１２３への再描画等の処理では、制御部１１０の処理負荷が大きくなり、ＭＦＰ１００のプリント処理等の処理速度が遅くなる。
【００２２】
ＭＦＰ１００は、制御部１１０（ＣＰＵ１１１）がコンピュータプログラムを読み込んで実行することで、ＭＦＰ１００内に機能を実現する。図２（ａ）は、ＭＦＰ１００内に形成される機能を表す機能ブロック図である。ＭＦＰ１００内には、操作受付部２０１、操作判定部２０２、ＭＦＰ状態管理部２０３、ＡＰ管理部２０４、ＡＰ実行部２０５、スキャナ制御部２０６、プリンタ制御部２０７、ファクシミリ制御部２０８、及び通信制御部２０９が形成される。
【００２３】
操作受付部２０１は、操作部１２０からユーザの操作内容に応じた制御信号を受け付ける。操作受付部２０１は、受け付けた制御信号から操作内容を判断し、操作内容に応じてイベントを発行する。操作判定部２０２は、操作受付部２０１で受け付けた制御信号から操作内容を判定する。操作判定部２０２は、例えば、操作内容が、プレス操作、リリース操作、タッチ操作、フリック操作であるか否を判断する。
【００２４】
ＭＦＰ状態管理部２０３は、ＭＦＰ１００がサポートする操作や、ＭＦＰ１００の処理負荷の状態を管理する。ＭＦＰ状態管理部２０３は、例えば、ＭＦＰ１００がフリック操作のような特定の操作に対応しているか否かを記憶し、且つ実行中のＡＰ、プリント処理等による制御部１１０の処理状態を監視する。ＭＦＰ状態管理部２０３は、ＭＦＰ１００が特定の操作に対応しているか否か、及び処理負荷の状態に応じて、ＭＦＰ１００が特定の操作に応じた処理を可能であるか否かを判断する。
【００２５】
ＡＰ管理部２０４は、ＡＰのインストール、アンインストール、実行開始指示、実行停止指示等のＡＰの管理を行う。実行開始指示及び実行停止指示は、操作受付部２０１で発行されるイベントに応じて行われる。インストールされたＡＰのプログラムは、ＨＤＤ１３１に格納される。ＡＰ実行部２０５は、ＡＰ管理部２０４からの実行開始指示に応じて、ＡＰを実行する。ＡＰ実行部２０５は、実行開始指示で実行が指示されたＡＰのプログラムをＨＤＤ１３１から読み出してＲＡＭ１１３に展開して実行する。ＡＰ実行部２０５は、操作受付部２０１で発行されたイベントに応じて、指示された処理を実行し、実行中のＡＰの実行画面の再描画を行う。
【００２６】
スキャナ制御部２０６は、スキャナ１３３によるスキャン処理の制御を行う。プリンタ制御部２０７は、プリンタ１３４によるプリント処理の制御を行う。ファクシミリ制御部２０８は、ファクシミリ１３５によるファクシミリ処理の制御を行う。通信制御部２０９は、通信Ｉ／Ｆ１３２により、ネットワーク１３６を介して他の装置との通信制御を行う。
【００２７】
図２（ｂ）は、ＡＰ管理部２０４によりＭＦＰ１００にインストールされるＡＰのプログラム構造図である。ＡＰ２１０は、主としてクラスファイル２１１及びライブラリ２１２により構成される。クラスファイル２１１は、ＡＰ２１０の実行プログラムの集合であり、通常複数のファイルから構成される。ライブラリ２１２は、クラスファイル２１１により利用されるプログラムの集合であり、複数存在することが可能である。一般的にライブラリ２１２は、機能別に存在する。ライブラリ２１２に含まれるＵＩコンポーネントライブラリ２１３は、ボタン、テキスト入力部品、リストコンポーネント、画像表示コンポーネント等のＵＩコンポーネントを構成する部品が含まれる。
【００２８】
ＡＰ実行部２０５は、このようなＡＰのプログラムを実行することで、表示部１２３へ、クラスファイルに記述されたレイアウトプログラムに従った実行画面を表示する。実行画面には、ＵＩコンポーネントライブラリ２１３に含まれるＵＩコンポーネントが表示される。ＡＰ実行部２０５は、操作受付部２０１で発行されるイベントに応じて、クラスファイル２１１に記述されたイベント処理プログラムを実行する。ＡＰ実行部２０５は、実行結果に従って実行画面の再描画を行う。ＡＰ実行部２０５は、操作判定部２０２が判定した操作内容がフリック操作のような特定の操作である場合に、ＭＦＰ１００が特定の操作に応じた処理を実行可能であるか否かをＭＦＰ状態管理部２０３に確認する。ＡＰ実行部２０５は、確認の結果、実行可能であれば特定の操作に応じた処理を実行し、実行不可能であれば特定の操作による操作結果と同等の操作結果が得られる他の操作に応じた処理を実行する。つまりＡＰ実行部２０５は、ＭＦＰ１００が特定の操作に対応していなければ、特定の操作による操作結果と同等の操作結果が得られる他の操作に応じた処理を実行する。ＭＦＰ１００が特定の操作に対応していれば、特定の操作に応じた処理及び特定の操作による操作結果と同等の操作結果が得られる他の操作に応じた処理のいずれか一方を実行する。
【００２９】
図３は、ＭＦＰ１００で動作するＡＰの実行画面の例示図である。なお、以下の説明では実行画面の上下方向へのスクロールについて説明しているが、左右方向のスクロールであってもよい。
【００３０】
図３（ａ）は、フリック操作に対応していないＡＰの実行画面を示す。実行画面３００は、リストコンポーネント３０１とスクロールボタン３０２とを備える。リストコンポーネント３０１は、リストに登録されているコンテンツの一部を表示する。スクロールボタン３０２の操作に応じて、リストコンポーネント３０１のコンテンツがスクロールされる。例えば、スクロールボタン３０２が一回押されると（タッチ操作されると）、リストコンポーネント３０１のコンテンツは、一行或いは一ページスクロールする。リストコンポーネント３０１のコンテンツのスクロールは、スクロールボタン３０２を押下（タッチ操作）するイベントの処理及びページ単位で画面を再描画する処理であるので、ＣＰＵ１１１等のＭＦＰ１００のハードウェア資源に対する負荷が小さい。
【００３１】
図３（ｂ）は、フリック操作に対応しているＡＰの実行画面を示す。実行画面３１０はリストコンポーネント３１１を備える。リストコンポーネント３１１は、リストに登録されているコンテンツの一部を表示する、フリック操作に対応したＵＩコンポーネントである。フリック操作に応じて、リストコンポーネント３１１のコンテンツがスクロールされる。リストコンポーネント３１１のスクロールは、フリック操作に対応するイベントの処理及びコンテンツをリアルタイムにスクロールさせながら表示画面を再描画する処理により行われる。そのために、ＣＰＵ１１１等のＭＦＰ１００のハードウェア資源に対する負荷が大きい。
【００３２】
（処理）
以上のような構成のＭＦＰ１００に対してフリック操作等の特定の操作が行われたときの入力制御について説明する。図４は、ＭＦＰ１００により、ユーザがフリック操作を行う場合の処理を表すフローチャートである。図４のフローチャートでは、ＡＰがすでに実行中であり、図３（ｂ）に示す実行画面３１０が表示部１２３に表示されている。
【００３３】
ユーザがタッチパネル１２２上で操作を行うと、操作受付部２０１は、操作内容に応じてイベントを発行する。ＡＰ実行部２０５はイベントを受信する（Ｓ４０１）。操作判定部２０２は、ユーザのタッチパネル１２２上の操作が特定の操作、ここではフリック操作であるか否かを判定する（Ｓ４０２）。
【００３４】
フリック操作であれば（Ｓ４０２：Y）、ＭＦＰ状態管理部２０３は、ＭＦＰ１００がフリック対応ＭＦＰであるか否かを判断する（Ｓ４０３）。ＭＦＰ１００がフリック対応ＭＦＰであれば（Ｓ４０３：Y）、ＡＰ実行部２０５は、フリック操作に応じた処理を実行する（Ｓ４０４）。ここでは、ＡＰ実行部２０５は、リストコンポーネント３１１のコンテンツのスクロールを行う。
【００３５】
ＭＦＰ１００がフリック非対応ＭＦＰであれば（Ｓ４０３：N）、ＡＰ実行部２０５は、フリック操作に応じた処理と同等の操作結果が得られる他の操作に応じた処理を実行する（Ｓ４０５）。ここでは、ＡＰ実行部２０５は、実行画面３００のスクロールボタン３０２が押下（タッチ操作）されたときと同様の処理を行い、リストコンポーネント３１１をスクロールする。
【００３６】
操作受付部２０１で受け付けた操作がフリック操作でなければ（Ｓ４０２：N）、ＡＰ実行部２０５は、操作に応じた処理を実行する（Ｓ４０６）ＡＰ実行部２０５は、処理の結果に応じて再描画した実行画面３１０を表示部１２３に表示する。
【００３７】
図５は、図４の処理のステップＳ４０１、Ｓ４０５の処理を詳細にしたフローチャートである。同じ処理には、同じステップ番号を付してある。
【００３８】
操作受付部２０１は、プレス操作を受け付けて、プレス位置の座標（Ｘ１，Ｙ１）及び時刻をＲＡＭ１１３に記憶する（Ｓ５０１）。次いで操作受付部２０１は、リリース操作を受け付けて、リリース位置の座標（Ｘ２，Ｙ２）及び時刻をＲＡＭ１１３に記憶する（Ｓ５０２）。操作受付部２０１は、プレス操作及びリリース操作に応じたイベントを発行する。操作判定部２０２は、発行されたイベントを受信して、ＲＡＭ１１３に記憶したプレス位置の座標、リリース位置の座標、及びそれぞれを記憶下時刻により、ユーザのタッチパネル１２２上の操作がフリック操作であるか否かを判定する（Ｓ４０２）。
【００３９】
フリック操作でなければ（Ｓ４０２：N）、ＡＰ実行部２０５は、操作に応じた処理を実行する（Ｓ４０６）ＡＰ実行部２０５は、処理の結果に応じて再描画した実行画面３１０を表示部１２３に表示する。フリック操作であれば（Ｓ４０２：Y）、ＭＦＰ状態管理部２０３は、ＭＦＰ１００がフリック対応ＭＦＰであるか否かを判断する（Ｓ４０３）。ＭＦＰ１００がフリック対応ＭＦＰであれば（Ｓ４０３：Y）、ＡＰ実行部２０５は、フリック操作に応じた処理を実行してリストコンポーネント３１１のコンテンツのスクロールを行う（Ｓ４０４）。
【００４０】
ＭＦＰ１００がフリック非対応ＭＦＰであれば（Ｓ４０３：N）、ＡＰ実行部２０５は、ユーザがフリック操作を行ったＵＩコンポーネント（リストコンポーネント３１１）がどの方向にスクロール可能であるかを判断する（Ｓ５０３）。ＵＩコンポーネントのスクロール方向は、ＵＩコンポーネントに予め設定される属性により確認することができる。
【００４１】
ＵＩコンポーネントが左右方向にスクロール可能であれば（Ｓ５０３：左右方向）、ＡＰ実行部２０５は、ＲＡＭ１１３に記憶するプレス位置のＸ座標（Ｘ１）とリリース位置のＸ座標（Ｘ２）の差（Ｘ１−Ｘ２＝ΔＸ）を算出する。ＡＰ実行部２０５は、算出した差（ΔＸ）の大きさに基づいて、スクロール方向を判断する（Ｓ５０４）。ＡＰ実行部２０５は、ＵＩコンポーネントに予め属性として設定されたスクロールを行うか否かを判断するための閾値Ｓと差（ΔＸ）とを比較する。差（ΔＸ）が閾値Ｓの負の数（−Ｓ）未満であれば（Ｓ５０４：ΔＸ＜−Ｓ）、ＡＰ実行部２０５は、実行画面３００の左スクロールボタンが押下（タッチ操作）されたときと同様の処理を行い、リストコンポーネント３１１をスクロールする（Ｓ５０５）。差（ΔＸ）が閾値Ｓの負の数（−Ｓ）以上且つ閾値Ｓ以下であれば（Ｓ５０４：−Ｓ≦ΔＸ≦Ｓ）、ＡＰ実行部２０５は、タッチパネル１２２に有意な操作がなされなかったと判断して処理を行わない（Ｓ５０６）。差（ΔＸ）が閾値Ｓより大きければ（Ｓ５０４：ΔＸ＞Ｓ）、ＡＰ実行部２０５は、実行画面３００の右スクロールボタンが押下（タッチ操作）されたときと同様の処理を行い、リストコンポーネント３１１をスクロールする（Ｓ５０７）。
【００４２】
ＵＩコンポーネントが上下方向にスクロール可能であれば（Ｓ５０３：上下方向）、ＡＰ実行部２０５は、ＲＡＭ１１３に記憶するプレス位置のＹ座標（Ｙ１）とリリース位置のＹ座標（Ｙ２）の差（Ｙ１−Ｙ２＝ΔＹ）を算出する。ＡＰ実行部２０５は、算出した差（ΔＹ）の大きさに基づいて、スクロール方向を判断する（Ｓ５０８）。差（ΔＹ）が閾値Ｓの負の数（−Ｓ）未満であれば（Ｓ５０８：ΔＹ＜−Ｓ）、ＡＰ実行部２０５は、実行画面３００の下スクロールボタンが押下（タッチ操作）されたときと同様の処理を行い、リストコンポーネント３１１をスクロールする（Ｓ５０９）。差（ΔＹ）が閾値Ｓの負の数（−Ｓ）以上且つ閾値Ｓ以下であれば（Ｓ５０８：−Ｓ≦ΔＹ≦Ｓ）、ＡＰ実行部２０５は、タッチパネル１２２に有意な操作がなされなかったと判断して処理を行わない（Ｓ５１０）。差（ΔＹ）が閾値Ｓより大きければ（Ｓ５０８：ΔＹ＞Ｓ）、ＡＰ実行部２０５は、実行画面３００の上スクロールボタンが押下（タッチ操作）されたときと同様の処理を行い、リストコンポーネント３１１をスクロールする（Ｓ５１１）。
【００４３】
以上のようにＭＦＰ１００は、フリック操作に応じた処理を行う。プレス位置の座標（４０，８０）、リリース位置の座標（４０，５０）とすると、ＲＡＭ１１３には、これらの座標とそれぞれの記憶時間が記憶される。操作判定部２０２は、ＲＡＭ１１３に記憶されるこれらの座標とそれぞれの記憶時間により、フリック操作か否かを判定する。ＡＰ実行部２０５は、ＭＦＰ１００がフリック非対応ＭＦＰであり、リストコンポーネント３１１が上下移動のＵＩコンポーネントであると判断して、プレス位置とリリース位置とのＹ座標の差（８０−５０＝３０）を算出する。ＡＰ実行部２０５は、Ｙ座標の差が閾値Ｓ（例えば「５」）より大きい値であると判断して、上スクロールボタンが押下（タッチ操作）されたときと同様の処理を行い、リストコンポーネント３１１をページ単位でスクロールする。
【００４４】
図６は、ＡＰの実行画面３１０の別の例示図である。図６の実行画面３１０のリストコンポーネント３１１は、上スクロールボタン６０１及び下スクロールボタン６０２を備える。フリック非対応ＭＦＰのＭＦＰ１００がフリック操作を受け付けたときに、上スクロールボタン６０１及び下スクロールボタン６０２を表示することで、ユーザに対して、フリック非対応であることを通知し、スクロール操作をわかりやすくする。なお、左右方向にスクロールする場合も同様に左右用のスクロールボタンを表示するようにしてもよい。また、リストコンポーネント３１１の中に上スクロールボタン６０１及び下スクロールボタン６０２を表示しているが、リストコンポーネント３１１の外に表示してもよい。
【００４５】
図７は、ユーザがフリック操作を行う場合にＭＦＰ１００の処理負荷を考慮した処理を表すフローチャートである。図４と同じ処理には，同じステップ番号が付してある。同じ処理についての説明は省略する。
【００４６】
ＭＦＰ状態管理部２０３は、ユーザの操作がフリック操作で（Ｓ４０２：Y）、ＭＦＰ１００がフリック対応ＭＦＰであれば（Ｓ４０３：Y）、制御部１１０の処理負荷が所定の量よりも高いか否かを確認する（Ｓ７０１）。確認の結果、制御部１１０の処理負荷が高ければ（Ｓ７０１：Y）、ＡＰ実行部２０５は、実行画面３００のスクロールボタン３０２が押下（タッチ操作）されたときと同様の処理を行い、リストコンポーネント３１１をスクロールする（Ｓ４０５）。制御部１１０の処理負荷が低ければ（Ｓ７０１：N）、ＡＰ実行部２０５は、フリック操作に応じた処理を実行してリストコンポーネント３１１のコンテンツのスクロールを行う（Ｓ４０４）。
【００４７】
例えば、ユーザがタッチパネル１２２上でリストコンポーネント３１１を上から下に向かってフリック操作すると、操作判定部２０２は、操作がフリック操作であると判定する。ＭＦＰ状態管理部２０３は、ＭＦＰ１００がフリック対応ＭＦＰであると判断すると、制御部１１０の処理負荷を確認する。ＡＰ実行部２０５は、制御部１１０の処理負荷が低ければフリック操作に応じた処理を実行し、高ければスクロールボタン３０２が押下（タッチ操作）されたときと同様の処理を行う。
【００４８】
図８は、ＭＦＰ１００によるジョブ実行時のフローチャートである。ジョブ処理８００には、スキャナ１３３により原稿の画像をスキャンするスキャン処理、プリンタ１３４で印刷を行うプリント処理、ファクシミリ１３５で画像を送受信するファクシミリ処理等の処理がある。
【００４９】
制御部１１０は、ユーザの操作や、印刷を行うための画像データの受信によりジョブを受け付けると、ジョブを管理するジョブキューに受信したジョブを追加する。制御部１１０はジョブを管理しており、ジョブキューにジョブが存在するとジョブを開始する（Ｓ８０１：Y）。ジョブを開始すると、制御部１１０は、ジョブキューで管理するジョブの状態を実行中に移行する（Ｓ８０２）。制御部１１０は、ジョブを終了するとジョブキューからジョブを削除する（Ｓ８０３：Y）。
【００５０】
ＭＦＰ状態管理部２０３は、ジョブ処理８００が実行中であるか否かを判断して、実行中であれば制御部１１０の処理負荷が所定の量よりも高いと判断する。プリンタ制御部２０７は、ネットワーク１３６を介して受信したプリント処理のジョブをＲＡＭ１１３に展開し、ジョブに含まれるページ記述言語をビットマップデータに変換し、変換したビットマップデータをプリンタ１３４で印刷する一連の処理を行う。この場合、ＭＦＰ状態管理部２０３は、ページ記述言語のビットマップデータへの変換の処理負荷が高いと判断する。ファクシミリ制御部２０８は、ファクシミリ処理において、送信時にはＨＤＤ１３１やＲＡＭ１１３に保存するデータを送信するだけである。そのためにＭＦＰ状態管理部２０３は、送信時には処理負荷が低いと判断する。ファクシミリ制御部２０８は、受信時には、受信したデータによりプリント処理と同様の処理を行うことになる。そのためにＭＦＰ状態管理部２０３は、受信時には処理負荷が高いと判断する。
【００５１】
また、ＭＦＰ状態管理部２０３は、プリント処理で形成する画像の品質が高い場合（カラー、高画質等）、制御部１１０の処理負荷が高いと判断する。逆にＭＦＰ状態管理部２０３は、プリント処理で形成する画像の品質が低い場合（白黒、低解像度等）、制御部１１０の処理負荷が低いと判断する。ＭＦＰ状態管理部２０３は、形成する画像の品質に応じて処理負荷が高いか否かを判断するようにしてもよい。
【００５２】
このようにＭＦＰ状態管理部２０３は、ＭＦＰ１００が実行する処理の種類や処理の品質に応じて処理負荷が高いか否かを判断する。
【００５３】
図９は、ユーザがフリック操作を行う場合にフリック操作による操作量と同量の操作となるような処理を表すフローチャートである。図４と同じ処理には，同じステップ番号が付してある。同じ処理についての説明は省略する。なお、実行画面３００のスクロールボタン３０２が押下（タッチ操作）されたときの１回の操作による操作量（スクロールの移動量）がＵＩコンポーネントに設定されている。スクロールボタン３０２の１回のタッチ操作による操作量を「定義量」という。
【００５４】
ユーザの操作がフリック操作で（Ｓ４０２：Y）、ＭＦＰ１００がフリック非対応ＭＦＰであれば（Ｓ４０３：N）、ＡＰ実行部２０５は、ＵＩコンポーネントライブラリ２１３から定義量（Ｓ）を取得する（Ｓ９０１）。ＡＰ実行部２０５は、プレス位置の座標及びリリース位置の座標から得られるフリック操作の移動量と、プレス操作からリリース操作までの時間により、リストコンポーネント３１１を何行スクロールするかを表す操作量（Ｒ）を算出する。操作量（Ｒ）は、ＵＩコンポーネントライブラリ２１３に予め記憶される計算式により算出される。ＡＰ実行部２０５は、取得した定義量（Ｓ）と算出した操作量（Ｒ）により、スクロールボタン３０２を押下（タッチ操作）する回数（Ｒ／Ｓ＝Ｎ）を算出する（Ｓ９０３）。なお小数点以下は四捨五入される。ＡＰ実行部２０５は、算出した回数（Ｎ）のスクロールボタン３０２の押下（タッチ操作）と同様の処理を行い、リストコンポーネント３１１をスクロールする（Ｓ９０４）。
【００５５】
例えば定義値が「６」、フリック操作による操作量が「２０」の場合、回数（Ｎ）は、「３」になる。ＡＰ実行部２０５は、３回のスクロールボタン３０２の押下（タッチ操作）と同様の処理を行い、リストコンポーネント３１１をスクロールする。このような処理により、フリック非対応ＭＦＰであっても、フリック操作の操作量をスクロールボタン３０２の操作の操作量に換算して、フリック操作と同等の処理を実現することができる。左右のスクロールについても同様である。
【００５６】
以上のように本実施形態のＭＦＰ１００は、フリック操作のような特定の操作を判定し、ＭＦＰ１００が特定の操作に対応するか否かを判断する。対応する場合には特定の操作に応じた処理を実行し、対応していない場合には特定の操作と同じ操作結果が得られる他の操作に応じた処理を実行する。例えば、フリック非対応ＭＦＰは、フリック操作（特定の操作）があると、スクロールボタンが操作（特定の操作と同等の操作結果が得られる操作）されたときの処理を実行する。これによりフリック操作のような特定の操作に非対応な装置であっても、他の処理に影響すること無く、効率よく特定の操作に応じた処理と同等の操作結果を得ることができる。また、処理負荷により処理能力が低下して特定の操作に応じた処理が実行できない場合でも、同等の操作結果を得ることができる。ユーザは、フリック非対応ＭＦＰであってもフリック対応ＭＦＰと同等の操作結果を得ることができるために、ＭＦＰの種類を考慮することなく操作を行うことができる。また、プリント処理等のＭＦＰ１００自体の処理への特定の処理の影響を低減することができる。
【符号の説明】
【００５７】
１００…ＭＦＰ、２０１…操作受付部、２０２…操作判定部、２０３…ＭＦＰ状態管理部、２０４…ＡＰ管理部、２０５…ＡＰ実行部、２０６…スキャナ制御部、２０７…プリンタ制御部、２０８…ファクシミリ制御部、２０９…通信制御部
【図１】
2016038808.tif 000003
【図２】
2016038808.tif 000004
【図３】
2016038808.tif 000005
【図４】
2016038808.tif 000006
【図５】
2016038808.tif 000007
【図６】
2016038808.tif 000008
【図７】
2016038808.tif 000009
【図８】
2016038808.tif 000010
【図９】
2016038808.tif 000011