(57)【特許請求の範囲】
【請求項１】
アプリケーションの利用開始指示を受け付けるボタンが複数配置されたメニュー画面を表示する情報処理装置であって、
複数配置された前記ボタンに含まれる特定のボタンにより利用開始指示を受付けたアプリケーションによるジョブ処理が完了したことで行われる画面遷移を、前記メニュー画面への画面遷移とする設定を受け付ける設定手段を有し、
前記設定を受け付けていない状態で前記特定のボタンにより利用開始指示を受付けたアプリケーションによるジョブ処理が完了した場合に行われる画面遷移は、当該アプリケーションにより表示されるアプリケーション設定画面への画面遷移であることを特徴とする情報処理装置。
【請求項２】
前記メニュー画面は、前記情報処理装置にインストールされた複数のアプリケーション機能のうちの一つの利用を開始するためのボタンを複数含むことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記アプリケーション設定画面は、設定内容を変更するための複数の設定項目を含むことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記設定手段は、前記ジョブ処理が完了した後に前記メニュー画面に遷移するかどうかをユーザに選択させることで前記設定を受け付けることを特徴とすることを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記ボタンは、ユーザの指示に従って作成されたボタンであることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記設定手段によって設定された内容に従って前記ジョブ処理が完了した後に表示される前記メニュー画面は、前記ユーザの指示に従って作成された複数の前記ボタンを含むことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記ユーザの指示に従って作成される前記ボタンがユーザによって選択されたことに伴って前記アプリケーション設定画面を表示することなく前記設定された内容に従って前記ジョブ処理が実行されることを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記ジョブ処理の実行中に表示されるダイアログを表示する表示手段を更に有し、前記ダイアログは、実行中のジョブ処理を中止する操作を受け付ける第１ボタンを有し、当該第１ボタンへの操作を受け付けると、前記アプリケーション設定画面が表示されることを特徴とする請求項１乃至７のいずれか１項に記載の情報処理装置。
【請求項９】
前記ダイアログは、前記ダイアログを含む画面を閉じる操作を受け付け可能なダイアログであって、前記閉じる操作を受け付ける第２ボタンを有し、当該第２ボタンへの操作を受付けると前記メニュー画面が表示されることを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
アプリケーションの利用開始指示を受け付けるボタンが複数配置されたメニュー画面を表示する情報処理装置の制御方法であって、
複数配置された前記ボタンに含まれる特定のボタンにより利用開始指示を受付けたアプリケーションによるジョブ処理が完了したことで行われる画面遷移を、前記メニュー画面への画面遷移とする設定を受け付ける設定工程を有し、
前記設定を受け付けていない状態で前記特定のボタンにより利用開始指示を受付けたアプリケーションによるジョブ処理が完了した場合に行われる画面遷移は、当該アプリケーションにより表示されるアプリケーション設定画面への画面遷移であることを特徴とする制御方法。
【請求項１１】
コンピュータを、請求項１乃至９のいずれか１項に記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置とその制御方法、及びプログラムに関する
【背景技術】
【０００２】
近年、画像形成装置は様々な機能を備え、ユーザが行う操作内容も複雑化している。一般的に画像形成装置は、複数のユーザで共有することが多いため、各々のユースケースに応じて設定をカスタマイズできる仕組みがある。例えば、画像形成装置のコピーアプリケーションから、レイアウト設定を「２ｉｎ１」、仕上げを「両面」とした「２ｉｎ１＿両面」の設定が記憶されたカスタムボタンをメニューに登録する。そして、ユーザが、メニュー画面でそのカスタムボタンを押下すると、画像形成装置のコピー機能の画面に遷移して、「２ｉｎ１＿両面」を自動的に設定するものがある。これにより、ユーザがコピーする際の設定の手間をなくすことができる（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−１３５７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一方で、上記従来の方法では、例えばコピーのカスタムボタンの押下を検知した後、メニューからコピー機能の画面に遷移した後、画像形成装置でコピー処理が完了したとき、画面はコピー機能のままとなる。このため、例えばメニュー画面に複数のカスタムボタンを登録しておき、続けざまにカスタムボタンを押下して処理を行いたいユーザにとっては使い勝手が良くないと感じることがある。例えば、あるユーザが日常的に、一日の業務の終わりに、作業１（契約書のコピー）、作業２（領収書を電子化して送信）、作業３（請求書を電子化して送信）を行う場合、これら作業１〜３をそれぞれカスタムボタンに登録しておくことで業務の効率化が図れる。しかし、作業１のカスタムボタンを押下してその処理が完了した後、作業２のカスタムボタンを押下するためには、カスタムボタンが登録されているメニュー画面に戻る操作が必要となる。これは作業２のカスタムボタンが押下されて、その処理が完了した後で作業３のカスタムボタンを押下する場合も同様である。このように、複数のカスタムボタンを連続して操作して処理を行いたいユーザにとっては、上記従来の操作は非効率なものであった。
【０００５】
本発明の目的は、上記従来技術の課題を解決することにある。
【０００６】
本発明の特徴は、登録されているカスタムボタンの押下に伴い、そのボタンに紐付けられた機能の画面に遷移した後、設定された画面に自動的に戻る技術を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するために本発明の一態様に係る情報処理装置は以下のような構成を備える。即ち、
アプリケーションの利用開始指示を受け付けるボタンが複数配置されたメニュー画面を表示する情報処理装置であって、
複数配置された前記ボタンに含まれる特定のボタンにより利用開始指示を受付けたアプリケーションによるジョブ処理が完了したことで行われる画面遷移を、前記メニュー画面への画面遷移とする設定を受け付ける設定手段を有し、
前記設定を受け付けていない状態で前記特定のボタンにより利用開始指示を受付けたアプリケーションによるジョブ処理が完了した場合に行われる画面遷移は、当該アプリケーションにより表示されるアプリケーション設定画面への画面遷移であることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、登録されているカスタムボタンの押下に伴い、そのボタンに紐付けられた機能の画面に遷移した後、設定された画面に自動的に戻ることができる。
【０００９】
これにより、例えばユーザが定型業務を複数のカスタムボタンに登録し、複数のボタンを連続して押下する場合に、メニュー画面に戻す操作が不要となり業務の効率化が期待できる。
【００１０】
本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。尚、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。
【図面の簡単な説明】
【００１１】
添付図面は明細書に含まれ、その一部を構成し、本発明の実施形態を示し、その記述と共に本発明の原理を説明するために用いられる。
【図１】本発明の実施形態１に係る画像形成装置の一例を示す多機能処理装置（ＭＦＰ）のハードウェア構成の一例を示す図。
【図２】実施形態１に係るＭＦＰのソフトウェアの構成を説明する機能ブロック図。
【図３】本実施形態１に係るＭＦＰで表示される画面例を示す図で、（Ａ）はメインメニュー画面の一例を示す図、（Ｂ）はコピー画面の一例を示す図。
【図４】本実施形態１に係るＭＦＰで表示されるカスタムメニュー画面例を示す図（Ａ）と、カスタムメニューから呼び出されたコピー画面の一例を示す図（Ｂ）。
【図５】実施形態１に係るＭＦＰで表示されるすコピー画面の一例を示す図。
【図６】実施形態１に係るＭＦＰで表示されるカスタムメニュー画面の一例を示す図（Ａ）と、「ジョブ実行に伴う動作設定ボタン」の押下により表示されるカスタムメニュー画面の一例を示す図（Ｂ）。
【図７】実施形態１に係るＭＦＰのカスタムメニュー制御部のソフトウエア構成を説明するブロック図。
【図８】実施形態１に係るＭＦＰのカスタムメニュー制御部のカスタムボタン制御部が利用する設定値のフォーマットの一例を示す図。
【図９】実施形態１に係るＭＦＰによるカスタムメニュー画面の生成処理を説明するフローチャート。
【図１０】実施形態１に係るＭＦＰにおいて、カスタムボタンを登録するときに表示される画面例を示す図。
【図１１】実施形態１に係るＭＦＰで表示される「カスタムメニューに登録：呼び出し時の設定」画面の一例を示す図。
【図１２】実施形態１に係るＭＦＰで表示されるカスタムメニューのボタン登録・名称とコメント画面の一例を示す図（Ａ）と、図４（Ａ）のメニュー画面に更にカスタムボタンを登録したカスタムメニュー画面の一例を示す図（Ｂ）。
【図１３】実施形態１に係るＭＦＰによるカスタムボタンの登録処理を説明するフローチャート。
【図１４】、
【図１５】、
【図１６】実施形態１に係るＭＦＰにおけるカスタムボタンの押下に伴う画面遷移の一例を説明する図。
【図１７】実施形態１に係るＭＦＰがカスタムボタンが押下されたことを検知して開始する処理を説明するフローチャート。
【図１８】実施形態１に係るＭＦＰにおける各機能がジョブの実行の要求を受信したことで開始する処理を説明するフローチャート。
【図１９】図１８のＳ１８０７の画面遷移制御処理の処理を説明するフローチャート。
【図２０】実施形態１に係るＭＦＰが、例えば図１４（Ｂ）のジョブ実行ダイアログを表示しているときに何らかの入力を検知したことで開始する処理を説明するフローチャート。
【図２１】実施形態１に係るＭＦＰが、例えば図１５（Ａ）のエラーリカバリ画面を表示しているときに、ユーザ操作によるエラーの復旧或いはジョブの中止ボタンが指示されたときの処理を説明するフローチャート。
【図２２】実施形態１に係るＭＦＰにおいて、表示操作制御部や認証制御部からの所定の通知を受けた時に開始される処理を説明するフローチャート。
【図２３】本発明の実施形態２に係るＭＦＰがジョブの実行の要求を受信したことで開始する処理を説明するフローチャート。
【図２４】実施形態２に係るＭＦＰがジョブの状態変化に伴って実行する処理を説明するフローチャート。
【図２５】実施形態３に係る図１８のＳ１８０７の画面遷移制御処理の処理を説明するフローチャート。
【図２６】実施形態３に係るＭＦＰが、例えば図１４（Ｂ）のジョブ実行ダイアログ１４２０を表示しているときに何らかの入力を検知したことで開始する処理を説明するフローチャート。
【図２７】実施形態３に係るＭＦＰが、例えば図１５（Ａ）のエラーリカバリ画面を表示しているときに、ユーザ操作によるエラーの復旧或いはジョブの中止ボタンが指示されたときの処理を説明するフローチャート。
【発明を実施するための形態】
【００１２】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。尚、以下の説明では、本発明に係る情報処理装置の一例を複合機である画像形成装置を例に説明するが、本発明は、このような画像形成装置に限定されない。
【００１３】
［実施形態１］
図１は、本発明の実施形態１に係る画像形成装置の一例を示す多機能処理装置（ＭＦＰ：Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）１０１のハードウェア構成の一例を示す図である。図１は、本実施形態における説明のための一例を示したものであり、他の構成要素を含んだり、或いは、本実施形態１と同様の効果のある構成であったりしても構わないことは言うまでもない。
【００１４】
システムバス１１０を介して、ＣＰＵ１１１、ＲＡＭ１１２、ＲＯＭ１１３、入力制御Ｉ／Ｆ（インターフェース）１１４、表示制御Ｉ／Ｆ１１５、外部メモリＩ／Ｆ１１６、通信Ｉ／Ｆコントローラ１１７が接続されている。また、スキャナ１２１やプリンタ１２２もシステムバス１１０に接続されている。ＣＰＵ１１１は、このシステムバス１１０を介して、このシステムバス１１０に接続されている各部と、データや各種制御信号、アドレス信号をやり取りできる。ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１１は、各部の制御やデータの計算・加工を行う。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１１２は揮発性のメモリであり、ＣＰＵ１１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１１３は不揮発性のメモリであり、画像データやその他のデータ、ＣＰＵ１１１が動作するための各種プログラム等が、それぞれ所定の領域に格納されている。ＣＰＵ１１１は、例えばＲＯＭ１１３に格納されているブートプログラムを実行して、外部メモリ１２０に格納されているＯＳやプログラムをＲＡＭ１１２に展開し、それを実行することによりＭＦＰ１０１の各部を制御する。尚、ＣＰＵ１１１が動作するためのプログラムは、外部メモリ１２０に限らず、ＲＯＭ１１３に記憶されていてもよい。
【００１５】
入力制御Ｉ／Ｆ１１４は、タッチパネル１１８を介したユーザの操作を受付け、その操作に応じた制御信号を生成してＣＰＵ１１１に供給する。例えば、入力制御Ｉ／Ｆ１１４は、ユーザの操作を受付ける入力デバイスとして、キーボードといった文字情報入力デバイス（不図示）や、ポインティングデバイス（不図示）やタッチパネル１１８等とのインタフェースを制御する。尚、タッチパネル１１８は、例えば平面的に構成された入力部に対して接触された位置に応じた座標情報が出力される入力デバイスである。ＣＰＵ１１１は、入力デバイスに対してなされたユーザの操作に応じて入力制御Ｉ／Ｆ１１４で生成され供給される制御信号に基づき、プログラムに従いＭＦＰ１０１の各部を制御する。これにより、ユーザの操作に応じた動作をＭＦＰ１０１に実行させることができる。
【００１６】
表示制御Ｉ／Ｆ１１５は、表示部１１９に対して画像を表示させるための表示信号を出力する。例えば、ＣＰＵ１１１は、プログラムに従い、生成した表示制御信号を表示制御Ｉ／Ｆ１１５に供給する。表示制御Ｉ／Ｆ１１５は、この表示制御信号に基づき表示信号を生成して表示部１１９に出力する。例えば、表示制御Ｉ／Ｆ１１５は、ＣＰＵ１１１が生成する表示制御信号に基づき、ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を構成するＧＵＩ画面を表示部１１９に表示させる。また、タッチパネル１１８は表示部１１９と一体的に構成されていても良い。例えば、タッチパネル１１８は光の透過率が表示部１１９の表示を妨げないように構成され、表示部１１９の表示面の上層に取り付けられる。そして、タッチパネル１１８における入力座標と、表示部１１９上の表示座標とが対応付けられる。これにより、あたかもユーザが表示部１１９上に表示された画面を直接的に操作可能であるかのようなＧＵＩを構成することができる。
【００１７】
外部メモリＩ／Ｆ１１６には、例えばＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）やＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）やＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）、フラッシュメモリ、メモリカード等の外部メモリ１２０が装着できる。ＣＰＵ１１１の制御に基づき、装着された外部メモリ１２０からのデータの読み出しや、外部メモリ１２０に対するデータの書き込みが行われる。構成によっては、外部メモリ１２０をＲＯＭ１１３の代わりに使用することもあり得る。
【００１８】
通信Ｉ／Ｆコントローラ１１７は、ＣＰＵ１１１の制御に基づき、例えばＬＡＮやインターネット、有線、無線等の各種ネットワーク１０２との通信を行う。ネットワーク１０２には、ＰＣや他のＭＦＰ、プリンタ、サーバ等、様々な装置がＭＦＰ１０１と通信可能に接続される。
【００１９】
スキャナ１２１は、ＣＰＵ１１１の制御に基づき、原稿を読み取って画像データを生成する。例えば、ＣＰＵ１１１は、入力制御Ｉ／Ｆ１１４を介して入力されたユーザの指示に従ってスキャナ１２１にスキャン処理を実施させる。スキャナ１２１は、原稿台やＡＤＦ（Ａｕｔｏ  Ｄｏｃｕｍｅｎｔ  Ｆｅｅｄｅｒ）に置かれた原稿を読み取り、その原稿の画像をデジタルデータ化して画像データを生成する。そしてその生成した画像データを外部メモリＩ／Ｆ１１６を介して外部メモリ１２０に格納することができる。プリンタ１２２は、ＣＰＵ１１１の制御に基づき、外部メモリ１２０に保存された画像データを印刷する。例えば、ＣＰＵ１１１は、入力制御Ｉ／Ｆ１１４を介して入力されたユーザの指示や、通信Ｉ／Ｆコントローラ１１７を介して外部装置から入力されたコマンドの指示に従って、プリンタ１２２に印刷処理を実施させる。またプリンタ１２２は、外部メモリ１２０に記憶された画像データを受け取ると、それを印刷可能なデータ形式に変換してシートに印刷する。
【００２０】
図２は、実施形態１に係るＭＦＰ１０１のソフトウェアの構成を説明する機能ブロック図である。尚、図２は、実施形態１を説明するための一例を示した図であり、他の構成要素を含んだり、或いは、実施形態１と同様の効果のある構成を採用しても構わない。また図２に示す各制御部を実現するプログラムは、ＲＯＭ１１３或いは外部メモリ１２０に格納されており、起動時や機能利用時など必要に応じてＲＡＭ１１２へ展開されてＣＰＵ１１１の制御の下に実行される事により各機能が実現される。
【００２１】
制御バス２００は、以下に説明する各部を接続して情報の受け渡しを行う仮想的なバスである。ＭＦＰ１０１には、一つ以上の機能を備えており、各機能毎に制御部がある。ここでは、表示操作制御部２０１、認証制御部２０２、コピー制御部２１０、送信制御部２１１、カスタムメニュー制御部２１２、メインメニュー制御部２１３、ジョブ管理制御部２１４、エラーリカバリ制御部２１５、ブラウザ制御部２１６がある。更に、同期制御部２０５、データベース（ＤＢ）２０６も含んでいる。
【００２２】
当然ながら図２に記載した機能以外のＭＦＰ１０１の処理に関わる各機能について、それぞれ制御部が存在するのは言うまでもない（不図示）。その他の機能の例として、ドライバから投入された印刷ジョブをＭＦＰ１０１に留め置き、認証したユーザ或いは印刷ジョブに紐づけられたパスワードを知るユーザのみが印刷できるセキュアプリント機能がある。またＭＦＰ１０１内に画像データを保存する機能を持つボックス機能や、ヘルプ画面を表示する機能を持つヘルプ機能や、公共通信網からＦＡＸ文書を受信するファックス機能などがある。
【００２３】
表示操作制御部２０１は、ＣＰＵ１１１の制御に基づき、入力制御Ｉ／Ｆ１１４や表示制御Ｉ／Ｆ１１５を制御する。例えば、表示操作制御部２０１は、他の制御部からの指示に基づいて表示制御Ｉ／Ｆ１１５を介して表示部１１９に画像などを表示したり、入力制御Ｉ／Ｆ１１４を介して、タッチパネル１１８にユーザが入力した情報を取得する。また表示操作制御部２０１は、各機能からの要求に従って機能を切り替えることで、各機能が有する画面を表示部１１９に表示する機能を有する。実施形態１では、例えば図３の主画面領域３０１に表示された機能の状態を「アクティブである」とし、また、ある機能を主画面領域３０１に表示することを「アクティブにする」と表記する。
【００２４】
次に、この表示操作制御部２０１による表示例を図３（Ａ）を参照して説明する。
【００２５】
図３（Ａ）は、メインメニュー制御部２１３によって生成されたメインメニュー画面の一例を示す図である。
【００２６】
ここで表示操作制御部２０１は、主画面領域３０１と機能選択領域３０２、ステータス領域３２０を含む全体画面３００を、表示制御Ｉ／Ｆ１１５を介して表示部１１９に表示する。主画面領域３０１には、アクティブになっている機能の画面が表示されており、図３（Ａ）では、コピー機能を指示するコピーボタン３３０と「スキャンして送信」を指示するボタン３３１が表示されている。機能選択領域３０２には、メインメニュー画面と、カスタムメニュー制御部２１２によって生成されるカスタムメニュー画面をアクティブにするためのボタン３０３，３０４が配置されている。またステータス領域３２０には、後述するジョブの状態、及びログイン・ログアウトボタンが表示される。尚、ステータス領域３２０は、各機能が自由に利用することもできるため、その表示形態は、この記載内容に限定されるものではない。
【００２７】
認証制御部２０２は、ＣＰＵ１１１の制御に基づき、ユーザを識別するための認証処理（以下、ログイン）を行い、ＭＦＰ１０１の操作者が、ＭＦＰ１０１の正当なユーザか否かを判定する。また認証制御部２０２は、外部メモリ１２０上のユーザ情報を格納したデータベースを参照してユーザの認証を行う。ログイン処理では、ユーザ名とパスワードの対応関係が正しいかどうかを判定し、正しければログイン処理は成功し、正規のユーザとして、与えられた権限の範囲で、このＭＦＰ１０１の各機能が利用可能になる。一方で、ログイン処理が失敗すれば、認証していないユーザとして、より狭い権限の範囲で、ＭＦＰ１０１の各機能の利用が可能になるか、或いは、どの機能も利用できないといった制御が行われる。尚、認証方法は、この限りでなく、非接触型のＩＣカードなど他の認証方法でもよい。
【００２８】
次にコピー制御部２１０について説明する。コピー制御部２１０は、原稿を読み取り複写して印刷するコピー機能を制御する。コピー制御部２１０は、スキャナ１２１から画像データを入力し、その画像データに対して画像処理を行い、その画像データをプリンタ１２２へ出力して印刷させる。コピー機能における設定の一例として、Ｎ枚の原稿から１枚のコピー画像を生成するか指定させるレイアウト（Ｎｉｎ１）設定や、原稿の片面か両面を読み取るか指定させる両面設定がある。更に、フルカラー、モノクロ、単色などの印刷する色を指定させるカラーモード設定などがある。
【００２９】
次に送信制御部２１１について説明する。送信制御部２１１は、原稿を読み取り、外部のサーバに送信する送信機能を制御する。送信制御部２１１は、スキャナ１２１から入力した画像データに対して画像処理を行い、例えばＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ），ＴＩＦＦなどの一般的なファイルフォーマットのファイルを生成する。そして生成したファイルを、例えばサーバに送付したり、Ｅ−Ｍａｉｌに添付して送付したりする。
【００３０】
次にブラウザ制御部２１６について説明する。ブラウザ制御部２１６は、ネットワーク１０２を介してＷｅｂサーバと通信してリソースを取得する。そして、その取得したリソースの種類に基づいてＣＰＵ１１１による構文解析を実行し、文字や画像を適切に配置し表示制御Ｉ／Ｆ１１５を介して表示部１１９に出力する。ブラウザ機能の利用例として、ブラウザ制御部２１６が文書管理機能を有するサーバにＨＴＴＰリクエストを発行し、レスポンスにセットされたスキャン要求を解析し、スキャナ１２１に対してスキャン要求を行う。そして、その取得した画像データを文書としてサーバに登録するリクエストを行うといったもの等が挙げられる。
【００３１】
次にカスタムメニュー制御部２１２について説明する。カスタムメニュー制御部２１２は、他の機能の設定を記憶し、カスタマイズ可能なボタン（以後、カスタムボタン４０５（図４（Ａ）））として登録する機能を制御する。カスタムメニュー制御部２１２は、他の機能で設定を行った後、カスタムボタン登録を指示することにより、カスタムメニュー画面４０１（図４（Ａ））に設定した機能へのショートカットボタンを登録する。カスタムメニューの詳細は後述する。
【００３２】
次にメインメニュー制御部２１３について説明する。メインメニュー制御部２１３は、ユーザが利用したい機能を選択し、切り替える機能を制御する。具体的には、メインメニュー制御部２１３は、例えば図３（Ａ）に示すように、機能に対応するアイコンをボタン３３０として配置したメインメニュー画面を生成する。そして、ボタン３３０が押下されたことを検知すると、表示操作制御部２０１に、そのボタン３３０に対応する機能の画面をアクティブにするように要求する。例えば、図３（Ａ）の例では、コピーのアプリボタン３３０の押下検知に基づいて、例えば図３（Ｂ）に示すように、コピー制御部２１０によって生成されるコピー画面３５０をアクティブにする。
【００３３】
次にジョブ管理制御部２１４について説明する。ジョブ管理制御部２１４は、処理されたプリントやスキャンといったＭＦＰ１０１が有する機能の状態を管理し、関連する機能からの要求を受けた時に、ジョブの状態を応答する。また或いは、ジョブの状態が変化したことを、関連する機能に通知する機能を有する。またジョブ管理制御部２１４は、ジョブと機能との関係を、ジョブＩＤという識別子で対応付けてＤＢ２０６に格納する。尚、印刷ジョブが取り得る状態の遷移としては、画像形成に必要なデータを準備する準備中状態や、画像形成中を表す実行中状態、画像形成の完了を表す正常終了状態、画像形成の失敗を表すエラー状態などがある。
【００３４】
次に、エラーリカバリ制御部２１５について説明する。エラーリカバリ制御部２１５は、ジョブ管理制御部２１４からエラー状態の通知を受けると、そのエラーに対応するエラー状況から復帰するための画面を生成する。そして表示操作制御部２０１に、エラーリカバリ制御部２１５自身をアクティブにするように要求する。エラーリカバリ制御部２１５は、ユーザによる所定の操作によって、そのエラーから復帰できた場合、そのジョブの発行元である機能をアクティブにするように表示操作制御部２０１に要求する。但し、カスタムメニュー制御部２１２からカスタムボタン４０５の押下検知により発行されたジョブについては、カスタムメニュー制御部２１２が有する画面の遷移設定に従って画面の遷移を制御する。また、エラーからの復帰だけでなく、ユーザからエラー対象となっているジョブの中止を要求された場合も同様に、そのジョブの発行元である機能、或いはカスタムメニュー制御部２１２をアクティブにするように表示操作制御部２０１に要求する。エラーリカバリ制御部２１５からの画面遷移の詳細動作については後述する。
【００３５】
次にブラウザ制御部２１６について説明する。ブラウザ制御部２１６は、ネットワーク１０２を介してＷｅｂサーバと通信してリソースを取得する。そして、その取得したリソースの種類に基づいて、ＣＰＵ１１１が構文解析を実行し、文字や画像を適切に配置した画面を表示制御Ｉ／Ｆ１１５を介して表示部１１９に出力して表示する。ブラウザ機能の利用例として、ブラウザ制御部２１６が文書管理機能を有するサーバにＨＴＴＰリクエストを発行し、そのレスポンスにセットされたスキャン要求を解析し、スキャナ１２１に対してスキャン要求を発行する。そして、スキャナ１２１が取得した画像データを文書データとしてサーバに登録するといったものが挙げられる。
【００３６】
ＤＢ２０６は、各機能が利用するＭＦＰ１０１固有の記憶領域であり、ＲＡＭ１１２或いは外部メモリ１２０に設けられる。
【００３７】
図４〜図６は、実施形態１に係るＭＦＰ１０１が表示するカスタムメニュー画面を説明する図である。ここでは、前述のカスタムメニュー制御部２１２により表示される基本的な画面構成と、各ＵＩ部品が備える機能について説明する。尚、図６（Ｂ）以降の画面では、機能選択領域３０２は注視する必要がないので図示を省略している。
【００３８】
図４（Ａ）は、カスタムメニュー画面４０１の一例を示す図で、これは図７の画面関連制御部７０２によって作成されたもので、２つのカスタムボタン４０２，４０３を表示している。カスタムボタン４０２が押下されると、コピー制御部２１０が起動されてコピー機能に移行する。カスタムボタン４０３が押下されると、送信制御部２１１が起動されて送信処理に遷移する。尚、実施形態１において、カスタムボタンを総称した意味で表す場合、カスタムボタン４０５と表記し、個別のカスタムボタンを表す場合は、カスタムボタン４０２やカスタムボタン４０３と表記する。また、戻るアイコン４０８は、このアイコンが付与されているカスタムボタン４０５は、そのカスタムボタン４０５に紐づくジョブの実行後、自動的に図４（Ａ）のカスタムメニュー画面４０１に戻ることを示している。具体的には、カスタムボタン４０２の押下によりコピー処理が開始され、コピー処理が終了すると自動的にカスタムメニュー画面４０１に戻る。しかし、カスタムボタン４０３の押下により送信処理が開始され、送信処理が終了しても自動的にカスタムメニュー画面４０１に戻らない。
【００３９】
またマイボタン４１０は、認証制御部２０２が受け付けたログインユーザに紐づいた、ユーザごとに管理された専用のボタンを表示するためのボタンである。一方、共有ボタン４１１は、認証制御部２０２によるログインが完了していない、即ち未認証のユーザや、全てのユーザで共通に利用可能なボタンを表示するためのボタンである。尚、認証制御部２０２が、複数のユーザをグループ単位で管理できる機構を備えていれば、グループごとに利用可能なボタンを表示するための、グループボタンを追加しても構わない。
【００４０】
カスタムメニュー制御部２１２は、カスタムボタン４０２，４０３の押下を入力制御Ｉ／Ｆ１１４を介して検知すると、対応する制御部に対して、ＤＢ２０６から取得した設定情報と共に、呼び出し要求を行う。例えば、カスタムメニュー制御部２１２が、カスタムボタン４０２の押下を検知すると、コピー制御部２１０に対して呼び出し要求を行う。これによりコピー制御部２１０は、例えば図４（Ｂ）に示す確認ダイアログを表示部１１９に表示させる。図４（Ｂ）では、フルカラーで、濃度が標準よりも３段階濃く、原稿の種類が文字、といった設定値がカスタムボタン制御部７０１（図７）を介してコピー制御部２１０に渡されていることを表す。この時、例えば、図８に示すようなＸＭＬの形式でカスタムボタン制御部７０１からコピー制御部２１０に設定値が渡される。その詳細は後述する。そして、コピー制御部２１０は、図４（Ｂ）の「はい」ボタンの押下を検知すると、上述した設定値が反映された、例えば図５に示すコピー画面を表示制御Ｉ／Ｆ１１５を介して表示部１１９に表示する。その後、カスタムメニュー制御部２１２から提供された設定値が反映された状態で、コピージョブを実行し、そのコピージョブの実行が完了すると、図４（Ａ）のカスタムメニュー画面４０１に戻る。
【００４１】
また図７の画面関連制御部７０２は、図４（Ａ）のカスタムメニュー設定ボタン４２０の押下を検知すると、カスタムメニュー制御部２１２が有する各種設定を変更するための吹き出しメニュー４３０を表示する（図６（Ａ））。この吹き出しメニュー４３０には、ジョブ実行に伴う動作設定ボタン４３１が配置されている。そして画面関連制御部７０２は、このボタン４３１の押下を検知すると、例えば図６（Ｂ）に示すような、ジョブ実行に伴う動作を設定するための画面であるカスタムメニュー画面４４０を生成して表示する。尚、吹き出しメニュー４３０には、カスタムメニュー画面４０１の背景画像の選択や、カスタムボタン４０５の大きさの変更や、カスタムボタン４０５の機能制限に関係するボタンが登録されていても構わない。
【００４２】
図６（Ｂ）のカスタムメニュー画面４４０には、ジョブ実行後の画面遷移設定のデフォルト値を設定するための画面遷移デフォルト設定４４１がある。この画面遷移デフォルト設定４４１には、カスタムメニュー画面４０１に戻るように設定するボタン６０１、カスタムボタン４０５が、即スタートがＯＮの時のみカスタムメニュー画面４０１に戻るように設定するボタン６０２がある。更に、ジョブ実行後にカスタムメニューに戻らないように設定するボタン６０３がある。尚、即スタートとは、カスタムボタン４０５の押下検知に伴い、所望の機能をアクティブにした後、即座に、そのカスタムボタン４０５に対応するジョブが実行されることを意味する。またカスタムメニュー画面４４０にはジョブエラー発生時の画面遷移設定４４２が含まれており、ジョブの実行中にエラーが発生した場合に、カスタムメニュー画面４０１に戻るように設定するボタン６０４、画面遷移しないように設定するボタン６０５がある。また、ジョブキャンセル時の画面遷移設定４４３は、ジョブキャンセル時にカスタムメニュー画面４０１に戻るように設定するボタン６０６と、画面遷移しないように設定するボタン６０７がある。更に、ボタンごとの画面遷移設定４４４は、ボタンごとの画面遷移設定を有効にするかどうかを指示するＯＮ，ＯＦＦボタンがある。ボタンごとの画面遷移設定４４４がＯＮの場合は、カスタムボタン４０５の情報に画面遷移が定義されている場合、ジョブ実行後の画面遷移のデフォルト設定４４１より優先した画面遷移が行われる。逆に、ボタンごとの画面遷移設定４４４がＯＦＦの場合は、カスタムボタン４０５の情報に画面遷移が定義されていても、ジョブ実行後の画面遷移デフォルト設定４４１の設定値が優先される。
【００４３】
尚、ジョブ実行後の画面遷移デフォルト設定４４１、ジョブエラー発生時の画面遷移設定４４２、ジョブキャンセル時の画面遷移設定４４３、ボタンごとの画面遷移設定４４４は、システム全体で共通の設定値として管理しても良い。また或いは、ユーザごとに有しても構わない。換言すると、認証制御部２０２によりログイン処理が正常に行われた場合は、そのログインしたユーザに固有の設定値として管理できるようにし、ユーザの設定がシステム全体の設定値より優先されるようにしても構わない。
【００４４】
図７は、実施形態１に係るＭＦＰ１０１のカスタムメニュー制御部２１２のソフトウエア構成を説明するブロック図である。
【００４５】
カスタムメニュー制御部２１２は、カスタムボタン制御部７０１と画面関連制御部７０２を有している。カスタムボタン制御部７０１は、機能からのカスタムボタンの登録要求に伴い、そのボタンに関する情報をＤＢ２０６に設定する。またカスタムボタン４０５が押下されると、そのカスタムボタン４０５に関する情報をＤＢ２０６から読み込んで、それに対応する機能を呼び出す。尚、画面関連制御部７０２は、カスタムメニュー制御部２１２が表示部１１９に出力する、そのボタンの画面を生成する。例えば、カスタムボタン４０５に適切なアイコンを付与して配置することで、例えば図４（Ａ）に示すカスタムメニュー画面４０１を生成する。また、例えば図６（Ａ）に示す吹き出しメニュー４３０や図６（Ｂ）のカスタムメニュー画面４４０などの補助画面も生成する。カスタムメニュー画面４０１の生成の詳細については後述する。また画面関連制御部７０２は、例えば図６（Ｂ）のカスタムメニュー画面４４０で設定された各種設定値をＤＢ２０６に格納する。更に画面関連制御部７０２は、各機能からカスタムメニュー画面４０１への画面遷移の要求を受付けると、カスタムメニュー画面４０１を生成して、表示操作制御部２０１にカスタムメニュー制御部２１２をアクティブにするように要求する。
【００４６】
図８は、実施形態１に係るＭＦＰ１０１のカスタムメニュー制御部２１２のカスタムボタン制御部７０１が利用する設定値のフォーマットの一例を示す図である。尚、この実施形態１では、カスタムボタン設定値８０１はＸＭＬ形式で表現されているが、設定値を取り扱い可能な様態であればどのようなフォーマットであっても構わない。
【００４７】
機能タグ８０２は、カスタムボタン４０５に対応する機能が明示されており、ここではコピー制御部２１０を指している。そして、この機能タグ８０２の中には、各機能が有する諸設定が定義されており、ここでは印刷面が両面、色がフルカラー、用紙サイズが自動検知、濃度が標準値から＋３、印刷部数が３枚であることを表している。即スタートタグ８０３は、カスタムボタン４０５の押下に伴い、タッチパネル１１８のスタートキー（不図示）の押下を検知することなく、カスタムボタン４０５の設定値を当該機能に反映し、即座にジョブを実行するかどうかの設定を表す。即スタートタグ８０３に「ＯＮ」が設定されていれば、そのカスタムボタン４０５は、即座にジョブが実行される。図８では、「ＯＦＦ」に設定されており、カスタムボタン４０５の押下に伴って設定値を機能が反映した状態で留まることを示している。
【００４８】
ボタンタグ８０４は、図６（Ａ）のカスタムメニュー画面４０１に出力されるカスタムボタン４０５のボタン名称とコメントとボタン位置を定義している。ここで、ボタン位置とは、カスタムメニュー画面４０１上の何番目に、そのボタンが配置されるかを表す情報である。図８では「０」が指定されており、これは図６（Ａ）のカスタムメニュー画面４０１のカスタムボタン４０２の位置に相当する。この位置を示す数字が大きくなるにつれて、カスタムメニュー画面４０１の右下方向に配置されることを表す。
【００４９】
画面遷移タグ８１０は、カスタムボタン４０５の実行が正常終了した場合、或いは実行中にエラーが発生した場合、或いは実行をキャンセルした場合に、どの機能に遷移するかを定義する。それぞれ、正常終了タグ８１１、エラータグ８１２、キャンセルタグ８１３と表記する。この例ではジョブが正常終了した場合はカスタムメニュー画面４０１に戻り、エラー及びキャンセルが発生した場合は、画面遷移しないように設定されている。画面遷移処理の詳細については後述する。
【００５０】
尚、ここで定義された設定値は、コピージョブ、印刷ジョブや送信ジョブなどの各種ジョブと対応付けられており、ジョブの生成時に機能タグ８０２や即スタートタグ８０３などの全てのタグの値が設定される。このため、ジョブが有する設定値は、カスタムボタン設定値８０１を全て含んでいる。よって、以後の記載において、カスタムボタン設定値８０１で定義したタグについては、ジョブの設定値からも参照可能であるため呼称を分けることなく統一的に扱う。
【００５１】
図９は、実施形態１に係るＭＦＰ１０１によるカスタムメニュー画面４０１の生成処理を説明するフローチャートである。この処理はＣＰＵ１１１が図７の画面関連制御部７０２として機能することにより達成される。この処理はＣＰＵ１１１がＲＯＭ１１３或いは外部メモリ１２０からＲＡＭ１１２に展開したプログラムを実行することにより実現されるため、ここではＣＰＵ１１１による処理として説明する。
【００５２】
この処理は、カスタムメニュー画面４０１の表示要求が入力されることにより開始され、先ずＳ９０１でＣＰＵ１１１は、ＤＢ２０６から、例えば図４（Ａ）に示すようなカスタムメニュー画面４０１の生成に必要な情報を取得する。ここで必要な情報としては、ボタンの位置やボタンの大きさ、アイコン、ボタン名称、コメント等がある。次にＳ９０２に進みＣＰＵ１１１は、そのカスタムメニュー画面４０１を構成するカスタムボタン４０５以外の部品（マイボタン４１０、共有ボタン４１１、カスタムメニュー設定ボタン４２０、各種文言等）を配置する。
【００５３】
次にＳ９０３に進みＣＰＵ１１１は、全てのカスタムボタン４０５の生成と配置が完了したかどうかを判定し、完了していればＳ９１１に進むが、完了していないときはＳ９０４に進む。Ｓ９０４でＣＰＵ１１１は、ボタン名称、コメント、アイコンを設定したカスタムボタン４０５を準備する。次にＳ９０５に進みＣＰＵ１１１は、図６（Ｂ）で説明したボタンごとの画面遷移設定４４４が「ＯＮ」かどうか判定し、ＯＮであればＳ９０６に進み、ＯＦＦであればＳ９０７に進む。Ｓ９０６でＣＰＵ１１１は、画面遷移タグ８１０に「カスタムメニューに戻る」が定義されているかどうか判定する。ここでＣＰＵ１１１は、「カスタムメニューに戻る」が定義されていないと判定するとＳ９１０に処理を進める。Ｓ９０１でＣＰＵ１１１は、形成するのに必要な準備が整ったカスタムボタン４０５を、そのボタン位置に基づいてカスタムメニュー画面４０１に配置してＳ９０３に進む。
【００５４】
一方、Ｓ９０６でＣＰＵ１１１は、画面遷移タグ８１０にカスタムメニューが定義されていると判定するとＳ９０９に進み、そのカスタムボタン４０５に戻るアイコン４０８（図４（Ａ））を付与してＳ９１０に進む。従って、このカスタムボタンによる処理が完了すると、自動的にカスタムメニュー画面４０１に戻ることが明示される。
【００５５】
またＳ９０５でＣＰＵ１１１は、ボタンごとの画面遷移設定４４４が「ＯＦＦ」であると判定するとＳ９０７に進み、画面遷移デフォルト設定４４１の値を確認する。ここでＣＰＵ１１１は、「カスタムメニューに戻る」６１０が設定されていると判定するとＳ９０９に進み、カスタムボタン４０５に戻るアイコン４０８を付与してＳ９１０に進む。このときも、そのカスタムボタンによる処理が完了すると、自動的にカスタムメニュー画面４０１に戻ることが明示される。
【００５６】
またＳ９０７でＣＰＵ１１１は、「即スタート時にのみ戻る」６０２が設定されていると判定するとＳ９０８に進み、ＣＰＵ１１１は、即スタートタグ８０３の値を確認する。ここで即スタートタグ８０３が「ＯＮ」であればＳ９０９に進み、ＣＰＵ１１１は、カスタムボタン４０５に戻るアイコンを付与してＳ９１０に進むが、即スタートタグ８０３が「ＯＦＦ」であればＳ９１０に処理を移す。またＳ９０７でＣＰＵ１１１は、画面遷移デフォルト設定４４１の値が「画面遷移しない」６０３であればＳ９１０に処理を移す。こうして、全てのカスタムボタン４０５の配置の生成と配置が完了するとＳ９０３からＳ９１１に進みＣＰＵ１１１は、表示操作制御部２０１にカスタムメニュー制御部２１２をアクティブにするように要求する。そして、カスタムメニュー画面４０１を表示する。
【００５７】
尚、画面の部品の位置をＸＭＬ形式やＨＴＭＬ形式などでテンプレートファイルとして用意しておき、それに応じて、画面の様態を変えるようにしても構わない。換言すると、画面の生成に必要な情報さえ取得できていれば、最終段階の画面の生成方法は、この実施形態１の様態に限定されるものではないことに注意されたい。
【００５８】
この処理により、カスタムボタンが押下されて、そのボタンで指示されたジョブが実行された後、自動的にメニュー画面に戻る場合は、そのカスタムボタンに戻るアイコン４０８が表示される。
【００５９】
図１０〜図１２は、実施形態１に係るＭＦＰ１０１において、カスタムボタン４０５を登録するときに表示される画面例を示す図である。
【００６０】
ここでＣＰＵ１１１はコピー制御部２１０として機能し、コピー画面１００１を表示部１１９に表示する。そして、コピー画面１００１のコピー設定ボタン１００２の押下を検知すると、例えば図１０に示すように、吹き出しメニュー１００３を生成して、コピー画面１００１に表示する。このとき、その吹き出しメニュー１００３に「カスタムメニューに登録」ボタン１００４を表示する。
【００６１】
次にＣＰＵ１１１は、「カスタムメニューに登録」ボタン１００４が押下されたことを検知すると、カスタムメニュー制御部２１２に対して、例えば図１１に示す「カスタムメニューに登録：呼び出し時の設定」画面を要求する。ここで、図６（Ｂ）のボタンごとの画面遷移設定４４４が「ＯＮ」の場合、例えば図１１（Ａ）に示す「カスタムメニューに登録：呼び出し時の設定」画面１１３０が表示される。一方、図６（Ｂ）のボタンごとの個別画面遷移４４４が「ＯＦＦ」の場合は、例えば図１１（Ｂ）に示す「カスタムメニューに登録：呼び出し時の設定」画面が表示される。尚、この画面１１３０、１１４０に表示される各設定内容は、例えば前述の図６（Ｂ）の画面４４０を介して設定されたものである。ここで図１１（Ａ）と図１１（Ｂ）の画面の違いは、ジョブ実行後の画面遷移設定１１３２、ジョブエラー発生時の画面遷移設定１１３３、ジョブキャンセル時の画面遷移設定１１３４の有無である。これらの設定値の初期値の詳細については後述する。
【００６２】
尚、「カスタムメニューに登録：呼び出し時の設定」画面１１３０、「カスタムメニューに登録：呼び出し時の設定」画面１１４０は共に、図８の即スタートタグ８０３に紐づくための設定項目である「呼び出し時に即スタート」の設定項目１１３１が存在する。尚、「カスタムメニューに登録：呼び出し時の設定」画面１１３０では、次のように設定されている。即スタートの設定項目１１３１がＯＦＦ、ジョブ実行後の画面遷移設定１１３２が「カスタムメニューに戻る」、ジョブエラー発生時の画面遷移設定１１３３とジョブキャンセル時の画面遷移設定１１３４がともに「画面遷移しない」。一方、図１１（Ｂ）の「カスタムメニューに登録：呼び出し時の設定」画面１１４０では、即スタートの設定項目１１３１がＯＦＦとなっている。
【００６３】
そして、カスタムメニュー制御部２１２は、「カスタムメニューに登録：呼び出し時の設定」画面１１３０或いは「カスタムメニューに登録：呼び出し時の設定」画面１１４０で設定が完了し、画面右下の次へボタンの押下を検知すると画面遷移する。尚、以下の例では、「カスタムメニューに登録：呼び出し時の設定」画面１１３０から画面遷移したものとして説明する。
【００６４】
遷移後の画面は、例えば図１２（Ａ）のカスタムメニューのボタン登録・名称とコメント画面１２５０であり、この画面を介してボタンの名称やコメントを入力できる。図１２（Ａ）では、名称に「両面２ｉｎ１」、コメントに「通常設定」が入力された状態を示している。そして、カスタムメニュー制御部２１２は、同画面の右下のＯＫボタンの押下を検知すると、カスタムボタン４０５をＤＢ２０６に登録する。この状態で、カスタムメニュー画面４０１を確認すると、例えば図１２（Ｂ）に示すように、以上の手順で、新たに登録されたカスタムボタン１２６１が、図４（Ａ）のカスタムメニュー画面に追加して表示される。
【００６５】
図１３は、実施形態１に係るＭＦＰ１０１によるカスタムボタン４０５の登録処理を説明するフローチャートである。この処理はＣＰＵ１１１がカスタムメニュー制御部２１２として機能することにより達成される。この処理はＣＰＵ１１１がＲＯＭ１１３、或いは外部メモリ１２０からＲＡＭ１１２に展開したプログラムを実行することにより実現されるため、ここではＣＰＵ１１１による処理として説明する。
【００６６】
まずＳ１３０１でＣＰＵ１１１は、機能からカスタムメニューボタンの登録要求を受付ける。次にＳ１３０２に進みＣＰＵ１１１は、その要求内容にジョブ設定が存在するか否かを判定する。ここでＣＰＵ１１１は、ジョブ設定が存在しないと判定するとＳ１３１３に処理を進めるが、ジョブ設定が存在すると判定するとＳ１３０３に処理を進める。尚、ジョブに紐づかない機能の一例として、例えばブラウザ制御部２１６がある。ＣＰＵ１１１は、登録されたウェブブラウザのカスタムボタン４０５が押下されたことを検知するとブラウザ制御部２１６をアクティブにする。しかし、単純なウェブページの表示を目的とした画面遷移であった場合は、ブラウザ制御部２１６からジョブの実行は行われない。このため、このようなジョブ設定を伴わない単純なウェブページへの遷移を目的としたカスタムボタン４０５の登録では、画面遷移に関する設定は不要となる。但し、ブラウザ制御部２１６からのＰＯＳＴ或いはＧＥＴ処理に伴い、ネットワーク１０２を介してジョブの実行を要求することも可能である。このようなケースでは、ボタンの登録要求にジョブ設定が存在すると判定してＳ１３０３へ処理を移すことになる。
【００６７】
Ｓ１３０３でＣＰＵ１１１は、機能から渡されたジョブの設定値をＲＡＭ１１３に格納する。次にＳ１３０４に進みＣＰＵ１１１は、画面遷移のデフォルト設定４４１、ジョブエラー発生時の画面遷移設定４４２、ジョブキャンセル時の画面遷移設定４４３及びボタンごとの画面遷移設定４４４をＤＢ２０６から取得する。そしてＳ１３０５に進みＣＰＵ１１１は、ボタンごとの画面遷移設定４４４がＯＮかどうか判定する。ここで画面遷移設定４４４がＯＦＦであると判定するとＳ１３０６に進みＣＰＵ１１１は、表示する画面として「カスタムメニューに登録：呼び出し時の設定」画面１１４０（図１１（Ｂ）を準備する。
【００６８】
一方、Ｓ１３０５でボタンごとの画面遷移設定４４４がＯＮであると判定するとＳ１３０７に進む。Ｓ１３０７でＣＰＵ１１１は、ジョブ実行後の画面遷移のデフォルト設定４４１の値を確認する。この確認の結果、画面遷移のデフォルト設定４４１が「カスタムメニューに戻る」であればＳ１３０９に進みＣＰＵ１１１は、図１１（Ａ）のジョブ実行後画面遷移設定１１３２を「カスタムメニューに戻る」に設定してＳ１３１１に進む。またＳ１３０７で画面遷移のデフォルト設定４４１が「画面遷移しない」であればＳ１３１０に進み、ＣＰＵ１１１は、ジョブ実行後の画面遷移設定１１３２を「画面遷移しない」に設定してＳ１３１１に進む。またＳ１３０７で画面遷移のデフォルト設定４４１が「即スタート時のみ戻る」であればＳ１３０８に進みＣＰＵ１１１は、即スタート設定の初期値がＯＮかどうか判定する。ここでＯＮであると判定するとＳ１３０９に進み、ＯＦＦであると判定するとＳ１３１０に進む。尚、即スタート設定の初期値は、ＤＢ２０６に固定値で保存しても構わないし、図６（Ｂ）のカスタムメニュー画面４４０で選択できるようにするか、或いは別の設定画面から設定できるようにしても構わない。
【００６９】
Ｓ１３１１でＣＰＵ１１１は、ジョブエラー発生時の画面遷移設定１１３３に、図６（Ｂ）のジョブエラー発生時の画面遷移設定４４２を初期値として設定する。次にＳ１３１２に進みＣＰＵ１１１は、ジョブキャンセル時の画面遷移設定１１３４に、図６（Ｂ）のジョブキャンセル時の画面遷移設定４４３を初期値として設定する。そしてＳ１３１３に進みＣＰＵ１１１は、「カスタムメニューに登録：呼び出し時の設定」画面１１３０（図１１（Ａ））を生成して表示する。次にＳ１３１４に進みＣＰＵ１１１は、その画面の右下の次へボタンの押下を検知するとＳ１３１５に処理を進め、図１２（Ａ）の「カスタムメニューのボタン登録・名称とコメント」画面１２５０を生成して表示部１１９に表示する。次にＳ１３１６に進みＣＰＵ１１１は、その画面でＯＫボタンの押下を検知するとＳ１３１７に進み、新たなカスタムボタン４０５に関する情報として、Ｓ１３０３で格納したジョブの設定値をＲＡＭ１１３から取得する。そして各種画面遷移設定と合わせて図８で示したフォーマットの形に形成してＤＢ２０６に登録する。以上説明した処理により、カスタムボタン４０５の登録処理を終える。
【００７０】
尚、ジョブ実行後の画面遷移設定１１３２、ジョブエラー発生時の画面遷移設定１１３３、ジョブキャンセル時の画面遷移設定１１３４に設定された各値は、図８の正常終了タグ８１１、エラータグ８１２、キャンセルタグ８１３の値として反映される。
【００７１】
図１４〜図１６は、実施形態１に係るＭＦＰ１０１におけるカスタムボタン４０５の押下に伴う画面遷移の一例を説明する図である。
【００７２】
図１４（Ａ）のカスタムメニュー画面１４０１には、３つのカスタムボタン１４０２〜１４０４が配置されている。カスタムメニュー制御部２１２は、このカスタムメニュー画面１４０１上のカスタムボタン１４０２の押下を検知すると、コピー制御部２１０に設定値を提供する。そして、カスタムメニュー制御部２１２は、コピー制御部２１０による、例えば図１４（Ｂ）に示すコピー画面１４１０の生成が完了すると、コピー制御部２１０をアクティブにするよう表示操作制御部２０１に要求して、コピー画面１４１０を表示する。その後、コピージョブが開始されると、コピー制御部２１０は、コピー画面１４１０にジョブ実行ダイアログ１４２０を表示する。そして、そのコピージョブが正常終了すると、カスタムボタン１４０２に、戻るアイコン４０８が付与されているため、カスタムメニュー制御部２１２は、自身をアクティブにするように表示操作制御部２０１に要求する。そして、図１４（Ａ）に示すカスタムメニュー画面１４０１が表示される。
【００７３】
一方、図１４（Ｂ）で機能が、ジョブ実行ダイアログ１４２０の中止ボタン１４２１の押下を検知すると、そのコピージョブをキャンセルして終了する。この時、カスタムメニュー画面１４０１か、コピー画面１４１０に遷移する。ここで、どちらの画面に遷移するかは、図６（Ｂ）のカスタムメニュー画面４４０で行った設定、或いは、図１１（Ａ）の「カスタムメニューに登録：呼び出し時の設定」画面１１３０で行った設定に基づいて決定される。詳細な画面遷移先の決定方法については後述する。
【００７４】
また、図１４（Ｂ）の画面で、機能がジョブ実行ダイアログ１４２０の閉じるボタン１４２２の押下を検知すると、正常終了と判断し、カスタムメニュー制御部２１２をアクティブにするように表示操作制御部２０１に要求する。これにより、図１４（Ａ）に示すカスタムメニュー画面１４０１に遷移して、そのメニュー画面が表示される。
【００７５】
ところで、コピー制御部２１０がジョブ実行ダイアログ１４２０を表示して、コピージョブの実行中に、何らかのエラー（ここでは用紙切れエラー）が発生することがある。このとき、ジョブの状態変化を検知したエラーリカバリ制御部２１５が、そのエラーから復旧するための、例えば図１５（Ａ）に示すエラーリカバリ画面１５４０を生成し、自身をアクティブにするように表示操作制御部２０１に要求して、その画面を表示する。ここで、ユーザがエラーから復旧する操作を行い、ジョブを完了するか、或いは、ジョブの中止ボタン１５４１を選択すると、図１４（Ａ）のカスタムメニュー画面１４０１か、図１４（Ｂ）のコピー画面１４１０に遷移する。ここでいずれの画面に遷移するかは、図６（Ｂ）のカスタムメニュー画面４４０で行った設定、或いは、図１１（Ａ）の「カスタムメニューに登録：呼び出し時の設定」画面１１３０で行った設定で決定される。詳細な画面遷移先の決定方法については後述する。
【００７６】
またカスタムメニュー制御部２１２は、図１４（Ａ）のカスタムメニュー画面１４０１でカスタムボタン１４０３の押下を検知すると、送信制御部２１１に設定値を提供し、送信制御部２１１をアクティブにするように表示操作制御部２０１に要求する。これにより図１５（Ｂ）に示すような送信画面１５５０が表示部１１９に表示される。そして送信制御部２１１は、送信ジョブの開始要求に伴い、例えば図１５（Ｂ）に示すように、送信画面１５５０にジョブ実行ダイアログ１５６０を表示する。尚、送信ジョブは、大別すると、用紙の読み込み処理と、読み込んだデータの送信処理に分けて考えることができる。このため、用紙の読み込み処理が終わった段階では、ジョブは完了していないことになる。しかし、ユーザによっては用紙の読み込みが完了すれば送信完了と判断して、ＭＦＰ１０１から立ち去ることもあるし、送信処理完了まで見届けたいと考えることもある。このため、送信制御部２１１は、送信画面１５５０の上に、用紙の読み込み処理が終わった段階で、例えば図１６（Ａ）に示すように、確認ダイアログ１６７０を表示してジョブの状況を確認するかどうかを問い合わせる。尚、確認ダイアログ１６７０を表示するか、しないかは、送信制御部２１１の設定項目としてユーザが自由に変更できるようにしても良い。そして、送信制御部２１１が、ボタン１６７１が押下されてジョブの状況を確認することが選択されたと検知すると、ジョブ管理制御部２１４によって生成される画面をアクティブにするように表示操作制御部２０１に要求する。これにより、例えば図１６（Ｂ）に示す画面１６８０が表示部１１９に表示される。このとき、カスタムボタン１４０３には戻るアイコン４０８が付与されているが、ユーザが意図的に画面遷移を所望したことより、図１４（Ａ）のカスタムメニュー画面１４０１に戻ることはしない。
【００７７】
一方、送信制御部２１１は、図１６（Ａ）の画面で閉じるボタン１６７２により確認ダイアログ１６７０でジョブの状況を確認しないことが選択されたことを検知すると、カスタムメニュー制御部２１２をアクティブにするよう表示操作制御部２０１に要求する。これにより図１４（Ａ）に示すカスタムメニュー画面１４０１に遷移する。尚、以下では、機能に関わらず、図１４（Ｂ）のジョブ実行ダイアログ１４２０や図１５（Ｂ）のジョブ実行ダイアログ１５６０を総称した意味で表現する場合、ジョブ実行ダイアログ１４２０を用いる。
【００７８】
図１７は、実施形態１に係るＭＦＰ１０１がカスタムボタン４０５が押下されたことを検知して開始する処理を説明するフローチャートである。この処理はＣＰＵ１１１がＲＯＭ１１３、或いは外部メモリ１２０からＲＡＭ１１２に展開したプログラムを実行することにより実現されるため、ここではＣＰＵ１１１による処理として説明する。
【００７９】
まずＳ１７０１でＣＰＵ１１１は、押下されたカスタムボタン４０５に関する設定値をＤＢ２０６から取得し、そのボタンに対応する機能（コピー制御部２１０、送信制御部２１１など）に対して、取得した設定値を渡す。そしてＣＰＵ１１１は、その機能から設定値を反映した画面の生成完了通知を受けると、表示操作制御部２０１に、その機能をアクティブにするように要求する。これにより、その機能に対応するアプリケーションが起動される。次にＳ１７０２に進みＣＰＵ１１１は、その機能の取得した設定値から正常終了タグ８１１を参照し、カスタムメニュー制御部２１２を呼び出し元情報としてＤＢ２０６に登録する。次にＳ１７０３に進みＣＰＵ１１１は、取得した設定値の即スタートタグ８０３がＯＮかどうかを判定し、ＯＮであればＳ１７０４に進み、ジョブの実行を要求して、この処理を終了する。一方、即スタートタグ８０３がＯＦＦであれば、ジョブの実行を開始せずに、この処理を終了する。
【００８０】
図１８は、実施形態１に係るＭＦＰ１０１における各機能がジョブの実行の要求を受信したことで開始する処理を説明するフローチャートである。この処理はＣＰＵ１１１がＲＯＭ１１３、或いは外部メモリ１２０からＲＡＭ１１２に展開したプログラムを実行することにより実現されるため、ここではＣＰＵ１１１による処理として説明する。尚、ジョブの実行の要求は、図１７のＳ１７０４によるものや、タッチパネル１１８のスタートキー（不図示）の押下の検知に伴って、対応する機能が発行する。
【００８１】
先ずＳ１８０１でＣＰＵ１１１はジョブ管理制御部２１４として機能し、対応する機能のジョブＩＤを発行し、その発行したジョブＩＤと呼び出し元情報とを対応付けてＤＢ２０６に格納する。次にＳ１８０２に進みＣＰＵ１１１は、設定値に基づいてジョブを生成してジョブを実行する。次にＳ１８０３に進みＣＰＵ１１１は、例えば図１４（Ｂ）に示すようなジョブ実行ダイアログ１４２０を表示する。
【００８２】
次にＳ１８０４に進みＣＰＵ１１１は、そのジョブの状況をジョブ管理制御部２１４に問い合わせ、ジョブが実行中であれば、図１４（Ｂ）に示すジョブ実行ダイアログ１４２０の表示を更新してＳ１８０４に進む。またＳ１８０４でＣＰＵ１１１は、そのジョブの状況が正常終了となったと判定するとＳ１８０６に進み、ジョブ実行ダイアログ１４２０を閉じる。その後Ｓ１８０７に進みＣＰＵ１１１は、画面遷移制御処理を実行して、カスタムメニュー制御部２１２をアクティブにしてカスタムメニュー画面を表示するか、ジョブ実行ダイアログ１４２０を閉じて、今の機能に留まる。このＳ１８０７の画面遷移制御処理は、図１９のフローチャートを参照して後述する。尚、Ｓ１８０４において、ジョブの状況が正常終了や実行中以外、例えばエラーとなった場合は、後述するエラーリカバリ制御部２１５に制御が移るため、この処理を終了する。
【００８３】
図１９は、図１８のＳ１８０７の画面遷移制御処理の処理を説明するフローチャートである。
【００８４】
まずＳ１９０１でＣＰＵ１１１は、例えば図１６（Ａ）に示す確認ダイアログ１６７０を表示する必要があるかどうか判定する。尚、この判定は、前述したとおり、各機能が固有の設定値を持ってもよいし、ジョブの設定値を参考にして適応的に決定してもよい。そして、ＣＰＵ１１１が、ジョブの状況を確認する必要があると判定するとＳ１９０２に進み、表示部１１９に確認ダイアログ１６７０を表示する。そしてＳ１９０３に進みＣＰＵ１１１が、状況確認／中止へボタン１６７１或いは閉じるボタン１６７２の押下を検知して確認ダイアログ１６７０から画面が遷移するように選択されたと検知するとＳ１９０４に進む。Ｓ１９０４でＣＰＵ１１１は、選択されている機能をアクティブにするように表示操作制御部２０１に要求して、選択されている機能をアクティブにする。そしてＳ１９１２に進みＣＰＵ１１１は、図１７のＳ１７０２で設定されている呼び出し元情報をクリアして、この処理を終了する。
【００８５】
一方、Ｓ１９０１でＣＰＵ１１１は、確認ダイアログ１６７０を表示する必要がないと判定するとＳ１９０５に進み、選択されている機能がアクティブであるかどうかを表示操作制御部２０１に問い合わせて判定する。その問い合わせの結果、その機能がアクティブでないと判定すると、ユーザによる操作やシステムによって何らかの画面遷移が行われたと判定してＳ１９１２に進む。Ｓ１９１２でＣＰＵ１１１は、カスタムメニュー制御部２１２をアクティブにすることなく呼び出し元情報をクリアして、この処理を終了する。
【００８６】
一方Ｓ１９０５で、その機能がアクティブであると判定するとＳ１９０６に進み、図１７のＳ１７０２でＤＢ２０６に登録した呼び出し元情報を参照して、その設定値を確認する。そしてＣＰＵ１１１は、その呼び出し元情報にカスタムメニュー制御部２１２が設定されているかどうかを判定する。そうであればＳ１９０７に進み、カスタムメニュー制御部２１２に対して画面遷移の制御を委譲する。一方で、その呼び出し元情報にカスタムメニュー制御部２１２が設定されていなければ、カスタムメニュー制御部２１２をアクティブにすることなくＳ１９０６からＳ１９１２に進む。
【００８７】
Ｓ１９０７でＣＰＵ１１１は、図６（Ｂ）のボタンごとの画面遷移設定４４４の値がＯＮかどうか判定する。ここでＯＮであると判定するとＳ１９１０に進み、そのジョブに紐づく正常終了タグ８１１（図８）の値を確認する。Ｓ１９１０でＣＰＵ１１１は、正常終了タグ８１１が「カスタムメニューに戻る」に設定されているかどうか判定し、そうであればＳ１９１１に進んでカスタムメニュー制御部２１２をアクティブにするように表示操作制御部２０１に要求してＳ１９１２に進む。一方、正常終了タグ８１１が「カスタムメニューに戻る」に設定されていなければ、カスタムメニュー制御部２１２をアクティブにすることなくＳ１９１２へ処理を移す。
【００８８】
またＳ１９０７でＣＰＵ１１１は、図６（Ｂ）のボタンごとの画面遷移設定４４４がＯＦＦであれば、図６（Ｂ）の画面遷移デフォルト設定４４１に基づいた画面遷移を行うためにＳ１９０８に進み、その設定値を確認する。ここで画面遷移デフォルト設定値４４１が「カスタムメニューに戻る」６０１であった場合はＳ１９１１に処理を移し、「画面遷移しない」６０３であった場合はＳ１９１２に処理を移す。また、画面遷移デフォルト設定値４４１が「即スタート時のみ戻る」６０２であった場合はＳ１９０９に処理を移す。Ｓ１９０９でＣＰＵ１１１は、図８の即スタートタグ８０３の値を、呼び出し元の機能から通知してもらい。即スタートタグ８０３がＯＮかどうか判定する。ここでＯＮであると判定するとＳ１９１１に進み、ＯＦＦであると判定するとＳ１９１２へ処理を移す。
【００８９】
このように図１８及び図１９のフローチャートで詳述した手順により、ジョブの正常終了時に、メニュー画面に戻すか、或いは画面遷移をしないように制御できる。
【００９０】
図２０は、実施形態１に係るＭＦＰ１０１が、例えば図１４（Ｂ）のジョブ実行ダイアログ１４２０を表示しているときに何らかの入力を検知したことで開始する処理を説明するフローチャートである。この処理はＣＰＵ１１１がＲＯＭ１１３、或いは外部メモリ１２０からＲＡＭ１１２に展開したプログラムを実行することにより実現されるため、ここではＣＰＵ１１１による処理として説明する。
【００９１】
まずＳ２００１でＣＰＵ１１１は、ＤＢ２０６から呼び出し元情報を取得し、それにカスタムメニュー制御部２１２が設定されているか否かを判定する。ここで呼び出し元情報にカスタムメニュー制御部２１２が設定されていないと判定すると、画面遷移することなく、この処理を終了する。一方、Ｓ２００１で呼び出し元情報にカスタムメニュー制御部２１２が設定されていると判定するとＳ２００２に進みＣＰＵ１１１は、表示操作制御部２０１から通知された入力イベントの種類を確認する。ここで入力イベントの種類が、閉じるボタン１４２２の押下であった場合は正常終了と判断してＳ２００６に進み、カスタムメニュー制御部２１２をアクティブにするように表示操作制御部２０１に要求する。これにより、例えば図４（Ａ）のカスタムメニュー画面１４０１を表示部１１９に表示してＳ２００７に進む。
【００９２】
一方、入力イベントの種類が中止ボタン１４２１の押下と判定したときはＳ２００３に進みＣＰＵ１１１は、カスタムメニュー制御部２１２に対して、図６（Ｂ）のボタンごとの画面遷移設定４４４の設定値を問い合わせる。そしてＳ２００３でボタンごとの画面遷移設定４４４がＯＮかどうか判定し、そうであればＳ２００４に進みＣＰＵ１１１は、カスタムメニュー制御部２１２から渡された設定値のうち、図８のエラータグ８１２の設定値が「画面遷移しない」かどうか判定する。ここで「画面遷移しない」であると判定するとカスタムメニュー制御部２１２をアクティブにせずにＳ２００７に進むが、そうでないときはＳ２００６に進んで、カスタムメニュー画面１４０１に遷移してＳ２００７に進む。
【００９３】
またＳ２００３でＣＰＵ１１１は、ボタンごとの画面遷移設定４４４がＯＦＦと判定するとＳ２００５に進み、カスタムメニュー制御部２１２に対してジョブキャンセル時の画面遷移設定４４３（図６（Ｂ））の設定値を要求して、その値を確認する。Ｓ２００５でＣＰＵ１１１は、ジョブキャンセル時の画面遷移設定４４３が「画面遷移しない」であれば、カスタムメニュー制御部２１２をアクティブにせずにＳ２００７に進み、呼び出し元情報をクリアしてこの処理を終了する。一方、キャンセルタグ６１３の値が「画面遷移しない」でなければＳ２００６に進みＣＰＵ１１１は、カスタムメニュー制御部２１２をアクティブにしてカスタムメニュー画面１４０１を表示部１１９に表示する。そしてＳ２００７に進み、呼び出し元情報をクリアして、この処理を終了する。
【００９４】
以上説明した処理手順に基づいて、図１４（Ｂ）に示すジョブ実行ダイアログ１４２０に対する入力に伴う画面遷移が実現される。
【００９５】
図２１は、実施形態１に係るＭＦＰ１０１が、例えば図１５（Ａ）のエラーリカバリ画面１５４０を表示しているときに、ユーザ操作によるエラーの復旧或いはジョブの中止ボタン１５４１が指示されたときの処理を説明するフローチャートである。この処理はＣＰＵ１１１がＲＯＭ１１３、或いは外部メモリ１２０からＲＡＭ１１２に展開したプログラムを実行することにより実現されるため、ここではＣＰＵ１１１による処理として説明する。
【００９６】
ここでＣＰＵ１１１は、エラーリカバリ制御部２１５として機能し、先ずＳ２１０１でエラー発生中のジョブからジョブＩＤと機能タグ８０２（図８）を取得する。そしてエラー発生元の機能に対してジョブＩＤに紐づく呼び出し元情報を要求して取得する。次にＳ２１０２に進みＣＰＵ１１１は、その呼び出し元情報がカスタムメニュー制御部２１２かどうか判定する。カスタムメニュー制御部２１２でなければＳ２１０７に進みＣＰＵ１１１は、エラー発生元の機能をアクティブにするように表示操作制御部２０１に要求してＳ２１０８に進む。Ｓ２１０８でＣＰＵ１１１は、そのジョブのジョブＩＤと紐づけて管理している呼び出し元情報をクリアして、この処理を終了する。
【００９７】
一方、Ｓ２１０２でＣＰＵ１１１は、呼び出し元情報がカスタムメニュー制御部２１２であると判定するとＳ２１０３に進み、カスタムメニュー制御部２１２に対して、図６（Ｂ）のボタンごとの画面遷移設定４４４の設定値を要求する。そして、そのボタンごとの画面遷移設定４４４の設定がＯＮかどうか判定する。ここでボタンごとの画面遷移設定４４４がＯＮであると判定するとＳ２１０５に進みＣＰＵ１１１は、エラー発生中のジョブに紐づく図８のエラータグ８１２を参照して「画面遷移しない」が設定されているかどうか判定する。ここで「画面遷移しない」が設定されているときはＳ２１０７に進みＣＰＵ１１１は、エラー発生元の機能をアクティブにするように表示操作制御部２０１に要求してＳ２１０８に進む。
【００９８】
一方Ｓ２１０５でＣＰＵ１１１は、エラータグ８１２に「カスタムメニューに戻る」が設定されていると判定するとＳ２１０６に進み、カスタムメニュー制御部２１２をアクティブにするように表示操作制御部２０１に要求する。こうしてカスタムメニュー画面１４０１を表示部１１９に表示してＳ２１０８に進む。
【００９９】
またＳ２１０３でＣＰＵ１１１は、ボタンごとの画面遷移設定４４４がＯＦＦであると判定するとＳ２１０４に進み、カスタムメニュー制御部２１２に対してジョブエラー発生時の画面遷移設定４４２（図６（Ｂ））の設定値を要求して、その値を確認する。Ｓ２１０４でＣＰＵ１１１は、ジョブエラー発生時の画面遷移設定４４２が「画面遷移しない」であればＳ２１０７に進む。Ｓ２１０７でＣＰＵ１１１は、カスタムメニュー制御部２１２に戻ることなく、エラー発生元の機能をアクティブにするように表示操作制御部２０１に要求してＳ２１０８に進む。一方、Ｓ２１０４で「カスタムメニューに戻る」が設定されていると判定したときはＳ２１０６に進み、カスタムメニュー制御部２１２をアクティブにするように表示操作制御部２０１に要求してＳ２１０８に進む。
【０１００】
以上説明した処理手順に基づいて、エラーリカバリ制御部２１５に対する入力に伴う画面遷移が実現される。
【０１０１】
尚、このフローチャートは、ジョブ実行中のエラーからの復旧操作を起点に開始され、エラーから正常に復旧した場合やそのジョブを中止した場合も、ジョブエラー発生時の画面遷移設定４４２或いはエラータグ８１２を参照して、一律エラーと判断している。しかし、エラーが発生しても正常に復旧した場合には、エラーが発生していないとみなして、カスタムメニュー制御部２１２に戻るようにしてもかまわない。また、そのジョブの中止であった場合は、エラーではなくキャンセルとみなして、ジョブキャンセル時の画面遷移設定４４３或いはキャンセルタグ８１３を参照して画面遷移を制御しても良い。
【０１０２】
図２２は、実施形態１に係るＭＦＰ１０１において、表示操作制御部２０１や認証制御部２０２からの所定の通知を受けた時に開始される処理を説明するフローチャートである。ここで、所定の通知を受けるタイミングは、例えば、表示操作制御部２０１自身がアクティブでなくなったとき、或いは、認証制御部２０２からログアウトが通知されたときなどが挙げられる。この処理はＣＰＵ１１１がＲＯＭ１１３、或いは外部メモリ１２０からＲＡＭ１１２に展開したプログラムを実行することにより実現されるため、ここではＣＰＵ１１１による処理として説明する。
【０１０３】
まずＳ２２０１でＣＰＵ１１１は、所定の通知を受けると、その通知の種類が画面遷移に基づくものかどうかを判定する。ここで通知の種類がログアウトなどの画面遷移以外であると判定するとＳ２２０３に進み、呼び出し元情報をクリアして、この処理を終了する。これにより、認証制御部２０２によって生成される認証画面（不図示）の表示中に、不用意にカスタムメニュー制御部２１２をアクティブにしてメニュー画面に遷移するのを防止している。
【０１０４】
一方、Ｓ２２０１で画面遷移に基づくものであると判定するとＳ２２０２に進みＣＰＵ１１１は、ジョブを実行中かどうか判定する。ここでジョブが実行中でないと判定するとＳ２２０３に進みＣＰＵ１１１は、呼び出し元情報をクリアして、この処理を終了する。またＳ２２０２でＣＰＵ１１１は、ジョブの実行中であると判定すると、呼び出し元情報をクリアせずに、この処理を終了する。
【０１０５】
これは、ユーザが、例えばコピー制御部２１０のカスタムボタン１４０２（図１４（Ａ））を押下してコピージョブを開始し、ジョブ実行ダイアログ１４２０が表示されている。その時に例えば図１６（Ｂ）の状況確認画面１６８０に遷移して、そのコピージョブの状況を確認する場合を想定している。そして、その後に状況確認画面１６８０からコピー制御部２１０に戻り、ジョブが依然として実行中であれば、図１４（Ｂ）のジョブ実行ダイアログ１４２０が表示され続けた状態となる。そしてこの後、このコピージョブが正常終了すれば、図１８のフローチャートを参照して説明したＳ１８０６以降の処理が行われてカスタムメニュー制御部２１２に戻る。つまり、図１４（Ａ）のカスタムボタン１４０２の押下に伴うジョブの実行中に、他の画面に遷移して、再度、その機能に戻ってきた場合には、カスタムメニュー制御部２１２に戻ることを実現している。但し、このような制御をすることなく、何らかの画面遷移が行われた場合には、一律に、カスタムメニュー制御部２１２に戻らないとしても良い。その場合は、所定の通知が来たら呼び出し元情報を必ずクリアすればよい。
【０１０６】
以上説明した処理手順に基づき、呼び出し元情報を制御することで、カスタムメニュー制御部２１２を適切にアクティブにする、或いは、アクティブにしない、即ち、カスタムメニュー画面に戻るか、或いは戻らないような制御を実現している。
【０１０７】
以上説明したように実施形態１によれば、画像形成装置に登録されているカスタムボタンの押下に伴い、所望の機能に画面遷移した後、開始されたジョブが正常に終了した場合に、自動的にカスタムメニュー画面に遷移できる。このため、ユーザが定型業務を複数のカスタムボタンに登録し、複数のボタンを連続して押下する場合に、一々、カスタムメニュー画面に戻す操作が不要となり、業務の効率化が期待できる。
【０１０８】
また実施形態１によれば、カスタムボタンを押下する度に、必ずカスタムメニュー画面に自動的に遷移するようにできる。
【０１０９】
またユーザがカスタムボタンを押下した後、そのカスタムボタンの設定が反映されたコピー画面で、ちょっとした設定の変更を行いたい場合でもカスタムメニュー画面に戻ってしまう。この場合は、最初から設定値を入力し直してカスタムボタンを作り直す必要があり、ユーザの手間が増えてしまい使い勝手の悪いものになってしまう。そこで実施形態１では、カスタムボタンごとに、カスタムメニュー画面に戻るか、或いは戻らないように設定できる。これにより、ユーザがカスタムボタンを押下して所望の機能の画面に遷移し、そのジョブを実行した後に、カスタムメニュー画面に戻らずに、引き続き表示中の機能の設定を変更して、別のジョブを、その設定値に従って実行させることもできる。
【０１１０】
また実施形態１では、ユーザがカスタムボタンを押下すると、即座にジョブが開始される場合に限定して、自動的にカスタムメニュー画面に戻るように設定できる。これにより、カスタムボタンごとに画面遷移を設定する手間を省くことができる。
【０１１１】
また実施形態１では、自動的にカスタムメニュー画面に戻るように設定されているカスタムボタンに戻るアイコン４０８を付加して表示している。これによりユーザは、そのカスタムボタンによりジョブを実行した後、カスタムメニュー画面に戻るかどうか、一目で判断できる。このため、カスタムボタンの押下に伴う画面遷移が、ユーザにとって意図した通りのものかどうか事前に判別できるため、ユーザにとって操作性が向上する。
【０１１２】
また実施形態１では、カスタムボタンの押下に伴って開始されたジョブがエラーにより、或いはキャンセルされて中断したときにも、カスタムメニュー画面に戻すか、或いは戻さないようにも設定できる。これにより、エラーが発生した時に、自動的にカスタムメニュー画面に戻ってしまうことで、どの機能でエラーが発生したかを特定できないといった事態を防止できる。
【０１１３】
一方、一般的に発生しやすいエラーである用紙切れやトナー切れなどは、用紙やトナーを補充すれば正常にジョブを終了できるため、カスタムメニュー画面に戻るという運用も可能となる。また例えば、カスタムボタンに紐づく印刷ジョブの実行中に、印刷部数を変更するために、実行中のジョブをキャンセルしたときにカスタムメニュー画面に戻らないにすることで、継続して設定を変更し、そのままジョブを実行できるようになる。
【０１１４】
尚、実施形態１では、カスタムメニュー画面のカスタムボタンの押下から開始される画面遷移について説明した。しかし、例えば図３（Ａ）に示すメインメニュー画面３０１のアプリボタン３３０やアプリボタン３３１の押下から開始される画面遷移にも適用可能であることに注意されたい。
【０１１５】
以上説明したように実施形態１によれば、カスタムボタンを使用して業務の効率化を図っているユーザが抱える課題である、カスタムボタンに伴うジョブの完了後に、一々メニュー画面に遷移する操作を行わなければならないといった課題を解決できる。即ち、実施形態１では、カスタムボタンを押下して所望の機能に画面遷移した後、そのボタンに係るジョブが正常に終了した場合に、カスタムメニュー画面に自動的に戻ることを実現している。
【０１１６】
一方、ユーザがカスタムボタンを押下することにより開始されたジョブの実行中に、ユーザが画面遷移を伴う操作をした場合は、そのジョブの実行完了までに遷移前の画面に戻ることがなければカスタムメニュー画面に戻らないようにしている。これにより、ユーザが他の機能を使うために画面遷移を行った場合や、画像形成装置の諸設定を変更するために設定画面を開いた場合等は、カスタムメニュー画面に遷移することで操作の妨げになることを抑止している。
【０１１７】
こうして実施形態１によれば、カスタムボタンに紐づいた処理の実行後に、自動的にカスタムメニュー画面に戻すことでユーザの操作性を改善できる。そして、ユーザがカスタムメニュー画面に戻したくない場合は、カスタムボタンにそのような画面遷移設定を行うことにより、自動的にカスタムメニュー画面に戻らないようにできる。
【０１１８】
［実施形態２］
次に本発明の実施形態２を説明する。実施形態２では、ジョブが正常終了した時の画面遷移を、機能ではなく表示操作制御部２０１が行う処理で説明する。尚、実施形態２に係るＭＦＰの構成は、前述の実施形態１と同様であるため、その説明を省略する。具体的には、図１〜図１７及び図１９〜図２２を参照して説明したハードウェア及びソフトウエア構成及びフローチャート及び動作シーケンスは、前述の実施形態１と共通である。実施形態２では、ジョブの実行開始要求に伴う処理と、ジョブの状態遷移に基づいた表示操作制御部２０１による画面遷移処理が追加される。
【０１１９】
図２３は、本発明の実施形態２に係るＭＦＰ１０１がジョブの実行の要求を受信したことで開始する処理を説明するフローチャートである。この処理はＣＰＵ１１１がＲＯＭ１１３、或いは外部メモリ１２０からＲＡＭ１１２に展開したプログラムを実行することにより実現されるため、ここではＣＰＵ１１１による処理として説明する。
【０１２０】
図２３のフローチャートは、前述の実施形態１に係る図１８のフローチャートに対応しており、Ｓ２３０１〜Ｓ２３０２，Ｓ２３０４〜Ｓ２３０７は、前述の図１８のＳ１８０１〜Ｓ１８０６に対応している。従って、図２３ではＳ２３０３が追加され、図１８のＳ１８０７がなくなっている。
【０１２１】
Ｓ２３０３でＣＰＵ１１１は、Ｓ２３０１で発行されたジョブＩＤと正常終了タグ８１１（図８）とを組み合わせて、表示操作制御部２０１に登録要求を行う。そして表示操作制御部２０１は、その要求に基づきＤＢ２０６に登録する。
【０１２２】
図２４は、実施形態２に係るＭＦＰ１０１がジョブの状態変化に伴って実行する処理を説明するフローチャートである。この処理はＣＰＵ１１１がＲＯＭ１１３、或いは外部メモリ１２０からＲＡＭ１１２に展開したプログラムを実行することにより実現されるため、ここではＣＰＵ１１１による処理として説明する。
【０１２３】
先ずＳ２４０１でＣＰＵ１１１は表示操作制御部２０１として機能し、ジョブ管理制御部２１４から通知されたジョブの状態が正常終了かどうかを判定する。ここで正常終了でないと判定すると、この処理を終了する。一方Ｓ２４０１で、ジョブの状態が正常終了であると判定するとＳ２４０２に処理を進める。Ｓ２４０２でＣＰＵ１１１は、そのジョブのＩＤに対応する正常終了タグ８１１があるか否か判定する。ここで正常終了タグ８１１がなければ、この処理を終了する。Ｓ２４０２で正常終了タグ８１１があると判定するとＳ２４０３に進みＣＰＵ１１１は、そのジョブから発行元の機能を取得し、その機能がアクティブかどうかを判定する。ここでアクティブでないと判定すると、この処理を終了する。一方、アクティブであると判定するとＳ２４０４に進みＣＰＵ１１１は、その正常終了タグ８１１に登録されている情報を基に、所定の機能をアクティブにする。
【０１２４】
実施形態２では、このときカスタムメニュー画面に遷移させるためにカスタムメニュー制御部２１２をアクティブにすることになるが、メインメニュー制御部２１３を指定する、或いは異なるメニュー機能を指定することもできる。
【０１２５】
以上説明したように実施形態２によれば、画像形成装置に登録されているカスタムボタンの押下に伴い、所望の機能に画面が遷移した後、開始されたジョブが正常に終了すると、自動的にカスタムメニュー画面に遷移させることができる。但し、実施形態２では実施形態１と異なり、表示操作制御部２０１がジョブの状態変化に伴い、適応的に所望の機能をアクティブにしている。これにより、機能ごとにジョブの正常終了時の画面遷移制御を実装する必要がなくなる。このため、カスタムメニュー制御部２１２と連携した機能は、ジョブの状態変化に連動して、自動的にカスタムメニュー画面に遷移できる。
【０１２６】
このようにしてＭＦＰが提供する操作性を一貫したものにできるため、ユーザの利便性を向上できる。
【０１２７】
［実施形態３］
実施形態３では、実施形態１で説明した、例えば図６（Ｂ）や図１１（Ａ）の画面を介した画面設定を行わない場合で説明する。尚、実施形態３に係るＭＦＰの構成は、前述の実施形態１と同様であるため、その説明を省略する。
【０１２８】
図２５は、実施形態３に係る図１８のＳ１８０７の画面遷移制御処理の処理を説明するフローチャートである。尚、図２５は前述の図１９のフローチャートからＳ１９０７〜Ｓ１９１０の判定処理を除いたものであるため、図１９と同じ処理は同じ符号で示し、それらの説明を省略する。
【０１２９】
図２５では、Ｓ１９０６でＣＰＵ１１１が呼び出し元がカスタムメニュー制御部２１２であると判定した場合はＳ１９１１に進み、機能画面（例えばコピーアプリの画面）からカスタムメニュー画面に遷移する。一方、Ｓ１９０６で、呼び出し元がカスタムメニュー制御部２１２でないと判定した場合、即ち、メインメニュー画面から機能が呼び出された場合などは、画面の遷移を行わずに機能画面に留まる。
【０１３０】
図２６は、実施形態３に係るＭＦＰ１０１が、例えば図１４（Ｂ）のジョブ実行ダイアログ１４２０を表示しているときに何らかの入力を検知したことで開始する処理を説明するフローチャートである。尚、図２６は前述の図２０のフローチャートからＳ２００３〜Ｓ２００５の判定処理を除いたものであるため、図２０と共通する処理は同じ符号で示し、それらの説明を省略する。
【０１３１】
図２６では、Ｓ２００２でＣＰＵ１１１は、表示操作制御部２０１から通知された入力イベントの種類を確認する。ここで入力イベントの種類が、閉じるボタン１４２２の押下であった場合は正常終了と判断してＳ２００６に進み、カスタムメニュー制御部２１２をアクティブにするように表示操作制御部２０１に要求する。これにより、例えば図４（Ａ）のカスタムメニュー画面１４０１を表示部１１９に表示してＳ２００７に進む。
【０１３２】
一方、入力イベントの種類が中止ボタン１４２１の押下と判定したときは、画面の遷移を行うことなくＳ２００７に進んで機能画面に留まる。
【０１３３】
図２７は、実施形態３に係るＭＦＰ１０１が、例えば図１５（Ａ）のエラーリカバリ画面１５４０を表示しているときに、ユーザ操作によるエラーの復旧或いはジョブの中止ボタン１５４１が指示されたときの処理を説明するフローチャートである。尚、図２７は前述の図２１のフローチャートからＳ２１０３〜Ｓ２１０５の判定処理を除いたものであるため、図２１と共通する処理は同じ符号で示し、それらの説明を省略する。
【０１３４】
Ｓ２１０２でＣＰＵ１１１は、その呼び出し元情報がカスタムメニュー制御部２１２かどうか判定する。カスタムメニュー制御部２１２でなければＳ２１０７に進みＣＰＵ１１１は、エラー発生元の機能をアクティブにするように表示操作制御部２０１に要求してＳ２１０８に進む。
【０１３５】
一方、Ｓ２１０２でＣＰＵ１１１は、呼び出し元情報がカスタムメニュー制御部２１２であると判定するとＳ２１０６に進み、カスタムメニュー制御部２１２をアクティブにするように表示操作制御部２０１に要求してカスタムメニュー画面を表示してＳ２１０８に進む。
【０１３６】
このように実施形態３によれば、ジョブが正常に終了した場合に呼び出し元がカスタムメニューであれば元のメニュー画面に戻り、そうでないときは機能画面にとどまるようにできる。よって、カスタムボタンを使用して業務の効率化を図っているユーザが抱える課題である、カスタムボタンに伴うジョブの完了後に、一々メニュー画面に遷移する操作を行わなければならないといった課題を解決できる。また、ユーザがカスタムボタンを押下することにより開始されたジョブの実行中に、ユーザが画面遷移を伴う操作をした場合は、そのジョブの実行完了までに遷移前の画面に戻ることがなければカスタムメニュー画面に戻らないようにしている。これにより、ユーザが他の機能を使うために画面遷移を行った場合や、画像形成装置の諸設定を変更するために設定画面を開いた場合等は、カスタムメニュー画面に遷移することで却って操作の妨げになるのを抑止できる。
【０１３７】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【０１３８】
本発明は上記実施形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。
【符号の説明】
【０１３９】
１１１…ＣＰＵ、１１２…ＲＡＭ、１１３…ＲＯＭ、１１８…タッチパネル、１１９…表示部、２０１…表示操作制御部、２１２…カスタムメニュー制御部、４０１…カスタムメニュー画面、４０５…カスタムボタン
【図１】
0006560573.tif 000002
【図２】
0006560573.tif 000003
【図３】
0006560573.tif 000004
【図４】
0006560573.tif 000005
【図５】
0006560573.tif 000006
【図６】
0006560573.tif 000007
【図７】
0006560573.tif 000008
【図８】
0006560573.tif 000009
【図９】
0006560573.tif 000010
【図１０】
0006560573.tif 000011
【図１１】
0006560573.tif 000012
【図１２】
0006560573.tif 000013
【図１３】
0006560573.tif 000014
【図１４】
0006560573.tif 000015
【図１５】
0006560573.tif 000016
【図１６】
0006560573.tif 000017
【図１７】
0006560573.tif 000018
【図１８】
0006560573.tif 000019
【図１９】
0006560573.tif 000020
【図２０】
0006560573.tif 000021
【図２１】
0006560573.tif 000022
【図２２】
0006560573.tif 000023
【図２３】
0006560573.tif 000024
【図２４】
0006560573.tif 000025
【図２５】
0006560573.tif 000026
【図２６】
0006560573.tif 000027
【図２７】
0006560573.tif 000028