図1は、本発明の種々の実施形態によるマルチビューブラウザを実施するコンピュータシステム100のハードウェア構成を示している。コンピュータシステム100は、プロセッサ102、メモリ103、記憶装置104、ネットワークアダプタ105、表示装置106、及び入力デバイス107を備え、ネットワークアダプタ105を介してインターネット108のようなネットワークに接続される。記憶装置104は、オペレーティングシステムを格納し、コンピュータシステム100の動作時には、プロセッサ102がオペレーティングシステムをメモリ103上に読み出して実行し、システム全体を制御する。入力デバイス107には、マウス、トラックボール、タッチパッドなどのポインティングデバイス、及びキーボードが使用される。システムの高速な動作を確保するために、メモリ103のような一次記憶装置には一般に、アクセス速度の速い半導体メモリが使用される。ただし、用途に見合った速度を有するものであれば、他の形態のメモリであってもよい。一方、記憶装置104のような二次記憶装置には、システムの電源を落としたときにも情報を維持することが可能なハードディスクのような磁気ディスクの他、光ディスク、大容量半導体メモリなどが一般に使用される。表示装置106には、CRTや液晶表示装置等が使用される。なお、記憶装置104、及び表示装置106は、図に点線で描かれているように、コンピュータシステム100の外部に置かれる場合もある。つまり、本発明のマルチビューブラウザは、大半の市販のパーソナルコンピュータ、及びワークステーション上でそのまま動作する。なお、本明細書に開示する実施形態は、オペレーティングシステムとしてマイクロソフト社のウィンドウズ(登録商標)オペレーティングシステムを使用しているが、当然ながら、当業者であれば本明細書の教示にしたがって本発明のマルチビューブラウザを他のオペレーティングシステムで動作するように修正することも可能であろう。
なお、コンピュータシステム100は、携帯情報端末(PDA)や携帯電話として実施される場合もある。その場合、ネットワーク108には、例えば、無線ネットワークが使用される。近年の携帯情報端末(PDA)、及び携帯電話は高機能化が進んでおり、それらは既に、上で述べたコンピュータシステム100と同様のハードウェア要件を備えており、ウェブブラウザを動作させるのに十分なだけの処理能力、及び記憶容量を備えている。
図2は、本発明の第1の実施形態によるマルチビューブラウザ200の画面構成を示している。図示のように、マルチビューブラウザ200は、4つの表示領域202と、各表示領域202の横に表示された対応する操作ボタン203と、4つの表示領域202を1つのグループとしてグループ1〜5を切り替えるためのグループボタン204とを備え、オペレーティングシステムが提供するウィンドウ201の中に表示される。操作ボタン203の上に表示されている数字(「1」〜「4」)の記されたボタンのようなものは、対応する表示領域202の番号を表示するためのインジケータ205である。
グループボタン204は、現在表示中の4つの表示領域202を別のグループのものに切り替えるために使用される。つまり、簡単に言えば、マルチビューブラウザ200は、全部で20個の表示領域202を備え、それらをグループボタン204により、4つづつ切り替えて同時に表示することができ、各表示領域に異なるウェブページを表示する機能を備える。ただし、グループの数、表示領域の数、及びボタンの表記等は単なる例であり、この例とは違っていてもよい。また、表示領域のグループ化は、多数のウェブページを見やすく表示するための方策であり、実施形態によっては、実施されない場合もある。
操作ボタン203は、「前」ボタン、「次」ボタン、「元」ボタン、及び「設定」ボタンを含む。例えば、右上の表示領域202を操作する場合、その領域に対応する右上の操作ボタン203が使用される。他の表示領域も同様に対応する操作ボタン203によって操作される。なお、操作ボタンの配置は、表示領域と操作ボタンの対応が視覚的に分かりやすいものであればよく、必ずしもこの配置でなくてもよい。「前」ボタンを押すと、対応する表示領域に表示されるウェブページは1つ前のページに切り替わる。同様に、「次」ボタンを押すと、表示されるウェブページは1つ後のページに切り替わる。「元」ボタンを押すと、表示されるウェブページは、その表示領域に対して事前に登録された特定のウェブページに切り替わる。つまり、「元」ボタンは、Internet Explorerにおける「ホーム」ボタンのような働きをする。「設定」ボタンを押すと、図3に示すような画面表示設定ダイアログ300が開く。ユーザはこの画面表示設定ダイアログ300から、各表示領域に対して登録されたウェブページのURLを変更することができる。
図3は、画面表示設定ダイアログ300を示している。「設定中のURL」の欄には、現在登録されているURLが表示され、「表示中のURL」の欄には、現在表示中のウェブページのURLが表示される。ユーザは、「表示中のURL」の欄に所望のURLを書き込み、「URL変更」ボタン301を押すことで、表示中のウェブページをそのURLのものに変更することができる。その後、ユーザは、「設定」ボタン302を押すことで、表示中のURLをブラウザに登録(記憶)することができる。あるいは、「お気に入りから」ボタン305を押すと、ダイアログブロック304が開く。ダイアログブロック304の中には、Internet Explorerのお気に入りに登録されているリンクがツリー状に表示される。ユーザは、その中から所望のリンクを選択することで、そのリンクが示すURLを表示中のURLの欄に書き込むことができる。その後、ユーザは、「設定」ボタン302を押すことで、表示中のURLをブラウザに登録することができる。後者の入力方法は、URLをタイプする必要がない上に、既存のブラウザに蓄積されたブックマークデータを活用できるため、非常に便利である。
画面表示設定ダイアログ300は、表示位置の変更にも使用される。ウェブページが表示領域202に収まらない場合、ユーザは、画面表示設定ダイアログ300上の上下左右を表わす三角形の「表示位置」ボタン303を操作し、ウェブページの表示位置を調節してから「設定」302ボタンを押すことで、各表示領域についてウェブページの表示位置をブラウザに登録することができる。ブラウザ200の起動時には、登録された表示位置にしたがって、各表示領域202にウェブページの一部、又は全部が表示される。表示位置は各領域について個別に登録されるため、ユーザは、従来のブラウザのようにウィンドウを開くたびに表示位置を調節する必要はない。ユーザにとって不要な情報(例えば広告など)を表示しないことも可能になる。
図4は、図2のマルチビューブラウザ200において、境界線401の位置を変更したところを示している。表示領域202間の境界線401は、マウスやタッチパッド等のポインティングデバイスでドラッグし、上下左右に自由に動かすことができる。境界線401の位置を動かしたとき、境界線の位置は自動的にブラウザに登録され、次回ブラウザを起動したときに、登録された境界線の位置が画面に反映される。境界線の位置はグループごとに個別に登録される。そのため、ユーザは、従来のブラウザにおいて行われていた新たなウィンドウを開くたびにサイズを調節するといった煩雑な操作を行う必要はない。
次に、図5、及び図6に示すフロー図を参照し、図2で説明したマルチビューブラウザ200の動作500について説明する。動作はブロック501で開始され、そこでプロセッサ102はブラウザ200を起動し、ブロック502へ進み、登録URLのリストを記憶装置104からメモリ103へ読み込む。なお、登録URLのリストは、ブラウザのインストール時に適当なURLのリスト(例えば、全てhttp://www.google.co.jp/))として記憶装置104にインストールされ、ブラウザ起動後に、自由に変更することができる。
次に、ブロック503において、プロセッサ102は、表示位置データを記憶装置104からメモリ103へ読み込む。表示位置データは、たとえば、ウェブページの左上を原点とするX,Y座標で表わされる。ただし、データの表現形式は必ずしもこの形式でなくてもよい。また、表示位置データも、ブラウザのインストール時に適当な表示位置データ(例えば、全てウェブページの左上を示すデータ)として記憶装置104にインストールされ、ブラウザ起動後に自由に変更することができる。
次に、ブロック504において、プロセッサ102は、境界線位置データを記憶装置104からメモリ103へ読み込む。境界線位置データは、例えば、ウィンドウの左上を原点とし、X座標、又はY座標で表わされる。ただし、データの表現形式は必ずしもこの形式でなくてもよい。なお、境界線位置データは、ブラウザの最初の起動時に適当な境界線位置データとして生成され(例えば、4つの表示領域のサイズが均等になるような境界線位置データをウィンドウサイズから算出する)、以後、自由に変更することができる。
次に、ブロック505において、プロセッサ102は、ブロック502で読み込まれた登録URLリストにしたがって、各表示領域202に表示すべきウェブページをネットワークアダプタ105を介してインターネット108上のウェブサイトからダウンロードする。ウェブページのダウンロードには、既存のブラウザと同じHTTPプロトコルが使用される。
次に、ブロック506において、プロセッサ102は、4つの表示領域202を1つのウィンドウに収めて表示し、ブロック505で取得されたウェブページを各表示領域202に表示する。ブラウザ起動時には、グループ1に属する4つの表示領域202が表示される。その際、まず境界線401が、ブロック504で読み込まれた境界線データにしたがって表示され、4つの表示領域202は、境界線401に合わせたサイズで表示され、境界線401により仕切られて表示される。また、取得されたウェブページは、ブロック503で読み込まれた表示位置データにしたがって、各表示領域202の中に表示される。
次に、ブロック507において、プロセッサ102は、グループボタン204が押されているか否かをチェックする。グループボタン(1〜5)が押されている場合、プロセッサ102は、表示すべき表示領域のグループを押されたグループボタンの番号のグループに変更した後、ブロック506へ戻り、表示を更新する。すなわち、表示される4つの表示領域202を押されたグループのものに切り替える。
次に、ブロック508において、プロセッサ102は、いずれかの境界線401がドラッグされたか否かをチェックする。境界線401がドラッグされた場合、プロセッサ102は、移動された境界線401の位置に応じて境界線位置データを更新した後、ブロック506へ戻り、表示を更新する。すなわち、境界線401を移動後の位置に再描画する。
次に、ブロック509において、プロセッサ102は、「前」、「次」、「元」ボタン203のいずれかが押されたか否かをチェックする。そして、「前」ボタンが押された場合、対応する表示領域202に表示すべきウェブページのURLを1つ前のURLに変更した後、ブロック505へ戻り、ウェブページを再取得する。同様に、「次」ボタンが押された場合、対応する表示領域202に表示すべきウェブページのURLを1つ後のURLに変更した後、ブロック505へ戻り、ウェブページを再取得する。「元」ボタンが押された場合、対応する表示領域202に表示すべきウェブページのURLをその表示領域に対して指定されたURLに変更した後、ブロック505へ戻り、ウェブページを再取得する。
次に、ブロック510において、プロセッサ102は、「設定」ボタン203が押されたか否かをチェックする。「設定」ボタン203が押された場合、図6のブロック601へ進み、画面表示設定ダイアログ300を開く。このダイアログの働きについては、後述する。
最後に、ブロック511において、プロセッサ102は、画面上部の「ファイル」メニューから「アプリケーションの終了」が選択されたか否かをチェックする。「アプリケーションの終了」が選択された場合、ブラウザ200を終了する。終了が選択されていなければ、ブロック507へ戻り、処理を継続する。
図6のブロック601において、画面表示設定ダイアログ300を表示した後、ブロック602において、プロセッサ102は、ダイアログ上の「URL変更」ボタン301が押されたか否かをチェックする。URL変更ボタン301が押された場合、現在表示中のウェブページのURLを「表示中のURL」の欄に記入されたURLに変更し、表示を更新した後、ブロック602へ戻り、処理を継続する。
ブロック603において、プロセッサ102は、「お気に入りから」ボタン305が押されたか否かをチェックする。「お気に入りから」ボタン305が押された場合、プロセッサ102は、選択ダイアログ304を表示し、Internet Explorerのお気に入りが記憶された所定のディレクトリから、お気に入りに登録されているリンクのリストをツリー状に表示する。そして、ユーザが特定のリンクを選択すると、「表示中のURL」の欄をそのリンクのURLに書き換え、表示領域のウェブページを更新した後、選択ダイアログ304を閉じて、ブロック602へ戻り、処理を継続する。
次に、ブロック604において、プロセッサ102は、画面表示設定ダイアログ300上の上下左右を示す「表示位置」ボタン303が押されたか否かをチェックする。いずれかの表示位置ボタン303が押された場合、プロセッサ102は、ウェブページの表示位置が押されたボタンの方向へ移動されるように表示位置データを書き換えた後、表示を更新し、ブロック602へ戻り、処理を継続する。
次に、ブロック605において、プロセッサ102は、「設定」ボタン302が押されたか否かをチェックする。設定ボタン302が押された場合、プロセッサ102は、現在ブラウザで使用されている登録URLリスト、及び表示位置データを記憶装置104に書き戻した後、画面表示設定ダイアログ300を閉じ、図5のブロック507の処理へ戻り、処理を継続する。一方、設定ボタン302が押されていなければ、ブロック602へ戻り、処理を継続する。
図7は、本発明の第1の実施形態によるマルチビューブラウザ200のプログラムの構成を示している。図示のように、マルチビューブラウザ200は、起動処理モジュール701、表示更新モジュール702、及びイベント処理モジュール703からなる。プログラムはメモリ103に読み込まれ、プロセッサ102によって実行される。つまり、図5、及び図6の説明の中で、「プロセッサ102」によって実行されている各処理は、それらのモジュール、又はプログラムによって実行されるものと言い換えることもできる。また、プログラムはコンピュータ読み取り可能媒体に記録された形で実施される場合もある。以下では、各モジュールの働きと、図5、及び図6の処理との関係について説明する。
起動処理モジュール701は、登録URLリスト、表示位置データ、及び境界線位置データ等を記憶装置104からメモリ103へ読み込む働きをする。すなわち、起動処理モジュール701は、図5のブロック502〜504の処理を受け持つ。表示更新モジュール702は、イベント処理モジュール703からの要求に応じて、ウェブページの取得や表示領域の更新を行う。すなわち、表示更新モジュール702は、図5のブロック505、及びブロック506の処理を受け持つ。イベント処理モジュール703は、入力デバイスによるボタン、メニュー、境界線などの操作を監視し、操作に応じて各種処理を行い、必要であれば、表示更新モジュール702に表示領域等の更新を要求する働きをする。すなわち、イベント処理モジュール703は、図5のブロック507〜511、及び図6の処理を受け持つ。
図8は、本発明の第2の実施形態によるマルチビューブラウザ800の起動画面801を示している。第1の実施形態と同様に、マルチビューブラウザ800も5つのグループを有し、起動画面801にはグループ1の3つの表示領域802が表示される。グループ1は、他のグループと違い、検索用に左側に大きな表示領域802(説明の都合上「検索領域803」とも呼ばれる)を有し、右側に上下に並ぶ2つの表示領域802を有する。一方、他のグループ2〜4は、第1の実施形態と同様に4つの表示領域802を有する。そして、第1の実施形態と同様に、グループ1〜5は、グループボタン807によって切り替えることができる。ただし、この場合も、グループの数、表示領域の数、及びボタンの表記等は単なる例であり、この例とは違っていてもよい。
検索領域803の左側には、上から順に、「検索1」、「検索2」、「検索3」、「検索展開」、「前」、「次」、「全消去」と書かれたボタンが並ぶ。検索サイト選択ボタン804(「検索1」、「検索2」、「検索3」)は、それぞれGoogle、Yahoo、MSNといった事前登録された所定の検索サイトに対応し、このボタンを押すと、対応する検索サイトのウェブページが検索領域803に表示される。
図9は、「検索1」ボタン804を押し、検索領域803にGoogleの画面を表示したところを示している。ユーザが何かキーワードを入力すると、図10のように、検索領域803に検索結果を示すURLのリンクが羅列される。ここで、ユーザが「検索展開」ボタン808を押すと、図11のように、検索結果1〜50のうちの上から2つのウェブページが、グループ1の右側の2つの表示領域802に表示される。各表示領域802の横に並ぶボタンの上に表示された、番号の付されたボタンのようなものは、検索結果の番号を示すインジケータ806である。なお、この例では、Googleの設定で、一度に表示する検索結果を50件に設定している。そして、それに続く検索結果3〜18が、グループ2〜5の表示領域に順に展開されて表示される。したがって、ユーザは、グループ1〜5を切り替えるだけで、最大で18個までのウェブページを自由に見ることができる。例えば、表示をグループ2に切り替えれば、図12のように検索結果1〜50のうちの検索結果3〜6のウェブページを見ることができる。このように、マルチビューブラウザ800は、「検索展開ボタン」808を押すだけで、羅列された多数の検索結果を示すリンクを一度にウェブページとして展開し、画面に表示できるため、ユーザは、従来のブラウザのように検索結果のリンクを一つ一つクリックし、その内容を確認する必要はない。
図12に示すように、各表示領域802の横には、上から順に、インジケータ806、「前」ボタン1202、「次」ボタン1203、「保護」ボタン1204、及び「消去」ボタン1205が並ぶ。
「消去」ボタン1205を押すと、対応する表示領域802に表示された検索結果は消去され、以降の番号の検索結果が繰り上げられて表示される。この機能は、興味のないウェブページを消去し、残りのウェブページだけを自動的に詰めて表示させることができるため、ウェブページの絞り込みに非常に便利である。
「保護」ボタン1204を押すと、対応する表示領域802に現在表示されている検索結果は、保護された検索結果として指定され、検索展開を再び行ったときでも画面上に残すことができるようになる。たとえば、図13は、グループ2の右上に表示された表示領域802において「保護」ボタン1204を押したところを示している。「保護」ボタン1204を押すと、その表示領域802に現在表示されている検索結果5を示すインジケータ806の上に「★」印が付加され、保護されていることが分かるようになる。この状態で表示をグループ1に切り替え、「検索展開」ボタン808を押すと、★印の付いた検索結果5は先頭の表示領域(すなわち、グループ1の右上の表示領域)に表示され、その後に続いて、検索結果1〜17がグループ1〜5にわたって表示されるようになる。なお、保護ボタン1204を押すと、ボタンの表示は「解除」に変わり、ユーザは、再度「保護」ボタン1204(「解除」ボタン)を押すことにより、検索結果5に指定された保護を解除することができる。
グループ1の検索領域802の横に表示される「全消去」ボタン805(図8)は、★印の付いた保護された検索結果も含めて、グループ1〜5の表示領域802に現在表示されているウェブページを全て消去するためのものである。
このように、本発明の第2の実施形態によるマルチビューブラウザ800は、検索結果のリストを一度にウェブページとして展開表示することができ、その中から必要の無いものを選択的に消去することができ、また、検索展開を再度行う際に選択された特定のウェブページを画面上に残しておくことができるため、従来のブラウザに比べて、無数に表示される検査結果の中から興味のあるウェブページをスクリーニングするのに非常に便利である。
図14は、本発明の第2の実施形態によるマルチビューブラウザ800の動作1400を示している。動作は、ブロック1401で開始され、ブロック1402へ進み、そこで、表示すべきグループの表示領域を同一ウィンドウに収めて表示する。起動時には、グループ1の表示領域、すなわち、3つの表示領域802(うち左側の1つは検索領域803)が表示される。次に、ブロック1403へ進み、プロセッサ102は、グループボタン807が押されたか否かをチェックする。いずれかのグループボタン807が押されていれば、プロセッサ102は、表示すべきグループを押されたボタンに対応するグループに変更した後、ブロック1402へ戻り、表示を更新する。すなわち、表示される表示領域を押されたグループのものに切り替える。
次に、ブロック1404において、プロセッサ102は、「検索サイト選択ボタン」804が押されたか否かをチェックする。いずれかの検索サイト選択ボタン804(「検索1」、「検索2」または「検索3」)が押されていれば、プロセッサ102は、検索領域803に表示すべきウェブページのURLを押されたボタンに対応する検索サイトのURLに変更した後、ブロック1402へ戻り、表示を更新する。すなわち、検索領域803に表示される検索サイトのウェブページを対応する検索サイトのものに切り替える。
次に、ブロック1405において、プロセッサ102は、「検索展開」ボタン808が押されたか否かをチェックする。「検索展開」ボタン808が押された場合、プロセッサ802は、検索領域803に検索結果としてリンクを羅列しているウェブページから検索結果を示すURLを抽出し、検索結果のウェブページをグループ1〜5の表示領域802に表示する。HTMLで記述されたウェブページには、検索結果以外のURLも含まれるため、検索結果を示すURLだけを抽出する必要がある。このURLの抽出は、当該ウェブページの中からまず、検索結果が記述されているブロックをブロックタグのクラス名に基づいて割り出し、さらに、切り出したブロックの中から検索結果のURLを示す文字列をアンカータグのクラス名に基づいて割り出すことによってなされる。多くの検索サイトは、タグのクラス名に検索結果であることを示す特有のクラス名を指定している。
次に、ブロック1406において、プロセッサ102は、「全消去」ボタン805が押されたか否かをチェックする。「全消去」ボタン805が押されていれば、プロセッサ102は、グループ1〜5の表示領域802にそれぞれ表示すべきウェブページのURLのリストからURLを全て削除した後、ブロック1402へ戻り、表示を更新する。すなわち、保護された検索結果を含めて、表示領域802に表示されたウェブページを全て一度に消去する。
ブロック1407において、プロセッサ102は、「前」ボタン1202が押されたか否かをチェックする。「前」ボタン1202が押されていれば、プロセッサ102は、対応する表示領域802に表示すべきウェブページのURLを1つ前のURLに変更した後、ブロック1402へ戻り、表示を更新する。すなわち、その表示領域802に表示されるウェブページを1つ前のものに変更する。
ブロック1408において、プロセッサ102は、「次」ボタン1203が押されたか否かをチェックする。「次」ボタン1203が押されていれば、プロセッサ102は、対
応する表示領域802に表示すべきウェブページのURLを1つ後のURLに変更した後、ブロック1402へ戻り、表示を更新する。すなわち、その表示領域802に表示されるウェブページを1つ後のものに変更する。
ブロック1409において、プロセッサ102は、「消去」ボタン1205が押されたか否かをチェックする。「消去」ボタン1205が押されていれば、プロセッサ102は、グループ1〜5の表示領域802にそれぞれ表示すべきウェブページのURLのリストの中から、押されたボタンに対応する表示領域802に現在表示されているウェブページのURLを削除した後、ブロック1402へ戻り、表示を更新する。すなわち、その表示領域802の後に続く表示領域802に表示されていたウェブページを、その表示領域802以降の表示領域802に繰り上げて順番に表示する。
ブロック1410において、プロセッサ102は、「保護」ボタン1204が押されたか否かをチェックする。「保護」ボタン1204が押されていれば、プロセッサ102は、対応する表示領域802に表示された検索結果のウェブページを保護された検索結果として指定した後、ブロック1402へ戻り、表示を更新する。なお、検索結果に対して保護が指定されると、ボタン1204上の文字は「保護」から「解除」へ変更される。したがって、ブロック1410において、検索結果に対して既に「保護」が指定されていた場合、すなわち、「解除」ボタン1204が押された場合、プロセッサ102は、その検索結果に対して指定された保護の指定を解除する。
ブロック1411において、プロセッサ102は、メニューから「アプリケーションの終了」が選択されているか否かを判定する。「アプリケーションの終了」が選択されている場合、ブロック1412でプログラムは終了する。選択されていなければ、処理はブロック1403へ戻り、継続される。
図15は、本発明の第2の実施形態によるマルチビューブラウザ800のプログラム構成を示している。マルチビューブラウザ800は、表示更新モジュール1501、及びイベント処理モジュール1502からなる。プログラムはメモリ103に読み込まれ、プロセッサ102によって実行される。つまり、図14に関する説明の中で、「プロセッサ102」によって実行されている各処理は、それらのモジュール、又はプログラムによって実行されるものと言い換えることもできる。また、プログラムはコンピュータ読み取り可能媒体に記憶された形で実施される場合もある。
表示更新モジュール1501は、イベント処理モジュール1502からの要求に応じて、ウェブページの取得や表示領域の更新を行う。すなわち、表示更新モジュール1501は、図14のブロック1402の処理を受け持つ。イベント処理モジュール1502は、入力デバイスによるボタン、メニューなどの操作を監視し、それに応じて各種処理を行い、必要であれば、表示更新モジュール1501に表示領域等の更新を要求する働きをする。すなわち、イベント処理モジュール1502は、図14のブロック1403〜1411の処理を受け持つ。
図16は、図2に示した本発明の第1の実施形態によるマルチビューブラウザ200の改良実施形態であるマルチビューブラウザ1600の画面構成を示している。図中、マルチビューブラウザ200と同じ機能を有する要素には同じ符号を付し、説明は省略する。この実施形態は、操作ボタン203の下に表示モード切替ボタン1601をさらに備え、グループボタン204の横に広告スペース1602をさらに備える。図16に示すように4つの表示領域202がウィンドウ内に同時に表示された状態(説明の都合上、以下「マルチビューモード」と呼ぶ)で、選択された表示領域202の横にある「拡大」と記された表示モード切替ボタン1601を押すと、図17に示すようにウィンドウ内の残りの表示領域202は隠され、選択された表示領域202(図17の例では、右上の表示領域202を選択している)だけがウィンドウ内一杯に表示され、表示モード切替ボタン1601上に表示される文字は「縮小」に切り替わる。一方、図17のように選択された表示領域202だけがウィンドウ内一杯に表示された状態(説明の都合上、以下「シングルビューモード」と呼ぶ)で、「縮小」と記された表示モード切替ボタン1601を押すと、図16に示すようなマルチビューモードに戻る。つまり、表示モード切替ボタン1601はトグルボタンとして機能する。
このように、表示モード切替ボタン1601によれば、ユーザは、マルチビューモードで多数のウェブページにざっと目を通し、その中に興味のあるウェブページを見付けたときに、ボタン1つでシングルビューモードに切り替え、選択されたウェブページだけを広い画面で見ることが可能になる。したがって、興味のあるウェブページを探し出し、その内容を吟味する作業が、非常に楽になる。
広告スペース1602には、所定のURLにある広告が常に表示される。ユーザが表示領域202に対する各種操作を行ったときでも、広告スペース1602は所定のURLにある広告を常に表示し続ける。この所定のURLは、ユーザが変更できないようにするために、例えば、ブラウザの実行プログラムにハードコーディングされる。この広告表示機能は、ブラウザの販売者が、使用者に対して様々な広告を提供するのに役立つ。
図18は、マルチビューブラウザ1600の動作1800を示すフロー図である。図中、図5に示したマルチビューブラウザ200と同様の処理には同じ符号を付し、説明は省略する。ブロック504で境界線位置データを読み込んだ後、ブロック1650において、プロセッサ102は、所定のURLにあるウェブページをネットワークアダプタ105を介してインターネット108上のウェブサイトからダウンロードし、広告スペース1602に表示する。この所定のURLは、ユーザが変更できないようにするために、例えば、ブラウザの実行プログラムにハードコーディングされる。
次に、ブロック1651において、プロセッサ102は、各グループについて表示領域202をマルチビューモードとシングルビューモードのどちらのモードで表示すべきかを示す表示モードフラグ1670(図示せず)を記憶するための領域をメモリ103上に確保し、初期設定として、所定の値を有する表示モードフラグ1670をその領域に書き込む。表示モードフラグ1670は、例えば、各ビットが5つのグループのそれぞれ1つに対応する5ビットのデータとして表現され、例えば、ビット0がマルチビューモードを表わし、ビット1がシングルビューモードを表わす。ただし、データの表現形式は必ずしもこの形式でなくてもよい。一実施形態において、表示モードフラグ1670は、例えば、全て0の値に初期化される。ただし、他の実施形態として、表示モードフラグ1670は他の値に初期化される場合もある。ブロック1651の処理が終わると、プロセッサ102は、ブロック505の処理へと進む。
ブロック505において、各表示領域202に表示すべきウェブページをインターネット108上のウェブサイトからダウンロードした後、プロセッサ102は、ブロック1652の処理へと進む。ブロック1652において、プロセッサ102はまず、表示モードフラグ1670の5つのビットのうち、グループボタン204により現在選択されているグループに対応するビットをメモリ103から読み出し、その値に基づいて、表示領域202をマルチビューモードで表示すべきか、それともシングルビューモードで表示すべきかを判断する。読み出したビット値がマルチビューモードで表示すべきことを示している場合(例えばビット0である場合)、図2のブロック506に示した処理と同様に、4つの表示領域202を1つのウィンドウ内に表示し、その中に、指定されたURLのウェブページをそれぞれ表示する。そして、表示モード切替ボタン1601に表示される文字を
「拡大」に設定する。一方、読み出したビット値がシングルビューモードで表示すべきことを示している場合(例えばビット1である場合)、選択された表示領域202だけをウィンドウ内一杯に表示し、その中に指定されたウェブページを表示する。そして、表示モード切替ボタン1601に表示される文字を「縮小」に設定した後、ブロック507の処理へと進む。
ブロック507において、プロセッサ102は、グループボタン204が押された否かをチェックした後、押されていなければ、ブロック1653の処理へと進む。ブロック1653において、プロセッサ102は、表示モード切替ボタン1601が押されたか否かをチェックする。表示モード切替ボタン1601が押された場合、プロセッサ102は、表示モードフラグ1670の5つのビットのうち、グループボタン204により現在選択されているグループに対応するビットを反転させた後、ブロック1652へ戻り、表示を更新する。すなわち、表示モードを切り替える。
以上がマルチビューブラウザ1600の動作である。追加されたブロックは、必ずしも図18のフロー図に描かれた位置で実施する必要はない。例えば、ブロック1650、及びブロック1651は、ブロック1652よりも前であれば、どの位置で実施してもよく、また、ブロック1653も、ブロック507〜ブロック511のループ内であれば、どの位置で実施してもよい。また、表示モード切替機能と広告表示機能は、必ずしも両方とも実施する必要はなく、実施形態によっては、いずれか一方だけを実施する場合もある。さらに、表示モード切替ボタン1601は、必ずしもトグルボタンである必要はなく、プッシュボタンやラジオボタンとして実施してもよい。また、表示モード切替ボタン1601に表示される文字は、必ずしも「拡大」/「縮小」でなくてもよく、ユーザが表示モードを直感的に理解できるものであれば、別の文字であってもよい。例えば、「全画面」/「戻る」といった文字でもよい。また、広告スペース1602の位置は、必ずしもグループボタン204の横である必要はなく、ウィンドウ内のどの位置に設けてもよい。
マルチビューブラウザ1600のプログラム構成は、図7に示したマルチビューブラウザ200のプログラム構成と基本的に同じである。一実施形態において、ブロック1650、及びブロック1651は、起動処理モジュール701によって実施され、ブロック1652は、表示更新モジュール702によって実施され、ブロック1653は、イベント処理モジュール703によって実施される。ただし、モジュール構成は、この例に限定されない。
図19は、図8に示した本発明の第2の実施形態によるマルチビューブラウザ800の改良実施形態であるマルチビューブラウザ1900の画面構成を示している。図中、マルチビューブラウザ800と同じ機能を有する要素には同じ符号を付し、説明は省略する。この実施形態は、全消去ボタン805、及び各消去ボタン1205の下に表示モード切替ボタン1901を更に備え、グループボタン807の横に広告スペース1902を更に備える。
図19に示すようにグループ1を表示させた状態で、検索領域803に表示された検索サイトのウェブページに検索キーワードを入力し、当該ウェブページ上の検索ボタンを押すと、図20に示すように、検索結果を示すリンクのリスト1911が、スポンサーサイトの広告ウェブページのリンク1912とともに表示される(この例では「モナリザ」と入力している)。次に、検索展開ボタン808を押すと、図21に示すように、スポンサーサイトの広告ウェブページのリンク1912のうちの2つが、右側2つの表示領域802にウェブページとして展開表示される。次に、グループ2に表示を切り替えると、図22に示すように、検索結果1番〜4番に対応するリンク1911が、4つの表示領域802にそれぞれウェブページとして展開表示される。グループを3〜5に切り替えれば、5番以降の検索結果もウェブページとして見ることができる。
このように、マルチビューブラウザ1900は、検索結果のリンクをウェブページとして展開表示する際に、スポンサーサイトの広告ウェブページのような検索結果以外のウェブページも、検索結果と一緒にウェブページとして展開表示することができる。したがって、この実施形態は、スポンサーサイトにとって広告機会が増えるという利点を持つ。
また、図22に示すように4つの表示領域802がウィンドウ内に同時に表示された状態(「マルチビューモード」)で、選択された表示領域802の横にある「拡大」と記された表示モード切替ボタン1901を押すと、図23に示すようにウィンドウ内の残りの表示領域802は隠され、選択された表示領域802(図23の例では、右上の表示領域802を選択している)だけがウィンドウ内一杯に表示され、表示モード切替ボタン1901上の文字は「縮小」に切り替わる。一方、図23のように選択された表示領域802だけがウィンドウ内一杯に表示された状態(「シングルビューモード」)で、「縮小」と記された表示モード切替ボタン1901を押すと、図22に示すようなマルチビューモードに戻る。つまり、表示モード切替ボタン1901はトグルボタンとして機能する。
このように、表示モード切替ボタン1901によれば、ユーザは、マルチビューモードで多数のウェブページにざっと目を通し、興味のあるウェブページを見付けたときに、ボタン1つでシングルビューモードに切り替え、選択されたウェブページだけを広い画面で見ることが可能になる。したがって、興味のあるウェブページを探し出し、その内容を吟味する作業が、非常に楽になる。
広告スペース1902には、所定のURLにある広告が常に表示される。ユーザが表示領域802に対する各種操作を行ったときでも、広告スペース1902は所定のURLにある広告を常に表示し続ける。この所定のURLは、ユーザが変更できないようにするために、例えば、ブラウザのプログラムにハードコーディングされる。この広告表示機能は、ブラウザの販売者が、使用者に対して様々な広告を提供するのに役立つ。
図24は、マルチビューブラウザ1900の動作2400を示すフロー図である。図中、図14に示したマルチビューブラウザ800と同様の処理には同じ符号を付し、説明は省略する。ブロック1950において、プロセッサ102は、所定のURLにあるウェブページをネットワークアダプタ105を介してインターネット108上のウェブサイトからダウンロードし、広告スペース1902に表示する。この所定のURLは、ユーザが変更できないようにするために、例えば、ブラウザの実行プログラムにハードコーディングされる。
次に、ブロック1951において、プロセッサ102は、各グループについて表示領域802をマルチビューモードとシングルビューモードのどちらのモードで表示すべきかを示す表示モードフラグ1970(図示せず)を記憶するための領域をメモリ103上に確保し、初期設定として、所定の値を有する表示モードフラグ1970をその領域に書き込む。表示モードフラグ1970は、例えば、各ビットが5つのグループのそれぞれ1つに対応する5ビットのデータとして表現され、例えば、ビット0がマルチビューモードを表わし、ビット1がシングルビューモードを表わす。ただし、データの表現形式は必ずしもこの形式でなくてもよい。一実施形態において、表示モードフラグ1970は、例えば、全て0の値に初期化される。ただし、他の実施形態として、表示モードフラグ1970は他の値に初期化される場合もある。ブロック1951の処理が終わると、プロセッサ102は、ブロック1952の処理へと進む。
ブロック1952において、プロセッサ102はまず、表示モードフラグ1970の5つのビットのうち、グループボタン807により現在選択されているグループに対応するビットを読み出し、その値に基づいて、表示領域802をマルチビューモードで表示すべきか、それともシングルビューモードで表示すべきかを判断する。読み出したビット値がマルチビューモードで表示すべきことを示している場合(例えばビット0である場合)、ブロック1402に示した処理と同様に、4つの表示領域802(グループ1の場合は3つの表示領域802)を1つのウィンドウ内に表示し、その中に、検索結果のウェブページ、及びスポンサーサイトのウェブページをそれぞれ表示する。一実施形態として、グループ1の右側2つの表示領域802は、スポンサーサイトの広告ウェブページの表示に使用される。そして、表示モード切替ボタン1901に表示される文字を「拡大」に設定する。一方、読み出したビット値がシングルビューモードで表示すべきことを示している場合(例えばビット1である場合)、選択された表示領域802だけをウィンドウ内一杯に表示し、その中に検索結果のウェブページ、又はスポンサーサイトの広告ウェブページを表示する。そして、表示モード切替ボタン1901に表示される文字を「縮小」に設定した後、ブロック1403の処理へと進む。
ブロック1403においてグループボタン807が押されていなければ、処理はブロック1953へと進む。ブロック1953において、プロセッサ102は、表示モード切替ボタン1901が押されたか否かをチェックする。表示モード切替ボタン1901が押された場合、プロセッサ102は、表示モードフラグ1970の5つのビットのうち、グループボタン807により現在選択されているグループに対応するビットを反転させた後、ブロック1952へ戻り、表示を更新する。すなわち、表示モードを切り替える。一方、ブロック1953において表示モード切替ボタン1901が押されていなければ、処理はブロック1404へと進む。そして、ブロック1404において、検索サイト選択ボタン804が押されていなければ、処理は更にブロック1905へと進む。
ブロック1905において、プロセッサ102は、「検索展開」ボタン808が押されたか否かをチェックする。「検索展開」ボタン808が押された場合、プロセッサ802は、検索領域803に羅列表示された検索結果を示すリンク1911、及びスポンサーサイトの広告ウェブページへのリンク1912を抽出し、それらをグループ1〜5の表示領域802にウェブページとして展開表示する。上記のように、一実施形態において、グループ1の右側2つの表示領域802は、スポンサーサイトの広告ウェブページの表示に使用され、グループ2〜5の表示領域802は、検索結果のウェブページの表示に使用される。マルチビューブラウザ1900は、マルチビューブラウザ800とは異なり、検索結果を示すリンクだけでなく、それ以外のリンク(例えば、スポンサーサイトの広告ウェブページのリンク)も抽出し、展開表示する機能を備える。そして、広告ウェブページを意図的に検索結果とともに表示することによって、例えば、スポンサーサイトの広告ウェブページをブラウザの使用者に対して強制的に「見せる」ことが可能になる。
上述のように、検索サイトのウェブページには、検索結果を示すURL以外のURLも含まれる。検索サイトのウェブページから検索結果を示すURLを抽出するためには、まず、検索結果のURLを記述するブロックをブロックタグのクラス名に基づいて割り出し、さらに、切り出したブロックの中から検索結果のURLを示す文字列をアンカータグのクラス名に基づいて割り出す。多くの検索サイトは、検索結果のURLを記述するブロックのブロックタグのクラス名に特有のクラス名を指定している。同様に、検索サイトのウェブページからスポンサーサイトの広告ウェブページのURLを抽出するためには、まず、スポンサーサイトの広告ウェブページのURLを記述するブロックをブロックタグのクラス名又はID名に基づいて割り出し、さらに、切り出したブロックの中からスポンサーサイトの広告ウェブページのURLを示す文字列をアンカータグのクラス名に基づいて割り出す。多くの検索サイトは、スポンサーサイトの広告ウェブページのURLを記述するブロックのブロックタグのクラス名又はID名に特有のクラス名又はID名を指定してい
る。
以上がマルチビューブラウザ1900の動作である。なお、図18のメインフロー図の中でブロック510から図6のサブフロー図へ分岐した後、再びメインフロー図へ戻るとき(ブロック605からのYの分岐)は、当然ながら、図18のブロック507へと戻る。また、追加されたブロックは、必ずしも図24のフロー図に描かれた位置で実施する必要はない。例えば、ブロック1950、及びブロック1951は、ブロック1952よりも前であれば、どの位置で実施してもよく、ブロック1953も、ブロック1403〜ブロック1411のループ内であれば、どの位置で実施してもよい。また、表示モード切替機能と広告表示機能は、必ずしも両方とも実施する必要はなく、実施形態によっては、いずれか一方だけを実施する場合もある。さらに、表示モード切替ボタン1901は、必ずしもトグルボタンである必要はなく、プッシュボタンやラジオボタンとして実施してもよい。さらに、表示モード切替ボタン1901に表示される文字も、必ずしも「拡大」/「縮小」である必要はなく、ユーザが表示モードを直感的に理解できるものであれば、別の文字であってもよい。例えば、「全画面」/「戻る」といった文字でもよい。また、広告スペース1902の位置は、必ずしもグループボタン807の横である必要はなく、ウィンドウ内のどの位置に表示してもよい。さらに、例示した実施形態では、グループ1の右側2つの表示領域をスポンサーサイトの広告ウェブページのような検索結果以外のウェブページの表示に使用しているが、表示する検索結果以外のウェブページの数や、それをグループ1〜5のどの表示領域802に表示するかは、例示した実施形態とは異なっていてもよい。
マルチビューブラウザ1900のプログラム構成は、図15に示したマルチビューブラウザ800のプログラム構成と基本的に同じである。一実施形態において、ブロック1950、ブロック1951は、及びブロック1952は、表示更新モジュール1501によって実施され、ブロック1953は、イベント処理モジュール1502によって実施される。ただし、モジュール構成は、この例に限定されない。
本明細書は、発明を十分に理解してもらう目的で幾つかの実施形態を細部にわたって説明している。しかしながら、開示した実施形態は、本発明の範囲をその実施形態に厳密に制限するためのものではない。当業者であれば、開示した実施形態に修正を加え、種々の代替実施形態を実施することも可能である。たとえば、開示した実施形態では、マルチビューブラウザのプログラムは、起動処理モジュール、表示更新モジュール、及びイベント処理モジュール等から構成されているが、一部の処理を別のモジュールに分割したり、いくつかの処理を統合して1つのモジュールで実施することも可能である。また、実施形態によっては、フロー図の中の一部の処理を省略する場合もある。さらに、フロー図に記載した処理は、必ずしも記載した順序で実施しなければならない訳ではなく、開示した順序とは異なる順序で実施される場合もある。当然ながら、その様な実施形態も本発明の範囲内にある。本発明の範囲は、特許請求の範囲により規定される。
なお、図面において、表示領域202や表示領域802に例として描かれているウェブページは、本発明のブラウザの画面構成や各種ボタンの働きを説明する都合上、単なる例として適当に選択したもの、または、任意の或る時点で検索ウェブサイトを使って検索された結果を単なる例として適当に示したものであり、それらのウェブページを選択したことに何ら意図はない。また、誤解を招くことのないように念のために付記しておけば、上で説明した本発明の第2の実施形態は、検索サイトの検索結果を有効活用する便利な機能を備えたウェブブラウザの発明であり、当然ながら、ウェブブラウザ自体に独自の検索機能を備えたものではない。