説明

情報処理装置、その制御方法、プログラム、及び記憶媒体

【課題】ユーザの要望に応じてカスタマイズ可能な操作画面において、外部装置が提供するアプリケーションの操作ボタンをカスタマイズ可能な情報処理装置及びその制御方法を提供する。
【解決手段】本情報処理装置は、Webアプリケーションの操作画面を表示中に、さらに、現在実行しているアプリケーションの現在の設定情報で実行するためのカスタムボタンをカスタムメニューへ追加するための登録ボタンを表示する。また、情報処理装置は、上記登録ボタンが押下されると、カスタムメニューに追加するカスタムボタンの情報として、ボタンデータ及びアクションデータを互いに対応付けて管理する。また、ユーザからカスタムメニューの表示が指示されると、ボタンデータ及びアクションデータを用いて、カスタムボタンを含むカスタムメニューを生成して表示する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、外部装置が提供する外部アプリケーションを利用可能な情報処理装置、その制御方法、プログラム、及び記憶媒体に関するものである。
【背景技術】
【0002】
PCなどの情報処理装置がネットワーク上のWebサーバと接続され、Webサーバにより提供される操作画面を、情報処理装置が備えるWebブラウザ上に表示することが知られている。この場合、情報処理装置のWebブラウザがWebサーバに対して操作画面を要求し、Webサーバ上のWebアプリケーションが情報処理装置からの要求に応じて、Webブラウザに操作画面を表示させるためのHTMLファイルを情報処理装置に送信する。情報処理装置のWebブラウザは、受信したHTMLファイルを解析し、受信したHTMLファイルの記述に基づいた操作画面をWebブラウザ画面として表示する。さらに、Webブラウザに表示された操作画面を介してユーザが指示を入力すると、入力された指示をWebブラウザがWebサーバに対して通知する。そして、この通知を受けたWebサーバ上のWebアプリケーションは、入力された指示に従って処理を実行する。
【0003】
ところで、最近ではスキャナやプリンタを備えたMFP(Multi Function Peripheral)の中にも、上述したようなWebブラウザを備えているものがある。そして、MFPは、上述した手順を用いてWebサーバにより提供される操作画面をMFPのWebブラウザに表示し、ユーザからの各種指示を受け付ける。
【0004】
また、特許文献1には、Webサーバが情報処理装置へ指示内容を選択するボタン含む画面情報を配信する。即ち、情報処理装置のユーザは、配信された画面情報に基づいて表示される画面のボタンを選択することにより、選択したボタンに対応付けられた指示内容に従ってWebブラウザ画面の表示やアプリケーションの起動を行える。これにより、ユーザは、配信されたボタンを使用することで、使用頻度の高い機能を容易に呼び出すことができる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2002−215573号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上記従来技術では、以下に記載する問題がある。例えば、配信される画面に含まれるボタンの内容は、Webサーバの管理者が事前に登録したものに限定される。また、ボタン選択時に表示するWebブラウザ画面は、各入力項目に、例えば、アドレス、氏名、印刷部数といった設定までを入力済みの状態で表示することができない。このように、上記従来技術では、Webサーバから提供される画面では、Webブラウザを使用するユーザの要望に応じてカスタマイズされた画面を表示することが困難であった。
【0007】
本発明は、上述の問題に鑑みて成されたものであり、ユーザの要望に応じてカスタマイズ可能な操作画面において、外部装置が提供するアプリケーションの操作ボタンをカスタマイズ可能な情報処理装置及びその制御方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明は、例えば、外部装置が提供する外部アプリケーションを利用可能な情報処理装置として実現できる。情報処理装置は、外部アプリケーションの操作画面と、現在起動されているアプリケーションにおいて現在設定されている設定情報で処理を実行させるためのカスタムボタンをカスタムメニューに登録するための登録ボタンとを表示部に表示する第1表示制御手段と、登録ボタンが押下されると、操作画面上に現在入力されている設定情報を解析し、カスタムボタンに関するボタンデータと、現在設定されている設定情報に関するアクションデータとを対応付けて記憶手段に格納する格納手段と、カスタムメニューの表示が指示されると、ボタンデータ及びアクションデータを記憶手段から読み出し、読み出したボタンデータ及びアクションデータに対応するカスタムボタンを含むカスタムメニューを生成して表示部に表示する第2表示制御手段とを備えることを特徴とする。
【発明の効果】
【0009】
本発明は、例えば、ユーザの要望に応じてカスタマイズ可能な操作画面において、外部装置が提供するアプリケーションの操作ボタンをカスタマイズ可能な情報処理装置及びその制御方法を提供できる。
【図面の簡単な説明】
【0010】
【図1】第1の実施形態に係る情報処理システム100の全体を示す図である。
【図2】第1の実施形態に係るMFP101の構成例を示すブロック図である。
【図3】第1の実施形態に係るWebサーバ103の構成例を示すブロック図である。
【図4】第1の実施形態に係る情報処理システム100の制御構成例を示す図である。
【図5】第1の実施形態に係るボタンデータ501及びアクションデータ510のデータフォーマットの一例を示す図である。
【図6】第1の実施形態に係るコピーWebアプリケーションのユーザインタフェースを示す図である。
【図7】第1の実施形態に係るボタン登録処理の手順を示すフローチャートである。
【図8】第1の実施形態に係るカスタムメニュー470の操作画面800を示す図である。
【図9】第1の実施形態に係るボタン実行処理の手順を示すフローチャートである。
【図10】第2の実施形態に係るカスタムメニュー470の操作画面1000を示す図である。
【図11】第2の実施形態に係るボタン削除処理の手順を示すフローチャートである。
【図12】第2の実施形態に係るボタン削除判定処理の手順を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、本発明を実施するための最良の形態について図面を用いて説明する。尚、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【0012】
<第1の実施形態>
以下では、図1乃至図9を参照して本発明に係る第1の実施形態について説明する。本実施形態では、情報処理装置の一例であるMFPにおいて、Webブラウザを用いてWebアプリケーションに対して操作画面を要求する。その後、MFPが提供された操作画面上に表示されたWebブラウザ画面の各入力項目の入力値をボタンとして登録する例について説明する。
【0013】
<情報処理システムの構成>
まず、図1を参照して、本実施形態における情報処理システム100の全体構成について説明する。LAN110には、MFP101、Webサーバ103、Webサーバ104が互いに通信可能に接続されている。また、LAN110上には不図示のFTP(File Transfer Protocol)サーバも備えられており、MFP101からFTPサーバに対して画像データをFTP送信することもできる。なお、ここでは、本実施形態に係る情報処理システムの一例を示したものであり、各装置の種類及び数を限定する意図はない。
【0014】
<MFPの構成>
次に、図2を参照して、MFP101の構成例について説明する。MFP101は、制御部210、操作部219、プリンタ220及びスキャナ221を備える。また、制御部210は、CPU211、ROM212、RAM213、HDD214、操作部I/F215、プリンタI/F216、スキャナI/F217及びネットワークI/F218を備える。
【0015】
制御部210は、MFP101の動作を統括的に制御する。CPU211は、ROM212に記憶された制御プログラムを読み出して読取制御や送信制御などの各種制御処理を実行する。RAM213は、CPU211の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD214は、画像データや各種プログラム、或いは後述する各種情報テーブルを記憶する。
【0016】
操作部I/F215は、操作部(表示部)219と制御部210とを接続する。操作部219には、タッチパネル機能を有する液晶表示部やキーボードなどが備えられている。また、MFP101には後述するWebブラウザ機能が備えられている。MFP101のWebブラウザはWebサーバ103から受信したHTMLファイル(画面情報)を解析し、受信したHTMLファイルの記述に基づく操作画面を操作部219に表示する。
【0017】
プリンタI/F216は、プリンタ220と制御部210とを接続する。プリンタ220で印刷すべき画像データはプリンタI/F216を介して制御部210からプリンタ220に転送され、プリンタ220において記録媒体上に印刷される。スキャナI/F217は、スキャナ221と制御部210とを接続する。スキャナ221は、原稿上の画像を読み取って画像データを生成し、スキャナI/F217を介して制御部210に入力する。ネットワークI/F218は、制御部210(MFP101)をLAN110に接続する。ネットワークI/F218は、LAN110上の外部装置(例えば、Webサーバ103)に画像データや情報を送信したり、LAN110上の外部装置から各種情報を受信したりする。
【0018】
<Webサーバの構成>
次に、図3を参照して、Webサーバ103の構成例について説明する。なお、Webサーバ104は、Webサーバ103と同様の構成を有するため、説明を省略する。Webサーバ103は、制御部310を備える。また、制御部310は、CPU311、ROM312、RAM313、HDD314及びネットワークI/F315を備える。
【0019】
制御部310は、Webサーバ103の動作を統括的に制御する。CPU311は、ROM312に記憶された制御プログラムを読み出して各種制御処理を実行する。RAM313は、CPU311の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD314は、画像データや各種プログラム、或いは後述する各種情報テーブルを記憶する。ネットワークI/F315は、制御部310(Webサーバ103)をLAN110に接続する。ネットワークI/F315は、LAN110上の他の装置との間で各種情報を送受信する。
【0020】
<情報処理システムの制御構成>
次に、図4を参照して、情報処理システム100全体の制御構成例について説明する。図4に示す各機能部は、MFP101、Webサーバ103のそれぞれに備えられているCPU211、311が制御プログラムを実行することにより実現される。MFP101は、Webブラウザ440、サービスプロバイダ450、ネイティブアプリケーション460、カスタムメニュー470、アクションデータ記録部445、464及びボタンデータ記録部476を備える。また、Webサーバ103は、Webアプリケーション410を備える。
【0021】
ネイティブアプリケーション460は、実行部461、画面表示部462、アクションデータ管理部463、アクション実行制御部465及びアクション削除制御部466を含む。ネイティブアプリケーション460には、例えば、コピー処理、スキャン処理及びスキャンイメージの配信処理を実行するコピーアプリケーション、スキャンアプリケーション、及びセンドアプリケーション等がある。しかし、本発明は、MFP101で利用可能なアプリケーションであればよく、上述したアプリケーションソフトウェアに限定することを意図していない。例えば、後述するWebブラウザ440もネイティブアプリケーションの1つである。以下では、このようなMFP101に予め設けられているアプリケーションをネイティブアプリケーションと称する。一方、Webサーバ103が提供するアプリケーションをWebアプリケーションと称する。
【0022】
実行部461は、アプリケーションの主要処理を実行する。上記例で言えば、コピー処理、スキャン処理、送信処理が実行される対象となる。画面表示部462は、実行部461の実行に必要な設定をユーザに入力させるための操作画面を操作部219に表示する。なお、この操作画面はWebサーバ103により提供されるものではなく、ネイティブアプリケーション460がMFP101内に保持している情報を読み出して表示する。以下では、このようにMFP101内に予め保持されている情報に基づいて表示される画面をネイティブ画面と称する。
【0023】
アクションデータ管理部463は、アクションデータ記録部464とアクションデータをやり取りする。アクションデータの詳細は後述するが、アプリケーションごとの個別設定情報であり、例えばコピーアプリケーションであれば、コピー部数や印刷濃度等の設定情報を示す。なお、アクションデータ記録部464で扱うデータは、例えば、HDD214に記憶される。アクション実行制御部465は、アクションデータ管理部463から受け取ったアクションデータを読み取り、各設定項目が設定済みとなった設定済み操作画面を生成し、画面表示部462へ画面を提供する。アクション削除制御部466は、アクションデータ管理部463に対して、対象となるアクションデータの削除を要求し、削除結果を受け取る。
【0024】
カスタムメニュー470は、ボタン登録制御部471、ボタン実行制御部472、ボタン削除制御部473、画面表示部474、ボタンデータ管理部475及びボタン削除可否判定部477を含む。カスタムメニュー470は、MFP101で利用可能な各種アプリケーションの設定値を1つのボタンに対応付けて登録するユーザが所望の操作画面を構築するための仕組みを実現する。本実施形態では、MFP101で利用可能な各種アプリケーションとして、従来から行なわれているネイティブアプリケーションに加えて、Webアプリケーションにも対応する。
【0025】
ボタン登録制御部471は、ネイティブアプリケーション460により呼び出される。このとき、ボタン登録制御部471は、ボタンデータ管理部475に対して、ボタンデータの登録要求を行い、ボタンの登録結果を受け取る。ボタンデータの詳細は後述するが、ボタンを識別するための番号、ボタンに対応するアプリケーション、アクションデータの番号を表すアクションID、ボタンの外観を表すアイコン、グループ情報、ボタン名称が含まれる。
【0026】
ボタン実行制御部472は、選択対象のボタンに対応するネイティブアプリケーション460に対して、ボタンデータに含まれるアクションIDを通知する。ボタン削除制御部473は、ボタンデータ管理部475からボタンデータを取得する。その後、対応するアクションデータの削除をネイティブアプリケーション460へ要求し、アクションデータの削除結果を受け取る。削除が成功した場合にはボタンデータ管理部475に対して、対応するボタンデータの削除を要求する。
【0027】
画面表示部474は、ユーザが、登録済みのボタンの実行、ボタンデータの削除等を行うための操作画面を操作部219に表示する。ボタンデータ管理部475は、ボタンデータ記録部476とボタンデータをやり取り(登録、削除)する。ボタン削除可否判定部477は、ボタン削除制御部473で、ボタンデータの削除を行うために、事前にボタンデータが削除可能かどうかを判定する。なお、カスタムメニュー470は、必ずしも、上述した全ての構成要素を含む必要はない。
【0028】
Webブラウザ440は、通信部441、解析部442、及び画面表示部443を含む。通信部441は、Webアプリケーション410の通信部411を介して、HTTPプロトコルに従ってWebアプリケーション410のプレゼンテーション部412と通信する。より具体的には、通信部441は、Webブラウザ440で表示する操作画面をWebアプリケーション410に対して要求したり、Webブラウザで表示した操作画面を介して入力されたユーザからの指示をWebアプリケーション410に通知したりする。
【0029】
解析部442は、Webアプリケーション410から受信するHTMLファイルを解析する。このHTMLファイルには、Webブラウザに表示すべき操作画面の内容を示す記述が含まれている。Webブラウザ440も上述したネイティブアプリケーションの1つであり、内部にはネイティブアプリケーション460で説明した構成を有する。具体的には、アクションデータ管理部444、アクション実行制御部446、アクション削除制御部447、アクションデータ制御部448、及びアクションデータ記録部445が含まれる。
【0030】
画面表示部443は、解析部442による解析の結果に基づいて、操作部219上に操作画面を表示する。このように、Webサーバから受信した画面情報(HTMLファイル)に基づいて表示される画面をWebブラウザ画面と称する。
【0031】
一方、Webサーバ103には、Webアプリケーション410が含まれる。また、Webアプリケーション410には、通信部411、414、プレゼンテーション部412、アドレス解析部413、及びロジック部415が含まれる。プレゼンテーション部412は、通信部411を通してWebブラウザ440の通信部441と通信し、MFP101からの要求に応じてWebブラウザ440で表示すべき操作画面をMFP101に送信する。また、Webブラウザ440に表示された操作画面を介して入力されたユーザからの指示をMFP101から受信する。
【0032】
MFP101からの指示を受信したWebアプリケーション410は、指示の内容に従って各種処理を実行するとともに、MFP101に対して処理の実行を依頼する。具体的には、MFP101のプリンタ220による印刷処理の実行や、スキャナ221による読取処理の実行、或いはネットワークI/F218を介した送信処理の実行を依頼する。このようにMFP101に対して処理の実行を依頼する場合には、ロジック部415が通信部414を介してMFP101に備えられたサービスプロバイダ450内の通信部451と通信する。サービスプロバイダ450は、通信部451及びジョブ生成部452を含む。通信部451は、通信部414を通してロジック部415が生成した処理依頼を受け付ける。ジョブ生成部452は、通信部451で受信した情報からジョブを生成し、ネイティブアプリケーション460に出力する。
【0033】
このように、本実施形態に係るMFP101では、外部装置であるWebサーバ103から取得する情報を用いて実行するWebアプリケーション(外部アプリケーション)と、予め保持している情報を用いて実行するネイティブアプリケーション(第2アプリケーション)とが実行可能である。また、MFP101では、ユーザが所望のメニュー画面を構築することができるカスタムメニュー機能を有する。本実施形態に係るカスタムメニューでは、上述したWebアプリケーション及びネイティブアプリケーションのショートカットキーを選択可能に表示することができる。
【0034】
<データフォーマット>
次に、図5を参照して、ボタンデータ501とアクションデータ510とのデータフォーマットの一例について説明する。ボタンデータ501は、ボタンNo502、アプリケーションID503、アクションID504、アイコン情報505、及びボタン情報506を含む。なお、ボタンデータ501は、カスタムメニュー470によって管理されるデータである。
【0035】
ボタンNo502は、ボタンデータ501を一意に識別するための番号であり、ボタンの登録時にカスタムメニュー470が自動的に割り当てた番号である。アプリケーションID503は、アプリケーションを一意に識別するための番号である。また、アプリケーションID503は、アプリケーションのインストール時に、カスタムメニュー470がネイティブアプリケーション460、Webアプリケーションごとに一意に割り当てた番号である。なお、Webアプリケーションの場合は、図5に示すように、Webアプリケーションが動作するアドレスをIDとして登録してもよい。例えば、アプリケーションID503が100のアプリケーションは、ネイティブアプリケーションであるコピーアプリケーションを表す。また、アプリケーションID503がhttp://192.168.0.10/copyのアプリケーションは、WebアプリケーションであるコピーWebアプリケーションを表している。なお、Webアプリケーションは、ブラウザから操作することより、アプリケーションID503にWebブラウザを登録してもかまわない。この場合、ブラウザが、WebアプリケーションのURLを管理する。
【0036】
アイコン情報505は、カスタムメニュー470の画面表示部474を介して操作部219に表示されるボタンの外観を表すアイコンファイル名を表したものである。ボタン情報506は、ボタンの名称、コメント、グループを表す。なお、グループは、個人用のボタンであるマイボタン、ユーザ間で共通して利用可能なボタンであるグループボタンに大別される。
【0037】
アクションデータ510は、上述したアクションID504とともに、設定情報511を含む。なお、アクションデータ510は、アプリケーションごとに管理されるデータである。アクションID504は、アクションデータを一意に識別するための番号であり、各アプリケーションが割り当てたものである。設定情報511は、アプリケーションごとの各種設定値を含んでいる。例えば、図5に示すように、アプリケーションID503がhttp://192.168.0.10/copyのアクションID504が1の設定情報が示す内容は、コピーWebアプリケーションに対して、部数を1、濃度を+5という設定値を含む。このように、ボタンデータ501とアクションデータ510はアクションID504を介して対応付けられている。例えば、カスタムメニュー470がボタンNo502が2のボタンの押下を検知した場合、コピーWebアプリケーションに対してアクションID504が1の内容(部数1、濃度+5)を設定した操作画面を要求し、操作部219に表示される。
【0038】
このように、本実施形態では、カスタムメニュー画面における操作画面に登録するボタンとして、ネイティブアプリケーションのボタンに加えて、Webアプリケーションのボタンも可能とする。これにより、ユーザは、カスタムメニュー画面に登録したいアプリケーションがネイティブアプリケーションであるか、又は、Webアプリケーションであるかを意識する必要がなく、容易に所望のカスタムメニュー画面を構築することができる。
【0039】
<画面例>
ここで、図6を参照して、操作部219に表示されているWebブラウザ画面600の一例について説明する。図6に示すWebブラウザ画面600には、コピーWebアプリケーションの操作画面604と、Webブラウザ440が表示する操作画面603と含まれる。コピーWebアプリケーションの操作画面604には、各設定項目(カラーモード、サイズ、部数、構成、ボタン名称、グループ)以外に実行ボタン602が含まれる。一方、Webブラウザ440が表示する画面603には登録ボタン601が含まれる。つまり、Webブラウザ画面600には、Webサーバ103のWebアプリケーション410が提供する操作画面604と、Webブラウザ440が提供する操作画面603とが含まれている。
【0040】
登録ボタン601は、現在起動しているWebアプリケーションをカスタムメニュー画面に登録するためのボタンであり、Webブラウザ440が提供するボタンである。一方、実行ボタン602は、現在起動しているWebアプリケーションの処理を実行させるためのボタンであり、Webアプリケーション410が提供するボタンである。また、登録ボタン601が押下されると、操作画面604で現在設定されている情報が読み出されて、当該設定情報において実行ボタン602が押下された場合と同様の動作を行なうボタン(カスタムボタン)が生成されて、カスタムメニュー画面に登録される。本実施形態によれば、上述のようなWebブラウザ画面600を表示することにより、Webアプリケーションを実行するカスタムボタンをカスタムメニュー画面へ追加することができる。
【0041】
なお、ここでは、Webアプリケーションが実行中であるWebブラウザ画面600に登録ボタン601を追加する構成について説明したが、もちろんネイティブアプリケーションが実行中であるネイティブ画面とともに登録ボタンを表示してもよい。この場合の登録ボタンが押下された場合であっても、図7を用いて後述する処理と同様に、ネイティブアプリケーションのカスタムボタンがカスタムメニューに追加される。
【0042】
<登録手順>
次に、図7を参照して、本実施形態における情報処理システム100のWebブラウザ440からWebアプリケーション用のボタンを登録する処理手順について説明する。以下で説明する処理は、MFP101のCPU211がROM212やHDD214に格納されているプログラムをROM212に読み出して実行することにより実現される。なお、図7において、点線より左側がWebブラウザ440の処理を示し、点線より右側がカスタムメニュー470の処理を示す。また、以下の処理フローは、第1表示制御手段として機能する画面表示部443がWebブラウザ画面600を操作部219に表示した状態から開始される。
【0043】
まずS701において、Webブラウザ440は、Webブラウザ画面600の登録ボタン601の押下を検知すると、ボタンの登録処理を開始する。S702において、Webブラウザ440は、カスタムメニュー470のボタン登録制御部471を呼び出す。
【0044】
その後、S703において、ボタン登録制御部471は、ボタンデータ管理部475に対して、ボタンデータ501の登録要求を行い、ボタンの登録結果を受け取る。S704において、ボタンデータ管理部475は、ボタンデータ501をボタンデータ記録部476に保存する。保存するボタンデータ501には、ボタンを識別するための番号、ボタンに対応するアプリケーション、アクションデータ510の番号を表すアクションID504、ボタンの外観を表すアイコン情報505、グループ情報やボタン名称を有するボタン情報506が含まれる。ボタンデータ501の保存が完了すると、S705において、ボタン実行制御部472は、選択対象のボタンに対応するネイティブアプリケーション(この場合、Webブラウザ440)に対して、ボタンデータ501に含まれるアクションIDを通知する。
【0045】
S706において、Webブラウザ440は、アクションID504を受信する。続いて、S707において、Webブラウザ440は、解析部442によって、操作画面上に現在入力されている設定情報の解析処理を行い、アクションデータ記録部445に記録可能なデータへ変換する。さらに、S708において、Webブラウザ440は、アクションデータ管理部444で、S706で受信したアクションID504とともに、アクションデータ記録部445にアクションデータ510を登録する。
【0046】
<実行手順>
次に、図8及び図9を参照して、MFP101において、カスタムメニュー470の操作画面(カスタムメニュー画面)800から、登録されたボタンが選択された際の処理について説明する。まず図8を参照して、操作部219に表示される、カスタムメニュー470の登録したボタンを実行するための操作画面800の一例について説明する。カスタムメニュー470の操作画面800は、グループ選択部810、及びボタン選択部820を含む。グループ選択部810は、操作画面800に表示するボタンの種類を選択するためのインタフェースである。なお、本実施形態ではグループ選択部810が選択可能なボタンの種類は、マイボタン811とグループボタン812となっている。しかし、ここでは、グループの種類をこの2種類に限定することを意図しているわけではない。図8に示すボタン選択部820には、マイボタン811が選択された状態を示す。ボタン選択部820には、グループの種類ごとに登録されたボタンが表示される。本実施形態では、例えば、図7で説明した処理によって登録された節約コピーボタン及び自分へ送信ボタンが表示されている。
【0047】
次に、図9を参照して、操作画面800で、ボタンの押下を検知したときの処理手順について説明する。以下で説明する処理は、MFP101のCPU211がROM212やHDD214に格納されているプログラムをROM212に読み出して実行することにより実現される。また、以下の処理フローは、操作部219に表示されたカスタムメニュー画面の起動ボタンが押下され、CPU211へカスタムメニュー470の起動処理が割り込み、第2表示制御手段である画面表示部474が操作部219に操作画面800が表示した状態から開始される。
【0048】
まずS901において、操作部219は、ユーザからのカスタムメニュー画面に登録されたボタンの押下を検知し、ボタン押下をCPU211へ通知する。CPU211は、カスタムメニュー470へボタン押下を通知する。カスタムメニュー470は、ボタン押下に対応する処理を呼び出す。
【0049】
次に、S902において、カスタムメニュー470は、押下されたボタンに関連するアプリケーションが、ネイティブアプリケーションであるかWebアプリケーションであるかを判定する。より具体的には、カスタムメニュー470は、ボタン実行制御部472によって、押下されたボタンのボタンデータ501をボタンデータ管理部475から取得し、取得したボタンデータ501のアプリケーションID503を確認する。このとき、アプリケーションID503にURLが記述されていれば、Webアプリケーションと判定され、そうでなければネイティブアプリケーションと判定される。押下されたボタンに対応するアプリケーションID503がネイティブアプリケーションであればS903に進み、WebアプリケーションであればS905に進む。
【0050】
S903において、カスタムメニュー470は、ボタン実行制御部472が取得したボタンデータ501のアクションID504を対応するネイティブアプリケーション460へ通知する。続いて、S904において、ネイティブアプリケーション460のアクション実行制御部465は、アクションID504に対応するアクションデータ510をアクションデータ管理部463から取得する。ここで、アクション実行制御部465は、操作画面の各設定項目を、取得したアクションデータ510の設定情報で設定済みにする。さらに、画面表示部462は、アクション実行制御部465が生成した設定済み操作画面を操作部219へ表示する。以上がネイティブアプリケーションのボタン押下時の処理となる。
【0051】
一方、押下されたボタンがWebアプリケーションの場合は、S905において、ボタン実行制御部472は、アプリケーションID503とアクションID504とをWebブラウザ440に送付する。S906において、Webブラウザ440は、アプリケーションID503(ここでは、URL情報となる。)と、アクションID504とを受信し、S907において、アクションデータ管理部444は、アクションID504に対応するアクションデータ510を取得する。さらに、S908において、Webブラウザ440は、S906で受信したURL情報に基づき、Webサーバ103に対して、画面のリクエストを行う。
【0052】
S909において、Webサーバ103は、Webブラウザ440からのリクエストを受信し、S910においてURLに対応した画面情報をWebブラウザ440に送信する。S911において、Webブラウザ440のアクションデータ制御部448は、画面情報を受信すると、アクションデータ510に基づいて設定済み操作画面を生成する。具体的には、リストボックス、ラジオボタン等の入力機能を持つタグで、アクションデータ510の各設定情報に該当するvalue属性を有するタグの選択を表す属性を有効にしたHTMLファイルを生成する。例えば、リストボックスであれば、optionタグのselected属性、ラジオボタンであれば、INPUTタグのCHECKED属性を指定する。その後、S912において、画面表示部443は、解析部442のHTMLファイルの解析結果に基づいて、操作部219上に設定済み操作画面を表示する。以上が、Webアプリケーションのボタン押下時の処理となる。
【0053】
以上説明したように、本実施形態に係る情報処理装置は、Webアプリケーション又はネイティブアプリケーションの操作画面を表示中に、さらに、現在実行しているアプリケーションの現在の設定情報で実行するためのカスタムボタンをカスタムメニューへ追加するための登録ボタンを表示する。また、情報処理装置は、上記登録ボタンが押下されると、カスタムメニューに追加するカスタムボタンの情報として、ボタンデータ及びアクションデータを互いに対応付けて管理する。また、ユーザからカスタムメニューの表示が指示されると、ボタンデータ及びアクションデータを用いて、カスタムボタンを含むカスタムメニューを生成して表示する。また、情報処理装置は、カスタムメニューの任意のカスタムボタンが押下されると、ボタンデータ及びアクションデータを用いて、当該カスタムボタンが登録された際の設定情報を踏襲した操作画面を表示する。ここで、例えば、Webアプリケーションに関連するカスタムボタンが押下された場合は、情報処理装置は、当該Webアプリケーションを提供する外部装置に対して、当該設定情報を反映した操作画面の情報を要求し表示する。このように、本実施形態に係る情報処理装置は、ユーザが所望のメニューを構築可能なカスタムメニューにおいて、ネイティブアプリケーションのショートカットキーだけでなく、Webアプリケーションのショートカットキーを登録することができる。したがって、本情報処理装置は、ユーザがWebアプリケーションと、ネイティブアプリケーションとを意識することなく、カスタムメニューを構築することができるため、使い勝手の良い操作体系を提供することができる。
【0054】
<第2の実施形態>
以下では、図10乃至図12を参照して、本発明に係る第2の実施形態について説明する。本実施形態では、MFP101において、カスタムメニュー470の操作画面から、登録されたボタンを削除する際の一連の処理について説明する。なお、本実施形態に係る情報処理システム100の全体構成、MFP101の構成、Webサーバ103の構成、情報処理システム100全体の制御構成、ボタンデータ501の構成及びアクションデータ510の構成については、第1の実施形態と同様であるため説明を省略する。
【0055】
まず図10を参照して、操作部219に表示される、カスタムメニュー画面の登録ボタンを削除する際に表示する操作画面1000の一例について説明する。操作画面1000は、削除ボタン選択部1001及びボタン削除ボタン1002を含む。削除ボタン選択部1001は、削除するボタンを選択するためのインタフェースである。図10では、「4.お気に入りコピー」ボタンが選択されていることを示す。カスタムメニュー470は、ボタン削除ボタン1002の押下を検知することで、削除ボタン選択部1001で選択されているボタンを削除する処理を呼び出す。
【0056】
<削除手順>
次に、図11を参照して、本実施形態におけるカスタムメニュー470のボタン削除に係る操作画面1000を介して、登録されているボタンを削除する際の処理手順について説明する。また、以下の処理フローは、第3表示制御手段として機能する画面表示部474が操作部219に表示した操作画面1000においてボタン削除ボタン1002の押下を検知し、CPU311がカスタムメニュー470へボタン削除ボタン1002の押下を通知した状態から開始される。
【0057】
まずS1101において、カスタムメニュー470のボタン削除制御部473は、ボタン削除ボタン1002の押下に応じて、対応するボタンデータ501をボタンデータ管理部475から取得し、取得したボタンデータ501を解析する。S1102において、ボタン削除制御部473は、取得したボタンデータ501が削除可能であるか否かを、ボタン削除可否判定部477へ問い合わせることにより判定する。ボタン削除可否判定部477の処理については、図12を用いて後述する。ここで、削除可能であればS1103に進み、削除可能でなければ処理を終了する。
【0058】
S1103において、ボタン削除制御部473は、解析したボタンデータ501から対応するアプリケーションID503を抽出し、対応するアプリケーションに対してアクションデータ510の削除を要求する。さらに、ボタン削除制御部473は、アプリケーションID503に対応するネイティブアプリケーション又はWebブラウザ440にアクションデータ510の削除を要求する。このとき、削除対象となるアクションデータのアクションID504を付加して要求する。
【0059】
S1104において、要求を受け取ったアクション削除制御部466又は447は、アクションデータ管理部463又は444に対して要求に付加されたアクションID504に基づいて、アクションデータ510の削除を要求する。アクションデータ管理部463又は444は要求を受け、アクションデータ記録部464又は445からアクションデータ510を削除する。S1105において、アクション削除制御部466又は447は、アクションデータ管理部463又は444からの削除結果(成功又は失敗)を取得し、カスタムメニュー470へ削除結果を返す。
【0060】
次に、S1106において、ボタン削除制御部473は、アクションデータ510の削除結果を解析し、アクションデータ510の削除が成功している場合はS1107に進み、失敗している場合は対応するボタンデータ501の削除を行なうことなく処理を終了する。S1107において、ボタン削除制御部473は、アクションデータ510の削除が成功しているため、ボタンデータ501を削除する。より具体的には、ボタン削除制御部473は、対象となるボタンデータ501の削除をボタンデータ管理部475へ要求する。要求をうけたボタンデータ管理部475は、ボタンデータ記録部476からボタンデータ501を削除する。
【0061】
次に、図12を参照して、S1102で行ったボタンデータ501の削除可否の判定に係る処理手順について説明する。上述したように、S1102において、ボタン削除制御部473は、ボタンデータ501が削除可能か否かを、ボタン削除可否判定部477へ問い合わせる。以下では、S1102の問い合わせに対応するボタン削除可否判定部477の処理について説明する。
【0062】
まず、S1201において、ボタン削除可否判定部477は、削除対象のボタンデータ501のグループを確認する。ここで、グループがマイボタン811であればS1203に進み、グループボタン812であればS1202に進む。S1202において、ボタン削除可否判定部477は、削除対象のボタンが有するパーミッションに対して、削除を要求したユーザのアクセス権が十分に高いか否かを確認する。より具体的には、例えば、MFP101の管理ユーザであれば、グループボタン812を削除可能だが、一般ユーザであれば、削除不可能となる。つまり、削除を要求するユーザのアクセス権が十分に高く、ボタン削除が行える場合、ステップ1203に進み、そうでなければS1204に進みボタン削除不可能と判定する。
【0063】
S1203において、ボタン削除可否判定部477は、削除対象のボタンが現在使用中であるか否かを判定する。使用中であればS1204に進み、ボタン削除不可能と判定し、そうでなければS1205に進み、ボタン削除可能と判定し、処理を終了する。なお、判定条件として、ボタンデータ501のグループ、ユーザの権限やボタンの実行状況を用いたが、その他、削除に関係する条件を用いてもよい。
【0064】
以上説明したように、本実施形態では、カスタムメニュー470からボタンデータ501とアクションデータ510との2つの整合性を保ちながら削除できる。これにより、ボタンデータ501及びアクションデータ510の削除漏れが発生しない。さらに、ユーザは、任意のタイミングでMFP101からネイティブアプリケーション460に限らず、Webアプリケーション410用のボタンの削除処理を実施できる。
【0065】
<他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。

【特許請求の範囲】
【請求項1】
外部装置が提供する外部アプリケーションを利用可能な情報処理装置であって、
前記外部アプリケーションの操作画面と、現在起動されているアプリケーションにおいて現在設定されている設定情報で処理を実行させるためのカスタムボタンをカスタムメニューに登録するための登録ボタンとを表示部に表示する第1表示制御手段と、
前記登録ボタンが押下されると、前記操作画面上に現在入力されている設定情報を解析し、前記カスタムボタンに関するボタンデータと、前記現在設定されている設定情報に関するアクションデータとを対応付けて記憶手段に格納する格納手段と、
前記カスタムメニューの表示が指示されると、前記ボタンデータ及び前記アクションデータを前記記憶手段から読み出し、読み出した該ボタンデータ及び該アクションデータに対応する前記カスタムボタンを含む前記カスタムメニューを生成して表示部に表示する第2表示制御手段と
を備えることを特徴とする情報処理装置。
【請求項2】
前記第2表示制御手段は、
前記カスタムメニューに表示された前記外部アプリケーションに関連する前記カスタムボタンが押下されると、該カスタムボタンに対応する前記ボタンデータ及び前記アクションデータとを用いて、前記外部装置に対して、画面情報の提供を要求する要求手段を備えることを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記第2表示制御手段は、
前記要求手段によって要求した前記画面情報を用いて、前記登録ボタンが押下された際に設定されていた設定情報が設定済みの前記外部アプリケーションの操作画面を表示部に表示することを特徴とする請求項2に記載の情報処理装置。
【請求項4】
前記カスタムメニューに登録されている前記カスタムボタンを選択可能に表示するとともに、選択された該カスタムボタンを削除する削除ボタンを表示部に表示する第3表示制御手段と、
前記削除ボタンが押下された場合に、選択されている前記カスタムボタンに対応する前記ボタンデータ及び前記アクションデータを前記記憶手段から削除する削除手段と
をさらに備えることを特徴とする請求項1乃至3の何れか1項に記載の情報処理装置。
【請求項5】
前記削除手段は、
前記削除ボタンを押下したユーザが当該カスタムボタンを削除する権限を有し、かつ、該カスタムボタンが使用中でない場合にのみ、対応する前記ボタンデータ及び前記アクションデータを前記記憶手段から削除することを特徴とする請求項4に記載の情報処理装置。
【請求項6】
外部装置が提供する外部アプリケーションを利用可能な情報処理装置の情報処理方法であって、
第1表示制御手段が、前記外部アプリケーションの操作画面と、現在起動されているアプリケーションにおいて現在設定されている設定情報で処理を実行させるためのカスタムボタンをカスタムメニューに登録するための登録ボタンとを表示部に表示する第1表示制御ステップと、
格納手段が、前記登録ボタンが押下されると、前記操作画面上に現在入力されている設定情報を解析し、前記カスタムボタンに関するボタンデータと、前記現在設定されている設定情報に関するアクションデータとを対応付けて記憶手段に格納する格納ステップと、
第2表示制御手段が、前記カスタムメニューの表示が指示されると、前記ボタンデータ及び前記アクションデータを前記記憶手段から読み出し、読み出した該ボタンデータ及び該アクションデータに対応する前記カスタムボタンを含む前記カスタムメニューを生成して表示部に表示する第2表示制御ステップと
を実行することを特徴とする情報処理装置の制御方法。
【請求項7】
請求項6に記載の情報処理装置の制御方法をコンピュータに実行させるためのプログラム。
【請求項8】
請求項6に記載の情報処理装置の制御方法をコンピュータに実行させるためのプログラムを記憶したコンピュータで読み取り可能な記憶媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2011−124957(P2011−124957A)
【公開日】平成23年6月23日(2011.6.23)
【国際特許分類】
【出願番号】特願2009−283436(P2009−283436)
【出願日】平成21年12月14日(2009.12.14)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】