(57)【要約】【課題】  新たな処理を定めるアプリケーションプログラムをインストール可能にする。【解決手段】  ＭＦＰが備えるＣＰＵは、操作パネルにより指示操作が受け付けられと、操作識別情報を出力するオペレーティング部５７と、複数の処理識別情報のいずれか１つが入力されることに応じて、処理識別情報に対応する種類の処理を実行するアプリケーション部５１と、アプリケーションプログラムがインストールされる段階で、複数種類の処理それぞれを１以上の操作の組と関連付ける関連付部７１と、オペレーティング部５７により１以上の操作識別情報が出力されることに応じて、出力された１以上の操作識別情報で特定される１以上の操作の組と関連付けられた処理を特定する処理特定部７７と、特定された処理の処理識別情報をアプリケーション部５１に出力する操作通知部７９と、を備える。【選択図】        図５
2013162366.tif 000002
【特許請求の範囲】
【請求項１】
複数種類の操作のうちから操作ユーザーにより指示された指示操作を受け付ける操作受付手段と、
前記操作受付手段を制御する制御手段と、を備えた画像処理装置であって、
前記制御手段は、
前記操作受付手段により前記指示操作が受け付けられることに応じて、前記指示操作を識別するための操作識別情報を出力するオペレーティング手段と、
アプリケーションプログラムにより定められる複数種類の処理をそれぞれ識別するための複数の処理識別情報のいずれか１つが入力されることに応じて、前記複数種類の処理のうち前記入力された処理識別情報に対応する種類の処理を実行するアプリケーション手段と、
前記アプリケーションプログラムがインストールされる段階で、前記アプリケーションプログラムに対応して、前記アプリケーションプログラムが定める前記複数種類の処理それぞれを前記複数種類の操作のうち１以上の操作の組と関連付ける関連付手段と、
前記オペレーティング手段により１以上の前記操作識別情報が出力されることに応じて、前記出力された１以上の操作識別情報で特定される１以上の操作の組と、前記関連付手段によって前記複数種類の処理のうちから前記アプリケーションプログラムに対応して関連付けられた処理を特定する処理特定手段と、
前記特定された処理の処理識別情報を前記アプリケーション手段に出力する操作通知手段と、を備えた画像処理装置。
【請求項２】
前記関連付手段は、複数の処理識別情報それぞれに前記複数種類の操作のうち１以上の操作それぞれの操作識別情報の組の複数を予め関連付けたマスターテーブルを参照して、前記アプリケーション手段が実行可能な前記複数の処理それぞれの処理識別情報に対して前記マスターテーブルによって関連付けられた複数の組のうちから、他の処理識別情報のいずれにも対応付けられていない組を選択する選択手段を含む、請求項１に記載の画像処理装置。
【請求項３】
前記マスターテーブルは、複数の処理識別情報それぞれに、前記複数種類の操作のうち１以上の操作それぞれの操作識別情報の組の複数を、優先順位を付して関連付けており、
前記選択手段は、前記複数の組のうちから優先順位の高い組を選択する、請求項２に記載の画像処理装置。
【請求項４】
前記関連付手段は、複数種類のアプリケーションプログラムがインストールされる場合、該複数種類のアプリケーションプリグラムそれぞれがインストールされる段階で、該インストールされたアプリケーションプログラムに対応して、前記アプリケーションプログラムが定める前記複数種類の処理それぞれを前記複数種類の操作のうち１以上の操作の組と関連付け、
前記処理特定手段は、前記オペレーティング手段により１以上の前記操作識別情報が出力されることに応じて、前記出力された１以上の操作識別情報で特定される１以上の操作の組と、前記関連付手段によって、前記制御手段が実行する前記アプリケーションプログラムに対応して、関連付けられた処理を特定し、
前記操作通知手段は、前記特定された処理の処理識別情報を、前記制御手段が実行する前記アプリケーションプログラムに対応する前記アプリケーション手段に出力する、請求項１に記載の画像処理装置。
【請求項５】
前記操作受付手段は、複数の接点スイッチを含み、
前記オペレーティング手段は、前記複数の接点スイッチの１以上の接続が検出されることに応じて、前記複数種類の操作のうちから前記接続が検出された１以上の接点スイッチそれぞれに対応する操作識別情報を出力する、請求項１〜４のいずれかに記載の画像処理装置。
【請求項６】
前記操作受付手段は、画像を表示する表示手段と、
前記表示手段の表示面の操作ユーザーによって指示された位置を検出する位置検出手段と、を含み、
前記オペレーティング手段は、前記位置検出手段により検出された前記表示面の位置を操作識別情報として出力し、
前記制御手段は、ボタンの画像を前記オペレーティング手段を介して前記表示手段に表示するボタン表示制御手段と、
前記オペレーティング手段が出力する操作識別情報が示す前記表示面の位置が前記表示手段により表示されたボタンの画像内の場合、当該ボタンに対応する操作を特定する操作特定手段と、をさらに含む、請求項１〜５のいずれかに記載の画像処理装置。
【請求項７】
複数種類の操作のうちから操作ユーザーにより指示された指示操作を受け付ける操作受付手段を備えた画像処理装置を制御するコンピュータで実行される操作標準化方法であって、
前記コンピュータは、
前記操作受付手段により前記指示操作が受け付けられることに応じて、前記指示操作を識別するための操作識別情報を出力するオペレーティング手段と、
アプリケーションプログラムにより定められる複数種類の処理をそれぞれ識別するための複数の処理識別情報のいずれか１つが入力されることに応じて、前記複数種類の処理のうち前記入力された処理識別情報に対応する種類の処理を実行するアプリケーション手段と、を備え、
前記アプリケーションプログラムがインストールされる段階で、前記アプリケーションプログラムに対応して、前記アプリケーションプログラムが定める前記複数種類の処理それぞれを前記複数種類の操作のうち１以上の操作の組と関連付ける関連付ステップと、
前記オペレーティング手段により１以上の前記操作識別情報が出力されることに応じて、前記出力された１以上の操作識別情報で特定される１以上の操作の組と、前記関連付けるステップにおいて前記複数種類の処理のうちから前記アプリケーションプログラムに対応して関連付けられた処理を特定する処理特定ステップと、
前記特定された処理の処理識別情報を前記アプリケーション手段に出力する操作通知ステップと、を前記コンピュータに実行させる操作標準化方法。
【請求項８】
複数種類の操作のうちから操作ユーザーにより指示された指示操作を受け付ける操作受付手段を備えた画像処理装置を制御するコンピュータで実行される操作標準化プログラムであって、
前記コンピュータは、
前記操作受付手段により前記指示操作が受け付けられることに応じて、前記指示操作を識別するための操作識別情報を出力するオペレーティング手段と、
アプリケーションプログラムにより定められる複数種類の処理をそれぞれ識別するための複数の処理識別情報のいずれか１つが入力されることに応じて、前記複数種類の処理のうち前記入力された処理識別情報に対応する種類の処理を実行するアプリケーション手段と、を備え、
前記アプリケーションプログラムがインストールされる段階で、前記アプリケーションプログラムに対応して、前記アプリケーションプログラムが定める前記複数種類の処理それぞれを前記複数種類の操作のうち１以上の操作の組と関連付ける関連付ステップと、
前記オペレーティング手段により１以上の前記操作識別情報が出力されることに応じて、前記出力された１以上の操作識別情報で特定される１以上の操作の組と、前記関連付けるステップにおいて前記複数種類の処理のうちから前記アプリケーションプログラムに対応して関連付けられた処理を特定する処理特定ステップと、
前記特定された処理の処理識別情報を前記アプリケーション手段に出力する操作通知ステップと、を前記コンピュータに実行させる操作標準化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は画像形成装置、操作標準化方法および操作標準化プログラムに関し、特に、アプリケーションプログラムがインストールされる画像形成装置、その画像形成装置で実行される操作標準化方法および操作標準化プログラムに関する。
【背景技術】
【０００２】
近年、複合機（ＭＦＰ）で代表される画像形成装置において、アプリケーションプログラムをインストールすることが可能になっているものがあり、ユーザーは、使用形態に応じたアプリケーションプログラムをインストールすることによって、ＭＦＰをカスタマイズすることができる。
【０００３】
一方、ＭＦＰは、商品開発によって新機種に新たな機能が追加される等して操作キーが追加される場合があり、機種によってそれぞれが備えるキーボードの種類が異なる場合がある。このため、複数種類のＭＦＰに対応するために、ＭＦＰの種類ごとに、アプリケーションプログラムが開発されてきた。また、アプリケーションプログラムは、種々のものが開発されており、ＭＦＰが備えるキーボードでは、アプリケーションプログラムの実行に際して必要な操作キーが不足する場合がある。この場合には、アプリケーションプログラムにおいて、不足する操作キーに対応する操作を受け付けるために、例えば、新たな操作キーの画像を表示し、タッチパネルを用いて新たな操作キーの画像を指示する操作を受け付ける処理を記述する必要があった。
【０００４】
特開２００６−０７９３５７号公報には、プリントアプリケーションプログラムを実行するアプリケーション実行部を有し、利用者の操作指示に応じた所定の情報処理を行うものであって、タッチパネル式の表示部と、複数の操作キーを有するキーボードと、キーボードが有する操作キーに関する情報と、プリントアプリケーションプログラムの実行に際して必要な操作キーに関する情報とを取得し、これらに基づいて、プリントアプリケーションプログラムの実行に際して必要な操作キーのうち、キーボードが有していない操作キーを表す画像を表示部に表示させる制御を行う表示・入力制御部と、を有するプリンターが記載されている。従来のプリンターは、プリントアプリケーションプログラムの実行に際して必要な操作キーのうち、キーボードが有していない操作キーが存在しない場合であっても、プリントアプリケーションプログラムを実行させることができる。
【０００５】
しかしながら、従来のプリンターは、キーボードが有していない操作キーの数が、表示部に表示させるための画像の数よりも多くなる場合には、対応することができない場合がある。また、プリントアプリケーションプログラムの実行に際して必要な操作キーをキーボードが有していない場合、キーボードが有する複数の操作キーのうちに使用されない操作キーが存在する場合であっても、キーボードが有していない操作キーを表す画像が表示される。このため、キーボードが有する複数の操作キーのうちに使用されない操作キーが発生して、キーボードを有効に利用することができない場合がある。
【特許文献１】特開２００６−０７９３５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
この発明は上述した問題点を解決するためになされたもので、この発明の目的の１つは、新たな処理を定めるアプリケーションプログラムをインストールすることが可能な画像処理装置、操作標準化方法および操作標準化プログラムを提供することである。
【０００７】
この発明の他の目的は、アプリケーションプログラムの開発を容易にした画像処理装置、操作標準化方法および操作標準化プログラムを提供することである。
【課題を解決するための手段】
【０００８】
上述した目的を達成するためにこの発明のある局面によれば、画像処理装置は、複数種類の操作のうちから操作ユーザーにより指示された指示操作を受け付ける操作受付手段と、操作受付手段を制御する制御手段と、を備えた画像処理装置であって、制御手段は、操作受付手段により指示操作が受け付けられることに応じて、指示操作を識別するための操作識別情報を出力するオペレーティング手段と、アプリケーションプログラムにより定められる複数種類の処理をそれぞれ識別するための複数の処理識別情報のいずれか１つが入力されることに応じて、複数種類の処理のうち入力された処理識別情報に対応する種類の処理を実行するアプリケーション手段と、アプリケーションプログラムがインストールされる段階で、アプリケーションプログラムに対応して、アプリケーションプログラムが定める複数種類の処理それぞれを複数種類の操作のうち１以上の操作の組と関連付ける関連付手段と、オペレーティング手段により１以上の操作識別情報が出力されることに応じて、出力された１以上の操作識別情報で特定される１以上の操作の組と、関連付手段によって複数種類の処理のうちからアプリケーションプログラムに対応して関連付けられた処理を特定する処理特定手段と、特定された処理の処理識別情報をアプリケーション手段に出力する操作通知手段と、を備える。
【０００９】
この局面に従えば、アプリケーションプログラムがインストールされる段階で、アプリケーションプログラムに対応して、アプリケーションプログラムが定める複数種類の処理それぞれが複数種類の操作のうち１以上の操作の組と関連付けられる。このため、新たな処理を定めるアプリケーションプログラムをインストールすることが可能な画像処理装置を提供することができる。また、画像処理装置が受け付けることのできる複数の種類の操作と、アプリケーションプログラムが定める複数種類の処理とが関連付けられるので、アプリケーションプログラムがインストールされる画像処理装置に関係なく、アプリケーションプログラムを開発することが可能となる。その結果、アプリケーションプログラムの開発を容易にした画像処理装置を提供することができる。
【００１０】
好ましくは、関連付手段は、複数の処理識別情報それぞれに複数種類の操作のうち１以上の操作それぞれの操作識別情報の組の複数を予め関連付けたマスターテーブルを参照して、アプリケーション手段が実行可能な複数の処理それぞれの処理識別情報に対してマスターテーブルによって関連付けられた複数の組のうちから、他の処理識別情報のいずれにも対応付けられていない組を選択する選択手段を含む。
【００１１】
この局面に従えば、アプリケーションプログラムにより定められる複数種類の処理それぞれの処理識別情報に対してマスターテーブルによって関連付けられた複数の組のうちから、他の処理識別情報のいずれにも対応付けられていない組が選択されるので、アプリケーションごとに、１つの処理に１つの組が関連付けられる。このため、アプリケーションプログラムにより定められる複数種類の処理それぞれを実行させるための１以上の操作の組を定めることができる。
【００１２】
好ましくは、マスターテーブルは、複数の処理識別情報それぞれに、複数種類の操作のうち１以上の操作それぞれの操作識別情報の組の複数を、優先順位を付して関連付けており、選択手段は、複数の組のうちから優先順位の高い組を選択する。
【００１３】
この局面に従えば、複数の処理に優先順位の高い組が関連付けられるので、複数種類のアプリケーションプログラム間で、同じ処理に同じ組が関連付けられる確率が高くなる。そのため、複数種類のアプリケーションプログラムがインストールされる場合に、操作を容易にすることができる。
【００１４】
好ましくは、関連付手段は、複数種類のアプリケーションプログラムがインストールされる場合、該複数種類のアプリケーションプリグラムそれぞれがインストールされる段階で、該インストールされたアプリケーションプログラムに対応して、アプリケーションプログラムが定める複数種類の処理それぞれを複数種類の操作のうち１以上の操作の組と関連付け、処理特定手段は、オペレーティング手段により１以上の操作識別情報が出力されることに応じて、出力された１以上の操作識別情報で特定される１以上の操作の組と、関連付手段によって、制御手段が実行するアプリケーションプログラムに対応して、関連付けられた処理を特定し、操作通知手段は、特定された処理の処理識別情報を、制御手段が実行するアプリケーションプログラムに対応するアプリケーション手段に出力する。
【００１５】
この局面に従えば、複数種類のアプリケーションプログラムがインストールされる場合であっても、複数種類のアプリケーションプログラムそれぞれにより定められる複数種類の処理を実行するための操作を定めることができる。
【００１６】
好ましくは、操作受付手段は、複数の接点スイッチを含み、オペレーティング手段は、複数の接点スイッチの１以上の接続が検出されることに応じて、複数種類の操作のうちから接続が検出された１以上の接点スイッチそれぞれに対応する操作識別情報を出力する。
【００１７】
この局面に従えば、複数の接点スイッチの１以上を接続する操作に対応して、アプリケーションプログラムにより定められる複数種類の処理を関連付けることができる。
【００１８】
好ましくは、操作受付手段は、画像を表示する表示手段と、表示手段の表示面の操作ユーザーによって指示された位置を検出する位置検出手段と、を含み、オペレーティング手段は、位置検出手段により検出された表示面の位置を操作識別情報として出力し、制御手段は、ボタンの画像をオペレーティング手段を介して表示手段に表示するボタン表示制御手段と、オペレーティング手段が出力する操作識別情報が示す表示面の位置が表示手段により表示されたボタンの画像内の場合、当該ボタンに対応する操作を特定する操作特定手段と、をさらに含む。
【００１９】
この局面に従えば、表示されたボタンの画像を指示する操作に対応して、アプリケーションプログラムにより定められる複数種類の処理を関連付けることができる。
【００２０】
この発明の他の局面に従えば、標準化方法は、複数種類の操作のうちから操作ユーザーにより指示された指示操作を受け付ける操作受付手段を備えた画像処理装置を制御するコンピュータで実行される操作標準化方法であって、コンピュータは、操作受付手段により指示操作が受け付けられることに応じて、指示操作を識別するための操作識別情報を出力するオペレーティング手段と、アプリケーションプログラムにより定められる複数種類の処理をそれぞれ識別するための複数の処理識別情報のいずれか１つが入力されることに応じて、複数種類の処理のうち入力された処理識別情報に対応する種類の処理を実行するアプリケーション手段と、を備え、アプリケーションプログラムがインストールされる段階で、アプリケーションプログラムに対応して、アプリケーションプログラムが定める複数種類の処理それぞれを複数種類の操作のうち１以上の操作の組と関連付ける関連付ステップと、オペレーティング手段により１以上の操作識別情報が出力されることに応じて、出力された１以上の操作識別情報で特定される１以上の操作の組と、関連付けるステップにおいて複数種類の処理のうちからアプリケーションプログラムに対応して関連付けられた処理を特定する処理特定ステップと、特定された処理の処理識別情報をアプリケーション手段に出力する操作通知ステップと、をコンピュータに実行させる。
【００２１】
この局面に従えば、新たな処理を定めるアプリケーションプログラムをインストールすることが可能な操作標準化方法を提供することができる。また、アプリケーションプログラムの開発を容易にした操作標準化方法を提供することができる。
【００２２】
この発明のさらに他の局面によれば、操作標準化プログラムは、複数種類の操作のうちから操作ユーザーにより指示された指示操作を受け付ける操作受付手段を備えた画像処理装置を制御するコンピュータで実行される操作標準化プログラムであって、コンピュータは、操作受付手段により指示操作が受け付けられることに応じて、指示操作を識別するための操作識別情報を出力するオペレーティング手段と、アプリケーションプログラムにより定められる複数種類の処理をそれぞれ識別するための複数の処理識別情報のいずれか１つが入力されることに応じて、複数種類の処理のうち入力された処理識別情報に対応する種類の処理を実行するアプリケーション手段と、を備え、アプリケーションプログラムがインストールされる段階で、アプリケーションプログラムに対応して、アプリケーションプログラムが定める複数種類の処理それぞれを複数種類の操作のうち１以上の操作の組と関連付ける関連付ステップと、オペレーティング手段により１以上の操作識別情報が出力されることに応じて、出力された１以上の操作識別情報で特定される１以上の操作の組と、関連付けるステップにおいて複数種類の処理のうちからアプリケーションプログラムに対応して関連付けられた処理を特定する処理特定ステップと、特定された処理の処理識別情報をアプリケーション手段に出力する操作通知ステップと、をコンピュータに実行させる。
【００２３】
この局面に従えば、新たな処理を定めるアプリケーションプログラムをインストールすることが可能な操作標準化プログラムを提供することができる。また、アプリケーションプログラムの開発を容易にした操作標準化プログラムを提供することができる。
【図面の簡単な説明】
【００２４】
【図１】本実施の形態におけるＭＦＰの外観を示す斜視図である。
【図２】ＭＦＰのハードウェア構成の概要を示すブロック図である。
【図３】操作パネルの平面図である。
【図４】ＣＰＵのソフトウェアアーキテクチャの一例を示す図である。
【図５】ＭＦＰが備えるＣＰＵが有する機能の一例を、ＨＤＤに記憶される情報とともに示すブロック図である。
【図６】マスターテーブルの一例を示す第１の図である。
【図７】第１変換テーブルの一例を示す第１の図である。
【図８】第２変換テーブルの一例を示す第１の図である。
【図９】変換テーブル生成処理の流れの一例を示すフローチャートである。
【図１０】操作通知処理の流れの一例を示すフローチャートである。
【図１１】ソフトキーの一例を示す図である。
【図１２】別のＭＦＰの操作パネルの平面図である。
【図１３】マスターテーブルの一例を示す第２の図である。
【図１４】第１変換テーブルの一例を示す第２の図である。
【図１５】第２変換テーブルの一例を示す第２の図である。
【発明を実施するための形態】
【００２５】
以下、本発明の実施の形態について図面を参照して説明する。以下の説明では同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【００２６】
図１は、本実施の形態におけるＭＦＰの外観を示す斜視図である。図２は、ＭＦＰのハードウェア構成の概要を示すブロック図である。図１および図２を参照して、画像形成装置として機能するＭＦＰ（Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）１００は、メイン回路１１０と、原稿を読み取るための原稿読取部１３０と、原稿を原稿読取部１３０に搬送するための自動原稿搬送装置１２０と、原稿読取部１３０が原稿を読み取って出力する画像データに基づいて用紙等に画像を形成するための画像形成部１４０と、画像形成部１４０に用紙を供給するための給紙部１５０と、ユーザーインターフェースとしての操作パネル１６０とを含む。
【００２７】
メイン回路１１０は、ＣＰＵ１１１と、通信インターフェース（Ｉ／Ｆ）部１１２と、ＲＯＭ１１３と、ＲＡＭ１１４と、大容量記憶装置としてのハードディスクドライブ（ＨＤＤ）１１５と、ファクシミリ部１１６と、外部記憶装置１１７と、を含む。ＣＰＵ１１１は、自動原稿搬送装置１２０、原稿読取部１３０、画像形成部１４０、給紙部１５０および操作パネル１６０と接続され、ＭＦＰ１００の全体を制御する。
【００２８】
自動原稿搬送装置１２０は、原稿給紙トレイ上にセットされた複数枚の原稿を１枚ずつ自動的に原稿読取部１３０のプラテンガラス上に設定された所定の原稿読み取り位置まで搬送し、原稿読取部１３０により原稿画像が読み取られた原稿を原稿排紙トレイ上に排出する。原稿読取部１３０は、原稿読取位置に搬送されてきた原稿に光を照射する光源と、原稿で反射した光を受光する光電変換素子とを含み、原稿のサイズに応じた原稿画像を走査する。光電変換素子は、受光した光を電気信号である画像データに変換して、画像形成部１４０に出力する。給紙部１５０は、給紙トレイに収納された用紙を画像形成部１４０に搬送する。
【００２９】
画像形成部１４０は、周知の電子写真方式により画像を形成するものであって、原稿読取部１３０から入力される画像データにシェーディング補正などの各種のデータ処理を施した、データ処理後の画像データまたは、外部から受信された画像データに基づいて、給紙部１５０により搬送される用紙に画像を形成する。
【００３０】
ファクシミリ部１１６は、公衆交換電話網（ＰＳＴＮ）に接続され、ＰＳＴＮにファクシミリデータを送信する、またはＰＳＴＮからファクシミリデータを受信する。ファクシミリ部１１６は、受信したファクシミリデータを、ＨＤＤ１１５に記憶するか、または、画像形成部１４０でプリント可能なプリントデータに変換して、画像形成部１４０に出力する。これにより、画像形成部１４０は、ファクシミリ部１１６により受信されたファクシミリデータを用紙に画像を形成する。また、ファクシミリ部１１６は、ＨＤＤ１１５に記憶されたデータをファクシミリデータに変換して、ＰＳＴＮに接続されたファクシミリ装置に送信する。
【００３１】
通信Ｉ／Ｆ部１１２は、ネットワークにＭＦＰ１００を接続するためのインターフェースである。通信Ｉ／Ｆ部１１２は、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）またはＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）等の通信プロトコルで、ネットワークに接続された他のコンピュータまたは画像形成装置と通信する。なお、通信Ｉ／Ｆ部１１２が接続されるネットワークは、ローカルエリアネットワーク（ＬＡＮ）であり、接続形態は有線または無線を問わない。またネットワークは、ＬＡＮに限らず、ワイドエリアネットワーク（ＷＡＮ）、公衆交換電話網（ＰＳＴＮ）、インターネット等であってもよい。
【００３２】
ＲＯＭ１１３は、ＣＰＵ１１１が実行するプログラム、またはそのプログラムを実行するために必要なデータを記憶する。ＲＡＭ１１４は、ＣＰＵ１１１がプログラムを実行する際の作業領域として用いられる。また、ＲＡＭ１１４は、原稿読取部１３０から連続的に送られてくる読取画像を一時的に記憶する。
【００３３】
操作パネル１６０は、液晶表示装置（ＬＣＤ）１６５と、ＬＣＤ１６５の表示を制御する表示制御部１６１と、ＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）１６３と、タッチパネル１６９と、ハードキー部１７０と、タッチパネル１６９およびハードキー部１７０を制御する入力制御部１６７と、を含む。ＬＣＤ１６５およびハードキー部１７０は、ＭＦＰ１００の上面に設けられる。
【００３４】
表示制御部１６１は、ＣＰＵ１１１、ＶＲＡＭ１６３およびＬＣＤ１６５と接続される。ＶＲＡＭ１６３は、表示制御部１６１の作業領域として用いられ、ＬＣＤ１６５に表示する画像を一時記憶する。表示制御部１６１は、ＣＰＵ１１１により制御されて、ＬＣＤ１６５を制御し、ＬＣＤ１６５にＶＲＡＭ１６３に記憶された画像を表示させる。表示制御部１６１は、後述する操作画面をＬＣＤ１６５に表示させる。
【００３５】
ハードキー部１７０は、複数のハードキーを含む。ハードキーは、接点スイッチであり、入力制御部１６７に接続される。ハードキーは、操作ユーザーにより押下されると接点を閉じて、入力制御部１６７に接続される回路を閉じる。ハードキーは、ＭＦＰ１００を操作する操作ユーザーにより押下されている間は回路を閉じ、操作ユーザーにより押下されていない間は回路を開く。
【００３６】
タッチパネル１６９は、ＬＣＤ１６５の上面または下面に設けられ、操作ユーザーにより押下された位置の座標を入力制御部１６７に出力する。タッチパネル１６９は、操作ユーザーが指またはスタイラスペンで指示した位置を検出し、検出した位置の座標を入力制御部１６７に出力する。タッチパネル１６９は、ＬＣＤ１６５の表示面と同じまたはそれ以上のサイズであるのが好ましい。タッチパネル１６９は、ＬＣＤ１６５に重畳して設けられるので、タッチパネル１６９は、操作ユーザーがＬＣＤ１６５の表示面を指示すれば、ＬＣＤ１６５の表示面中で操作ユーザーが指示した位置の座標を入力制御部１６７に出力する。タッチパネルは、例えば、抵抗膜方式、表面弾性波方式、赤外線方式、電磁誘導方式、静電容量方式を用いることができ、その方式は限定されない。
【００３７】
入力制御部１６７は、ハードキー部１７０のうちで回路を閉じたハードキーが存在する場合、回路を閉じたハードキーの識別情報をＣＰＵ１１１に出力する。また、入力制御部１６７は、タッチパネル１６９が操作ユーザーにより指示された位置を検出する場合、タッチパネル１６９から出力される座標を、ＬＣＤ１６５の表示面の位置を示す位置情報としてＣＰＵ１１１に出力する。
【００３８】
外部記憶装置１１７は、ＣＰＵ１１１により制御され、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１１８、または半導体メモリが装着される。ＣＰＵ１１１は、外部記憶装置１１７を介してＣＤ−ＲＯＭ１１８にアクセス可能である。ＣＰＵ１１１は、外部記憶装置１１７に装表されたＣＤ−ＲＯＭ１１８に記録されたプログラムをＲＡＭ１１４にロードして実行する。なお、ＣＰＵ１１１が実行するプログラムは、ＣＤ−ＲＯＭ１１８に記録されたプログラムに限られず、ＨＤＤ１１５に記憶されたプログラムをＲＡＭ１１４にロードして実行するようにしてもよい。この場合、通信Ｉ／Ｆ部１１２に接続されるネットワークを介して、ネットワークに接続された他のコンピュータが、ＭＦＰ１００のＨＤＤ１１５に記憶されたプログラムを書換える、または、新たなプログラムを追加して書き込むようにしてもよい。さらに、ＭＦＰ１００が、ネットワークに接続された他のコンピュータからプログラムをダウンロードして、そのプログラムをＨＤＤ１１５に記憶するようにしてもよい。ここでいうプログラムは、ＣＰＵ１１１が直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
【００３９】
なお、ＣＰＵ１１１が実行するプログラムを記憶する媒体としては、ＣＤ−ＲＯＭ１１８に限られず、光ディスク（ＭＯ（Ｍａｇｎｅｔｉｃ  Ｏｐｔｉｃａｌ  Ｄｉｓｃ／ＭＤ（Ｍｉｎｉ  Ｄｉｓｃ）／ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ））、ＩＣカード、光カード、マスクＲＯＭ、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  ＥＰＲＯＭ）などの半導体メモリであってもよい。
【００４０】
図３は、操作パネル１６０の平面図である。図３を参照して、操作パネル１６０は、ＬＣＤ１６５と、ＬＣＤ１６５に重畳して設けられたタッチパネル１６９と、ＬＣＤ１６５の右側に、ハードキー部１７０と、を含む。ハードキー部１７０は、キー識別情報が「ｓｔａｒｔ」のスタートキー１７１と、キー識別情報が「ｓｔｏｐ」のストップキー１７３と、キー識別情報が「Ｒｅｓｅｔ」のリセットキー１７５と、１０個のキーからなる数字キー群１７７と、を含む。数字キー群１７７は、キー識別情報が「０」〜「９」の１０個の数字キーを含む。
【００４１】
図４は、ＣＰＵのソフトウェアアーキテクチャの一例を示す図である。図４を参照して、ＣＰＵ１１１には、オペレーティングシステム（ＯＳ）層が形成され、その上の階層に、ＭＦＰプロセス層が形成される。ＭＦＰプロセス層の上層に、アプリケーションプラットフォーム（ＰＦ）層、アプリケーション層の順に形成される。
【００４２】
ＯＳ層は、ＣＰＵ１１１がＯＳプログラムを実行するタスクが属する。ＯＳ層に属するタスクは、ＭＦＰ１００のハードウェア資源を制御する処理を実行する。ハードウェア資源は、ここでは、通信Ｉ／Ｆ部１１２、ＲＯＭ１１３、ＲＡＭ１１４、ＨＤＤ１１５、ファクシミリ部１１６、外部記憶装置１１７、自動原稿搬送装置１２０、原稿読取部１３０、画像形成部１４０、給紙部１５０、表示制御部１６１および入力制御部１６７を含む。ＯＳ層に属するタスクは、ＭＦＰプロセス層から入力されるオペレーティングコマンドにしたがって、ハードウェア資源を制御する。また、ＯＳ層は、ＭＦＰプロセス層との間で、入力制御部１６７が受け付け可能な複数種類の操作それぞれを識別するための操作識別情報を共有しており、ＯＳ層に属するタスクは、入力制御部１６７によって操作ユーザーによる操作が検出されることに応じて、検出された操作を識別するための操作識別情報をＭＦＰプロセス層に出力する。
【００４３】
アプリケーション層は、ＣＰＵ１１１がアプリケーションプログラムを実行するタスクが属する。複数種類のアプリケーションプログラムがＭＦＰ１００にインストールされる場合、アプリケーション層に、複数種類のアプリケーションプログラムをそれぞれ実行する複数のタスクが属する場合がある。アプリケーションプログラムは、ＭＦＰ１００に、コピー処理、スキャン処理、プリント処理、ファクシミリ送受信処理、データ送受信処理等を実行させるために、ユーザーインターフェース等をカスタマイズするためのプログラムを含む。なお、アプリケーションプログラムは、これらに限定されることなく、これとは別のアプリケーションプログラムであってもよい。
【００４４】
アプリケーションプログラムを実行するタスクは、アプリケーションプログラムによって定められた複数種類の処理を実行する。複数種類の処理は、ＭＦＰプロセス層において実行される処理をＭＦＰプロセス層に属するタスクに実行させる処理を含む。アプリケーションプログラムを実行するタスクは、ＭＦＰプロセス層に属するタスクに処理を実行させる場合、アプリコマンドを出力する。アプリコマンドは、ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）として、公開されたコマンドである。
【００４５】
さらに、アプリケーションプログラムを実行するタスクは、ＭＦＰ１００を操作する操作ユーザーによる指示に基づいて、アプリケーションプログラムによって定められた複数種類の処理のうちから実行する処理を特定し、処理を実行する。ＭＦＰ１００を操作する操作ユーザーによる指示は、操作ユーザーがタッチパネル１６９およびハードキー部１７０を操作して入力することにより、ＯＳ層において受け付けられる。本実施の形態においては、操作ユーザーによる指示に基づいて、複数種類の処理のうちからアプリケーションプログラムを実行するタスクが実行する処理を特定する処理を、アプリケーションＰＦ層が担当する。このため、アプリケーションプログラムは、アプリケーションＰＦ層との間で、アプリケーションプログラムにより定められる複数種類の処理それぞれを識別するための処理識別情報を共有しており、アプリケーションプログラムを実行するタスクは、アプリケーションＰＦ層に属するタスクから処理識別情報が入力されることに応じて、複数種類の処理のうち処理識別情報に対応する処理を実行する。
【００４６】
アプリケーションＰＦ層は、アプリケーション層とＭＦＰプロセス層との間に配置され、アプリケーション層に属する複数のタスクを調停するとともに、アプリケーション層に属する複数のタスクが出力するアプリコマンドを制御するタスクが属する。具体的には、アプリケーションＰＦ層は、アプリケーション層に属する複数のタスクのいずれか１つをデータの入出力が可能なカレント状態に決定する。アプリケーションＰＦ層は、アプリケーション層に属する複数のタスクのうちカレント状態に決定したタスクが出力するアプリコマンドを受け付け、また、ＭＦＰプロセス層に属するタスクから入力される処理識別情報を、カレント状態に決定したタスクに出力する。また、アプリケーションＰＦ層に属するタスクは、アプリケーション層に属する複数のタスクそれぞれが出力するアプリコマンドを、予め定められた規則に従って変換することにより標準化し、ＭＦＰプロセス層に出力する。このため、複数のアプリケーションプログラム間で、バージョンが異なる場合等に対応することができる。アプリケーションＰＦ層からＭＦＰプロセス層に出力されるアプリコマンドは、アプリケーション層から出力されるアプリコマンドと同じであってもよいし、異なっていてもよい。また、アプリケーションＰＦ層からＭＦＰプロセス層に出力されるアプリコマンドは、公開されていてもよいし、公開されていなくてもよい。
【００４７】
また、アプリケーションＰＦ層に属するタクスは、ＯＳ層からＭＦＰプロセス層を介して操作識別情報が入力されることに応じて、アプリケーション層に属する複数のタスクのうちカレント状態に決定したタスクが実行する処理を特定し、特定した処理を識別するための処理識別情報を、カレント状態に決定されているタスクに出力する。
【００４８】
ＭＦＰプロセス層は、アプリケーションＰＦ層とＯＳ層との間に配置され、ＣＰＵ１１１がＭＦＰプロセスプログラムを実行するタスクが属する。ＭＦＰプロセス層は、アプリケーションＰＦ層に属するタスクが出力するアプリコマンドを、ＯＳ層に属するタスクが解釈可能なオペレーティングコマンドに変換し、ＯＳ層に属するタスクにオペレーティングコマンドを出力するタスクが属する。なお、実際には、アプリコマンドを、ＯＳ層に属するタスクが実行可能な１以上のオペレーティングコマンドに変換するが、ここでは説明のために、アプリコマンドとＯＳ層に属するタスクが実行可能な１以上のオペレーティングコマンドとの関係は１対１として、説明する。また、ＭＦＰプロセス層は、ＯＳ層に属するタスクから操作識別情報が入力されると、その操作識別情報をアプリケーションＰＦ層に出力する。
【００４９】
上述したように、アプリケーションプログラムは、ＭＦＰ１００に、コピー処理、スキャン処理、プリント処理、ファクシミリ送受信処理、データ送信処理等を実行させるためのアプリケーションプログラムであるが、以下の説明では、アプリケーションプログラムがＣＰＵ１１１に実行させる処理のうちで、操作パネル１６０を制御する処理に関連する部分を主に説明する。
【００５０】
図５は、ＭＦＰが備えるＣＰＵが有する機能の一例を、ＨＤＤに記憶される情報とともに示すブロック図である。図５に示す機能は、ＭＦＰ１００が備えるＣＰＵ１１１が、ＲＯＭ１１３、ＨＤＤ１１５またはＣＤ−ＲＯＭ１１８に記憶されたプログラムを実行することにより、ＣＰＵ１１１により実現される機能である。具体的には、ＣＰＵ１１１が、ＯＳプログラム、操作標準化プログラム、およびアプリケーションプログラムを実行することにより、ＣＰＵ１１１により実現される。ここでは、ＭＦＰ１００に、アプリケーションプログラムとして、第１アプリケーションプログラムおよび第２アプリケーションプログラムが、インストールされている場合におけるＣＰＵ１１１の機能を示している。
【００５１】
図５を参照して、ＣＰＵ１１１は、アプリケーション部５１と、調停部５３と、操作変換部５５と、オペレーティング部５７と、を含む。アプリケーション部５１は、図４に示したソフトウェアアーキテクチャにおいて、アプリケーション層に属する。アプリケーション部５１は、第１アプリ実行部６１と、第２アプリ実行部６３と、を含む。第１アプリ実行部６１は、ＣＰＵ１１１が第１アプリケーションプログラムを実行するタスクによって実行される機能である。第２アプリ実行部６３は、ＣＰＵ１１１が第２アプリケーションプログラムを実行するタスクによって実行される機能である。第１アプリ実行部６１および第２アプリ実行部６３それぞれは、アプリコマンドを調停部５３に出力する。
【００５２】
第１アプリ実行部６１は、ＭＦＰ１００を操作する操作ユーザーによる指示に基づいて、第１アプリケーションプログラムによって定められた複数種類の処理のうちから実行する処理を特定し、処理を実行する。第２アプリ実行部６３は、ＭＦＰ１００を操作する操作ユーザーによる指示に基づいて、第２アプリケーションプログラムによって定められた複数種類の処理のうちから実行する処理を特定し、処理を実行する。
【００５３】
調停部５３および操作変換部５５は、ＣＰＵ１１１が操作標準化プログラムを実行するタスクによって実行される機能である。調停部５３は、図４に示したソフトウェアアーキテクチャにおいて、アプリケーションＰＦ層に属する。操作変換部５５は、図４に示したソフトウェアアーキテクチャにおいて、アプリケーションＰＦ層およびＭＦＰプロセス層に属する。なお、操作変換部５５が有する機能の少なくとも一部をアプリケーションＰＦ層の機能とし、他の部分をＭＦＰプロセス層の機能としたが、操作変換部５５が有する機能のすべてをアプリケーションＰＦ層の機能としてもよい。
【００５４】
調停部５３は、第１アプリ実行部６１および第２アプリ実行部６３のうちいずれか１つを、データの入出力が可能なカレント状態に決定する。以下、調停部５３が、第１および第２アプリ実行部６１，６３のうちカレント状態に決定しているものを、カレントタスクという。調停部５３は、第１アプリ実行部６１および第２アプリ実行部６３のうちカレントタスクが出力するアプリコマンドが入力され、カレントタスクを識別するためのアプリ識別情報とアプリコマンドとを操作変換部５５に出力する。調停部５３は、第１アプリ実行部６１がカレント状態の場合、第１アプリ実行部６１がカレントタスクなので、第１アプリ実行部６１を識別するためのアプリ識別情報と第１アプリ実行部６１が出力するアプリコマンドを操作変換部５５に出力する。調停部５３は、第２アプリ実行部６３がカレント状態の場合、第２アプリ実行部６３がカレントタスクなので、第２アプリ実行部６３を識別するためのアプリ識別情報と第２アプリ実行部６３が出力するアプリコマンドとを操作変換部５５に出力する。
【００５５】
調停部５３は、第１および第２アプリ実行部６１，６３それぞれから複数のアプリコマンドが出力される場合、それらの順番を決定し、順に操作変換部５５に出力する。例えば、複数のアプリコマンドを同時に実行できない場合に、一方のアプリコマンドの操作変換部５５による実行が終了するのを待って他方のアプリコマンドを操作変換部５５に出力する。また、一方のアプリコマンドを実行した後でなければ、他方のアプリコマンドを実行できない場合には、他方のアプリコマンドが一方のアプリコマンドより先に入力される場合であっても、一方のアプリコマンドを先に出力する。
【００５６】
操作変換部５５は、調停部５３からアプリコマンドが入力され、アプリコマンドを、予め定められた規則に従って変換することにより標準化する。このため、第１アプリケーションプログラムおよび第２アプリケーションプログラムとのバージョンが異なり、互いに異なるバージョンのアプリコマンドを出力する場合であっても、標準化されたアプリコマンドに変換することができる。さらに、操作変換部５５は、標準化されたアプリコマンドを、オペレーティングコマンドに変換し、オペレーティングコマンドをオペレーティング部５７に出力する。オペレーティングコマンドは、操作変換部５５とオペレーティング部５７との間で予め定められた、オペレーティング部５７が解釈可能なコマンドである。
【００５７】
オペレーティング部５７は、ＣＰＵ１１１がＯＳプログラムを実行するタスクによって実行される機能である。オペレーティング部５７は、図４に示したソフトウェアアーキテクチャにおいて、ＯＳ層に属する。
【００５８】
オペレーティング部５７は、操作変換部５５が出力するオペレーティングコマンドが入力され、オペレーティングコマンドに従って、ハードウェア資源を制御する。ハードウェア資源として、ここでは、ＨＤＤ１１５、入力制御部１６７および表示制御部１６１を例に説明する。オペレーティング部５７は、ＨＤＤ１１５を制御して、ＨＤＤ１１５にデータの保存する、またはＨＤＤ１１５に記憶されたデータを読み出す。オペレーティング部５７は、表示制御部１６１を制御して、ＬＣＤ１６５に画像を表示させる。
【００５９】
さらに、オペレーティング部５７は、入力制御部１６７が出力するハードキーの識別情報またはＬＣＤ１６５の表示面の位置を示す位置情報を受け付ける。オペレーティング部５７は、入力制御部１６７からハードキーの識別情報または位置情報を受け付ける場合、受け付けられたハードキーの識別情報または位置情報を操作識別情報として、操作変換部５５に出力する。操作識別情報は、ハードキー部１７０およびタッチパネル１６９が受け付けることのできる複数種類の操作のうちＭＦＰ１００を操作する操作ユーザーにより指示された指示操作を識別するための情報である。
【００６０】
オペレーティング部５７は、入力制御部１６７から同時に２以上のハードキーの識別情報または位置情報を受け付ける場合がある。例えば、操作ユーザーが、ハードキー部１７０が有する複数のハードキーのうち２以上を同時に押下する場合、押下された２以上のハードキーそれぞれの識別情報を受け付ける。また、操作ユーザーが、ＬＣＤ１６５の表示面の異なる２つの部分を、２つの指で同時に指示する場合、指示された表示面の２つの位置それぞれを示す位置情報を受け付ける。さらに、操作ユーザーが、ハードキー部１７０が有する複数のハードキーのうち１つを押下しながら、ＬＣＤ１６５の表示面を指で指示する場合、押下されたハードキーの識別情報と、指示された表示面の位置を示す位置情報とを受け付ける。オペレーティング部５７は、入力制御部１６７から同時に２以上のハードキーの識別情報または位置情報を受け付ける場合、２以上のハードキーの識別情報または位置情報を、操作変換部５５に出力する。
【００６１】
操作変換部５５は、関連付部７１と、表示制御部７３と、操作特定部７５と、処理特定部７７と、操作通知部７９と、を含む。関連付部７１は、アプリケーションプログラムがインストールされる段階で、アプリケーションプログラムが定める複数種類の処理それぞれを、入力制御部１６７が受け付けることのできる複数種類の操作のうち１以上の操作の組と関連付ける。ＨＤＤ１１５には、マスターテーブル９５が予め記憶されている。マスターテーブルは、複数の処理識別情報それぞれに、入力制御部１６７が受け付けることのできる複数種類の操作のうち１以上の操作それぞれの操作識別情報の組の複数を予め関連付ける。
【００６２】
図６は、マスターテーブルの一例を示す第１の図である。図６を参照して、マスターテーブル９５は、複数の処理識別情報ごとにマスターレコードを含む。マスターレコードは、処理の項目と、第１〜第３操作候補の項目と、を含む。処理の項目には、処理識別情報が設定され、第１〜第３操作候補の項目それぞれには、１以上の操作識別情報の組が設定される。第１操作候補の項目には、第２操作候補項目に設定される操作識別情報の組よりも優先順位の高い操作識別情報の組が設定される。第２操作候補項目には、第３操作候補項目に設定される操作識別情報の組よりも優先順位の高い操作識別情報の組が設定される。複数の処理識別情報は、予め定められている。このため、新しいアプリケーションプログラムが開発され、そのアプリケーションプログラムが、マスターテーブルに含まれる複数の処理識別情報とは別の新たな処理識別情報を含む場合には、マスターテーブル９５が新たな処理識別情報を含むマスターレコードを含むように更新される。
【００６３】
また、マスターテーブル９５は、ハードキー部１７０に対応しており、ハードキー部１７０に含まれるスタートキー１７１、ストップキー１７３、リセットキー１７５、数字キー群１７７それぞれに対してデフォルトの処理識別情報が対応付けられている。そして、ハードキー部１７０に含まれるスタートキー１７１、ストップキー１７３、リセットキー１７５、数字キー群１７７それぞれにデフォルトで対応付けられた処理識別情報を含むマスターレコードは、第１操作候補の項目のみに操作識別情報の組が設定され、第２操作候補の項目および第３操作候補の項目には、操作識別情報が設定されない。例えば、キー識別情報が「０」のキーに対しては、デフォルトの処理識別情報として「”０”入力」が対応付けられており、処理識別情報として「”０”入力」が処理の項目に設定されたマスターレコードは、第１操作候補の項目に操作識別情報としてキー識別情報「キー”０”」が設定されるのみで、第２操作候補の項目および第３操作候補の項目には、何も設定されない。
【００６４】
図５に戻って、関連付部７１は、選択部８１を含む。選択部８１は、ＨＤＤ１１５に記憶されているマスターテーブル９５を読み出す。具体的には、マスターテーブル９５を読み出すためのオペレーティングコマンドをオペレーティング部５７に出力し、オペレーティング部５７がＨＤＤ１１５を制御して読み出すマスターテーブル９５を取得する。選択部８１は、アプリケーションプログラムがインストールされる段階で、マスターテーブル９５を参照して、アプリケーションプログラムが定める複数種類の処理それぞれの処理識別情報に対して、マスターテーブル９５によって関連付けられた複数の組のうちから、他の処理識別情報のいずれにも対応付けられていない組を選択する。
【００６５】
具体的には、選択部８１は、マスターテーブル９５が、１つの処理識別情報に対して１以上の操作識別情報の組の単数を関連付けている第１のマスターレコードを含む場合、マスターテーブル９５に含まれる複数のマスターレコードを、単一の組を関連付ける第１のマスターレコードと、複数の組を関連付けている第２のマスターレコードとに分類する。そして、選択部８１は、第１のマスターレコードを参照して、アプリケーションプログラムが定める複数種類の処理それぞれの処理識別情報に関連付けられた操作識別情報の組を選択する。次に、第２のマスターレコードは、１つの処理識別情報に対して１以上の操作識別情報の組の複数を関連付けているので、選択部８１は、アプリケーションプログラムが定める複数種類の処理それぞれの処理識別情報のうち未だ操作識別情報の組が選択されていない処理識別情報に対して、第２のマスターレコードを参照して、複数の組のうちから、他の処理識別情報のいずれにも対応付けられていない組であって、優先順位の最も高い１つの組を選択する。第２のマスターレコードは、処理識別情報に対して、複数の操作識別情報の組の複数を、優先順位を付して対応付けるので、複数種類のアプリケーションプログラムがインストールされる場合に、複数の種類のアプリケーションプログラム間で、同じ処理に同じ組を関連付ける確率が高くなる。そのため、複数種類のアプリケーションプログラムがインストールされる場合に、操作を容易にすることができる。
【００６６】
関連付部７１は、アプリケーションプログラムが定める複数種類の処理それぞれの処理識別情報と、その処理識別情報に対して選択部８１によって選択された１以上の操作識別情報の組とを関連付けた変換レコードを生成し、変換テーブルに追加する。
【００６７】
関連付部７１は、選択部８１によって、アプリケーションプログラムが定める複数種類の処理のうちに、その処理識別情報に対して、マスターテーブル９５によって関連付けられた複数の組のいずれも選択されない処理が存在する場合がある。例えば、マスターテーブル９５に含まれる複数のマスターレコードのうちに処理の項目に、処理識別情報が設定されたマスターレコードが存在しない場合、また、そのようなマスターレコードが存在する場合であっても、第１〜第３操作候補の項目に設定された３つの組のすべてが、他の処理識別情報に対して既に選択されている場合である。関連付部７１は、選択部８１によって組が選択されない処理識別情報が存在する場合、ソフトキーを生成する。ソフトキーは、ＬＣＤ１６５に表示される画像であって、予め定められた操作識別情報が関連付けられる。予め複数のソフトキーを準備しておき、準備された複数のソフトキーを順に選択するようにすればよい。関連付部７１は、選択部８１によって組が選択されない処理識別情報に対して、ソフトキーの操作識別情報を関連付けた変換レコードを生成し、生成した変換レコードを変換テーブルに追加する。
【００６８】
関連付部７１は、アプリケーションプログラムに対して生成された変換テーブルをアプリケーションプログラムと関連付けてＨＤＤ１１５に記憶する。具体的には、関連付部７１は、第１アプリケーションプログラムがインストールされる段階で、第１アプリケーションプログラムに対応する第１変換テーブル９１を生成し、ＨＤＤ１１５に記憶する。また、関連付部７１は、第２アプリケーションプログラムがインストールされる段階で、第２アプリケーションプログラムに対応する第２変換テーブル９３を生成し、ＨＤＤ１１５に記憶する。具体的には、第１変換テーブル９１または第２変換テーブル９３を記憶するためのオペレーティングコマンドをオペレーティング部５７に出力し、オペレーティング部５７がＨＤＤ１１５を制御して第１変換テーブル９１または第２変換テーブル９３を記憶する。
【００６９】
図７は、第１変換テーブルの一例を示す第１の図である。図７を参照して、第１変換テーブル９１は、ＭＦＰ１００に第１アプリケーションプログラムがインストールされる段階で生成され、第１アプリケーションプログラムにより定められる複数種類の処理それぞれに対応する変換レコードを含む。変換レコードは、処理の項目と、操作の項目と、を含む。処理の項目には、第１アプリケーションプログラムにより定められる複数種類の処理を識別するための処理識別情報が設定される。操作の項目は、１以上の操作の操作識別情報の組が設定される。
【００７０】
ここでは、第１アプリケーションプログラムにより定められる複数種類の処理の処理識別情報を、「スタート」、「ストップ」、「リセット」、「右スクロール」、「左スクロール」、「上スクロール」および「下スクロール」としている。図６に示したマスターテーブル９５は、１つの処理識別情報に対して１以上の操作識別情報の組の単数を関連付けている第１のマスターレコードを含んでいるので、処理識別情報「スタート」に関しては、第１のマスターレコードによって第１操作候補の項目に設定された優先順位が１番目の操作識別情報「ｓｔａｒｔ」が関連付けられ、処理識別情報「ストップ」に関しては、第１のマスターレコードによって第１操作候補の項目に設定された優先順位が１番目の操作識別情報「ｓｔｏｐ」が関連付けられ、処理識別情報「リセット」に関しては、第１のマスターレコードによって第１操作候補の項目に設定された優先順位が１番目の操作識別情報「ｒｅｓｅｔ」が関連付けられる。
【００７１】
また、処理識別情報「右スクロール」に関しては、第２のマスターレコードによって、第１操作候補の項目に設定された優先順位が１番目の操作識別情報「６」が関連付けられる。同様に、処理識別情報「左スクロール」に対して「４」が関連付けられ、処理識別情報「上スクロール」に対して「８」が関連付けられ、処理識別情報「下スクロール」に対して操作識別情報「２」が関連付けられる。
【００７２】
図８は、第２変換テーブルの一例を示す第１の図である。図８を参照して、第２変換テーブル９３は、ＭＦＰ１００に第２アプリケーションプログラムがインストールされる段階で生成され、第２アプリケーションプログラムにより定められる複数種類の処理それぞれに対応する変換レコードを含む。変換レコードは、処理の項目と、操作の項目と、を含む。処理の項目には、第２アプリケーションプログラムにより定められる複数種類の処理を識別するための処理識別情報が設定される。操作の項目は、１以上の操作の操作識別情報の組が設定される。
【００７３】
ここでは、第２アプリケーションプログラムにより定められる複数種類の処理の処理識別情報を、「”０”入力」〜「”９”入力」と、「スタート」、「ストップ」、「リセット」、「右スクロール」、「左スクロール」、「上スクロール」、「下スクロール」、「コピー画面へ遷移」、「ＦＡＸ画面へ遷移」および「スキャン画面へ遷移」としている。図６に示したマスターテーブル９５は、１つの処理識別情報に対して１以上の操作識別情報の組の単数を関連付けている第１のマスターレコードを含んでいるので、処理識別情報「”０”入力」〜「”９”入力」、「スタート」、「ストップ」、「リセット」に関しては、処理識別情報「”０”入力」〜「”９”入力」に対して第１のマスターレコードによって第１操作候補の項目に設定された優先順位が１番目の操作識別情報「０」〜「９」がそれぞれ関連付けられ、処理識別情報「スタート」に対して第１のマスターレコードによって第１操作候補の項目に設定された優先順位が１番目の操作識別情報「ｓｔａｒｔ」が関連付けられ、処理識別情報「ストップ」に対して第１のマスターレコードによって第１操作候補の項目に設定された優先順位が１番目の操作識別情報「ｓｔｏｐ」が関連付けられ、処理識別情報「リセット」に対して第１のマスターレコードによって第１操作候補の項目に設定された優先順位が１番目の操作識別情報「ｒｅｓｅｔ」が関連付けられる。
【００７４】
また、処理識別情報「右スクロール」に対しては、第２のマスターレコードによって第１操作候補の項目に設定された優先順位が１番目の操作識別情報「６」が既に処理識別情報「”６”入力」に関連付けられているので、第２のマスターレコードによって第２操作候補の項目に設定された優先順位が２番目の操作識別情報「”６”＋”ｓｔｏｐ”」の組が関連付けられる。同様に、処理識別情報「左スクロール」、「上スクロール」、「下スクロール」に対しては、第２のマスターレコードによって第２操作候補の項目に設定された優先順位が２番目の操作識別情報「”４”＋”ｓｔｏｐ”」の組、「”８”＋”ｓｔｏｐ”」の組、「”２”＋”ｓｔｏｐ”」の組、「”１”＋”ｓｔｏｐ”」の組、および「”３”＋”ｓｔｏｐ”」の組がそれぞれ関連付けられる。
【００７５】
さらに、処理識別情報「ＦＡＸ画面へ遷移」に対しては、第２のマスターレコードによって第１操作候補の項目に設定された優先順位が１番目の操作識別情報「２」が既に処理識別情報「”２”入力」に関連付けられており、さらに、第２のマスターレコードによって第２操作候補の項目に設定された優先順位が２番目の操作識別情報「”２”＋”ｓｔｏｐ”」が既に処理識別情報「下スクロール」に関連付けられているので、第２のマスターレコードによって第３操作候補の項目に設定された優先順位が３番目の操作識別情報「”２”＋”ｓｔａｒｔ”」の組が関連付けられる。
【００７６】
したがって、第１アプリケーションプログラムにより定まる複数の処理、または第２アプリケーションプログラムによって定まる複数の処理が、ハードキー部１７０が備える複数のハードキーにデフォルトで対応する処理とは異なる処理を含む場合であっても、第１アプリケーションプログラムにより定まる複数の処理、または第２アプリケーションプログラムによって定まる複数の処理のすべてに対応するハードキーの１以上の組を関連付けることができる。さらに、第１アプリケーションプログラムにより定まる複数の処理と、第２アプリケーションプログラムによって定まる複数の処理と、が異なる場合であっても、第１アプリケーションプログラムにより定まる複数の処理、または第２アプリケーションプログラムによって定まる複数の処理それぞれに対応するハードキーの１以上の組を関連付けることができる。
【００７７】
図５に戻って、表示制御部７３は、調停部５３から、カレントタスクのアプリ識別情報と、操作画面を表示することを示すアプリコマンドとの組が入力される場合、操作画面の画像を表示することを示すアプリコマンドを変換したオペレーティングコマンドをオペレーティング部５７に出力するとともに、操作画面を操作特定部７５に出力する。オペレーティング部５７は、表示制御部１６１を制御し、操作画面の画像をＬＣＤ１６５に表示させる。また、表示制御部７３は、調停部５３から、カレントタスクのアプリ識別情報が入力された段階で、カレントタスクに対応する変換テーブルに基づいて、操作一覧画面の画像をＬＣＤ１６５に表示させる。操作一覧画面は、処理識別情報と、１以上の操作識別情報との組とを関連付けて表示する画面である。アプリケーションプログラムによって定められる処理が、ハードキー部１７０が備える複数のキーのいずれに対応するかを操作ユーザーに示すためである。
【００７８】
操作特定部７５は、オペレーティング部５７からハードキーの識別情報または位置情報が入力され、表示制御部７３から操作画面が入力される。操作特定部７５は、オペレーティング部５７から位置情報が入力される場合、位置情報で特定される操作画面の位置が、操作画面に含まれるボタンの画像内か否かを判断する。操作特定部７５は、位置情報で特定される操作画面の位置が、操作画面に含まれるボタン（ソフトキー）の画像内ならば、当該ボタンに対応する操作を特定し、特定した操作の操作識別情報を処理特定部７７に出力する。例えば、操作画面が、印刷を指示するための印刷指示ボタンを含む場合、操作特定部７５は、位置情報で特定される操作画面の位置が印刷指示ボタンの画像内ならば、印刷指示ボタンを指示する操作に割り当てられた操作識別情報を、処理特定部７７に出力する。
【００７９】
操作特定部７５は、オペレーティング部５７からハードキーの識別情報が入力される場合、ハードキーの識別情報を押下する操作を特定し、特定した操作の操作識別情報を処理特定部７７に出力する。例えば、操作特定部７５は、数字の「１」が表されたハードキーが押下されたならば、数字の「１」が表されたハードキーを押下する操作に割り当てられた操作識別情報「１」を、処理特定部７７に出力する。
【００８０】
操作特定部７５は、オペレーティング部５７から複数のハードキーの識別情報、複数の位置情報、または、ハードキーの識別情報と位置情報との組が同時に入力される場合がある。操作特定部７５は、オペレーティング部５７から複数のハードキーの識別情報、複数の位置情報、または、ハードキーの識別情報と位置情報との組が同時に入力される場合、ハードキーの識別情報および位置情報にそれぞれ対応する複数の操作を特定し、特定された複数の操作にそれぞれに対して割り当てられた複数の操作識別情報を処理特定部７７に出力する。
【００８１】
処理特定部７７は、調停部５３からカレントタスクのアプリ識別情報が入力され、操作特定部７５から１以上の操作識別情報が入力される。処理特定部７７は、調停部５３からカレントタスクのアプリ識別情報が入力されることに応じて、ＨＤＤ１１５に記憶されている第１変換テーブル９１および第２変換テーブル９３のうち、カレントタスクのアプリ識別情報に対応するものを読み出す。処理特定部７７は、カレントタスクが第１アプリ実行部６１の場合は、第１変換テーブル９１を読出し、カレントタスクが第２アプリ実行部６３の場合は、第２変換テーブル９３を読出す。具体的には、第１変換テーブル９１または第２変換テーブル９３を読み出すためのオペレーティングコマンドをオペレーティング部５７に出力し、オペレーティング部５７がＨＤＤ１１５を制御して読み出す第１変換テーブル９１または第２変換テーブル９３を取得する。以下、第１アプリ実行部６１がカレントタスクの場合について説明する。
【００８２】
処理特定部７７は、操作特定部７５から１以上の操作識別情報が入力されることに応じて、１以上の操作識別情報によりそれぞれで特定される１以上の操作の組に基づいて、複数種類の処理のうちから第１アプリケーションプログラムに対応して関連付けられた処理を特定する。具体的には、処理特定部７７は、操作特定部７５から入力される１以上の操作識別情報によりそれぞれで特定される１以上の操作の組と、第１変換テーブル９１によって関連付けら得た処理を特定する。より具体的には、処理特定部７７は、操作特定部７５から入力される１以上の操作識別情報の組が操作の項目に設定された変換レコードを、第１変換テーブル９１から抽出し、抽出された変換レコードの処理識別情報の項目に設定されている処理識別情報を取得する。処理特定部７７は、取得された処理識別情報とカレントタスクのアプリ識別情報との組を、操作通知部７９に出力する。
【００８３】
操作通知部７９は、処理特定部７７から処理識別情報とアプリ識別情報との組が入力されることに応じて、アプリ識別情報で特定されるカレントタスクに、処理識別情報を出力する。具体的には、処理識別情報で特定される処理を実行させるためのアプリコマンドを生成し、アプリコマンドをアプリ識別情報で特定されるカレントタスク、ここでは、第１アプリ実行部６１への出力を、調停部５３に依頼する。
【００８４】
図９は、変換テーブル生成処理の流れの一例を示すフローチャートである。変換テーブル生成処理は、ＭＦＰ１００が備えるＣＰＵ１１１が、ＲＯＭ１１３、ＨＤＤ１１５またはＣＤ−ＲＯＭ１１８に記憶された操作標準化プログラムを実行することにより、ＣＰＵ１１１により実行される処理である。
【００８５】
図９を参照して、ＣＰＵ１１１は、アプリケーションプログラムがインストールされたか否かを判断する。新たなアプリケーションプログラムがインストールされるまで待機状態となり（ステップＳ０１でＮＯ）、新たなアプリケーションプログラムがインストールされたならば処理をステップＳ０２に進める。換言すれば、変換テーブル生成処理は、新たなアプリケーションプログラムがインストールされることを条件に実行される処理である。
【００８６】
ステップＳ０２においては、新たにインストールされたアプリケーションプログラムによって定められる複数種類の処理の処理識別情報を取得する。アプリケーションプログラムをインストールする最中に、アプリケーションプログラムに記述されている複数種類の処理識別情報を取得する。なお、インストールされたアプリケーションプログラムを実行するタスクから処理識別情報を取得するようにしてもよい。
【００８７】
ステップＳ０３においては、ＨＤＤ１１５に記憶されているマスターテーブル９５を読み出す。そして、ステップＳ０２において取得された複数の処理識別情報のうちから１つを処理対象に選択する（ステップＳ０４）。次のステップＳ０５においては、優先順位の最も高い操作を決定する。マスターテーブル９５に含まれるマスターレコードのうちから、処理対象に選択されている処理識別情報が処理の項目に設定されているマスターレコードを抽出し、抽出されたマスターレコードの第１操作候補の項目に設定されている１以上の操作識別情報の組を、最も優先順の高い操作として、ステップＳ０４において処理対象に選択された処理識別情報で特定される処理に対応する操作に決定する。具体的には、ステップＳ０４において処理対象に選択された処理識別情報と、抽出されたマスターレコードの第１操作候補の項目に設定されている１以上の操作識別情報の組とを関連付ける。
【００８８】
次のステップＳ０６においては、最も優先順の高い操作に決定された、１以上の操作識別情報の組が、他の処理識別情報に既に割り当てられているか否かを判断する。他の処理識別情報に既に割り当てられているならば処理をステップＳ０７に進めるが、そうでなければ処理をステップＳ１１に進める。
【００８９】
ステップＳ０７においては、現在決定している操作よりも優先順位が次に高い操作が存在するか否かを判断する。現在決定している操作よりも優先順位が次に高い操作が存在するならば、次に優先順位の高い操作を、ステップＳ０４において処理対象に選択された処理識別情報で特定される処理に対応する操作に決定し、処理をステップＳ０８に進める。具体的には、ステップＳ０４において処理対象に選択された処理識別情報と、現在決定している操作よりも優先順位が次に高い操作の１以上の操作識別情報の組とを関連付ける。現在決定している操作よりも優先順位が次に高い操作が存在しないならば、処理をステップＳ０９に進める。
【００９０】
より具体的には、現在決定している操作がステップＳ０５において抽出されたマスターレコードにおける第１操作候補ならば、次に高い優先順の操作が存在すると判断し、第２操作候補に設定されている１以上の操作識別情報の組を、ステップＳ０４において処理対象に選択された処理識別情報と関連付け、処理をステップＳ０８に進める。現在決定している操作がステップＳ０５において抽出されたマスターレコードにおける第２操作候補ならば、次に高い優先順の操作が存在すると判断し、第３操作候補に設定されている１以上の操作識別情報の組を、ステップＳ０４において処理対象に選択された処理識別情報と関連付け、処理をステップＳ０８に進める。現在決定している操作がステップＳ０５において抽出されたマスターレコードにおける第３操作候補ならば、次に高い優先順の操作が存在しないと判断し、処理をステップＳ０９に進める。
【００９１】
ステップＳ０８においては、ステップＳ０７において決定された１以上の操作識別情報の組が、他の処理識別情報に既に割り当てられているか否かを判断する。他の処理識別情報に既に割り当てられているならば処理をステップＳ０７に戻すが、そうでなければ処理をステップＳ１１に進める。ステップＳ０７において決定された１以上の操作識別情報の組が、他の処理識別情報に既に割り当てられているか否かを判断する。他の処理識別情報に既に割り当てられているならば処理をステップＳ０７に戻し、そうでなければ処理をステップＳ１１に進める。
【００９２】
一方、ステップＳ０９においては、ソフトキーを生成する。ステップＳ０４において処理対象に選択された処理識別情報に対して、予め定められた複数のソフトキーのうちから１つを選択する。次のステップＳ１０においては、生成されたソフトキーに対応する操作を、ステップＳ０４において処理対象に選択された処理識別情報で特定される処理に対応する操作に決定し、処理をステップＳ１１に進める。具体的には、ステップＳ０４において処理対象に選択された処理識別情報と、生成されたソフトキーに対応する操作に割り当てられた操作識別情報とを関連付ける。
【００９３】
処理がステップＳ１１に進む場合、ステップＳ０４において処理対象に選択された処理識別情報に対して、１以上の操作識別情報の組、または、ソフトキーに対応する操作に割り当てられた操作識別情報が、操作として決定されている。ステップＳ１１においては、ステップＳ０２において取得された処理識別情報のうちに処理対象に選択されていないものが存在するか否かを判断する。処理対象に選択されていない処理識別情報が存在すれば、処理をステップＳ０４に戻し、そうでなければ処理をステップＳ１２に進める。処理がステップＳ１２に進む場合、ステップＳ０２において取得された処理識別情報のすべてに対して、１以上の操作識別情報の組が操作として決定されている。ステップＳ１２においては、変換テーブルを生成し、処理をステップＳ１３に進める。具体的には、ステップＳ０２おいて取得された複数の処理識別情報それぞれに対して、ステップＳ０５またはステップＳ０７において決定された操作、ここでは、１以上の操作識別情報の組を関連付けた変換テーブルを生成する。
【００９４】
次のステップＳ１３においては、生成された変換テーブルを保存し、処理を終了する。具体的には、変換テーブルを、ステップＳ０１においてインストールされたアプリケーションプログラムと関連付けてＨＤＤ１１５に記憶する。このため、第１アプリケーションプログラムがインストールされる場合には、第１アプリケーションプログラムに関連付けられた第１変換テーブル９１がＨＤＤ１１５に記憶され、第２アプリケーションプログラムがインストールされる場合には、第２アプリケーションプログラムに関連対けられた第２変換テーブル９３がＨＤＤ１１５に記憶される。
【００９５】
図１０は、操作通知処理の流れの一例を示すフローチャートである。操作通知処理は、ＭＦＰ１００が備えるＣＰＵ１１１が、ＲＯＭ１１３、ＨＤＤ１１５またはＣＤ−ＲＯＭ１１８に記憶された操作標準化プログラムを実行することにより、ＣＰＵ１１１により実行される処理である。図１０を参照して、ＣＰＵ１１１は、カレントタスクを特定する（ステップＳ２１）。第１アプリケーションプログラムを実行するタクスと、第２アプリケーションプログラムを実行するタスクと、のうちいずれがカレントタスクかを特定する。以下の説明では、第１アプリケーションプログラムを実行するタスクが、カレントタスクに特定された場合について説明する。
【００９６】
ステップＳ２２においては、変換テーブルを読み出す。ステップＳ２１においてカレントタスクに特定されたタスクが実行するアプリケーションプログラムに関連付けられた変換テーブルを読み出す。ここでは、第１アプリケーションプログラムを実行するタスクをカレントタスクとしているので、ＨＤＤ１１５から第１アプリケーションプログラムに関連付けられた第１変換テーブル９１を読み出す。
【００９７】
次のステップＳ２３においては、第１変換テーブルにおいてソフトキーが定義されているか否かを判断する。具体的には、操作の項目にソフトキーの操作識別情報が設定された変換レコードが存在するか否かを判断する。操作の項目にソフトキーの操作識別情報が設定された変換レコードが存在するならば、処理をステップＳ２４に進めるが、そうでなければステップＳ２４をスキップして、処理をステップＳ２５に進める。
【００９８】
ステップＳ２４においては、ソフトキーを表示し、処理をステップＳ２５に進める。変換テーブルのうちから操作の項目にソフトキーの操作識別情報が設定された変換レコードのすべてを抽出し、操作識別情報で特定されるソフトキーの画像をＬＣＤ１６５に表示する。
【００９９】
ステップＳ２５においては、表示指示を受け付けたか否かを判断する。表示指示を受け付けたならば処理をステップＳ２６に進めるが、そうでなければステップＳ２６をスキップして処理をステップＳ２７に進める。第１アプリケーションプログラムを実行するタスクが、表示画面を表示することを示すアプリコマンドを出力する場合に、表示指示を受け付ける。例えば、第１アプリケーションプログラムを実行するタスクが、第１アプリケーションプログラムが実行された段階でメニュー画面等の初期画面を表示する場合に、初期画面を表示することを示すアプリコマンドを出力する。また、第１アプリケーションプログラムを実行するタスクが表示画面を切り換える場合に、切り換え後の表示画面を表示することを示すアプリコマンドを出力する。ステップＳ２７においては、表示指示に従って表示画面を表示し、処理をステップＳ２８に進める。アプリコマンドで特定される表示画面を、ＬＣＤ１６５に表示する。
【０１００】
ステップＳ２７においては、ハードキーを押下する操作を検出したか否かを判断する。入力制御部１６７からハードキーの識別情報が入力される場合に、ハードキーの押下を検出する。ハードキーの押下を検出したならば処理をステップＳ２８に進めるが、そうでなければ処理をステップＳ２９に進める。ステップＳ２８においては、ステップＳ２７において、入力制御部１６７から入力されるハードキーの識別情報に対応する操作識別情報を特定し、処理をステップＳ３３に進める。なお、入力制御部１６７から同時に２以上のハードキーの識別情報が入力される場合、２以上のハードキーの識別情報それぞれに対応する操作識別情報を特定する。
【０１０１】
一方、ステップＳ２９においては、タッチパネルを指示する操作を検出したか否かを判断する。入力制御部１６７からＬＣＤ１６５の表示面の位置を示す位置情報が入力される場合に、タッチパネルを指示する操作を検出する。タッチパネルを指示する操作を検出したならば処理をステップＳ３０に進めるが、そうでなければ処理をステップＳ３６に進める。ステップＳ３０においては、位置情報で特定される位置が、ステップＳ２６において表示された表示画面中のボタンの画像内か否かを判断する。位置情報で特定される操作画面の位置が、表示画面に含まれるボタンの画像内ならば、処理をステップＳ３１に進めるが、そうでなければ処理をステップＳ３２に進める。
【０１０２】
ステップＳ３２においては、位置情報で特定される位置が、ステップＳ２４において表示されたソフトキーの画像内か否かを判断する。位置情報で特定される操作画面の位置が、ソフトキーの画像内ならば、処理をステップＳ３１に進めるが、そうでなければ処理をステップＳ３６に進める。
【０１０３】
ステップＳ３１においては、処理がステップＳ３０から進む場合、位置情報で特定される位置のボタンに対応する操作識別情報を特定し、処理をステップＳ３３に進める。また、処理がステップＳ３２から進む場合、位置情報で特定される位置のソフトキーに対応する操作識別情報を特定し、処理をステップＳ３３に進める。
【０１０４】
ステップＳ３３においては、ステップＳ２８またはステップＳ３１において特定された１以上の操作識別情報の組に対応する操作を特定する。ステップＳ２２において読み出された第１変換テーブル９１に含まれる変換レコードのうちに、ステップＳ２８またはステップＳ３１において特定された１以上の操作識別情報の組が、操作の項目に設定されている変換レコードが存在すれば、その変換レコードを抽出するとともに、操作を特定する。次のステップＳ３４においては、処理識別情報を決定する。抽出された変換レコードの処理の項目に設定されている処理識別情報を決定する。次のステップＳ３５においては、決定された処理識別情報をステップＳ２１において特定されたカレントタスク、ここでは、第１アプリケーションプログラムを実行するタスクに出力し、処理をステップＳ３６に進める。具体的には、決定された処理識別情報を含むアプリコマンドを生成し、生成したアプリコマンドを第１アプリケーションプログラムを実行するタスクに出力する。
【０１０５】
ステップＳ３６においては、カレントタスクが終了したか否かを判断する。ステップＳ２１において特定されたカレントタスクが終了したならば処理を終了するが、そうでなければ処理をステップＳ２５に戻す。
【０１０６】
図１１は、ソフトキーの一例を示す図である。図１１を参照して、操作画面２００に、ソフトキー群２１０を重畳して表示する場合を示している。ソフトキー群２１０は、上矢印キー２１１と、下矢印キー２１２と、左矢印キー２１３と、右矢印キー２１４と、を含む。例えば、上矢印キー２１１に対して操作識別情報「ソフトキー”↑”」を関連付け、下矢印キー２１２に対して操作識別情報「ソフトキー”↓”」を関連付け、左矢印キー２１３に対して操作識別情報「ソフトキー”←”」を関連付け、右矢印キー２１４に対して操作識別情報「ソフトキー”→”」を関連付けることができ、ハードキー部１７０が有する複数のハードキーにそれぞれを押下する操作に、４つの操作を追加することができる。
【０１０７】
＜ハードキーが異なる場合＞
次に別のＭＦＰに第１アプリケーションプログラムと、第２アプリケーションプログラムをインストールする場合について説明する。
【０１０８】
図１２は、別のＭＦＰの操作パネルの平面図である。図１２を参照して、別のＭＦＰ１００の操作パネル１６０Ａは、図３に示した操作パネル１６０と異なる点は、ハードキー部１７０Ａが、キー識別情報が「Ｒｅｓｅｔ」のリセットキー１７５を含まない点、および、上下左右の矢印キー群１７９を含む点である。
【０１０９】
図１３は、マスターテーブルの一例を示す第２の図である。図１３に示すマスターテーブル９５Ａは、別のＭＦＰに予め記憶されている。図１３を参照して、ＭＦＰ１００とは別のＭＦＰに記憶されるマスターテープル９５Ａは、図６に示したＭＦＰ１００に記憶されるマスターテーブル９５と同様に、複数の処理識別情報ごとにマスターレコードを含む。また、マスターテーブル９５Ａは、ハードキー部１７０Ａに対応しており、ハードキー部１７０Ａに含まれるスタートキー１７１、ストップキー１７３、数字キー群１７７および矢印キー群１７９それぞれに対してデフォルトの処理識別情報が対応付けられている。そして、ハードキー部１７０Ａに含まれるスタートキー１７１、ストップキー１７３、数字キー群１７７および矢印キー群１７９それぞれにデフォルトで対応付けられた処理識別情報を含むマスターレコードは、第１操作候補の項目のみに操作識別情報の組が設定され、第２操作候補の項目および第３操作候補の項目には、操作識別情報が設定されない。例えば、キー識別情報がキー「→」のキーに対しては、デフォルトの処理識別情報として「右スクロール」が対応付けられており、処理識別情報として「右スクロール」が処理の項目に設定されたマスターレコードは、第１操作候補の項目に操作識別情報としてキー識別情報「→」が設定されるのみで、第２操作候補の項目および第３操作候補の項目には、何も設定されない。
【０１１０】
図１４は、第１変換テーブルの一例を示す第２の図である。図１４を参照して、第１変換テーブル９１Ａは、別のＭＦＰに第１アプリケーションプログラムがインストールされる段階で生成され、図７に示した第１変換テーブルと同様に、第１アプリケーションプログラムにより定められる複数種類の処理それぞれに対応する変換レコードを含む。
【０１１１】
ここでは、第１アプリケーションプログラムにより定められる複数種類の処理の処理識別情報を、「スタート」、「ストップ」、「リセット」、「右スクロール」、「左スクロール」、「上スクロール」および「下スクロール」としている。図１３に示したマスターテーブル９５Ａは、１つの処理識別情報に対して１以上の操作識別情報の組の単数を関連付けている第１のマスターレコードを含んでいるので、処理識別情報「スタート」、「ストップ」、「右スクロール」、「左スクロール」、「上スクロール」および「下スクロール」に関しては、第１のマスターレコードによって、処理識別情報「スタート」に対して操作識別情報「ｓｔａｒｔ」が関連付けられ、処理識別情報「ストップ」に対して操作識別情報「ｓｔｏｐ」が関連付けられ、処理識別情報「右スクロール」に対して操作識別情報「→」が関連付けられ、処理識別情報「左スクロール」に対して操作識別情報「←」が関連付けられ、処理識別情報「上スクロール」に対して操作識別情報「↑」が関連付けられ、処理識別情報「下スクロール」に対して操作識別情報「↓」が関連付けられる。
【０１１２】
また、処理識別情報「リセット」に関しては、第２のマスターレコードによって、処理識別情報「リセット」に対して第１操作候補の項目に設定された優先順位が１番目の操作識別情報「”１”＋”ｓｔｏｐ”」が関連付けられる。
【０１１３】
図１５は、第２変換テーブルの一例を示す第２の図である。図１５を参照して、第２変換テーブル９３Ａは、別のＭＦＰに第２アプリケーションプログラムがインストールされる段階で生成され、図８に示した第２変換テーブルと同様に、第２アプリケーションプログラムにより定められる複数種類の処理それぞれに対応する変換レコードを含む。
【０１１４】
ここでは、第２アプリケーションプログラムにより定められる複数種類の処理の処理識別情報を、「”０”入力」〜「”９”入力」と、「スタート」、「ストップ」、「リセット」、「右スクロール」、「左スクロール」、「上スクロール」、「下スクロール」、「コピー画面へ遷移」、「ＦＡＸ画面へ遷移」および「スキャン画面へ遷移」としている。図１３に示したマスターテーブル９５Ａは、１つの処理識別情報に対して１以上の操作識別情報の組の単数を関連付けている第１のマスターレコードを含んでいるので、処理識別情報「”０”入力」〜「”９”入力」、「スタート」、「ストップ」に関しては、処理識別情報「”０”入力」〜「”９”入力」に対して第１のマスターレコードによって第１操作候補の項目に設定された優先順位が１番目の操作識別情報「０」〜「９」がそれぞれ関連付けられ、処理識別情報「スタート」に対して第１のマスターレコードによって第１操作候補の項目に設定された優先順位が１番目の操作識別情報「ｓｔａｒｔ」が関連付けられ、処理識別情報「ストップ」に対して第１のマスターレコードによって第１操作候補の項目に設定された優先順位が１番目の操作識別情報「ｓｔｏｐ」が関連付けられる。
【０１１５】
また、処理識別情報「右スクロール」に対しては、第２のマスターレコードによって第１操作候補の項目に設定された優先順位が１番目の操作識別情報「６」が既に処理識別情報「”６”入力」に関連付けられているので、第２のマスターレコードによって第２操作候補の項目に設定された優先順位が２番目の操作識別情報「”６”＋”ｓｔｏｐ”」の組が関連付けられる。同様に、処理識別情報「左スクロール」、「上スクロール」、「下スクロール」に対しては、第２のマスターレコードによって第２操作候補の項目に設定された優先順位が２番目の操作識別情報「”４”＋”ｓｔｏｐ”」の組、「”８”＋”ｓｔｏｐ”」の組、「”２”＋”ｓｔｏｐ”」の組、「”１”＋”ｓｔｏｐ”」の組、および「”３”＋”ｓｔｏｐ”」の組がそれぞれ関連付けられる。同様に、処理識別情報「右スクロール」に対して操作識別情報「→」が関連付けられ、処理識別情報「左スクロール」に対して操作識別情報「←」が関連付けられ、処理識別情報「上スクロール」に対して操作識別情報「↑」が関連付けられ、処理識別情報「下スクロール」に対して操作識別情報「↓」が関連付けられる。
【０１１６】
また、処理識別情報「リセット」に対しては、第２のマスターレコードによって、処理識別情報「リセット」に対して第１操作候補の項目に設定された優先順位が１番目の操作識別情報「”１”＋”ｓｔｏｐ”」が関連付けられる。
【０１１７】
さらに、処理識別情報「ＦＡＸ画面へ遷移」および「スキャン画面へ遷移」に対しては、第２のマスターレコードによって、第１操作候補の項目に設定された優先順位が１番目の操作識別情報「２」および「３」が、それぞれ処理識別情報「”２”入力」および「”３”入力」に既に関連付けられているので、第２操作候補の項目に設定された優先順位が２番目の操作識別情報「”２”＋”ｓｔｏｐ”」の組および「”３”＋”ｓｔｏｐ”」の組がそれぞれ関連付けられる。
【０１１８】
処理識別情報「コピー画面へ遷移」に対しては、第２のマスターレコードによって、第１操作候補の項目に設定された優先順位が１番目の操作識別情報「キー”１”」が処理識別情報「”１”入力」に既に関連付けられており、さらに、第２操作候補の項目に設定された優先順位が２番目の操作識別情報「キー”１”＋キー”ｓｔｏｐ”」が処理識別情報「リセット」に既に関連付けられているので、第３操作候補の項目に設定された優先順位が３番目の操作識別情報「キー”１”＋キー”ｓｔａｒｔ”」の組が関連付けられる。
【０１１９】
したがって、ＭＦＰ１００と、それとは異なるハードキーを有する別のＭＦＰに、同一の第１アプリケーションプログラムまたは第２アプリケーションプログラムをインストールすることが可能となる。このため、アプリケーションプログラムの開発者は、それがインストールされる装置が有するハードキーを考慮することなくアプリケーションプログラムを生成することができる。
【０１２０】
以上説明したように、本実施の形態におけるＭＦＰ１００は、画像処理装置として機能し、アプリケーションプログラムがインストールされる段階で、変換テーブルを生成し、アプリケーションプログラムに対応して、アプリケーションプログラムが定める複数種類の処理それぞれを、ＭＦＰ１００が受け付け可能な複数種類の操作のうち１以上の操作の組と関連付ける。このため、これまで、ＭＦＰ１００において実行されなかった新たな処理を定めるアプリケーションプログラムをインストールすることができる。
【０１２１】
また、ＭＦＰ１００が受け付け可能な複数種類の操作と、アプリケーションプログラムが定める複数種類の処理とを変換テーブルで関連付けられるので、ＭＦＰ１００が受け付け可能な複数種類の操作に関係なく、アプリケーションプログラムを開発することができる。このため、アプリケーションプログラムの開発を容易にすることができる。
【０１２２】
さらに、複数種類の処理の処理識別情報それぞれに複数種類の操作のうち１以上の操作それぞれの操作識別情報の組の複数を予め関連付けたマスターテーブル９５、９５Ａを記憶しており、アプリケーションプログラムにより定められる複数の処理それぞれの処理識別情報に対してマスターテーブル９５によって関連付けられた複数の組のうちから、他の処理識別情報のいずれにも対応付けられていない組を選択することにより変換テーブル９１，９３を生成する。このため、１つの操作を１つの処理と関連付けられるので、アプリケーションプログラムにより定められる複数の処理それぞれを実行させるための操作を定めることができる。
【０１２３】
また、マスターテーブル９５は、複数の処理識別情報それぞれに、複数種類の操作のうち１以上の操作それぞれの操作識別情報の組の複数を、優先順位を付して関連付けるのでており、複数の組のうちから優先順位の高い組を選択する。複数種類のアプリケーションプログラムがインストールされる場合に、複数の種類のアプリケーションプログラム間で、同じ処理に同じ組を関連付ける確率が高くなる。このため、複数の処理に優先順位の高い操作を関連付けるので、複数種類のアプリケーションプログラムがインストールされる場合に、操作を容易にすることができる。
【０１２４】
また、複数種類のアプリケーションプログラムがインストールされる場合であっても、複数種類のアプリケーションプログラムごとに、変換テーブルを生成するので、複数のアプリケーションプログラムそれぞれにより定められる複数種類の処理を実行するための操作を定めることができる。
【０１２５】
また、複数の接点スイッチを有するハードキーを押下する操作に対応して、アプリケーションプログラムにより定められる複数種類の処理を関連付けることができる。
【０１２６】
また、ＬＣＤ１６５にソフトキーの画像を表示し、タッチパネル１６９によりＬＣＤ１６５の表示面の操作ユーザーによって指示された位置が、ソフトキーの画像内の場合、ソフトキーに対応する操作を特定するので、ソフトキーを指示する操作に対応して、アプリケーションプログラムにより定められる複数種類の処理を関連付けることができる。
【０１２７】
なお、上述した実施の形態においては、画像処理装置の一例としてＭＦＰ１００について説明したが、図９および図１０に示した処理を、ＭＦＰ１００を制御するＣＰＵ１１１に実行させる操作標準化方法、また、その操作標準化方法をＣＰＵ１１１に実行させるための操作標準化プログラムとして、発明を捉えることができるのは言うまでもない。
【０１２８】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【０１２９】
＜付記＞
（１）  前記関連付ステップは、複数の処理識別情報それぞれに前記複数種類の操作のうち１以上の操作それぞれの操作識別情報の組の複数を予め関連付けたマスターテーブルを参照して、前記アプリケーション手段が実行可能な前記複数の処理それぞれの処理識別情報に対して前記マスターテーブルによって関連付けられた複数の組のうちから、他の処理識別情報のいずれにも対応付けられていない組を選択する選択ステップを含む、請求項７に記載の操作標準化方法。
（２）  前記マスターテーブルは、複数の処理識別情報それぞれに、前記複数種類の操作のうち１以上の操作それぞれの操作識別情報の組の複数を、優先順位を付して関連付けており、
前記選択ステップは、前記複数の組のうちから優先順位の高い組を選択するステップを含む、（１）に記載の操作標準化方法。
（３）  前記関連付ステップは、複数種類のアプリケーションプログラムがインストールされる場合、該複数種類のアプリケーションプリグラムそれぞれがインストールされる段階で、該インストールされたアプリケーションプログラムに対応して、前記アプリケーションプログラムが定める前記複数種類の処理それぞれを前記複数種類の操作のうち１以上の操作の組と関連付けるステップを含み、
前記処理特定ステップは、前記オペレーティング手段により１以上の前記操作識別情報が出力されることに応じて、前記出力された１以上の操作識別情報で特定される１以上の操作の組と、前記関連付ステップにおいて、前記コンピュータが実行する前記インストールされたアプリケーションプログラムに対応して、関連付けられた処理を特定するステップを含み、
前記操作通知ステップは、前記特定された処理の処理識別情報を、前記コンピュータが実行する前記アプリケーションプログラムに対応する前記アプリケーション手段に出力するステップを含む、請求項７に記載の操作標準化方法。
（４）  前記操作受付手段は、複数の接点スイッチを含み、
前記オペレーティング手段は、前記複数の接点スイッチの１以上の接続が検出されることに応じて、前記複数種類の操作のうちから前記接続が検出された１以上の接点スイッチそれぞれに対応する操作識別情報を出力する、請求項７、（１）〜（３）のいずれかに記載の操作標準化方法。
（５）  前記操作受付手段は、画像を表示する表示手段と、
前記表示手段の表示面の位置を検出する位置検出手段と、を含み、
前記オペレーティング手段は、前記位置検出手段により検出された前記表示面の位置を操作識別情報として出力し、
前記コンピュータに、ボタンの画像を前記オペレーティング手段を介して前記表示手段に表示するボタン表示ステップと、
前記オペレーティング手段が出力する操作識別情報が示す前記表示面の位置が前記表示手段により表示されたボタンの画像内の場合、当該ボタンに対応する操作を特定する操作特定ステップと、をさらに実行させる、請求項７、（１）〜（４）のいずれかに記載の操作標準化方法。
【符号の説明】
【０１３０】
１００  ＭＦＰ、５１  アプリケーション部、５３  調停部、５５  操作変換部、５７  オペレーティング部、６１  第１アプリ実行部、６３  第２アプリ実行部、７１  関連付部、７３  表示制御部、７５  操作特定部、７７  処理特定部、７９  操作通知部、８１  選択部、９１，９１Ａ  第１変換テーブル、９３，９３Ａ  第２変換テーブル、９５，９５Ａ  マスターテーブル、１１０  メイン回路、１１１  ＣＰＵ、１１２  通信Ｉ／Ｆ部、１１３  ＲＯＭ、１１４  ＲＡＭ、１１５  ＨＤＤ、１１６  ファクシミリ部、１１７  外部記憶装置、１２０  自動原稿搬送装置、１３０  原稿読取部、１４０  画像形成部、１５０  給紙部、１６０，１６０Ａ  操作パネル、１６１  表示制御部、１６７  入力制御部、１６９  タッチパネル、１７０，１７０Ａ  ハードキー部、１７１  スタートキー、１７３  ストップキー、１７５  リセットキー、１７７  数字キー群、１７９  矢印キー群、２００  操作画面、２１０  ソフトキー群、２１１  上矢印キー、２１２  下矢印キー、２１３  左矢印キー、２１４  右矢印キー。
【図１】
2013162366.tif 000003
【図２】
2013162366.tif 000004
【図３】
2013162366.tif 000005
【図４】
2013162366.tif 000006
【図５】
2013162366.tif 000007
【図６】
2013162366.tif 000008
【図７】
2013162366.tif 000009
【図８】
2013162366.tif 000010
【図９】
2013162366.tif 000011
【図１０】
2013162366.tif 000012
【図１１】
2013162366.tif 000013
【図１２】
2013162366.tif 000014
【図１３】
2013162366.tif 000015
【図１４】
2013162366.tif 000016
【図１５】
2013162366.tif 000017