(57)【特許請求の範囲】
【請求項１】
画面上に第１ウィンドウを生成し、前記第１ウィンドウ上に複数のフレームを生成し、複数のアプリケーションの入出力を前記複数のフレームに夫々割り当てる第１割り当て部と、
前記複数のフレームから一つの対象フレームを選択する操作を含む第１操作を検出した場合、前記画面上に前記対象フレームより表示領域が大きな第２ウィンドウを生成し、前記複数のアプリケーションのうち前記対象フレームに割り当てられた対象アプリケーションの入出力を前記第２ウィンドウに割り当てる第２割り当て部と、
前記対象アプリケーションが前記第２ウィンドウに割り当てられた後、前記第２ウィンドウの削除を示す第２操作を検出した場合、前記対象アプリケーションの入出力を前記対象フレームに割り当てる第３割り当て部と
を備える表示制御装置。
【請求項２】
前記第３割り当て部は、前記対象アプリケーションの入出力を前記対象フレームに割り当てる場合、前記第２ウィンドウを削除する、
請求項１に記載の表示制御装置。
【請求項３】
前記第２割り当て部は、前記対象アプリケーションの入出力を前記第２ウィンドウに割り当てる場合、前記対象フレーム上の前記対象アプリケーションの出力を消去する、
請求項１または請求項２に記載の表示制御装置。
【請求項４】
前記第２割り当て部は、前記第２ウィンドウを生成する場合、前記第１操作に関連付けられた決定方法に基づいて前記第２ウィンドウの位置及び大きさを決定する、
請求項１乃至請求項３のいずれかに記載の表示制御装置。
【請求項５】
前記複数のアプリケーションは、ソフトウェア開発のためのソース・コード・エディタ、コンパイラ、デバッガ、ファイル・ブラウザのいずれかを含む、
請求項１乃至請求項４のいずれかに記載の表示制御装置。
【請求項６】
画面上に第１ウィンドウを生成し、
前記第１ウィンドウ上に複数のフレームを生成し、
複数のアプリケーションの入出力を前記複数のフレームに夫々割り当て、
前記複数のフレームから一つの対象フレームを選択する操作を含む第１操作を検出した場合、前記画面上に前記対象フレームより表示領域が大きな第２ウィンドウを生成し、前記複数のアプリケーションのうち前記対象フレームに割り当てられた対象アプリケーションの入出力を前記第２ウィンドウに割り当て、
前記対象アプリケーションが前記第２ウィンドウに割り当てられた後、前記第２ウィンドウの削除を示す第２操作を検出した場合、前記対象アプリケーションの入出力を前記対象フレームに割り当てる
ことをコンピュータに実行させる表示制御プログラム。
【請求項７】
前記複数のアプリケーションは、ソフトウェア開発のためのソース・コード・エディタ、コンパイラ、デバッガ、ファイル・ブラウザのいずれかを含む、
請求項６に記載の表示制御プログラム。
【請求項８】
コンピュータが、画面上に第１ウィンドウを生成し、
前記コンピュータが、前記第１ウィンドウ上に複数のフレームを生成し、
前記コンピュータが、複数のアプリケーションの入出力を前記複数のフレームに夫々割り当て、
前記コンピュータが、前記複数のフレームから一つの対象フレームを選択する操作を含む第１操作を検出した場合、前記画面上に前記対象フレームより表示領域が大きな第２ウィンドウを生成し、前記複数のアプリケーションのうち前記対象フレームに割り当てられた対象アプリケーションの入出力を前記第２ウィンドウに割り当て、
前記対象アプリケーションが前記第２ウィンドウに割り当てられた後、前記コンピュータが、前記第２ウィンドウの削除を示す第２操作を検出した場合、前記対象アプリケーションの入出力を前記対象フレームに割り当てる
ことを備える表示制御方法。
【請求項９】
前記複数のアプリケーションは、ソフトウェア開発のためのソース・コード・エディタ、コンパイラ、デバッガ、ファイル・ブラウザのいずれかを含む、
請求項８に記載の表示制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、ウィンドウ及びそのウィンドウ上のフレームの表示を制御する表示制御装置、表示制御プログラム、及び表示制御方法に関する。
【背景技術】
【０００２】
ＧＵＩ（Graphical User Interface）の技術において、一つのウィンドウ上に複数のフレームを配置する技術が知られている。また、ユーザによる操作に応じてウィンドウ上のフレームの大きさを変更し、その変更に応じてそのウィンドウ上の他のフレームの大きさ及び配置を変更する技術が知られている。
【０００３】
関連する技術として、以下の技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−９４１８号公報
【特許文献２】特許第４１０６０５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、着目するフレームの表示領域を拡大して当該フレームの視認性を高めるために、前述の技術により複数のフレームの大きさ及び配置を変更した後、それらの大きさ及び配置を変更前の状態に復元することは容易でない。例えばユーザは、変更された全てのフレームの大きさ及び配置を元に戻す操作が必要になる。
【０００６】
本発明は上述した問題点を解決するためになされたものであり、複数のアプリケーションがそれぞれ割り当てられた複数のフレームの状態の変更及び復元を容易にする技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
実施形態の表示制御装置は、第１割り当て部と、第２割り当て部と、第３割り当て部とを備える。第１割り当て部は、画面上に第１ウィンドウを生成し、第１ウィンドウ上に複数のフレームを生成し、複数のアプリケーションの入出力を複数のフレームに夫々割り当てる。第２割り当て部は、複数のフレームから一つの対象フレームを選択する操作を含む第１操作を検出した場合、画面上に対象フレームより表示領域が大きな第２ウィンドウを生成し、複数のアプリケーションのうち対象フレームに割り当てられた対象アプリケーションの入出力を第２ウィンドウに割り当てる。第３割り当て部は、対象アプリケーションが第２ウィンドウに割り当てられた後、第２ウィンドウの削除を示す第２操作を検出した場合、対象アプリケーションの入出力を対象フレームに割り当てる。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態における情報処理装置の構成を示すブロック図である。
【図２】第１の実施形態における情報処理プログラムに含まれるソフトウェアモジュールを示すブロック図である。
【図３】第１の実施形態における情報処理装置の動作を示すフローチャートである。
【図４】第１の実施形態における表示装置の画面の第１状態を示す模式図である。
【図５】第１の実施形態における表示装置の画面の第２状態を示す模式図である。
【図６】第１の実施形態における表示装置の画面の第３状態を示す模式図である。
【図７】第１の実施形態における表示装置の画面の第４状態を示す模式図である。
【図８】第２の実施形態における第１特定操作を示す模式図である。
【図９】第２の実施形態における第２特定操作を示す模式図である。
【図１０】第３の実施形態における第１特定操作を示す模式図である。
【図１１】第３の実施形態における第２特定操作を示す模式図である。
【図１２】第４の実施形態における第１特定操作を示す模式図である。
【図１３】第４の実施形態における第２特定操作を示す模式図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について図面を参照しつつ説明する。
【００１０】
（第１の実施形態）
この実施形態においては、本発明の表示制御装置を適用した情報処理装置と、本発明の表示制御プログラム及び表示制御方法を適用したウィンドウ・マネージャとについて説明する。
【００１１】
まず、情報処理装置の構成について説明する。
【００１２】
図１は、第１の実施形態における情報処理装置７１の構成を示すブロック図である。情報処理装置７１は、入力装置７２及び表示装置７３に接続される。入力装置７２は、ユーザにより操作され、その操作を示す操作情報を情報処理装置７１へ送る。表示装置７３は、情報処理装置７１から受けた表示情報に従って画面を表示する。
【００１３】
入力装置７２は、キーボード、ポインティング・デバイスを含む。ポインティング・デバイスは例えば、マウス、タッチパッド、トラックボール、ポインティング・スティック、タッチパネル、ペンタブレットである。操作情報は例えば、キーボードで押下されたキー、マウスの移動方向、移動距離、押下されたボタンを示す。
【００１４】
表示装置７３は例えば、ＬＣＤ（Liquid Crystal Display）、ＣＲＴ（Cathode Ray Tube）、ＰＤＰ（Plasma Display Panel）である。表示情報は画面を示し、画面はウィンドウ、フレーム、それらのウィンドウ又はフレームに割り当てられたアプリケーションによる出力を含む。
【００１５】
情報処理装置７１は例えばコンピュータであり、ＣＰＵ１１、記憶装置１２、周辺機器インタフェース１３、ディスプレイ・アダプタ１４を有する。記憶装置１２はＣＰＵ１１に接続され、ＣＰＵ１１に情報処理を実行させる情報処理プログラム６１を格納し、ＣＰＵ１１により用いられる作業領域を有する。ＣＰＵ１１は、記憶装置１２に格納された情報処理プログラム６１を読み出し、情報処理プログラム６１に従って情報処理を実行する。
【００１６】
周辺機器インタフェース１３は入力装置７２及びＣＰＵ１１の間に接続され、入力装置７２から受けた操作情報をＣＰＵ１１へ送る。ＣＰＵ１１は、操作情報を周辺機器インタフェース１３から受け、操作情報に基づいて表示情報を生成し、表示情報をディスプレイ・アダプタ１４へ送る。ディスプレイ・アダプタ１４はＣＰＵ１１及び表示装置７３の間に接続され、ＣＰＵ１１から受けた表示情報を表示装置７３へ送る。
【００１７】
記憶装置１２は更に、イベント定義情報を格納する。イベント定義情報は、ユーザによる入力装置７２の特定操作を定義する。特定操作は、複数のフレームの一つに表示されているアプリケーションを新ウィンドウへ移動させることを要求する第１特定操作（第１操作）と、そのアプリケーションを元のフレームに戻すことを要求する第２特定操作（第２操作）とを含む。イベント定義情報は、このような特定操作を検出するために、特定操作を示すイベントの条件を有する。イベント定義情報は更に、第１特定操作が行われた場合の新ウィンドウの位置と大きさの決定方法を定義する。イベント定義情報は、ユーザにより定義されても良い。
【００１８】
図２は、第１の実施形態における情報処理プログラム６１に含まれるソフトウェアモジュールを示すブロック図である。情報処理プログラム６１は、プラットフォーム２１、ウィンドウ・マネージャ２２、イベント・ハンドラ２３、プラグイン４１ａ，４１ｂ，４１ｃ，４１ｄ，４１ｅ、アプリケーション４２ａ，４２ｂ，４２ｃ，４２ｄ，４２ｅを有する。
【００１９】
プラットフォーム２１は、例えばＯＳ（Operating System）である。ウィンドウ・マネージャ２２はプラットフォーム２１上で動作するミドルウェアであり、ウィンドウを制御するためのウィンドウ・オブジェクトを提供する。一つのウィンドウ・オブジェクトは、一つのウィンドウまたは一つのフレームを示す。イベント・ハンドラ２３はウィンドウ・マネージャ２２上で動作し、操作情報等について予め定義された状態を検出した場合、イベント（割り込み）をウィンドウ・マネージャ２２に通知する。
【００２０】
プラグイン４１ａ，４１ｂ，４１ｃ，４１ｄ，４１ｅは、それぞれアプリケーション４２ａ，４２ｂ，４２ｃ，４２ｄ，４２ｅの入出力のデータ変換を行う。つまり、プラグイン４１ａ，４１ｂ，４１ｃ，４１ｄ，４１ｅは、それぞれアプリケーション４２ａ，４２ｂ，４２ｃ，４２ｄ，４２ｅの入出力の仕様に合わせて設計されている。これによりアプリケーション４２ａ，４２ｂ，４２ｃ，４２ｄ，４２ｅは、ウィンドウ・マネージャ２２により提供される一つのウィンドウ上のそれぞれ異なるフレームを利用して入出力を行うことができる。例えば一つのフレームに割り当てられた一つのアプリケーションにより出力されるデータは、そのフレーム上に表示される。また、そのフレーム上で入力されたデータは、そのアプリケーションに入力される。
【００２１】
なお、この実施形態においてアプリケーション４２ａ，４２ｂ，４２ｃ，４２ｄ，４２ｅはウィンドウ・マネージャ２２の機能を利用して動作するが、その機能を利用せずにそれぞれが単独で動作することもできる。
【００２２】
ウィンドウ・マネージャ２２は、第１割り当て部３１、第２割り当て部３２、第３割り当て部３３を有する。第１割り当て部３１は、アプリケーション４２ａ，４２ｂ，４２ｃ，４２ｄ，４２ｅの入出力をそれぞれ異なるフレームに割り当て、イベント・ハンドラ２３から通知された割り込みに応じた処理を行う。第２割り当て部３２は、ユーザによる入力装置７２の第１特定操作により指定されたアプリケーションの割り当て先を、フレームから新ウィンドウへ変更する。第３割り当て部３３は、ユーザによる入力装置７２の第２特定操作に応じて、その指定されたアプリケーションの割り当て先を、新ウィンドウから元のフレームへ変更する。
【００２３】
次に、情報処理装置７１の動作について説明する。
【００２４】
図３は、第１の実施形態における情報処理装置７１の動作を示すフローチャートである。まず、ウィンドウ・マネージャ２２が起動されると、第１割り当て部３１は、起動処理を行う（Ｓ１１）。
【００２５】
図４は、第１の実施形態における表示装置７３の画面５９の第１状態を示す模式図である。この第１状態は、Ｓ１１が実行された状態である。
【００２６】
この起動処理において、まず第１割り当て部３１は、画面５９上のウィンドウ５１ａを示すウィンドウ・オブジェクトを生成する。これにより、画面５９上にウィンドウ５１ａが表示される。次に、アプリケーション４２ａ，４２ｂ，４２ｃ，４２ｄ，４２ｅが起動されると、第１割り当て部３１はウィンドウ５１ａ上に、フレーム５２ａ，５２ｂ，５２ｃ，５２ｄ，５２ｅを示すウィンドウ・オブジェクトをそれぞれ生成する。これにより、ウィンドウ５１ａ上にフレーム５２ａ，５２ｂ，５２ｃ，５２ｄ，５２ｅが表示される。次に、第１割り当て部３１は、アプリケーション４２ａ，４２ｂ，４２ｃ，４２ｄ，４２ｅの入出力をフレーム５２ａ，５２ｂ，５２ｃ，５２ｄ，５２ｅにそれぞれ割り当てる。これにより、フレーム５２ａ，５２ｂ，５２ｃ，５２ｄ，５２ｅは、アプリケーション４２ａ，４２ｂ，４２ｃ，４２ｄ，４２ｅの出力をそれぞれ表示する。
【００２７】
以下の例においては、フレーム５２ａ，５２ｂ，５２ｃ，５２ｄ，５２ｅのうちフレーム５２ｅが対象フレームとして選択される場合について説明する。また、対象フレームを含むウィンドウ５１ａを対象ウィンドウとし、対象フレームに割り当てられたアプリケーション４２ｅを対象アプリケーションとする。
【００２８】
次に、ユーザが入力装置７２の操作を行うと、イベント・ハンドラ２３は、周辺機器インタフェース１３からＣＰＵ１１が受けた操作情報に応じたイベント（割り込み）をウィンドウ・マネージャ２２に通知する（Ｓ４１）。次に、この割り込みを受けた第１割り当て部３１は、受けたイベントと記憶装置１２に格納されたイベント定義情報とを比較し、このイベントが第１特定操作を示すか否かの判定を行う（Ｓ４３）。
【００２９】
このイベントが第１特定操作を示さない場合（Ｓ４３，Ｎ）、第１割り当て部３１はこのフローをＳ７１へ移行させる。
【００３０】
このイベントが第１特定操作を示す場合（Ｓ４３，Ｙ）、第１割り当て部３１は第１特定操作が行われたことを検出する。次に、第２割り当て部３２は画面５９上の新ウィンドウを示すウィンドウ・オブジェクトを生成して、画面５９上に新ウィンドウを表示させ、対象アプリケーションの入出力を新ウィンドウに割り当て、対象フレームを書き込み禁止に設定する（Ｓ４５）。即ち、対象アプリケーションの入出力の割り当て先が対象フレームから新ウィンドウへ変更される。
【００３１】
図５は、第１の実施形態における表示装置７３の画面５９の第２状態を示す模式図である。この第２状態は、前述した第１状態の後にＳ４５までが実行された状態である。この例において、対象ウィンドウをウィンドウ５１ａとし、新ウィンドウをウィンドウ５１ｂとする。画面５９上には、対象ウィンドウと新ウィンドウが表示されている。Ｓ４５により、対象アプリケーションの入出力は新ウィンドウ上に移動し、対象アプリケーションの出力を表示していた対象フレーム（フレーム５２ｅ）の表示は消去されて空白になる。この図において対象フレームの空白部分は、格子状の塗りつぶしで示されている。
【００３２】
ここで、新ウィンドウは、対象ウィンドウ上に重なって表示されても良い。また、対象フレームの表示を消去する代わりに、対象フレームを不可視にしても良い。また、対象フレームの表示を消去する代わりに、新ウィンドウで表示中であることを表す文言やアイコン等の図を対象フレームに表示しても良い。また、対象フレームの表示を消去する代わりに、対象フレームに「元に戻す」ボタンを表示しても良い。
【００３３】
次に、対象アプリケーションはユーザによる入力装置７２の操作に従って、ウィンドウ５１ｂ上の入出力を伴う処理を行う（Ｓ５１）。この処理は例えば、ウィンドウ５１ｂ上にデータを表示すること、操作に従ってデータを編集すること、である。
【００３４】
従って、対象アプリケーションの入出力は、対象フレームと新ウィンドウのいずれか一つに割り当てられる。これにより、新ウィンドウの表示中、対象フレーム上で編集が行われることはなく、新ウィンドウ上でのみ編集が行われる。
【００３５】
図６は、第１の実施形態における表示装置７３の画面５９の第３状態を示す模式図である。この第３状態は、前述した第２状態の後にＳ５１が実行された状態である。この例は、ウィンドウ５１ｂ上で対象アプリケーションのデータが編集された場合を示す。
【００３６】
次に、ユーザが入力装置７２の操作を行うと、イベント・ハンドラ２３は、周辺機器インタフェース１３からＣＰＵ１１が受けた操作情報に応じたイベント（割り込み）をウィンドウ・マネージャ２２に通知する（Ｓ６１）。次に、この割り込みを受け取った第１割り当て部３１は、このイベントと記憶装置１２に格納されたイベント定義情報とを比較し、このイベントが第２特定操作を示すか否かの判定を行う（Ｓ６３）。
【００３７】
このイベントが第２特定操作を示さない場合（Ｓ６３，Ｎ）、第１割り当て部３１はこのフローをＳ７１へ移行させる。
【００３８】
このイベントが第２特定操作を示す場合（Ｓ６３，Ｙ）、第１割り当て部３１は第２特定操作が行われたことを検出する。次に、第３割り当て部３３は対象アプリケーションの入出力を再び対象フレームに割り当て、新ウィンドウを示すウィンドウ・オブジェクトを削除し、対象フレームを書き込み許可に設定する（Ｓ６５）。即ち、対象アプリケーションの入出力の割り当て先が新ウィンドウから対象フレームへ変更される。次に、第３割り当て部３３はこのフローをＳ４１へ移行させる。
【００３９】
Ｓ４３においてイベントが第１特定操作を示さない場合（Ｓ４３、Ｎ）、又はＳ６３においてイベントが第２特定操作を示さない場合（Ｓ６３、Ｎ）、このイベントが予め定義された終了操作を示すか否かの判定を行う（Ｓ７１）。このイベントが終了操作を示さない場合（Ｓ７１，Ｎ）、第１割り当て部３１はこのイベントに応じた処理を行い（Ｓ７２）、処理Ｓ４１へ移行する。このイベントが終了操作を示す場合（Ｓ７１，Ｙ）、第１割り当て部３１はアプリケーション４２ａ，４２ｂ，４２ｃ，４２ｄ，４２ｅ及びウィンドウ・マネージャ２２の終了処理を行い（Ｓ７３）、このフローを終了させる。
【００４０】
図７は、第１の実施形態における表示装置７３の画面５９の第４状態を示す模式図である。この第４状態は、前述した第３状態の後にＳ６５までが実行された状態である。対象アプリケーションの入出力が対象フレーム（フレーム５２ｅ）に移動することにより、新ウィンドウが削除され、元の対象ウィンドウ及び対象フレームが復元される。第４状態においてウィンドウ５１ａ上のフレーム５２ａ，５２ｂ，５２ｃ，５２ｄ，５２ｅの配置は、第１状態と同一である。
【００４１】
ここで、対象ウィンドウは、新ウィンドウ上に重なって表示されても良い。また、新ウィンドウを削除する代わりに、新ウィンドウ上の表示を消去して空白にしても良い。また、新ウィンドウを削除する代わりに、対象フレームを不可視にしても良い。また、対象フレームの表示を消去する代わりに、新ウィンドウで表示中であることを表す文言やアイコン等の図を対象フレームに表示しても良い。また、対象フレームの表示を消去する代わりに、対象フレームに「元に戻す」ボタンを表示しても良い。
【００４２】
前述のように、第１状態、第２状態、第３状態、及び第４状態を通して、対象ウィンドウ上の全てのフレームの大きさ及び配置は変わらない。
【００４３】
（第２の実施形態）
以下の各実施形態においては、情報処理装置７１をソフトウェア開発装置として機能させ、ウィンドウ・マネージャ２２を統合開発環境（ＩＤＥ：Integrated Development Environment）として機能させる例について説明する。以下の各実施形態における情報処理装置７１の構成及び動作は、第１の実施形態と同様である。以下の各実施形態において、アプリケーション４２ａ，４２ｂ，４２ｃ，４２ｄ，４２ｅは、ソフトウェア開発のためのソース・コード・エディタ、コンパイラ、リンカ、デバッガ、ファイル・ブラウザのいずれかを含む。
【００４４】
この実施形態において、入力装置７２はマウスを含む。
【００４５】
この実施形態のイベント定義情報に定義された第１特定操作は、ポインティング・デバイスを用いて、対象フレームのバーを対象ウィンドウ外へドラッグ・アンド・ドロップすることである。この実施形態のイベント定義情報は更に、新ウィンドウの大きさを定義する。
【００４６】
図８は、第２の実施形態における第１特定操作を示す模式図である。ウィンドウ５１ａ、フレーム５２ａ，５２ｂ，５２ｃ，５２ｄ，５２ｅはそれぞれ、上部にバー５６ａ，５６ｂ，５６ｃ，５６ｄ，５６ｅをそれぞれ有する。第１の実施形態と同様の第１状態において、入力装置７２の操作によりマウスカーソル５８がフレーム５２ｅのバー５６ｅ上に置かれ、そこを開始位置としてウィンドウ５１ａ外を終了位置とするドラッグ・アンド・ドロップ８１ａが行われたとする。この第１特定操作に応じて、フレーム５２ｅが対象フレームとして選択され、所定の大きさのウィンドウ５１ｂがドラッグ・アンド・ドロップ８１ａの終了位置に表示される。これにより画面５９は、第２状態になる。この例において、ウィンドウ５１ｂの所定の大きさは、イベント定義情報内に予め定義されている。
【００４７】
また、この実施形態のイベント定義情報に定義された第２特定操作は、ポインティング・デバイスを用いて、新ウィンドウのバーを対象ウィンドウ上へドラッグ・アンド・ドロップすることである。
【００４８】
図９は、第２の実施形態における第２特定操作を示す模式図である。ウィンドウ５１ｂは上部にバー５５ｂを有する。第３状態において、入力装置７２の操作によりマウスカーソル５８がウィンドウ５１ｂのバー５５ｂ上に置かれ、そこを開始位置としてウィンドウ５１ａ上を終了位置とするドラッグ・アンド・ドロップ８１ｂが行われたとする。この第２特定操作に応じて、ウィンドウ５１ｂが削除され、対象アプリケーションの出力が元の対象フレーム（フレーム５２ｅ）上に表示される。これにより画面５９は、第４状態になる。即ち、対象ウィンドウ上の全てのフレームが第１状態の配置に戻る。
【００４９】
なお、第１特定操作は、対象フレームのバーをクリックすることであっても良い。また、第１特定操作は、対象フレームのバーを右クリックすることであっても良い。また、第１特定操作は、対象フレームのバーをダブルクリックすることであっても良い。また、第１特定操作は、対象フレームのバーをクリックすることにより表示されるコンテキストメニューの中から特定項目を選択することであっても良い。
【００５０】
また、第２特定操作は、新ウィンドウのバーをクリックすることであっても良い。また、第２特定操作は、新ウィンドウのバーを右クリックすることであっても良い。また、第２特定操作は、新ウィンドウのバーをダブルクリックすることであっても良い。また、第２特定操作は、新ウィンドウのバーをクリックすることにより表示されるコンテキストメニューの中から特定項目を選択することであっても良い。また、第２特定操作は、対象フレーム内に表示された「元に戻す」ボタンをクリックすることであっても良い。
【００５１】
（第３の実施形態）
この実施形態において、入力装置７２はキーボードを含む。
【００５２】
この実施形態のイベント定義情報に定義された第１特定操作は、対象フレームをアクティブにした状態で、キーボードの特定キーを押下することである。この実施形態のイベント定義情報は更に、新ウィンドウの位置及び大きさを定義する。特定キーは、複数のキーの組み合わせであっても良い。
【００５３】
図１０は、第３の実施形態における第１特定操作を示す模式図である。入力装置７２の操作に従って、ウィンドウ５１ａ及びフレーム５２ｅがアクティブになったとする。この図中でアクティブなウィンドウ及びアクティブなフレームの枠は、斜線の塗りつぶしにより示されている。例えば、ユーザが入力装置７２を用いてマウスカーソル５８をフレーム５２ｅ上に置き、クリックすることにより、フレーム５２ｅはアクティブになる。この状態で、キーボードの特定キーが押下されると、アクティブなフレーム５２ｅが対象フレームとして選択され、所定の位置及び所定の大きさの新ウィンドウが表示される。これにより画面５９は、第２状態になる。
【００５４】
また、この実施形態のイベント定義情報に定義された第２特定操作は、新ウィンドウをアクティブにした状態で、キーボードの特定キーを押下することである。
【００５５】
図１１は、第３の実施形態における第２特定操作を示す模式図である。入力装置７２の操作によりウィンドウ５１ｂがアクティブになっているとする。この図中でアクティブなウィンドウの枠は、斜線の塗りつぶしによって示されている。例えば、ユーザが入力装置７２を用いてウィンドウ５１ｂ上に表示されたアプリケーション４２ｅのデータを編集することにより、フレーム５２ｅはアクティブになる。このとき、キーボードの特定キーが押下されると、ウィンドウ５１ｂが削除され、対象アプリケーションの出力が元のフレーム５２ｅ上に表示される。これにより画面５９は、第４状態になる。即ち、フレーム５２ａ，５２ｂ，５２ｃ，５２ｄ，５２ｅはそれぞれ第１状態の配置に戻る。
【００５６】
なお、第１特定操作は、特定キーを押しながら対象フレームをクリックすること、であっても良い。また、第２特定操作は、特定キーを押しながら新ウィンドウをクリックすること、であっても良い。
【００５７】
（第４の実施形態）
この実施形態において、入力装置７２はマウスを含む。
【００５８】
この実施形態のイベント定義情報に定義された第１特定操作は、対象フレーム上に配置された特定ボタンがクリックされることである。この実施形態のイベント定義情報は更に、新ウィンドウの位置及び大きさを定義する。この実施形態の起動処理において、第１割り当て部３１はフレーム５２ａ，５２ｂ，５２ｃ，５２ｄ，５２ｅ上に、特定ボタン５８ａ，５８ｂ，５８ｃ，５８ｄ，５８ｅを示すボタンオブジェクトをそれぞれ生成する。これにより、フレーム５２ａ，５２ｂ，５２ｃ，５２ｄ，５２ｅの右上部に特定ボタン５８ａ，５８ｂ，５８ｃ，５８ｄ，５８ｅがそれぞれ配置される。
【００５９】
図１２は、第４の実施形態における第１特定操作を示す模式図である。マウスカーソル５８が特定ボタン５８ａ上に置かれ、クリックが行われると、イベント定義情報に定義された位置及び大きさに従って新ウィンドウ（ウィンドウ５１ｂ）が表示される。このとき、第２割り当て部３２はウィンドウ５１ｂ上に特定ボタン５７ｂを示すボタンオブジェクトを生成する。これにより、ウィンドウ５１ｂの右上部に特定ボタン５７ｂが配置される。これにより画面５９は、第２状態になる。
【００６０】
また、この実施形態のイベント定義情報に定義された第２特定操作は、ウィンドウ５１ｂ上に配置された特定ボタン５７ｂがクリックされることである。
【００６１】
図１３は、第４の実施形態における第２特定操作を示す模式図である。マウスカーソル５８が特定ボタン５７ｂ上に置かれ、クリックが行われると、ウィンドウ５１ｂが消去され、対象アプリケーションの出力がフレーム５２ｅ上に表示される。これにより画面５９は、第４状態になる。即ち、フレーム５２ａ，５２ｂ，５２ｃ，５２ｄ，５２ｅはそれぞれ第１状態の配置に戻る。
【００６２】
なお、第１特定操作は、対象ウィンドウのメニューの中から対象フレームを示す特定項目を選択すること、であっても良い。また、第２特定操作は、新ウィンドウのメニューの中から特定項目を選択すること、であっても良い。
【００６３】
第１ウィンドウは例えば、対象ウィンドウである。第２ウィンドウは例えば、新ウィンドウである。
【００６４】
前述の各実施形態において、イベント定義情報が新ウィンドウの大きさを定義する場合、且つ新ウィンドウが対象フレームの表示の拡大を目的とする場合、新ウィンドウの大きさは対象フレームの大きさより大きいことが好ましい。これにより、対象フレームが小さく、対象アプリケーションを出力する領域が小さい場合に、対象アプリケーションの出力を新ウィンドウへ移動させることにより、対象アプリケーションを出力する領域を拡大することができる。また、イベント定義情報は、対象フレームの大きさに基づいて新ウィンドウの大きさを算出するアルゴリズムを定義しても良い。例えばこのアルゴリズムは、新ウィンドウの横の長さは対象フレームの横の長さのＷ倍に設定し、新ウィンドウの縦の長さは対象フレームの縦の長さのＨ倍に設定する（Ｗ，Ｈはそれぞれ１より大きい数）。また、イベント定義情報は、ドラッグ・アンド・ドロップの方向に基づいて新ウィンドウの位置を算出するアルゴリズムを定義しても良い。例えばこのアルゴリズムは、ドラッグ・アンド・ドロップの方向が右であれば、新ウィンドウは対象ウィンドウの右側に配置する。
【００６５】
また、第２特定操作により対象アプリケーションの入出力の割り当て先を新ウィンドウから対象フレームへ戻すことにより、簡単な操作で対象ウィンドウ上の複数のフレームを第１特定操作前の状態に戻すことができる。
【００６６】
情報処理プログラム６１はコンピュータ読み取り可能な記録媒体に格納されていても良い。このコンピュータ読み取り可能な記録媒体は、ディスク、半導体メモリを含む。その形態は、情報処理装置７１の内部に設けられた記憶装置、情報処理装置７１の外部に設けられた記憶装置、可搬型記録媒体、他のコンピュータの記憶装置を含む。例えば、可搬型記録媒体が情報処理プログラム６１を格納し、情報処理装置７１がこの可搬型記録媒体の読み取り装置を有する場合、情報処理装置７１はこの記録媒体から情報処理プログラム６１を読み取っても良い。あるいは、他のコンピュータが情報処理プログラム６１を格納し、情報処理装置７１が通信インタフェースを有し、通信インタフェースが他のコンピュータに接続されている場合、情報処理装置７１は他のコンピュータから情報処理プログラム６１を受信しても良い。
【００６７】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる、これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００６８】
１１  ＣＰＵ
１２  記憶装置
１３  周辺機器インタフェース
１４  ディスプレイ・アダプタ
２１  プラットフォーム
２２  ウィンドウ・マネージャ
２３  イベント・ハンドラ
３１  第１割り当て部
３３  第２割り当て部
３４  第３割り当て部
４１ａ，４１ｂ，４１ｃ，４１ｄ，４１ｅ  プラグイン
４２ａ，４２ｂ，４２ｃ，４２ｄ，４２ｅ  アプリケーション
５１ａ，５１ｂ  ウィンドウ
５２ａ，５２ｂ，５２ｃ，５２ｄ，５２ｅ  フレーム
５５ａ，５５ｂ，５６ａ，５６ｂ，５６ｃ，５６ｄ，５６ｅ  バー
５５ｂ，５６ａ，５６ｂ，５６ｃ，５６ｄ，５６ｅ  特定ボタン
５８  マウスカーソル
５９  画面
６１  情報処理プログラム
７１  情報処理装置
７２  入力装置
７３  表示装置
８１ａ，８１ｂ  ドラッグ・アンド・ドロップ
【図１】
0005306303.tif 000002
【図２】
0005306303.tif 000003
【図３】
0005306303.tif 000004
【図４】
0005306303.tif 000005
【図５】
0005306303.tif 000006
【図６】
0005306303.tif 000007
【図７】
0005306303.tif 000008
【図８】
0005306303.tif 000009
【図９】
0005306303.tif 000010
【図１０】
0005306303.tif 000011
【図１１】
0005306303.tif 000012
【図１２】
0005306303.tif 000013
【図１３】
0005306303.tif 000014