以下、情報処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態)
図1は、本実施の形態における情報処理装置のブロック図である。
情報処理装置1は、オブジェクト格納部101、操作受付部102、オブジェクト処理部103、出力部104、指定操作判断部105、開始操作指定情報格納部106、終了操作指定情報格納部107、操作記録部108、操作群格納部109、操作群関連情報格納部110、合致判断部111、操作群関連情報取得部112、オブジェクト操作関連情報格納部113、メニュー出力部114、操作群関連情報受付部115、オブジェクト関連情報取得部116、実行指示受付部117、およびオブジェクト指定受付部118を備えている。
情報処理装置1は、例えば、情報を処理する装置であり、具体的には、DTP装置や、WEBパブリッシング装置や、画像を作成したり編集したりする画像処理装置等である。
オブジェクト格納部101は、操作の対象となるオブジェクトが格納され得る。オブジェクトとは、例えば、情報処理装置1が編集する情報の構成要素である。オブジェクトは、具体的には、ページや、文字列または画像の少なくとも一方を含むデータが配置されるフレーム枠や、文字列または動画像や静止画像等の画像の少なくとも一方を含むデータ等である。オブジェクトは、当該オブジェクトの配置に関する情報を有していても良い。オブジェクトの配置に関する情報とは、例えば、オブジェクトが配置される位置やサイズ等を指定するための情報、具体的には座標情報等の情報である。また、オブジェクトは、当該オブジェクトの外観等に関する情報、例えばオブジェクトの表示属性の情報等を有していても良い。オブジェクトの表示属性の情報とは、例えば、オブジェクトが文字列オブジェクトである場合、文字列を構成する文字のサイズやフォント等の属性の情報である。また、オブジェクトがフレーム枠等である場合、フレーム枠の表示、非表示を指定する情報や、フレーム枠色やフレーム枠内の色等を指定する情報は、フレーム枠に配置される文字列の、文字揃えやカーニングや行間等の情報である。また、オブジェクトがページ等である場合、用紙サイズや、余白等の情報である。これらの、オブジェクトの配置や表示属性等に関する情報については、いわゆるスタイルシート等の、各オブジェクトと対応付けられた情報として、各オブジェクトとは異なるファイル等で管理されていても良い。このような場合も、この対応付けられた情報をオブジェクトの一部と考えても良い。操作の対象となるオブジェクトは、一のオブジェクトでなくてもよく、複数であっても良い。また、オブジェクトは階層化されていても良い。また、オブジェクトは、オブジェクトに関する情報と対応付けられてオブジェクト格納部101に格納されていても良い。オブジェクトに関する情報を、ここでは、オブジェクト関連情報と称す。オブジェクト関連情報とは、オブジェクトの名称等のオブジェクトの識別情報や、オブジェクトのデータタイプやオブジェクトに付与されたタグ等のオブジェクトの属性の情報等である。オブジェクト間の階層関係を示す情報もオブジェクト関連情報と考えても良い。オブジェクトとオブジェクト関連情報とを組み合わせたものをオブジェクトと考えても良い。また、上述したようなオブジェクトの配置に関する情報や表示属性の情報やオブジェクトの識別情報等をオブジェクト関連情報と考えても良い。例えば、オブジェクトは、タグとタグに関連づけられたデータ、具体的には、タグと、タグの要素とにより構成されてもよい。オブジェクトの情報は、XML(extensible markup language)やHTMLやSGML等のマークアップ言語等を用いて記述されることが、汎用性が高いことから好ましい。オブジェクト格納部101に格納されているオブジェクトやオブジェクト関連情報等に対しては、後述するオブジェクト処理部103等による処理の結果に応じて、当該オブジェクト処理部103等により、適宜、追加や削除等の更新が行われても良い。なお、オブジェクト格納部101に格納されているオブジェクトがオブジェクトに対するリンク情報である場合、このリンク情報が示すリンク先の情報が、実質的にオブジェクト格納部101に格納されていると考えるようにしても良い。ここで述べる格納とは、データの送信時や、受信時、取得時、出力時等における一時記憶も含む概念である。オブジェクト格納部101は、不揮発性の記録媒体や、揮発性の記録媒体で実現可能である。
操作受付部102は、ユーザ等が入力するオブジェクトに対する操作を受け付ける。「オブジェクトに対する操作を受け付ける」とは、具体的には、オブジェクトに対する操作に関する情報を受け付けることと考えもよい。以下、オブジェクトに対する操作に関する情報を、ここでは、操作情報と呼ぶ。ここで述べる操作とは、例えば、オブジェクトに関して、メニュー等の操作やキーボードやマウスやタッチパネル等の入力手段を用いた入力により与えられる指示等である。オブジェクトに対する操作は、オブジェクト格納部101に既に格納されているオブジェクトについての操作であっても良いし、ページやフレーム枠等のオブジェクトを作成する操作等の、まだ作成されていないオブジェクトについての操作であっても良い。オブジェクトに対する操作とは、具体的には、オブジェクトの作成や削除、オブジェクトの位置等の変更、オブジェクトの属性の変更、図示しない格納部等に格納されているオブジェクトを読み出してページ上やフレーム枠上に配置すること等である。例えば、ページを新規に作成する操作や、フレーム枠を新規に作成する操作である。また、ページ内に既に配置されているフレーム枠の位置やサイズを変更する操作や、フレーム枠内に配置されている文字列のオブジェクト(以下、文字列オブジェクトと称す)の文字等のフォントやサイズ等を変更する操作である。また、画像のオブジェクト(以下、画像オブジェクトと称す)の表示領域を切り出す操作、いわゆるトリミングする操作等であっても良い。また、フレーム枠等を削除する操作等であっても良い。
操作情報とは、例えば、操作を実現するイベントや関数列等や、これらの識別情報等であっても良い。また、イベントによって実行されるサブルーチンやアクションやコマンドや、イベント名や関数名等これらの識別情報等を操作と考えても良い。また、操作情報は、操作対象となるオブジェクトを指定する情報を含む情報と考えても良い。操作対象となるオブジェクトを指定する情報をここでは、操作対象情報と呼ぶ。操作対象情報は、例えば、オブジェクト識別情報やオブジェクトタイプやオブジェクト属性等の情報である。また、操作情報は、操作を実現する命令等の指示や、メニュー項目等と考えても良い。また、操作情報は、ユーザ等により指定されるパラメータ等の数値や、オブジェクトの識別情報や、オブジェクトの属性の情報等の情報を含んでいてもよい。操作情報に含まれる情報のうちの、操作対象となるオブジェクトに関する情報、例えば上述した操作対象情報や変更後のオブジェクトのパラメータを指定する情報等を、操作後のオブジェクトに適用される情報と考えて、オブジェクト関連情報と考えるようにしてもよい。また、操作情報は、操作を、操作内容の特徴や類似性等で分類した場合の属性の情報を含んでも良い。例えば、操作が、オブジェクトの新規作成に関するものであることを示す情報等である。また、操作情報は上述した情報の組合せ等であっても良い。操作情報は、操作入力により発生するイベント等の情報や、操作の際に利用するメニュー名や、入力する数値やコマンド名等から取得可能である。
ここで述べる操作の受付とは、例えば、入力手段からの受付や、他の機器等から送信される入力信号の受信や、記録媒体等からの情報の読み出し等である。操作の入力手段は、テンキーやキーボードやマウスやタッチパネルやメニュー画面によるもの等、何でも良い。例えば、操作受付部102は、ユーザが、メニュー画面のフレーム枠を作成するボタン等をクリックしたり、フレーム枠を、マウス等を用いてドラッグしたことをトリガーとして、フレーム枠を作成する操作やフレーム枠を移動させる操作を受け付ける。操作受付部102は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
オブジェクト処理部103は、操作受付部102が受け付けた操作、具体的には操作情報に応じて、オブジェクトに対する処理を行う。オブジェクト処理部103は、例えば、操作受付部102が受け付けた操作情報であるイベントや関数列等に応じた処理を実行する。イベントに応じた処理とは、例えば、イベントに対応付けられたサブルーチンやアクションの実行と考えても良い。オブジェクト処理部103は、例えば、操作受付部102が受け付けた操作情報が指定するオブジェクトを、操作情報に応じて新規に作成したり、操作情報が指定するオブジェクトの位置やサイズを操作が示す位置やサイズに変更したりする。また、操作受付部102が受け付けた操作が指定するオブジェクトの表示属性を、操作が示す表示属性に変更したりする。オブジェクト処理部103は、例えば、処理の結果得られたオブジェクトの情報により、オブジェクト格納部101に格納されているオブジェクトの情報を更新する。例えば、オブジェクトの情報を上書きしたり追記したりする。
また、オブジェクト処理部103は、後述する実行指示受付部117が受け付けた指示に応じて、後述する操作記録部108が記録した操作群を読み出し、当該読み出した操作群に応じた処理を実行する。具体的には、オブジェクト処理部103は、操作群に含まれる一以上の操作に応じた処理を順次実行して処理を行う。操作群に応じた操作を実行するということは、具体的には操作群に含まれる各操作情報が示す操作に応じた処理をオブジェクト処理部103が実行することである。例えば、操作群を構成する操作情報が、操作を実現するイベントや関数列等の情報である場合、当該イベントや関数列等に応じた処理を実行することとしても良い。操作群については後述する。操作群に含まれる操作の実行順序は、通常は、操作が記録された順番に沿って行われるが、適宜変更してもよく、順番は問わない。
また、オブジェクト処理部103は、一以上の操作群がグループ化されている場合、後述する実行指示受付部117が受け付けた指示に応じたグループ化された操作群を読み出し、当該読み出したグループ化された操作群のそれぞれに応じた処理を実行してもよい。具体的には、オブジェクト処理部103は、指示により指定されたグループを構成する操作群を読み出し処理を実行する。グループを構成する操作群の実行順序は、通常は、記録された順番に従うが、適宜変更しても良く、順番は問わない。
また、オブジェクト処理部103は、後述するオブジェクト指定受付部118が受け付けた指定により指定されたオブジェクトに対して、実行指示受付部117が受け付けた指示に応じて読み出した操作群に応じた処理を実行するようにしても良い。
また、オブジェクト処理部103は、例えば、複数の操作群が格納されている場合、後述するオブジェクト指定受付部118が受け付けた指定により指定されたオブジェクトに対応した操作群を検出し、当該検出した操作群に応じた処理を実行するようにしても良い。例えば、オブジェクト指定受付部118が受け付けた指定により指定されたオブジェクトの識別情報や属性情報等を、検索キーとして、当該検索キーと一致する識別情報や属性情報等を有するオブジェクトについて行われた操作を含む操作群を検出し、当該操作群に応じた処理を、指定されたオブジェクトに実行するようにしても良い。例えば、フレーム枠に対する一以上の操作を含む操作群が記録されている場合において、1のフレーム枠を指定して、当該フレーム枠に対して記録された操作群を実行する指示を情報処理装置1に与えた場合、オブジェクト処理部103は、記録されている操作群の中から、フレーム枠に対する操作を含む操作群を検出し、検出した操作群を構成する操作を、指定されたフレーム枠に対して順次実行する。
また、オブジェクト処理部103は、操作記録部108が記録した操作に、操作対象を指定する情報、例えば操作対象の識別情報や、操作対象の属性等を指定する情報が含まれる場合、操作記録部108が記録した操作の対象となるオブジェクトを検索し、当該検索により検出されたオブジェクトに対して、操作記録部108が記録した操作に応じた処理を実行するようにしてもよい。例えば、オブジェクト処理部103は、操作記録部108が記録した操作に、操作対象となるオブジェクトを指定する操作対象情報として、例えば操作対象の識別情報や、操作対象の属性等を指定する情報が含まれる場合、当該識別情報や属性を指定する情報である属性情報等を検索キーとして、当該操作記録部108が記録した操作の対象となるオブジェクトの中から、一致する識別情報や属性情報を有するオブジェクトを検索し、当該検索により検出されたオブジェクトに対して、操作記録部108が記録した操作に応じた処理を実行する。この場合の検索範囲は、いわゆるカレントページ等の、現在編集対象となっているページや現在表示されているページ等と同一のページ内や、現在編集対象となっているフレーム枠等と同一フレーム枠内等に限定されるようにしても良いし、作成対象となる複数ページや、レイアウト対象となる複数ページの全体を対象としても良い。
オブジェクト処理部103は、操作記録部108が記録した操作に応じた処理の実行により処理されたオブジェクトが、処理されていないオブジェクトに対して識別可能となるよう、オブジェクト格納部101にオブジェクトと対応付けて格納されているオブジェクトの表示属性の情報を更新してもよい。表示属性の情報とは、例えば、オブジェクトの外周や、オブジェクトが配置される領域の表示色や表示パターン等を指定する情報等である。表示パターンとは、例えば、網掛けや、背景に繰り返し配置される画像等である。識別可能とは、ここでは、例えば、オブジェクトをモニタ画面等に表示した場合に、ユーザ等が目視等により、処理されたオブジェクトと処理されていないオブジェクトと識別可能であることを示す。例えば、オブジェクト処理部103は、処理されたオブジェクトが処理されていないオブジェクトに対して目視等により識別可能となるよう、処理されたオブジェクトやその外周の色やパターン等の、オブジェクトの外観の属性等を変更する。そして、変更したオブジェクトの情報で、オブジェクト格納部101に格納されているオブジェクトの情報を更新する。
オブジェクト処理部103は、通常、MPUやメモリ等から実現され得る。オブジェクト処理部103の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
出力部104は、オブジェクト処理部103の処理結果を出力する。処理結果とは、例えば、オブジェクト処理部103が処理を行った結果得られた、ページやフレーム枠や画像やテキスト等のオブジェクトである。ここでの処理結果の出力とは、オブジェクト格納部101に格納されているオブジェクトの出力を含むと考えてもよい。例えば、オブジェクト処理部103により更新されてオブジェクト格納部101に蓄積された、オブジェク更新されたオブジェクトの最終的な表示等を含むと考えても良いし、含まないと考えても良い。例えば、出力部104が出力する処理結果とは、オブジェクト処理部103により位置等が変更された文字列オブジェクトや画像オブジェクト等が配置されたページの情報等である。また、例えば、オブジェクト処理部103によって、処理されたオブジェクトの外観が、処理されていないオブジェクトの外観と異なるものとなるよう更新されている場合、当該更新された外観を有するオブジェクトが出力される。ここで述べる出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラム等への処理結果の引渡し等を含む概念である。出力部104は、ディスプレイやプリンタ等の出力デバイスを含むと考えても含まないと考えても良い。出力部104は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
指定操作判断部105は、操作受付部102が受け付けたオブジェクトに対する操作が、操作の記録開始または記録終了を示す操作であるか否かを判断する。指定操作判断部105は、例えば、操作受付部102が受け付けたオブジェクトに対する操作が、操作の記録開始、または記録終了の少なくとも一方と対応付けられた予め指定された操作であるか否かを判断する。指定操作判断部105は、具体的には、操作受付部102が受け付けたオブジェクトに対する操作情報、例えば、操作のイベントや関数やこれらの識別情報(例えばイベント名や関数名等)等が、予め指定されている一以上の、操作の記録開始と対応付けられた操作情報の少なくとも一つと一致するか否かを判断し、一致すると判断された場合、受け付けた操作が、操作受付部102が受け付ける操作の記録開始を示す操作であることを示す情報を出力する。また、指定操作判断部105は、例えば、操作受付部102が受け付けたオブジェクトに対する操作情報が、予め指定されている一以上の、操作の記録終了と対応付けられた操作情報の少なくとも一つと一致するか否かを判断し、一致すると判断された場合、記録終了を示す操作であることを示す情報を出力する。ここでの一致は部分一致としても完全一致としても良い。
指定操作判断部105は、具体的には、操作受付部102が受けた操作情報のうちの、操作を実現するイベントや関数列等の操作の項目、オブジェクト等の操作対象、または操作対象の属性、あるいはこれらの組合せ等が、予め指定されている一以上の、操作の記録開始または記録終了と対応付けられた操作情報の少なくとも一つと一致するか否かを判断するようにしてもよい。
例えば、予め指定されている一以上の、操作の記録開始または記録終了と対応付けられた操作情報が、操作対象を指定する情報である場合、操作受付部102が受けた操作情報に含まれる操作対象を示す情報が、予め指定された操作の記録開始または記録終了と対応付けられた操作情報と一致する場合は、受け付けた操作自体がサイズ変更や削除、移動等のどのような操作であっても、操作受付部102が受け付けたオブジェクトに対する操作が、操作の記録開始または記録終了を示す操作であると指定操作判断部105が判断する。例えば、予め指定された一の操作対象に対する何らかの操作が行われた場合に、操作の記録を開始する操作であると判断させて操作の記録を開始させ、記録中の操作対象以外の操作対象に操作対象が変更された場合に、操作の記録を終了する操作であると判断させて、操作の記録を終了させることができる。これにより、一の操作対象に対する操作を記録して収集することが可能となる。
また、例えば、予め指定されている一以上の、操作の記録開始または記録終了と対応付けられた操作情報が、操作対象の属性を指定する情報である場合、操作受付部102が受けた操作情報に含まれる操作対象の属性を示す情報が、予め指定された操作の記録開始または記録終了と対応付けられた操作情報と一致する場合は、操作自体がサイズ変更や削除、移動等のどのような操作であっても、操作受付部102が受け付けたオブジェクトに対する操作が、操作の記録開始または記録終了を示す操作であると判断する。
また、指定操作判断部105は、操作受付部102が受け付けた連続した二以上の操作情報と、予め指定された操作の記録開始または記録終了と対応付けられた二以上の操作情報との組合せあるいは配列が一致するか否かを判断するようにしても良い。例えば、フレームに対する操作と、文字に対する操作とを連続して受け付けた場合において、「フレーム」及び「文字」の配列が、予め指定された操作の記録開始または記録終了と対応付けられた操作情報の配列と一致した場合に、操作情報が一致すると判断して、記録の開始や終了を行うようにしても良い。
また、操作情報に、操作の対象となるオブジェクトについての識別情報や属性情報等が含まれる場合、操作対象のオブジェクトについて受け付けた操作情報が、当該操作対象のオブジェクトと一致するオブジェクトを操作の対象とする予め用意された操作情報のいずれかと一致するか否かによって、操作の記録開始または記録終了を示す操作であるか否かを判断するようにしても良い。
操作開始および操作終了を示す操作であることを示す情報とは、結果的に操作開始および操作終了を示すことが可能な情報であればよく、例えば、操作受付部102が受け付けたオブジェクトに対する操作情報が、記録開始および操作終了を示す操作情報と一致する、という判断結果の出力であっても良い。
なお、ここで述べるオブジェクトに対する操作には、操作記録を開始することを主目的とした操作や、操作記録の終了を主目的とした操作は含まれない。即ち、操作記録開始や中止のための明示的な操作、例えば、メニュー画面の操作記録開始や終了を示す項目を選択する操作等は、オブジェクトに対する操作ではないものとする。
上述した予め用意されている記録開始の操作の判断に用いられる情報、具体的には操作情報は、例えば、後述する開始操作指定情報格納部106等に予め蓄積しておくようにすればよい。また、同様に、上述した予め用意されている記録終了の操作の判断に用いられる情報、具体的には操作情報は、例えば、後述する終了操作指定情報格納部107等に予め蓄積しておくようにすればよい。
指定操作判断部105は、通常、MPUやメモリ等から実現され得る。指定操作判断部105の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
開始操作指定情報格納部106には、操作の記録開始と対応付けられた操作を指定する情報、具体的には操作情報、が格納され得る。記録開始と対応付けられた操作情報とは、具体的には、記録開始のトリガーとなる操作に関する操作情報である。開始操作指定情報格納部106は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
終了操作指定情報格納部107には、操作の記録終了と対応付けられた操作を指定する情報、具体的には操作情報、が格納され得る。記録終了と対応付けられた操作情報とは、具体的には、記録終了のトリガーとなる操作に関する操作情報である。終了操作指定情報格納部107は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
操作記録部108は、指定操作判断部105の判断結果に応じて、操作受付部102が受け付けた一以上の操作である操作群を記録する。「判断結果に応じて」とは、具体的には、判断結果が、記録開始を示す操作であることを示すものである場合、操作の記録を開始することである。また、例えば、判断結果が、記録終了を示す操作であることを示すものである場合、操作の記録を終了することである。ここで述べる操作群の記録とは、受け付けた一以上の操作を記録することであり、例えば、操作記録部108が、操作受付部102が受け付けた一以上の操作により実現される処理と結果的に同じ処理結果を得ることが可能な情報を記録することを操作の記録と考えてもよい。具体的には、操作の記録とは、操作に関する操作情報の記録と考えて良い。つまり、操作群の記録は、一以上の操作に関する操作情報を記録することと考えても良い。また、操作群を操作情報の群と考えても良い。即ち操作群を、操作に対応したイベント群や関数群等と考えても良い。操作記録部108は、例えば、操作受付部102が受け付けた一以上の操作についての操作情報、例えば、イベントや、関数等や、これらの識別情報等を記録する。あるいは操作情報として、当該イベントに対応したサブルーチンやアクションやこれらの識別情報等を記録してもよい。また、操作情報として、受け付けた一以上の操作に対応したコマンドやその識別情報等を記録しても良い。ここでは、一例として、操作記録部108が、後述する操作記録部108に操作情報を記録する場合について説明するが、どこに操作情報を記録するかは問わない。操作の記録は一時記憶等であっても良い。操作記録部108は、必ずしも、操作受付部102が受け付けた全ての操作を記録する必要はなく、予め記録の対象となることが指定されている操作情報だけを記録しても良いし、予め記録の対象としないことが指定されている操作情報だけを記録しても良い。例えば、オブジェクトに対して行われた複数の操作のうちの、オブジェクトを保存するための操作については、操作情報を記録しないようにしても良い。操作記録部108は、通常、操作受付部102が受け付けた操作に対応した順番で操作情報を記録する。この場合、操作群は、操作情報の記録された順番の情報を有するようにしても良い。ただし、操作情報が記録される順序等は、適宜変更されるようにしても良いし、順序が記録されないようにしても良い。なお、操作情報の記録開始や記録終了の指示を操作受付部102や、図示しない受付部等がユーザ等から受け付けた場合に、操作記録部108は、操作情報の記録開始や終了を行うようにしても良い。操作記録部108は、例えば、記録開始や記録終了を自動的に検出できない場合や、検出する前に、ユーザ等による記録開始または記録終了の指示を操作受付部102から受け付けても良い。
また、操作記録部108は、後述する操作群関連情報取得部112が、操作群関連情報格納部110等から取得した操作群関連情報を、操作群と対応付けて記録しても良い。操作群関連情報とは、操作群に関連した情報である。操作群関連情報は、例えば、操作群名等の名称や識別記号等の、ユーザが操作群を識別するために利用可能な情報であっても良い。また、操作群関連情報は、操作群に対するコメント等であっても良い。また、操作群に対する操作を行う理由を示す情報である理由情報等であっても良い。あるいは操作群関連情報は、操作内容の概略を示す情報であっても良いし、操作を行う上での注意事項等の情報であっても良い。あるいは、操作が行われた日時等の情報であってもよい。また、操作群関連情報は、これらの情報の二つ以上を組み合わせたものであっても良い。
また、操作記録部108は、後述するオブジェクト関連情報取得部116がオブジェクト格納部101から取得した、操作記録部108が記録の対象とする操作群を構成する各操作の対象となるオブジェクトについてのオブジェクト関連情報の少なくとも一部を、当該操作群と対応付けて記録するようにしても良い。操作対象のオブジェクトについてのオブジェクト関連情報は、操作群を構成する各操作情報等に含ませるようにしても良いし、含ませずに、別途対応付けて管理されるようにしても良い。また、ここで記録するオブジェクト関連情報は、オブジェクトに関する一部の情報、例えば属性の情報だけであっても良い。
また、後述する操作群関連情報受付部115が受け付けた操作群関連情報を、操作記録部108が、操作受付部102が受け付けた操作群と対応付けて記録するようにしてもよい。
なお、ここでは、操作記録部108が、操作群を後述する操作群格納部109等に記録する場合を例に挙げて説明する。操作記録部108が操作群を記録するタイミング等や記録する順番等は問わない。操作記録部108は、操作群を構成する操作を、操作が行われる際に順次操作群格納部109に記録しても良いし、操作が行われる毎に、一旦図示しないメモリ等の記憶媒体に一時記憶していくようにし、操作の記録が終了する際に、一時記憶された操作をまとめて、操作群として操作群格納部109に記録しても良い。
操作記録部108は、通常、MPUやメモリ等から実現され得る。操作記録部108の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
操作群格納部109には、操作記録部108により操作群が記録され得る。操作群が記録されるということは、具体的には、操作群を構成する一以上の操作情報が記録されることである。また、操作群格納部109に格納されている一以上の操作群は、グループ化されていても良い。また、操作群格納部109に格納されている操作群には、操作対象となるオブジェクトを指定する操作対象情報や、操作群を構成する一以上の操作が記録された順番を示す情報等が記録されていても良い。また、操作群格納部109には、操作群に対応する操作群関連情報やオブジェクト関連情報が、操作群と対応付けられて記録されていても良い。操作群格納部109は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
操作群関連情報格納部110には、一以上の操作を示す情報、具体的には操作情報と、上述した操作群関連情報とが対応付けられて予め格納されている。例えば、対応付けられた一以上の操作情報と、上述した操作群関連情報とが、一のレコードとして管理されている。操作群関連情報格納部110は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
合致判断部111は、操作受付部102が受け付けた一以上の操作が、操作群関連情報と対応付けられた一以上の操作のいずれかに合致するか否かを判断する。具体的には、合致判断部111は、操作受付部102が受け付けた一以上の操作情報が、操作群関連情報と対応付けられて上述した操作群関連情報格納部110等に予め格納されている一以上の操作情報のいずれかに合致するか否かを判断する。そして、判断結果を操作群関連情報取得部112等に出力する。ここでの合致の判断は、完全一致であっても部分一致であっても良い。合致判断部111は、通常、MPUやメモリ等から実現され得る。合致判断部111の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
操作群関連情報取得部112は、合致判断部111が合致すると判断した操作(具体的には操作情報)に対応付けられた一以上の操作群関連情報を、例えば、操作群関連情報格納部110から、検索等により取得する。例えば、当該取得された操作群関連情報の一以上が、操作群と対応付けられて操作記録部108により記録される。なお、操作群関連情報取得部112が取得の対象とする操作群関連情報が複数である場合、複数の操作群関連情報を適宜結合して構成した一の操作群関連情報を取得するようにしても良い。また、複数の操作群関連情報のうちの一つだけを、予め指定されたルールに従って取得しても良い。予め指定されたルールとは、例えば、所定の順番、例えば最初や最後に合致すると判断された操作に対応付けられた操作群関連情報を取得するというルールである。
なお、操作群関連情報取得部112は、合致判断部111が合致すると判断した操作(具体的には操作情報)に対応付けられた一以上の操作群関連情報を操作群関連情報格納部110から取得する代わりに、後述するオブジェクト関連情報取得部116が取得したオブジェクト関連情報を用いて、操作記録部108が記録する操作群に関する情報である操作群関連情報を取得するようにしても良い。あるいは、操作群関連情報取得部112は、操作群関連情報格納部110等から、検索等により取得した合致判断部111が合致すると判断した操作(具体的には操作情報)に対応付けられた一以上の操作群関連情報と、後述するオブジェクト関連情報取得部116が取得したオブジェクト関連情報とを組み合わせて用いることで、操作記録部108が記録する操作群に関する情報である操作群関連情報を取得するようにしても良い。ここで述べる操作群関連情報を取得とは、オブジェクト関連情報を用いて操作群関連情報を構成することと考えても良い。オブジェクト関連情報取得部116が取得したオブジェクト関連情報とは、例えば、オブジェクトの名称等の識別情報や、オブジェクトのタイプや属性等の情報である。また、オブジェクトがページやフレーム枠等である場合、当該ページやフレーム枠内に配置されるオブジェクト、例えば、ページ内のオブジェクトや、フレーム枠内に配置されるオブジェクトの数やデータタイプや属性等の情報であっても良い。操作群関連情報取得部112は、これらのオブジェクト関連情報を用いて、操作群関連情報を作成する。例えば、取得したオブジェクトの名称や属性値を、そのまま操作群関連情報またはその一部として用いた操作群関連情報を構成するようにしても良い。例えば、取得したオブジェクト関連情報が、「フレーム枠」であった場合、構成するフレーム枠操作群関連情報は、「フレーム枠」や「フレーム枠に対する処理」等であっても良い。また、オブジェクト関連情報が複数存在する場合、複数のオブジェクト関連情報を適宜結合して構成した一の操作群関連情報を取得するようにしても良い。また、複数のオブジェクト関連情報のうちの一つだけを、予め指定されたルールに従って取得して、当該取得したオブジェクト関連情報を含む操作群関連情報を構成しても良い。予め指定されたルールとは、例えば、所定の順番、例えば最初や最後に操作対象となったオブジェクトについてのオブジェクト関連情報を取得するというルールである。
また、操作群関連情報取得部112は、操作受付部102が受け付けた操作の対象となるオブジェクトに対応した操作に関する情報(以下、オブジェクト操作関連情報と称す)を、後述するオブジェクト操作関連情報格納部113から取得し、取得したオブジェクト操作関連情報を用いて、操作群関連情報を取得するようにしても良い。具体的には、操作群関連情報取得部112は、操作受付部102が受け付けた操作に含まれる操作対象のオブジェクトを指定する情報である操作対象情報を用いて、後述するオブジェクト操作関連情報格納部113に、当該操作対象情報と対応付けて格納されているオブジェクトに対する操作に関する情報を取得し、当該取得したオブジェクトに対する操作に関する情報を用いて、操作群関連情報を取得するようにしても良い。オブジェクト操作関連情報とは、例えば、オブジェクトに対して操作が行われる理由や、操作についてのコメントや、操作を行う上での注意事項等の情報である。オブジェクト操作関連情報は、具体的には、操作群関連情報またはその一部として利用可能な情報である。例えば、操作群関連情報取得部112は、操作受付部102が受け付けた操作情報に含まれる操作対象情報を用いて、当該操作対象情報と同じ操作対象情報に対応付けられたオブジェクト操作関連情報を、後述するオブジェクト操作関連情報格納部113から検索等により読み出して取得する。そして、取得した操作対象情報を用いて操作群関連情報を取得する。ここで述べる操作群関連情報を取得とは、オブジェクト操作関連情報を用いて操作群関連情報を構成することと考えても良い。例えば、操作群関連情報取得部112は、取得したオブジェクト操作関連情報を、そのまま、操作群関連情報として用いても良い。また、取得したオブジェクト操作関連情報と、上述した操作群関連情報格納部110等から検索等により取得した合致判断部111が合致すると判断した操作(具体的には操作情報)に対応付けられた一以上の操作群関連情報とを組み合わせて新たな操作群関連情報を構成しても良い。
操作群関連情報取得部112は、通常、MPUやメモリ等から実現され得る。操作群関連情報取得部112の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
オブジェクト操作関連情報格納部113には、オブジェクトについての操作に関する情報であるオブジェクト操作関連情報が格納され得る。具体的には、オブジェクト操作関連情報格納部113には、操作対象情報と対応付けられたオブジェクト操作関連情報が格納され得る。オブジェクト操作関連情報格納部113は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
メニュー出力部114は、操作群関連情報取得部112が取得した操作群関連情報を含む候補メニューを出力する。例えば、操作群関連情報取得部112が一以上の操作群関連情報を取得した場合、当該複数の操作群関連情報を含む候補メニューを構成し、出力する。候補メニューは、一以上の操作群関連情報を、選択可能なリストとして表示可能なメニューである。候補メニューは、例えば、いわゆるドロップダウンメニュー等である。なお、ドロップダウンメニュー等の複数の候補から一つの項目を選択可能なメニューを出力する構成については、フォームにおけるドロップダウンメニューやドロップダウンボックスの表示技術等で公知であるので、ここでは説明を省略する。ここで述べる、出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラム等への処理結果の引渡し等を含む概念である。メニュー出力部114は、ディスプレイやプリンタ等の出力デバイスを含むと考えても含まないと考えても良い。メニュー出力部114は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
操作群関連情報受付部115は、操作記録部108が記録した操作群に関する情報である操作群関連情報を受け付ける。操作群関連情報は上述したように、例えば、操作群名等の名称や識別記号等の情報や、操作群に対するコメントや操作を行う理由を示す情報である理由情報等である。操作群関連情報受付部115は、例えば、ユーザによりキーボード等を介して入力された操作群関連情報を受け付ける。また、操作群関連情報受付部115は、操作群関連情報取得部112が取得した操作群関連情報を受け付けても良い。また、操作群関連情報受付部115は、メニュー出力部114が出力した候補メニューから、マウスやキーボードの操作によってユーザ等によって選択された操作群関連情報を受け付けてもよい。ここで述べる受け付けとは、例えば、入力手段からの受付や、他の機器等から送信される入力信号の受信や、記録媒体等からの情報の読み出し等である。操作群関連情報の入力手段は、テンキーやキーボードやマウスやタッチパネルやメニュー画面によるもの等、何でも良い。操作群関連情報受付部115は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
オブジェクト関連情報取得部116は、操作受付部102が受け付けた一以上の操作の対象となる上述したオブジェクト関連情報を取得する。オブジェクト関連情報取得部116は、例えば、操作受付部102が受け付けた操作情報が、オブジェクト関連情報を有するものである場合、当該操作情報に含まれる一以上のオブジェクト関連情報を取得しても良い。また、操作受付部102が受け付けた操作情報に、オブジェクトを識別する情報が含まれる場合、オブジェクト格納部101に格納されているオブジェクト関連情報の中から、操作受付部102が受け付けた操作の対象となるオブジェクトの識別情報に対応したオブジェクト関連情報、例えばオブジェクトのタイプや属性値等を読み出してもよい。オブジェクト関連情報は、そのまま、あるいは他の情報と組み合わせることで操作群関連情報を構成可能な情報であることが好ましい。
オブジェクト関連情報取得部116は、通常、MPUやメモリ等から実現され得る。オブジェクト関連情報取得部116の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
実行指示受付部117は、操作記録部108が記録した操作群を実行する指示を受け付ける。例えば、実行指示受付部117は、ユーザ等から、操作群の一以上を実行する指示を受け付ける。操作群を実行する指示は、例えば、一以上の操作群関連情報を指定する情報と、当該操作群関連情報に対応する操作群を実行する指示との組合せである。また、実行指示受付部117は、後述するオブジェクト指定受付部118が受け付けた指定により指定されたオブジェクトに対して、操作群を実行する指示を受け付けてもよい。この場合、実行指示は、例えば、一以上のオブジェクトを指定する操作対象情報と、一以上の操作群関連情報を指定する情報と、当該操作群関連情報に対応する操作群を実行する指示との組合せである。
また、実行指示受付部117は、操作群が複数記録されており、複数の操作群が一以上のグループにグループ化されている場合、当該グループ化された操作群の一以上を実行する指示を受け付けるようにしてもよい。ここで述べる受付とは、例えば、入力手段からの受付や、他の機器等から送信される入力信号の受信や、記録媒体等からの情報の読み出し等である。実行指示入力手段は、テンキーやキーボードやマウスやタッチパネルやメニュー画面によるもの等、何でも良い。実行指示受付部117は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
オブジェクト指定受付部118は、オブジェクトに対する指定を受け付ける。オブジェクト指定受付部118は、例えば、ポインタ等でクリックされた場合に、当該オブジェクトに対する指定を受け付ける。指定されたオブジェクトは、例えば、現在操作対象となっているオブジェクト、いわゆるカレントのオブジェクトである。ここで述べる受付とは、例えば、入力手段からの受付や、他の機器等から送信される入力信号の受信や、記録媒体等からの情報の読み出し等である。オブジェクトを指定する操作対象情報の入力手段は、テンキーやキーボードやマウスやタッチパネルやメニュー画面によるもの等、何でも良い。オブジェクト指定受付部118は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
次に、情報処理装置の動作について図2のフローチャートを用いて説明する。
(ステップS201)操作受付部102は、オブジェクトに対する操作を受け付けたか否かを判断する。具体的には、操作受付部102は、オブジェクトについての操作に関する操作情報を受け付けたか否かを判断する。操作を受け付けた場合、ステップS202に進み、受け付けていない場合、ステップS218に進む。
(ステップS202)指定操作判断部105は、操作が記録中であるか否かを判断する。操作が記録中でない場合、ステップS203に進み、操作が記録中である場合、ステップS208に進む。
(ステップS203)指定操作判断部105は、ステップS201において受け付けた操作が、操作開始の操作であるか否かを判断する。具体的には、ステップS201において受け付けた操作情報と一致する操作情報が、開始操作指定情報格納部106に格納されているか否かを検索等により判断する。一致する操作情報が格納されている場合、ステップS204に進み、格納されていない場合、ステップS216に進む。なお、ここでの一致は部分一致であっても完全一致であっても良い。
(ステップS204)操作記録部108は、操作の記録を開始する。例えば操作が記録中であることを示す情報を設定する。具体例としては記録中であることを示すフラグの情報を付与する。
(ステップS205)オブジェクト処理部103は、ステップS201において受け付けた操作に対応する処理を実行する。具体的にはステップS201において受け付けた操作情報が示す操作を操作対象となっているオブジェクトに対して実行する。オブジェクト処理部103は、実行した操作の結果に応じて、オブジェクト格納部101に格納されている操作対象となるオブジェクトの情報を更新する。
(ステップS206)出力部104は、ステップS205の処理の結果更新されたオブジェクトの情報等を用いて、操作後のオブジェクト等の情報を出力、例えば表示する。
(ステップS207)操作記録部108は、ステップS201において受け付けた操作を記録する。具体的には、ステップS201において受け付けた操作情報を図示しないメモリ等の記憶媒体に一時記憶する。なお、操作群格納部109に記録するようにしてもよい。なお、ステップS204における操作の記録が開始されてから、後述するステップS209において操作の記録が終了されるまでの同一の記録期間内に、既に、記録された操作が存在する場合、当該操作の後に、新たな操作を追記するようにする。この同一の記録期間内に記録された操作が一の操作群である。なお、記録が不要であることが予め指定されている操作や、操作情報のうちの、予め指定されている記録が不要な部分等については、記録を行わないようにしても良い。そして、ステップS201に戻る。
(ステップS208)指定操作判断部105は、ステップS201において受け付けた操作が、操作終了の操作であるか否かを判断する。具体的には、ステップS201において受け付けた操作情報と一致する操作情報が、終了操作指定情報格納部107に格納されているか否かを検索等により判断する。一致する操作情報が格納されている場合、ステップS209に進み、格納されていない場合、ステップS205に戻る。なお、ここでの一致は部分一致であっても完全一致であっても良い。
(ステップS209)操作記録部108は、操作の記録を終了する。例えば操作が記録中でないことを示す情報を設定する。具体例としては記録中でないことを示すフラグの情報を付与する。
(ステップS210)合致判断部111は、ステップS204における操作の記録開始から、ステップS209における操作の記録終了までの間に記録された一以上の操作(具体的には操作情報)のそれぞれが、操作群関連情報格納部110に操作群関連情報と対応付けられて格納されている操作(操作情報)と合致する操作(操作情報)であるか否かを判断して、合致する操作を判断する。なお、ここでの合致は部分一致であっても完全一致であっても良い。
(ステップS211)操作群関連情報取得部112は、ステップS210において合致すると判断された一以上の操作(操作情報)に対応付けられた操作群関連情報を、操作群関連情報格納部110から取得する。
(ステップS212)オブジェクト関連情報取得部116は、ステップS211において合致すると判断された一以上の操作の操作対象となるオブジェクトについてのオブジェクト関連情報を操作情報等から取得する。なお、この場合、ステップS201で受け付けた操作情報に操作対象となるオブジェクトについてのオブジェクト関連情報が含まれていることが前提となる。あるいは、ステップS211において合致すると判断された一以上の操作の操作対象となるオブジェクトの操作対象情報等を、合致すると判断された操作情報から取得し、当該取得した一以上のオブジェクトの識別情報等をそれぞれ検索キー等として用いて、ステップS211において合致すると判断された一以上の操作の操作対象となるオブジェクトのオブジェクト関連情報を、オブジェクト格納部101等から検索等により取得してもよい。そして、操作群関連情報取得部112は、取得した一以上のオブジェクト関連情報と、ステップS211において取得した一以上の操作群関連情報とをそれぞれ組み合わせて、新たな操作群関連情報を作成する。作成した操作群関連情報を、図示しないメモリ等の記憶媒体に一時記憶する。
(ステップS213)メニュー出力部114は、ステップS212において取得した一以上の操作群関連情報を選択候補として有する候補メニューを構成して出力する。具体的には、一以上の操作群関連情報をメニュー項目として有する候補メニューを、図示しないモニタ等に表示する。
(ステップS214)操作群関連情報受付部115は、操作群関連情報を受け付けたか否かを判断する。ここで受け付ける操作群関連情報は、ステップS213において出力した候補メニューの項目となっている操作群関連情報の受付であっても良いし、ユーザによるキーボード等の操作によって入力された操作群関連情報の受付等であっても良い。受け付けた場合、ステップS215に進み、受け付けていない場合、ステップS214に戻る。
(ステップS215)操作記録部108は、ステップS214において受け付けた操作群関連情報と、ステップS204における操作の記録が開始されてから、後述するステップS209において操作の記録が終了されるまでの一の記録期間内に記録された操作(操作情報)である操作群とを対応付けて、操作群格納部109に蓄積する。そして、ステップS201に戻る。
(ステップS216)オブジェクト処理部103は、ステップS201において受け付けた操作を実行する。具体的にはステップS201において受け付けた操作情報が示す操作を操作対象となっているオブジェクトに対して実行する。オブジェクト処理部103は、実行した操作の結果に応じて、オブジェクト格納部101に格納されている操作対象となるオブジェクトの情報を更新する。
(ステップS217)出力部104は、ステップS216の処理の結果更新されたオブジェクトの情報等を用いて、操作後のオブジェクト等の情報を出力、例えば表示する。そして、ステップS201に戻る。
(ステップS218)オブジェクト指定受付部118は、オブジェクトに対する指定を受け付けたか否かを判断する。受け付けた場合、ステップS219に進み、受け付けていない場合、ステップS222に進む。
(ステップS219)実行指示受付部117は、ステップS215において蓄積された操作群を実行する指示を受け付けたか否かを判断する。ここでは特に、実行指示の対象となる操作群が、ステップS218において指定されたオブジェクトに対応した操作群であるか否かを、操作群を構成する操作情報や、操作群に対応付けられたオブジェクト関連情報等から判断するようにし、ステップS218において指定されたオブジェクトに対応した操作群を実行する指示を受け付けたか否かを判断するようにしてもよい。操作群を実行する指示を受け付けた場合、ステップS220に進み、受け付けていない場合、ステップS201に戻る。
(ステップS220)オブジェクト処理部103は、ステップS219(または、ステップS222)において指定された操作群を構成する操作(具体的には操作情報)に応じた処理を、例えばステップS218において指定されたオブジェクト等に対して順次実行する。オブジェクト処理部103は、実行した操作の結果に応じて、オブジェクト格納部101に格納されている操作対象となるオブジェクトの情報を更新する。
(ステップS221)出力部104は、ステップS220の処理の結果更新されたオブジェクトの情報等を用いて、操作後のオブジェクト等の情報を出力、例えば表示する。そして、ステップS201に戻る。
(ステップS222)実行指示受付部117は、ステップS215において蓄積された操作群を実行する指示を受け付けたか否かを判断する。ここでは特に、実行指示の対象となる操作群が、オブジェクトを操作対象として指定しない操作群を実行する指示であるか否かを、操作群を構成する操作情報や、操作群に対応付けられたオブジェクト関連情報等から判断するようにし、オブジェクトを操作対象として指定しない操作群を実行する指示のみを受け付けるようにする。操作群を実行する指示を受け付けた場合、ステップS220に進み、受け付けていない場合、ステップS201に戻る。
なお、図2のフローチャートにおいて、ステップS221およびステップS220の処理を、操作群を構成する一の操作情報が実行される毎に、繰り返し行うようにしても良い。
また、ステップS219において、実行の対象とする操作群を指定せずに操作群を実行する指示を与えた場合に、ステップS218において指定されたオブジェクトと同様のオブジェクト、例えば同じタイプのオブジェクトに対して行われた操作により構成される操作群を記録された操作群から検索し、検索した操作群を、ステップS220の処理の代わりに、指定されたオブジェクトに対して順次実行するようにしても良い。
なお、図2のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
以下、本実施の形態における情報処理装置の具体的な動作について説明する。ここでは、一例として、情報処理装置1がDTP装置である場合を例に挙げて説明する。但し、情報処理装置1は、DTP装置以外であってもよい。
図3は、情報処理装置1によりレイアウト作業が行われているページの表示例を示す図である。このレイアウト中のページは、例えば、図示しないモニタ上に表示される。
図4は、図3に示したレイアウト中のページを構成するオブジェクトとオブジェクト関連情報とを管理するためのオブジェクト管理表の一例を示す図である。オブジェクト管理表は、「オブジェクトID」、「オブジェクトタイプ」、「座標」、「サイズ」、「データ」、「オブジェクト属性」という項目を有している。「オブジェクトID」は、オブジェクトを管理するための識別情報である。ここでは、図3のページやフレーム枠に記載されているID番号が、オブジェクト管理表の、ページ及びフレーム枠のオブジェクトIDと対応しているものとする。なお、図3のID番号は説明のためのものであり、実際には表示しなくてよい。「オブジェクトタイプ」は、オブジェクトのタイプを示す情報であり、ここでは、オブジェクトがページであるか、テキストデータを配置するためのテキストフレーム枠であるか、ピクチャデータを配置するためのピクチャフレーム枠であるか、テキストデータであるか、画像データであるか否か等を示す情報であるとする。「座標」は、オブジェクトが配置される座標情報、ここでは例えばオブジェクトの左上隅の座標情報であるとする。「サイズ」は、オブジェクトのサイズを示す情報、「データ」はオブジェクト内に配置されるデータ等の他のオブジェクトのオブジェクトID、「オブジェクト属性」は、オブジェクトの表示属性等の属性を示す情報である。画像データやテキストデータのオブジェクトについては、ここでは例として、常にフレーム枠内に配置されるものとし、「座標」、「サイズ」の情報は指定されないものとする。また、ページのオブジェクトについては、「データ」の項目には、ページ内に配置されるフレーム枠の「オブジェクトID」が、また、フレーム枠のオブジェクトについては、「データ」の項目にはページ内に配置されるテキストデータ又は画像データの「オブジェクトID」が指定されるものとする。「オブジェクト属性」は、例えば、テキストデータであれば、フォント名や、フォントサイズ、段落の設定等の情報が指定されるものとする。また、フレーム枠であれば、フレーム枠の表示の有無やフレーム枠色、背景色等が指定されていてもよい。
図5は、開始操作指定情報格納部106に格納されている開始操作指定情報を管理するための開始操作指定情報管理表である。開始操作指定情報管理表は、「開始操作ID」、「操作情報」という項目を有している。「操作情報」は、さらに「操作対象」と「処理」という項目を有している。「開始操作ID」は、開始操作指定情報を管理するための識別情報である。「操作対象」は、操作対象情報であり、ここでは、操作の対象となるオブジェクトのタイプを示す情報であり、図4に示した「オブジェクトタイプ」に相当する。「処理」は、操作によってイベントが発生した場合に、実行される処理の名称である。「操作情報」は操作情報であり、ここでは、「オブジェクトタイプ」と「処理」とを有する情報であるとする。
図6は、終了操作指定情報格納部107に格納されている終了操作指定情報を管理するための終了操作指定情報管理表である。終了操作指定情報管理表は、「終了操作ID」、「操作情報」という項目を有している。「操作情報」は、さらに「操作対象」と「処理」という項目を有している。「終了操作ID」は、終了操作指定情報を管理するための識別情報である。「操作対象」、「命令」、「操作情報」については、図5と同様である。
まず、ユーザが、情報処理装置1のメニュー項目やツール等を操作して、図3に示した「ID=001」のページ上に、新たなオブジェクトであるピクチャフレーム枠を作成する指示を、情報処理装置1に対して与えたとする。操作受付部102は、操作情報として、ピクチャフレーム枠を作成する処理を実行させる指示を含む操作情報を受け付ける。例えば、受け付ける操作情報は、「create pictureflame」という「処理」の情報と、ピクチャフレーム枠が作成される座標情報やピクチャフレームのサイズの情報等の属性情報との組合せであるとする。この操作情報は、「操作対象」の情報は含まない情報であるとする。
指定操作判断部105は、操作受付部102が受け付けた操作情報と一致する操作情報が、図5に示した開始操作指定情報管理表にあるか否かを判断する。ここでは、操作受付部102が受け付けた操作情報が、操作対象を含まず、「処理」の情報だけであるため、図5に示した開始操作指定情報管理表のレコードの中に、「処理」の値が、操作受付部102が受け付けた操作情報の処理の名称である「create pictureflame」と一致するものが存在するか否かを判断する。ここでは、一致するレコードが存在しないと判断されるため、指定操作判断部105は、この操作は記録開始を示す操作でないと判断し、操作の記録を開始しない。
オブジェクト処理部103は、操作受付部102が受け付けた操作情報に従って、ピクチャフレーム枠を作成する。そして、作成したピクチャフレーム枠のオブジェクトとオブジェクト関連情報とを、「ID=025」であるレコードとして、図4に示したオブジェクト管理表に追加する。レコードを追加後のオブジェクト管理表を図7に示す。また、出力部104は、レコードが追加されたオブジェと管理表に応じて、図8に示すようにページの画像を更新する。
つぎに、ユーザが、「ID=002」のオブジェクトであるテキストフレーム枠をマウス等を用いて選択し、図9に示すような配置するオブジェクトを選択するためのメニュー画面等を操作して、「ID=005」のオブジェクトであるテキストデータを配置する指示を情報処理装置1に与えたとする。操作受付部102は、テキストフレーム枠を処理対象として、当該テキストフレーム枠にテキストデータを配置する指示を含む操作情報を受け付ける。例えば、受け付ける操作情報は、「テキストフレーム枠」という操作対象のオブジェクトタイプを示す情報である「操作対象」と、「place」という「処理」の情報と、操作対象のオブジェクトの識別情報「ID=002」と、配置されるオブジェクトの識別情報「ID=005」等の組合せであるとする。
指定操作判断部105は、操作受付部102が受け付けた操作情報と一致する操作情報が、図5に示した開始操作指定情報管理表にあるか否かを判断する。ここでは、操作受付部102が受け付けた操作情報が、「テキストフレーム枠」という操作対象と「place」という処理の指示とを含むものであるため、図5に示した開始操作指定情報管理表のレコードの中に、「操作対象」の値が「テキストフレーム枠」であって、「処理」の値が「place」と一致するものが存在するか否かを判断する。ここでは、「開始操作ID」が「S1」であるレコードが一致するレコードであると判断されるため、指定操作判断部105は、この操作が記録開始を示す操作であると判断し、操作の記録を開始する。
オブジェクト処理部103は、操作受付部102が受け付けた操作情報に従って、「ID=002」のテキストフレーム枠内に、「ID=005」のオブジェクトを配置する。具体的には、このような関係となるように、図7に示したオブジェクト管理表を更新する。例えば、オブジェクト管理表の「ID=002」のレコードの「データ」項目の値に、配置されたオブジェクトの識別情報である「ID=005」が追加される。更新後のオブジェクト管理表を図10に示す。また、出力部104は、レコードが追加されたオブジェと管理表に応じて、図11に示すようにページの画像を更新する。
操作記録部108は、操作受付部102が受け付けた操作の記録を行う。ここでは、操作受付部102が受け付けた、「テキストフレーム枠」という「操作対象」と、「place」という「処理」とを含む操作情報を、操作が行われた順番を示す情報「1」を付与して図示しないメモリ等の記憶媒体に一時記憶する。なお、操作の記録と、オブジェクト処理部103による操作に応じた処理の実行の順番等は問わない。
図12は、図示しないメモリ等の記憶媒体に一時記憶されている操作情報を管理するための操作情報管理表を示す図である。操作情報管理表は、「順番」と「操作情報」という項目を有している。「順番」は操作が行われた順番を示す値である。「操作情報」については、図5の開始操作指定情報管理表の「操作情報」に対して、「オブジェクト属性」という項目を追加したものである。「オブジェクト属性」については、図4のオブジェクト管理表の「オブジェクト属性」と同様である。
図12に示すように、「テキストフレーム枠」という「操作対象」と、「place」という「処理」とを含む操作情報が「順番」の情報である「1」と対応付けられて追記される。なお、ここでは、記録開始のトリガーとなる操作の操作情報を記録するようにしたが、記録しないようにしても良い。
次に、ユーザが、現在選択されている「ID=002」のテキストフレーム枠に対する選択を解除せずに、図13に示すようなテキストフレーム内のテキストのフォントやフォントサイズ等を変更するためのメニュー等を操作して、当該テキストフレーム枠内に配置されているテキストデータの、フォントや、フォントサイズ等を変更する指示を与えたとする。操作受付部102は、操作情報として、テキストフレーム枠を処理対象として、当該テキストフレーム枠に配置されるテキストデータのフォントやフォントサイズ等を指示を含む操作情報を受け付ける。例えば、受け付ける操作情報は、「テキストフレーム枠」という「操作対象」の上方と、「change fontstyle」という「処理」の情報と、操作対象のオブジェクトの識別情報「ID=002」と、変更後のフォント名やフォントサイズ等のパラメータの情報との組合せであるとする。
オブジェクト処理部103は、操作受付部102が受け付けた操作情報に従って、「ID=002」のテキストフレーム枠内に配置されたテキストのフォントやフォントサイズ等を変更する。具体的には、このような関係となるように、図10に示したオブジェクト管理表を更新する。例えば、オブジェクト管理表の「ID=002」のレコードの「オブジェクト属性」項目の値に、オブジェクト内に配置されるテキストのフォントやフォントサイズの情報が追加される。なお、値がないものについては、デフォルトで設定されるフォントやフォントサイズの情報が適用されるものとする。更新後のオブジェクト管理表を図14に示す。また、出力部104は、レコードが追加されたオブジェと管理表に応じて、ページの画像を更新する。
指定操作判断部105は、操作受付部102が受け付けた操作情報と一致する操作情報が、図6に示した終了操作指定情報管理表にあるか否かを判断する。ここでは、図6に示した終了操作指定情報管理表のレコードの中に、「操作対象」の値が「テキストフレーム枠」であって、「処理」の値が「change fontstyle」と一致するものが存在するか否かを判断する。ここでは一致するものがないため、記録終了を示す操作ではないと判断する。そして、当該受け付けた操作情報の「操作対象」の値と、「処理」の値とを、操作された順番を示す値「2」と対応付けて図示しないメモリ等に記憶されている操作情報管理表に追記する。追記された操作情報管理表を、図15に示す。操作情報のフォントサイズ等を指定する数値等の情報は、オブジェクト属性として記憶される。
次に、ユーザが、マウス等を操作してテキストフレーム枠やピクチャフレーム枠以外の領域に対してクリック等を行うことで、「ID=001」のオブジェクトであるページを選択したとする。操作受付部102は、操作情報として、ページを処理対象として、当該ページを選択する操作情報を受け付ける。例えば、受け付ける操作情報は、「ページ」という「操作対象」と、「select」という「処理」との組合せを含む情報であるとする。
オブジェクト処理部103は、操作受付部102が受け付けた操作情報に従って、「ID=002」のテキストフレーム枠に対する選択を解除し、「ID=001」のオブジェクトであるページが選択された状態とする。出力部104は、選択が解除されたことが明示されるようにページの画像を更新してもよい。
指定操作判断部105は、操作受付部102が受け付けた操作情報と一致する操作情報が、図6に示した終了操作指定情報管理表にあるか否かを判断する。ここでは、図6に示した終了操作指定情報管理表のレコードの中に、「操作対象」の値が「ページ」であって、「処理」の値が「select」と一致するものが存在するか否かを判断する。ここでは、「終了操作ID」が「E1」であるレコードが一致するレコードであると判断されるため、指定操作判断部105は、この操作が記録終了を示す操作であると判断し、操作の記録を終了する。ここでは、例として、操作終了の際の操作情報は記録しないものとする。
図16は、操作群関連情報格納部110に操作群関連情報を管理するための操作群関連情報管理表である。操作群関連情報は、「ID」と「処理」と「操作群関連情報」という項目を有している。「ID」は、レコードを管理するための識別情報である。「処理」については、図5の「処理」に相当する。「操作群関連情報」は操作群関連情報である。ここでは、操作群関連情報は、操作に関する操作情報のうちの、特に「処理」の情報と対応付けられて管理されているものとする。
合致判断部111は、図12に示したような、一時記憶されている操作情報の群である操作群を構成する各操作が、図16に示したような操作群関連情報管理表において操作群関連情報と対応付けられて管理されている操作のいずれかと合致するか否かを判断する。ここでは、一例として、合致判断部111は、図12に示したような、一時記憶されている操作情報の群である操作群を構成する各操作情報の「処理」の値が、図16に示したような操作群関連情報管理表の「処理」のいずれかと合致するか否かを判断する。そして、合致する操作を検出する。
そして、操作群関連情報取得部112は、合致すると判断された操作と対応付けられた「操作群関連情報」を、操作群関連情報格納部110から取得する。例えば、図15の「順番」が「1」である操作情報については、「処理」が「place」であるため、操作群関連情報管理表の「ID」が「01」のレコードと合致すると判断されるため、操作群関連情報取得部112は、「ID」が「01」のレコードの「データ配置」という操作群関連情報を操作群関連情報格納部110から取得する。また、図15の「順番」が「2」である操作情報についても「処理」が「change fontstyle」であるため、操作群関連情報管理表の「ID」が「05」のレコードと合致すると判断されるため、合致すると判断され、操作群関連情報取得部112は、「ID」が「05」のレコードの「フォントスタイル変更」という操作群関連情報を操作群関連情報格納部110から取得する。
また、オブジェクト関連情報取得部116は、合致判断部111が合致すると判断した操作情報から、それぞれ、「操作対象」の値を取得する。この「操作対象」の値が、ここでは、オブジェクト関連情報であるとする。ここでは、操作順番が「1」、「2」のいずれの操作情報についても、「テキストフレーム枠」という「操作対象」の値を取得する。
操作群関連情報取得部112は、操作群関連情報格納部110から取得した操作群関連情報とオブジェクト関連情報取得部116が取得した「操作対象」の値とを組み合わせて、操作順番が「1」、「2」の操作に対して、新たな操作群関連情報を構成する。例えば、操作順番が「1」である操作については、「操作対象」である「テキストフレーム枠」と、操作群関連情報である「データ配置」とを配列した「テキストフレーム枠データ配置」という操作群関連情報を新たに構成する。また、操作順番が「2」である操作については、「操作対象」である「テキストフレーム枠」と、操作群関連情報である「フォントスタイル変更」とを配列した「テキストフレーム枠フォントスタイル変更」という操作群関連情報を新たに構成する。
メニュー出力部114は、操作群関連情報が新たに構成した操作群関連情報を、選択可能なメニューとした、記録された操作群に付与される操作群関連情報の入力を受け付けるための図17に示すようなメニュー画面を構成し、表示する。図17に示すメニュー画面の入力フィールド171には、キーボード等を操作して入力された操作群関連情報、または、操作群関連情報取得部112が取得した一以上の操作群関連情報により構成される選択候補のメニューである候補メニュー172の、マウスやキーボードやタッチパネル等の操作により選択された操作群関連情報が入力される。例えば、ここでは、ユーザが「テキストフレーム枠データ配置」という操作群関連情報を候補メニュー172から選択し、決定ボタン173を押したとすると、操作群関連情報受付部115は、「テキストフレーム枠データ配置」という操作群関連情報を受け付ける。
操作記録部108は、図15に示した操作情報管理表が示す複数の操作情報により構成される操作群を、操作群関連情報受付部115が受け付けた「テキストフレーム枠配置」という操作群関連情報と対応付けて操作群格納部109に記録する。
図18は、操作群格納部109に格納されている操作群を管理する操作群管理情報である。操作群管理情報は、「操作群関連情報」、「順番」、「操作情報」という項目を有している。「操作群関連情報」は、操作群関連情報取得部112が取得した操作群関連情報である。「順番」と「操作情報」と「オブジェクト属性」とについては、図12の操作情報管理表と同様である。
次に、ユーザが、図11に示したようなページの「ID=003」のテキストフレーム枠をマウス等を用いて選択し、「操作群関連情報」が「テキストフレーム枠」である操作群を実行する指示を情報処理装置1に与えたとする。実行指示受付部117は、「ID=003」のテキストフレーム枠に対して、「操作群関連情報」が「テキストフレーム枠」である操作群を実行する指示を受け付ける。
オブジェクト処理部103は、実行指示受付部117が受け付けた指示に従って、図18に示した操作群管理情報から、「操作群関連情報」が「テキストフレーム枠」である操作群を構成する操作情報を順次読み出し、選択された「ID=003」のテキストフレーム枠に対して、操作情報に対応した操作を実行する。
例えば、図9に示すようなテキストフレーム枠内に、オブジェクトを配置するためのメニュー画面を表示し、ユーザにより配置するテキストオブジェクトが選択された場合、選択されたテキストオブジェクトを選択されているテキストフレーム枠内に配置し、図13に示したように、「ID=002」のテキストフレーム枠内のフォントの設定と同じ設定となるようにオブジェクト内に配置されたテキストのオブジェクトのフォントのスタイルを変更する。そして、変更結果を、出力部104が出力する。
なお、実行指示受付部117が、オブジェクトの指定を受け付けずに、一の操作群を実行する指示を受け付けるようにしても良い。例えば、「操作群関連情報」が「テキストフレーム枠」である操作群を実行する指示を実行指示受付部117が受け付けたとすると、オブジェクト処理部103は、「操作群関連情報」が「テキストフレーム枠」である操作群を構成する各操作を実行する際に、各操作に対応する操作情報に含まれる「操作対象」の値、ここでは「テキストフレーム枠」を順次読み出し、オブジェクト格納部101に格納されている全てのオブジェクトの中から、オブジェクトタイプが「テキストフレーム枠」であるオブジェクトを検出し、当該検出されたオブジェクトについて、選択された操作群を構成する操作を実行するようにしても良い。また、オブジェクト格納部101に格納されている全てのオブジェクトの代わりに、現在編集対象となっているページ上に配置されているオブジェクトの中から、オブジェクトタイプが「テキストフレーム枠」であるオブジェクトを順次検出し、当該検出されたオブジェクトについて、選択された操作群を構成する操作情報が示す操作を順次実行するようにしても良い。
また、オブジェクト操作関連情報格納部113に、操作情報に含まれる「操作対象」の情報と対応付けたオブジェクト操作関連情報を予め格納しておくようにし、合致判断部111が合致すると判断した各操作情報に含まれる「操作対象」の値を検索キーとして、オブジェクト関連情報取得部116が、当該検索キーと一致する「操作対象」と対応付けられたオブジェクト操作関連情報をオブジェクト操作関連情報格納部113から検索して取得するようにしても良い。そして、操作記録部108が当該オブジェクト操作関連情報を操作群関連情報として操作群に付加するようにしても良い。例えば、オブジェクト操作関連情報として、「操作対象」の情報が示すオブジェクトに対して編集を行う理由等を示す情報を格納しておくようにすることで、操作群に対して、当該操作群により編集を行う理由を示す情報を含む操作群関連情報を、操作群に対して対応付けることが可能となる。例えば、テキストフレーム枠の操作対象情報と対応付けられたオブジェクト操作関連情報として、「テキストフレーム枠のサイズを拡大する必要があった」等の編集理由等の情報を用意しておくこと等が考えられる。
なお、オブジェクト処理部103が操作群格納部109に格納されている一以上の操作群を実行する場合、当該操作群により属性等が変更されたオブジェクトについては、変更が行われていないオブジェクトに対してモニタ上等でユーザが視覚的に識別可能となるよう、オブジェクトの表示属性を変更しても良い。例えば一時的に、オブジェクトの外周や内部等を着色したり、オブジェクトの外周等を点線のアニメーション等で表示したりできるようにしても良い。これにより、操作群の実行により行われたオブジェクトに対する処理が適切なものであるかを、視覚的に確認することができ、不適切な場合は、やり直し等を行うことができる。なお、操作群を実行して行われた処理に付いては、操作群が実行される前のオブジェクトの状態の情報等を図示しないメモリ等の記憶媒体に蓄積しておくようにし、いわゆるアンドゥ等の操作によって、操作群の実行後に蓄積された情報を読み出すことで、元の状態を復元できるようにしても良い。
また、情報処理装置1は、操作群格納部109に格納されている一以上の操作群の一部または全体をグループ化する指示を、図示しないグループ化を受け付けるための受付部等から受け付けるようにしても良い。この場合、操作群のグループを指定して実行する指示を受け付けた場合、当該グループを構成する操作群が順次実行される。なおグループ化する際に、処理順番を指定する情報を用いて、グループ化された操作群を管理することで、操作群を実行する順番を指定できるようにしておくことが好ましい。このようなグループ化により、複数の操作群の処理を一度の操作で連続的に実行することができる。
また、操作受付部102は、操作群関連情報取得部112が取得した一以上の操作群関連情報の中から、一の操作群関連情報を取得して、操作群と対応付けて蓄積するようにしても良い。操作受付部102が一の操作群関連情報を取得するルール等は予め指定しておくようにすればよい。操作受付部102が取得する操作群関連情報は、例えば、最初に合致判断部111が合致すると判断した操作情報に対応した操作群関連情報であっても良いし、オブジェクト属性の入力が伴う操作情報に対応した操作群関連情報であっても良い。
以上、本実施の形態によれば、指定操作判断部105が、ユーザ等が行う操作について、予め指定された記録開始または記録終了の操作であるかを判断するようにしたことにより、操作の記録開始と、操作の記録終了とを自動的に認識して、操作を自動的に記録することができる。これにより、例えば、一旦オブジェクトに対して行った操作を、意図的に操作を記録することなく、他の同様のオブジェクトに対して適用することができる。このため、操作を他のオブジェクトに対して適用することを操作前に予め決定する必要がないため、操作を記録することが制作等の妨げにならない。また、操作の結果を見てから、その操作を得るために行った操作群を適宜取り出して再利用することが可能となる。このため、操作後に、操作が記録されていないことを後悔したり、操作後に思い出せない操作があるために処理が再現できない、ということを防ぐことができる。
また、操作群に操作群関連情報を付与できるようにすることで、操作群がどのような操作であるかをユーザが認識できるようにすることができる。
また、操作群に対する操作群関連情報を自動蓄積することで、操作群についての操作群関連情報の付与の漏れをなくすことができ、操作群がどのような操作群であるかをユーザが区別できなくなることを防ぐことができる。
操作群に付与する操作群関連情報の候補メニューを表示するようにすることにより、ユーザが操作群関連情報を入力する際に、操作群関連情報を作成する手間を減らすことができる。また候補メニューから操作群関連情報を作成する際のヒントを得ることができる。
なお、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段(情報送信部など)は、物理的に一の媒体で実現されても良いことは言うまでもない。
また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりする情報や、各構成要素が処理で用いるしきい値や数式、アドレス等の情報等は、上記説明で明記していない場合であっても、図示しない記録媒体において、一時的に、あるいは長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、あるいは、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、あるいは、図示しない読み出し部が行ってもよい。
また、上記各実施の形態では、情報処理装置がスタンドアロンである場合について説明したが、情報処理装置は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部や受付部は、通信回線を介して入力を受け付けたり、画面を出力したりすることになる。
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。
なお、上記各実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、オブジェクト格納部に格納されている操作の対象となるオブジェクトに対する操作を受け付ける操作受付部と、前記操作受付部が受け付けた操作に応じて、オブジェクトに対する処理を行うオブジェクト処理部と、前記オブジェクト処理部の処理結果を出力する出力部と、前記操作受付部が受け付けたオブジェクトに対する操作が、操作の記録開始または記録終了を示す操作であるか否かを判断する指定操作判断部と、前記指定操作判断部の判断結果に応じて、前記操作受付部が受け付けた一以上の操作である操作群を記録する操作記録部として機能させるためのプログラムである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
図20は、上記プログラムを実行して、上記実施の形態による情報処理装置等を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
図20において、コンピュータシステム900は、CD−ROM(Compact Disk Read Only Memory)ドライブ905、FD(Floppy(登録商標) Disk)ドライブ906を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
図19は、コンピュータシステム900の内部構成を示す図である。図19において、コンピュータ901は、CD−ROMドライブ905、FDドライブ906に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM(Random Access Memory)913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915とを備える。なお、コンピュータ901は、LANへの接続を提供する図示しないネットワークカードを含んでいてもよい。
コンピュータシステム900に、上記実施の形態による情報処理装置等の機能を実行させるプログラムは、CD−ROM921、またはFD922に記憶されて、CD−ROMドライブ905、またはFDドライブ906に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD−ROM921やFD922、またはネットワークから直接、ロードされてもよい。
プログラムは、コンピュータ901に、上記実施の形態による情報処理装置等の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。