以下、図面を参照して、本発明を実施するための形態の一例について詳細に説明する。
[第1の実施形態]
図1は、第1の実施形態に係る画像形成装置10及びサーバ装置40を含むネットワークシステムの構成の一例を示すブロック図である。
図1に示すように、本実施形態に係る画像形成装置10は、制御部12と、記憶部14と、表示部16と、操作部18と、画像形成部20と、原稿読取部22と、通信部24と、を備える。画像形成装置10は、情報処理装置の一例である。なお、本実施形態では、画像形成装置10を例示して説明するが、例えば、タブレット端末、スマートフォン、パーソナルコンピュータ(PC)等にも同様に適用可能である。
制御部12は、CPU(Central Processing Unit)12A、ROM(Read Only Memory)12B、RAM(Random Access Memory)12C、及び入出力インターフェース(I/O)12Dを備えており、これら各部がバスを介して各々接続されている。
I/O12Dには、記憶部14と、表示部16と、操作部18と、画像形成部20と、原稿読取部22と、通信部24と、を含む各機能部が接続されている。これらの各機能部は、I/O12Dを介して、CPU12Aと相互に通信可能とされる。
制御部12は、画像形成装置10の全体の動作を制御するメイン制御部の一部として構成されてもよい。制御部12の各ブロックの一部又は全部には、例えば、LSI(Large Scale Integration)等の集積回路又はIC(Integrated Circuit)チップセットが用いられる。上記各ブロックに個別の回路を用いてもよいし、一部又は全部を集積した回路を用いてもよい。上記各ブロック同士が一体として設けられてもよいし、一部のブロックが別に設けられてもよい。また、上記各ブロックのそれぞれにおいて、その一部が別に設けられてもよい。制御部12の集積化には、LSIに限らず、専用回路又は汎用プロセッサを用いてもよい。
記憶部14としては、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フラッシュメモリ等が用いられる。記憶部14には、更新処理プログラム14Aが記憶される。なお、この更新処理プログラム14Aは、ROM12Bに記憶されていてもよい。
更新処理プログラム14Aは、例えば、画像形成装置10に予めインストールされていてもよい。更新処理プログラム14Aは、不揮発性の記憶媒体に記憶して、又はネットワークを介して配布して、画像形成装置10に適宜インストールすることで実現してもよい。なお、不揮発性の記憶媒体の例としては、CD-ROM、光磁気ディスク、HDD、DVD-ROM、フラッシュメモリ、メモリカード等が想定される。
一方、表示部16には、例えば、液晶ディスプレイ(LCD:Liquid Crystal Display)や有機EL(Electro Luminescence)ディスプレイ等が用いられる。表示部16は、タッチパネルを一体的に有している。操作部18には、テンキーやスタートキー等の各種の操作キーが設けられている。表示部16及び操作部18は、画像形成装置10のユーザから各種の指示を受け付ける。この各種の指示には、例えば、原稿の読み取りを開始させる指示や、原稿のコピーを開始させる指示等が含まれる。表示部16は、ユーザから受け付けた指示に応じて実行された処理の結果や、処理に対する通知等の各種の情報を表示する。
表示部16は、画像形成装置10が起動すると、初期画面として、一例として、図2に示すホーム画面50を表示させる。
図2に示すように、本実施形態に係るホーム画面50は、画像形成装置10が備える各種機能(コピー機能、スキャン機能、ファクシミリ機能、電子メール機能等)をユーザが選択操作するための画面であり、操作画面の一例である。
本実施形態に係るホーム画面50には、ホーム画面50の表示対象とする言語として、例えば、英語が指定されている。ホーム画面50の表示対象とする言語は、ユーザがホーム画面50の言語指定ボタン52を押圧して所定の操作をすることで指定することができる。
例えば、ユーザがホーム画面50の言語指定ボタン52を押圧すると、図3に示す言語指定画面50Aに切り替わる。
図3に示すように、本実施形態に係る言語指定画面50Aには、画像形成装置10に指定可能な言語の一覧と、「NG」ボタン58Aと、「OK」ボタン58Bと、が表示される。ユーザが、言語指定画面50Aの一覧の中から所望の言語を指定し、「OK」ボタン58Bを押圧すると、ホーム画面50の表示対象とする言語が、指定された言語に切り替わった状態でホーム画面50に戻る。なお、ユーザが「NG」ボタン58Aを押圧すると、ホーム画面50の表示対象とする言語の切り替えは実行されずにホーム画面50に戻る。
一方、本実施形態に係るホーム画面50には、コピー機能を実現するアプリケーションプログラムに対応付けられたアイコン54C及びラベル名56Cが表示されている。アイコン54C及びラベル名56Cの組み合わせは、コピー機能を実現するアプリケーションプログラムに対応付けられた情報に基づいて表示される。ここでいう情報とは、アイコン54Cを示す画像情報、及び、ラベル名56Cを示す文字情報を含む情報である。なお、各図におけるアイコンの具体的な画像の図示は省略する。ユーザがアイコン54Cを押圧すると、コピー機能に関する操作画面に切り替わる。
同様に、アイコン54S及びラベル名56Sの組み合わせは、スキャン機能を実現するアプリケーションプログラムに対応付けられた情報に基づいて表示される。アイコン54F及びラベル名56Fの組み合わせは、ファクシミリ機能を実現するアプリケーションプログラムに対応付けられた情報に基づいて表示される。アイコン54E及びラベル名56Eの組み合わせは、電子メール機能を実現するアプリケーションプログラムに対応付けられた情報に基づいて表示される。アイコン54R及びラベル名56Rの組み合わせは、アプリケーションプログラム登録機能を実現するアプリケーションプログラムに対応付けられた情報に基づいて表示される。なお、「App Reg」は、アプリケーションプログラム登録機能を表すものとする。
アプリケーションプログラムとは、例えば、画像形成装置10が予め備える各種機能を実現したり、当該各種機能を拡張したり、画像形成装置10に新たな機能を追加したり、することを目的としたプログラムである。アプリケーションプログラムは、例えば、サーバ装置40からダウンロードして画像形成装置10にインストールすることが可能である。以下、アプリケーションプログラムを単にアプリと呼び、アプリケーションプログラム登録機能をアプリ登録機能と呼ぶものとする。ユーザがアイコン54R(以下、アプリ登録アイコン54Rという。)を押圧し、所定の操作を行うことにより、所望のアプリをサーバ装置40からダウンロードすることが可能となる。
ここで、上記の情報をホーム画面50に迅速に表示するために、この情報はCPU12Aが備えるキャッシュメモリ36に予め格納しておくことが望ましい。なお、キャッシュメモリ36には、一般的なDRAM(Dynamic RAM)よりも高速に動作するSRAM(Static RAM)を適用することが望ましい。
一方、図1に示す原稿読取部22は、画像形成装置10の上部に設けられた図示しない自動原稿送り装置の給紙台に置かれた原稿を1枚ずつ取り込み、取り込んだ原稿を光学的に読み取って画像情報を得る。あるいは、原稿読取部22は、プラテンガラス等の原稿台に置かれた原稿を光学的に読み取って画像情報を得る。
画像形成部20は、原稿読取部22による読み取りによって得られた画像情報、又は、ネットワークNを介して接続された外部のPC(Personal Computer)等から得られた画像情報に基づく画像を、紙等の記録媒体に形成する。なお、本実施形態においては、画像を形成する方式として、電子写真方式を例示して説明するが、インクジェット方式等の他の方式を採用してもよい。
画像を形成する方式が電子写真方式の場合、画像形成部20は、感光体ドラム、帯電部、露光部、現像部、転写部、及び定着部を含む。帯電部は、感光体ドラムに電圧を印加して感光体ドラムの表面を帯電させる。露光部は、帯電部で帯電された感光体ドラムを画像情報に応じた光で露光することにより感光体ドラムに静電潜像を形成する。現像部は、感光体ドラムに形成された静電潜像をトナーにより現像することで感光体ドラムにトナー像を形成する。転写部は、感光体ドラムに形成されたトナー像を記録媒体に転写する。定着部は、記録媒体に転写されたトナー像を加熱及び加圧により定着させる。
通信部24は、LAN(Local Area Network)、WAN(Wide Area Network)等のネットワークNに接続されており、サーバ装置40とネットワークNを介して通信する。この例の場合、通信部24とネットワークNとは有線で接続されるが、無線で接続してもよい。
サーバ装置40には、例えば、汎用的なPC等が適用される。サーバ装置40は、上述したアプリに関する各種情報を格納し、画像形成装置10からのアクセスに対応して、アプリに関する各種情報を提供する。アプリに関する各種情報とは、アプリの本体情報や属性情報、アプリに対応付けられた表示用の情報等が含まれる情報である。
ところで、画像形成装置の中には、本実施形態に係る画像形成装置10のように、日本語や英語等の複数の言語からホーム画面の表示対象とする1つの言語を選択的に指定できるものがある。この種の画像形成装置では、従来、画像形成装置に登録されたアプリに対応付けられた情報の表示を更新する場合、複数の言語の各々に対応する複数の更新情報を取得してからホーム画面の表示対象とする1つの言語に対応する更新情報により情報の表示が更新される。従って、複数の言語の各々に対応する複数の更新情報を取得してからでないと、アプリに対応付けられた情報の表示が更新されないため、この情報の表示が更新されるまで比較的長い時間がかかる場合がある。
この問題に対応するため、本実施形態に係るCPU12Aは、記憶部14に記憶されている更新処理プログラム14AをRAM12Cに書き込んで実行することにより、本実施形態に係る表示制御部30、取得部32、及び更新部34として機能する。
キャッシュメモリ36には、複数の言語の各々により表される複数の情報が記憶される。複数の情報の各々は、対応するアプリに予め対応付けられている。キャッシュメモリ36は、情報記憶部の一例である。なお、ここでいう情報とは、アプリに対応付けられたラベル名を示す文字情報、及び、アプリに対応付けられたアイコンを示す画像情報の少なくとも一方を含む情報である。以下、情報として、アプリに対応付けられたラベル名を示す文字情報を例示して説明するが、アプリに対応付けられたアイコンを示す画像情報でも同様に適用可能である。
表示制御部30は、キャッシュメモリ36に記憶されている複数のラベル名を示す文字情報からホーム画面50の表示対象とする言語として指定されている言語で表される文字情報を選択してホーム画面50に表示させる制御を行う。一例として、ホーム画面50の指定言語が「English」(英語)であれば、ホーム画面50には英語のラベル名が表示される。
取得部32は、サーバ装置40から、ホーム画面50に表示されているラベル名を示す文字情報の更新情報を取得する。ここで取得される更新情報とは、一例として、ホーム画面50に表示されているラベル名が英語表示の場合、英語表示の新たなラベル名を示す文字情報である。
更新部34は、取得部32により取得された更新情報に基づいて、ラベル名を示す文字情報の表示を更新する。つまり、ホーム画面50に表示されているラベル名が英語表示の場合、英語表示の新たなラベル名に表示が更新される。この場合、英語以外の言語についてラベル名が更新されているか否かのチェックは行わない。
また、取得部32は、更新部34によりラベル名の表示が更新された後に、サーバ装置40から、ホーム画面50で指定される言語とは異なる言語で表されるラベル名の更新情報を取得する。ここで取得される更新情報とは、一例として、日本語表示の新たなラベル名を示す文字情報や、ドイツ語表示の新たなラベル名を示す文字情報等である。つまり、ホーム画面50で指定される言語の更新情報によりラベル名の表示の更新を行った後に、当該言語以外の言語で表されるラベル名の更新情報を取得する。
本第1の実施形態によれば、複数の言語の各々に対応する複数の更新情報を取得してからホーム画面50の表示対象とする1つの言語に対応する更新情報によりラベル名の表示を更新する場合と比べ、ラベル名の表示が更新されるまでの時間が短縮される。
本第1の実施形態に係るアプリ更新処理の具体例を説明する前に、画像形成装置10によるアプリ登録処理の概要について説明する。なお、以下で説明するアプリ登録処理は、一例であり、これに限定されるものではない。
ユーザが図2に示すアプリ登録アイコン54Rを押圧すると、表示制御部30が、図4に示すアプリ選択画面50Bを表示部16に表示させる制御を行う。
図4に示すように、アプリ選択画面50Bは、画像形成装置10にインストール可能なアプリの一覧を表示し、ユーザに選択させるための画面である。
ユーザがアプリ選択画面50Bの一覧から所望のアプリを選択すると、取得部32は、選択したアプリに関する登録用データをサーバ装置40からダウンロードしてインストールする処理を行う。アプリに関する登録用データの一例を図5に示す。
図5に示す登録用データは、図4に示す「A1」のアプリに対応するデータを示す。この登録用データは、アプリのアプリケーションIDを示す「A1」、アプリが持つ固有のネームを示す「E_COPY」、及びアプリ本体の取得先となるURL(Uniform Resource Locator)を示す「http://AAAA」、の各情報を含む。さらに、登録用データは、アプリに対応するアイコンを示す画像情報の取得先となるURL(以下、アイコンURL)を示す「http://XXXX」、及び、アプリに対応するラベル名を示す文字情報の取得先となるURL(以下、ラベル名URL)を示す「http://YYYY」、の各情報を含む。なお、アプリに対応する言語が複数である場合、複数の言語の各々に対してラベル名URLが設定されているものとする。同様に、複数の言語の各々に対してアイコンURLが設定されていてもよい。
上記のアプリ本体の取得先、画像情報の取得先、及び文字情報の取得先は、例えば、1つのサーバ装置40としてもよいし、複数のサーバ装置40としてもよい。また、サーバ装置40は、画像形成装置10の外部のサーバ装置に限定されず、画像形成装置10に内蔵されたサーバ装置としてもよい。
取得部32は、インストールされたアプリの登録用データに基づいて、アプリの登録処理を行う。すなわち、取得部32は、アイコンURLにアクセスし、アプリに対応付けられているアイコンを示す画像情報を取得し、取得したアイコンを示す画像情報をキャッシュメモリ36に格納する。同様に、取得部32は、ラベル名URLにアクセスし、カレント言語に対応するラベル名を示す文字情報を取得し、取得したラベル名を示す文字情報をキャッシュメモリ36に格納する。ここでいうカレント言語とは、ホーム画面50の表示対象として指定されている言語を意味し、例えば、「English」である。なお、カレント言語に対応するラベル名を示す文字情報をホーム画面50の空き領域に表示させた後に、カレント言語以外の言語についてラベル名を示す文字情報が取得される。例えば、「English」に対応するラベル名を表示させた後に、さらに、「日本語」に対応するラベル名を示す文字情報が取得され、キャッシュメモリ36に格納される。
図6は、本実施形態に係るキャッシュメモリ36に格納されるアイコン及びラベル名の情報の一例を示す模式図である。
図6に示すように、キャッシュメモリ36には、アプリケーションIDが「A1」のアプリについて、「AAA.png」というアイコンファイル名を持つアイコンを示す画像情報が格納される。さらに、キャッシュメモリ36には、アプリケーションIDが「A1」のアプリについて、「EASY COPY」というラベル名(英語)を示す文字情報、及び、「簡単コピー」というラベル名(日本語)を持つ文字情報が格納される。
図7は、本実施形態に係るホーム画面50に表示された情報の一例を示す正面図である。
図7の例に示すように、ホーム画面50の空き領域には、キャッシュメモリ36に格納されている情報に基づいて、アプリに対応付けられたアイコン60A(以下、アプリ対応アイコン60Aという。)が表示される。同様に、アプリ対応アイコン60Aの近傍には、キャッシュメモリ36に格納されている情報に基づいて、カレント言語に対応しかつアプリに対応付けられたラベル名62A(以下、アプリ対応ラベル名62Aという。)が表示される。
図8は、本実施形態に係るホーム画面50に表示された情報の他の例を示す正面図である。
例えば、ユーザが図2に示す言語指定ボタン52を押圧し、ホーム画面50の指定言語を「English」から「日本語」に切り替えた場合、図8に示すように、ホーム画面50での各情報の表示が「日本語」に切り替わる。この場合、英語表示のアプリ対応ラベル名62Aは、日本語表示のアプリ対応ラベル名62Bに切り替わる。なお、この例では、アプリ対応アイコン60Aは各言語で共通のため変更されない。
なお、上記では、文字情報であるラベル名を対象としたが、図9に示すように、アイコン中に、言語が分かるような文字列を示す画像を含めてもよい。例えば、「English」の場合、「EASY COPY」という文字列の画像をアイコン中に含める。また、「日本語」の場合、「簡単コピー」という文字列の画像をアイコン中に含めてもよい。
次に、図10を参照して、本第1の実施形態に係る画像形成装置10の作用を説明する。なお、図10は、本第1の実施形態に係る更新処理プログラム14Aの処理の流れの一例を示すフローチャートである。
CPU12Aは、ユーザによるカレント言語の切り替え、ログイン、ログアウト等の事象を検知すると、記憶部14に記憶されている更新処理プログラム14AをRAM12Cに書き込んでアプリ更新処理を実行する。
まず、図10のステップ100では、更新部34が、ホーム画面50の表示対象とする言語として指定されている言語の種類をカレント言語として取得する。なお、ホーム画面50の表示対象として指定されている言語の種類を示す情報は、一例として、記憶部14に記憶されているものとする。
ステップ102では、更新部34が、ホーム画面50に表示されているアイコン及びラベル名の組み合わせに対応するアプリIDをリスト化し、アプリIDリストを生成する。
ステップ104では、取得部32が、ステップ102で生成されたアプリIDリストに基づいて、リストの先頭のアプリIDにより、一例として、図5に示す登録用データを参照して、アイコンURLにアクセスし、アイコンを示す画像情報を取得する。
ステップ106では、取得部32が、ステップ104で取得したアイコンを示す画像情報がキャッシュメモリ36に格納されている画像情報と異なるか否か、つまり、更新されているか否かを判定する。取得した画像情報がキャッシュメモリ36に格納されている画像情報と異なると判定した場合(肯定判定の場合)、ステップ108に移行する。一方、取得した画像情報がキャッシュメモリ36に格納されている画像情報と同一と判定した場合(否定判定の場合)、ステップ110に移行する。なお、更新の判定には、例えば、ETag(エンティティタグ)と呼ばれる技術が用いられる。ETagとは、HTTP(Hypertext Transfer Protocol)におけるレスポンスヘッダの1つで、リソースに対応付けられたETagの値を比較することで、当該リソースの更新の有無が判定される。
ステップ108では、取得部32が、キャッシュメモリ36に格納されているアイコンを示す画像情報を、ステップ104で取得したアイコンを示す画像情報に差し替える。これにより、キャッシュメモリ36に格納されているアイコンを示す画像情報が新しいアイコンを示す画像情報に更新される。
ステップ110では、取得部32が、ステップ102で生成されたアプリIDリストに基づいて、リストの先頭のアプリIDにより図5に示す登録用データを参照し、カレント言語に対応するラベル名URLにアクセスする。そして、取得部32は、アクセスした取得先からカレント言語のラベル名を示す文字情報を取得する。
ステップ112では、取得部32が、ステップ110で取得したラベル名を示す文字情報がキャッシュメモリ36に格納されている文字情報と異なるか否か、つまり、更新されているか否かを判定する。取得した文字情報がキャッシュメモリ36に格納されている文字情報と異なると判定した場合(肯定判定の場合)、ステップ114に移行する。一方、取得した文字情報がキャッシュメモリ36に格納されている文字情報と同一と判定した場合(否定判定の場合)、ステップ116に移行する。なお、更新の判定は、例えば、String(文字列)を比較することで行われる。
ステップ114では、取得部32が、キャッシュメモリ36に格納されているラベル名を示す文字情報を、ステップ110で取得したラベル名を示す文字情報に差し替える。これにより、キャッシュメモリ36に格納されているラベル名を示す文字情報が新しいラベル名を示す文字情報に更新される。
ステップ116では、取得部32が、キャッシュメモリ36に格納されている、アイコンを示す画像情報及びラベル名を示す文字情報の少なくとも一方のキャッシュ状態が変化したか否かを判定する。キャッシュ状態が変化したと判定した場合(肯定判定の場合)、ステップ118に移行し、キャッシュ状態が変化していないと判定した場合(否定判定の場合)、ステップ120に移行する。
ステップ118では、更新部34が、取得部32の判定結果を受けて、キャッシュ状態が変化したアイコンを示す画像情報及びラベル名を示す文字情報の少なくとも一方をキャッシュメモリ36から取得する。そして、更新部34は、キャッシュメモリ36から取得したアイコンを示す画像情報及びラベル名を示す文字情報の少なくとも一方に基づいて、ホーム画面50に表示中のアイコン及びラベル名の少なくとも一方の表示を更新し、ステップ120に移行する。
ステップ120では、取得部32が、アプリIDリストの最後のアプリIDまで到達したか否かを判定する。最後のアプリIDまで到達したと判定した場合(肯定判定の場合)、ステップ122に移行し、最後のアプリIDまで到達していないと判定した場合(否定判定の場合)、ステップ104に戻り処理を繰り返す。
次に、ステップ122では、取得部32が、一例として、図5に示す登録用データを参照し、カレント言語以外の言語のラベル名を示す文字情報を取得する。
ステップ124では、取得部32が、ステップ122で取得したラベル名を示す文字情報がキャッシュメモリ36に格納されている文字情報と異なるか否か、つまり、更新されているか否かを判定する。取得した文字情報がキャッシュメモリ36に格納されている文字情報と異なると判定した場合(肯定判定の場合)、ステップ126に移行する。一方、取得した文字情報がキャッシュメモリ36に格納されている文字情報と同一と判定した場合(否定判定の場合)、ステップ128に移行する。
ステップ126では、取得部32が、キャッシュメモリ36に格納されているラベル名を示す文字情報を、ステップ122で取得したラベル名を示す文字情報に差し替える。これにより、キャッシュメモリ36に格納されているラベル名を示す文字情報が新しいラベル名を示す文字情報に更新される。
ステップ128では、取得部32が、画像形成装置10でサポートしている全ての言語についてラベル名を示す文字情報を取得したか否かを判定する。全ての言語についてラベル名を示す文字情報を取得したと判定した場合(肯定判定の場合)、一連の処理を終了する。一方、全ての言語についてラベル名を示す文字情報を取得していないと判定した場合(否定判定の場合)、ステップ122に戻り処理を繰り返す。
なお、本実施形態に係るアプリ更新処理がカレント言語の切り替えにより開始された場合、表示制御部30は、切り替え後のカレント言語で表されるラベル名をホーム画面50に表示させる制御を行う。そして、取得部32は、サーバ装置40から、切り替え後のホーム画面50に表示されているラベル名の更新情報を取得する。つまり、カレント言語の切り替えをアプリ更新処理のトリガとした場合、切り替え後のカレント言語について、ステップ100からの一連の処理が行われる。
また、上記ステップ100〜ステップ120の処理中に、ユーザが言語指定ボタン52を押圧して操作し、カレント言語が再度切り替えられる場合がある。この場合、取得部32は、切り替え前のカレント言語について更新情報を取得してアプリ更新処理を行った後に、サーバ装置40から、切り替え後のカレント言語について更新情報を取得してアプリ更新処理を行う。
図11は、本実施形態に係るキャッシュメモリ36に格納されるアイコン及びラベル名の更新情報の一例を示す模式図である。
図11の例では、キャッシュメモリ36に格納されているラベル名(英語)の文字情報が、「EASY COPY」から「NEW EASY COPY」に更新される。また、キャッシュメモリ36に格納されているラベル名(日本語)の文字情報が、「簡単コピー」から「新簡単コピー」に更新される。
図12は、本実施形態に係るホーム画面50に表示された更新情報の一例を示す正面図である。
図12の例では、図7に示すホーム画面50に表示されていた「EASY COPY」が、キャッシュメモリ36に格納された更新情報に基づいて、新たなアプリ対応ラベル名62Cとしての「NEW EASY COPY」に更新されている。なお、新たなアプリ対応ラベル名62Cは、カレント言語に対応している。
すなわち、図11に示すラベル名(英語)の文字情報が更新された場合、図7に示すホーム画面50は、図12に示すホーム画面50の表示に更新される。一方、ラベル名(英語)の文字情報が更新されていない場合、図7に示すホーム画面50の表示は更新されずそのままとなる。
なお、異なる複数のアプリの各々に対応するラベル名の表示を更新する場合、キャッシュメモリ36は、各々が同一のアプリに予め対応付けられている複数のラベル名を示す文字情報の組を、異なる複数のアプリの各々に対応させて複数組記憶する。1組を構成する複数のラベル名を示す文字情報の各々は、複数の言語の各々により表される情報である。
表示制御部30は、キャッシュメモリ36に記憶され、かつ、特定のアプリに対応付けられた複数のラベル名を示す文字情報のうちホーム画面50のカレント言語で表される文字情報をラベル名としてホーム画面50に表示させる制御を行う。なお、特定のアプリとは、複数のアプリのうちのいずれかのアプリである。
取得部32は、サーバ装置40から、ホーム画面50に表示されているラベル名を示す文字情報の更新情報を取得する。
更新部34は、取得部32により取得された更新情報に基づいて、ホーム画面50に表示されているラベル名の表示を更新する。
この場合、取得部32は、更新部34により表示が更新された後に、サーバ装置40から、特定のアプリに対応付けられた複数のラベル名を示す文字情報のうちホーム画面50のカレント言語とは異なる言語で表される文字情報の更新情報を取得する。
本第1の実施形態によれば、ホーム画面50のカレント言語についてアプリに対応するアイコン及びラベル名の少なくとも一方の更新情報を取得し、取得した更新情報に基づいて、アイコン及びラベル名の少なくとも一方の表示を更新する。この更新により、複数の言語の各々に対応する複数の更新情報を取得してからアイコン及びラベル名の少なくとも一方の表示を更新する場合と比べ、アイコン及びラベル名の少なくとも一方の表示が更新されるまでの時間が短縮される。
[第2の実施形態]
図13は、第2の実施形態に係る画像形成装置11及びサーバ装置40を含むネットワークシステムの要部構成の一例を示すブロック図である。
図13に示すように、本第2の実施形態に係る画像形成装置11は、記憶部14、取得部32、更新部34、及びキャッシュメモリ36に加え、さらに、表示用キュー26を備える。なお、ここでは、CPU12A、RAM12C、更新処理プログラム14A、及び表示制御部30の図示は省略する。
上記第1の実施形態では、少なくとも1つのアプリを対象とし、ホーム画面50のカレント言語についてアプリに予め対応付けられた情報の更新情報が取得された場合に、取得された更新情報により当該情報の表示を個別に順次更新する。しかし、複数のアプリを対象とした場合、複数のアプリの各々に対応する複数の情報の表示が頻繁に更新され、ホーム画面50が見難くなる場合がある。
そこで、本第2の実施形態では、ホーム画面50における複数のアプリの各々に予め対応付けられている複数の情報の表示を個別に順次更新する場合と比べ、当該複数の情報の表示を更新する場合におけるホーム画面50の見易さを向上させる。
具体的には、キャッシュメモリ36には、各々が異なる複数のアプリの各々に予め対応付けられている複数の情報が記憶される。ここでいう複数の情報の各々は、例えば、ホーム画面50に指定されているカレント言語により表される情報である。複数の情報の各々は、第1の実施形態と同様に、アプリに対応付けられたラベル名を示す文字情報、及び、アプリに対応付けられたアイコンを示す画像情報の少なくとも一方を含む情報である。また、キャッシュメモリ36には、複数のアプリの各々に予め対応付けて、上記複数の情報の各々を、カレント言語とは異なる言語で表した情報が複数記憶される。以下、情報として、アプリに対応付けられたラベル名を示す文字情報を例示して説明するが、アプリに対応付けられたアイコンを示す画像情報でも同様に適用可能である。
表示制御部30は、キャッシュメモリ36に記憶されている複数のラベル名を示す文字情報をホーム画面50に表示させる制御を行う。
取得部32は、サーバ装置40から、ホーム画面50に表示されている複数のラベル名を示す文字情報の更新情報を取得する。
更新部34は、取得部32により取得された更新情報を表示用キュー26に格納し、予め定められた時間内に表示用キュー26に格納された更新情報によりホーム画面50の表示をまとめて更新する。なお、表示用キュー26は、例えば、CPU12Aに設けられる。
また、取得部32は、更新部34により複数のラベル名の表示がまとめて更新された後に、サーバ装置40から、ホーム画面50で指定されるカレント言語とは異なる言語で表されるラベル名を示す文字情報の更新情報を取得する。
なお、本実施形態に係るアプリ更新処理がカレント言語の切り替えにより開始された場合、表示制御部30は、各々が切り替え後のカレント言語で表される複数のラベル名をホーム画面50に表示させる制御を行う。そして、取得部32は、サーバ装置40から、切り替え後のホーム画面50に表示されている、切り替え後のカレント言語で表される複数のラベル名を示す文字情報の更新情報を取得する。
本第2の実施形態によれば、ホーム画面50における複数のアプリの各々に予め対応付けられている複数のラベル名の表示を個別に順次更新する場合と比べ、当該複数のラベル名の表示を更新する場合におけるホーム画面50の見易さが向上する。
一方、更新部34は、状態管理部34Aと、ホームアプリ管理部34Bと、コンパニオンアプリ管理部34Cと、を備える。状態管理部34Aは、画像形成装置11におけるログイン、ログアウト、リセット、カレント言語の切り替え等の状態を管理する。ホームアプリ管理部34Bは、ホーム画面50の表示を行うためのホームアプリを管理する。コンパニオンアプリ管理部34Cは、登録、削除、及び更新が行えるアプリをコンパニオンアプリとして管理する。
次に、図14及び図15を参照して、本第2の実施形態に係る画像形成装置11の作用を説明する。なお、図14は、本第2の実施形態に係る更新処理プログラム14Aの処理の流れの一例を示すフローチャートである。図15は、本第2の実施形態に係る表示更新ルーチンの一例を示すフローチャートである。
CPU12Aは、ユーザによるカレント言語の切り替え、ログイン、ログアウト等の事象を検知すると、記憶部14に記憶されている更新処理プログラム14AをRAM12Cに書き込んでアプリ更新処理を実行する。
なお、ステップ200〜ステップ216までの処理及びステップ220の処理は、上記第1の実施形態に係る図10で説明したステップ100〜ステップ116までの処理及びステップ120の処理と同様であるため、ここでの繰り返しの説明は省略する。
図14のステップ216において、取得部32が、キャッシュメモリ36に格納されている、アイコンを示す画像情報及びラベル名を示す文字情報の少なくとも一方のキャッシュ状態が変化したか否かを判定する。キャッシュ状態が変化したと判定した場合(肯定判定の場合)、ステップ218に移行する。
図14に示すステップ218では、表示更新処理として、図15に示すステップ300〜ステップ312の各処理が行われる。
図15のステップ300では、更新部34が、取得部32からキャッシュ状態が変化したアプリに関する通知を受け取り、ホーム画面50においてキャッシュ状態が変化したアプリを特定する。
図16は、本第2の実施形態に係るホーム画面50の画面遷移の一例を示す正面図である。
図16の上図に示すように、ホーム画面50には、複数のアプリの各々に対応して、アイコン及びラベル名の組み合わせ(以下、この組み合わせを便宜上アプリという。)が表示されている。ここでは、一例として、アプリ63が、キャッシュ状態が変化したアプリとして特定される。アプリ63は、更新前の状態であり、アプリ対応アイコン60B及びアプリ対応ラベル名62Dとの組み合わせとして表示される。
ステップ302では、更新部34が、ステップ300で特定したアプリに対応付けられた更新情報を、キャッシュメモリ36から取得し、表示用キュー26にセットする。図16の例では、アプリ63の更新情報が表示用キュー26にセットされる。
ステップ304では、更新部34が、予め定められた待機時間の残時間が有るか否かを判定する。ここでいう待機時間とは、表示用キュー26にセットされた更新情報によりホーム画面50の表示をまとめて更新するまでの時間を意味する。残時間が有ると判定した場合(肯定判定の場合)、ステップ204に戻り処理を繰り返す。一方、残時間が無いと判定した場合(否定判定の場合)、ステップ306に移行する。
ステップ306では、更新部34が、表示用キュー26に1つ以上の更新情報が有るか否かを判定する。表示用キュー26に1つ以上の更新情報が有ると判定した場合(肯定判定の場合)、ステップ308に移行する。一方、表示用キュー26に1つ以上の更新情報が無いと判定した場合(否定判定の場合)、ステップ312に移行する。
ステップ308では、更新部34が、表示用キュー26にセットされた更新情報によりホーム画面50の表示を更新する。一例として、図16の中図に示すように、アプリ63のアプリ対応アイコン60Bは、アプリ対応アイコン60Aに更新される。アプリ63のアプリ対応ラベル名62Dは、アプリ対応ラベル名62Eに更新される。
ステップ310では、更新部34が、表示用キュー26にセットされた更新情報をクリアし、ステップ312に移行する。
ステップ312では、更新部34が、表示用キュー26に新たな待機時間を設定し、図14のステップ220に移行する。
ステップ220では、取得部32が、アプリIDリストの最後のアプリIDまで到達したか否かを判定する。最後のアプリIDまで到達したと判定した場合(肯定判定の場合)、一連の処理を終了し、最後のアプリIDまで到達していないと判定した場合(否定判定の場合)、ステップ204に戻り処理を繰り返す。
なお、ステップ204からステップ218までの一連の処理を繰り返し、ステップ304で待機時間の残時間が無いと判定された場合、ステップ308にて再度ホーム画面50の表示が更新される。一例として、図16の下図に示すように、さらに3つのアプリに対応付けられた情報が更新される。つまり、アプリ63と同様に、アプリ64ではアプリ対応アイコン60A及びアプリ対応ラベル名62Fに更新される。アプリ65ではアプリ対応アイコン60A及びアプリ対応ラベル名62Gに更新される。アプリ66ではアプリ対応アイコン60A及びアプリ対応ラベル名62Hに更新される。
また、上記の図14及び図15に示すフローチャートでは、図10に示すステップ122からステップ128までの処理を省略しているが、これらステップ122からステップ128までの処理を、ステップ220の後で行うようにしてもよい。
次に、図17を参照して、更新部34が備える状態管理部34A、ホームアプリ管理部34B、及びコンパニオンアプリ管理部34Cについて説明する。なお、図17は、本第2の実施形態に係るアプリ更新処理の流れの一例を示すシーケンス図である。
図17のS11では、状態管理部34Aが、ホーム画面50におけるカレント言語の切り替わりがあったことをコンパニオンアプリ管理部34Cに通知する。
S12では、コンパニオンアプリ管理部34Cが、上記通知を受けて、状態管理部34Aから切り替え後のカレント言語を取得する。
S13では、コンパニオンアプリ管理部34Cが、ホーム画面50に表示されている複数のアプリの各々が持つアプリIDをリスト化し、アプリIDリストを生成する。
S14では、コンパニオンアプリ管理部34Cが、取得部32に対して更新要求を通知し、取得部32は、コンパニオンアプリ管理部34Cからカレント言語及びアプリIDリストを取得する。
S15では、取得部32が、記憶部14のインストール領域に記憶されている登録用データ(図5)を参照し、情報取得先(アイコンURL及びラベル名URL)を取得する。
S16では、取得部32が、S15で取得した情報取得先(アイコンURL)にアクセスし、サーバ装置40からアイコンを示す画像情報を取得する。
S17では、取得部32が、S16で取得したアイコンを示す画像情報が更新されている場合、取得したアイコンを示す画像情報により、キャッシュメモリ36に格納されているアイコンを示す画像情報を差し替える。
S18では、取得部32が、S15で取得した情報取得先(ラベル名URL)にアクセスし、サーバ装置40からラベル名を示す文字情報を取得する。
S19では、取得部32が、S18で取得したラベル名を示す文字情報が更新されている場合、取得したラベル名を示す文字情報により、キャッシュメモリ36に格納されているラベル名を示す文字情報を差し替える。
S20では、取得部32が、コンパニオンアプリ管理部34Cに対して、更新したアプリについて更新完了を通知する。
S21では、コンパニオンアプリ管理部34Cが、キャッシュメモリ36から、更新された情報(更新情報)として、アイコンを示す画像情報又はラベル名を示す文字情報を取得する。
S22では、コンパニオンアプリ管理部34Cが、S21で取得した更新情報を、表示可能な形に加工して、表示用キュー26にセットする。
上記S15〜S22までの処理を、アプリIDリストに設定されたアプリIDの個数分繰り返す。
S23では、コンパニオンアプリ管理部34Cが、ホームアプリ管理部34Bに対して、表示用キュー26にセットされた更新情報について、ホーム画面50の表示を更新する依頼を行う。
S24では、ホームアプリ管理部34Bが、表示用キュー26にセットされた更新情報に基づいて、ホーム画面50の表示を更新する。なお、本実施形態においても、待機時間が経過した場合に、待機時間内で表示用キュー26にセットされた更新情報によりホーム画面50の表示をまとめて更新するが、ここでの繰り返しの説明は省略する。
図18は、本実施形態に係るアプリ対応アイコン及びアプリ対応ラベル名の組み合わせの表示パターンの一例を示す正面図である。
図18に示すように、表示パターン71〜73においては、同一のアプリとして画像形成装置に登録されており、アプリ対応アイコンが異なり、アプリ対応ラベル名が同一である。
図18に示す表示パターン71は、デフォルトアイコン60C及びアプリ対応ラベル名62Dの組み合わせで表示される。デフォルトアイコン60Cを示す画像情報は、記憶部14等に予め記憶されている。つまり、デフォルトアイコン60Cは、アプリ共通のアイコンとして、サーバ装置40からアプリに対応するアイコンを示す画像情報が取得出来ず、当該画像情報がキャッシュメモリ36に格納されていない場合に表示される。
図18に示す表示パターン72は、アプリ対応アイコン60B及びアプリ対応ラベル名62Dの組み合わせで表示される。アプリ対応アイコン60Bを示す画像情報は、キャッシュメモリ36に格納されている。つまり、アプリ対応アイコン60Bは、サーバ装置40からアプリに対応するアイコンを示す画像情報が取得され、当該画像情報がキャッシュメモリ36に格納されている場合に表示される。
図18に示す表示パターン73は、アプリ対応アイコン60A及びアプリ対応ラベル名62Dの組み合わせで表示される。アプリ対応アイコン60Aを示す画像情報は、キャッシュメモリ36に更新情報として格納されている。つまり、アプリ対応アイコン60Aは、サーバ装置40からアプリに対応するアイコンを示す画像情報の更新情報が取得され、当該更新情報でキャッシュメモリ36に格納されている画像情報が差し替えられた場合に表示される。
図19は、本実施形態に係るアプリ対応アイコン及びアプリ対応ラベル名の組み合わせの表示パターンの他の例を示す正面図である。
図19に示すように、表示パターン74〜77においては、同一のアプリとして画像形成装置に登録されており、アプリ対応アイコンが同一であり、アプリ対応ラベル名が異なる。
図19に示す表示パターン74は、アプリ対応アイコン60B及びネーム名62Iの組み合わせで表示される。ネーム名62Iとは、登録用データ(図5)に含まれるアプリが持つ固有のネーム名(*[E_COPY])である。つまり、ネーム名62Iは、サーバ装置40からアプリに対応するラベル名を示す文字情報が取得出来ず、当該文字情報がキャッシュメモリ36に格納されていない場合に表示される。
図19に示す表示パターン75は、アプリ対応アイコン60B及びアプリ対応ラベル名62Aの組み合わせで表示される。アプリ対応ラベル名62Aを示す文字情報は、キャッシュメモリ36に格納されている。つまり、アプリ対応ラベル名62Aは、サーバ装置40からアプリに対応する英語表示のラベル名を示す文字情報(EASY COPY)が取得され、当該英語表示の文字情報がキャッシュメモリ36に格納されている場合に表示される。
図19に示す表示パターン76は、アプリ対応アイコン60B及びアプリ対応ラベル名62Cの組み合わせで表示される。アプリ対応ラベル名62Cを示す文字情報は、キャッシュメモリ36に更新情報として格納されている。つまり、アプリ対応ラベル名62Cは、サーバ装置40からアプリに対応するラベル名を示す文字情報の更新情報(NEW EASY COPY)が取得され、当該更新情報でキャッシュメモリ36に格納されている文字情報が差し替えられた場合に表示される。
図19に示す表示パターン77は、アプリ対応アイコン60B及びアプリ対応ラベル名62Bの組み合わせで表示される。アプリ対応ラベル名62Bを示す文字情報は、キャッシュメモリ36に格納されている。つまり、アプリ対応ラベル名62Bは、サーバ装置40からアプリに対応する日本語表示のラベル名を示す文字情報(簡単コピー)が取得され、当該日本語表示の文字情報がキャッシュメモリ36に格納されている場合に表示される。
図20〜図22は、本第2の実施形態に係るアプリ更新処理において画面スクロールを行う場合の画面遷移の一例を示す正面図である。
図20に示すように、ホームアプリap1における表示対象領域は、ホーム画面50の表示領域よりも広く、ホーム画面50には、ホームアプリap1の表示対象領域の一部が表示される。そして、ホーム画面50には、画面スクロール機能によりホームアプリap1の表示対象領域が切り替わって表示される。
図20の左図に示すように、アプリ更新前のホーム画面50には、8個のアプリの各々に対応するアイコン及びラベル名の組み合わせが表示されている。
図20の中図に示すように、最初の待機時間が経過したときに、表示用キュー26に1つのアプリ67Aに対応するアイコンの更新情報及びラベル名の更新情報が格納されている。この場合、ホーム画面50には、アイコンの更新情報及びラベル名の更新情報に基づいて、1つのアプリ67Aに対応する更新後のアイコン及びラベル名が表示される。
図20の右図に示すように、次の待機時間が経過したときに、表示用キュー26に4つのアプリ67B〜67Eの各々に対応するアイコンの更新情報及びラベル名の更新情報が格納されている。この場合、ホーム画面50には、表示用キュー26に格納されたアイコンの更新情報及びラベル名の更新情報に基づいて、4つのアプリ67B〜67Eの各々に対応する更新後のアイコン及びラベル名が表示される。
次に、図21の左図に示すように、更に次の待機時間が経過したときに、サーバ装置40には7つのアプリ67F〜67Lの各々に対応するアイコンの更新情報及びラベル名の更新情報が格納されている。しかし、これら7つのアプリ67F〜67Lに対応するアイコン及びラベル名はホーム画面50に表示されていない。この場合、これら7つのアプリ67F〜67Lの各々に対応するアイコン及びラベル名について更新が行われない。
これに対して、キャッシュメモリ36には、ホーム画面50に表示中の複数のアプリ以外の他のアプリ(非表示)に予め対応付けられたアイコンを示す画像情報及びラベル名を示す文字情報が記憶されている。表示制御部30は、画面スクロール機能によりホーム画面50の切り替えに応じて表示するアイコン及びラベル名を切り替える。取得部32は、サーバ装置40から、ホーム画面50に非表示のアイコンの更新情報及びラベル名の更新情報を取得する。この場合、更新部34は、取得部32により取得された更新情報を表示用キュー26に格納し、ホーム画面50の切り替えに応じて非表示のアイコン及びラベル名が表示されるタイミングで、表示用キュー26に格納された更新情報により表示を更新する。一例として、図21の右図に示すように、表示用キュー26には、非表示の7つのアプリ67F〜67Lの各々に対応するアイコンの更新情報及びラベル名の更新情報が格納されている。ラベル名の更新情報は、NEW_I、NEW_L、・・・、NEW_Uの7つである。なお、アイコンの更新情報の図示は省略する。
図21の右図に示すように、画面スクロール機能によりスクロール方向D1にホーム画面50がスクロールされる。このスクロールに応じて、ホーム画面50では、アプリ67F、67Gの各々に対応する非表示のアイコン及びラベル名が表示されるタイミングで、これら2つのアプリ67F、67Gについてアイコン及びラベル名の表示の更新が行われる。つまり、ホーム画面50には、表示用キュー26に格納された非表示のアイコンの更新情報及びラベル名の更新情報に基づいて、2つのアプリ67F、67Gの各々に対応する更新後のアイコン及びラベル名が表示される。
次に、図22に示すように、画面スクロール機能によりスクロール方向D1にホーム画面50が更にスクロールされる。このスクロールに応じて、ホーム画面50では、アプリ67H〜67Kの各々に対応する非表示のアイコン及びラベル名が表示されるタイミングで、これら4つのアプリ67H〜67Kについてアイコン及びラベル名の表示の更新が行われる。つまり、ホーム画面50には、表示用キュー26に格納された非表示のアイコンの更新情報及びラベル名の更新情報に基づいて、4つのアプリ67H〜67Kの各々に対応する更新後のアイコン及びラベル名が表示される。
本第2の実施形態によれば、ホーム画面50において複数のアプリの各々に予め対応付けられている複数のアイコン及びラベル名の少なくとも一方の表示が、表示用キュー26を用いてまとめて更新される。この更新により、複数のアイコン及びラベル名の少なくとも一方を個別に順次更新する場合と比べ、ホーム画面50の見易さが向上する。
また、アプリ更新処理による他の処理への悪影響(表示のフリーズや誤操作等)が軽減される。
以上、実施形態として情報処理装置の一例として画像形成装置を例示して説明した。情報処理装置は、画像形成装置に限定されるものではない。実施形態は、情報処理装置が備える各部の機能をコンピュータに実行させるためのプログラムの形態としてもよい。実施形態は、このプログラムを記憶したコンピュータが読み取り可能な記憶媒体の形態としてもよい。
その他、上記実施形態で説明した画像形成装置の構成は、一例であり、主旨を逸脱しない範囲内において状況に応じて変更してもよい。
また、上記実施形態で説明したプログラムの処理の流れも、一例であり、主旨を逸脱しない範囲内において不要なステップを削除したり、新たなステップを追加したり、処理順序を入れ替えたりしてもよい。
また、上記実施形態では、プログラムを実行することにより、実施形態に係る処理がコンピュータを利用してソフトウェア構成により実現される場合について説明したが、これに限らない。実施形態は、例えば、ハードウェア構成や、ハードウェア構成とソフトウェア構成との組み合わせによって実現してもよい。