(57)【要約】      （修正有）【課題】複数のＵＩ環境を提供するＯＳであっても、周辺装置の利用に際したメッセージの表示制御に関して、操作性の良い仕組みを提供する。【解決手段】第１のユーザーインターフェース（ＵＩ）環境と、前記第１のＵＩ環境とは異なる第２のＵＩ環境を提供可能な情報処理装置であって、メッセージ画面を提示するＵＩ環境を判定する判定手段と、アプリケーションを介した周辺装置への処理要求が行われた際に、ユーザーへのメッセージ画面の提示が必要となる場合に、該メッセージ画面を提示するための要求を制御する制御手段と、を有し、前記処理要求が前記アプリケーションを介して入力された後に、前記制御手段による要求に従い、前記判定手段により判定されたＵＩ環境に対するメッセージ画面が表示される。【選択図】図７
2014186486.tif 000002
【特許請求の範囲】
【請求項１】
第１のユーザーインターフェース（ＵＩ）環境と、前記第１のＵＩ環境とは異なる第２のＵＩ環境を提供可能な情報処理装置であって、
メッセージ画面を提示するＵＩ環境を判定する判定手段と、
アプリケーションを介した周辺装置への処理要求が行われた際に、ユーザーへのメッセージ画面の提示が必要となる場合に、該メッセージ画面を提示するための要求を制御する制御手段と、を有し、
前記処理要求が前記アプリケーションを介して入力された後に、前記制御手段による要求に従い、前記判定手段により判定されたＵＩ環境に対するメッセージ画面が表示され、
前記メッセージ画面の１つとして、前記周辺装置で必要となる所定の操作に関する内容を含むメッセージ画面が含まれることを特徴とする情報処理装置。
【請求項２】
前記周辺装置で必要となる所定の操作に関する内容を含むメッセージ画面は、封筒印刷を行う際のユーザーへのガイド、ディスク面に印刷を行う際のディスクをプリンタにセットする手順を説明するガイド、及びカセットへの用紙のセット方法を説明するガイドの少なくとも何れかの表示が含まれることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
さらに、前記メッセージ画面の１つとして、前記周辺装置に対応するデバイスドライバでの処理の過程で検出された内容を通知するためのメッセージ画面が含まれることを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記判定手段により判定されたＵＩ環境とは、前記情報処理装置の表示部で現在提供されているＵＩ環境であることを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記判定手段により判定されたＵＩ環境とは、前記アプリケーションが動作しているＵＩ環境であることを特徴とする請求項１乃至３のいずれか１項に情報処理装置。
【請求項６】
前記制御手段は、前記処理要求に対応する設定に、前記周辺装置において所定の操作が必要になる設定が含まれていることに応じて、前記メッセージ画面を提示するための要求を行うことを特徴とする請求項１乃至５のいずれか１項に情報処理装置。
【請求項７】
前記制御手段による要求に基づき前記情報処理装置で動作するオペレーティングシステムが提供する通知画面が提示され、当該通知画面に対するユーザーの入力に従い、前記第１のＵＩ環境及び前記第２のＵＩ環境のいずれかで動作するプログラムにより前記メッセージ画面の提示が行われることを特徴とする請求項１乃至６のいずれか１項に情報処理装置。
【請求項８】
メッセージ画面の提示を行うか否かを示す情報を所定のストレージに記憶する記憶手段をさらに有し、
前記制御手段は、前記ストレージに記憶されたメッセージ画面の提示を行うか否かを示す情報に従い前記メッセージ画面を提示するための要求を制御することを特徴とする請求項１乃至７のいずれか１項に記載の情報処理装置。
【請求項９】
前記所定のストレージは、前記第１のＵＩ環境及び前記第２のＵＩ環境のそれぞれで動作するプログラムからも参照可能な領域であることを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記第１のＵＩ環境は、前記第２のＵＩ環境よりも、タッチパネルでの操作に適したＵＩ環境であることを特徴とする請求項１乃至９のいずれか１項に情報処理装置。
【請求項１１】
第１のユーザーインターフェース（ＵＩ）環境と、前記第１のＵＩ環境とは異なる第２のＵＩ環境を提供可能な情報処理装置であって、
メッセージ画面を提示するＵＩ環境を判定する判定手段と、
アプリケーションを介した周辺装置への処理要求が行われた際に、ユーザーへのメッセージ画面の提示が必要となる場合に、該メッセージ画面を提示するための要求を制御する制御手段と、を有し、
前記処理要求が前記アプリケーションを介して入力された後に、前記制御手段による要求に従い、前記判定手段により判定されたＵＩ環境に対するメッセージ画面が表示され、
前記メッセージ画面の１つとして、前記周辺装置に対応するデバイスドライバでの処理の過程で検出された内容を通知するためのメッセージ画面が含まれることを特徴とする情報処理装置。
【請求項１２】
第１のユーザーインターフェース（ＵＩ）環境と、前記第１のＵＩ環境とは異なる第２のＵＩ環境を提供可能な情報処理装置であって、
メッセージ画面を提示するＵＩ環境を判定する判定手段と、
アプリケーションを介した周辺装置への処理要求が行われた際に、ユーザーへのメッセージ画面の提示が必要となる場合に、該メッセージ画面を提示するための要求を制御する制御手段と、
メッセージ画面の提示を行うか否かを示す情報を所定のストレージに記憶する記憶手段と、を有し、
前記制御手段は、前記ストレージに記憶されたメッセージ画面の提示を行うか否かを示す情報に従い前記メッセージ画面を提示するための要求を制御し、
前記所定のストレージは、前記第１のＵＩ環境及び前記第２のＵＩ環境のそれぞれで動作するプログラムからも参照可能な領域であることを特徴とする情報処理装置。
【請求項１３】
前記メッセージ画面としては、前記周辺装置で必要となる所定の操作に関する内容を含むメッセージ画面、及び前記周辺装置に対応するデバイスドライバでの処理の過程で検出された内容を通知するためのメッセージ画面の少なくともいずれかが含まれることを特徴とする請求項１２に記載の情報処理装置。
【請求項１４】
前記判定手段により判定されたＵＩ環境とは、前記情報処理装置の表示部で現在提供されているＵＩ環境であることを特徴とする請求項１２または１３に記載の情報処理装置。
【請求項１５】
前記判定手段により判定されたＵＩ環境とは、前記アプリケーションが動作しているＵＩ環境であることを特徴とする請求項１２または１３に情報処理装置。
【請求項１６】
前記制御手段による要求に基づき前記情報処理装置で動作するオペレーティングシステムが提供する通知画面が提示され、当該通知画面に対するユーザーの入力に従い、前記第１のＵＩ環境及び前記第２のＵＩ環境のいずれかで動作するプログラムにより前記メッセージ画面の提示が行われることを特徴とする請求項１２乃至１５のいずれか１項に情報処理装置。
【請求項１７】
前記第１のＵＩ環境は、前記第２のＵＩ環境よりも、タッチパネルでの操作に適したＵＩ環境であることを特徴とする請求項１２乃至１６のいずれか１項に情報処理装置。
【請求項１８】
第１のユーザーインターフェース（ＵＩ）環境と、前記第１のＵＩ環境とは異なる第２のＵＩ環境を提供可能な情報処理装置における方法であって、
メッセージ画面を提示するＵＩ環境を判定する判定工程と、
アプリケーションを介した周辺装置への処理要求が行われた際に、ユーザーへのメッセージ画面の提示が必要となる場合に、該メッセージ画面を提示するための要求を制御する制御工程と、を有し、
前記処理要求が前記アプリケーションを介して入力された後に、前記制御工程での要求に従い、前記判定工程で判定されたＵＩ環境に対するメッセージ画面が表示され、
前記メッセージ画面の１つとして、前記周辺装置で必要となる所定の操作に関する内容を含むメッセージ画面が含まれることを特徴とする方法。
【請求項１９】
第１のユーザーインターフェース（ＵＩ）環境と、前記第１のＵＩ環境とは異なる第２のＵＩ環境を提供可能な情報処理装置における方法であって、
メッセージ画面を提示するＵＩ環境を判定する判定工程と、
アプリケーションを介した周辺装置への処理要求が行われた際に、ユーザーへのメッセージ画面の提示が必要となる場合に、該メッセージ画面を提示するための要求を制御する制御工程と、を有し、
前記処理要求が前記アプリケーションを介して入力された後に、前記制御工程での要求に従い、前記判定工程で判定されたＵＩ環境に対するメッセージ画面が表示され、
前記メッセージ画面の１つとして、前記周辺装置に対応するデバイスドライバでの処理の過程で検出された内容を通知するためのメッセージ画面が含まれることを特徴とする方法。
【請求項２０】
第１のユーザーインターフェース（ＵＩ）環境と、前記第１のＵＩ環境とは異なる第２のＵＩ環境を提供可能な情報処理装置における方法であって、
メッセージ画面を提示するＵＩ環境を判定する判定工程と、
アプリケーションを介した周辺装置への処理要求が行われた際に、ユーザーへのメッセージ画面の提示が必要となる場合に、該メッセージ画面を提示するための要求を制御する制御工程と、
メッセージ画面の提示を行うか否かを示す情報を所定のストレージに記憶する記憶工程と、を有し、
前記制御工程では、前記ストレージに記憶されたメッセージ画面の提示を行うか否かを示す情報に従い前記メッセージ画面を提示するための要求の制御が行われ、
前記所定のストレージは、前記第１のＵＩ環境及び前記第２のＵＩ環境のそれぞれで動作するプログラムからも参照可能な領域であることを特徴とする方法。
【請求項２１】
請求項１乃至１０のいずれか１項に記載の手段としてコンピュータを機能させるためのプログラム。
【請求項２２】
請求項１１に記載の手段としてコンピュータを機能させるためのプログラム。
【請求項２３】
請求項１２に記載の手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷時のメッセージ表示制御のための技術に関するものである。
【背景技術】
【０００２】
従来から、印刷開始時にその印刷を行う為の適切なガイドをユーザーに表示する技術がある。プリンタドライバのランゲージモニタが、印刷開始時に印刷データの内容を解析し、ユーザーにガイドを表示する必要があると判断した場合には、ステータスモニタを介してガイドメッセージを表示する（たとえば、特許文献１参照）。ガイドメッセージの例として、封筒に印刷する時に、封筒をプリンタにセットする方向を案内するメッセージがある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−３０５１４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、オペレーティングシステム（ＯＳ）の中には、異なる操作性を備える２つのユーザーインターフェース（ＵＩ）環境を提供可能なＯＳも存在する。このような複数のＵＩ環境を提供するＯＳの中で、ユーザーは、印刷など周辺装置の利用に際して、いずれかの環境で動作する所望のアプリケーションを利用する。その結果、特許文献１に記載の技術では、印刷時に表示すべきガイドメッセージが、ユーザーが意図しないＵＩ環境に対して提供される可能性があり、ユーザーの操作性が低下する可能性があった。
【０００５】
また、ガイドメッセージを不要とする操作の熟練したユーザーも存在するので、ガイドメッセージを非表示設定にするなど、柔軟な表示制御が行えることが好ましいといえる。このような場合、複数のＵＩ環境を提供するＯＳにおいては、いずれの環境においても、同様な表示制御がなされるように設定を管理するなどの手法を提供する必要がある。
【０００６】
そこで、本発明は、複数のＵＩ環境を提供するＯＳであっても、周辺装置の利用に際したメッセージの表示制御に関して、操作性の良い仕組みを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した少なくとも何れかの課題を解決するための本発明の情報処理装置は、例えば、第１のユーザーインターフェース（ＵＩ）環境と、前記第１のＵＩ環境とは異なる第２のＵＩ環境を提供可能な情報処理装置であって、メッセージ画面を提示するＵＩ環境を判定する判定手段と、アプリケーションを介した周辺装置への処理要求が行われた際に、ユーザーへのメッセージ画面の提示が必要となる場合に、該メッセージ画面を提示するための要求を制御する制御手段と、を有し、前記処理要求が前記アプリケーションを介して入力された後に、前記制御手段による要求に従い、前記判定手段により判定されたＵＩ環境に対するメッセージ画面が表示され、前記メッセージ画面の１つとして、前記周辺装置で必要となる所定の操作に関する内容を含むメッセージ画面が含まれることを特徴とする。
【発明の効果】
【０００８】
本発明により、複数のＵＩ環境を提供するＯＳであっても、周辺装置の利用に際したメッセージの表示制御に関して、操作性の良い仕組みを提供できる。
【図面の簡単な説明】
【０００９】
【図１】ネットワークに接続された情報処理装置と周辺装置のハードウェア構成の例を示す図である
【図２】情報処理装置のソフトウェアのモジュール構成の例を示す図である
【図３】デスクトップＵＩ環境の画面の具体例を示す図である
【図４】タッチパネルＵＩ環境の画面の具体例を示す図である
【図５】印刷に関する情報５０００の例を示す図である
【図６】本発明における各モジュールの処理のシーケンスを説明するための図である
【図７】実施例１のメッセージ画面を表示する際の処理を説明するためのフローチャートである
【図８】実施例２のメッセージ画面を表示する際の処理を説明するためのフローチャートである
【図９】実施例２のデスクトップＵＩ環境への表示制御処理を説明するためのフローチャートである
【図１０】実施例２のタッチパネルＵＩ環境への表示制御処理を説明するためのフローチャートである
【図１１】実施例３のメッセージ画面を表示する際の処理を説明するためのフローチャートである
【図１２】実施例４に係る情報処理装置のソフトウェアのモジュール構成の例を示す図である
【図１３】実施例４のグラフィックスドライバ２２０２の処理を説明するためのフローチャートである
【図１４】実施例４の各ＵＩ環境での表示制御の処理を説明するためのフローチャートである
【図１５】実施例４のメッセージ画面を表示する際の処理を説明するためのフローチャートである
【図１６】実施例４の各ＵＩ環境での表示制御の処理を説明するためのフローチャートである
【図１７】実施例５の各ＵＩ環境の表示部がメッセージ画面の表示要求を受けた際の処理を説明するためのフローチャートである
【図１８】実施例５のメッセージ画面を表示する際の処理を説明するためのフローチャートを示す
【図１９】実施例６のデスクトップＵＩ環境への表示制御処理を説明するためのフローチャートである
【図２０】実施例６のタッチパネルＵＩ環境への表示制御処理を説明するためのフローチャートである
【図２１】実施例７のメッセージ画面を表示する際の処理を説明するためのフローチャートである
【発明を実施するための形態】
【００１０】
以下、図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、それぞれの本実施の形態で説明されている特徴、またそれらを適宜組み合わせることで、本発明が実現されてもよい。
【００１１】
また、以降では、情報処理装置のアプリケーションにより提供される印刷用ダイアログを使ってユーザーが印刷実行を指示する操作を、単に印刷指示と記載することもある。また、アプリケーションのことを単にアプリと記載することもある。
【００１２】
＜実施例１＞
図１に、本発明に係るシステムに含まれる情報処理装置と周辺装置と、そのハードウェア構成の例を示す。
【００１３】
図１において、１００は情報処理装置であり、一般的なＰＣで構成される。情報処理装置１００はＲＡＭ１０１、外部記憶装置１０２、マウスやキーボード等の入力装置１０３、ＣＰＵ１０４、ネットワークボード１０５、表示用タッチパネルディスプレイ１０６、インターフェース部１０８、以上の構成要素を互いに接続するバス１０７から構成される。
【００１４】
ＲＡＭ１０１は外部記憶装置１０２に保存される各種プログラムがワークメモリとして使用する。外部記憶装置１０２にはアプリケーションプログラム群とオペレーティングシステム（ＯＳ）、プリンタドライバなどのデバイスドライバやその他各種のデータが保存されている。入力装置１０３はデータ入力あるいは動作指示に使用される。表示用タッチパネルディスプレイ１０６は接続されるプリンタ又は情報処理装置のデータ表示や状態の通知や画面への入力に使用される。本願では表示用タッチパネルディスプレイ１０６はタッチディスプレイとして説明するが、タッチ操作に非対応のディスプレイでも本願の処理を実現できる。ネットワークボード１０５はネットワークを介する通信を行い、ネットワーク１０９と接続されている。なお、通信経路は有線／無線のネットワークだけでなく、後述するインターフェース部１０８によるＵＳＢや赤外線の通信であってもよい。また、ＣＰＵ１０４は、表示用タッチパネルディスプレイ１０６上に表示されたＧＵＩのマウスカーソルや、キーボードのキー入力や、表示用タッチパネルディスプレイ１０６からのタッチ入力により、外部記憶装置１０２のプログラムのウィンドウを開き、種々のデータ処理を実行する。これにより、ユーザーは印刷を実行する際、印刷の設定に関するウィンドウを開き、プリンタ１１０の設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行える。加えて、ＣＰＵ１０４が外部記憶装置１０２に記憶されているプログラムに基づき処理を実行することによって、図２に示されるような情報処理装置１００のソフトウェア構成及び後述するフローチャートの各ステップの処理が実現される。
【００１５】
周辺装置の一例であるプリンタ１１０は、ネットワークボード１１１、ＲＡＭ１１２、ＲＯＭ１１３、ＣＰＵ１１４、印刷エンジン１１５を有する。また、以上の構成要素を互いに接続するバス１１６を有する。ネットワークボード１１１はネットワーク１０９に接続してある。ＲＯＭ１１３には制御プログラムなどが格納されている。ＣＰＵ１１４はＲＯＭ１１３に格納してある制御プログラムに従ってプリンタ１１０を制御する。ＲＡＭ１１２はＣＰＵ１１４のワークメモリとして使用され、受信したデータをいったん保存する受信バッファとしても用いられる。印刷エンジン１１５はＲＡＭ１１２に保存されたデータを印刷する。
【００１６】
本発明は周辺装置を制御し、ユーザーに対してダイアログなどを提供するプログラムの例としてデバイスドライバを上げている。しかしながら、デバイスドライバに限らず、ＯＳに準拠した周辺装置を制御するために設計され、デバイスドライバと同様の機能を備えるアプリケーションなどを利用することも可能である。本発明では、このようなデバイスドライバ及びそれと同様のアプリケーションのことを、周辺装置を制御するための制御ソフトウェアと記載することもある。
【００１７】
なお、周辺装置の印刷装置以外の例としては、ファックス装置やスキャナ装置が存在する。その際には、情報処理装置１００には、デバイスドライバとして、それぞれファックスドライバやスキャナドライバがインストールされることになる。ファックスドライバやスキャナドライバを用いて対応する装置に処理要求を行う際にも、プリンタドライバと同様に各種設定のための画面や必要に応じてガイドメッセージの表示制御などが行われることになる。
【００１８】
図２に、情報処理装置１００上で動作するＯＳ２０００などの機能に対応するソフトウェアモジュールの構成例を示す。図２の各モジュールは、プログラムとして外部記憶装置１０２に格納されており、必要に応じてＲＡＭ１０１にロードされ、情報処理装置１００上のＣＰＵ１１４で実行されることでその機能を実現する。
【００１９】
ＯＳ２０００は、複数のユーザーのログインをサポートするために、セッションという概念が導入されている。セッションとは、ユーザーごとに用意される画面やキーボード、プロセス空間などの接続状態の概念である。
【００２０】
セッションには２つの種類がある。一つがユーザーごとに割り当てられるユーザーセッション２１００で、もう一つがＯＳの動作に割り当てられる特別なセッションであるシステムセッション２２００である。一般に、セキュリティを考慮して、ユーザーセッション２１００とシステムセッション２２００は分離されている。ログインしたユーザーごとの情報がユーザーセッション２１００に管理される。ユーザーセッション２１００は、ユーザーがシステムへログインした際にユーザー毎に生成され、ユーザーがログアウトした時点で終了される。
【００２１】
ユーザーセッション２１００が開始されると、複数のユーザーインターフェース（ＵＩ）環境が生成される。本発明では、例えば、マウスの操作に適したデスクトップＵＩ環境２１１０と、デスクトップＵＩ環境２１１０と比べてタッチパネルの操作に適したタッチパネルＵＩ環境２１２０とを挙げて、説明を行う。なお、デスクトップＵＩ環境２１１０はデスクトップＵＩ環境用のプラットフォームにより提供され、タッチパネルＵＩ環境２１２０はタッチパネルＵＩ環境用のプラットフォームにより提供される。表示用タッチパネルディスプレイ１０６に、２つのＵＩ環境の画面うち１つの画面が排他的に表示され、同時に表示されることはない。それぞれのＵＩ環境では、その環境に特化したアーキテクチャのアプリケーションが動作するよう想定されている。よって、デスクトップＵＩ環境用に作られたデスクトップアプリケーションは、タッチパネルＵＩ環境で十分に動作しない。また、タッチパネルＵＩ環境用に作られたタッチパネルアプリケーションは、デスクトップＵＩ環境で十分に動作しない。そのため現在表示しているＵＩ環境とは別のＵＩ環境のアプリケーションを使いたい場合、ユーザーはＵＩ環境を切り替えて操作する必要がある。
【００２２】
デスクトップＵＩ環境２１１０では、文書作成アプリやＷＥＢブラウザなどの各種デスクトップアプリケーション（デスクトップアプリ）２１１１が動作する。また、プリンタ１１０などの周辺装置の設定用にデスクトップＵＩ用入力部２１１２が設置されている。また、周辺装置への処理要求に際して、ユーザーに情報を提示するためにデスクトップＵＩ用表示部２３００が設置されている。さらにデスクトップＵＩ環境２１１０に通知画面を提供するために、デスクトップＵＩ用通知部２１１３が用意されている。
【００２３】
タッチパネルＵＩ環境２１２０では、メールソフトやＷＥＢブラウザなどの各種タッチパネルアプリケーション（タッチパネルアプリ）２１２１が動作する。また、プリンタ１１０などの周辺装置の設定用にタッチパネルＵＩ用入力部２１２２が設置されている。また、周辺装置への処理要求に際して、ユーザーに情報を提示するためにタッチパネルＵＩ用表示部２４００が設置されている。さらに、タッチパネルＵＩ環境２１２０に通知画面を提供するために、タッチパネルＵＩ用通知部２１２３が用意されている。
【００２４】
システムセッション２２００は、ユーザーに依存しないシステムのセッションである。システムセッション２２００は、ＯＳ２０００起動時に生成され、ＯＳ２０００が終了した時点で終了される。システムセッション２２００では、ログインユーザーに依存しないシステムの根幹となるサービスが動作しており、例えば、印刷関連処理のサービスとしてスプーラ２２０１が動作する。スプーラ２２０１は、デスクトップアプリ２１１１やタッチパネルアプリ２１２１から描画データおよび印刷設定情報を受け付ける。そして、出力先のプリンタ１１０に対応するグラフィックスドライバ２２０２が、描画データおよび印刷設定情報に基づいて印刷データを生成する。その後、スプーラ２２０１は、生成された印刷データをプリンタ１１０へネットワーク１０９経由で送信し、その結果プリンタ１１０で印刷が実行される。加えて、ＵＩ制御部２１１４が動作しており、このような周辺装置への処理要求に際して、ユーザーに提示すべき表示画面をどちらのＵＩ環境へ表示するかを制御する。
【００２５】
ここで、グラフィックスドライバ２２０２とデスクトップＵＩ用入力部２１１２とデスクトップＵＩ用表示部２３００は、プリンタ１１０を開発するハードウェアベンダーよりプリンタドライバとして提供される。言い換えると、グラフィックスドライバに相当する周辺装置用のデータを生成するデータ生成部、デスクトップＵＩ用入力部及びデスクトップＵＩ用表示部を含む制御ソフトウェアが、該制御ソフトウェアに対応する周辺装置を開発するハードウェアベンダーより提供されることになる。
【００２６】
また、タッチパネルＵＩ用入力部２１２２とタッチパネルＵＩ用表示部２４００は、タッチパネルＵＩ環境の該制御ソフトウェアに対応する設定ＵＩおよびユーザーへのメッセージ画面を表示する機能などを提供するアプリケーションとして、周辺装置を開発するハードウェアベンダーより提供される。
【００２７】
タッチパネルＵＩ用入力部２１２２とタッチパネルＵＩ用表示部２４００は、タッチパネルＵＩ環境２１２０で動作するアプリケーションの一種であり、１つのアプリケーションとして提供される。タッチパネルＵＩ環境２１２０で動作するアプリ群は、セキュリティおよび品質強化のため、ＯＳ２０００のために用意された外部サービス上で管理される。タッチパネルＵＩ環境２１２０で動作するアプリケーションは、ネットワーク１０９を介して外部サービスから配布されることで、情報処理装置１００に提供される。タッチパネルＵＩ用入力部２１２２とタッチパネルＵＩ用表示部２４００は、例えばプリンタドライバ３３００などのデバイスドライバのインストールに連動して、自動的に情報処理装置１００にダウンロードされ、システムに組み込まれる。
【００２８】
図３に表示用タッチパネルディスプレイ１０６上に表示されるデスクトップＵＩ環境２１１０における画面の具体例を示す。
【００２９】
図３（ａ）は、デスクトップＵＩ環境２１１０上にデスクトップアプリ２１１１が表示されている例を示す。デスクトップＵＩ環境２１１０では、表示用タッチパネルディスプレイ１０６上にデスクトップＵＩ３０００という表示空間が全面に表示される。デスクトップアプリ２１１１は、ウィンドウ３００１で示すデスクトップアプリのための固有の領域内に表示される。１以上のデスクトップアプリが提供する複数の操作画面は、それぞれ個別にウィンドウ３００１が表示される。よって、同時に複数のデスクトップアプリ２１１１が提供するウィンドウ３００１を、デスクトップＵＩ３０００上に表示することが可能である。ここでは、ウィンドウ３００１上にはアプリの操作のためのメニュー３００２が表示されている。デスクトップアプリ２１１１は、表示用タッチパネルディスプレイ１０６や入力装置１０３からの入力を受け付けて、動作する。デスクトップアプリ２１１１から印刷を行う場合は、メニュー３００２から印刷（図示せず）をユーザーが選択する。その後に表示される印刷関連のダイアログ（図示せず）を適宜操作することにより、最終的には、選択中のプリンタに対応するデスクトップＵＩ用入力部２１１２の印刷設定ＵＩ３２００が表示される。デスクトップＵＩ用入力部２１１２は、プリンタ１１０に関する印刷設定の処理を行うモジュールである。印刷設定ＵＩ３２００は、用紙の種類や用紙のサイズなどの印刷に関する複数の設定項目を持つ。
【００３０】
図３（ｂ）に、周辺装置への処理要求に際した、デスクトップＵＩ環境２１１０用のメッセージ画面３３００を示す。このメッセージ画面３３００は、具体的には、デスクトップアプリ２１１１が提供する設定ダイアログ（不図示）で、処理要求が実行（ＯＫボタンがユーザにより押下）された後に、実際に周辺装置で当該処理が実行される前に表示される確認画面ともいえる。
【００３１】
ここで、メッセージ画面３３００には、封筒印刷が設定された場合のユーザーに伝えたい操作内容を分かりやすく伝えるためのビットマップ３３０１とメッセージ３３０２とが配置されている。さらに、メッセージ画面３３００には、今後の印刷でこのメッセージ画面３３００を再度表示するかどうかを選択するチェックボックス３３０３と印刷開始ボタン３３０４が配置されている。印刷開始ボタン３３０４が押されると、メッセージ画面３３００は閉じられて、印刷設定ＵＩ３２００で設定された内容に従い印刷が開始される。
【００３２】
図３（ｃ）にデスクトップＵＩ環境２１１０用の通知画面３４００を示す。通知画面３４００は、バルーンとも呼ばれ、デスクトップＵＩ用通知部２１１３によりデスクトップＵＩ３０００上に表示される。通知画面３４００はデスクトップＵＩ３０００上に一定時間表示される。その一定時間内に通知画面３４００がタップやユーザーのクリック操作が行われた場合の動作については、後述する。
【００３３】
図４に表示用タッチパネルディスプレイ１０６上に表示されるタッチパネルＵＩ環境２１２０の具体例を示す。
【００３４】
タッチパネルＵＩ環境２１２０は、表示用タッチパネルディスプレイ１０６での操作に重きを置いたＵＩのデザインとなっている。指やペンなどのタッチでの操作が容易であるように、操作メニューはデスクトップＵＩ環境２１１０にて提供されるボタンと比較して大きなボタンで構成される。タッチパネルＵＩ環境２１２０では、マウスやキーボードなどの入力装置１０３の入力も受け付けるが、以下表示用タッチパネルディスプレイ１０６での操作で説明する。図２に示すようにタッチパネルＵＩ環境２１２０上で、タッチパネルアプリケーション（タッチパネルアプリ）２１２１が動作する。
【００３５】
図４（ａ）にタッチパネルＵＩ環境２１２０のスタート画面４００１を示す。スタート画面４００１は、タッチパネルＵＩ４０００上に全面に表示されている。スタート画面４００１には、図２のタッチパネルアプリ２１２１がタイル４００２という形式で表示されている。ユーザーがタイル４００２をタップすると、そのタイルに該当するタッチパネルアプリ２１２１が、タッチパネルＵＩ４０００上に全面表示される。
【００３６】
図４（ｂ）は、タッチパネルアプリ２１２１の一例であるメモ帳４１００の表示例である。メモ帳４１００は、タッチパネルＵＩ４０００上の全面に表示され他のアプリは表示されない。タッチパネルアプリ２１２１で、たとえば印刷を行う場合、表示用タッチパネルディスプレイ１０６上でタッチ操作を行うことによりタッチパネルＵＩ用入力部２１２２の印刷設定ＵＩ４５００が表示される。タッチパネルＵＩ用入力部２１２２は、プリンタ１１０のための印刷設定の処理を行うモジュールである。印刷設定ＵＩ４５００は、用紙の種類や用紙のサイズなどの印刷に関する設定項目を持つ。
【００３７】
図４（ｃ）に、周辺装置への処理要求に際した、タッチパネルＵＩ環境２１２０用のメッセージ画面４７００を示す。メッセージ画面４７００には、例えば印刷設定として封筒印刷が設定された場合の、ユーザーに伝えたい内容を分かりやすく伝えるためのビットマップ４７０１とメッセージ４７０２が配置されている。さらに、メッセージ画面４７００には、今後の印刷でこのメッセージ画面４７００を再度表示するかどうかを選択するチェックボックス４７０３と印刷開始ボタン４７０４とが配置されている。印刷開始ボタン４７０４がタップされると、メッセージ画面４７００は閉じられて印刷が開始される。
【００３８】
図４（ｄ）にデスクトップＵＩ環境２１２０用の通知画面４６００を示す。この通知画面４６００は、トーストとも呼ばれ、タッチパネルＵＩ用通知部２１２３によりタッチパネルＵＩ４０００上に表示される。通知画面４６００は、タッチパネルＵＩ４０００上に、ユーザーによるタップ操作などを受け付けるために、任意のメッセージとともに一定時間表示される。その一定時間内に通知画面４６００がタップされた場合の動作については後述する。
【００３９】
図６を用いて、封筒印刷のように印刷開始時にユーザーにガイドを表示する設定が、印刷設定ＵＩ３２００、または印刷設定ＵＩ４５００で設定された場合の印刷処理を説明する。実施例１では封筒印刷を例に説明するが、これに限定されることなく、ＣＤ−Ｒのディスク面に印刷する場合に、ディスクをプリンタにセットする方法を説明するガイドなど、周辺装置においてユーザーによる特殊な作業が必要な設定についても適用可能である。同様に、カセットの用紙から給紙して印刷する設定の場合にも、カセットへの用紙のセット方法を説明するガイドについても、周辺装置においてユーザーによる特殊な作業が必要な例といえる。また、ガイド表示に限定されることなく、周辺装置で処理が実行される前に、グラフィックスドライバ２２０２などのデバイスドライバのモジュールでの処理の過程で検出されたエラー内容をユーザーに通知する場合にも適用できる。他にも、印刷データとプリンタの状態に従い警告すべき場合にも、本発明における表示制御が適用可能である。具体的には、印刷の過程で、プリンタの印刷ヘッド交換後の最初の印刷であることが検出された場合に、ユーザーにヘッドの調整を推奨する内容の通知が行えるようになる。
【００４０】
図６（ａ）に示すように、デスクトップアプリとタッチパネルアプリでは、操作方法などには違いがあるものの、印刷処理の基本シーケンスは同じである。そのため、ここではデスクトップアプリからの印刷処理のみ説明する。タッチパネルアプリの印刷処理に関しては、デスクトップアプリをタッチパネルアプリに適宜読み替えれば良い。
【００４１】
印刷処理が開始されると、デスクトップアプリ２１１１はＯＳ２０００の機能を使ってスプーラ２２０１へ印刷処理の要求（Ｓ６０１０〜Ｓ６０１２）を伝える。はじめに、デスクトップアプリ２１１１は、Ｓ６０１０で、印刷開始要求を行う。Ｓ６０１０の印刷開始要求では、図５で示す、以下の印刷に関する情報５０００がスプーラ２２０１に伝えられる。
【００４２】
・アプリ情報５００１：印刷したアプリ名とその種類（デスクトップアプリｏｒタッチパネルアプリ）
・プリンタ情報５００２：印刷出力先のプリンタ名
・印刷設定情報５００３：印刷設定ＵＩ３２００、４５００で設定した印刷設定情報
これらの情報はスプーラ２２０１を介して、印刷時ＵＩ制御部２２１４やグラフィックスドライバ２２０２にも伝えられる。
【００４３】
続けて、Ｓ６０１１で、デスクトップアプリ２１１１は、印刷する内容（描画データ）を伝えるために、描画要求を行う。印刷する内容を伝えるデータ形式としては、例えば、ＸＭＬ  Ｐａｐｅｒ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ（ＸＰＳ）形式ストリームが用いられる。その後、デスクトップアプリ２１１１は、すべての印刷内容を伝えたことを示すために、Ｓ６０１２で印刷終了要求を実行する。
【００４４】
Ｓ６０１３で、スプーラ２２０１は、印刷開始要求をうけて、プリンタ情報５００２を元に出力先のプリンタ１１０に対応するグラフィックスドライバ２２０２へ初期化要求を出す。グラフィックスドライバ２２０２は、初期化要求の一部として伝えられた印刷設定情報を解析する。Ｓ６０１４で、グラフィックスドライバ２２０２は、封筒印刷のように印刷時にユーザーにガイドを表示する必要がある場合、スプーラ２２０１に通信要求を出す。ここでは、印刷設定情報のみを解析してユーザーにガイドを表示する必要があるかどうかを判断している。なお、これに限らず、プリンタの現在の状態も解析して、ユーザーにガイドを表示する必要があるかどうかを判断してもよい。一例として、プリンタの状態が印刷ヘッド交換だった場合だったら、ユーザーにヘッドの調整を推奨する表示を行う、等が考えられる。この通信要求として、図５の印刷に関する情報５０００に加え、通知メッセージに表示する通知メッセージ５００４を伝える。その後、Ｓ６０１５で、グラフィックスドライバ２２０２は、メッセージ画面の応答を待つ通信待ち状態となる。スプーラ２２０１は、Ｓ６０１６で、通信要求をうけて、ＵＩ制御部２１１４に、メッセージ画面の表示要求を出す。ＵＩ制御部２１１４は、その要求をうけて、メッセージ画面を表示するための、以下に説明する制御処理を行う。
【００４５】
図３，４を用いて前述したメッセージ画面３３００またはメッセージ画面４７００を表示するための処理シーケンスは、図６（ｂ）〜（ｅ）の複数種類が存在する。実施例１の処理に関しては、図７のフローチャートを用いて後で説明する。
【００４６】
Ｓ６０１７で、ＵＩ制御部２１１４は、メッセージ画面でユーザーが操作した内容を含む応答をスプーラ２２０１に渡す。ここでの操作とは、例えば印刷を再開するためのユーザーによる印刷開始ボタン３３０４の押下を示す。Ｓ６０１８で、スプーラ２２０１は、メッセージ画面でユーザーが操作した内容を含む応答をグラフィックスドライバ２２０２に渡す。Ｓ６０１８の処理により、グラフィックスドライバ２２０２が通信待ち状態より復帰する。
【００４７】
Ｓ６０１９で、グラフィックスドライバ２２０２は、スプーラ２２０１より描画データを取得し、Ｓ６０２０で、印刷設定情報及び描画データを用いて、印刷コマンドである印刷データを生成する。Ｓ６０２１で、グラフィックスドライバ２２０２は、生成した印刷データをスプーラ２２０１へ出力する。Ｓ６０２２で、スプーラ２２０１は、ＯＳ２０００の機能を用いて、プリンタ１１０へ印刷データを出力する。
【００４８】
図７は、実施例１のメッセージ画面の表示制御の処理を説明するためのフローチャートを示す。本処理では、ユーザーによるＵＩ環境の切り替え操作による負荷の増大を防ぐために、メッセージ画面を現在表示中のＵＩ環境へ表示する。このフローチャートの動作主体は、ＯＳのモジュールの１つであるＵＩ制御部２１１４として説明するが、これに限らず、グラフィックスドライバ２２０２で実施してもよい。
【００４９】
Ｓ７０１で、ＵＩ制御部２１１４は、表示用タッチパネルディスプレイ１０６上において、ユーザーに現在提供（表示）されているＵＩ環境を判断する。表示用タッチパネルディスプレイ１０６上に、デスクトップＵＩ３０００が表示されていると判断された場合にはＳ７０２に進み、タッチパネルＵＩ４０００が表示されていると判断された場合にはＳ７０４に進む。Ｓ７０２で、ＵＩ制御部２１１４は、デスクトップＵＩ用表示部２３００に、メッセージ画面３３００を出すように要求する。そして、デスクトップＵＩ用表示部２３００のメッセージ画面３３００に対するユーザー操作に基づく応答があるまで、ＵＩ制御部２１１４は処理を待機する。
【００５０】
Ｓ７０２の処理に起因する処理のシーケンスを、図６（ｂ）を用いて説明する。
【００５１】
まず、Ｓ６１０１で表示要求をうけたデスクトップＵＩ用表示部２３００は、Ｓ６１０２でメッセージ画面３３００をデスクトップＵＩ３０００上に表示し、ユーザー操作を待機する。Ｓ６１０３で、デスクトップＵＩ用表示部２３００は、メッセージ画面３３００に対するユーザー操作に基づく応答を、ＵＩ制御部２１１４へ渡す。
【００５２】
その後、Ｓ７０３で、ＵＩ制御部２１１４は、メッセージ画面３３００に対するユーザー操作に基づく応答を、グラフィックスドライバ２２０２へ渡して、本処理を終了する。これにより、グラフィックスドライバ２２０２は、メッセージ画面３３００に対するユーザー操作を待ってから、印刷データを生成するなどの処理を開始する。
【００５３】
一方、Ｓ７０４で、ＵＩ制御部２１１４は、タッチパネルＵＩ用表示部２４００を介したタッチパネルＵＩ用通知部２１２３による通知画面４６００の表示を依頼し、Ｓ７０５で、一定時間、通知画面４６００への入力を待つ。
【００５４】
Ｓ７０４の処理に起因する処理のシーケンスを、図６（ｃ）を用いて説明する。
【００５５】
まず、Ｓ６２００で、ＵＩ制御部２１１４は、タッチパネルＵＩ用表示部２４００に対して通知画面４６００の表示を依頼する。Ｓ６２００で表示要求をうけたタッチパネルＵＩ用表示部２４００は、タッチパネルＵＩ用通知部２１２３へ、通知画面４６００の表示の依頼を行う。その依頼内容には、通知画面４６００に表示する内容である、プリンタ情報とメッセージの文言が含まれる。更に加えて、通知画面４６００がタップされた場合に開きたいモジュール名が記載されている。本実施例では、開きたいモジュール名として、タッチパネルＵＩ用表示部２４００が指定されている。Ｓ６２０２で、タッチパネルＵＩ用通知部２１２３は、通知画面４６００をタッチパネルＵＩ４０００上に表示する。
【００５６】
本実施例では、メッセージ画面４７００が表示される前に、タッチパネルＵＩ用通知部２１２３がメッセージ画面４７００を表示することをユーザーに確認してもらうために、通知画面４６００をタッチパネルＵＩ４０００上に表示する。これは、タッチパネルＵＩ４０００上に、現在表示されている他のアプリケーションによる表示画面へのユーザー操作を邪魔しないためである。ユーザーは必要に応じてメッセージ画面４７００の表示（通知画面４６００をタップ）と、非表示（通知画面４６００をタップしない）を切り替えることができる。通知画面４６００は、タッチパネルＵＩ４０００上に一定時間、表示される。
【００５７】
その一定時間内に通知画面４６００がタップされると、Ｓ６２０３で、タッチパネルＵＩ用通知部２１２３は、ユーザーによりタップされたことをタップした場合に開くべきモジュール名とともに、ＵＩ制御部２１１４に通知する。もし、その一定時間内に通知画面４６００がタップされない場合、タッチパネルＵＩ４０００から通知画面４６００が消える。
【００５８】
Ｓ７０６及びＳ７０８で、ＵＩ制御部２１１４は、タッチパネルＵＩ用通知部２１２３からの通知に基づき、その一定時間内に通知画面４６００がタップされたかを判断する。通知画面４６００がタップされたと判断された場合にはＳ７０７に進み、タップされなかったと判断され、タイムアウトした場合にはＳ７０９に進む。Ｓ７０７で、ＵＩ制御部２１１４は、タッチパネルＵＩ用表示部２４００に、メッセージ画面４７００を表示するように要求する。そして、タッチパネルＵＩ用表示部２４００のメッセージ画面４７００に対するユーザー操作に基づく応答があるまで、ＵＩ制御部２１１４は処理を待機する。
【００５９】
Ｓ７０７の処理に起因する処理のシーケンスを、図６（ｃ）を用いて説明する。
【００６０】
Ｓ６２０４で、表示要求をうけてタッチパネルＵＩ用表示部２４００は、Ｓ６２０５でメッセージ画面４７００をタッチパネルＵＩ環境３１２０へ表示する。Ｓ６２０６で、タッチパネルＵＩ用表示部２４００は、メッセージ画面４７００に対するユーザー操作に基づく応答を、ＵＩ制御部２１１４へ渡す。
【００６１】
Ｓ７０３で、ＵＩ制御部２１１４は、メッセージ画面４７００に対するユーザー操作に基づく応答を、グラフィックスドライバ２２０２へ通知して、本処理を終了する。これにより、グラフィックスドライバ２２０２は、メッセージ画面４７００に対するユーザー操作を待ってから、印刷データを生成するなどの処理を開始する。
【００６２】
Ｓ７０９で、ＵＩ制御部２１１４は、メッセージ画面４７００に対するユーザー操作が無かったことを、グラフィックスドライバ２２０２へ通知して、本処理を終了する。
【００６３】
ここで、通知画面がユーザーによりタップされずにタイムアウトし、またメッセージ画面４７００へのユーザー操作が無かった場合（Ｓ７０９）であっても、グラフィックスドライバ２２０２が印刷データを生成するなどの処理を開始してもよいとする。
【００６４】
上記説明したように、実施例１では、現在表示中のＵＩ環境を判断して、封筒印刷のためのガイドなどを示すメッセージ画面が現在表示中のＵＩ環境に表示される。
【００６５】
例えば、ユーザーが、デスクトップアプリ２１１１から印刷指示を入力した直後に、ＵＩ環境をデスクトップＵＩ環境２１１０からタッチパネルＵＩ環境２１２０に変更する。このように印刷指示が入力された後にＵＩ環境が変更された場合であっても、本実施例１を用いることで、現在表示されているタッチパネルＵＩ環境２１２０に、メッセージ画面４７００が表示される。一方、ユーザーが、タッチパネルアプリ２１２１から印刷指示を入力した直後に、ユーザーがＵＩ環境をタッチパネルＵＩ環境２１２０からデスクトップＵＩ環境２１１０に変更する。このように印刷指示が入力された後にＵＩ環境が変更された場合であっても、本実施例１を用いることで、現在表示されているデスクトップＵＩ環境２１１０にメッセージ画面３３００が表示される。
【００６６】
よって、本実施例によれば、ユーザー操作に対して適切なＵＩ環境上に、周辺装置への処理要求に際したガイドメッセージなどのメッセージ画面を提供することが可能となり、ユーザーの操作性の低下を防ぐことが可能となる。
【００６７】
なお、本実施例では、通知画面４６００が操作されることでメッセージ画面４７００が表示されるが、通知画面４６００が操作されることなく、メッセージ画面４７００が現在表示されているＵＩ環境に表示されても良い。つまり、ステップ７０１の次にステップ７０７が実行されても良い。
【００６８】
また、図６（ｃ）では、タッチパネルＵＩ用表示部２４００が、タッチパネルＵＩ用通知部２１２３へ通知画面４６００の表示の依頼を行う例を説明した。しかしながら、ＵＩ制御部２１１４が、直接、タッチパネルＵＩ用通知部２１２３へ、通知画面４６００の表示の依頼を行うように実現してもよい。つまり、Ｓ６２０１の処理が実行されないことになる。この場合には、ＵＩ制御部２１１４がタッチパネルＵＩ用通知部２１２３に対して、通知画面４６００の表示の依頼とともに、タップされた場合に開きたいモジュール名としてタッチパネルＵＩ用表示部２４００（またはそれを実現するアプリケーション）を指定することになる。このＵＩ制御部２１１４による通知画面４６００の表示の依頼は、例えば、ＯＳにより（現状では用意されていないが）、提供されるであろう呼び出しの仕組みを利用することで実現してもよい。
【００６９】
＜実施例２＞
実施例１では、現在表示中のＵＩ環境上にメッセージ画面を表示した。それに対して、本実施例では、ユーザーが周辺装置へ処理要求を指示した際に利用したアプリが動作するＵＩ環境へ、メッセージ画面を表示するための処理を説明する。
【００７０】
なお、本実施例では前述の実施例と同様な機器構成や処理などに関しては、詳細な説明を省略する。
【００７１】
図８に、実施例２のメッセージ画面の表示制御の処理を説明するためのフローチャートを示す。本処理では、印刷実行の指示に用いたアプリが動作するＵＩ環境へメッセージ画面を表示するための処理を示す。このフローチャートの動作主体は、ＯＳのモジュールの１つであるＵＩ制御部２１１４として説明するが、これに限らず、グラフィックスドライバ２２０２で実施してもよい。なお、図８に示す処理は、実施例１の図７を用いて説明した処理と置き換えられ実行される。
【００７２】
Ｓ８０１で、ＵＩ制御部２１１４は、スプーラ２２０１から受け取った印刷に関する情報５０００のアプリ情報５００１を参照し、いずれのＵＩ環境のアプリケーションで周辺装置への処理要求が指示されたかを判断する。ここでは、デスクトップＵＩ３０００で印刷指示されたかが判断される。デスクトップＵＩ３０００上のデスクトップアプリ２１１１で印刷指示が行われたと判断された場合にはＳ８０２に進み、タッチパネルＵＩ４０００上のタッチパネルアプリ２１２１で印刷指示が行われたと判断された場合にはＳ８０３に進む。Ｓ８０２で、ＵＩ制御部２１１４は、デスクトップＵＩ環境への表示処理を実行し、その後、本処理を終了する。Ｓ８０３で、ＵＩ制御部２１１４は、タッチパネルＵＩ環境への表示処理を実行し、その後、本処理を終了する。
【００７３】
以下、デスクトップ用表示部の表示処理とタッチパネルＵＩ用表示部の表示処理を、図９と図１０を用いて説明する。
【００７４】
図９は、Ｓ８０１の判断結果に基づく、デスクトップＵＩ環境へのメッセージ画面３３００の表示制御の処理を説明するためのフローチャートを示す。
【００７５】
Ｓ９０１で、ＵＩ制御部２１１４は、表示用タッチパネルディスプレイ１０６上において、現在提供（表示）されているＵＩ環境を判断する。表示用タッチパネルディスプレイ１０６上に、デスクトップＵＩ３０００が表示されていると判断された場合にはＳ９０２に進み、タッチパネルＵＩ４０００が表示されていると判断された場合にはＳ９０４に進む。Ｓ９０２及びＳ９０３の処理は、実施例１で説明したＳ７０２、Ｓ７０３と同様の処理であるため、詳細な説明は省略する。
【００７６】
Ｓ９０４で、ＵＩ制御部２１１４は、タッチパネルＵＩ用通知部２１２３による通知画面４６００の表示を依頼する。Ｓ９０５で、通知画面４６００への入力を一定時間待つ。タッチパネルＵＩ用通知部２１２３への依頼には、通知画面４６００に表示する内容である、プリンタ情報とメッセージの文言が含まれる。更に加えて、通知画面４６００をタップした場合に開くべきモジュール名が記載されている。本実施例では、デスクトップＵＩ用表示部２３００が指定されている。
【００７７】
Ｓ９０４の処理に起因する処理のシーケンスを、図６（ｄ）を用いて説明する。
【００７８】
まず、Ｓ６３００で、ＵＩ制御部２１１４は、タッチパネルＵＩ用通知部２１２３に対して通知画面４６００の表示を依頼する。Ｓ６３０１で、タッチパネルＵＩ用通知部２１２３は、この表示要求をうけて、図４（ｄ）に示す通知画面４６００をタッチパネルＵＩ４０００上に表示する。
【００７９】
本実施例では、メッセージ画面３３００が表示される前に、タッチパネルＵＩ用通知部２１２３が、メッセージ画面３３００を表示することをユーザーに確認してもらうために、通知画面４６００をタッチパネルＵＩ４０００上に表示する。
【００８０】
通知画面４６００がタッチパネルＵＩ４０００上に表示される一定時間内に、通知画面４６００がタップされると、Ｓ６３０２でタッチパネルＵＩ用通知部２１２３が、タップされたことをタップした場合に開くべきモジュール名とともに、ＵＩ制御部２１１４に通知する。その一定時間内に通知画面４６００がタップされなかった場合には、タッチパネルＵＩ４０００から通知画面４６００が消える。
【００８１】
Ｓ９０６及びＳ９０８で、ＵＩ制御部２１１４は、タッチパネルＵＩ用通知部２１２３からの通知に基づき、その一定時間内に通知画面４６００がタップされたかを判断する。通知画面４６００がタップされたと判断された場合にはＳ９０７に進み、その一定時間内に通知画面４６００がタップされなかったと判断され、タイムアウトした場合にはＳ９０９に進む。Ｓ９０９での処理は、Ｓ７０９での処理と同様のため説明を省略する。
【００８２】
Ｓ９０７で、ＵＩ制御部２１１４は、表示用タッチパネルディスプレイ１０６上へ表示されるＵＩ環境をデスクトップＵＩ３０００に切り替えるようにＯＳに依頼して、Ｓ９０２の処理に進む。
【００８３】
Ｓ９０２の処理に起因する処理のシーケンスを、図６（ｄ）を用いて説明する。
【００８４】
Ｓ６３０３でＵＩ制御部２１１４から表示要求を受けたデスクトップＵＩ用表示部２３００は、Ｓ６３０４でメッセージ画面３３００をデスクトップＵＩ環境へ表示する。デスクトップＵＩ用表示部２３００は、Ｓ６３０５で、メッセージ画面３３００に対するユーザー操作に基づく応答をＵＩ制御部２１１４へ通知する。
【００８５】
Ｓ９０３で、ＵＩ制御部２１１４は、メッセージ画面３３００に対するユーザー操作に基づく応答を、グラフィックスドライバ２２０２へ通知して、本処理を終了する。これにより、グラフィックスドライバ２２０２は、メッセージ画面３３００に対するユーザー操作を待ってから、印刷データを生成するなどの処理を開始する。
【００８６】
図１０は、Ｓ８０１の判断結果に基づく、タッチパネルＵＩ環境へのメッセージ画面４７００の表示制御の処理を説明するためのフローチャートを示す。
【００８７】
Ｓ１００１で、ＵＩ制御部２１１４は、表示用タッチパネルディスプレイ１０６上において、ユーザーに現在提供されているＵＩ環境を判断する。表示用タッチパネルディスプレイ１０６上に、デスクトップＵＩ３０００が表示されていると判断された場合にはＳ１００９に進み、タッチパネルＵＩ４０００が表示されていると判断された場合にはＳ１００２に進む。
【００８８】
ここで、Ｓ１００２〜Ｓ１００８までの処理は、実施例１の図７で説明したＳ７０４〜Ｓ７０７、Ｓ７０３やＳ７０８、Ｓ７０９と同様の処理であるため、その詳細な説明を省略する。
【００８９】
Ｓ１００９で、ＵＩ制御部２１１４は、デスクトップＵＩ用通知部２１１３に通知画面３４００の表示を依頼する。Ｓ１０１０で、通知画面３４００への入力を一定時間待つ。
【００９０】
デスクトップＵＩ用通知部２１１３への依頼には、通知画面３４００に表示する内容である、プリンタ情報とメッセージの文言が含まれる。更に加えて、通知画面３４００をタップした場合に開くべきモジュール名が記載されている。ここでは、タッチパネルＵＩ用表示部２４００が指定されている。
【００９１】
Ｓ１００９の処理に起因する処理のシーケンスを、図６（ｅ）を用いて説明する。
【００９２】
まず、Ｓ６４００で、ＵＩ制御部２１１４は、デスクトップＵＩ用通知部２１１３に対して通知画面３４００の表示を依頼する。Ｓ６４０１で、デスクトップＵＩ用通知部２１１３は、図３（ｃ）に示すデスクトップＵＩ用通知部２１１３の通知画面３４００をデスクトップＵＩ３０００上に表示する。
【００９３】
本実施例では、メッセージ画面４７００が表示される前に、デスクトップＵＩ用通知部２１１３が、メッセージ画面４７００を表示することをユーザーに確認してもらうために、通知画面３４００をデスクトップＵＩ３０００上に表示する。
【００９４】
通知画面３４００がデスクトップＵＩ３０００上に表示される一定時間内に、通知画面３４００がタップされると、Ｓ６４０２でデスクトップＵＩ用通知部２１１３は、タップされたことをタップした場合に開くべきモジュール名とともに、ＵＩ制御部２１１４に通知する。その一定時間内に通知画面３４００がタップされない場合には、デスクトップＵＩ３０００から通知画面３４００が消える。
【００９５】
Ｓ１０１１及びＳ１０１３で、ＵＩ制御部２１１４は、デスクトップＵＩ用通知部２１１３からの通知に基づき、その一定時間内に通知画面３４００がタップされたかを判断する。通知画面３４００がタップされたと判断された場合にはＳ１０１２に進み、その一定時間内に通知画面３４００がタップされなかったと判断され、タイムアウトした場合にはＳ１００８に進む。Ｓ１００８での処理は、Ｓ７０９での処理と同様のため説明を省略する。
【００９６】
Ｓ１０１２で、ＵＩ制御部２１１４は、表示用タッチパネルディスプレイ１０６上へ表示されるＵＩ環境をデスクトップＵＩ３０００からタッチパネルＵＩ４０００に切り替えるようにＯＳに依頼して、Ｓ１００６に進む。
【００９７】
Ｓ１００６の処理に起因する処理のシーケンスを、図６（ｅ）を用いて説明する。
【００９８】
Ｓ６４０３でＵＩ制御部２１１４から表示要求を受けたタッチパネルＵＩ用表示部２４００は、Ｓ６４０４でメッセージ画面４７００をタッチパネルＵＩ環境へ表示する。タッチパネルＵＩ用表示部２４００は、Ｓ６４０５で、メッセージ画面４７００に対するユーザー操作に基づく応答をＵＩ制御部２１１４へ通知する。
【００９９】
Ｓ１００７で、ＵＩ制御部２１１４は、メッセージ画面４７００に対するユーザー操作に基づく応答を、グラフィックスドライバ２２０２へ通知して、本処理を終了する。これにより、グラフィックスドライバ２２０２は、メッセージ画面４７００に対するユーザー操作を待ってから、印刷データを生成するなどの処理を開始する。
【０１００】
上記説明したように、実施例２では、ユーザーが周辺装置へ処理要求を指示した際に利用したアプリの動作するＵＩ環境へ、封筒印刷のためのガイドなどを示すメッセージ画面が表示される。
【０１０１】
たとえば、複数のＵＩ環境のそれぞれで複数の処理要求を指示した場合を想定する。そういった場合でも、処理要求を指示した際に利用したアプリとメッセージ画面とが同じＵＩ環境に表示されるので、ユーザーにとっては表示されたメッセージ画面がどの要求に対応するかが認識しやすくなり、操作性が向上すると言える。
【０１０２】
＜実施例３＞
実施例３では、上記した実施例１、２とは異なりでは、デスクトップＵＩ用表示部２３００やタッチパネルＵＩ用表示部２４００を用いたメッセージ画面を表示することができない場合に関する処理を想定する。
【０１０３】
具体的には、タッチパネルＵＩ用表示部２４００は、外部サービスからネットワーク１０９を介してアプリケーションとして配信される。そのため、タッチパネルＵＩ用表示部２４００が、ＯＳ２０００に組み込まれていない場合も想定する必要がある。また、周辺装置のハードウェアベンダーが、デスクトップＵＩ用表示部２３００か、タッチパネルＵＩ用表示部２４００のどちらか一方のみを開発して、提供する可能性もある。その結果、デスクトップＵＩ用表示部２３００、タッチパネルＵＩ用表示部２４００のいずれかが組み込まれていない状況も考えられる。また、デスクトップＵＩ用表示部２３００やタッチパネルＵＩ用表示部２４００がメッセージ画面の表示機能に対応していない場合もあり得る。
【０１０４】
そこで、本実施例では、メッセージ画面を表示可能なＵＩ環境に対して、表示制御することを目的とする。
【０１０５】
なお、本実施例では前述の実施例と同様な機器構成や処理などに関しては、詳細な説明を省略する。
【０１０６】
図１１に、実施例３のメッセージ画面の表示制御の処理を説明するためのフローチャートを示す。このフローチャートの動作主体は、ＯＳのモジュールの１つであるＵＩ制御部２１１４として説明するが、これに限らず、グラフィックスドライバ２２０２で実施してもよい。なお、図１１に示す処理は、実施例１の図７を用いて説明した処理と置き換えられ実行される。
【０１０７】
Ｓ１１０１で、ＵＩ制御部２１１４は、メッセージ画面（３３００または４７００）を表示可能なＵＩ環境を調査する。具体的には、デスクトップＵＩ用表示部２３００やタッチパネルＵＩ用表示部２４００が既に組み込まれている場合には、それぞれのバージョン情報や能力情報の問合せ結果などをもとに、メッセージ画面を表示する能力があるか否かを判定する。組み込まれていない場合には、そのＵＩ環境ではメッセージ画面を表示することができないと判定する。Ｓ１１０２で、ＵＩ制御部２１１４は、両方のＵＩ環境でメッセージ画面の表示が可能か否かを判断する。表示可能な場合にはＳ１１０３に進み、実施例１、２で説明したいずれかの処理を行う。両方のＵＩ環境でメッセージ画面の表示が可能でなかったと判断された場合には、Ｓ１１０４に進む。
【０１０８】
Ｓ１１０４で、ＵＩ制御部２１１４は、いずれのＵＩ環境でメッセージ画面の表示が可能であったかを判断する。ここで、デスクトップＵＩ環境でメッセージ画面３３００が表示可能であったと判断された場合（Ｓ１１０４でＹｅｓ）、Ｓ１１０５へ進む。Ｓ１１０５では、上記の図９で説明した処理を実行する。デスクトップＵＩ環境でメッセージ画面３３００が表示不可能であったと判断された場合（Ｓ１１０４でＮｏ）、Ｓ１１０６へ進む。Ｓ１１０６では、上記の図１０で説明した処理を実行する。
【０１０９】
なお、いずれのＵＩ環境でもメッセージ画面の表示が不可能な場合には、ＵＩ制御部２１１４は、エラーメッセージを表示する（不図示）。
【０１１０】
上記で説明したように、本実施例では、メッセージ画面の表示が可能なＵＩ環境を考慮した上で、実施例１及び２を適用したので、ユーザーの操作性の低下を防ぐことができる。
【０１１１】
＜実施例４＞
実施例１〜３では、ＵＩ制御部２１１４が存在し、各ＵＩ環境に対して、メッセージ画面３３００またはメッセージ画面４７００を表示する仕組みを提供する場合の処理を説明した。しかし、ＯＳの種類によっては、ＵＩ制御部２１１４のような機能を提供できない場合も考えられる。そのようなＯＳでは、グラフィックスドライバ２２０２からデスクトップＵＩ３０００とタッチパネルＵＩ４０００といった環境に対して、メッセージ画面を表示するように依頼することができない。
【０１１２】
本実施例では、そのようなＯＳを想定し、図１２に示すようなモジュール構成でメッセージ画面をユーザーに対して提供する仕組みを説明する。
【０１１３】
なお、本実施例では前述の実施例と同様な機器構成や処理などに関しては、詳細な説明を省略する。
【０１１４】
図１２は、実施例４における、情報処理装置のソフトウェアのモジュール構成の例を示す。図２との違いは、共通ストレージ１２００あること、および、ＵＩ制御部２１１４が無いことである。共通ストレージ１２００は、デスクトップＵＩ用表示部２３００とタッチパネルＵＩ用表示部２４００とグラフィックスドライバ２２０２が共通で読み書きできる（参照可能な）所定の記憶領域である。それ以外の各モジュールは図２と同様なので説明を省略する。
【０１１５】
図１３は、現在表示中のＵＩ環境に、メッセージ画面を表示するための処理を説明するためのフローチャートを示す。このフローチャートの動作主体は、グラフィックスドライバ２２０２である。本処理は、実施例１のシステムにおける図７のメッセージ画面を表示するためのＵＩ制御部２１１４の処理に代わって実行される。
【０１１６】
Ｓ１３０１で、グラフィックスドライバ２２０２は、表示用タッチパネルディスプレイ１０６上において、いずれのＵＩ環境が提供されているかを判断する。ここでは、現在デスクトップＵＩ３０００が提供（表示）されているかどうかを判断している。この判定は、ＯＳ２０００が提供するＡＰＩをコールすることで行われる。表示用タッチパネルディスプレイ１０６上に、デスクトップＵＩ３０００が提供されている場合にはＳ１３０２に進み、タッチパネルＵＩ４０００が提供されている場合にはＳ１３０３に進む。
【０１１７】
Ｓ１３０２で、グラフィックスドライバ２２０２は、共通ストレージ１２００に、メッセージ画面を表示すべきモジュールとしてデスクトップＵＩ用表示部２３００を示す情報を書き込み、デスクトップＵＩ用表示部２３００からの応答を待機する。一方、Ｓ１３０３で、グラフィックスドライバ２２０２は、共通ストレージ１２００に、メッセージ画面を表示すべきモジュールとしてタッチパネルＵＩ用表示部２４００を示す情報を書き込み、タッチパネルＵＩ用表示部２４００からの応答を待機する。
【０１１８】
Ｓ１３０４で、グラフィックスドライバ２２０２は、Ｓ１３０２またはＳ１３０３の処理に従い表示されるメッセージ画面３３００またはメッセージ画面４７００に対するユーザー操作に基づく応答を受け取り、本処理を終了する。ここでは、デスクトップＵＩ用表示部２３００またはタッチパネルＵＩ用表示部２４００による共通ストレージ１２００への書き込みを参照して、応答を受け取るといった方法を想定している。これにより、グラフィックスドライバ２２０２は、メッセージ画面に対するユーザー操作を待ってから、印刷データを生成するなどの処理を開始する。
【０１１９】
図１４は、各ＵＩ環境における表示部が行うメッセージ画面の表示制御処理を説明するためのフローチャートを示す。
【０１２０】
図１４（ａ）は、デスクトップＵＩ用表示部２３００が行う表示制御の処理を説明するためのフローチャートを示す。
【０１２１】
Ｓ１４０１で、デスクトップＵＩ用表示部２３００がＵＩなどを非表示状態で常駐起動される。起動されるタイミングとしては、ＯＳ起動時や、印刷開始時などが考えられる。次に、Ｓ１４０２で、デスクトップＵＩ用表示部２３００は共通ストレージ１２００を参照する。Ｓ１４０３で、デスクトップＵＩ用表示部２３００は、共通ストレージ１２００において、メッセージ画面を表示すべきモジュールとしてデスクトップＵＩ用表示部２３００を示す情報が指定されているかどうかを判定する。デスクトップＵＩ用表示部２３００を示す情報が指定されていると判定された場合にはＳ１４０４に進み、指定されていなかった場合にはＳ１４０２に戻り、共通ストレージ１２００を参照して、新たな情報の書き込みが無いかを確認する。Ｓ１４０４で、デスクトップＵＩ用表示部２３００は、メッセージ画面３３００を表示する。
【０１２２】
Ｓ１４０５で、デスクトップＵＩ用表示部２３００は、メッセージ画面３３００に対するユーザー操作の内容を共通ストレージに書き込む。この際に、メッセージ画面３３００に対するユーザー操作の内容を直接、グラフィックスドライバ２２０２に対して応答してもよい。その後、メッセージ画面３３００を閉じて、Ｓ１４０２に戻る。
【０１２３】
図１４（ｂ）は、タッチパネルＵＩ用表示部２４００が行う表示制御の処理を説明するためのフローチャートを示す。
【０１２４】
Ｓ１４１１で、タッチパネルＵＩ用表示部２４００がＵＩなどを非表示状態で常駐起動される。起動されるタイミングとしては、ＯＳ起動時や、印刷開始時などが考えられる。次に、Ｓ１４１２で、タッチパネルＵＩ用表示部２４００は共通ストレージ１２００を参照する。Ｓ１４１３で、タッチパネルＵＩ用表示部２４００は、共通ストレージ１２００において、メッセージ画面を表示すべきモジュールとしてタッチパネルＵＩ用表示部２４００を示す情報が指定されているかどうかを判定する。タッチパネルＵＩ用表示部２４００を示す情報が指定されていると判定された場合にはＳ１４１４に進み、指定されていなかった場合にはＳ１４１２に戻り、共通ストレージ１２００を参照して、新たな情報の書き込みが無いかを確認する。Ｓ１４１４で、タッチパネルＵＩ用表示部２４００は、メッセージ画面４７００を表示する。
【０１２５】
Ｓ１４１５で、タッチパネルＵＩ用表示部２４００は、メッセージ画面４７００に対するユーザー操作の内容を共通ストレージに書き込む。この際に、メッセージ画面４７００に対するユーザー操作の内容を直接、グラフィックスドライバ２２０２に対して応答してもよい。その後、メッセージ画面４７００を閉じて、Ｓ１４１２に戻る。
【０１２６】
図１５に、実施例４のメッセージ画面の表示制御の処理を説明するためのフローチャートを示す。本処理では、図１３とは異なり、ユーザーが処理要求の指示に用いたアプリが動作するＵＩ環境へメッセージ画面を表示するための処理を示す。このフローチャートの動作主体は、グラフィックスドライバ２２０２である。本処理は、実施例１のシステムにおける図７のメッセージ画面を表示するためのＵＩ制御部２１１４の処理に代わって実行される。
【０１２７】
Ｓ１５０１で、グラフィックスドライバ２２０２は、スプーラ２２０１から受け取った印刷に関する情報５０００のアプリ情報５００１を参照し、いずれのＵＩ環境のアプリケーションで周辺装置への処理要求が指示されたかを判断する。ここでは、デスクトップＵＩ３０００で印刷指示されたかが判断される。デスクトップＵＩ３０００上のデスクトップアプリ２１１１で印刷指示が行われたと判断された場合にはＳ１５０２に進み、タッチパネルＵＩ４０００上のタッチパネルアプリ２１２１で印刷指示が行われたと判断された場合にはＳ１５０３に進む。Ｓ１５０２で、グラフィックスドライバ２２０２は、デスクトップＵＩ環境への表示処理を実行し、その後、本処理を終了する。Ｓ１５０３で、グラフィックスドライバ２２０２は、タッチパネルＵＩ環境への表示処理を実行し、その後、本処理を終了する。
【０１２８】
以下、デスクトップ用表示部の表示処理とタッチパネルＵＩ用表示部の表示処理を、図１６を用いて説明する。
【０１２９】
図１６（ａ）は、Ｓ１５０１の判断結果に基づく、デスクトップＵＩ環境へのメッセージ画面３３００の表示制御の処理を説明するためのフローチャートを示す。
【０１３０】
Ｓ１６０１で、グラフィックスドライバ２２０２は、表示用タッチパネルディスプレイ１０６上において、現在提供（表示）されているＵＩ環境を判断する。表示用タッチパネルディスプレイ１０６上に、デスクトップＵＩ３０００が表示されていると判断された場合にはＳ１６０２に進み、タッチパネルＵＩ４０００が表示されていると判断された場合にはＳ１６０４に進む。Ｓ１６０４で、グラフィックスドライバ２２０２は、表示用タッチパネルディスプレイ１０６上へ表示されるＵＩ環境をデスクトップＵＩ３０００に切り替えるようにＯＳに依頼して、Ｓ１６０２の処理に進む。ここで、Ｓ１６０２及びＳ１６０３の処理は、図１３で説明した１３０２及び１３０４と同様の処理であるため、詳細な説明は省略する。その後、グラフィックスドライバ２２０２は、本処理を終了する。
【０１３１】
図１６（ｂ）は、Ｓ１５０１の判断結果に基づく、タッチパネルＵＩ環境へのメッセージ画面４７００の表示制御の処理を説明するためのフローチャートを示す。
【０１３２】
Ｓ１６１１で、グラフィックスドライバ２２０２は、表示用タッチパネルディスプレイ１０６上において、現在提供（表示）されているＵＩ環境を判断する。表示用タッチパネルディスプレイ１０６上に、タッチパネルＵＩ４０００が表示されていると判断された場合にはＳ１６１２に進み、デスクトップＵＩ３０００が表示されていると判断された場合にはＳ１６１４に進む。Ｓ１６１４で、グラフィックスドライバ２２０２は、表示用タッチパネルディスプレイ１０６上へ表示されるＵＩ環境をタッチパネルＵＩ４０００に切り替えるようにＯＳに依頼して、Ｓ１６１２の処理に進む。ここで、Ｓ１６１２及びＳ１６１３の処理は、図１３で説明した１３０３及び１３０４と同様の処理であるため、詳細な説明は省略する。その後、グラフィックスドライバ２２０２は、本処理を終了する。
【０１３３】
本実施例で説明したように、実施例１〜３で説明したデスクトップＵＩ３０００とタッチパネルＵＩ４０００それぞれにメッセージ画面を表示するＯＳの仕組みを前提としなくても、共通ストレージ１２００を利用することで、同様な機能を提供することが可能である。
【０１３４】
＜応用例１＞
実施例１〜４では、複数のＵＩ環境を排他的に提供するＯＳにおいて、例えば、封筒印刷などが設定された際のガイド表示を適切な環境に提供するための方法について述べた。しかしながら、このような周辺装置での操作手順をユーザーが覚えてしまえば、このようなメッセージ画面の表示を行わない方がよい場合もあり得る。
【０１３５】
そこで、以下、実施例５〜７では、このメッセージ画面の表示を適切に省略するための方法を説明する。なお、実施例５〜７に機器構成やその処理内容などについて、上述した実施例と重複する部分に関してはその詳細な説明を省略する。
【０１３６】
また、実施例５〜７での情報処理装置１００上で動作するＯＳ２０００などの機能に対応するソフトウェアモジュールの構成例については、図２で説明した構成に加え、図１２で説明した共通ストレージ１２００を追加したものである。
【０１３７】
＜実施例５＞
本実施例では、メッセージ画面の「今後、このメッセージを表示しない」のチェックの有無も考慮して、現在表示中のＵＩ環境を考慮してメッセージ画面の表示制御を行う処理について説明する。
【０１３８】
図１７は、各ＵＩ環境の表示部（デスクトップＵＩ用表示部２３００またはタッチパネルＵＩ用表示部２４００）がメッセージ画面の表示要求を受けた際の処理を説明するためのフローチャートである。
【０１３９】
デスクトップＵＩ用表示部２３００とタッチパネルＵＩ用表示部２４００がこの表示要求を受けるタイミングについては、図６（ｂ）〜（ｅ）と同様であるため、詳細な説明は省略する。以下、デスクトップＵＩ用表示部２３００の処理について詳細に説明する。タッチパネルＵＩ用表示部２４００の処理については、以下の説明においてデスクトップＵＩ用表示部２３００をタッチパネルＵＩ用表示部２４００と読みかえればよい。
【０１４０】
Ｓ１７０１で、デスクトップＵＩ用表示部２３００はメッセージ画面の表示要求を受け、メッセージ画面を表示する。続いて、Ｓ１７０２で、ユーザーのメッセージ画面に対する操作に基づく応答を待つ。
【０１４１】
Ｓ１７０３で、ユーザーからの応答があると、その操作内容として、図３（ｂ）で示す「今後、このメッセージを表示しない」のチェック欄３３０３へのチェックがされている（有効）かどうかを判定する。有効になっていた場合にはＳ１７０５に進み、そうでない場合にはＳ１７０４に進む。Ｓ１７０５で、デスクトップＵＩ用表示部２３００は、「今後、このメッセージを表示しない」のチェック欄３３０３へのチェックが有効であることを示す情報を共通ストレージ１２００に書き込む。Ｓ１７０４で、デスクトップＵＩ用表示部２３００はメッセージ画面を閉じて、本処理を終了する。
【０１４２】
図１８は、実施例５の現在表示中のＵＩ環境へのメッセージ画面の表示制御処理を説明するためのフローチャートを示す。このフローチャートの動作主体は、ここではＯＳのモジュールの１つであるＵＩ制御部２１１４として説明するが、これに限らず、グラフィックスドライバ２２０２で実施してもよい。なお、図１８に示す処理は、実施例１の図７を用いて説明した処理と置き換えられ実行される。
【０１４３】
本処理の特徴となるＳ１８２０及びＳ１８２１では、前述のＳ１７０５での書き込み情報に従う判定が行われる。Ｓ１８０１〜Ｓ１８０９は、図７のＳ７０１〜Ｓ７０９と同様の処理のためその説明を省略する。
【０１４４】
Ｓ１８２０で、ＵＩ制御部２１１４は、共通ストレージ１２００を参照し、「今後、このメッセージを表示しない」のチェック欄３３０３へのチェックが有効であることを示す情報の有無を判定する。有効であった場合（Ｓ１８２０−Ｙｅｓ）にはＳ１８０３に進み、チェックが有効であることを示す情報の書き込みが無かった場合（Ｓ１８２０−Ｎｏ）にはＳ１８０２に進み、メッセージ画面３３００の表示要求を行う。
【０１４５】
Ｓ１８２１で、ＵＩ制御部２１１４は、共通ストレージ１２００を参照し、「今後、このメッセージを表示しない」のチェック欄４７０３へのチェックが有効であることを示す情報の有無を判定する。有効であった場合（Ｓ１８２１−Ｙｅｓ）にはＳ１８０３に進み、チェックが有効であることを示す情報の書き込みが無かった場合（Ｓ１８２１−Ｎｏ）にはＳ１８０４に進む。
【０１４６】
Ｓ１８２０−Ｙｅｓまたは、Ｓ１８２１−Ｙｅｓの後に、Ｓ１８０３に処理が進んだ場合には、ＵＩ制御部２１１４は、グラフィックスドライバ２２０２へ印刷開始ボタンがユーザーにより押下されたと同等の通知を行うことになる。これにより、メッセージ画面の表示を省略して、グラフィックスドライバ２２０２が印刷データを生成するなどの処理を開始することができる。
【０１４７】
＜実施例６＞
本実施例では、メッセージ画面の「今後、このメッセージを表示しない」のチェックの有無を考慮して、ユーザーが周辺装置へ処理要求を指示した際に利用したアプリが動作するＵＩ環境へ該画面の表示制御を行う処理について説明する。
【０１４８】
図１９に、実施例６のデスクトップＵＩ環境へのメッセージ画面の表示制御の処理を説明するためのフローチャートを示す。本処理では、印刷実行の指示に用いたアプリが動作するＵＩ環境へメッセージ画面を表示するための処理を示す。このフローチャートの動作主体は、ＯＳのモジュールの１つであるＵＩ制御部２１１４として説明するが、これに限らず、グラフィックスドライバ２２０２で実施してもよい。なお、図１９に示す処理は、図９を用いて説明した処理と置き換えられ実行される。
【０１４９】
本処理の特徴となるＳ１９２０及びＳ１９２１では、前述のＳ１７０５での書き込み情報に従う判定が行われる。Ｓ１９０１〜Ｓ１９０９は、図９のＳ９０１〜Ｓ９０９と同様の処理のためその説明を省略する。
【０１５０】
Ｓ１９２０で、ＵＩ制御部２１１４は、共通ストレージ１２００を参照し、「今後、このメッセージを表示しない」のチェック欄３３０３へのチェックが有効であることを示す情報の有無を判定する。有効であった場合（Ｓ１９２０−Ｙｅｓ）にはＳ１９０３に進み、チェックが有効であることを示す情報の書き込みが無かった場合（Ｓ１９２０−Ｎｏ）にはＳ１９０２に進み、メッセージ画面３３００の表示要求を行う。
【０１５１】
Ｓ１９２１で、ＵＩ制御部２１１４は、共通ストレージ１２００を参照し、「今後、このメッセージを表示しない」のチェック欄４７０３へのチェックが有効であることを示す情報の有無を判定する。有効であった場合（Ｓ１９２１−Ｙｅｓ）にはＳ１９０３に進み、チェックが有効であることを示す情報の書き込みが無かった場合（Ｓ１９２１−Ｎｏ）にはＳ１９０４に進む。
【０１５２】
Ｓ１９２０−Ｙｅｓまたは、Ｓ１９２１−Ｙｅｓの後に、Ｓ１９０３に処理が進んだ場合には、ＵＩ制御部２１１４は、グラフィックスドライバ２２０２へ印刷開始ボタンがユーザーにより押下されたと同等の通知を行うことになる。これにより、メッセージ画面の表示を省略して、グラフィックスドライバ２２０２が印刷データを生成するなどの処理を開始することができる。
【０１５３】
図２０に、実施例６のタッチパネルＵＩ環境へのメッセージ画面の表示制御の処理を説明するためのフローチャートを示す。本処理では、印刷実行の指示に用いたアプリが動作するＵＩ環境へメッセージ画面を表示するための処理を示す。このフローチャートの動作主体は、ＯＳのモジュールの１つであるＵＩ制御部２１１４として説明するが、これに限らず、グラフィックスドライバ２２０２で実施してもよい。なお、図２０に示す処理は、図１０を用いて説明した処理と置き換えられ実行される。
【０１５４】
本処理の特徴となるＳ２０２０及びＳ２０２１では、前述のＳ１７０５での書き込み情報に従う判定が行われる。Ｓ２００１〜Ｓ２０１３は、図１０のＳ１００１〜Ｓ１０１３と同様の処理のためその説明を省略する。
【０１５５】
Ｓ２０２０で、ＵＩ制御部２１１４は、共通ストレージ１２００を参照し、「今後、このメッセージを表示しない」のチェック欄４７０３へのチェックが有効であることを示す情報の有無を判定する。有効であった場合（Ｓ２０２０−Ｙｅｓ）にはＳ２０１７に進み、チェックが有効であることを示す情報の書き込みが無かった場合（Ｓ２０２０−Ｎｏ）にはＳ２００２に進む。
【０１５６】
Ｓ２０２１で、ＵＩ制御部２１１４は、共通ストレージ１２００を参照し、「今後、このメッセージを表示しない」のチェック欄３３０３へのチェックが有効であることを示す情報の有無を判定する。有効であった場合（Ｓ２０２１−Ｙｅｓ）にはＳ２０１７に進み、チェックが有効であることを示す情報の書き込みが無かった場合（Ｓ２０２１−Ｎｏ）にはＳ２００９に進む。
【０１５７】
Ｓ２０２０−Ｙｅｓまたは、Ｓ２０２１−Ｙｅｓの後に、Ｓ２０１７に処理が進んだ場合には、ＵＩ制御部２１１４は、グラフィックスドライバ２２０２へ印刷開始ボタンがユーザーにより押下されたと同等の通知を行うことになる。これにより、メッセージ画面の表示を省略して、グラフィックスドライバ２２０２が印刷データを生成するなどの処理を開始することができる。
【０１５８】
＜実施例７＞
本実施例では、メッセージ画面の「今後、このメッセージを表示しない」のチェックの有無を考慮して、メッセージ画面を表示可能なＵＩ環境へ該画面の表示制御を行う処理について説明する。
【０１５９】
図２１は、実施例７の表示制御処理を説明するためのフローチャートを示す。このフローチャートの動作主体は、ここではＯＳのモジュールの１つであるＵＩ制御部２１１４として説明するが、これに限らず、グラフィックスドライバ２２０２で実施してもよい。なお、図２１に示す処理は、図１１を用いて説明した処理と置き換えられ実行される。本処理は、図１１で説明した処理と同様のため、異なる部分のみを説明する。
【０１６０】
Ｓ２１０３で、ＵＩ制御部２１１４は、実施例５〜６のいずれかで説明した処理を行う。また、Ｓ２１０５では、図１９に示す処理を実行する。また、Ｓ２１０６では、図２０に示す表示処理を実行する。
【０１６１】
上記説明したように、本実施例では、各ＵＩ環境用の表示部の能力などと、メッセージ画面の「今後、このメッセージを表示しない」のチェックの有無と、を考慮して、適切なＵＩ環境にメッセージ画面を表示することができる。
【０１６２】
＜応用例２＞
上述の実施例で説明した処理を行う機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵまたはＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行することによっても、本発明の目的が達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することとなり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１６３】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。
【０１６４】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施例の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施例の機能が実現される場合も含まれることは言うまでもない。
【０１６５】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図１】
2014186486.tif 000003
【図２】
2014186486.tif 000004
【図３】
2014186486.tif 000005
【図４】
2014186486.tif 000006
【図５】
2014186486.tif 000007
【図６】
2014186486.tif 000008
【図７】
2014186486.tif 000009
【図８】
2014186486.tif 000010
【図９】
2014186486.tif 000011
【図１０】
2014186486.tif 000012
【図１１】
2014186486.tif 000013
【図１２】
2014186486.tif 000014
【図１３】
2014186486.tif 000015
【図１４】
2014186486.tif 000016
【図１５】
2014186486.tif 000017
【図１６】
2014186486.tif 000018
【図１７】
2014186486.tif 000019
【図１８】
2014186486.tif 000020
【図１９】
2014186486.tif 000021
【図２０】
2014186486.tif 000022
【図２１】
2014186486.tif 000023