説明

表示制御プログラム、表示制御方法及び情報処理装置

【課題】本発明は、任意に選択した複数のウィンドウの表示形態を同時に変更することができる表示制御プログラムを提供する。
【解決手段】予め表示部108に表示された複数のウィンドウから2つ以上のウィンドウを紐付けて、同一のグループとして記憶部103に記憶する。そして、ウィンドウの表示形態を変更する際に、ユーザにより任意のウィンドウが選択されると、グループ処理部221は、そのウィンドウが属するグループを抽出する。さらに、ユーザにより選択されたウィンドウの表示制御を指示されると、グループ処理部221は、抽出したグループに属するウィンドウの表示形態を変更する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表示装置に表示するウィンドウ画面の表示制御プログラム、表示制御方法及び情報処理装置に関する。
【背景技術】
【0002】
パーソナルコンピュータ(PC)等の情報処理装置の高性能化に伴い、Webブラウザで資料を見ながら文書作成ソフトで資料をまとめる。さらに、スケジュール管理ソフトでスケジュールを確認しながら、メールソフトでメールを送信する等、情報処理装置を使用するときに、複数のソフトウェアを同時に立ち上げることが多くなっている。
【0003】
このような場合には、複数のソフトウェアを同時に立ち上げるとデスクトップ上のウィンドウの数が多くなり、作業環境ごとに使用するウィンドウを選択するのが煩雑になる。そこで、1つのモニタ上で複数のデスクトップを切り替えて使い分ける仮想デスクトップ表示方法が提案されている(例えば、下記特許文献1)。
【0004】
この仮想デスクトップ表示方法では、任意に選択した複数のウィンドウを、1つの仮想デスクトップ内に表示するようにしている。これにより、複数の仮想デスクトップを設定することで、作業環境ごとに使用する複数のウィンドウを効率よく表示切替えすることができる。しかし、仮想デスクトップ表示方法では、異なる仮想デスクトップ内のウィンドウを同時に閲覧することができない。また、仮想デスクトップ表示方法では、ウィンドウの表示制御を同時に行なうことができない。このため、複数のウィンドウの表示制御をウィンドウごとに行なわなくてはならないので、ウィンドウ操作が煩雑になるという問題があった。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平5−313847号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明は、任意に選択した複数のウィンドウの表示形態を同時に変更することができる表示制御プログラムを提供するものである。
【課題を解決するための手段】
【0007】
上述した課題を解決し、目的を達成するため、複数のウィンドウを画面に表示する表示制御プログラムにおいて、コンピュータを、ユーザにより前記複数のウィンドウの中からウィンドウが選択された場合、その選択されたウィンドウが属するグループを、少なくとも2つのウィンドウを同一のグループとして記憶した記憶部から抽出するグループ抽出手段、前記グループ抽出手段により抽出されたグループに属するウィンドウの表示形態を制御する制御手段、として機能させることを特徴とする。
【発明の効果】
【0008】
本発明によれば、任意に選択した複数のウィンドウの表示形態を同時に変更することができる。
【図面の簡単な説明】
【0009】
【図1】実施形態の情報処理装置のハードウェア構成例を示す構成図である。
【図2】実施形態の情報処理装置のソフトウェア構成例を示す構成図である。
【図3】実施形態のグループ処理部の構成例を示す構成図である。
【図4】実施形態の算出部の構成例を示す構成図である。
【図5】実施形態の記憶部の構成図である。
【図6】実施形態のウィンドウ情報テーブルに記憶されている情報を示す図である。
【図7】実施形態の表示部の表示例を示す図である。
【図8】実施形態のグループテーブルに記憶されている情報を示す図である。
【図9】実施形態の同一グループに属するウィンドウの選択を示す図である。
【図10】実施形態の同一グループに属するウィンドウの移動を示す図である。
【図11】実施形態の同一グループに属するウィンドウの最大化を示す図である。
【図12】実施形態のアプリケーションの動作を示すフローチャートである。
【図13】実施形態のグループの設定方法を示すフローチャートである。
【図14】実施形態の相対移動制御を示すフローチャートである。
【図15】実施形態の最大化制御を示すフローチャートである。
【図16】実施形態の同一グループに属するウィンドウの他の最大化を示す図である。
【図17】実施形態の表示部の他の表示例を示す図である。
【図18】実施形態の優先度が記憶されたウィンドウ情報テーブルを示す図である。
【図19】実施形態の同一グループに属するウィンドウの優先度に基づく最大化を示す図である。
【図20】実施形態の同一グループに属するウィンドウの選択範囲に基づく最大化を示す図である。
【発明を実施するための形態】
【0010】
以下、図面に基づいて、本発明の実施形態を詳細に説明する。
図1は、実施形態の情報処理装置のハードウェア構成例を示す構成図である。下記の説明では、一例として、本発明の表示制御プログラムの制御要求をOS(Operating System)の管理下にある独立ウィンドウ(以下、特に断らない限りウィンドウとは、独立ウィンドウのこととする。)の表示処理部に出力する場合について述べる。なお、仮想デスクトップ等のアプリケーション内の表示処理部に、本発明の表示制御プログラムの制御要求を出力することも可能である。
【0011】
情報処理装置100は、CPU(Central Processing Unit)101、メモリ102、記憶部103、グラフィック処理部104、入力インターフェース105、通信部106、及びバス107を有し、表示部108及び入力部109と接続されている。
【0012】
CPU101は、バス107を介してメモリ102、記憶部103、グラフィック処理部104、入力インターフェース105、及び通信部106が接続されている。そして、CPU101は、情報処理装置100全体を制御している。
【0013】
メモリ102は、CPU101に実行させるOSのプログラムやアプリケーションのプログラムの少なくとも一部が一時的に格納される。また、メモリ102には、CPU101による処理に必要な各種データが格納される。このメモリ102には、例えば、RAM(Random Access Memory)等を採用することができる。
【0014】
記憶部103は、OSのプログラムやアプリケーションのプログラムが記憶されている。この記憶部103には、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)等を採用することができる。また、記憶部103には、CPU101による処理に必要な各種データが記憶されている。この各種データには、少なくとも、後述するウィンドウの位置、サイズ等の情報を含むウィンドウ情報テーブル501、及び、複数のウィンドウのグループ化情報を含むグループテーブル502を含む。
【0015】
グラフィック処理装置104は、表示部108が接続されており、CPU101からの命令に従って画像を表示部108に表示させる信号を出力する。なお、本発明では、後述するOS210の入出力部211から入力されるウィンドウの移動、サイズ変更、削除等を指示する表示処理信号に基づき、表示部108に表示させる信号を出力する。
【0016】
入力インターフェース105は、入力部109が接続されており、入力部109から入力された入力信号を、バス107を介してCPU101に出力する。
通信部106は、ネットワークに接続されており、ネットワークを介して図示しないWebサーバとの間でデータの送受信を行う。
【0017】
バス107は、信号の通信路であり、CPU101、メモリ102、記憶部103、グラフィック処理部104、インターフェース105、及び通信部106を接続している。
表示部108は、グラフィック処理部104から入力される信号に基づいて、アイコン、カーソル、メニュー、ウィンドウ、または文字や画像等の各種データを表示する。この表示部108は、例えば、CRT、TFT液晶ディスプレイ、プラズマディスプレイ等を採用することができる。
【0018】
入力部109は、ユーザの指示を入力信号として情報処理装置100に入力する装置である。この入力部109には、例えば、キーボードやマウス等を採用することができる。
【0019】
図2は、実施形態の情報処理装置のソフトウェア構成例を示す構成図である。
実施形態に係る情報処理装置のソフトウェア群200は、少なくともOS210及びウィンドウの表示制御プログラムであるアプリケーション220を含んでいる。そして、OS210及びアプリケーション220は、記憶部103に記憶されている。また、OS210及びアプリケーション220の各構成要素は、少なくとも一部がプログラムとしてメモリ102に一時的に格納され、CPU101によって実行される。なお、以下の説明では、記憶部103に記憶され、情報処理装置100のソフトウェア群200に含まれているソフトウェアについて、OS210及びアプリケーション220以外の文書作成ソフトやスケジュール管理ソフト等のことをソフトウェアという。
【0020】
OS210は、少なくとも入出力部211及び表示処理部212を含む。
入出力部211は、入力部109からの入力を受け付けるとともに、後述するアプリケーション220が含むグループ処理部221への出力を行なう。また、入出力部211は、表示処理部212から表示処理信号の入力を受け付けるとともに、表示処理信号をグラフィック処理部104へ出力する。
【0021】
表示処理部212は、後述するウィンドウ操作部222から入力されるウィンドウの移動、サイズ変更、削除等の表示制御を要求する信号(以下、制御要求信号という。)に基づいて、OS210の管理下にあるウィンドウの表示処理を実行する。そして、表示処理部212は、表示処理信号を入出力部211に出力する。
【0022】
アプリケーション220は、少なくともグループ処理部221、ウィンドウ操作部222及び算出部223を含む。そして、ユーザにより起動の指示が入力されたときに起動する、及び情報処理装置の起動に伴い起動する等、公知の技術で適宜選択的に起動されるものとする。
【0023】
図3は、実施形態のグループ処理部の構成例を示す構成図である。
グループ処理部221は、少なくとも図3に示すように、主制御部301、移動制御部302、表示制御部303を含む。そして、複数のウィンドウをグループ分けして記憶部103に記憶する。また、同一のグループのウィンドウの表示形態を同時に変更する。
【0024】
主制御部301は、入力部109でユーザが入力した入力信号を受信する。そして、主制御部301は、受信した入力信号の内容に基づいて、ウィンドウ情報テーブル501及びグループテーブル502への受信内容の登録及び削除、移動制御部302への入力信号の出力、表示制御部303への入力信号の出力等を行なう。また、主制御部301は、受信した入力信号の内容に基づいて、ウィンドウ情報テーブル501及びグループテーブル502の情報を抽出する。また、主制御部301は、ウィンドウ情報テーブル501及びグループテーブル502から抽出した情報を、移動制御部302及び表示制御部303へ出力する。また、公知の技術により、OS210から表示部108に表示されているウィンドウの座標を取得し、ウィンドウ情報テーブル501に登録する。
【0025】
移動制御部302は、主制御部301から入力された入力信号及びウィンドウ情報テーブル501及びグループテーブル502からの抽出情報に基づいて、複数のウィンドウを相対移動させる制御(以下、相対移動制御という。)を行なう。なお、相対移動制御において、後述する相対位置算出部401にウィンドウ情報テーブル501及びグループテーブル502からの抽出した情報を出力する。また、移動制御部302は、相対位置算出部で算出した相対位置を受信する。そして、移動制御部302は、ウィンドウ情報テーブル501及びグループテーブル502からの抽出情報と、相対位置算出部401で算出した相対位置の算出結果を移動位置算出部402に出力する。また、移動制御部302は、移動位置算出部402の移動位置の算出結果を示す移動位置信号をウィンドウ操作部222に出力する。
【0026】
表示制御部303は、主制御部301から入力された入力信号及びウィンドウ情報テーブル501及びグループテーブル502からの抽出情報に基づいて、複数のウィンドウを表示切替させる制御(以下、表示切替制御という。)を行なう。なお、表示切替制御において、後述するサイズ・比率算出部403に、ウィンドウ情報テーブル501及びグループテーブル502からの抽出情報を出力する。また、表示制御部303は、サイズ・比率算出部403で算出したサイズ及びサイズ比を受信する。そして、そのサイズを示す表示切替信号をウィンドウ操作部222に出力する。
【0027】
図2に示すウィンドウ操作部222は、主制御部301、移動制御部302及び表示制御部303から入力される各種信号に基づいて、表示処理部212に制御要求信号を出力する。
【0028】
図4は、実施形態の算出部の構成例を示す構成図である。
算出部223は、少なくとも図4に示すように、相対位置算出部401、移動位置算出部402及びサイズ・比率算出部403を含む。そして、移動制御部302及び表示制御部303から入力される要求に従い各種演算を行なう。
【0029】
相対位置算出部401は、移動制御部302から入力された、ウィンドウ情報テーブル501及びグループテーブル502からの抽出情報に基づいて、同一のグループに属する複数のウィンドウの相対位置を算出する。そして、算出した相対位置を移動制御部302に出力する。
【0030】
移動位置算出部402は、移動制御部302から入力された、ウィンドウ情報テーブル501及びグループテーブル502からの抽出情報及び同一のグループに属する複数のウィンドウの相対位置に基づいて、同一のグループに属する複数のウィンドウの移動位置を算出する。そして、算出した移動位置を移動制御部302に出力する。
【0031】
サイズ・比率算出部403は、表示制御部303から入力された、ウィンドウ情報テーブル501及びグループテーブル502からの抽出情報に基づいて、ウィンドウのサイズを算出する。また、算出したウィンドウのサイズに基づいて、同一のグループに属する複数のウィンドウのサイズ比を算出する。そして、算出したサイズ及びサイズ比を表示制御部303に出力する。
【0032】
次に図5〜7を用いて、記憶部103に記憶されている情報について説明する。
図5は、実施形態の記憶部の構成図である。図6は、実施形態のウィンドウ情報テーブルに記憶されている情報を示す図である。図7は、実施形態の表示部の表示例を示す図である。
図5に示すように、記憶部103は、少なくとも、ウィンドウ情報テーブル501及びグループテーブル502を含む。
【0033】
図6に示すウィンドウ情報テーブル501は、表示部108に表示されている複数のウィンドウの識別情報であるウィンドウIDを記憶している。図7を参照すると、4つのウィンドウが表示されているが、それぞれA〜DのウィンドウIDと対応付けられている。例えば、アプリケーション220が起動している状態において、入力部109によりソフトウェアの起動指示が入力された場合、主制御部301にもソフトウェアの起動を示す起動信号が入力される。そして、主制御部301は、ソフトウェアが起動した順にソフトウェアに対応するウィンドウIDを付与する。そして、主制御部301は、ウィンドウ情報テーブル501にウィンドウIDを登録する。また、入力部109により、他のソフトウェアの終了指示が入力された場合、主制御部301にもソフトウェアの終了を示す終了信号が入力される。そして、主制御部301は、終了したソフトウェアに対応するウィンドウIDをウィンドウ情報テーブル501から削除する。また、主制御部301は、そのウィンドウIDを対応する情報とともに、ウィンドウ情報テーブル501から削除する。なお、ウィンドウIDの付与及び削除については、上記に限らず適宜ユーザが選択した方法で付与すれば良い。
【0034】
さらに、図6に示すように、ウィンドウ情報テーブル501は、少なくとも、ウィンドウIDに対応付けて、表示部108に表示されている全てのウィンドウの左上座標、右上座標、サイズ及びサイズ比がウィンドウ情報として記憶されている。
【0035】
左上座標及び右下座標とは、例えば、アプリケーション220の起動にともない、主制御部301が取得要求を出力することで、OS210において表示処理部212の処理内容の確認をし、現在表示しているウィンドウの座標を取得したものである。
【0036】
また、左上座標及び右下座標は、図7に示すように、表示部108の左上の座標を(0,0)、右下の座標を(MX,MY)とし、それぞれ表示部108の画面のドットに対応させるように定義されている。すなわち、一例として、SXGA液晶(1280×1024ドット)の場合には、(MX,MY)=(1280,1024)となるように座標が定められる。そして、この座標に対応させて、例えば、ウィンドウIDがAのウィンドウ(以下、ウィンドウAという。なお、ウィンドウIDがB〜DのウィンドウをそれぞれウィンドウB、ウィンドウC及びウィンドウDという。)を参照すると、左上の座標を(AX1,AY1)、右下の座標を(AX2,AY2)として記憶している。また、左上座標及び右下座標の取得は、アプリケーション220の起動のタイミングに加えて、さらに、ユーザによりウィンドウの移動及びウィンドウのサイズの変更等の指示が入力され、ウィンドウの表示が変更されたときにも取得する。また、左上座標及び右下座標の取得は、アプリケーション220が起動された後に、新たにソフトウェアが起動されたときにも、表示されるウィンドウのウィンドウIDとともに取得する。なお、座標の取得及び座標の設定方法については、上記に限らず、適宜公知の技術を用いれば良い。
【0037】
また、サイズとは、表示部108に表示されているウィンドウのサイズである。そして、サイズは、ウィンドウIDに対応付けられて記憶されている。また、ウィンドウのサイズは、取得した左上座標及び右下座標を用いて下記式(1)により算出されている。
サイズ=(右下座標のX座標−左上座標のX座標)×(右下座標のY座標−左上座標のY座標) (1)
【0038】
すなわち、ウィンドウのサイズは、ウィンドウの表示領域の面積である。なお、具体例として説明した上記の座標の設定の場合には、ウィンドウの座標が表示画面のドットに対応しているので、ウィンドウのサイズはウィンドウ表示領域の画素数に対応する。図6、7を参照すると、例えば、ウィンドウAのサイズは、(AX2−AX1)×(AY2−AY1)となる。
なお、サイズは、ユーザの直接入力により、ウィンドウ情報テーブル501に登録されても良い。
【0039】
また、サイズ比とは、表示部108に表示されたウィンドウのサイズ比である。例えば、アプリケーション220の起動及びウィンドウのサイズの変更等を指示する入力信号が、主制御部301に入力されたときに、主制御部301は、表示部108に表示された全てのウィンドウのサイズを比較して、最も大きいサイズのウィンドウ(以下、基準ウィンドウという。)を抽出する。また、主制御部301は、抽出した基準ウィンドウと、ウィンドウ情報テーブル501から現在表示されている複数のウィンドウのサイズを取得し、表示制御部303に出力する。そして、表示制御部303からの要求により、サイズ・比率算出部403において、基準ウィンドウと、その他のウィンドウ(以下、比較ウィンドウという。)とのサイズの比率を下記式(2)により算出させた値である。
サイズ比=
(比較ウィンドウのサイズ)/(基準ウィンドウのサイズ) (2)
【0040】
また、式(2)は、同一グループに属するウィンドウのサイズ比を算出する場合にも適用することができる。その場合には、既に求められているサイズ比を利用して、比較ウィンドウのサイズに代えて、比較ウィンドウのサイズ比、基準ウィンドウのサイズに代えて、基準ウィンドウのサイズ比を用いても良い。
【0041】
ここで、図6に示すサイズ比を一例として説明する。図7を参照すると、表示部108に表示されているウィンドウの中で、ウィンドウAのサイズが最も大きいことがわかる。実際には、主制御部301において、図6のウィンドウ情報テーブル501に示すウィンドウのサイズを比較することで、ウィンドウAのサイズが最も大きいことを抽出している。そして、ウィンドウAを基準ウィンドウ(サイズ比=1。)として、ウィンドウB〜Dのサイズ比を式(2)により算出している。なお、一例として、基準ウィンドウを表示部108に表示されているウィンドウの中で最も大きいウィンドウとしたが、その他のウィンドウを基準ウィンドウとしても良い。また、同一グループに属するウィンドウのサイズ比を算出する場合には、同一グループのウィンドウのサイズを比較することで、最も大きいウィンドウを基準ウィンドウとすれば良い。そして、その他のウィンドウを従属ウィンドウとすることで、同一グループに属するウィンドウのサイズ比を算出することができる。
【0042】
次に、図8は、グループテーブル502に記憶されている情報を示す図である。図8を用いて、グループテーブル502に記憶されている情報を説明する。
図8に示すグループテーブル502は、少なくともグループID、ウィンドウID及びクリック順が記憶されている。そして、グループIDに対応付けて、同一のグループのウィンドウIDとクリック順を記憶している。なお、下記の説明において、GUIの選択、ウィンドウの選択及びウィンドウの移動は、ユーザがマウス等のポインティングデバイスを用いて、クリック及びドラッグ操作をすることによりなされるものとする。また、これに限らず、GUIの選択、ウィンドウの選択及びウィンドウの移動は、適宜キーボードまたはタッチパネル等を用いた公知の技術を用いて行なっても良い。
【0043】
グループテーブル502に記憶されているグループIDとは、ウィンドウをグループ分けした際の、それぞれのグループの識別情報である。グループIDの設定及び選択方法については後述する。
【0044】
グループテーブル502に記憶されているクリック順とは、同一グループに属するウィンドウごとに、最近クリックされたウィンドウの順番を示している。すなわち、最近選択されたウィンドウの順番を示している。例えば、このクリック順は、主制御部301にユーザによるウィンドウのクリックを示す入力信号が入力されるごとに、主制御部301により書き換えられる。また、図8に示すグループテーブル502のグループG1を参照すると、ウィンドウAの方がウィンドウDよりも最近クリックされたことがわかる。すなわち、ウィンドウAは、ウィンドウDよりも、ユーザが現在の作業に用いている可能性が高いと推測される。なお、ウィンドウの選択がキーボードまたはタッチパネルなどで行なわれた場合にも、クリック順として記憶すると良い。
【0045】
ここで、図7、8を用いて実施形態のウィンドウの選択方法、グループの設定方法及びグループ設定の解除方法について説明する。以下の説明では、アプリケーション220は、ユーザの指示により起動するものとする。なお、情報処理装置の起動に伴いアプリケーション220も起動されるように設定されている場合等、その他の公知の技術によりアプリケーション220が起動された場合にも、以下の動作は同じである。
【0046】
ウィンドウの選択方法について説明する。
アプリケーション220は、ユーザにより起動されると同時に図7に示すGUI(Graphical User Interface)群701〜708を表示部108に表示する。そして、選択701をクリックしたことを示す入力信号が入力されると、主制御部301は、ウィンドウを選択することを認識する。さらに、ユーザがウィンドウをクリックした入力信号が入力されると、主制御部301は、クリックしたウィンドウが選択されたと認識する。なお、図8に示すグループテーブルを参照すると、ユーザが選択701をクリックした後に、ウィンドウAをクリックした場合には、グループG1及びグループG2が同時に選択されることになる。この場合には、キーボードのTAB(Tablater)キー等からの入力信号が入力されることで、主制御部301は、グループG1及びグループG2の選択を順に切替えるようにしても良い。また、選択されているグループをユーザに通知する方法として、選択されているグループを順にハイライト表示すると良い。これにより、複数のグループに属しているウィンドウを選択した場合でも、特定のグループを選択することができる。
【0047】
次に、ウィンドウのグループ設定方法について説明する。
まず、アプリケーション220は、ユーザにより起動されると同時に図7に示すGUI群701〜708を表示部108に表示する。そして、登録706がクリックされたことを示す入力信号が入力されると、主制御部301はグループの設定を行なうと認識する。さらに、選択701をクリックしたことを示す入力信号が入力されると、主制御部301は、ウィンドウを選択することを認識する。そして、ウィンドウがクリックされたことを示す入力信号が入力されると主制御部301は、クリックされたウィンドウが選択されたと認識する。そして、主制御部301は、選択されたと認識したウィンドウのウィンドウIDを一時的に保持する。さらに、再び登録706がクリックされたことを示す入力信号が主制御部301に入力されると、主制御部301は、新たなグループIDをグループテーブル502に付与する。そして、主制御部301は、選択した複数のウィンドウのウィンドウIDを付与したグループIDと対応付けてグループテーブル502に登録する。
【0048】
さらに、グループの設定方法を明確にするために、ユーザの操作の一例として、図8に示すグループG1を設定する場合について説明する。グループG1を設定するには、登録706をクリックし、選択701をクリックし、続いてウィンドウA及びウィンドウDをクリックする。その後、登録706をクリックすることで、グループG1にウィンドウA及びウィンドウDが設定され、ウィンドウA及びウィンドウDが同一グループとして認識されるようになる。
【0049】
次に、グループ設定の解除方法について説明する。
アプリケーション220は、起動されると同時に図7に示すGUI群701〜708を表示部108に表示する。そして、解除707をクリックしたことを示す入力信号が主制御部301に入力されると、主制御部301は、グループ設定の解除をすることを認識する。そして、選択701をクリックしたことを示す入力信号が入力されると、主制御部301は、ウィンドウを選択することを認識する。そして、ウィンドウがクリックされたことを示す入力信号が入力されると、主制御部301は、そのウィンドウを選択したと認識する。そして、主制御部301は、選択されたウィンドウのウィンドウIDと同じウィンドウIDが登録されているグループをグループテーブル502に照合し、選択されたウィンドウの属するグループを抽出する。そして、再び解除707がクリックされると、解除処理を指示する入力信号が主制御部301に入力される。これにより、主制御部301は、選択されたグループをグループテーブル502から消去する。
【0050】
さらに、グループ設定の解除方法を明確にするために、ユーザの操作の一例として、図8に示すグループG1を解除する場合について説明する。グループG1を解除する場合には、解除707をクリックし、選択701をクリックし、続いてウィンドウDをクリックする。これにより、グループG1が選択された状態になる。この状態で、再び解除707をクリックすることで、グループG1の設定が解除される。
【0051】
また、ウィンドウのグループの設定方法及びグループ設定の解除方法の他の例を、図8のグループテーブル502に記憶されているグループG1を例として説明する。
この設定方法では、T表示705がユーザによりクリックされたことを示す入力信号が入力されたときに、主制御部301は、ウィンドウ情報テーブル501及びグループテーブル502を記憶部103から取得し、その情報を表示制御部303に出力する。これにより、ウィンドウ情報テーブル501及びグループテーブル502を表示部108に表示する。これ以外のアプリケーション220の動作は上記の例と同じである。ユーザの操作方法については、変更があるので下記に説明する。
【0052】
このグループの設定方法のユーザの操作例としては、マウス等のポインティングデバイスを用いて、図7に示すT表示705をクリックする。これにより、図8に示すグループテーブル502が表示部108に表示される。そして、グループテーブル502のグループIDの項目にあるG1をクリックすることで、グループG1が選択される。その後、図7に示すウィンドウA及びウィンドウDを順にクリックする。そして、登録706をクリックする。これにより、同一のグループに属するウィンドウとして、ウィンドウA及びウィンドウDがグループG1に設定される。
【0053】
また、グループ設定を解除する場合には、図7に示すT表示705をクリックする。これにより、図8に示すグループテーブル502が表示部108に表示される。そして、グループIDの項目にあるG1をクリックすることで、グループG1が選択される。その後、図7に示す解除707をクリックすることでグループG1の設定が解除される。
【0054】
また、このウィンドウのグループの設定の解除方法の場合には、図8に示すグループテーブル502が表示部108に表示された状態において、ウィンドウIDの項目にあるAをクリックする。これにより、主制御部301にウィンドウAの選択を示すウィンドウ選択信号が入力される。その後、図7に示す解除707がクリックされると、主制御部301は、グループG1からウィンドウAのみを解除するようにしても良い。
【0055】
なお、上記のグループ設定方法及び選択方法は一例であり、適宜考えられるグループ設定方法及び選択方法を適用すれば良い。また、GUI群701〜708を用いてウィンドウを操作する場合について説明したが、各種キーボード及びマウスの操作の組み合わせにより、GUI群701〜708のクリックと同じ動作をするようにアプリケーション220の設定をしても良い。これらの点は、下記の他の動作説明についても同様である。
【0056】
次に、実施形態に係る同一グループに属するウィンドウの移動について、図9、10を用いて説明する。図9は、同一グループに属するウィンドウの選択を示す図である。また、図10は、同一グループに属するウィンドウの移動を示す図である。
【0057】
図9(a)は、複数のソフトウェアが起動され、表示部108に複数のウィンドウが表示された状態を示す図である。一例として、図9(a)は、図6に示したウィンドウ情報に対応したウィンドウA〜Dを表している。また、下記の説明においては、予め図8のグループテーブル502のグループG1及びグループG2が設定されているものとする。
【0058】
図9(b)は、ウィンドウDがクリックされた状態を示す。
この表示切替におけるアプリケーション220の動作を説明する。
選択701がクリックされた後に、ウィンドウDがクリックされたことを示す入力信号が入力されると、主制御部301はグループテーブル502を参照する。そして、ウィンドウDの属するグループについてグループG1のウィンドウを抽出する。さらに、主制御部301は、この抽出結果であるウィンドウA及びウィンドウDのウィンドウIDを表示制御部303に出力する。そして、表示制御部303は、ウィンドウA及びウィンドウDが前面表示されるように表示切替をさせる表示切替信号をウィンドウ操作部202に出力する。これにより、ウィンドウA及びウィンドウDが、表示部108において前面表示される。
【0059】
図10(a)は、選択されたウィンドウA及びウィンドウDの相対位置を示す図である。図10(a)に示す矢印は、ウィンドウAの左上座標を基準として、ウィンドウDの左上座標がどこにあるのかを示す相対位置ベクトルRpである。具体的には、ウィンドウAの左上座標を(AX1,AY1)とし、ウィンドウDの左上座標を(DX1,DY1)とすると、相対位置ベクトルRpは、相対位置算出部401により、下記式(3)を用いて算出される。
Rp=(DX1−AX1,DY1−AY1) (3)
【0060】
なお、相対位置ベクトルRpを(X,Y)とすると、移動前のウィンドウAの左上座標(AX1,AY1)、移動前のウィンドウDの左上座標(DX1,DY1)の関係は、下記式(4)で示される。
(DX1,DY1)=(AX1+X,AY1+Y) (4)
【0061】
図10(b)は、グループG1が選択された状態において、ウィンドウAをユーザがドラッグして移動した後の状態を示す図である。この場合、選択されているウィンドウAと同じグループG1に属しているウィンドウDも、ウィンドウAに対して相対位置ベクトルRpを保つように移動している。
【0062】
下記に具体的な移動処理の内容を、グループG1が選択された状態を例として説明する。
移動702をクリックしたことを示す入力信号が入力されると、主制御部301は、ウィンドウの相対移動を行なうことを認識する。そして、ドラッグによりウィンドウAを移動したことを示す入力信号が入力されると、主制御部301は、移動後のウィンドウAの左上座標(A’X1,A’Y1)を取得する。さらに、主制御部301は、グループテーブル502を参照して、ウィンドウAの属するグループG1を抽出する。また、主制御部301は、グループG1に属するウィンドウAのウィンドウIDに対応付けて、ウィンドウAの左上座標(AX1,AY1)と、移動後のウィンドウAの左上座標(A’X1,A’Y1)とを移動制御部302に出力する。さらに、主制御部301は、グループG1に属するウィンドウDのウィンドウIDに対応付けて、ウィンドウDの左上座標(DX1,DY1)を移動制御部302に出力する。そして、移動制御部302は、ウィンドウA及びウィンドウDの左上座標を相対位置算出部401に出力する。そして、ウィンドウA及びウィンドウDの左上座標が入力されると、相対位置算出部401は、式(3)を用いてウィンドウAとウィンドウDの相対位置ベクトルRp(X,Y)を算出する。そして、相対位置算出部401は、算出した相対位置ベクトルRp(X,Y)を移動制御部302に出力する。さらに、移動制御部302は、算出された相対位置ベクトルRp(X,Y)と、移動後のウィンドウAの左上座標(A’X1,A’Y1)とを移動位置算出部402に出力する。相対位置ベクトルRp(X,Y)と、移動後のウィンドAの左上座標(A’X1,A’Y1)が入力されると、移動位置算出部402は、下記式(5)により、移動後のウィンドウDの左上座標(D’X1,D’Y1)を算出する。
(D’X1,D’Y1)=(A’X1+X,A’Y1+Y) (5)
【0063】
すなわち、移動位置算出部402は、移動後のウィンドウAの左上座標(A’X1,A’Y1)に、相対位置ベクトルRp(X,Y)を加えることにより、移動後のウィンドウDの左上座標(D’X1,D’Y1)を算出している。そして、移動位置算出部402は、算出結果を移動制御部302に出力する。
【0064】
その後、移動制御部302は、移動位置算出部402より入力された移動後のウィンドウDの左上座標(D’X1,D’Y1)と、移動後のウィンドウAの左上座標(A’X1,A’Y1)とを移動位置として、その移動位置にウィンドウAとウィンドウDを移動することを指示する移動位置信号をウィンドウ操作部222に出力する。そして、ウィンドウ操作部222は、移動位置信号が入力されると、ウィンドウAの左上座標(A’X1,A’Y1)が示す位置にウィンドウAを移動させ、かつ、ウィンドウDの左上座標(D’X1,D’Y1)が示す位置にウィンドウDを移動させるための制御要求信号を出力する。
【0065】
なお、右下座標においても、上記の処理を行うことで、移動後の座標を算出することができる。ただし、ウィンドウのサイズの変更がない場合には、ウィンドウの左上座標のみがわかればウィンドウを指定の位置に表示することができるので必要に応じて算出すればよい。また、右下座標と左上座標との相対位置ベクトルを算出しておき、移動後の左上座標に加算することにより移動後の右下座標を算出しても良い。
【0066】
以上の処理により、表示部108に表示されたグループG1に属するウィンドウA及びウィンドウDを相対位置を維持しながら同時に移動させる表示形態の変更処理を行っている。なお、グループG1以外のグループにおいても、上記の処理を適用することができる。
【0067】
次に、実施形態に係る同一グループに属するウィンドウの最大化について、図11を用いて説明する。図11は、同一グループに属するウィンドウの最大化を示す図である。なお、以下最大化とは、同一グループに属するウィンドウで、表示部108の画面全体を分割して表示することを言う。
【0068】
図11(a)は、複数のソフトウェアが起動され、表示部108に複数のウィンドウが表示された状態を表す図である。一例として、図11(a)は、図6に示したウィンドウ情報テーブル501に対応したウィンドウA〜Dを表している。
【0069】
図11(b)、(c)は、(a)の状態において、最大化703がクリックされ、グループG2が選択されたときの表示部108の表示例を示している。図11(b)は、グループG2に属するウィンドウのサイズ比に対応させ、縦に並べてグループG2のウィンドウを最大化した例である。また、図11(c)は、グループG2に属するウィンドウのサイズ比に対応させ、横に並べてグループG2のウィンドウを最大化した例である。
【0070】
下記に具体的な最大化処理内容について、グループG2を選択した場合を例として説明する。また、下記の説明において、ウィンドウA〜Dは、図7に示すウィンドウ情報テーブル501に対応する表示形態を有し、さらに、予め図8のグループテーブル502のグループG1及びグループG2が設定されているものとする。
【0071】
まず、アプリケーション220は、起動されると図7に示すGUI群701〜708を表示部108に表示する。そして、最大化703をクリックしたことを示す入力信号が入力されると、主制御部301は、ウィンドウの最大化を行なうことを認識する。さらに、選択701をクリックしたことを示す入力信号が入力されると、主制御部301は、ウィンドウを選択することを認識する。そして、ウィンドウCがクリックされたことを示す入力信号が入力されると、主制御部301は、ウィンドウCが選択されたと認識する。また、主制御部301は、ウィンドウCが属するグループのグループIDをグループテーブル502より抽出する。そして、グループG2を取得する。さらに、主制御部301は、グループテーブル502よりグループG2に属するウィンドウIDを取得する。そして、主制御部301は、取得したウィンドウA〜CのウィンドウIDを表示制御部303に出力する。また、ウィンドウA〜CのウィンドウIDを取得すると、主制御部301は、ウィンドウ情報テーブル501から、ウィンドウA〜Cのサイズ比を取得する。そして、主制御部301は、ウィンドウA〜Dのサイズ比を表示制御部303に出力する。ウィンドウA〜CのウィンドウIDとサイズ比が入力されると、表示制御部303は、ウィンドウA〜Cのサイズを比較して、一番大きいサイズのウィンドウAを基準ウィンドウとして設定する。また、その他のウィンドウB及びウィンドウCを従属ウィンドウとして設定する。そして、基準ウィンドウ及び従属ウィンドウの設定情報と、それぞれのウィンドウのサイズ比をサイズ・比率算出部403に出力する。さらに、基準ウィンドウ及び従属ウィンドウの設定情報と、それぞれのウィンドウのサイズ比が入力されると、サイズ・比率算出部403は、式(2)を用いて、グループG2内でのサイズ比を算出する。具体的には、ウィンドウAのサイズ比を1とすると、ウィンドウA:ウィンドウB:ウィンドウC=1:0.5:0.25と求まる。そして、サイズ・比率算出部403は、グループG2内でのウィンドウA〜Cのサイズ比を保つようにそれぞれのウィンドウの最大化後のサイズを算出する(算出方法については後述する。)。さらに、サイズ・比率算出部403は、算出したウィンドウA〜Cのウィンドウの最大化後のサイズを表示制御部303に出力する。
【0072】
ウィンドウA〜Cのサイズが入力されると、表示制御部303は、そのウィンドウA〜Cのサイズに基づいて、ウィンドウA〜Cを最大化させる表示切替信号をウィンドウ操作部222に出力する。そして、表示切替信号が入力されると、ウィンドウ操作部222は、表示処理部212に表示切替信号の内容を含む制御要求信号を出力する。
【0073】
以上の処理により、表示部108に表示されたグループG2に属するウィンドウA〜Cのサイズ比に応じて、全画面を画面分割させて表示させる処理を行っている。なお、グループG2以外のグループにおいても、上記の処理を適用することができる。
【0074】
図12は、実施形態のアプリケーション動作を示すフローチャートである。
アプリケーション220が起動されると、グループ処理部221に含まれる主制御部301において、少なくともウィンドウ情報テーブル501及びグループテーブル502に登録する情報を取得する(S1201)。そして、取得した情報を記憶部103に記憶する。
【0075】
具体的には、主制御部301は、OS210に座標位置の取得を要求することで、表示部108に表示されている複数のウィンドウそれぞれの左上座標及び右下座標を取得する。
【0076】
また、主制御部301は、表示部108に表示されているウィンドウそれぞれに、ウィンドウIDを付与する。そして、主制御部301は、ウィンドウIDに対応付けて取得した左上座標及び右下座標をウィンドウ情報テーブル501に登録する。
【0077】
さらに、主制御部301は、表示制御部303を介して各ウィンドウの左上座標及び右下座標をウィンドウIDに対応付けてサイズ・比率算出部403に出力し、それぞれのウィンドウのサイズ及びサイズ比を算出させる。そして、サイズ・比率算出部403は、算出したそれぞれのウィンドウのサイズ及びサイズ比を、表示制御部303を介して主制御部301に出力する。
【0078】
さらに、主制御部301は、入力されたそれぞれのウィンドウのサイズ及びサイズ比をウィンドウ情報テーブル501に登録する。
また、表示部108に表示されているウィンドウにおいて、以前に表示制御が行なわれていたウィンドウがある場合には、前回終了時のウィンドウ情報テーブル501及びグループテーブルを今回の情報として用いても良い。
【0079】
次に、主制御部301は、ウィンドウの表示制御を行なうか否かを判断する(S1202)。具体的には、図7に示すGUI群701〜707のいずれかをクリックしたことを示す入力信号が主制御部301に入力されると、ウィンドウの表示制御を行なうと判断している。
【0080】
S1202において、表示制御を行わない場合には、アプリケーション220を終了するか否かを判断する(S1203)。具体的には、主制御部301は、図7に示す終了708がクリックされたことを示す入力信号が入力されたか否かを判断する。そして、終了708がクリックされたことを示す入力信号が入力された場合、主制御部301は、アプリケーション220を終了する。また、終了708がクリックされたことを示す入力信号が入力されない場合には、S1202に戻る。すなわちGUI群701〜708のいずれかをクリックされるまで、主制御部301は、S1202及びS1203の判断を繰り返す。
【0081】
S1202において、表示制御を行なう場合には、クリックされたGUI群701〜707に基づいて、表示部108に表示するウィンドウの表示制御処理を行なう(S1204)。そして、S1202に戻る。
【0082】
以上の処理によりアプリケーション220の動作を制御している。なお、上記の操作例は一例であり、GUI群701〜708と同じ情報を入力することができれば、キーボード及びマウスに設定される、ショートカットキーを用いる等、他の入力方法を用いても良い。
【0083】
図13は、実施形態のグループの設定方法を示すフローチャートである。このグループの設定方法は、図12におけるS1204の表示制御処理のうちの一つである。また、下記の説明では、T表示705を用いてウィンドウ情報テーブル501及びグループテーブル502を表示して、グループを設定する場合について説明する。
【0084】
グループテーブルを表示する(S1301)。
具体的には、T表示705がクリックされたことを示す入力信号が入力されると、主制御部301は、記憶部103からウィンドウ情報テーブル501及びグループテーブル502を取得する。そして、主制御部301は、取得したウィンドウ情報テーブル501及びグループテーブル502と、テーブル表示の要求とを表示制御部303に出力する。ウィンドウ情報テーブル501及びグループテーブル502と、テーブル表示の要求が入力されると、表示制御部303は、ウィンドウ情報テーブル501及びグループテーブル502を表示させる表示切替信号をウィンドウ操作部222に出力する。そして、表示切替信号が入力されると、ウィンドウ操作部222は、表示処理部212に表示切替信号の内容を含む制御要求信号を出力する。
【0085】
次に、グループの選択を行なう。そして、グループの選択が行なわれない場合には、グループの選択が行なわれるまで待機する(S1302)。
具体的には、主制御部301は、表示部108に表示されたグループテーブル502のグループIDがクリックされたことを示す入力信号が入力されたか否かを判断する。そして、主制御部301は、グループIDがクリックされたことを示す入力信号の入力がない場合、S1302を繰り返す。主制御部301に、グループIDがクリックされたことを示す入力信号が入力された場合には、そのグループが選択されたと判断してS1303に進む。
【0086】
S1302において、グループIDがクリックされたことを示す入力信号が入力されると、主制御部301は、ウィンドウの選択を行なうか否かを判断する(S1303)。具体的には、主制御部301は、ウィンドウをクリックされたことを示す入力信号が入力されたか否かを判断している。
【0087】
S1303において、ウィンドウがクリックされたことを示す入力信号の入力がない場合、主制御部301は、グループ設定の解除をするか否かを判断する(S1304)。
具体的には、解除707がクリックされたことを示す入力信号が、主制御部301に入力されたか否かを判断している。そして、解除707がクリックされたことを示す入力信号の入力がない場合には、S1303に戻る。すなわち、主制御部301は、ウィンドウのクリックまたは解除707のクリックがあるまで、S1303及びS1304を繰り返している。
【0088】
そして、S1304において、解除707がクリックされたことを示す入力信号が入力された場合、主制御部301は、S1302で選択したグループIDに対応するグループ情報をグループ情報テーブル501から削除する(S1305)。
【0089】
そして、グループ設定が終了したか否かを判断する(S1306)。
具体的には、主制御部301は、終了708がクリックされたことを示す入力信号が入力されたか否かを判断している。そして、終了708がクリックされたことを示す入力信号が入力されると、主制御部301は、グループ設定を終了する。また、終了708がクリックされたことを示す入力信号が入力されない場合には、S1302に戻る。なお、終了708がクリックされたことを示す入力信号が入力されると、その他のステップにおいても直ちにグループ設定を終了するように構成しても良い。
【0090】
また、S1303において、ウィンドウがクリックされた入力信号が入力されると主制御部301は、クリックされたウィンドウをグループテーブル502に登録するのか、解除するのかを判断する(S1307)。
【0091】
具体的には、主制御部301は、登録706または解除707がクリックされたことを示す入力信号のどちらが入力されたかに基づいて、グループテーブル502への登録及び削除を判断している。
【0092】
S1307において、登録706がクリックされたことを示す入力信号が入力されると、主制御部301は、S1302で選択したグループIDに対応させて、S1303で選択したウィンドウIDをグループテーブル502に登録する(S1308)。そして、S1306に進む。
【0093】
S1307において、解除707がクリックされたことを示す入力信号が入力されると、主制御部301は、S1302で選択したグループIDに対応したグループに属している、S1303で選択したウィンドウIDをグループテーブル502から削除する(S1309)。そして、S1306に進む。
【0094】
以上の処理により、グループテーブル502を設定することで、異なるソフトウェアのウィンドウを紐付けて同一グループとして設定することができる。
なお、上記の操作例は一例であり、GUI群701〜708と同じ情報を入力することができれば、キーボード及びマウスに設定される、ショートカットキーを用いる等、他の入力方法を用いても良い。
【0095】
図14は、実施形態の相対移動制御を示すフローチャートである。この相対移動制御は、図12におけるS1204の表示制御処理のうちの一つである。
移動702をクリックしたことを示す入力信号が入力されると、主制御部301は、ウィンドウの相対移動制御を行なうことを認識する。そして、S1401に進む。
【0096】
主制御部301は、ウィンドウの選択が行なわれたか否かを判断する(S1401)。具体的には、選択701をクリックしたことを示す入力信号が入力されると、主制御部301は、ウィンドウを選択することを認識する。そして、ウィンドウがクリックされたことを示す入力信号が入力されると、主制御部301は、ウィンドウが選択されたことを認識する。S1401において、選択701をクリックしたことを示す入力信号の入力がない場合には、S1401を繰り返す。
【0097】
S1401において、ウィンドウがクリックされたことを示す入力信号が入力されると、主制御部301は、選択されたウィンドウが属するグループを抽出する(S1402)。具体的には、グループテーブル502を参照することにより、選択されたウィンドウのウィンドウIDが登録されているグループIDを抽出している。
【0098】
そして、主制御部301は、抽出したグループIDに基づいて、そのグループに属するウィンドウのウィンドウIDを、グループテーブル502から抽出する(S1403)。また、主制御部301は、抽出したグループIDとウィンドウIDを表示制御部303に出力する。
【0099】
次に、主制御部301は、S1403において抽出されたウィンドウIDが複数あるか否かを判断する(S1404)。
S1404において、抽出されたウィンドウIDが選択されたウィンドウのウィンドウIDのみであると判断した場合には、選択されたウィンドウのみを移動させる(S1405)。この場合には、公知の技術により、選択したウィンドウをドラッグにより移動すればよい。
【0100】
S1404において、抽出されたウィンドウIDが複数あった場合、主制御部301は、抽出されたウィンドウIDに基づいて、それらのウィンドウIDに対応するウィンドウ情報を、ウィンドウ情報テーブル501から取得する(S1406)。
【0101】
そして、主制御部301は、抽出したウィンドウIDに対応付けてそれぞれのウィンドウの左上座標及び右下座標を移動制御部302に出力する。ウィンドウIDに対応付けられた同一グループのウィンドウの左上座標及び右下座標が入力されると、移動制御部302は、その情報を相対位置算出部401に出力する。ウィンドウIDに対応付けられた同一グループのウィンドウの左上座標及び右下座標が入力されると、相対位置算出部401は、同一グループのウィンドウの相対位置を算出する(S1407)。
【0102】
そして、相対位置算出部401は、移動制御部302に算出した相対位置を出力する。これにより、表示制御部303は、主制御部301より入力されたウィンドウIDに対応するウィンドウを移動させる場合に、同一グループに属するウィンドウの相対位置を維持して移動する制御をすることができる。
【0103】
その後、選択したウィンドウをドラッグにより移動する信号が入力されると、主制御部301は、選択したウィンドウの移動位置を取得し、移動制御部302に出力する。そして、移動制御部302は、入力されたウィンドウの移動位置を基準として、同一グループのウィンドウを、S1407で算出した相対位置に移動することを指示する移動位置信号をウィンドウ操作部222に出力する。そして、移動位置信号が入力されると、ウィンドウ操作部222は、表示処理部212に移動位置信号の内容を含む制御要求信号を出力する(S1408)。
【0104】
以上の処理により、選択したウィンドウの位置を変更する際に、グループテーブル502から同一のグループに属するウィンドウを抽出するようにしたので、同一グループに属するウィンドウを同時に移動させることができる。
【0105】
なお、上記の操作例は一例であり、GUI群701〜708と同じ情報を入力することができれば、キーボード及びマウスに設定される、ショートカットキーを用いる等、他の入力方法を用いても良い。
【0106】
図15は、実施形態の最大化制御を示すフローチャートである。この最大化制御は、図12におけるS1204の表示制御処理のうちの一つである。
最大化703をクリックしたことを示す入力信号が入力されると、主制御部301は、ウィンドウの最大化制御を行なうことを認識する。そして、S1501に進む。
【0107】
主制御部301は、ウィンドウの選択が行なわれた否かを判断する(S1501)。具体的には、選択701をクリックしたことを示す入力信号が入力されると、主制御部301は、ウィンドウを選択することを認識する。そして、ウィンドウがクリックされたことを示す信号が入力されると、主制御部301は、ウィンドウが選択されたことを認識する。S1501において、ウィンドウがクリックされたことを示す信号の入力がない場合には、S1501を繰り返す。
【0108】
S1501において、ウィンドウがクリックされたことを示す信号が入力されると、主制御部301は、選択されたウィンドウが属するグループを抽出する(S1502)。具体的には、グループテーブル502を参照することにより、選択されたウィンドウのウィンドウIDが登録されているグループIDを抽出している。
【0109】
そして、主制御部301は、抽出したグループIDに基づいて、そのグループに属するウィンドウのウィンドウIDを、グループテーブル502から抽出する(S1503)。
次に、主制御部301は、S1503で抽出されたウィンドウIDが複数あるか否かを判断する(S1504)。
【0110】
S1504において、抽出されたウィンドウIDが選択されたウィンドウのウィンドウIDのみであると判断した場合には、選択されたウィンドウのみを最大化させる(S1505)。この場合には、公知の技術により、選択したウィンドウを最大化すればよい。
【0111】
S1504において、抽出されたウィンドウIDが複数あった場合、主制御部301は、抽出されたウィンドウIDに基づいて、それらのウィンドウIDに対応するウィンドウ情報を、ウィンドウ情報テーブル501から取得する(S1506)。
【0112】
また、主制御部301は、抽出したウィンドウIDに対応付けてそれぞれのウィンドウのサイズ比を表示制御部303に出力する。また、ウィンドウ情報テーブル501を参照することで、主制御部301は、同一グループに属するウィンドウを比較して、一番大きいサイズのウィンドウを基準ウィンドウとして設定する。そして、その他のウィンドウを従属ウィンドウとして設定する。さらに、基準ウィンドウと従属ウィンドウの設定情報を表示制御部303に出力する。そして、ウィンドウIDに対応付けられた同一グループのウィンドウのサイズ比と、基準ウィンドウ及び従属ウィンドウの設定情報(以下、サイズ比情報という。)が入力されると、表示制御部303は、そのサイズ比情報をサイズ・比率算出部403に出力する 。そして、サイズ・比率算出部403は、式(2)を用いて同一グループに属するウィンドウのサイズ比を算出する(S1507)。また、サイズ・比率算出部403は、算出した同一グループに属するウィンドウのサイズ比を表示制御部303に出力する。
【0113】
そして、表示制御部303は、同一グループに属する複数のウィンドウのサイズ比が入力されると、最大化後のそれぞれのウィンドウの表示位置を決定する(S1508)。具体的には、図11(b)を例とすると、同一グループに属する複数のウィンドウを縦に並べる処理をしている。この際に、表示制御部303は、上から順に大きいサイズ比のウィンドウが並ぶように決定している。図11(c)を例とすると、同一グループに属する複数のウィンドウを縦に並べる処理をしている。この場合には、表示制御部303は、左から順に大きいサイズ比のウィンドウが並ぶように決定している。
【0114】
また、図11(b)、(c)の表示位置は、適宜選択できる。一例として、入力部109からどちらの表示位置を選択したかを入力し、その選択結果を記憶部103に記憶しておくようにする。そして、最大化制御が始まったときに主制御部301は、その表示位置の選択情報を取得する。また、主制御部301は、取得した表示位置の選択情報を表示制御部303に出力すれば良い。これにより、表示制御部303は、選択された表示位置に最大化後のウィンドウを表示することができる。図11(b)、(c)の表示位置は一例であり、適宜その他の表示位置についても設定可能である。
【0115】
次に、表示制御部303は、入力された同一グループに属する複数のウィンドウのサイズ比に従い、表示部108に表示する同一グループに属するウィンドウのサイズを決定する(S1509)。具体的には、サイズ比により、表示部108の画面のドットを分割する処理をする。図11(b)では、表示部108の画面をドット単位で、同一グループに属する複数のウィンドウのサイズ比に従って縦方向に分割している。図11(c)では、表示部108の画面をドット単位で、同一グループに属する複数のウィンドウのサイズ比に従って横方向に分割している。なお、一例として、図6のウィンドウ情報テーブル501に登録されているサイズ比を用いると、図11(b)のサイズ比は、ウィンドウA:ウィンドウB:ウィンドウC=1:0.5:0.25である。従って、SXGA液晶(1280×1024ドット)の場合には、それぞれのウィンドウの最大化後の縦方向のドット数は、それぞれウィンドウA=1024ドット×1/1.75≒584ドット、ウィンドウB=1024ドット×0.5/1.75≒295ドット、ウィンドウC=1024ドット×0.25/1.75≒145ドットとなるように制御する。また、それぞれのウィンドウの最大化後の横のドット数は、1280ドットである。他の表示位置を選択した場合にも、公知の技術により、ウィンドウサイズを算出すれば良い。
【0116】
そして、表示制御部303は、算出されたそれぞれのウィンドウの表示位置及びサイズにより表示部108の画面の表示形態を変更させる表示切替信号をウィンドウ操作部222に出力する。また、表示切替信号が入力されると、ウィンドウ操作部222は、表示処理部212に表示切替信号の内容を含む制御要求信号を出力する(S1510)。
【0117】
以上の処理により、選択したウィンドウの位置を変更する際に、グループテーブル502から同一のグループに属するウィンドウを抽出するようにしたので、同一グループに属するウィンドウを同時に最大化させることができる。
【0118】
また、抽出するウィンドウの数に閾値を設定し、記憶部103に記憶しておいても良い。これにより、最大化制御が始まったときに主制御部301は、その閾値を取得する。そして、S1503において、主制御部301は、閾値以上の数のウィンドウを抽出しないようにする。これにより、同一グループに属するウィンドウが複数ある場合に、最大化後に表示するウィンドウの数を制限できる。したがって、同一グループに属するウィンドウが複数ある場合に、最大化後のそれぞれのウィンドウの表示サイズが小さくなり、ウィンドウ内の情報が見づらくなることを防止することができる。
【0119】
また、最大化するウィンドウ数に閾値を設ける場合において、図8に示したクリック順が新しい順にウィンドウを抽出しても良い。これにより、同一グループに閾値以上の数のウィンドウがある場合に、最近クリックしたウィンドウを優先的に最大化することができる。すなわち、最近クリックした使用中である可能性の高いウィンドウを優先的に抽出し、最大化することができる。
【0120】
また、S1508において、元のウィンドウサイズが一番大きいウィンドウを表示部108の画面半分に表示するように決定しても良い。そして、S1509において、その他の同一グループに属するウィンドウ間で表示部108の画面残り半分を分割し、最大化するように決定しても良い。図8のグループG2を選択した場合の例として、図16(a)に示すように、ウィンドウAが一番大きい場合には、図16(b)に示すように、ウィンドウAを画面左半分に表示する。そして、その他の同一グループのウィンドウは、残り半分の画面を分割して最大化する。これにより、ユーザが大きく表示しているウィンドウを、最大化後にさらに見やすくすることができる。
【0121】
また、優先度に基づいて画面の最大化を行うようにしてもよい。具体的には、図17に示すように、GUI群に優先度1701を設定するアイコンを追加する。そして、優先度1701がクリックされたことを示す入力信号が入力されると、主制御部301は、優先度を設定すると認識する。さらに、選択701をクリックしたことを示す入力信号が入力されると、主制御部301は、ウィンドウを選択することを認識する。そして、ウィンドウがクリックされて選択された順に、優先度を図18のウィンドウ情報テーブル1801に示すように登録する。これにより、S1508において、表示制御部303がウィンドウ情報テーブル1801を参照することで、元のサイズに係らず、優先度が一番高いウィンドウを表示部108の画面半分に表示するように決定する。そして、S1509において、表示制御部303は、その他の同一グループに属するウィンドウ間で画面残り半分を分割し、最大化するように決定する。図8のグループG2を選択した場合の例として、図19(a)に示すように、ウィンドウBのサイズの大きさは、ウィンドウAの次の大きさであるが、ウィンドウ情報テーブル1801に示される優先度が最も高いので、図19(b)に示すように、ウィンドウBを画面左半分に表示する。そして、その他の同一グループのウィンドウは、画面残り半分を分割して最大化する。これにより、文章作成ソフトやメールソフト等の比較的大きなサイズで使用することが望まれるソフトウェアのウィンドウを画面半分に大きく表示することができる。なお、優先度が一番高いウィンドウの最大化後のサイズは一例として画面半分としたが、所定のサイズとなるようにしても良い。その場合には、ウィンドウIDに対応付けて、ウィンドウ情報テーブル1801に所定のサイズ(図示しない)を示す情報を予め登録しておく。そして、S1508において、ウィンドウ情報テーブル1801を参照することで、表示制御部303はその所定のサイズを抽出し、最大化後のウィンドウのサイズを決定する。
【0122】
また、ユーザが指定した範囲に合わせて、同一グループのウィンドウの最大化を行うようにしてもよい。この場合には、S1508の前にユーザにより同一グループのウィンドウを最大化する範囲の指定を受け付ける処理を加える。図8のグループG2を選択した場合の例として説明する。まず、図20(a)の破線に示すようにユーザが最大化を行なう範囲の指定をドラッグ等により入力する。この指定範囲を示す入力信号が入力されると、主制御部301は、表示制御部303にその指定範囲を出力する。そして、表示制御部303は、指定範囲を一つの画面とみなして同一グループのウィンドウを最大化するように決定する。これにより、図20(b)に示すように、ユーザが指定した範囲で同一グループのウィンドウを最大化することができる。また、図20(b)のようにウィンドウDが別のグループの最大化により、背面に隠れてしまった場合には、ウィンドウDが背面にあることを示すGUIである背面D2001を表示しても良い。この場合には、背面D2001をクリックしたことを示す入力信号が入力されると、主制御部301は、ウィンドウDが選択されたことを認識することができる。また、図20(c)は、図20(b)の破線に示すようにユーザが最大化を行なう範囲の指定を入力し、背面D2001をクリックすることで選択し、ウィンドウDを最大化した一例である。これにより、図20(b)に示すように、表示部108の画面上に時計等の常に表示させておきたい情報を表示している場合に、最大化したウィンドウが重ならないようにすることができる。
【0123】
なお、上記の操作例は一例であり、GUI群701〜708、1701及び背面D2001と同じ情報を入力することができれば、キーボード及びマウスに設定される、ショートカットキーを用いる等、他の入力方法を用いても良い。
【0124】
また、同一グループに属するウィンドウの最小化を実行する場合には、最小化704をクリックされたことを示す入力信号が入力されると、主制御部301は、ウィンドウの最小化制御を行なうことを認識する。そして、S1501に進む。そして、主制御部301は、S1501〜S1503を実行する。さらに、主制御部301は、抽出された情報を表示制御部303に出力する。また、表示制御部303は、ウィンドウを最小化するための表示切替信号をウィンドウ操作部222に出力する制御を行なうようにすると良い。
【符号の説明】
【0125】
100 情報処理装置
101 CPU
102 メモリ
103 記憶部
104 グラフィック処理部
105 入力インターフェース
106 通信部
107 バス
108 表示部
109 入力部
200 ソフトウェア群
210 OS
211 入出力部
212 表示処理部
220 アプリケーション
221 グループ処理部
222 ウィンドウ操作部
223 算出部
301 主制御部
302 移動制御部
303 表示制御部
401 相対位置算出部
402 移動位置算出部
403 サイズ・比率算出部
501、1801 ウィンドウ情報テーブル
502 グループテーブル
701 選択
702 移動
703 最大化
704 最小化
705 T表示
706 登録
707 解除
708 終了
1701 優先度
2001 背面D

【特許請求の範囲】
【請求項1】
複数のウィンドウを画面に表示する表示制御プログラムにおいて、
コンピュータを、
ユーザにより前記複数のウィンドウの中からウィンドウが選択された場合、その選択されたウィンドウが属するグループを、少なくとも2つのウィンドウを同一のグループとして記憶した記憶部から抽出するグループ抽出手段、
前記グループ抽出手段により抽出されたグループに属するウィンドウの表示形態を制御する制御手段、
として機能させることを特徴とする表示制御プログラム。
【請求項2】
コンピュータを、さらに、
前記複数のウィンドウのサイズが記憶されたサイズ記憶部から、前記抽出されたグループに属するウィンドウのサイズを抽出するサイズ抽出手段、
前記抽出されたグループに属するウィンドウのサイズから、それぞれのウィンドウのサイズ比を算出するサイズ比算出手段、
ユーザにより前記選択されたウィンドウの最大化が指定された場合、前記抽出されたグループに属するウィンドウを、前記それぞれのサイズ比で分割して、前記画面の全体に表示するように、それぞれのウィンドウのサイズである第1のサイズを算出するウィンドウサイズ算出手段、
として機能させ、
前記制御手段は、前記抽出されたグループに属するウィンドウを、前記ウィンドウサイズ算出手段で算出されたそれぞれのウィンドウのサイズで表示させる、
ことを特徴とする請求項1に記載の表示制御プログラム。
【請求項3】
コンピュータを、さらに、
前記サイズ比算出手段で算出されたサイズ比の中で、最も大きいサイズ比のウィンドウである最大ウィンドウを抽出する最大ウィンドウ抽出手段、
として機能させ、
前記ウィンドウサイズ算出手段は、前記抽出されたグループに属するウィンドウから、前記最大ウィンドウを除いたウィンドウである分割表示ウィンドウを、前記それぞれのサイズ比で分割して、前記画面の半分に表示するように、それぞれの前記分割サイズウィンドウのサイズである第2のサイズを算出する、
前記制御手段は、前記最大ウィンドウを前記画面の半分のサイズで表示し、かつ、前記分割ウィンドウを、前記ウィンドウサイズ算出手段で算出された前記第2のサイズで、前記最大ウィンドウの表示領域と異なる領域に表示させる、
ことを特徴とする請求項2に記載の表示制御プログラム。
【請求項4】
コンピュータを、さらに、
前記複数のウィンドウの座標が記憶された座標記憶部から、前記抽出されたグループに属するウィンドウの座標を抽出する座標抽出手段、
前記抽出されたグループに属するウィンドウの各座標について、該座標間相互の相対的な位置を示す相対位置を算出する相対位置算出手段、
ユーザにより前記選択されたウィンドウの移動位置を指定された場合、前記選択されたウィンドウの移動位置を基準として、前記抽出されたグループに属するウィンドウの前記相対位置が同じになる移動位置を算出する移動位置算出手段、
として機能させ、
前記制御手段は、前記抽出されたグループに属するウィンドウを、前記移動位置算出手段で算出されたそれぞれの移動位置に移動する、
ことを特徴とする請求項1に記載の表示制御プログラム。
【請求項5】
複数のウィンドウを画面に表示する情報処理装置の表示制御方法において、
前記情報処理装置は、
ユーザにより前記複数のウィンドウの中からウィンドウが選択された場合、その選択されたウィンドウが属するグループを、少なくとも2つのウィンドウを同一のグループとして記憶した記憶部から抽出し、
前記記憶部から抽出されたグループに属するウィンドウの表示形態を制御する、
ことを特徴とする表示制御方法。
【請求項6】
記憶部を有する複数のウィンドウを画面に表示する情報処理装置において、
少なくとも2つのウィンドウを同一のグループとして記憶した記憶手段と、
ユーザにより前記複数のウィンドウの中からウィンドウが選択された場合、その選択されたウィンドウが属するグループを、前記記憶手段から抽出するグループ抽出手段と、
前記グループ抽出手段により抽出されたグループに属するウィンドウの表示形態を制御する制御手段と、
を備えることを特徴とする情報処理装置。

【図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

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate


【公開番号】特開2013−97461(P2013−97461A)
【公開日】平成25年5月20日(2013.5.20)
【国際特許分類】
【出願番号】特願2011−237819(P2011−237819)
【出願日】平成23年10月28日(2011.10.28)
【出願人】(000237639)富士通フロンテック株式会社 (667)
【Fターム(参考)】