(57)【特許請求の範囲】
【請求項１】
メニュー画面を表示する表示手段を有し、当該メニュー画面の表示で利用される設定情報を記憶するサーバと通信する情報処理装置であって、
前記情報処理装置にインストールされたアプリケーションからの要求に従い、前記メニュー画面の表示に利用するために当該アプリケーションに対応する第１アイコンの情報を、同期対象ではない情報を格納するための第１データベースに格納する第１格納手段と、
前記メニュー画面の表示に関する登録要求を受け付ける登録手段と、
前記登録要求の対象として同期対象となる第２アイコンの指定が含まれる場合に、当該第２アイコンの情報を、同期対象の情報を格納するための第２データベースに格納する第２格納手段と、
前記登録要求の対象である前記メニュー画面の設定情報を前記第２データベースに格納する第３格納手段と、
前記登録手段により登録された設定情報の中で、前記第１データベースに格納された前記第１アイコンの情報を前記サーバに送信することなく、前記第２データベースに格納された前記第２アイコンの情報及び前記設定情報を前記サーバに送信する送信手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記登録要求として、ボタン登録の要求を受け付けた場合には、当該ボタン登録の要求の対象としてアイコンの指定と設定情報が含まれ、
前記ボタン登録の要求の対象となるアイコンの指定が前記第２アイコンの指定であれば、前記第２格納手段により当該第２アイコンの情報と前記設定情報とが前記第２データベースに格納され、
前記ボタン登録の要求の対象となるアイコンの指定が前記第２アイコンの指定でなければ、前記第２格納手段により、当該アイコンの情報を格納することなく、前記設定情報が前記第２データベースに格納されることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第１アイコンの情報及び前記第２アイコンの情報は、アプリケーションの識別情報、及びサイズの異なる各アイコンの情報を含むことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記設定情報は、前記メニュー画面で前記第１アイコンの情報及び前記第２アイコンの情報を用いて表示されるボタンに対応するアプリケーションの識別情報、前記ボタンに表示する名称、ユーザに対応する前記ボタンのサイズ、及び当該ユーザに対応する背景画像を特定する情報を含むことを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
メニュー画面を表示する表示手段を有し、当該メニュー画面の表示で利用される設定情報を記憶するサーバと通信する情報処理装置を制御する制御方法であって、
前記情報処理装置にインストールされたアプリケーションからの要求に従い、前記メニュー画面の表示に利用するために当該アプリケーションに対応する第１アイコンの情報を、同期対象ではない情報を格納するための第１データベースに格納する第１格納工程と、
前記メニュー画面の表示に関する登録要求を受け付ける登録工程と、
前記登録要求の対象として同期対象となる第２アイコンの指定が含まれる場合に、当該第２アイコンの情報を、同期対象の情報を格納するための第２データベースに格納する第２格納工程と、
前記登録要求の対象である前記メニュー画面の設定情報を前記第２データベースに格納する第３格納工程と、
前記登録工程で登録された設定情報の中で、前記第１データベースに格納された前記第１アイコンの情報を前記サーバに送信することなく、前記第２データベースに格納された前記第２アイコンの情報及び前記設定情報を前記サーバに送信する送信工程と、
を有することを特徴とする制御方法。
【請求項６】
前記登録要求として、ボタン登録の要求を受け付けた場合には、当該ボタン登録の要求の対象としてアイコンの指定と設定情報が含まれ、
前記ボタン登録の要求の対象となるアイコンの指定が前記第２アイコンの指定であれば、前記第２格納工程で当該第２アイコンの情報と前記設定情報とが前記第２データベースに格納され、
前記ボタン登録の要求の対象となるアイコンの指定が前記第２アイコンの指定でなければ、前記第２格納工程で、当該アイコンの情報を格納することなく、前記設定情報が前記第２データベースに格納されることを特徴とする請求項５に記載の制御方法。
【請求項７】
前記第１アイコンの情報及び前記第２アイコンの情報は、アプリケーションの識別情報、及びサイズの異なる各アイコンの情報を含むことを特徴とする請求項５又は６に記載の制御方法。
【請求項８】
前記設定情報は、前記メニュー画面で前記第１アイコンの情報及び前記第２アイコンの情報を用いて表示されるボタンに対応するアプリケーションの識別情報、前記ボタンに表示する名称、ユーザに対応する前記ボタンのサイズ、及び当該ユーザに対応する背景画像を特定する情報を含むことを特徴とする請求項５乃至７のいずれか１項に記載の制御方法。
【請求項９】
コンピュータを、請求項１乃至４のいずれか１項に記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理装置、及びその制御方法とプログラムに関する。
【背景技術】
【０００２】
近年、画像形成装置は様々な機能を備え、その装置に対してユーザが行う操作も複雑化している。一般的に画像形成装置は複数のユーザで共有されることが多いため、各々のユースケースに応じて、その設定をカスタマイズできる仕組みがある。例えば、画像形成装置のメニュー画面に、レイアウト設定を「２ｉｎ１」、仕上げを「両面」であることを示す「２ｉｎ１で両面」の設定が記憶されたボタンを登録したものがある。そして、そのメニュー画面でユーザがそのボタンを押下するとコピー機能の画面に遷移して「２ｉｎ１」で「両面」を自動的に設定できる。これにより、ユーザによる印刷設定の手間をなくすことができる（例えば、特許文献１参照）。
【０００３】
更に画像形成装置には、Ｗｅｂサービス（例えば、認証機能、画像処理機能など）を利用できるように、ブラウザが搭載されているものがある。このブラウザから参照しているＷｅｂサービスのＵＲＬを、メニュー画面にボタンとして登録することで、画像形成装置の機能に留まらず、様々な用途で画像形成装置の使い勝手を向上させることができる。但し、ＷｅｂサービスのＵＲＬを、単純にブラウザからのショートカットボタンとして登録した場合、ボタン上のアイコンがブラウザのアイコンのままとなる。このため、複数のブラウザボタンがメニューに登録された場合、どのボタンがどの機能を表すのかわかりにくくなるという問題がある。この問題に対して、ＷｅｂサービスのＵＲＬに紐づいているアイコン（Ｆａｖｉｃｏｎ）をボタン上に表示することで、各ボタンの機能を容易に区別できるものがある（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１０３９９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記従来の方法では、画像形成装置を複数台設置している環境において、ある画像形成装置でユーザが作成したボタンは、その作成した画像形成装置でしか利用できない。このため、ユーザが他の画像形成装置で同一のボタンを表示して機能を指示するためには、その画像形成装置で、再度、そのボタンを登録する必要があり、そのような操作はユーザにとって使い勝手の悪いものであった。
【０００６】
本発明の目的は、上記従来技術の問題点を解決することにある。
【０００７】
本発明の特徴は、ある情報処理装置で表示するメニュー画面に設定した設定情報を他の情報処理装置と同期することによって、他の情報処理装置でも同様のメニュー画面を表示して同様の操作ができるようにする技術を提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するために本発明の一態様に係る情報処理装置は以下のような構成を備える。即ち、
メニュー画面を表示する表示手段を有し、当該メニュー画面の表示で利用される設定情報を記憶するサーバと通信する情報処理装置であって、
前記情報処理装置にインストールされたアプリケーションからの要求に従い、前記メニュー画面の表示に利用するために当該アプリケーションに対応する第１アイコンの情報を、同期対象ではない情報を格納するための第１データベースに格納する第１格納手段と、
前記メニュー画面の表示に関する登録要求を受け付ける登録手段と、
前記登録要求の対象として同期対象となる第２アイコンの指定が含まれる場合に、当該第２アイコンの情報を、同期対象の情報を格納するための第２データベースに格納する第２格納手段と、
前記登録要求の対象である前記メニュー画面の設定情報を前記第２データベースに格納する第３格納手段と、
前記登録手段により登録された設定情報の中で、前記第１データベースに格納された前記第１アイコンの情報を前記サーバに送信することなく、前記第２データベースに格納された前記第２アイコンの情報及び前記設定情報を前記サーバに送信する送信手段と、を有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、ある情報処理装置で表示するメニュー画面に設定した設定情報を他の情報処理装置と同期することによって、他の情報処理装置でも同様のメニュー画面を表示して同様の操作ができるという効果がある。
【００１０】
本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。尚、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。
【図面の簡単な説明】
【００１１】
添付図面は明細書に含まれ、その一部を構成し、本発明の実施の形態を示し、その記述と共に本発明の原理を説明するために用いられる。
【図１】本発明の実施形態に係る多機能処理装置（複合機）のハードウェア構成の一例を示す図。
【図２】実施形態に係るＭＦＰのソフトウェア構成を説明するブロック図。
【図３】本実施形態に係るＭＦＰを含む情報処理システムの構成例を示す図。
【図４】、
【図５】、
【図６】、
【図７】本実施形態に係るＭＦＰで表示される画面例を示す図。
【図８】実施形態に係るＭＦＰで、カスタムメニュー画面の背景画像をインポートする画面例を示す図。
【図９】実施形態に係るＭＦＰのカスタムメニュー制御部のソフトウェア構成を説明するブロック図。
【図１０】実施形態に係る設定非同期ＤＢのデータ構造を説明する図。
【図１１】実施形態に係る設定同期ＤＢのデータ構造を説明する図。
【図１２】実施形態に係るＭＦＰの起動時における機能登録の手順を示すシーケンス図。
【図１３】実施形態に係るＭＦＰによる登録処理を説明するフローチャート。
【図１４】実施形態に係るＭＦＰによるカスタムメニュー画面の生成処理を示すフローチャート。
【図１５】実施形態に係るＭＦＰによるカスタムメニューへのボタンの登録処理を説明するフローチャート。
【図１６】実施形態に係るＭＦＰが、強制レイアウト設定の変更に伴って不要なアイコンを削除する処理を説明するフローチャート。
【図１７】実施形態に係るＭＦＰが背景画像の登録要求を受け付けたときの処理を説明するフローチャート。
【図１８】実施形態に係る情報処理システムにおけるＭＦＰと設定サーバとの間で実行される設定値の同期処理を説明するシーケンス図。
【発明を実施するための形態】
【００１２】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１３】
図１は、本発明の実施形態に係る多機能処理装置（ＭＦＰ：Ｍｕｌｔｉ−Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）１０１のハードウェア構成の一例を示す図である。尚、図１は、本実施形態に係る画像形成装置の一例を示したもので、他の構成要素を含んだり、或いは、本実施形態と同様の効果のある構成を含んでも構わない。
【００１４】
制御部１０３は、ＣＰＵ１１１，ＲＡＭ１１２，ＲＯＭ１１３、入力制御Ｉ／Ｆ１１４、表示制御Ｉ／Ｆ１１５、外部メモリＩ／Ｆ１１６、通信Ｉ／Ｆコントローラ１１７を有し、これらはシステムバス１１０を介して相互に接続されている。またスキャナ１２１やプリンタ１２２もシステムバス１１０に接続されている。システムバス１１０に接続された各部は、システムバス１１０を介して互いにデータのやりとりを行うことができる。
【００１５】
ＣＰＵ１１１は、ＲＯＭ１１３に記憶されているプログラムに従って、システムバス１１０を介して各部の制御や、データの計算や加工等を行う。ＲＡＭ１１２は揮発性のメモリで、ＣＰＵ１１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＲＯＭ１１３は不揮発性のメモリで、画像データやその他のデータ、ＣＰＵ１１１が動作するための各種プログラム等を、それぞれ所定の領域に格納している。ＣＰＵ１１１は、例えばＲＯＭ１１３に格納されるプログラムに従い、ＲＡＭ１１２をワークメモリとして用いてＭＦＰ１０１の各部を制御する。尚、ＣＰＵ１１１が動作するためのプログラムは、ＲＯＭ１１３に限らず、外部メモリ１２０に記憶されていて、ＲＡＭ１１２に展開されて実行されても良い。
【００１６】
入力制御Ｉ／Ｆ１１４は、ユーザの操作を受け付け、その操作に応じた制御信号を生成してＣＰＵ１１１に供給する。例えば、入力制御Ｉ／Ｆ１１４は、ユーザの操作を受け付ける入力デバイスとして、キーボード（不図示）や、ポインティングデバイスやタッチパネル１１８等の入力デバイスとのインタフェースを制御する。尚、タッチパネル１１８は、例えば平面的に構成された入力部に対して、接触された位置に応じた座標情報を出力する入力デバイスである。ＣＰＵ１１１は、入力デバイスに対してなされたユーザの操作に応じて入力制御Ｉ／Ｆ１１４で生成されて供給される制御信号に基づき、プログラムに従ってＭＦＰ１０１の各部を制御する。これにより、ユーザの操作に応じた動作をＭＦＰ１０１に行わせることができる。表示制御Ｉ／Ｆ１１５は、表示部１１９に画像を表示させるための表示信号を出力する。例えば、ＣＰＵ１１１は、プログラムに従い、生成した表示制御信号を表示制御Ｉ／Ｆ１１５に対して供給する。表示制御Ｉ／Ｆ１１５は、この表示制御信号に基づいて表示信号を生成して表示部１１９に出力して表示させる。例えば、表示制御Ｉ／Ｆ１１５は、ＣＰＵ１１１が生成する表示制御信号に基づき、ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を構成するＧＵＩ画面を表示部１１９に表示させる。またタッチパネル１１８は、表示部１１９と一体的に構成されていても良い。例えば、タッチパネル１１８は光の透過率が表示部１１９の表示を妨げないように構成され、表示部１１９の表示面の上層に取り付けられる。そして、タッチパネル１１８でユーザが操作した位置の入力座標と、表示部１１９上の表示座標とが対応付けられる。これにより、あたかもユーザが表示部１１９に表示された画面を直接的に操作しているようなＧＵＩを提供できる。
【００１７】
外部メモリＩ／Ｆ１１６には、例えばＨＤＤ（ハードディスクドライブ）やフレキシブルディスク、又はＣＤやＤＶＤ、フラッシュメモリ、メモリカード等の外部メモリ１２０が接続可能である。ＣＰＵ１１１の制御に基づいて、外部メモリ１２０からのデータの読み出しや、外部メモリ１２０に対するデータの書き込みが行われる。構成によっては、外部メモリ１２０をＲＯＭ１１３の代わりに使用することもあり得る。通信Ｉ／Ｆコントローラ１１７は、ＣＰＵ１１１の制御に基づき、例えばＬＡＮやインターネット、有線、無線等の各種ネットワークとの間で通信を行う。ネットワーク１０２には、ＰＣや他のＭＦＰ、プリンタ、サーバ等、様々な装置がＭＦＰ１０１と通信可能に接続されている。
【００１８】
スキャナ１２１は、ＣＰＵ１１１の制御に基づき、原稿を読み取って、その原稿の画像データを生成する。例えば、ＣＰＵ１１１は、入力制御Ｉ／Ｆ１１４を介して入力されたユーザの指示により、スキャナ１２１にスキャン処理を実施させる。これによりスキャナ１２１は、原稿台に置かれた原稿、或いはＡＤＦ（自動原稿給紙装置）に置かれた原稿を搬送して読み取り、読み取って得られた画像信号をデジタルデータ化して画像データを生成する。そして、その生成した画像データが外部メモリＩ／Ｆ１１６を介して供給されると、ＣＰＵ１１１はその画像データを例えば外部メモリ１２０に格納する。プリンタ１２２は、ＣＰＵ１１１の制御に基づき、例えば外部メモリ１２０に保存された画像データに基づいて印刷する。例えば、ＣＰＵ１１１は、入力制御Ｉ／Ｆ１１４を介して入力されたユーザの指示や、通信Ｉ／Ｆコントローラ１１７を介して外部装置から入力されたコマンドの指示によりプリンタ１２２に対して印刷処理を実施させる。プリンタ１２２は、ＲＡＭ１１２或いは外部メモリ１２０から読み出されて供給される画像データを受け取って用紙に印刷する。
【００１９】
図２は、実施形態に係るＭＦＰ１０１のソフトウェア構成を説明するブロック図である。尚、図２は、本実施形態における説明のための一例を示したものであり、他の構成要素を含んだり、或いは、本実施形態と同様の効果のある構成を含んでも構わない。また図２に示す各制御部は、ＣＰＵ１１１がＲＯＭ１１３に記憶されているプログラムを実行することにより達成される。
【００２０】
制御バス２００には、例えば表示操作制御部２０１、認証制御部２０２、同期制御部２０５、コピー制御部２１０、送信制御部２１１、カスタムメニュー制御部２１２、ブラウザ制御部２１３などの各制御部が接続されている。制御バス２００は、ＣＰＵ１１１の制御に基づき、各制御部間の情報を受け渡しする。ＭＦＰ１０１は、一つ以上の機能を備えており、各機能毎に制御部があり、図２では、一例としてコピー制御部２１０、送信制御部２１１、カスタムメニュー制御部２１２、ブラウザ制御部２１３を示している。当然ながら図２に示す機能以外に対しても、それぞれの制御部が存在している（不図示）。その他の機能の例として、例えば、ドライバから投入された印刷ジョブをＭＦＰ１０１に留め置き、認証したユーザ又は印刷ジョブに紐づけられたパスワードを知るユーザのみが印刷できる機能であるセキュアプリント機能がある。またＭＦＰ１０１に画像データを保存する機能を持つボックス機能や、ヘルプ画面を表示する機能を持つヘルプ機能や、公共通信網からＦＡＸ文書を受信するファックス機能などがある。
【００２１】
表示操作制御部２０１は、ＣＰＵ１１１の制御に基づき、入力制御Ｉ／Ｆ１１４や表示制御Ｉ／Ｆ１１５を制御する。例えば、表示操作制御部２０１は、他の制御部からの指示に基づいて表示制御Ｉ／Ｆ１１５を介して表示部１１９に表示したり、入力制御Ｉ／Ｆ１１４を介して、タッチパネル１１８でユーザが入力した情報を取得する。尚、表示操作制御部２０１は、取得した情報を、必要に応じて制御バス２００を介して各制御部へ通知する。以降の説明では、制御部間で情報やデータを受け渡しする際は、制御バス２００を経由するものとする。
【００２２】
認証制御部２０２は、ＣＰＵ１１１の制御に基づき、ユーザを識別するための認証処理（以下、ログイン）を行い、ＭＦＰ１０１の操作者がＭＦＰ１０１の正当なユーザか否かを判定する。また認証制御部２０２は、外部メモリ１２０に設けられた、ユーザ情報を格納したデータベースを参照する。ログイン処理では、ユーザ名とパスワードの対応関係が正しいかどうかを判定し、正しければログイン処理は成功し、正規のユーザとして、与えられた権限の範囲で、このＭＦＰ１０１の機能が利用可能になる。一方、ログイン処理に失敗すれば、認証していないユーザとして、より狭い権限の範囲でＭＦＰ１０１の機能を利用できるか、或いは、どの機能も利用できないといった制御が行われる。尚、ユーザの認証方法は、この限りでなく、非接触型のＩＣカードなどを使用する他の認証方法でもよい。
【００２３】
次に、コピー制御部２１０について説明する。コピー制御部２１０は、原稿を読み取って、その原稿の画像を印刷する機能（以下、コピー機能）を制御する。コピー制御部２１０は、スキャナ１２１が原稿を読み取って画像データを生成し、その画像データを画像処理部（不図示）で画像処理を行って、処理済の画像データをプリンタ１２２へ出力して印刷する。コピー機能における設定の一例として、Ｎ枚の原稿から１枚のコピー画像を生成するレイアウト（Ｎｉｎ１）設定や、原稿の片面、或いは両面を読み取るかを指定させる両面設定がある。更に、フルカラー、モノクロ、単色などの印刷する色を指定させるカラーモード設定などがある。
【００２４】
次に送信制御部２１１について説明する。送信制御部２１１は、スキャナ１２１により原稿を読み取って得られた画像データを外部のサーバに送信する機能（以下、送信機能）を制御する。送信制御部２１１は、スキャナ１２１が原稿を読み取って画像データを生成し、その画像データを画像処理部（不図示）で画像処理を行い、例えばＪＰＥＧ，ＴＩＦＦなどの一般的なファイルフォーマットのファイルを生成する。そして生成したファイルを、例えばサーバに送付したり、電子メールに添付して送付する。
【００２５】
次にブラウザ制御部２１３について説明する。ブラウザ制御部２１３は、ネットワーク１０２を介してＷｅｂサーバと通信してリソースを取得する。そして、その取得したリソースの種類に基づいて、ＣＰＵ１１１が構文解析を実行し、文字や画像を適切に配置した画面を表示制御Ｉ／Ｆ１１５を介して表示部１１９に出力する。ブラウザ機能の利用例として、ブラウザ制御部２１３が文書管理機能を有するサーバにＨＴＴＰリクエストを発行し、そのレスポンスにセットされたスキャン要求を解析し、スキャナ１２１に対してスキャン要求を発行する。そして、スキャナ１２１が取得した画像データを文書データとしてサーバに登録するといったものが挙げられる。
【００２６】
次に、カスタムメニュー制御部２１２について説明する。カスタムメニュー制御部２１２は、他の機能の設定を記憶し、カスタマイズ可能なメニュー画面の上のボタンとして登録する機能を制御する。カスタムメニュー制御部２１２は、機能を設定した後、その機能をボタンに登録するように指示することにより、その機能へのショートカットボタンをカスタムメニュー画面（例えば図４（Ａ））に登録する。このカスタムメニュー画面の詳細な説明は後述する。
【００２７】
同期制御部２０５は、設定同期データベース（ＤＢ）２０６の変更をＣＰＵ１１１が検知すると、ネットワーク１０２を介して、設定サーバ３００（図３）にマスタ設定ＤＢ３０１（図３）と設定同期ＤＢ２０６の設定情報の差分情報を送信する。尚、同期制御部２０５は、ノード（属性）単位で変更点を検知する仕組みを有しており、実施形態では、このような変更点を差分情報と定義する。設定非同期ＤＢ２０７は、同期制御部２０５により設定サーバ３００のマスタ設定ＤＢ３０１と同期されることがない、ＭＦＰ１０１の各機能が利用するＭＦＰの固有の設定情報を記憶している。設定同期ＤＢ２０６と設定非同期ＤＢ２０７はともに、ＲＡＭ１１２或いは外部メモリ１２０に設けられている。
【００２８】
図３は、本実施形態に係るＭＦＰ１０１を含む情報処理システムの構成例を示す図である。尚、図３は実施形態を説明するための一例を示したものであり、他の構成要素を含むか、或いは、本実施形態と同様の効果のある構成を含んでも構わない。また設定サーバ３００の構成は、ＭＦＰ１０１或いはＭＦＰ１０２が兼ねていても良い。
【００２９】
この情報処理システムでは、設定サーバ３００、ＭＦＰ１０１，ＭＦＰ１０２がネットワーク１０２を介して接続されている。設定サーバ３００は、各ＭＦＰでの設定情報（デバイス設定）、個人設定をマスタ設定ＤＢ３０１に記憶している。ＭＦＰ１０２のハードウェア構成及びソフトウェア構成は、ＭＦＰ１０１の構成と同等とする。ＭＦＰ１０１の同期制御部２０５は、ＭＦＰ１０１の設定同期ＤＢ２０６の設定情報の変更を検出すると、その変更点を含むノードを設定サーバ３００に通知する。ＭＦＰ１０２は、設定サーバ３００に対して、設定情報が変更されたかを問合せ、設定情報が変更された場合は、設定サーバ３００から、その変更された設定情報を取得する。これにより、ＭＦＰ１０１における設定情報の変更内容がＭＦＰ１０２に反映されることになる。
【００３０】
尚、ＭＦＰ１０１において、ユーザが設定情報を変更すると、同期制御部２０５は設定サーバ３００と同期するが、これは設定情報が変更された都度ではなく、例えば予め設定された所定のタイミングで設定情報を同期するようにしても良い。また、ユーザがログアウト時に、自動的に設定情報を同期するようにしても良い。
【００３１】
また、ＭＦＰ１０２の設定同期ＤＢ２０６と、設定サーバ３００のマスタ設定ＤＢ３０１との同期のタイミングは、ログイン時、ログアウト時、指定時刻、所定時間の経過時、日時指定、ユーザが指定したタイミング等であっても良い。またその同期のタイミングを、それらのいずれにするかを指定できるモードを設けても良い。いま例えば、後述するユーザボタンのサイズが変更された場合は、差分情報が示すものはユーザ設定ノード６７１（図１１（Ａ））となる。またＭＦＰは、設定サーバ３００に対してネットワーク１０２を介して差分情報の有無をリクエストし、差分情報がある場合には、そのデータをレスポンスとして取得して設定同期ＤＢ２０６を更新する。即ち、同期制御部２０５は、通信Ｉ／Ｆコントローラ１１７を介して設定サーバ３００と通信し、設定同期ＤＢ２０６に記憶されている設定情報と、設定サーバ３００のマスタ設定ＤＢ３０１に記憶されている設定情報とを同期するための制御を行う。
【００３２】
尚、本実施形態では、設定同期ＤＢ２０６に含まれるデータとして、カスタムメニュー制御部２１２に関わる設定情報を扱うが、それ以外の機能が有する設定情報の場合も同様にして実施できる。
【００３３】
図４（Ａ）は、実施形態に係るＭＦＰ１０１のカスタムメニュー制御部２１２によって提供されるカスタムメニュー画面の一例を示す図である。
【００３４】
このカスタムメニュー画面は、カスタムメニュー制御部２１２によって作成されたもので、ボタン４０１〜４０３の３つのボタンを画面上に有する。ボタン４０１は、コピー制御部２１０へ遷移するためのボタンである。ボタン４０２，４０３はそれぞれブラウザ制御部２１３へ遷移するためのボタンである。尚、ボタン４０２には、遷移先のＵＲＬにアイコン（Ｆａｖｉｃｏｎ）が設定されていないため、ブラウザ制御部２１３が標準で有するアイコンが表示されている。一方、ボタン４０３は、遷移先のＵＲＬにアイコンが設定されているため、「社」という１文字のアイコンが表示されている。またマイボタン４０４は、認証制御部２０２のログインに紐づいたユーザごとに管理された専用のボタンを表示するためのボタンである。共有ボタン４０５は、認証制御部２０２によるログインが完了していない、即ち、未認証のユーザや全てのユーザが共通に利用可能なボタンを表示するためのボタンである。尚、認証制御部２０２が複数のユーザをグループという単位で管理できる機構を備えていれば、グループごとに利用可能なボタンを表示するグループボタンを追加しても構わない。
【００３５】
カスタムメニュー制御部２１２は、ボタン４０１〜４０３のいずれかの押下を入力制御Ｉ／Ｆ１１４を介して検知すると、対応する制御部に対して、設定同期ＤＢ２０６から取得した設定情報と共に呼び出し要求を行う。例えば、カスタムメニュー制御部２１２が、ボタン４０１の押下を検知すると、コピー制御部２１０に対して、コピー機能の呼び出し要求を行う。これによりコピー制御部２１０は、例えば図４（Ｂ）示す確認ダイアログを表示部１１９に表示させる。
【００３６】
図４（Ｂ）は、図４（Ａ）の画面でコピーボタン４０１が指示されたときの確認ダイアログの表示例を示す図である。
【００３７】
ここでは、モノクロ、原稿の種類などの設定情報が、ボタン制御部９０１（図９）を介してコピー制御部２１０に渡されていることを表す。このとき、例えば、以下のようなＸＭＬの形式でボタン制御部９０１からコピー制御部２１０に設定情報が渡される。
＜?xml version="1.0" encoding="UTF-8"?.＞
＜アクションID＞001＜/アクションID＞
＜設定情報＞
＜カラー選択＞モノクロ＜/カラー選択＞
＜濃度＞0＜/濃度＞
＜倍率＞等倍＜/倍率＞
＜用紙選択＞自動＜/用紙選択＞
＜原稿の種類＞文字＜/原稿の種類＞
＜/設定情報＞
尚、アクションＩＤは、ボタンノード６５２（図１１（Ａ））と紐づいた機能の設定情報の識別情報である。カスタムメニュー制御部２１２が扱うデータの構造については図１０、図１１を参照して詳述する。
【００３８】
そして、コピー制御部２１０は、図４（Ｂ）の「はい」ボタン４０６の押下を検知すると、上述した設定情報が反映されたコピー画面（図５（Ａ））を表示制御Ｉ／Ｆ１１５を介して表示部１１９に表示する。
【００３９】
また図４（Ａ）の画面で設定ボタン４４０が押下されると、カスタムメニュー制御部２１２が設定ボタン４４０の押下を検知して図５（Ｂ）に示すカスタムメニュー画面を表示する。図５（Ｂ）では、レイアウト変更ボタン４４１と背景変更ボタン４４２を含むカスタムメニュー設定ダイアログ４４５がポップアップして表示されている。そして、カスタムメニュー制御部２１２は、ユーザがレイアウト変更ボタン４４１を押下したのを検知すると、図６（Ａ）に示すレイアウト変更ダイアログを表示する。
【００４０】
図４（Ａ）のカスタムメニュー画面では、３つボタン４０１〜４０３が表示されていたが、例えば、図６（Ａ）の画面で「Ｍサイズボタン９個（２ページ）」４５０というレイアウトの選択をカスタムメニュー制御部２１２が検知する。すると、カスタムメニュー制御部２１２は、ボタンのレイアウトが変更されたカスタムメニュー画面（図６（Ｂ））を表示する。この図６（Ｂ）のカスタムメニュー画面では、メニュー画面上のボタンの数を最大３個から最大９個に変更している。つまり、表示されるボタンのサイズがＭサイズからＳサイズに変更されてアイコンの大きさが小さくなり、その分、多くのボタンが表示できるようになっている。
【００４１】
一方、カスタムメニュー制御部２１２は、図５（Ｂ）の画面で、背景変更ボタン４４２の押下を検知すると、図７（Ａ）に示す背景変更ダイアログを表示制御Ｉ／Ｆ１１５を介して表示部１１９に表示する。カスタムメニュー制御部２１２は、図４（Ａ）のカスタムメニュー画面では、「葉」の態様の画像を背景に表示していたが、図７（Ａ）の背景変更ダイアログで「空」４５１が選択された状態でＯＫボタン４５２の押下を検知する。これにより例えば図７（Ｂ）に示すように、背景画像が「空」であるカスタムメニュー画面を表示部１１９に表示する。
【００４２】
図８は、実施形態に係るＭＦＰ１０１で、カスタムメニュー画面の背景画像をインポートする画面例を示す図である。
【００４３】
図８では、パソコンなどに搭載されているＷｅｂブラウザ（不図示）からＭＦＰ１０１の背景画像をインポートするためのＵＲＬへアクセスしたときに、Ｗｅｂブラウザにより表示されるインポート画面例を表している。この画面から、所望の背景画像のファイルを選択し、インポート開始ボタン８０１を押下することで、インポートした画像ファイルを背景画像としてカスタムメニュー制御部２１２に登録できる。この登録処理については後述する。
【００４４】
図９は、実施形態に係るＭＦＰ１０１のカスタムメニュー制御部２１２のソフトウェア構成を説明するブロック図である。
【００４５】
カスタムメニュー制御部２１２は、ボタン制御部９０１と画面生成部９０２と背景制御部９０３とを含む。ボタン制御部９０１は、機能からのボタンの登録要求に伴って、ボタンに関する情報を設定同期ＤＢ２０６及び設定非同期ＤＢ２０７に設定する。またメニュー画面でのボタンの押下に伴い、そのボタンに関する設定情報を設定同期ＤＢ２０６及び設定非同期ＤＢ２０７から読み込んで、アプリケーションＩＤキー６１２（図１０）に一致する機能を呼び出す。このとき、アクションＩＤキー６５３（図１１（Ａ））に紐づく設定情報を、その機能に通知する。これによりその機能は、ユーザが所望する設定情報を反映させることができる。
【００４６】
画面生成部９０２は、カスタムメニュー制御部２１２が表示部１１９に表示する画面を生成する。例えば、選択されている背景画像の上にボタンを配置して、レイアウトに応じた、例えば図４（Ａ）のカスタムメニュー画面や、図６（Ｂ）のカスタムメニュー画面などを生成する。更に、レイアウト変更ボタンや背景変更ボタン等を含む、例えば図５（Ｂ）のカスタムメニュー設定ダイアログ４４５等の補助画面も生成する。カスタムメニュー画面の生成について、後述する。
【００４７】
背景制御部９０３は、ネットワーク１０２を介して背景画像の登録要求を受け付けると、設定同期ＤＢ２０６に、その背景画像を登録する。背景画像の登録処理については後述する。尚、背景画像の登録要求は、ネットワーク１０２に限定されるわけではなく、例えば外部メモリ１２０に保存してある背景画像を制御バス２００を通じてカスタムメニュー制御部２１２に通知する形態でもかまわない。
【００４８】
図１０は、実施形態に係る設定非同期ＤＢ２０７のデータ構造を説明する図、図１１は、実施形態に係る設定同期ＤＢ２０６のデータ構造を説明する図で、図１１（Ａ）は１ユーザあたりのデータ構造を示し、図１１（Ｂ）はカスタムメニューの設定情報を示す。
【００４９】
設定非同期ＤＢ２０７には、カスタムメニュー制御部２１２が管理するアイコン、背景画像、設定、アプリケーションリストに関するデータが登録されている。アプリケーションリストノード６４１は、カスタムメニュー機能を利用する機能（アプリケーション）の識別情報が登録されたリストである。各機能は、カスタムメニュー機能を利用するために、カスタムメニュー制御部２１２に対して登録を要求する際、機能の識別情報であるアプリケーションＩＤ６４２とアプリケーションの名称とを登録する。カスタムメニュー制御部２１２に対する各機能の登録要求のシーケンスについては後述する。
【００５０】
アイコンルートノード６１１は、カスタムメニュー機能を利用する機能のうち、機能（アプリケーション）の起動時に、そのアプリケーションのアイコンの登録が要求されたアイコンを管理している。よってアイコンルートノード６１１は、アイコンを登録した機能のアプリケーションＩＤ６１２の数だけ存在する。非同期アイコンＩＤノード６１３は、登録されたアイコンの識別情報であり、その中にＭサイズのアイコン（中ぐらいの大きさのアイコン）と、Ｓサイズのアイコン（Ｍサイズより小さいアイコン）の識別情報がある。
【００５１】
標準背景画像ノード６２１は、カスタムメニュー制御部２１２が標準で保有する背景画像へのキーを格納している。ここで、キーを背景画像そのもの、或いは、ファイルパスと解釈してもよく、そのキーから実際の背景画像を参照できる態様であればどのような形式でもかまわない。尚、図１０では、背景画像キー６２２は、標準で保有する背景画像の枚数は０枚からＮ枚あることを表している。
【００５２】
設定ノード６３１は、標準ボタンサイズ６３２、標準背景キー６３３、強制レイアウト設定６３４を有する。ユーザが未認証或いは、異常なボタンサイズや背景キーが指定された場合に参照される。尚、標準ボタンサイズ６３２と、後述するユーザボタンサイズ６７２（図１１（Ａ））は、カスタムメニュー画面のレイアウトと対になるもので、例えば、３個レイアウトの時はＭサイズ、９個レイアウトの時はＳサイズということが分かるような値が入る。例えば、それぞれ３Ｍ，９Ｓといった値になる。また、標準背景キー６３３と、後述するユーザ背景キー６７３（図１１（Ａ））は、背景画像キー６２２或いは背景画像キー６９２（図１１（Ｂ））を指しており、カスタムメニュー画面の背景画像を決定する。強制レイアウト設定６３４は、ＭＦＰ１０１においてカスタムメニュー画面のレイアウト設定を強制的に固定するためのものである。例えば、強制レイアウト設定６３４に９個レイアウトが設定されている場合、３個レイアウトなどへの変更は不可能となる。
【００５３】
次に設定同期ＤＢ２０６について説明する。
【００５４】
設定同期ＤＢ２０６には、図１１（Ａ）に示すように、カスタムメニュー制御部２１２用に１ユーザごとにデータが存在しており、このデータは、認証制御部２０２で認証済みとなったときのみ参照可能となる。
【００５５】
ボタンルートノード６５１は、ボタンノード６５２のボタンの数だけ有する。ボタンノード６５２には、メニュー画面に表示されるボタンに関する情報が格納されており、アクションＩＤキー６５３、アプリケーションＩＤキー６５４、コメントキー６５５、ボタン名称キー６５６、アイコンＩＤキー６５７を含む。アクションＩＤキー６５３は、ボタンノード６５２に紐づいた機能の設定情報を、設定同期ＤＢ２０６から参照するための識別情報であり、ファイルパスのような形態であってもよい。アプリケーションＩＤキー６５４は、ボタンの実機能を有する機能の識別情報であり、機能ごとに一意なものである。コメントキー６５５やボタン名称キー６５６は、カスタムメニュー画面のボタンに表示するコメントや名称の文字情報と結びついた識別情報であるが、識別情報でなくとも、文字列そのものを格納しても構わない。アイコンＩＤキー６５７は、非同期アイコンＩＤノード６１３もしくはアイコンＩＤ同期ノード６８２（図１１（Ｂ））と一致するものであって、ボタンのアイコンを決定するための識別情報である。
【００５６】
ボタンインデックスノード６６１は、ボタンの数だけボタンインデックスキーが存在し、ボタンインデックスキーは、ボタンノード６５２を指している。例えば、ボタンインデックスキーが「０」でボタンノード６５２の６番を指している場合、図４（Ａ）のカスタムメニュー画面のコピーボタン４０１として６番目のボタンノード６５２が表示されるということになる。
【００５７】
ユーザ設定ノード６７１は、ユーザボタンサイズ６７２とユーザ背景キー６７３とを含む。ユーザボタンサイズ６７２は、ユーザごとにＳサイズ或いはＭサイズといったボタンサイズを管理する。ユーザ背景キー６７３は、ユーザごとに背景画像を自由に選択できるようにするために背景画像キーを管理する。
【００５８】
次に図１１（Ｂ）に示すように、設定同期ＤＢ２０６には設定非同期ＤＢ２０７と類似したカスタムメニューの設定情報が格納される。このカスタムメニューの設定情報について以下に説明する。
【００５９】
同期アイコンルートノード６８１は、機能からのボタンの登録要求に際して、アプリケーションの起動時に登録したアイコン以外のアイコンを格納するための領域である。例えば、ブラウザ制御部２１３から、カスタムメニュー制御部２１２に対して、ボタンの登録要求が行われた場合、図４（Ａ）のボタン４０３のように、ＵＲＬに紐づいたアイコンをボタン４０３に表示させる。このため、カスタムメニュー制御部２１２は、同期アイコンルートノード６８１にアイコンＩＤ６８２を登録する。
【００６０】
同期背景画像ノード６９１は、背景画像の登録要求に伴って、カスタムメニュー制御部２１２が標準で有する背景画像以外を格納するためのノードであり、背景画像への参照情報である同期背景画像キー６９２を有する。
【００６１】
尚、非同期アイコンＩＤノード６１３（図１０）と同期アイコンＩＤノード６８２の対と、背景画像キー６２２と同期背景画像キー６９１の対は、設定同期ＤＢ２０６及び設定非同期ＤＢ２０７で一意に決まり、ＤＢ間で重複するキーは存在しない。このため、ボタンのアイコン及び背景画像をＤＢに関わらず一意に取得できる。
【００６２】
本実施形態では、ブラウザからのアイコンの登録要求に応じて、ＭＦＰ１０１で例えば図４（Ａ）のボタン４０３のように、通常のホームページのアイコン４０２ではなく、社内ポータルのアイコンを含むボタン４０３を表示する。そしてそのボタン４０３を含むメニュー画面をＭＦＰ１０２でも表示できるようにする。例えば図４（Ａ）のメニュー画面を表示するとき、図１１（Ｂ）のカスタムメニュー設定情報では、同期アイコンルートノード６８１のアプリケーションＩＤは「ブラウザ」を示し、同期アイコンＩＤノード６８２は「社内ポータルのアイコン」を特定する。
【００６３】
図１２は、実施形態に係るＭＦＰ１０１の起動時における機能登録の手順を示すシーケンス図である。この手順は、ＭＦＰ１０１のＣＰＵ１１１の制御の下で実行される。尚、図１２に記載のアプリケーションフレームワーク１２００は、機能（アプリケーション）のライフサイクル（開始、停止、再開、終了等）を管理するもので、ＭＦＰ１０１の起動時に一番初めに動作するものである。このアプリケーションフレームワーク１２００は、ＲＯＭ１１３或いは外部メモリ１２０に存在するＭＦＰ１０１のブートモジュールの一種である。
【００６４】
ここでは図４（Ａ）に示すカスタムメニュー画面を例に説明する。先ずＳ１２００でアプリケーションフレームワーク１２００は、カスタムメニュー制御部２１２に対して起動要求を行う。これによりカスタムメニュー制御部２１２は、設定同期ＤＢ２０６或いは設定非同期ＤＢ２０７から設定情報を取得し、必要に応じて更新処理を行うためのスレッドを初期化処理として起動させる。そしてＳ１２０１でカスタムメニュー制御部２１２は、スレッドの起動が完了すると、完了通知をアプリケーションフレームワーク１２００に通知する。続いてＳ１２０２，Ｓ１２０４でアプリケーションフレームワーク１２００は、コピー制御部２１０、ブラウザ制御部２１３と続けて起動要求を行う。そしてＳ１２０３，Ｓ１２０４でそれぞれの機能からの完了通知を受け取ると処理を終える。尚、コピー制御部２１０及びブラウザ制御部２１３の初期化処理では、カスタムメニュー制御部２１２の初期化処理と同様に、機能ごとの初期化処理を行うためのスレッドをそれぞれ生成する。そしてそれが完了すると、完了通知をアプリケーションフレームワーク１２００に通知する。
【００６５】
コピー制御部２１０はこの初期化処理の中で、Ｓ１２０６で、カスタムメニュー制御部２１２に対して機能の登録要求を行う。これに対してカスタムメニュー制御部２１２は、その機能の登録処理を実行した後、Ｓ１２０７で、登録完了通知をコピー制御部２１０に応答する。尚、Ｓ１２０６の登録要求では、アプリケーションＩＤ、アプリケーション名、アイコンが、カスタムメニュー制御部２１２に渡される。そしてブラウザ制御部２１３でも同様にその初期化処理で、カスタムメニュー制御部２１２に対して機能の登録要求と、登録処理、及び登録完了通知が実行される（Ｓ１２０８，Ｓ１２０９）。
【００６６】
図１３は、実施形態に係るＭＦＰ１０１のカスタムメニュー制御部２１２による登録処理を説明するフローチャートである。尚、この処理は、ＣＰＵ１１１がＲＯＭ１１３に記憶されているプログラムを実行することにより実現される。
【００６７】
まずＳ１３０１でＣＰＵ１１１は、機能（アプリケーション）から登録要求の際に引き渡された情報であるアプリケーションＩＤとアプリケーション名をアプリケーションリストノード６４１（図１０）に登録する。次にＳ１３０２に進みＣＰＵ１１１は、図１０に示す設定非同期ＤＢ２０７の設定ノード６３１を読み込む。そしてＳ１３０３に進みＣＰＵ１１１は、強制レイアウト設定６３４が未定義かどうかを判定する。ここで未定義と判定するとＳ１３０４に進み、その機能（アプリケーション）から登録要求時に渡されたアイコンを、呼び出し元の機能のアプリケーションＩＤと紐づけて非同期アイコンＩＤノード６１３に登録して、この処理を終了する。
【００６８】
一方、Ｓ１３０３で強制レイアウト設定６３４が定義済みであると判定したときはＳ１３０５に進む。Ｓ１３０５でＣＰＵ１１１は、機能から渡されたアイコンから、強制レイアウト設定６３４で利用するサイズのアイコンのみを非同期アイコンノード６１３（図１０）に登録して、この処理を終了する。例えば、３個レイアウトが強制レイアウト設定６３４で指定されている場合はＳサイズのアイコンの登録は行わず、９個レイアウトが指定されている場合はＭサイズのアイコンの登録は行わない。
【００６９】
図１４は、実施形態に係るＭＦＰ１０１の画面生成部９０２によるカスタムメニュー画面の生成処理を示すフローチャートである。尚、この処理は、ＣＰＵ１１１がＲＯＭ１１３に記憶されているプログラムを実行することにより実現される。
【００７０】
まずＳ１４０１でＣＰＵ１１１は、設定同期ＤＢ２０６からボタンルートノード６５１（図１１（Ａ））から、全てのボタンノード６５２を読み取る。そしてカスタムメニュー画面に配置するボタンの形成に必要な情報（コメントキー６５５、ボタン名称キー６５６、アイコンＩＤキー６５７）を取得する。またこのときＣＰＵ１１１は、ユーザ設定ノード６７１を設定同期ＤＢ２０６から読み込んでユーザボタンサイズ６７２を取得し、ボタンサイズとレイアウトとを決定する。そしてＣＰＵ１１１は、設定同期ＤＢ２０６からボタンインデックスノード６６１を読み込み、どのボタンをどの位置に配置するかを決定する。
【００７１】
次にＳ１４０２に進みＣＰＵ１１１は、認証制御部２０２によるログインが成功している場合、該当ユーザのユーザ背景キー６７３を設定同期ＤＢ２０６から読み取る。一方、ユーザの認証に失敗している場合は、設定非同期ＤＢ２０７から標準背景キー６３３を取得する。そしてＣＰＵ１１１は、取得した背景キーに対応する背景画像を、設定非同期ＤＢ２０７及び設定同期ＤＢ２０６から参照する。そしてＣＰＵ１１１は、背景キーに対応する背景画像が存在するかどうかを判定し、存在すると判定した場合はＳ１４０３に進み、背景キーに対応する背景画像を読み込んでＳ１４０５に進む。一方、背景キーに対応する背景画像が存在しない場合はＳ１４０４に進み、標準の背景キー、例えば背景画像キーが０番の背景画像を読み込んでＳ１４０５に進む。
【００７２】
Ｓ１４０５でＣＰＵ１１１は、Ｓ１４０１で取得したアイコンＩＤキー６５７から、ボタンサイズに適したアイコン（Ｍサイズ或いはＳサイズ）を設定非同期ＤＢ２０７と設定同期ＤＢ２０６から探索して読み込む。但し、設定同期ＤＢ２０６から取得したアイコンは、同期制御部２０５による同期処理が失敗することもあり、常に正常なものとは限らない。このような不正なアイコンが取得できた場合は、ボタンノード６５２のアプリケーションＩＤキー６５４から登録処理で登録された標準のアイコンを、非同期アイコンノード６１３から取得し直す。そしてＳ１４０６に進みＣＰＵ１１１は、背景画像の上に、ボタンや、マイボタン４０４、共有ボタン４０５、設定ボタン４４０などを配置して、例えば図４（Ａ）に示すようなカスタムメニュー画面を生成する。
【００７３】
尚、メニュー画面の部品の位置をＸＭＬ形式やＨＴＭＬ形式などでテンプレートファイルとして用意しておき、ユーザボタンサイズ６７２や標準ボタンサイズ６３２によって読み込むテンプレートファイルを変えて画面の態様を変えるようにしても良い。換言すると、画面の生成に必要な情報さえ取得できていれば、最終段階の画面の生成方法は限定されるものではないことに注意されたい。
【００７４】
この処理によれば、メニュー画面の設定情報として設定されたボタンを、メニュー画面に含まれる機能に対応するボタンとして、指定された背景画像上に、指定されたレイアウトとサイズで表示することができる。
【００７５】
図１５は、実施形態に係るＭＦＰ１０１のボタン制御部９０１によるカスタムメニューへのボタンの登録処理を説明するフローチャートである。尚、この処理は、ＣＰＵ１１１がＲＯＭ１１３に記憶されているプログラムを実行することにより実現される。
【００７６】
先ずＳ１５０１でＣＰＵ１１１は、機能からボタン登録の要求を受け付ける。そしてＳ１５０２に進みＣＰＵ１１１は、同期制御部２０５に同期中かどうかを問い合わせて、同期中かどうかを判定する。ここで同期中であると判定した場合はＳ１５０３に進み、不完全なボタンをマスタ設定ＤＢ３０１に反映させないために、機能にエラーを通知して、この処理を終了する。
【００７７】
一方、Ｓ１５０２でＣＰＵ１１１は、同期制御部２０５から同期中ではないという応答を受けるとＳ１５０４に進み、ボタンの登録要求の中に新規のアイコンの指定があるか否かを判定する。ここで新規のアイコンの指定があると判定するとＳ１５０５に進み、指定されたアイコンを、新規の同期アイコンＩＤノード６８２として設定同期ＤＢ２０６に追加してＳ１５０６に進む。一方、Ｓ１５０４で新規のアイコンの指定がないと判定したときは、アイコンの新規登録処理を行わずにＳ１５０６に進む。
【００７８】
Ｓ１５０６でＣＰＵ１１１は、ボタンノード６５２の各要素に値をセットし、ボタンノード６５２を更新する。尚、アクションＩＤキー６５３は、ボタンの登録要求に伴って、ＣＰＵ１１１が一意な識別情報を生成して設定する。アプリケーションＩＤキー６１２は、ボタンの登録を要求した機能から指定される。但し、ここでＣＰＵ１１１は、ボタンの登録要求が、設定非同期ＤＢ２０７のアプリケーションリストノード６４１に登録されている機能からの要求かどうかを判定し、ここに登録されている機能からの要求でない場合はその要求を破棄する。またコメントキー６５５、ボタン名称キー６５６、アイコンＩＤキー６５７には、機能から指定された値を設定する。そしてＳ１５０７に進みＣＰＵ１１１は、アクションＩＤキー６５３に紐づけて参照できるように、機能の設定情報を設定同期ＤＢ２０６に登録して、この処理を終了する。
【００７９】
この処理によれば、機能からのメニュー画面のボタンの登録要求に応じて、そのボタンに表示する名称やアイコンのＩＤを、設定同期ＤＢ２０６に登録することができる。
【００８０】
図１６は、実施形態に係るＭＦＰ１０１のカスタムメニュー制御部２１２が、強制レイアウト設定６３４の変更に伴って不要なアイコンを削除する処理を説明するフローチャートである。尚、この処理は、ＣＰＵ１１１がＲＯＭ１１３に記憶されているプログラムを実行することにより実現される。
【００８１】
まずＳ１６０１でＣＰＵ１１１は、設定同期ＤＢ２０６からアイコンルートノード６８１を、設定非同期ＤＢ２０７からアイコンルートノード６１１を読み込む。次にＳ１６０２に進みＣＰＵ１１１は、Ｓ１６０１で読み込んだノードから全てのアイコンＩＤノード（同期アイコンＩＤノード６８２、非同期アイコンＩＤノード６１３）を参照する。そして、強制レイアウト設定６３４によって不要となったアイコンが登録されているか否かを判定する。ここでＣＰＵ１１１は、不要なアイコンが登録されていると判定するとＳ１６０２からＳ１６０３に進み、該当するサイズのアイコンをアイコンＩＤノード６１３から削除して、この処理を終える。またＣＰＵ１１１は、Ｓ１６０２で不要なアイコンが登録されていないと判定した場合は、アイコンの削除処理を行わずに、この処理を終える。
【００８２】
図１７は、実施形態に係るＭＦＰ１０１の背景制御部９０３が背景画像の登録要求を受け付けた時の処理を説明するフローチャートである。尚、この処理は、ＣＰＵ１１１がＲＯＭ１１３に記憶されているプログラムを実行することにより実現される。
【００８３】
まずＳ１７０１でＣＰＵ１１１は、同期制御部２０５に同期中かどうかを問い合わせ、同期中であればＳ１７０５に進み、ネットワーク１０２を介して、登録要求元にエラー通知のレスポンスを返して、この処理を終了する。これは、不完全な背景画像をマスター設定ＤＢ３０１に反映させないためである。
【００８４】
一方、Ｓ１７０１で同期中でないと判定するとＳ１７０２に進み、ＣＰＵ１１１は、登録要求のあった背景画像のファイルサイズを算出する。そしてＳ１７０３に進みＣＰＵ１１１は、背景画像のサイズが上限値を超えているかどうかを判定し、超えているときはＳ１７０５に進み、ネットワーク１０２を介して、登録要求元にエラー通知のレスポンスを返して、この処理を終了する。
【００８５】
また一方、Ｓ１７０３で背景画像のサイズが上限値を超えていないと判定した場合はＳ１７０４に進み、ＣＰＵ１１１は、その背景画像と対応する背景画像キー６９２を設定同期ＤＢ２０６に生成して同期背景画像ノード６９１に登録する。そしてＳ１７０６に進みＣＰＵ１１１は、Ｗｅｂブラウザに成功結果を応答して、この処理を終了する。
【００８６】
次に本実施形態に係るＭＦＰ１０１と設定サーバ３００との間で実行される同期処理を説明する。
【００８７】
図１８は、実施形態に係る情報処理システムにおけるＭＦＰ１０１と設定サーバ３００との間で実行される設定値の同期処理を説明するシーケンス図である。尚、このシーケンス図におけるＭＦＰ１０１による処理は、ＭＦＰ１０１のＣＰＵ１１１がＲＯＭ１１３に記憶されているプログラムを実行して、ＣＰＵ１１１がシステムバス１１０及び各Ｉ／Ｆを通じて各構成要素を制御することにより実現される。
【００８８】
Ｓ１８０１でＣＰＵ１０１は、ＭＦＰ１０１のユーザの認証を行う。具体的には、ユーザがタッチパネル１１８を介してユーザＩＤ及びパスワードを入力すると、ＣＰＵ１１１は、予めＭＦＰ１０１に保存されているユーザＩＤとパスワードと照合する。そして、合致するユーザＩＤとパスワードがあれば、使用が許可されたユーザであると判断する。こうしてユーザの認証に成功するとＳ１８０２でＣＰＵ１１１は、その認証したユーザのユーザＩＤを示すユーザＩＤと、設定サーバ３００から設定情報を最後に取得した日時を示す最終更新日時情報とを設定サーバ３００に送信する。これにより、設定サーバ３００は、そのユーザＩＤ及び最終更新日時情報をＭＦＰ１０１から受信する。そしてＳ１８０３で設定サーバ３００は、ＭＦＰ１０１から送信されたユーザＩＤと最終更新日時情報とに基づいて、該当するユーザの設定情報を取得する。更に設定サーバ３００は、最終更新日時情報で示される日時より新しいタイミングで更新されたユーザ設定情報を特定する。そしてＳ１８０４で設定サーバ３００は、その特定したユーザ設定情報をＭＦＰ１０１に送信する。これによりＭＦＰ１０１は、設定サーバ３００から設定情報を取得して設定同期ＤＢ２０６に格納する。そしてＳ１８０５でＣＰＵ１１１１は、設定サーバ３００から取得した、そのユーザの設定情報をＭＦＰ１０１に反映する。
【００８９】
その後、そのユーザは任意のユーザオペレーションを実行するが、その例として、Ｓ１８０６で、ユーザは特定の設定値を変更する。このとき設定同期ＤＢ２０６に格納されている設定情報が変更されると、そのユーザオペレーションを実行した後、所定のタイミングで、ＭＦＰ１０１は、その設定同期ＤＢ２０６に格納されているユーザの設定情報を設定サーバ３００に送信して保存する。尚、本実施形態では、所定のタイミングとして、ログアウトの指示を受け付けた時に、設定サーバ３００への保存処理を行うものとする。尚、このタイミングはログアウトに限定するものではない。例えば、コピージョブやプリントジョブの実行を指示したタイミングであってもよいし、ジョブが正常に終了したタイミングであってもよい。また、ユーザが明示的に設定サーバ３００に保存する指示をしたタイミングであってもよい。
【００９０】
具体的には、Ｓ１８０７でＣＰＵ１１１は、ログアウトの指示を受け付けると、ログインユーザのユーザＩＤに対応する、設定同期ＤＢ２０６に格納されている設定情報を取得する。そしてＳ１８０８でＣＰＵ１１１は、そのユーザＩＤと、Ｓ１８０７で取得した、そのユーザＩＤに対応する設定情報を設定サーバ３００に送信してユーザのログアウト処理を実行する。これにより、設定サーバ３００は、ＭＦＰ１０１から送信されたユーザ設定情報を受信し、Ｓ１８０９で設定サーバ３００は、その受信したユーザ設定情報を設定サーバ３００に保存する。そしてＳ１８１０で設定サーバ３００は、保存が完了したことを示す完了情報をＭＦＰ１０１に送信し、ＭＦＰ１０１は、設定サーバ３００より保存完了情報を受信する。
【００９１】
そして、次にそのユーザがＭＦＰ１０２にログインすると、ＭＦＰ１０２は、ＭＦＰ１０２で認証したユーザのユーザＩＤを示すユーザＩＤと、設定サーバ３００から設定情報を最後に取得した日時を示す最終更新日時情報とを設定サーバ３００に送信する。これにより設定サーバ３００は、ＭＦＰ１０２から送信されたユーザＩＤと最終更新日時情報とに基づいて、該当するユーザの設定情報を取得し、その取得したユーザの設定情報をＭＦＰ１０２に送信する。こうしてＭＦＰ１０２のユーザは、ＭＦＰ１０１で設定したのと同じ設定情報を用いて、同じカスタムメニュー画面を表示することができる。
【００９２】
以上説明したように実施形態によれば、画像形成装置が有するボタンの特徴を示すアイコンを、他の画像形成装置と同期できるようになる。これにより、ユーザがどのような画像形成装置で作業をしても、同じ画面で、同様の操作で行えるようになる。
【００９３】
また、画像形成装置が標準で保有しているアイコンを同期対象とならない領域に登録することで、アイコンを不要に増やすことなく、機能を呼び出すためのショートカットボタンを増やすことができる。
【００９４】
一方で、画像形成装置が標準で保有していないアイコンを同期対象となる領域に登録することで、複数の画像形成装置が設置されている環境においても、適切なアイコンをショートカットボタンとして表示できる。これにより、画像形成装置にとって必要なアイコンに限定して同期対象にできるため、画像形成装置の記憶領域を不必要に圧迫することを回避でき、より多くのボタンを扱えるようになる。また或いは、アプリケーションを多く追加できるようになるため、ユーザの利便性が向上する。
【００９５】
また実施形態では、画像形成装置が標準で保有している背景画像を同期対象とならない領域に登録し、追加して登録された背景画像を同期対象となる領域に登録している。これにより、画像形成装置の背景画像の同期処理が行われた場合、標準で保有している背景画像は同期対象にならず、追加分のみが同期対象となる。これにより、標準で保有している背景画像が異なる画像形成装置が存在する場合でも、各画像形成装置に元々存在する背景画像を変更することなく追加の背景画像だけが同期されるので、不必要なネットワークの負荷の増大を回避できる。
【００９６】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００９７】
本発明は上記実施の形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。
【符号の説明】
【００９８】
１０１…ＭＦＰ，１１１…ＣＰＵ，ＲＯＭ…１１３，１１９…表示部、２０６…設定同期ＤＢ、２０７…設定非同期ＤＢ、２１２…カスタムメニュー制御部、９０１…ボタン制御部、９０２…画面生成部、９０３…背景制御部。
【図１】
0006502637.tif 000002
【図２】
0006502637.tif 000003
【図３】
0006502637.tif 000004
【図４】
0006502637.tif 000005
【図５】
0006502637.tif 000006
【図６】
0006502637.tif 000007
【図７】
0006502637.tif 000008
【図８】
0006502637.tif 000009
【図９】
0006502637.tif 000010
【図１０】
0006502637.tif 000011
【図１１】
0006502637.tif 000012
【図１２】
0006502637.tif 000013
【図１３】
0006502637.tif 000014
【図１４】
0006502637.tif 000015
【図１５】
0006502637.tif 000016
【図１６】
0006502637.tif 000017
【図１７】
0006502637.tif 000018
【図１８】
0006502637.tif 000019