(57)【要約】      （修正有）【課題】アプリケーションの設定を受け付ける設定画面に追加のアプリケーションの設定を容易に追加できる画像形成装置を提供する。【解決手段】アプリケーションが導入された画像形成装置であって、アプリケーションの設定画面を表示して設定値の入力を受け付ける設定受付手段と、設定受付手段がアプリケーションの設定画面を表示するために利用する情報を格納する格納手段と、追加のアプリケーションを導入するための処理を行う導入手段と、追加のアプリケーションの設定画面を表示するために利用される情報を格納手段に追加する、追加のアプリケーションにより実現される追加手段と、を有し、設定受付手段は、格納手段に追加された追加のアプリケーションの設定画面を表示するために利用される情報に基づき、追加のアプリケーションの設定画面を表示して追加のアプリケーションに対する設定値の入力を受け付ける。【選択図】図２
2019160226.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上のアプリケーションが導入された画像形成装置であって、
前記アプリケーションの設定画面を表示して前記アプリケーションに対する設定値の入力を受け付ける設定受付手段と、
前記設定受付手段が前記アプリケーションの設定画面を表示するために利用する情報を格納する格納手段と、
追加のアプリケーションを導入するための処理を行う導入手段と、
前記追加のアプリケーションの設定画面を表示するために利用される情報を前記格納手段に追加する、前記追加のアプリケーションにより実現される追加手段と、
を有し、
前記設定受付手段は、前記格納手段に追加された前記追加のアプリケーションの設定画面を表示するために利用される情報に基づき、前記追加のアプリケーションの設定画面を表示して前記追加のアプリケーションに対する設定値の入力を受け付けること
を特徴とする画像形成装置。
【請求項２】
前記追加手段は、
前記追加のアプリケーションが導入されたことに応じて、当該追加のアプリケーションの設定画面を表示するために利用される情報を前記格納手段に追加すること
を特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記追加手段は、前記追加のアプリケーションの設定画面を表示するために利用される情報として、複数の前記アプリケーションの設定画面の間の画面遷移における前記追加のアプリケーションの設定画面の配置箇所を示す配置箇所情報を、前記格納手段に追加し、
前記設定受付手段は、前記配置箇所情報に基づき、前記追加のアプリケーションの設定画面を含む複数の前記アプリケーションの設定画面の間の画面遷移を制御すること
を特徴とする請求項１又は２記載の画像形成装置。
【請求項４】
前記追加手段は、前記追加のアプリケーションの設定画面の複数の配置箇所のそれぞれを示す配置箇所情報を、前記格納手段に追加し、
前記設定受付手段は、前記複数の配置箇所情報に基づき、前記追加のアプリケーションの設定画面を含む複数の前記アプリケーションの設定画面の間の画面遷移において、前記追加のアプリケーションの設定画面を前記複数の配置箇所情報のそれぞれが示す配置箇所に表示すること
を特徴とする請求項３記載の画像形成装置。
【請求項５】
前記追加手段は、前記追加のアプリケーションの設定画面を表示するために利用される情報として、前記追加のアプリケーションの設定画面に表示する設定項目を示す表示項目情報を、前記格納手段に追加し、
前記設定受付手段は、前記表示項目情報が示す表示設定項目を含む前記追加のアプリケーションの設定画面を表示し、表示した設定項目に対する設定値の入力を受け付けること
を特徴とする請求項１乃至３何れか一項記載の画像形成装置。
【請求項６】
前記設定受付手段は、前記格納手段が格納する前記アプリケーション又は前記追加のアプリケーションの設定画面を表示するために利用する情報として、親子関係を持ち、種類が構造又は設定の要素の情報に基づいて、前記設定画面を選択させるために利用する選択画面を表示して前記設定画面の選択を受け付けるか、又は、前記設定画面を表示して前記設定値の入力を受け付けること
を特徴とする請求項１乃至３何れか一項記載の画像形成装置。
【請求項７】
前記設定受付手段は、前記要素の表示位置を示す画面テンプレートと、前記構造の要素及び前記設定の要素の設定種別毎に設けられ、前記要素の表示位置に表示する描画テンプレートと、を利用して、前記設定画面及び前記選択画面を生成して表示すること
を特徴とする請求項６記載の画像形成装置。
【請求項８】
１つ以上のアプリケーションが導入された画像形成装置において実行される設定値入力受付方法であって、
追加のアプリケーションを導入するための処理を行う導入ステップと、
前記アプリケーションの設定画面を表示して前記アプリケーションに対する設定値の入力を受け付ける設定受付手段が前記アプリケーションの設定画面を表示するために利用する情報を格納する格納手段に、前記追加のアプリケーションの設定画面を表示するために利用される情報を前記格納手段に追加する、前記追加のアプリケーションにより実現される追加ステップと、
を有し、
前記設定受付手段は、前記格納手段に追加された前記追加のアプリケーションの設定画面を表示するために利用される情報に基づき、前記追加のアプリケーションの設定画面を表示して前記追加のアプリケーションに対する設定値の入力を受け付けること
を特徴とする設定値入力受付方法。
【請求項９】
１つ以上のアプリケーションが導入された画像形成装置を、
前記アプリケーションの設定画面を表示して前記アプリケーションに対する設定値の入力を受け付ける設定受付手段、
前記設定受付手段が前記アプリケーションの設定画面を表示するために利用する情報を格納する格納手段、
追加のアプリケーションを導入するための処理を行う導入手段、
前記追加のアプリケーションの設定画面を表示するために利用される情報を前記格納手段に追加する、前記追加のアプリケーションにより実現される追加手段、
として機能させ、
前記設定受付手段は、前記格納手段に追加された前記追加のアプリケーションの設定画面を表示するために利用される情報に基づき、前記追加のアプリケーションの設定画面を表示して前記追加のアプリケーションに対する設定値の入力を受け付けること
を特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置、設定値入力受付方法及びプログラムに関する。
【背景技術】
【０００２】
近年、画像形成装置にはスキャンやコピー等の様々な機能が搭載されている。このような画像形成装置では、スキャンやコピー等の予め搭載されている機能を実行するために必要な設定値を入力できるように、設定値の入力画面を構成するようシステムプログラムが作成されていた。従来、このような画像形成装置では、新たな機能を追加しようとしてアプリケーションプログラム等の追加プログラムを開発してインストールした際に、その追加した機能の実行に新たな設定値の入力が必要となる場合、その追加した機能を実行するための設定値を入力できるようシステムプログラムを変更する必要があった。
【０００３】
例えば新しい設定値を必要とするアプリケーションプログラム等の追加プログラムが新たにインストールされた場合でも、システムプログラムの変更を必要としないように、システムプログラムと動的に連携可能に構成され、追加機能の実行に必要な設定値を入力するための情報が記述されたプラグインプログラムは従来から知られている（例えば特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の画像形成装置は新しい設定値を必要とするアプリケーションプログラム等の追加プログラムを新たにインストールする場合に、その追加プログラムに対応したプラグインプログラムを開発しなければならないという問題があった。また、従来の画像形成装置はプラグインプログラムのインストールの手間が掛かるという問題があった。
【０００５】
本発明の一実施形態は、アプリケーションの設定を受け付ける設定画面に追加のアプリケーションの設定を容易に追加できる画像形成装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明の一実施形態は、１つ以上のアプリケーションが導入された画像形成装置であって、前記アプリケーションの設定画面を表示して前記アプリケーションに対する設定値の入力を受け付ける設定受付手段と、前記設定受付手段が前記アプリケーションの設定画面を表示するために利用する情報を格納する格納手段と、追加のアプリケーションを導入するための処理を行う導入手段と、前記追加のアプリケーションの設定画面を表示するために利用される情報を前記格納手段に追加する、前記追加のアプリケーションにより実現される追加手段と、を有し、前記設定受付手段は、前記格納手段に追加された前記追加のアプリケーションの設定画面を表示するために利用される情報に基づき、前記追加のアプリケーションの設定画面を表示して前記追加のアプリケーションに対する設定値の入力を受け付けることを特徴とする。
【発明の効果】
【０００７】
本発明の一実施形態によれば、アプリケーションの設定を受け付ける設定画面に追加のアプリケーションの設定を容易に追加できる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態に係る画像形成装置の一例のハードウェア構成図である。
【図２】本実施形態に係る画像形成装置の一例の機能構成図である。
【図３】設定値格納部に格納されている設定値及び設定情報の一例の構成図である。
【図４】システムプログラムが有する設定構造の一例のイメージ図である。
【図５】システムプログラムが生成する設定画面の画面遷移を表した一例のイメージ図である。
【図６】本実施形態に係る画像形成装置に追加のアプリケーションがインストールされてから設定機能が設定画面を表示するまでの一例のシーケンス図である。
【図７】設定構造を記述したデータの一例の構成図である。
【図８】画面描画処理の一例のフローチャートである。
【図９】描画テンプレートの一例のイメージ図である。
【図１０】画面テンプレートの一例のイメージ図である。
【図１１】画面描画処理の一例のイメージ図である。
【図１２】画像形成装置を構成する操作部及び本体部の一例のハードウェア構成図である。
【図１３】本実施形態に係る画像形成装置の他の例の機能構成図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について図面を参照しながら詳細に説明する。
【００１０】
［第一の実施形態］
＜ハードウェア構成＞
《画像形成装置》
本実施形態に掛かる画像形成装置１は、例えば図１に示すハードウェア構成により実現される。図１は本実施形態に係る画像形成装置の一例のハードウェア構成図である。図１の画像形成装置１は、コントローラ６０１、操作パネル６０２、外部Ｉ／Ｆ６０３、通信Ｉ／Ｆ６０４、プリンタ６０５及びスキャナ６０６などを備える。
【００１１】
コントローラ６０１はＣＰＵ６１１、ＲＡＭ６１２、ＲＯＭ６１３、ＮＶＲＡＭ６１４及びＨＤＤ６１５などを備える。ＲＯＭ６１３は、各種プログラムやデータが格納されている。ＲＡＭ６１２はプログラムやデータを一時保持する。ＮＶＲＡＭ６１４は、例えば設定情報等が格納されている。また、ＨＤＤ６１５は各種プログラムやデータが格納されている。
【００１２】
ＣＰＵ６１１は、ＲＯＭ６１３やＮＶＲＡＭ６１４、ＨＤＤ６１５などからプログラムやデータ、設定情報等をＲＡＭ６１２上に読み出し、処理を実行することで、画像形成装置１全体の制御や機能を実現する。
【００１３】
操作パネル６０２はユーザからの入力を受け付ける入力部と、表示を行う表示部とを備えている。外部Ｉ／Ｆ６０３は外部装置とのインタフェースである。外部装置には、記録媒体６０３ａなどがある。これにより、画像形成装置１は外部Ｉ／Ｆ６０３を介して記録媒体６０３ａの読み取り及び／又は書き込みを行うことができる。記録媒体６０３ａにはＩＣカード、フレキシブルディスク、ＣＤ、ＤＶＤ、ＳＤメモリカード、ＵＳＢメモリ等がある。
【００１４】
通信Ｉ／Ｆ６０４は、画像形成装置１をネットワークに接続させる為のインタフェースである。これにより、画像形成装置１は通信Ｉ／Ｆ６０４を介してデータ通信を行うことができる。プリンタ６０５は印刷データを用紙に印刷する印刷装置である。スキャナ６０６は原稿から画像データ（電子データ）を読み取る読取装置である。
【００１５】
なお、図１のハードウェア構成は一例であって、プリンタ６０５及びスキャナ６０６の一方が無い構成や、プリンタ６０５及びスキャナ６０６以外の画像形成処理を行う機能を有する構成、それらを組み合わせた構成など、様々な構成が含まれる。
【００１６】
＜機能構成＞
次に、本実施形態に係る画像形成装置１の機能構成について説明する。図２は本実施形態に係る画像形成装置の一例の機能構成図である。図２の機能構成図では本実施形態の説明に不要な構成について省略している。
【００１７】
図２に示す画像形成装置１は、インストーラ１０、既存のアプリケーション１２Ａ〜１２Ｃ、追加のアプリケーション１２Ｅ、設定機能を有するシステムプログラム１４、設定値格納部１６、テンプレート格納部１８及び機能制御部２０を有する。なお、既存のアプリケーション１２Ａ〜１２Ｃ、及び、追加のアプリケーション１２Ｅの両方を示す場合は、アプリケーション１２と総称する。
【００１８】
インストーラ１０はアプリケーションプログラムを画像形成装置１に導入するプログラムの一例である。既存のアプリケーション１２Ａ〜１２Ｃは画像形成装置１に導入済みのアプリケーションプログラムの一例である。
【００１９】
追加のアプリケーション１２Ｅは、インストーラ１０のインストールにより追加で画像形成装置１に導入されたアプリケーションプログラムの一例である。本実施形態において追加のアプリケーション１２Ｅは、システムプログラム１４が設定画面を表示するために利用する設定値と設定情報とを設定値格納部１６に書き込む。また、アプリケーション１２Ｅは、設定値格納部１６に格納されている設定値及び設定情報に基づいて、所定の機能を提供する。
【００２０】
設定値格納部１６は、追加のアプリケーション１２Ｅが書き込んだアプリケーション１２Ｅの設定値及び設定情報の他、既存のアプリケーション１２Ａ〜１２Ｃの設定値及び設定情報が格納されている。設定機能を有するシステムプログラム１４はユーザに設定機能を提供するプログラムの一例である。システムプログラム１４は設定値格納部１６に格納されているアプリケーション１２の設定値及び設定情報に基づき、設定画面を生成して表示する。
【００２１】
テンプレート格納部１８は後述の画面描画処理を行うためのテンプレート情報（後述する図９の描画テンプレート及び図１０の画面テンプレート）が格納されている。機能制御部２０はアプリケーション１２と連携して、設定値格納部１６に格納されている設定値及び設定情報に基づいて、画面形成機能を提供する。
【００２２】
例えばコピー機能を利用するためのアプリケーション１２の指示に応じて、機能制御部２０は設定値及び設定情報として設定された優先給紙トレーから用紙を取得してコピーを実行する。
【００２３】
図３は設定値格納部に格納されている設定値及び設定情報の一例の構成図である。図３の設定値及び設定情報１００は既存のアプリケーション１２Ａ〜１２Ｃの設定値及び設定情報を示している。図３の設定値及び設定情報１０２は追加のアプリケーション１２Ｅの設定値及び設定情報を示している。
【００２４】
図３の設定値及び設定情報は項目として、設定オーナ、ＩＤ、設定種別、入力範囲、タイトル、設定値、配置箇所を有している。設定オーナは、その設定値及び設定情報に対応するアプリケーション１２を示す。ＩＤは図３の設定値及び設定情報を識別する識別情報の一例である。設定種別は数値型、文字列型、択一選択型など、設定値の種別を示す。
【００２５】
入力範囲は設定値の範囲を示す。タイトルは、設定画面においてユーザに、その設定値を識別させるためのタイトルである。設定値は、その設定値及び設定情報に設定されている設定値であって、設定画面に表示する設定値を示す。配置箇所は、その設定値及び設定情報を配置する箇所が、後述する設定構造における位置で表されている。
【００２６】
例えば図３に示したＩＤ「Ｅ００１」の配置箇所「その他の設定＞アプリケーションＥ設定」は、設定構造上の構造「アプリケーションＥ設定」の項目「Ｅ００１」であることを示している。図３に示したＩＤ「Ｅ００３」の配置箇所は、設定構造上の構造「アプリケーションＥ設定」及び「省エネ設定」の項目「Ｅ００３」であることを示している。このように、一つの設定値及び設定情報の項目を、複数の配置箇所に配置することも可能である。
【００２７】
システムプログラム１４は図４に示すような設定構造を有している。図４はシステムプログラムが有する設定構造の一例のイメージ図である。図４に示すように、設定構造は構造と項目とがツリー構造で表されている。なお、図４の設定構造は図３の設定値及び設定情報に対応している。図４において項目１１２は図３のＩＤ「Ｅ００３」の設定値及び設定情報により配置された項目である。また、図４において構造１１０及び項目１１４〜１１８は図３のＩＤ「Ｅ００１」「Ｅ００２」及び「Ｅ００３」の設定値及び設定情報により配置された構造及び項目である。
【００２８】
なお、システムプログラム１４は既存のアプリケーション１２Ａ〜１２Ｃの設定構造を基本となる設定構造として予め保持し、設定機能の起動時、図３の設定値及び設定情報１０２に対応する追加の設定構造（構造１１０及び項目１１２〜１１８）を統合するようにしてもよい。例えばシステムプログラム１４は、ＪＳＯＮ（JavaScript Object Notation）などのデータ記述言語で記述された図４に示すような設定構造をデータとして保持している。
【００２９】
図３の設定値及び設定情報及び図４の設定構造の場合、システムプログラム１４は例えば図５に示すように画面遷移する設定画面を生成し、表示する。図５はシステムプログラムが生成する設定画面の画面遷移を表した一例のイメージ図である。例えば、図４の構造「システム設定」に対応する設定画面１０３０に、この構造「システム設定」の「子」である構造「省エネ設定」及び構造「管理者設定」のそれぞれに対応するボタンが表示される。「省エネ設定」ボタンが選択されると、図４の構造「省エネ設定」に対応する設定画面１０４０が表示される。この設定画面１０４０には、構造「省エネ設定」の「子」である項目「Ｂ００２」及び項目「Ｅ００３」のそれぞれに対応する設定項目が表示される。図５の設定画面１０００及び１０３０は追加のアプリケーション１２Ｅによる構造や項目の追加が行われていない。
【００３０】
図５の設定画面１０１０は、追加のアプリケーション１２Ｅによる構造１１０の追加が行われている。図５の設定画面１０２０は、追加のアプリケーション１２Ｅによる項目１１４〜１１８の追加が行われている。図５の設定画面１０４０は追加のアプリケーション１２Ｅによる項目１１２の追加が行われている。
【００３１】
このように、本実施形態に掛かる画像形成装置１では、インストールされた追加のアプリケーション１２Ｅが設定値格納部１６に、追加のアプリケーション１２Ｅの設定値及び設定情報を書き込む。インストールされた追加のアプリケーション１２Ｅが設定値格納部１６に書き込む設定値及び設定情報は、図３に示したように、設定画面を生成して表示するために必要な情報である。
【００３２】
設定機能を提供するシステムプログラム１４は、設定値格納部１６に書き込まれている設定値及び設定情報を読み出して、既存のアプリケーション１２Ａ〜１２Ｃ及び追加のアプリケーション１２Ｅの設定画面１０００〜１０４０を生成し、表示する。本実施形態によればシステムプログラム１４を変更することなく、既存のアプリケーション１２Ａ〜１２Ｃの設定機能に、追加のアプリケーション１２Ｅの設定機能を追加できる。
【００３３】
＜処理の詳細＞
次に、本実施形態に係る画像形成装置１の処理の詳細について説明する。図６は本実施形態に係る画像形成装置に追加のアプリケーションがインストールされてから設定機能が設定画面を表示するまでの一例のシーケンス図である。
【００３４】
ステップＳ１１においてインストーラ１０は、追加のアプリケーション１２Ｅのインストール操作を受け付ける。ステップＳ１２に進み、インストーラ１０はアプリケーション１２Ｅをインストールする。ステップＳ１３に進み、インストーラ１０はシステムプログラム１４にアプリケーション１２Ｅのインストールを通知する。
【００３５】
ステップＳ１４に進み、システムプログラム１４はアプリケーション１２Ｅに設定値格納要求を行う。システムプログラム１４から設定値格納要求を受信したアプリケーション１２ＥはステップＳ１５に進み、アプリケーション１２Ｅの設定値、設定情報を設定値格納部１６に書き込む。
【００３６】
例えば図３の例では、設定値格納部１６に既存のアプリケーション１２Ａ〜１２Ｃの設定値及び設定情報１００が格納されており、ステップＳ１５の処理により、追加のアプリケーション１２Ｅの設定値及び設定情報１０２が追加される。ステップＳ１６に進み、アプリケーション１２Ｅはシステムプログラム１４に設定値格納応答を返す。
【００３７】
ステップＳ１７においてシステムプログラム１４は、設定機能を起動する操作を受け付ける。ステップＳ１８に進み、システムプログラム１４は設定値格納部１６に格納されている図３のアプリケーション１２の設定値及び設定情報を読み出す。システムプログラム１４はステップＳ１９に進み、既存のアプリケーション１２Ａ〜１２Ｃの設定構造に追加のアプリケーション１２Ｅの設定構造を統合する。例えば図４の例では構造１１０及び項目１１４〜１１８が設定構造に統合される。
【００３８】
ステップＳ１９の処理により、システムプログラム１４が保持する例えばＪＳＯＮで記述された設定構造は図７に示すように更新される。図７は設定構造を記述したデータの一例の構成図である。
【００３９】
なお、ＪＳＯＮは名前（Key）と値（Value）とのペアの集まりであり、「｛  ｝」で括る構成をオブジェクトといい、「［  ］」で括る構成を配列と呼ぶ。例えば図７のオブジェクト２００の「"id":"settings:system:eco"」の場合は「id」が名前（Key）となり、「settings:system:eco」が値（Value）となる。
【００４０】
また、オブジェクト２００は、省エネ設定画面（構造）を定義する。また、オブジェクト２００の「children」の値は、２つの設定項目（項目）を定義する配列となる。このようにオブジェクト２００の「children」の値に記載された配列構造のオブジェクト２０４及び２０６が「子」を表す。さらに、オブジェクト２０８は、アプリケーションＥ設定画面（構造）を定義し、オブジェクト２０８の「children」の値は、３つの設定項目（項目）を定義する配列となる。また、複数のオブジェクトの従属関係により、複数のオブジェクトのそれぞれにより定義される画面の画面遷移の関係を表す。例えば、オブジェクト２１０の「children」の値にオブジェクト２００が記載されていることは、オブジェクト２１０により定義された画面から、オブジェクト２００により定義された画面に遷移できることを表す。
【００４１】
なお、図３の設定値及び設定情報の項目「配置箇所」には、図７のオブジェクト２００の場合に「"id":"settings:system:eco"」の値「settings:system:eco」が格納される。図７の例では「"type":"category"」付きのオブジェクト２００が「構造」であり、付いていないオブジェクト２０４及び２０６が「項目」となる。図７の例では「項目」がＩＤの昇順に並ぶ。設定項目の詳細は、図３の設定値及び設定情報の対応するレコードに格納されている。このように、各設定画面の従属関係（画面遷移の関係）は図７の設定構造のように定義される。
【００４２】
図６のステップＳ２０に戻り、システムプログラム１４はステップＳ１９で統合された例えば図７のような設定構造から例えば設定画面１０００を生成する。ステップＳ２１に進み、システムプログラム１４は設定画面１０００を表示する。
【００４３】
ステップＳ２２で設定画面１０００の「その他の設定」が選択されると、ステップＳ２３に進み、システムプログラム１４はステップＳ１９で統合された例えば図７のような設定構造から例えば設定画面１０１０を生成する。ステップＳ２４に進み、システムプログラム１４は設定画面１０１０を表示する。
【００４４】
ステップＳ２５で設定画面１０１０の「アプリケーションＥ設定」が選択されると、ステップＳ２６に進み、システムプログラム１４は設定値格納部１６から設定画面１０２０を生成して表示するために必要な情報を読み出す。ステップＳ２７に進み、システムプログラム１４はステップＳ１９で統合された例えば図７のような設定構造と、ステップＳ２６で読み出した設定値及び設定情報から例えば設定画面１０２０を生成する。ステップＳ２８に進み、システムプログラム１４は設定画面１０２０を表示する。
【００４５】
図６のシーケンス図に示したように、システムプログラム１４は「children」の値を描画対象とする。すなわち、本実施形態では「子」の「子」の値が描画対象外となる。例えば設定画面１０００を生成するとき、システムプログラム１４は設定画面１０００のオブジェクトの「children」の値に記載されている「システム設定」と「コピー設定」と「スキャナ設定」と「その他の設定」とが描画対象となる。一方、設定画面１０３０のオブジェクトの「children」の値に記載されている「省エネ設定」と「管理者設定」とが描画の対象となる。
【００４６】
以上、図６のシーケンス図では選択された設定画面を順次生成する例を示したが、全ての設定画面を一遍に生成しておいてもよい。また、図７の設定構造はＪＳＯＮの他、ＸＭＬ（eXtensible Markup Language）やＨＴＭＬ（HyperText Markup Language）などの他のフォーマットにより設定画面を定義するようにしてもよい。
【００４７】
ステップＳ２０、Ｓ２３及びステップＳ２７における設定画面の生成は、例えば図８のフローチャートに示す手順で行われる。図８は、画面描画処理の一例のフローチャートである。図８の画面描画処理では、テンプレート格納部１８に格納されている図９の描画テンプレート及び図１０の画面テンプレートを利用して設定画面を描画する。
【００４８】
ステップＳ５１に進み、システムプログラム１４は図１０の画面テンプレートの「画面タイトル表示位置」に「親」の「title」の値を描画する。ステップＳ５２〜Ｓ５７の処理は「子」の数だけ繰り返される。
【００４９】
ステップＳ５２においてシステムプログラム１４は「子」の要素（オブジェクト）の種類が構造であるか項目であるかを判定する。構造であれば、システムプログラム１４はステップＳ５３に進み、要素の種類「構造」の図９の描画テンプレートを図１０の画面テンプレートに対して描画する。
【００５０】
構造でなければステップＳ５４に進み、システムプログラム１４は「子」の要素の設定種別を判定する。システムプログラム１４は「子」の要素の設定種別が「数値型」であればステップＳ５５に進み、要素の種類「設定」及び設定種別「数値型」に対応する描画テンプレートを図１０の画面テンプレートに対して描画する。
【００５１】
システムプログラム１４は「子」の要素の設定種別が「文字列型」であればステップＳ５６に進み、要素の種類「設定」及び設定種別「文字列型」に対応する描画テンプレートを図１０の画面テンプレートに対して描画する。システムプログラム１４は「子」の要素の設定種別が「択一選択型」であればステップＳ５７に進み、要素の種類「設定」及び設定種別「択一選択型」に対応する描画テンプレートを図１０の画面テンプレートに対して描画する。
【００５２】
図８に示した画面描画処理の具体例は、例えば図１１に示すように行われる。図１１は画面描画処理の一例のイメージ図である。図１１のイメージ図は図７のオブジェクト２０８に基づき、設定画面１０２０を描画する処理を示している。
【００５３】
システムプログラム１４は画面テンプレート３００の「画面タイトル表示位置」に設定構造３０４の「親」の「title」の値「アプリケーションＥ設定」を描画する。また、システムプログラム１４は設定構造３０４の「子」の要素を順番に読み出す。システムプログラム１４は読み出した「子」の要素の設定種別に対応する描画テンプレート３０２を画面テンプレートに対して描画する。
【００５４】
例えばシステムプログラム１４は「子」であるＩＤ「Ｅ００１」の要素の設定種別に対応する設定種別「数値型」の描画テンプレートを読み出し、画面テンプレート３００に描画し、すなわち、設定画面１０２０の「リセットタイマー」設定項目を描画する。また、システムプログラム１４は「子」であるＩＤ「Ｅ００２」の要素の設定種別に対応する設定種別「択一選択型」の描画テンプレートを読み出し、画面テンプレート３００に描画し、すなわち、設定画面１０２０の「デフォルトカラーモード」設定項目を描画する。さらに、システムプログラム１４は「子」であるＩＤ「Ｅ００３」の要素の設定種別に対応する設定種別「択一選択型」の描画テンプレートを読み出し、画面テンプレート３００に描画し、すなわち、設定画面１０２０の「アプリケーションＥ省エネ優先設定」設定項目を描画する。
【００５５】
結果、システムプログラム１４は、システムプログラム１４を変更することなく、追加のアプリケーション１２Ｅの設定画面１０２０を生成し、画像形成装置１に搭載されたＷｅｂブラウザなどに表示させることができる。
【００５６】
また、設定画面１０１０の画面描画処理の具体例は、例えば図７のオブジェクト２１２に基づき、以下のように行われる。
【００５７】
システムプログラム１４は画面テンプレートの「画面タイトル表示位置」に「title」の値「その他の設定」を描画する。また、システムプログラム１４は「子」の要素を順番に読み出し、「子」の要素の設定種別に対応する描画テンプレートを画面テンプレートに対して描画する。
【００５８】
例えば、「子」の要素「アプリケーションＡ設定」の設定種別は「構造」であると判定し（ステップＳ５２）、要素の種類「構造」に対応する描画テンプレートを図１０の画面テンプレートに対して描画し（ステップＳ５３）、すなわち、設定画面１０１０の「アプリケーションＡ設定」ボタンを描画する。続いて、次の「子」の要素「アプリケーションＥ設定」の設定種別は「構造」であると判定し（ステップＳ５２）、同じように、要素の種類「構造」に対応する描画テンプレートを図１０の画面テンプレートに対して描画し（ステップＳ５３）、すなわち、設定画面１０１０の「アプリケーションＥ設定」ボタンを描画する。
【００５９】
結果、システムプログラム１４は、システムプログラム１４を変更することなく、追加のアプリケーション１２Ｅの設定画面１０２０を表示させるためのボタンを含む設定画面１０１０を生成し、画像形成装置１に搭載されたＷｅｂブラウザなどに表示させることができる。なお、Ｗｅｂブラウザは表示機能を持つプログラムの一例である。
【００６０】
［他の実施形態］
例えば図１の画像形成装置１は操作部として機能する装置と本体部として機能する装置のように、複数の装置から構成されてもよい。図１２は、画像形成装置を構成する操作部及び本体部の一例のハードウェア構成図である。
【００６１】
図１２に示すように、操作部７１０は、ＣＰＵ７１１、ＲＯＭ７１２、ＲＡＭ７１３、フラッシュメモリ７１４、操作パネル７１５、接続Ｉ／Ｆ７１６、通信Ｉ／Ｆ７１７を有しており、各要素は、バス７１８を介して相互に接続されている。
【００６２】
ＣＰＵ７１１は、ＲＡＭ７１３をワークエリアとしてＲＯＭ７１２またはフラッシュメモリ７１４に記憶された各種プログラムを実行することにより、操作部７１０全体を制御するとともに、各種機能を実現する。フラッシュメモリ７１４は、不揮発性記憶媒体であり、ＣＰＵ７１１が実行する各種プログラムや各種データを記憶する。
【００６３】
操作パネル７１５は、ユーザが各種操作を行うための表示・操作部及びハードウェアキーを有する。操作パネル７１５の表示・操作部は、更に、画像形成装置１の内部状態を表示することができる。接続Ｉ／Ｆ７１６は、通信路７３０を介して本体部７２０と通信するためのインタフェースである。ここでは、ＵＳＢ規格のインタフェースが用いられるものとする。通信Ｉ／Ｆ７１７は、ネットワークを介して通信するためのインタフェースである。
【００６４】
本体部７２０は、ＣＰＵ７２１、ＲＯＭ７２２、ＲＡＭ７２３、ＨＤＤ７２４、エンジン部７２５、接続Ｉ／Ｆ７２６、通信Ｉ／Ｆ７２７を有しており、各要素は、バス７２８を介して相互に接続されている。
【００６５】
ＣＰＵ７２１は、ＲＡＭ７２３をワークエリアとしてＲＯＭ７２２またはＨＤＤ７２４に記憶された各種プログラムを実行することにより、本体部７２０全体を制御するとともに、各種機能を実現する。ＨＤＤ７２４は、不揮発性記憶媒体であり、ＣＰＵ７２１が実行する各種プログラムや各種データを記憶する。
【００６６】
エンジン部７２５は、コピー機能、スキャナ機能、ファクシミリ機能、プリンタ機能等の画像処理機能を実現するための情報処理を行うハードウェアである。エンジン部７２５は、例えば、原稿をスキャンして読み取るスキャナ、用紙等のシート材への印刷を行うプロッタ、ファクシミリ通信を行う通信部を有する。更に、印刷済みのシート材を仕分けるフィニッシャや、原稿を自動給送するＡＤＦ（自動原稿給送装置）等が含まれていてもよい。また、接続Ｉ／Ｆ７２６は通信路７３０を介して操作部７１０と通信するためのインタフェースである。ここでは、ＵＳＢ規格のインタフェースが用いられるものとする。通信Ｉ／Ｆ７２７は、ネットワークを介して通信するためのインタフェースである。
【００６７】
次に、図１２に示すような操作部７１０と本体部７２０とが分かれたハードウェア構成の画像形成装置１の機能構成について説明する。図１３は本実施形態に係る画像形成装置の他の例の機能構成図である。図１３の機能構成図では本実施形態の説明に不要な構成について省略している。
【００６８】
図１３の画像形成装置１は、インストーラ１０、既存のアプリケーション１２Ａ〜１２Ｃ、追加のアプリケーション１２Ｅ及び設定機能を有するシステムプログラム１４、が操作部７１０に設けられている。また、図１３の画像形成装置１は設定値格納部１６、テンプレート格納部１８及び機能制御部２０が本体部７２０に設けられている。インストーラ１０、既存のアプリケーション１２Ａ〜１２Ｃ、追加のアプリケーション１２Ｅ、設定機能を有するシステムプログラム１４、設定値格納部１６、テンプレート格納部１８及び機能制御部２０の処理内容は図２と同様であるため、説明を省略する。
【００６９】
なお、機能制御部２０以外のインストーラ１０、既存のアプリケーション１２Ａ〜１２Ｃ、追加のアプリケーション１２Ｅ、設定機能を有するシステムプログラム１４、設定値格納部１６及びテンプレート格納部１８は、操作部７１０及び本体部７２０のどちらに設けられてもよい。
【００７０】
（まとめ）
以上、本実施形態によれば、既存のアプリケーション１２Ａ〜１２Ｃの画面遷移する設定画面に、追加のアプリケーション１２Ｅの設定を容易に追加できる。
【００７１】
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【００７２】
１    画像形成装置
１０    インストーラ
１２Ａ〜１２Ｃ    既存のアプリケーション
１２Ｅ    追加のアプリケーション
１４    システムプログラム
１６    設定値格納部
１８    テンプレート格納部
２０    機能制御部
１００    既存のアプリケーションの設定値及び設定情報
１０２    追加のアプリケーションの設定値及び設定情報
１１０    構造
１１２〜１１８    項目
２００、２０４、２０６及び２０８    オブジェクト
３００    画面テンプレート
３０２    描画テンプレート
３０４    設定構造
７１０    操作部
７２０    本体部
１０００、１０１０、１０２０、１０３０及び１０４０    設定画面
【先行技術文献】
【特許文献】
【００７３】
【特許文献１】特開２０１７−１４４６４９号公報
【図１】
2019160226.tif 000003
【図２】
2019160226.tif 000004
【図３】
2019160226.tif 000005
【図４】
2019160226.tif 000006
【図５】
2019160226.tif 000007
【図６】
2019160226.tif 000008
【図７】
2019160226.tif 000009
【図８】
2019160226.tif 000010
【図９】
2019160226.tif 000011
【図１０】
2019160226.tif 000012
【図１１】
2019160226.tif 000013
【図１２】
2019160226.tif 000014
【図１３】
2019160226.tif 000015