(57)【要約】      （修正有）【課題】  ウィンドウ内におけるフレーム再配を行うためのグラフィカル・ユーザ・インタフェースを含む情報処理装置、フレームの再配置方法、およびプログラムを提供すること。【解決手段】  位置座標データを処理するイベント・ハンドラ・モジュール２０と、ウィンドウ・オブジェクトに形成されるフレーム枠の端点の位置座標データを取得して当該端点が特定端点を中心とした回転が可能であることを判断する、フレーム枠回転可能判断モジュール５８と、回転が可能であると判断された前記端点に対し前記特定端点を中心とする座標変換処理を行ない、フレーム枠を変更する位置座標データを計算して表示させる予測ウィンドウ・オブジェクトを生成し、前記ウィンドウ・オブジェクトとは別に前記記憶装置に登録する、レイアウト・マネージャ４８と、を含む。フレーム枠の端点の位置座標データを取得し、特定端点を中心とした回転が可能であることを判断する。【選択図】  図２
2006189998.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサと、記憶装置と、前記プロセッサによる処理結果を表示させるための表示装置とを含む情報処理装置であって、前記情報処理装置は、
前記表示装置に表示されるウィンドウ・オブジェクト上の位置座標データを処理するイベント・ハンドラ・モジュールと、
前記ウィンドウ・オブジェクトに形成されるフレーム枠の端点の位置座標データを取得して当該端点が特定端点を中心として回転可能であることを判断する、フレーム枠回転可能判断モジュールと、
前記回転が可能であると判断された前記端点に対し前記特定端点を中心とする座標変換処理を行ない、フレーム枠を変更する位置座標データを計算して表示させる予測ウィンドウ・オブジェクトを生成し、前記ウィンドウ・オブジェクトとは別に前記記憶装置に登録する、レイアウト・マネージャと
を含む、情報処理装置。
【請求項２】
前記レイアウト・マネージャは、さらに表示ウィンドウ・オブジェクト選択手段を含み、前記フレーム枠回転可能判断モジュールからの指令に応答して前記表示ウィンドウ・オブジェクト選択手段に対して前記予測ウィンドウ・オブジェクトを指定して、前記表示装置に過渡的に表示させる請求項１に記載の情報処理装置。
【請求項３】
前記情報処理装置は、フレーム枠を形成する端点の端点特性データと、前記端点の回転可能方向を示すアイコン・イメージをリストする回転可能表示アイコン・リストとを含み、
前記フレーム枠回転可能判断モジュールは、前記イベント・ハンドラ・モジュールからのポインタ・アイコンの位置座標データが回転可能な前記端点から所定の範囲にある場合に前記端点特性データを参照して前記端点の回転可能方向および前記特定端点に対する相対位置を判断する手段を含む、請求項１に記載の情報処理装置。
【請求項４】
前記フレーム枠回転可能判断モジュールは、前記回転可能表示アイコン・リストから判断された回転可能方向および前記相対位置に対応する回転可能方向を示すアイコン・イメージを選択し、前記レイアウト・マネージャに通知する手段を含み、前記レイアウト・マネージャは、選択された前記アイコン・イメージで選択前の前記ポインタ・アイコンを置換する、請求項３に記載の情報処理装置。
【請求項５】
前記フレーム枠回転可能判断モジュールは、前記特定端点からの前記フレーム枠の各対向端点の位置ベクトルを計算する手段と、前記位置ベクトルに対して回転処理を実行して回転処理後に生成されるフレーム枠の方向ベクトルを計算する手段を含み、前記回転処理後のフレーム枠の方向ベクトルが前記特定端点を形成する他のフレーム枠の方向ベクトルと一致しない場合に、回転処理可能と判断する、請求項１の記載の情報処理装置。
【請求項６】
前記イベント・ハンドラ・モジュールは、前記ポインタ・アイコンの位置座標データから運動ベクトルを生成するベクトル生成手段を含み、前記フレーム枠回転可能判断モジュールは、前記運動ベクトルが前記端点の回転可能な方向のベクトル成分を含む場合に、前記予測ウィンドウ・オブジェクトを選択させる指令を前記レイアウト・マネージャに発行する、請求項１に記載の情報処理装置。
【請求項７】
プロセッサと、記憶装置と、前記プロセッサによる処理結果を表示させるための表示装置とを含む情報処理装置に対してフレーム枠を提供するグラフフィカル・ユーザ・インタフェースを提供する方法であって、前記方法は、前記情報処理装置に対して、
前記表示装置に表示されるウィンドウ・オブジェクト上の位置座標データを処理するステップと、
前記ウィンドウ・オブジェクトに形成されるフレーム枠の端点の位置座標データを取得して当該端点が特定端点を中心として回転可能であることを判断するステップと、
前記回転が可能であると判断された前記端点に対し前記特定端点を中心とする座標変換処理を行ない、フレーム枠を変更する位置座標データを計算して表示させる予測ウィンドウ・オブジェクトを生成して前記ウィンドウ・オブジェクトとは別に前記記憶装置に登録するステップと
を実行させる、方法。
【請求項８】
さらに前記位置座標データを処理するステップで生成された指令に応答して、前記予測ウィンドウ・オブジェクトを指定し、前記表示装置に過渡的に表示させるステップを実行させる、請求項７に記載の方法。
【請求項９】
前記情報処理装置に対し、フレーム枠を形成する端点の端点特性データと、前記端点の回転可能方向を示すアイコン・イメージをリストする回転可能表示アイコン・リストとを保持させるステップを実行させ、さらに、
前記判断するステップは、ポインタ・アイコンの位置座標データが回転可能な前記端点から所定の範囲にある場合に前記端点特性データを参照して前記端点の回転可能方向および前記特定端点に対する相対位置を判断するステップを含む、請求項７に記載の方法。
【請求項１０】
前記判断するステップは、前記回転可能表示アイコン・リストから判断された回転可能方向および前記相対位置に対応する回転可能方向を示すアイコン・イメージを選択し、選択された前記アイコン・イメージで選択前の前記ポインタ・アイコンを置換する指令を発行するステップを含む、請求項７に記載の方法。
【請求項１１】
前記判断するステップは、さらに、前前記特定端点からの前記フレーム枠の各対向端点の位置ベクトルを計算するステップと、
前記位置ベクトルに対して回転処理を実行して回転処理後に生成されるフレーム枠の方向ベクトルを計算するステップと、
前記回転処理後のフレーム枠の方向ベクトルが前記特定端点を形成する他のフレーム枠の方向ベクトルと一致するか否かを判断するステップと、
前記回転処理後のフレーム枠の方向ベクトルが前記特定端点を形成する他のフレーム枠の方向ベクトルと一致しない場合に、前記フレーム枠が回転処理可能と判断するステップを含む、請求項７に記載の方法。
【請求項１２】
プロセッサと、記憶装置と、前記プロセッサによる処理結果を表示させるための表示装置とを含む情報処理装置に対してフレーム枠を提供するグラフフィカル・ユーザ・インタフェースを提供するプログラムであって、前記プログラムは、前記情報処理装置に対して、
前記表示装置に表示されるウィンドウ・オブジェクト上の位置座標データを処理し、かつ運動ベクトルを生成するステップと、
前記ウィンドウ・オブジェクトに形成されるフレーム枠の端点の位置座標データを取得して当該端点が特定端点を中心として回転可能であることを判断するステップと、
前記回転が可能であると判断された前記端点に対し前記特定端点を中心とする座標変換処理を行ない、フレーム枠を変更する位置座標データを計算して表示させる予測ウィンドウ・オブジェクトを生成して前記ウィンドウ・オブジェクトとは別に前記記憶装置に登録するステップと、
前記運動ベクトルが前記端点の回転可能な方向のベクトル成分を含む場合に、登録された前記予測ウィンドウ・オブジェクトを選択させる指令を発行するステップと、
生成された前記指令に応答して、前記予測ウィンドウ・オブジェクトを前記表示装置に過渡的に表示させるステップと
を実行させる、プログラム。
【請求項１３】
前記情報処理装置に対して、フレーム枠を形成する端点の端点特性データと、前記端点の回転可能方向を示すアイコン・イメージをリストする回転可能表示アイコン・リストとを保持させるステップを実行させ、さらに、
前記判断するステップは、ポインタ・アイコンの位置座標データが回転可能な前記端点から所定の範囲にある場合に前記端点特性データを参照して前記端点の回転可能方向および前記特定端点に対する相対位置を判断するステップを含む、請求項１２に記載のプログラム。
【請求項１４】
前記判断するステップは、前記回転可能表示アイコン・リストから判断された回転可能方向および前記相対位置に対応する回転可能方向を示すアイコン・イメージを選択し、選択された前記アイコン・イメージで選択前の前記ポインタ・アイコンを置換させるステップを含む、請求項１２に記載のプログラム。
【請求項１５】
前記判断するステップは、さらに、前前記特定端点からの前記フレーム枠の各対向端点の位置ベクトルを計算するステップと、
前記位置ベクトルに対して回転処理を実行して回転処理後に生成されるフレーム枠の方向ベクトルを計算するステップと、
前記回転処理後のフレーム枠の方向ベクトルが前記特定端点を形成する他のフレーム枠の方向ベクトルと一致するか否かを判断するステップと、
前記回転処理後のフレーム枠の方向ベクトルが前記特定端点を形成する他のフレーム枠の方向ベクトルと一致しない場合に、前記フレーム枠が回転処理可能と判断するステップを含む、請求項１２に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ウィンドウ内に表示されたフレームの再配置技術に関し、より詳細には、ユーザに対して所定のフレーム内に表示されたテキストの視認性を損ねることなくフレームを再配置する、グラフィカル・ユーザ・インタフェースを含む情報処理装置、フレームの再配置方法、およびプログラムに関する。
【背景技術】
【０００２】
コンピュータの高速化・高機能化に伴ない、現在では１つのウィンドウ内に複数のフレームが形成され、各フレーム内に異なるデータまたはドキュメントを表示させながら作業が行われることが多い。図１０には、従来使用されているウィンドウ内のフレームの配置の変更方法を示す（非特許文献１）。従来では、図１０に示されるように、１つのウィンドウ１００内に、複数のフレーム１０２、１０４、１０６、１０８が形成され、それぞれのフレーム内には、異なるオブジェクトが割り当てられ、オブジェクトにより与えられた異なるデータまたはドキュメントが表示されている。従来では、図１０に示すように、ユーザがフレーム枠のサイズの変更を意図する場合には、ユーザは、マウスまたはタッチパッドなどの入力装置を介してフレーム境界線上にポインタ・カーソル１２０を配置させ、マウスをクリックしたまま移動させたい方向へとマウスを移動させる。
【０００３】
図１１は、図１０に示したウィンドウ１００内のフレームの割当てを変化させる場合の従来の方法を示す。ユーザがフレーム１０４を移動させたいフレーム枠にポインタ・カーソルが位置決めすると、マウスなどのポインタ手段からの指令に応答してポインタ・アイコンが移動可能を示す形状に変化する。ユーザがこのアイコンの変化を認識した後に、ウィンドウ上で所定の方向に移動する。このユーザ操作に応答して、ウィンドウ・マネージャは、対応するフレーム枠を生成させ、生成されたフレーム枠をポインタ・カーソルの移動と同一の方向へと移動させ、その内部にオブジェクトにより与えられるデータまたはドキュメントを表示させる。このとき、図１１に示されるように、移動されるフレーム１０４とフレーム枠を共有する隣接フレーム１０６は、その境界が、フレームの内側方向に移動する。このため、図１１に示すように、フレーム１０６は、フレーム１０４およびフレーム１０８の拡大に伴ってその面積が減少し、データやドキュメントの視認性がほとんど失われてしまう。一方では、ユーザが広げたいと希望するフレームは、本来ではフレーム１０４だけであるにもかかわらず、フレーム１０６まで拡大されているのが示される。
【０００４】
これを解決するために、例えば、各フレームの隣接するフレーム枠ごとに移動可能に設定することも可能である。しかしながら、ユーザにしてみればフレーム枠のうち、どこからどこまでが独立して移動させることができるのか、また一緒に移動してしまうのかについては、図１０、図１１にも示されるように、ポインタ・カーソルの形状を変更するだけではわかるものではなく、さらにユーザビリティを向上させる必要があった。
【０００５】
さらにマルチウィンドウ表示においてフレームの視認性を向上させる技術については、例えば特開平１０−１７１６２４号公報にも開示されるものの、ウィンドウ内に表示されたフレームの効率の高い再配列については何ら開示するものではない。
【非特許文献１】www.eclipse.org
【特許文献１】特開平１０−１７１６２４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
すなわち、これまで１つのウィンドウ内に表示された複数のフレームのうち特定のフレームのみを、他のフレームに対する影響を最小限にしつつ拡大させることが必要とされていた。さらに、ユーザに対してフレームの拡大方向をフレームを拡大する前に、ユーザに対して提示することを可能とする、グラフィカル・ユーザ・インタフェースが必要とされていた。
【課題を解決するための手段】
【０００７】
本発明は、上記従来技術の不都合に鑑みてなされたものであり、ウィンドウ内に形成された複数のフレームの枠のうち、指定したフレーム枠を回転させることにより、指定したフレームの大きさを変更する。このため、他のフレームの視認性に対する影響を最小限としてフレーム枠の再配置ができる。さらに、本発明では、ユーザがフレームのサイズ変更を確定させる前にフレームのサイズが変更された予測フレームを過渡的に提供する。このため、ユーザは、過渡的に表示される予測フレームを確認して、フレーム枠の領域変更の判断を行うことができ、また従来では、フレーム自体を広げなければ確認できなかったデータについてもそれまでのフレーム配置を変更することなく確認することを可能とする。
【０００８】
より詳細には、本発明では、ウィンドウ内に形成される複数のフレームの、ウィンドウ枠に接して形成されるフレーム枠を除き、２つまたは３つのフレームが集中して形成される特定端点を識別する。特定端点に接続するフレーム枠のうち、少なくとも１つを特定端点を中心として９０°回転させることにより、フレームのサイズを変更する。以下、このような回転移動を可能とする端点を、２自由度端として参照する。２自由度端は、より具体的には２つのフレーム枠が集中して形成される端点、または３つのフレーム枠が集中して形成されるフレームの端点をいう。すなわち、２自由度端とは、２つのフレーム枠のいずれか一方を９０°回転させても、フレーム枠により形成される象限が減少しない位相特性を有する端点を意味する。
【０００９】
２自由度端を中心とした回転により象限が減少しないことは、フレームの全数が保存される、すなわち、フレームごとに表示されるオブジェクトの数が保存されることを意味する。
【００１０】
９０°回転されたフレーム枠の２自由度端に対向する側の端点は、９０°回転された方向に存在する他のフレーム枠またはウィンドウ枠に接続する位置まで延長され、その結果、回転されたフレーム枠の回転前に画定されていたフレームのサイズが、延長された分だけ拡大できる。
【００１１】
本発明では、隣接するフレームおよびウィンドウ枠と、上述した２自由度端との位相的関係に基づいて、移動できる側の端点にポインタ・アイコンが接近した場合、それまでの例えば、矢印アイコンを、回転できる方向を示したアイコン・イメージに変更して、ユーザに対してフレーム枠が回転できることをグラフィカルに表示させる。
【００１２】
さらにユーザが、表示されたアイコン・イメージで指示される方向にマウスをドラッグすると、予測ウィンドウ・オブジェクトが表示される。ユーザは、予測ウィンドウ・オブジェクトが表示された状態でマウスなどのポインタ手段をドロップすると、予測ウィンドウ・オブジェクトがそれまでのウィンドウ・オブジェクトの代わりに恒常的に表示されるウィンドウ・オブジェクトに設定される。
【発明の効果】
【００１３】
本発明によれば、ユーザがフレームに表示されたデータやドキュメントの視認性が損なわれるのを最低限としつつ、フレームの操作性を向上でき、さらには、ユーザによるデータやドキュメントの利用性を向上することが可能な、グラフィカル・ユーザ・インタフェースを実装した情報処理装置、そのための方法およびプログラムを提供することができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明を、図面に示した実施の形態に基づいて説明するが、本発明は後述する実施の形態に限定されるものではない。
【００１５】
図１は、本発明の情報処理装置１０の機能構成を示したブロック図である。本発明の情報処理装置１０は、パーソナル・コンピュータ、またはワークステーションなどとして構成することができ、概ね、ＣＰＵ１２と、メイン・メモリ１４と、マウス、スタイラス・ペン、またはタッチパッドといったポインタ手段１６、またはキーボードからの信号をインタフェース１８を介して受け取り、位置情報を取得して、運動ベクトルを計算するイベント・ハンドラ・モジュール２０を含んでいる。さらに、情報処理装置１０は、表示装置２２に表示されるウィンドウの生成およびサイズを指定しウィンドウ内部にフレームを生成させる処理を実行するウィンドウ・マネージャ２４を含んでいる。ウィンドウ・マネージャ２４は、より詳細には、表示するべきウィンドウを選択するウィンドウ・オブジェクト選択手段３０とを含んでいる。ウィンドウ・オブジェクト選択手段３０は、ウィンドウ・オブジェクト２６および予測ウィンドウ・オブジェクトを格納する、バッファ・メモリなどの記憶装置２８から、予測ウィンドウ・オブジェクトまたはウィンドウ・オブジェクト２６を表のために選択している。
【００１６】
本発明のウィンドウ・オブジェクト２６は、ウィンドウの位置座標、フレーム枠の割当て、フレーム内に表示するオブジェクト指定などの情報がカプセル化されたオブジェクトとして構成されている。このウィンドウ・オブジェクト２６は、ディスプレイ・アダプタ３２を介して、表示装置２２のディスプレイ画面上に、所定の大きさのウィンドウ３４として表示される。また、記憶装置２８は、本発明においてフレーム割当ての異なる複数のウィンドウ・オブジェクトを格納しておくために使用され、ユーザの操作に応答して、ウィンドウ・オブジェクト選択手段３０により、表示するべきウィンドウ・オブジェクト２６を選択可能とする。
【００１７】
図２は、本発明の情報処理装置１０が実装するソフトウェア・モジュールの構成を、階層的に示した図である。図２に示すように、本発明の情報処理装置１０は、Ｗｉｎｄｏｗｓ（登録商標）、Ｍａｃ  ＯＳ（登録商標）、ＵＮＩＸ（登録商標）、ＬＩＮＵＸ（商標）などをオペレーティング・システム（ＯＳ）とするプラットホーム４０上に構成されており、表示装置に対してＭＳ−ＤＯＳ上でマルチウィンドウ環境を提供するＷｉｎｄｏｗｓ（登録商標）システム、またはＵＮＩＸ（登録商標）環境上でマルチウィンドウ環境を提供するＸ−Ｗｉｎｄｏｗｓシステムのアーキテクチャに基づいたウィンドウ・マネージャ２４とを含んでいる。ウィンドウ・マネージャ２４のさらにユーザに近い側には、ＧＵＩパーツ・マネージャ４４と、イベント・ハンドラ・モジュール２０と、レイアウト・マネージャ４８とが構成されている。ＧＵＩパーツ・マネージャ４４は、グラフィカル・ユーザ・インタフェース（ＧＵＩ）を、ユーザに対して提供するためのアイコン・イメージ・データなどを格納、または管理し、外部からの通知に応答してアイコン・イメージ・データ自体、または適切な記憶手段に格納されたアイコン・イメージ・データのアドレスを提供する。
【００１８】
イベント・ハンドラ・モジュール２０は、マウスやタッチパッドなどのポインタ手段のトラック・ボール、または指などの移動を判断すると共にボタン操作を通じたイベント信号を処理する。また、イベント・ハンドラ・モジュール２０は、ポインタ・アイコンの位置座標データの時間的変位をモニタして、ポインタ・アイコンの運動ベクトルを計算する。レイアウト・マネージャ４８は、ウィンドウおよびウィンドウ内に形成されるフレームの処理を実行しており、ウィンドウ・オブジェクトに対応するウィンドウ、フレームおよびデータ・オブジェクトの表示を可能とさせている。なお、レイアウト・マネージャ４８の機能を有するソフトウェアとしては、本発明では、Internet Explorer、Netscape（登録商標）、Mozillaなど、各種ブラウザ・ソフトウェアも含むことができる。
【００１９】
図２は、さらにＧＵＩパーツ・マネージャ４４、イベント・ハンドラ・モジュール２０と、レイアウト・マネージャ４８が含むデータおよび処理モジュールが示されている。より詳細には、ＧＵＩパーツ・マネージャ４４は、各種アイコン・イメージまたはアイコン・イメージ・データの登録アドレスなどを管理するデータを保有しており、本発明では、特にフレーム枠が回転可能であることを示す回転可能表示リスト５０を管理している。また、イベント・ハンドラ・モジュール２０は、本発明の特定の実施の形態では、マウス・イベント・ハンドラ５２がアクティブにされている。本発明では、マウス・イベント・ハンドラの他、タッチパッドやスタイラス・ペンなどからのイベントを処理するモジュールを含ませておくことができる。レイアウト・マネージャ４８は、後述するフレーム枠回転可能判断モジュール５８からの通知を受け取り、フレーム枠の再配置を行う処理を実行するフレーム領域再配置計算モジュール５４と、再計算されたフレーム領域に対応するフレームを生成させる、領域再配置実行モジュール５６とを含んでいる。
【００２０】
マウス・イベント・ハンドラ５２からの信号は、本発明のフレーム枠回転可能判断モジュール５８へと送られ、マウスが回転可能なフレーム枠の回転可能端点をポイントしているか否かを判断する。回転可能端点をポイントしていると判断した場合には、フレーム枠回転可能判断モジュール５８は、ＧＵＩパーツ・マネージャ４４から対応するアイコン・イメージを表示するデータをレイアウト・マネージャ４８に対して取得させ、回転可能な方向に対応するアイコン・イメージで、判断前の、例えば矢印アイコンといった表示アイコンを置換するように指令する。
【００２１】
また、フレーム枠回転可能判断モジュール５８は、マウス・イベント・ハンドラ５２からのポインタ・アイコンの運動ベクトルデータを受け取り、回転可能端点をポイントしたマウスの運動ベクトルの方向と端点の回転可能方向とを比較し、運動ベクトルが回転可能方向の成分を有している場合には、レイアウト・マネージャ４８に対して新たなフレーム枠に対応する予測ウィンドウ・オブジェクトを生成させるように指令して、生成された予測ウィンドウ・オブジェクトを過渡的に表示させる。以下、本発明において使用するフレーム枠回転可能判断モジュール５８の処理および使用するデータ構造について詳細に説明する。
【００２２】
Ａ．フレーム枠回転可能判断モジュールの処理
図３は、本発明のフレーム枠回転可能判断モジュールの行う処理のフローチャートである。図３に示した処理は、ステップＳ３００において、ポインタ・アイコンの移動を検出して処理を開始させる。ステップＳ３０２では、イベント・ハンドラからポインタ・アイコンの位置座標をイベント・ハンドラから取得する。ステップＳ３０４において、ポインタ・アイコンの位置座標がフレーム枠の端点座標に一致しているか否かを判断し、端点座標に一致していない場合（ｎｏ）には、ステップＳ３０６へと分岐して処理を終了する。なお、ステップＳ３０４の判断は、位置決め精度に対して一定の許容度を与えるため、回転可能端点座標を中心として所定ピクセルの形状のホット・スポットを設けておき、このホット・スポット内にマウス・ポインタの位置座標が含まれると判断したことに応答して行うことができる。
【００２３】
ステップＳ３０４の判断で、ポインタ・アイコンが端点または端点近傍に配置されていると判断された場合（ｙｅｓ）には、ステップＳ３０８で、当該端点が回転可能端点であるか否かを、端点特性リストをルックアップして、当該端点が回転可能であることを示す識別値またはフラグが設定されているかいないかに応答して判断する。ステップＳ３０８の判断で当該端点が回転可能な特性を有していないと判断された場合（ｎｏ）には、ステップＳ３１０で処理を終了させる。ステップＳ３０８でポインタ・アイコンがポイントする端点が回転に一致していると判断された場合（ｙｅｓ）には、ステップＳ３１２で回転可能表示アイコン・リストをルックアップして、回転可能方向に対応するアイコン・イメージをレイアウト・マネージャに対して取得させ、ＧＵＩ的にユーザに対して当該端点が回転可能であることを知らせる。
【００２４】
その後、ステップＳ３１４で、フレーム枠回転可能判断モジュールは、イベント・ハンドラからのポインタ・アイコンのドラッグ方向を示す運動ベクトルＶ（Ｖｘ、Ｖｙ）を取得し、端点特性リストをルックアップして運動ベクトルＶが回転可能端点の回転可能方向と一致する成分を有しているか否かを判断する。ステップＳ３１４の判断で、ドラッグ方向が回転可能方向と一致していないと判断される場合（ｎｏ）には、ステップＳ３１６で、判断している端点近傍にポインタ・アイコンが存在しなくなるまでアイコン・イメージを保持させる。一方、端点近傍からポインタ・アイコンが存在しなくなった時点でアイコン・イメージをデフォルト設定の「矢印アイコン」などへと戻し、ステップＳ３１８で処理を終了させる。
【００２５】
さらに図３を使用して説明すると、ステップＳ３１４の判断で、運動ベクトルＶの成分（Ｖｘ、Ｖｙ）が回転可能方向と一致する成分を有していると判断される場合（ｙｅｓ）には、ステップＳ３２０へと進んで領域再配置計算モジュールに対して当該回転可能端点を含むフレーム枠のデータと、回転可能方向とを通知して新たに生成されるフレーム枠データを計算させ、計算されたデータを領域再配置実行モジュールに渡して予測ウィンドウ・オブジェクトを生成させてバッファ・メモリなどの記憶装置に格納し、同時にそれまで表示されていたウィンドウ・オブジェクトに変えて予測ウィンドウ・オブジェクトを、マウスがオンされている間、過渡的に表示させる。さらに、ステップＳ３２２では、イベント・ハンドラからのマウスの信号により、マウスがドロップされたか否かを判断し、マウスがドロップされない場合（ｎｏ）には、ステップＳ３２４でマウス・ポインタのアイコン・イメージをデフォルトに戻し、ステップＳ３２６で処理を終了させる。
【００２６】
一方、ステップＳ３２２の判断で、マウスがドロップされたと判断された場合（ｙｅｓ）には、ステップＳ３２８で予測ウィンドウ・オブジェクトを表示ウィンドウのデータとして確定させ、以後もユーザに提供する。その後、ステップＳ３３０でアイコン・イメージをデフォルトに戻し、ステップＳ３３２で処理を終了させる。
【００２７】
Ｂ．端点特性リストの生成およびデータ構成
図４には本発明で使用する端点特性リストを生成するためのウィンドウ６０内に表示されたフレーム枠の実施の形態を示す。図４に示されるウィンドウ６０の内側の領域は、フレーム６２、フレーム６４、フレーム６６、フレーム６８の４つのフレームから構成されている。また、図４には、本発明において２自由度端として決定されるフレーム枠端点およびアイコン・イメージを変更させるホット・スポットとして定義されたホット・スポット領域７０を示す。図４に示されるフレーム枠の実施の形態では、フレーム枠の端点は、端点Ａ〜端点Ｆまで存在する。フレーム枠回転可能判断モジュールは、これらの端点のうち、本発明の２自由度端を、ＤおよびＦとして判断する。本発明における２自由度端の判断は、
（１）２つまたは３つのフレーム枠がピクセル座標を共有する端点であること、
（２）当該ピクセル座標がウィンドウ６０の内側領域を規定するピクセル座標と共有されないこと、を基準として決定される。
【００２８】
この２自由度端では、２自由度端を形成するフレーム枠の２つのうちのいずれか一方を適切な方向に９０°回転させても、形成される象限の数が保存されるためである。また、フレーム枠がウィンドウ枠と共有される場合には、フレームを構成させるための自由度として使用することができないためである。
【００２９】
上述のように２自由度端が決定されると、２自由度端を形成するフレーム枠をリストアップして、２自由度端に対向する側の端点を端点特性リストにおいて回転可能端点としてフラグなどを設定する。また、本発明の他の実施の形態では、フラグではなく、回転中心を示す位置座標などを記述することができ、フレーム枠回転可能判断モジュールは、該当するフィールドの値がnullであるか否かを判断して処理を進めることもできる。その後、さらに９０°回転させた場合に当該２自由度端を構成する他のフレーム枠と、２自由度端を中心として同一の方向ベクトルを有するか否かを判断して、回転可能方向を決定する。
【００３０】
さらに、本発明のフレーム枠回転可能判断モジュールは、判断している端点の２自由度端からの方向ベクトルを判断して、２自由度端から上側（Ｕ）、下側（Ｄ）、左（Ｌ）、右（Ｒ）を識別させる位置識別値を端点特性リストに追加する。位置識別値は、判断している端点の回転可能な方向を示すアイコン・イメージを選択するためにルックアップする。その後、フレーム枠回転可能判断モジュールは、位置識別値と反対方向に向かった方向の回転可能アイコン・イメージを選択して、当該端点または端点近傍のホット・スポットにポインタ・アイコンが位置決めされた場合にユーザに提示する。
【００３１】
図４を使用して、さらに本発明において回転可能方向を判断する処理をより具体的に説明する。上述した判断処理から、端点Ａは、２自由度端Ｆを構成するフレーム枠の端点を構成し、回転可能であることがマークされている。このとき端点Ａのピクセル座標を（ａ、Ｆ）とする。また、フレーム枠７２は、端点Ｂのピクセル座標（ｘ、Ｂ）から端点Ｆのピクセル座標（ｘ、Ｆ）により定義されている。したがって、フレーム枠７４は、ピクセル座標（ｘ、Ｆ）とピクセル座標（ａ、Ｆ）とにより定義される。ここで、フレーム枠の回転は２自由度端Ｆ（ｘ、Ｆ）を中心（０、０）として行われるので、端点Ａ′が端点Ｆを中心として９０°方向に回転して与えられるピクセルの（Ｘ、Ｙ）座標は、回転と並進の座標変換行列の積として下記座標変換行列で与えられる。
【００３２】
【数１】
2006189998.tif 000003
ここで、端点Ａを９０°反時計回りに回転させるものと仮定すると、回転により与えられる端点Ａ′の位置座標（Ｘ、Ｙ）は、（Ｘ、Ｙ）＝（０、ａ−ｘ）（ａ＞ｘ）として得られる。この場合、フレーム枠７２は、同一のｘ座標を有し、かつフレーム枠７２が端点Ｆを基準として延びるベクトルと同一の方向を有するので、フレーム枠７２とフレーム枠７４とは、フレーム枠７４を反時計回りの方向に回転させると、重なり合いが生じると判断される。
【００３３】
一方、時計回りの回転を生じさせた、端点Ａ”の位置座標は、（０、ｘ−ａ）となり、新たに生成される端点Ａ”を含むフレーム枠７６は、端点Ｆを中心とするフレーム枠７２の方向ベクトルとは一致せず反対向きとなるので、重なり合いが生じないと判断される。この判断により、本発明のフレーム枠回転可能判断モジュールは、端点特性リストに、対応する２自由度端を中心とした回転方向を、例えば時計回りを「−」、反時計回りを「＋」として登録して、後述する回転方向を示すアイコン・イメージの選択を可能とする。
【００３４】
図５は、図４に示したフレーム枠の実施の形態について得られた端点特性リストを示す。図５に示されるように、本発明において生成される端点特性リスト８０は、ウィンドウ内に生成された端点を示す端点識別フィールド８２と、当該端点を含むフレームを示すフレーム識別値フィールド８４とを含んでいる。さらに、図５に示した端点特性リスト８０は、各端点のウィンドウ内の位置座標フィールド８６と、回転可能であることを示すフラグとして使用され、回転中心データとしても使用される当該端点の回転中心となる回転可能識別フィールド８８と、対応する２自由度端から見た相対位置を示す相対位置識別フィールド９０と、回転方向を示す回転方向識別フィールド９２とがエントリされた構成とされている。なお、本発明の他の実施の形態では、図５に示した端点特性リストを陽に格納したリストを格納するのではなく、イベント・ハンドラからのポインタ・アイコンの位置座標データと運動ベクトルとを受け取って、オンザフライに端点特性リストの行に示されるデータを算出して、イベントごとにＧＵＩパーツ・マネージャおよびレイアウト・マネージャに指令を行うこともできる。
【００３５】
ユーザがポインタ・アイコンを操作し、各端点にポインタ・アイコンが一致した場合、またはポインタ・アイコンがホット・スポット内に侵入したことをイベント・ハンドラが識別すると、フレーム枠回転可能判断モジュールは、図５に示した端点特性リストをルックアップして回転可能識別フィールド８８に記入されるべきフラグまたは座標と等のフールド内に記述された値がnullであるか否かに基づいて判断する。または、各端点にポインタ・アイコンが一致した場合、またはポインタ・アイコンがホット・スポット内に侵入したことをイベント・ハンドラが識別すると、対応するデータを計算して、該当する端点が回転可能であるか否かを判断する。
【００３６】
図５に示した実施の形態では、回転可能識別フィールド８８内の値がnullでなければ、さらに相対位置識別フィールド９０と回転方向識別フィールド９２とをルックアップして、レイアウト・マネージャに通知する。レイアウト・マネージャは、回転可能表示アイコン・リストの対応するフィールドで指定される識別値で参照されるアイコン・イメージを、適切なメモリ領域から読出し、デフォルトのポインタ・アイコンと置換して表示させる。この処理によりユーザは、ポインタ・アイコンに近接する端点が、アイコン・イメージで指定される方向に回転でき、フレームを拡大することが可能であることを知ることができる。
【００３７】
図６には、本発明で使用される回転可能表示アイコン・リスト９４の実施の形態を示す。図６に示すように、本発明の回転可能表示アイコン・リスト９４は、相対位置識別フィールド９０と回転方向識別フィールド９２とがマトリックスとして構成され、そのエントリとしてアイコン・イメージを使用するためのデータがリストされている。図６中では、便宜上、アイコン・イメージ自体を表示して示しているが、実装的には、アイコン名称や、アイコン・イメージ・データを格納するメモリのアドレス範囲などを登録しておくことができる。また、アイコン・イメージは、相対位置識別フィールド９０で指定される相対位置とは反対側に回転可能であることを示す関係としてリストされていて、常に対応する２自由度端の方向に近づくように回転が行われることを指令する。
【００３８】
ユーザが、さらにマウスなどによりポインタ・アイコンを指示された方向にドラッグすると、本発明のフレーム枠回転可能判断モジュールは、フレーム枠の再配列を、フレーム領域再配置計算モジュールおよび領域再配置実行モジュールに指令する。フレーム再配置計算モジュールは、フレーム枠の再配置により影響を受けるフレームを決定し、新たに生成されるべきフレーム枠の端点データを計算して、領域再配置実行モジュールに渡し、ウィンドウ・データおよび再配置フレームを当該フレームにリンクされたオブジェクト情報とともに予測ウィンドウ・オブジェクトとして記憶装置に格納する。格納が完了した時点で、それまでのフレーム表示を行っていたウィンドウ・オブジェクトから、予測フレーム・オブジェクトのウィンドウ表示に切換え、再配置されたフレーム構成をユーザに対して過渡的に表示させる。この段階でユーザがマウスなどのポインタ装置をドロップすることにより、再配置が指令されると予測フレーム・オブジェクトに格納されたデータは、ディスプレイ・アダプタへと継続的に送られ、以後のウィンドウ表示として使用される。
【００３９】
図７は、本発明のフレーム領域再配置計算モジュールおよび領域再配置実行モジュールの実行する処理を示した概略図である。発明におけるフレーム領域再配置計算モジュールは、ユーザが回転可能端点を指定してドラッグすると、当該端点を含むフレーム枠を識別する。例えば図７で示した実施の形態で、ユーザが端点Ｃを選択したような場合には、フレーム６４と、フレーム６２とを識別する。その後、フレーム６４については、Java（登録商標）Appletなどのframe()、translate、およびresizeコマンドを起動して、それまでのフレーム６４が、例えば（１００、０）からのサイズが、（１００、１５０）であると仮定する。また、フレーム６２のサイズがウィンドウ原点（０、０）から見て（１００、３００）であると仮定する。この実施の形態の場合、フレーム領域再配置計算モジュールは、新たなフレーム６４として、ウィンドウ原点（０、０）にフレーム枠原点を移動させ、当該原点から見てフレーム枠端点を（２００、１５０）に割当て、フレーム６２に対しては、フレーム枠原点を（０、２００）に移動させ、新たなフレーム枠端点を（１００、３００）として算出させる。
【００４０】
この端点データを使用して領域再配置実行モジュールは、Java（登録商標）Appletなどでは、例えば、下記の処理を実行して、フレーム領域の再配置データを取得し、その内部にデータ・オブジェクトの表示を可能とする。
&Frame f = frame_64 ();
translate (0,0)
f.resize (200, 150);
frame_64.show;．．．
また、本発明をInternet Explorerといったブラウザ・ソフトウェアに対して適用する場合には、HTMLタグである＜frameset＞、＜/frameset＞タグを使用してフレーム枠の再配置を実行させることもできる。
【００４１】
図８は、本発明の情報処理装置の表示画面上に表示されたウィンドウに対して本発明のフレーム枠再配置方法を適用する場合の実施の形態を示した図である。図８には、ウィンドウ６０の内部に複数のフレーム６２、フレーム６４、フレーム６６、フレーム６８が形成されているのが示されている。図８に示した実施の形態では、ユーザが、端点Ｘ付近にポインタ・アイコンを移動させると、アイコン・イメージ９６が表示され、２自由度端点Ｇを中心として、右方向上側へと、矢線Ａで示されるフレーム枠の移動が可能であることが示されている。
【００４２】
その後、ユーザは、マウスをクリックしながら、アイコン・イメージで示される方向へとドラッグする。この段階で示される予測ウィンドウ・オブジェクトを図９に示す。なお、図９に示される予測ウィンドウ・オブジェクトは、ユーザがマウスをドロップしない場合には、マウスなどがクリックされている間だけ選択されているだけで、元のフレーム枠を含むウィンドウ・オブジェクトは、記憶装置の適切な箇所に保存されている。このため、図９に示した表示ウィンドウが必要でなければ、ユーザは、例えば元の位置にまでマウスを戻してマウスをドロップすれば図８のウィンドウ表示を再度得ることができる。一方、ユーザが図９のウィンドウ表示が継続的に必要な場合には、図９の予測フレーム・オブジェクトが表示された位置でマウスをドロップさせることにより、図８のウィンドウ・オブジェクトが廃棄され、以後、予測ウィンドウ・オブジェクトを新たな表示ウィンドウとして表示される。
【００４３】
本発明の方法を実行するためのプログラムは、種々の方法で記述することができ、例えばC++、Java（登録商標）、Java（登録商標）Applet、Java（登録商標）Beans、Java（登録商標）Scriptなどを使用して記述することができ、また種々のＯＳにおける、レイアウト・マネージャなどのウィンドウ管理ソフトウェアのモジュールとして実装することができる。さらに、本発明の方法は、Internet Explorer、Netscape（登録商標）、Mozillaなどのブラウザ・ソフトウェアのモジュールとしても使用することができる。
【産業上の利用可能性】
【００４４】
上述したように、本発明によれば、これまで１つのウィンドウ内に表示された複数のフレームのうち特定のフレームのみを、他のフレームに対する影響を最小限にしつつ拡大させることが必要とされていた。さらに、ユーザに対してフレームの拡大方向をフレームを拡大する前に示すことを可能とする、グラフィカル・ユーザ・インタフェースを提供することができ、ユーザに対するウィンドウ内のデータ表示性を著しく向上させた、情報処理装置、フレームの再配置方法、およびプログラムを提供することができる。
【図面の簡単な説明】
【００４５】
【図１】本発明の情報処理装置の機能構成を示したブロック図。
【図２】本発明の情報処理装置が実装するソフトウェア・モジュールの構成を、階層的に示した図。
【図３】本発明のフレーム枠回転可能判断モジュールの行う処理のフローチャート。
【図４】本発明で使用する端点特性リストを生成するためのウィンドウ内に表示されたフレーム枠の実施の形態を示した図。
【図５】図４に示したフレーム枠の実施の形態について得られた端点特性リストを示す
【図６】本発明で使用される回転可能表示アイコン・リストの実施の形態を示した図。
【図７】本発明のフレーム領域再配置計算モジュールおよび領域再配置実行モジュールの実行する処理を示した概略図。
【図８】本発明の情報処理装置の表示画面上に表示されたウィンドウに対して本発明のフレーム枠再配置方法を適用する場合の実施の形態を示した図。
【図９】本発明で与えられる予測ウィンドウ・オブジェクトを示した図。
【図１０】従来使用されているウィンドウ内のフレームの配置の変更を示した図。
【図１１】従来使用されているウィンドウ内のフレームの配置の変更を示した図。
【符号の説明】
【００４６】
１０…：情報処理装置：１２…ＣＰＵ：１４…メイン・メモリ：１６…ポインタ手段：１８…インタフェース：２０…イベント・ハンドラ・モジュール：２２…表示装置：２４…ウィンドウ・マネージャ：２６…ウィンドウ・オブジェクト：２８…記憶装置：３０…ウィンドウ・オブジェクト選択手段：３２…ディスプレイ・アダプタ：３４…ウィンドウ：４０…プラットホーム：４２…レイアウト・マネージャ：４４…ＧＵＩパーツ・マネージャ：４８…レイアウト・マネージャ：５０…回転可能表示アイコン・リスト：５２…マウス・イベント・ハンドラ：５４…領域再配置計算モジュール：５６…領域再配置実行モジュール：５８…フレーム枠回転可能判断モジュール：６０…：ウィンドウ：６２〜６８…フレーム：７０…ホット・スポット：７２…フレーム枠：７４…フレーム枠：８０…端点特性リスト
【図１】
2006189998.tif 000004
【図２】
2006189998.tif 000005
【図３】
2006189998.tif 000006
【図４】
2006189998.tif 000007
【図５】
2006189998.tif 000008
【図６】
2006189998.tif 000009
【図７】
2006189998.tif 000010
【図８】
2006189998.tif 000011
【図９】
2006189998.tif 000012
【図１０】
2006189998.tif 000013
【図１１】
2006189998.tif 000014
【手続補正書】
【提出日】平成17年4月8日(2005.4.8)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
さらにマルチウィンドウ表示においてフレームの視認性を向上させる技術については、例えば特開平１０−４００６１号公報にも開示されるものの、ウィンドウ内に表示されたフレームの効率の高い再配列については何ら開示するものではない。
【非特許文献１】www.eclipse.org
【特許文献１】特開平１０−４００６１号公報