(57)【特許請求の範囲】
【請求項１】
描画された木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画する、コンピュータによって実施される方法であって、
複数のブランチで構成される前記木構造の少なくともツリー・ビューを生成するステップと、
前記ツリー・ビューに対する前記ポインティング・カーソルの位置を特定するステップであって、前記位置は、第１の方向に従う第１の位置値と、前記第１の方向に直交する第２の方向に従う第２の位置値とで構成されており、前記第１の位置値が、前記ポインティング・カーソルの位置が前記第１の方向に従って合わされたブランチとして選択されたアクティブなブランチを特定し、前記第２の位置値の増加する値が、前記木構造のより深いサブレベルを特定し、且つ、前記第２の位置値の減少する値が、前記木構造のより高いサブレベルを特定するように、前記第２の位置値が、展開されるべき前記アクティブなブランチのサブレベルを、前記サブレベルのインデントに対する前記第２の位置値によって特定する、ステップと、
前記第１の位置値又は前記第２の位置値の少なくとも一つが変化するときに、前記アクティブなブランチの前記特定されたサブレベルを展開し、かつその他のブランチを折り畳むことによって、前記ツリー・ビューを更新するステップと、
を含む、前記コンピュータによって実施される方法。
【請求項２】
前記グラフィカル・ユーザ・インタフェース内において前記ツリー・ビューを表示する表示デバイスのスクリーン上において、前記第１の方向が垂直方向に対応し、前記第２の方向が水平方向に対応する、請求項１に記載のコンピュータによって実施される方法。
【請求項３】
前記ステップが連続的に繰り返される、請求項１又は２に記載のコンピュータによって実施される方法。
【請求項４】
前記展開されるべきサブレベルの量が現在展開されているサブレベルの量よりも少ない場合、前記ツリー・ビューが、前記アクティブなブランチの超過分のサブレベルを折り畳むことによって更新され、かつ、前記更新されたツリー・ビューが、前記折り畳まれた超過分のサブレベルを隠している対応する要素が前記第１の方向に従う前記ポインティング・カーソルの位置に合わされるまで、前記第１の方向に動かされる、請求項１から３のいずれか１項に記載のコンピュータによって実施される方法。
【請求項５】
前記要素の木構造が概念の分類に対応している、請求項１から４のいずれか１項に記載のコンピュータによって実施される方法。
【請求項６】
前記要素の木構造がファイルのディレクトリ構造に対応している、請求項１から４のいずれか１項に記載のコンピュータによって実施される方法。
【請求項７】
ユーザによって入力されたモード選択に応じて、自動モードと手動モードとのいずれかを選択することを含み、
前記ポインティング・カーソルの位置を特定することと、前記アクティブなブランチを自動的に選択することと、前記展開されるべきサブレベルを特定することと、前記ツリー・ビューを自動的に更新することとが、前記自動モードにおいてのみ実行され、
前記ツリー・ビューが、前記手動モードにおいて、前記グラフィカル・ユーザ・インタフェースに対する更なる手動のユーザ入力に応じて更新される、
請求項１から６のいずれか１項に記載のコンピュータによって実施される方法。
【請求項８】
前記ポインティング・カーソルが、前記ツリー・ビューとのユーザ・インタラクション用に生成される、請求項１から７のいずれか１項に記載のコンピュータによって実施される方法。
【請求項９】
描画された木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画するデータ処理装置であって、
複数のブランチで構成される前記木構造の少なくともツリー・ビューを生成するように構成されたグラフィック描写ユニットと、
前記ツリー・ビューに対する前記ポインティング・カーソルの位置を特定するように構成された位置特定ユニットであって、前記位置は、第１の方向に従う第１の位置値と、前記第１の方向に直交する第２の方向に従う第２の位置値とで構成されている、前記位置特定ユニットと、
前記第１の位置値に従ってアクティブなブランチを選択するように構成されたアクティブ・ブランチ選択ユニットであって、前記アクティブなブランチは、前記ポインティング・カーソルの位置が前記第１の方向に従って合わされたブランチとして選択される、前記アクティブ・ブランチ選択ユニットと、
前記第２の位置値の増加する値が、前記木構造のより深いサブレベルを特定し、且つ、前記第２の位置値の減少する値が、前記木構造のより高いサブレベルを特定するように、前記第２の位置値を用いて、展開されるべき前記アクティブなブランチのサブレベルを、前記サブレベルのインデントに対する前記第２の位置値によって特定するように構成された展開特定ユニットと、
を備えており、
前記第１の位置値又は前記第２の位置値の少なくとも一つが変化するときに、前記グラフィック描写ユニットは、前記アクティブなブランチの前記特定されたサブレベルを展開し、かつその他のブランチを折り畳むことによって、前記ツリー・ビューを更新するように更に構成されている、前記データ処理装置。
【請求項１０】
前記位置特定ユニットを用いて前記ポインティング・カーソルの位置を特定することと、前記アクティブ・ブランチ選択ユニットを用いて前記アクティブなブランチを選択することと、前記展開特定ユニットを用いて前記展開されるべきサブレベルを特定することと、前記グラフィック描写ユニットを用いて前記ツリー・ビューを更新することとを連続的に繰り返すように構成されている、請求項９に記載のデータ処理装置。
【請求項１１】
前記展開特定ユニットが、前記展開されるべきサブレベルの量が現在展開されているサブレベルの量よりも少ないと判定した場合、前記グラフィック描写ユニットが、前記アクティブなブランチの超過分のサブレベルを折り畳むことによって前記ツリー・ビューを更新し、かつ、前記更新されたツリー・ビューを、前記折り畳まれた超過分のサブレベルを隠している対応する要素が前記第１の方向に従う前記ポインティング・カーソルの位置に合わされるまで、前記第１の方向に動かすように構成されている、請求項９又は１０に記載のデータ処理装置。
【請求項１２】
ユーザによって入力されたモード選択に応じて、自動モードと手動モードとのいずれかを選択するように構成された選択ユニットを備えており、
前記データ処理装置は、前記位置特定ユニットを用いて前記ポインティング・カーソルの位置を特定することと、前記アクティブ・ブランチ選択ユニットを用いて前記アクティブなブランチを自動的に選択することと、前記展開特定ユニットを用いて前記展開されるべきサブレベルを特定することと、前記グラフィック描写ユニットを用いて前記ツリー・ビューを自動的に更新することとを、前記自動モードにおいてのみ実行するように構成されており、
前記グラフィック描写ユニットは、前記手動モードにおいて、前記グラフィカル・ユーザ・インタフェースに対する更なる手動のユーザ入力に応じて、前記ツリー・ビューを更新するように構成されている、請求項９から１１のいずれか１項に記載のデータ処理装置。
【請求項１３】
前記ポインティング・カーソルを前記ツリー・ビューとのユーザ・インタラクション用に生成するように構成されている、請求項９から１２のいずれか１項に記載のデータ処理装置。
【請求項１４】
描画された木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画するデータ処理装置であって、
処理デバイスと、
表示デバイスと、
命令を記憶しているメモリデバイスと、
を備えており、
前記命令は、実行されると、
複数のブランチで構成される前記木構造の少なくともツリー・ビューを生成することと、
前記ツリー・ビューに対する前記ポインティング・カーソルの位置を特定することであって、前記位置は、第１の方向に従う第１の位置値と、前記第１の方向に直交する第２の方向に従う第２の位置値とで構成されており、前記第１の位置値が、前記ポインティング・カーソルの位置が前記第１の方向に従って合わされたブランチとして選択されたアクティブなブランチを特定し、前記第２の位置値の増加する値が、前記木構造のより深いサブレベルを特定し、且つ、前記第２の位置値の減少する値が、前記木構造のより高いサブレベルを特定するように、前記第２の位置値が、展開されるべき前記アクティブなブランチのサブレベルを、前記サブレベルのインデントに対する前記第２の位置値によって特定することと、
前記第１の位置値又は前記第２の位置値の少なくとも一つが変化するときに、前記アクティブなブランチの前記特定されたサブレベルを展開し、かつその他のブランチを折り畳むことによって、前記ツリー・ビューを更新することと、
を前記処理デバイスに行わせる、前記データ処理装置。
【請求項１５】
描画された木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画することを可能にする命令を記憶しているコンピュータ可読記憶媒体であって、前記命令は、コンピュータによって実行されると、
複数のブランチで構成される前記木構造の少なくともツリー・ビューを生成することと、
前記ツリー・ビューに対する前記ポインティング・カーソルの位置を特定することであって、前記位置は、第１の方向に従う第１の位置値と、前記第１の方向に直交する第２の方向に従う第２の位置値とで構成されており、前記第１の位置値が、前記ポインティング・カーソルの位置が前記第１の方向に従って合わされたブランチとして選択されたアクティブなブランチを特定し、前記第２の位置値の増加する値が、前記木構造のより深いサブレベルを特定し、且つ、前記第２の位置値の減少する値が、前記木構造のより高いサブレベルを特定するように、前記第２の位置値が、展開されるべき前記アクティブなブランチのサブレベルを、前記サブレベルのインデントに対する前記第２の位置値によって特定することと、
前記第１の位置値又は前記第２の位置値の少なくとも一つが変化するときに、前記アクティブなブランチの前記特定されたサブレベルを展開し、かつその他のブランチを折り畳むことによって、前記ツリー・ビューを更新することと、
を前記コンピュータに行わせる、前記コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
データ処理装置と、コンピュータによって実施される、要素の木構造を描画する方法とを提示する。詳しくは、本開示は、データ処理装置と、描画された木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画する、コンピュータによって実施される方法と、対応するコンピュータ可読記憶媒体とに関する。
【背景技術】
【０００２】
例えば、マルチメディア・データのセマンティックなメタデータの注釈に用いられる概念が、階層的な上位概念／下位概念の体系に従って配列されて、概念の分類が得られることがよくある。例えば、乗り物の分類は、その下位概念として、地上の乗り物、船舶、航空機などを含み、更に、地上の乗り物は、車、トラック、バスなどのような下位概念を含み得る。分類において、任意の下位概念は、その全ての上位概念の１つの種類である。従って、１つの分類において、注釈を施すべき特定の概念が欠けている場合、注釈者は、それに最も良く適合する上位概念に戻ることができる。例えば、戦車は、地上の乗り物として注釈を施してもよく、ＵＦＯ（未確認飛行物体）は、乗り物として注釈を施してもよい。
【０００３】
大きく複雑な分類には、複数の独立したトップレベル（最上位）の概念と、各々のトップ・レベルの概念の下の多数のレベルの階層と、単一の上位概念の多数の下位概念とが含まれ得る。この莫大な量の深くネスト化された概念は、この分類を用いるアプリケーションのグラフィカル・ユーザ・インタフェース（ＧＵＩ）において、例えば、注釈を施すべき概念の選択のためにこの分類を示すビューにおいて、都合良く描画することが困難である場合もある。
【０００４】
分類を描画する１つの実行可能な手段は、テーブル・ビューを採用することである。このテーブル・ビューにおいて、各々のトップ・レベルの概念は、自己のテーブルを有することができ、或いは、テーブルの列又は行のヘッダであってもよい。例えば、列のヘッダは、上位概念と、それに対応する下位概念の列のコンテンツとを示している。更なる細分性が求められる場合、列には、例えば、１つの直接の下位概念が太字体で示され、それより低いレベルの概念が標準字体で示されたサブテーブルが含まれてもよい。このようなテーブル・ビューは、小さいスペース内に多数の概念とそれらの階層とを示すことができ、概念の良好な全体像を提供できる。しかしながら、それが、紛らわしくなく一度に示すことができるものは、僅かなレベルの階層のみである。ユーザが更なるサブレベルをレビューする必要がある場合、ユーザは、例えば、現在示されているテーブルを更新することによって、或いは、その他のテーブルを表示することによって、更なるサブレベルが示される概念を選択する必要がある。深くネスト化された分類において、特定の概念に到達するためには、多数のそのような選択が必要なこともある。目的とする概念が見つからない場合、ユーザは、より高いレベルの概念を示すテーブルに再び戻ることを望むであろう。分類の粗く細分化されたビューと細かく細分化されたビューとの間のこの切り替えは、ピボット・テーブル及びデータベースのオンライン分析処理（ｏｎｌｉｎｅ  ａｎａｌｙｔｉｃａｌ  ｐｒｏｃｅｓｓｉｎｇ：ＯＬＡＰ）における多次元データの描画と処理とについてのドリル・ダウン／アップ操作に類似している。
【０００５】
分類を描画するもう１つの実行可能な手段は、ツリー・ビューを採用することである。このようなビューは、種々のアプリケーション、例えば、ファイル・システム・エクスプローラ又はドキュメント・アウトライニング・ツールにおいて深くネスト化された階層を示すために使用される。そのようなアプリケーションは、選択されたツリー・レベルよりも下の現在示されているツリー・レベルの数を１つ以上のレベルだけ増大させる（ｅｘｔｅｎｄ）／減少させる（ｒｅｄｕｃｅ）、選択されたツリー・レベルよりも下の全てのツリー・レベルを展開する（ｅｘｐａｎｄ）／折り畳む（ｃｏｌｌａｐｓｅ）、固有に構成されたサブツリー（部分木）を選択されたレベルに折り畳み、その後再びこのサブツリーを前に構成されていたように示す、トップ・レベルよりも下の特定の数のツリー・レベルを示す、などの制御を提供し得る。このような機能を有するツリー・ビューは、ユーザが、目的とするサブツリーをブラウズして展開して、目的とする概念を発見して選択できるように、分類を描画するためにも使用できる。このようなツリー・ビューは、多数のレベルの階層を有する大規模な分類を描画できる。しかしながら、これは、概念の全体像を提供することについては、あまり適していない。即ち、多数のツリー・レベルが展開された場合、広く拡がったビューにおいて特定の概念を発見するためには大量のスクロールが必要であり、且つ、概念の相互関係を常に把握することも難しい。また、よりコンパクトなビューが得られるように、ごく少数のツリー・レベルが展開された場合、低いレベルの概念にドリル・ダウンする、或いは、低いレベルの概念からドリル・アップするためには多数の展開／折り畳みの操作が必要である。
【０００６】
小さい分類の場合、分類を用いたアプリケーションのＧＵＩは、テーブル・ビューを備えていることがあるが、テーブル・ビューは、大きい分類の多数の階層レベルを適切に処理することが殆どできないので、テーブル・ビューを頻繁に更新するか、或いは、子テーブルを素早く示すことが必要になる。他方、いくつかのアプリケーションにおいては、手動で構成可能なツリー・ビューが大きい分類について使用されているが、これは、コンパクトな全体像とビュー再構成操作の必要量との相反する問題があるので、便利さに欠けている。同じ問題が、分類における概念の検索のみならず、その他の複雑なツリー・ビューにおける要素の検索、例えば、深くネスト化されたファイル・ディレクトリ構造におけるファイルの検索、或いは、深くネスト化されたデータベース構造におけるデータベース・エントリの検索にも当てはまる。
【０００７】
例えば大きい分類の描画について手動で構成されるツリー・ビューの便利さの諸問題を解決し、また、例えばツリー・ビュー内に表示された分類内における概念である、ツリー・ビュー内に表示された要素の木構造内における要素、即ちノードの発見と選択とを改善できる、より効率的なマン・マシン・インタフェースを提供する必要性が依然として残されている。
【発明の概要】
【０００８】
添付された特許請求の範囲による、描画された木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェース（ＧＵＩ）において描画する、コンピュータによって実施される方法及びデータ処理装置、並びに、コンピュータ可読記憶媒体を提案する。
【０００９】
一態様によれば、描画された木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画する、コンピュータによって実施される方法は、
複数のブランチで構成される木構造のツリー・ビューを生成することと、
ツリー・ビューに対するポインティング・カーソルの位置を特定することであって、その位置は、第１の方向に従う第１の位置値と、第１の方向に直交する第２の方向に従う第２の位置値とで構成されている、上記特定することと、
ポインティング・カーソルの位置が第１の方向に従って合わされたブランチをアクティブなブランチとして自動的に選択することと、
展開されるべきアクティブなブランチのサブレベルを、サブレベルのインデントに対する第２の位置値によって特定することと、
アクティブなブランチの特定されたサブレベルを展開し、かつその他のブランチを折り畳むことによって、ツリー・ビューを自動的に更新することと、を含む。
【００１０】
従って、描画された木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画するデータ処理装置は、
複数のブランチで構成される木構造のツリー・ビューを生成するように構成されたグラフィック描写ユニットと、
ツリー・ビューに対するポインティング・カーソルの位置を特定するように構成された位置特定ユニットであって、その位置は、第１の方向に従う第１の位置値と、第１の方向に直交する第２の方向に従う第２の位置値とで構成されている、上記位置特定ユニットと、
ポインティング・カーソルの位置が第１の方向に従って合わされたブランチをアクティブなブランチとして自動的に選択するように構成されたアクティブ・ブランチ選択ユニットと、
展開されるべきアクティブなブランチのサブレベルを、サブレベルのインデントに対する前記第２の位置値によって特定するように構成された展開特定ユニットと、を備えており、
グラフィック描写ユニットは、アクティブなブランチの特定されたサブレベルを展開し、かつその他のブランチを折り畳むことによって、ツリー・ビューを自動的に更新するように更に構成されている。
【００１１】
グラフィック描写ユニット、位置特定ユニット、アクティブ・ブランチ選択ユニット、及び、展開特定ユニットのような、この装置に備えられたユニットは、個別のデバイスとして、或いは、組み合わされて少なくとも１つのデバイス又は論理回路として設けられてもよいし、或いは、マイクロプロセッサか、マイクロコントローラ又はその他の処理デバイスか、コンピュータか、或いは、その他のプログラム可能な装置によって実行される機能であってもよい。
【００１２】
一態様によれば、描画された木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画するデータ処理装置は、
処理デバイスと、
表示デバイスと、
命令を記憶しているメモリデバイスと、
を備えており、
命令は、実行されると、
複数のブランチで構成される木構造を表示デバイスを用いて示すツリー・ビューを生成することと、
ツリー・ビューに対するポインティング・カーソルの位置を特定することであって、その位置は、第１の方向に従う第１の位置値と、第１の方向に直交する第２の方向に従う第２の位置値とで構成されている、上記特定することと、
ポインティング・カーソルの位置が第１の方向に従って合わされたブランチをアクティブなブランチとして自動的に選択することと、
展開されるべきアクティブなブランチのサブレベルを、サブレベルのインデントに対する第２の位置値によって特定することと、
アクティブなブランチの特定されたサブレベルを展開し、かつその他のブランチを折り畳むことによって、表示デバイスに示されるツリー・ビューを自動的に更新することと、を処理ユニットに行わせる。これらのユニットは、バス又はその他の通信線路によって接続されている。
【００１３】
更に、コンピュータ可読記憶媒体は、描画された木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画することを可能にする命令を記憶しており、命令は、コンピュータによって実行されると、
複数のブランチで構成される木構造のツリー・ビューを生成することと、
ツリー・ビューに対するポインティング・カーソルの位置を特定することであって、その位置は、第１の方向に従う第１の位置値と、第１の方向に直交する第２の方向に従う第２の位置値とで構成されている、上記特定することと、
ポインティング・カーソルの位置が第１の方向に従って合わされたブランチをアクティブなブランチとして自動的に選択することと、
展開されるべきアクティブなブランチのサブレベルを、サブレベルのインデントに対する第２の位置値によって特定することと、
アクティブなブランチの特定されたサブレベルを展開し、かつその他のブランチを折り畳むことによって、ツリー・ビューを自動的に更新することと、をコンピュータに行わせる。
【００１４】
このコンピュータ可読記憶媒体は命令のプログラムを有形に具現化し、この命令のプログラムは、コンピュータによって実行されると、このコンピュータに上述の方法のステップを行わせる。
【００１５】
グラフィカル・ユーザ・インタフェースは、描画された要素の木構造に対するポインティング・カーソルの位置を制御するユーザ入力に応答する。ポインティング・カーソルは、ポインティング・カーソル操作デバイス、例えば、コンピュータ・マウス、トラックボール、トラックポイント又はタッチパッドを用いて、移動させる、即ち、操作することができる。表示デバイスがタッチスクリーン・デバイスである場合、ポインティング・カーソルは、例えば、ユーザの指又はスタイラスを用いて、移動させる、即ち、操作することもできる。一実施態様において、ポインティング・カーソルは、カメラによって提供される、ユーザを表示するライブ・ビデオを分析する際の手又は指の追跡及びジェスチャの認識に応じて、移動させることができる。
【００１６】
木構造は、複数のブランチあるいは接続されたノードの経路で構成され、即ち、複数のブランチあるいは接続されたノードの経路を備え、これは、サブレベル、即ち、親ノードより下の木レベルで構成されていてもよく、あるサブレベルに含まれる要素あるいはノードは、同じ親ノードのシブリング（ｓｉｂｌｉｎｇ）として、同じインデントに接続されている。
【００１７】
ツリー・ビューは、木構造のグラフィック表現である。ツリー・ビューは、ＧＵＩ構成要素内で、例えばウィンドウ又はフレーム内で示される。これは、アクティブなブランチの自動的な選択を可能にする、即ち、ポインティング・カーソルの位置が、クリックしないで、単にツリー・ビューに対するポインティング・カーソルの位置を評価することによって特定される。アクティブなブランチは、例えば、サブレベルを展開することによって探索する対象として、ユーザによって選択されるブランチである。この相対的なポインティング・カーソルの位置は、ポインティング・カーソルをツリー・ビュー上で移動させることによって、或いは、ツリー・ビューを示すビューイング・ウィンドウをスクロールすることによって変更できるが、その一方で、ポインティング・カーソルの絶対的な位置、即ち、ツリー・ビューを含んでいるビューイング・ウィンドウの境界、或いは、そのビューイング・ウィンドウを表示している表示デバイスのスクリーンの境界に対する位置は、不変のままである場合もあれば、そうでない場合もある。
【００１８】
次に、アクティブなブランチの何個のサブレベルを展開すべきかが、そのサブレベルのインデントに対する第２の位置値のオフセットの評価に従って計算される。その後、ユーザによる手動のインタラクションなしに、自動ツリー・ビュー再構成機構が、アクティブなブランチの特定されたサブレベルを展開し、かつその他のブランチを折り畳むことによって、ツリー・ビューを自動的に更新する。
【００１９】
ここに提案された解決手段によるこの自動ツリー・ビュー再構成機構は、データ構造のような複雑な木を速く検査することを可能にする。これは、木構造で構成されて、ツリー・ビューにおける木として表示される、例えば分類、ファイル・システム又はデータベースのネスト化されたデータをブラウズして、目的とする要素、即ち、それぞれ、概念、ファイル又はデータベース・エントリを見つけて選択すべく、トップ・レベルの要素から開始して、１度に木の１つのブランチのみをドリル・ダウンして、場合により、目的とする要素が見つからなければ、残されるサブレベルの折り畳みも含めて、再度ドリル・アップする手動の制御を用いたユーザの動作を模倣している。このメカニズムは、ツリー・ビューに対するポインティング・カーソルの位置を用いて、木のどのブランチを自動的に展開する／折り畳むべきかを制御する。これは、マウスのクリック、キーストローク、或いは、タッチスクリーンのタップなどによるあからさまな展開／折り畳み操作を必要とせずに、また、対応する手動の制御方式に必要なほどの多くのポインティング・カーソルの移動を必要とせずに、木のコンパクトな提示用にツリー・ビューを再構成する。
【００２０】
ここに提案された解決手段による本メカニズムは、少なくとも、ユーザが、目的とする要素の発見／選択の作業を、手動の制御を用いた場合よりも速く且つ簡便に行える、即ち、より効率的なマン・マシン・インタフェースが提供される、という効果を有する。
【００２１】
一態様において、グラフィカル・ユーザ・インタフェース内においてツリー・ビューを表示する表示デバイスのスクリーン上において、第１の方向は垂直方向に対応しており、第２の方向は水平方向に対応している。ここで、木要素に対するポインティング・カーソルの垂直方向の位置が、木のどのブランチが展開され得るアクティブなブランチとして選択されるかを制御するのに使用され、木レベルのインデントに対するポインティング・カーソルの水平方向の位置が、アクティブなブランチの何個のサブレベルが展開されるかを制御するのに使用される。アクティブなブランチの１つのサブレベルのインデントがポインティング・カーソルの位置の左に在ると分かった場合、そのサブレベルが展開されるべきであると判定される。別の一実施態様においては、第１の方向は水平方向に対応しており、第２の方向は垂直方向に対応している。
【００２２】
一態様において、ポインティング・カーソルの位置を特定するステップと、アクティブなブランチを自動的に選択するステップと、展開されるべきサブレベルを特定するステップと、ツリー・ビューを自動的に更新するステップとは、連続的に繰り返される。本自動メカニズムは、ポインティング・カーソルのあらゆる移動を常に追跡しており、もし必要ならば、ツリー・ビューを、木のコンパクトな提示用に即座に自動的に再構成する。一実施態様において、展開／折り畳みの操作を自動的に行う前に、短い遅延を導入できる。別の一実施態様において、展開及び／又は折り畳みの操作は、例えば矢印キーの付加的なキーストロークが行われるまで遅延される。
【００２３】
一態様において、展開されるべきサブレベルの量が、現在展開されているサブレベルの量よりも少ない場合、ツリー・ビューは、アクティブなブランチの超過分のサブレベルが折り畳まれることによって更新され、この更新されたツリー・ビューは、折り畳まれた超過分のサブレベルを隠す、即ち、備えている対応する要素が、第１の方向に従うポインティング・カーソルの位置に合わされるまで、更なるユーザ・インタラクションなしに、自動的に第１の方向に動かされる。換言すれば、ポインティング・カーソルの表示された位置が、展開／折り畳みの操作のために、自動的に再構成されたツリー・ビューと整合しなくなる場合、更新されたツリー・ビューは、実際のポインティング・カーソル位置が更新されたツリー・ビューに対する新たな論理的なポインティング・カーソル位置を反映するように、第１の方向に、例えば垂直方向に、自動的に動かされる。第１の方向が垂直方向であり、且つ、ポインティング・カーソルを左に移動させることによって、ポインティング・カーソルが、折り畳まれる木レベルの直接の、又は、間接的な上位要素に垂直方向に位置合わせされない場合、本実施態様以外においては、単にこの木レベルを折り畳めば、ある任意の木要素が、存在する場合には、この木レベルの要素によって以前占められていたスペースと、これらの要素に対するポインティング・カーソルの垂直方向の位置とに従って、ポインティング・カーソルに垂直方向に位置合わせされることになり得る。その結果として、もはやアクティブなブランチは存在しないことになり得るか、或いは、自動的に選択される新たなアクティブなブランチがこの任意の木要素を備えていることになり得る。一方、本実施態様によってツリー・ビューを動かすことによって、上位要素を備えたブランチがアクティブなブランチとして維持されて、木におけるシームレスな更なるナビゲーションが可能になる。いくつかのケースでは、このような自動的な再構成によって、或いは、ツリー・ビューを含むビューイング・ウィンドウの手動の垂直方向のスクロールによって、木の一番上の要素が、ビューイング・ウィンドウの上側縁端からある程度の距離だけ離れて表示されることがある。従って、一実施態様において、ツリー・ビューは、表示されたポインティング・カーソルと共に、その距離だけ、その縁端の方にシフトされる。
【００２４】
一態様において、要素の木構造は、分類、即ち、概念の区分化体系に対応しており、概念とは、例えばマルチメディア・データに用いられる分類から得られる概念である。ここで、インタラクティブな（対話型の）ツリー・ビューを有するグラフィカル・ユーザ・インタフェースは、階層的なメタデータ用の分類ブラウザに対応しており、即ち、分類が、ＧＵＩにおいて、例えば、マルチメディア・データに対するセマンティックなメタデータの注釈について描画される。ここに提案された解決手段による、ツリー・ビューにおいて木として表示される分類における概念を発見して選択する作業に適合化された自動ツリー・ビュー再構成メカニズムは、さらに大きい分類の効率的な描画を可能にする。
【００２５】
別の一態様において、要素の木構造は、ファイルのディレクトリ構造に対応している。一般に、ここに提案された解決手段による自動ツリー・ビュー再構成メカニズムは、ツリー・ビューの意図される用途が木の要素を速くブラウズして選択することであれば、種々のアプリケーションにおいて、分類以外のコンテンツを示すツリー・ビューについても使用できる。例えば、ここに提案されたツリー・ビュー再構成メカニズムを用いたツリー・ビューを含む任意のデータベース、ドキュメント・アウトライニング・ツール、ファイル・エクスプローラ又は「オープン・ファイル」ダイアログは、サブツリー（部分木）、例えばサブフォルダを展開する／折り畳むあからさまな操作を必要とする標準的なツリー・ビューを用いたアプリケーションに比べて、要素を発見して選択するのに要する制御操作が少なくなり得る。
【００２６】
一態様において、コンピュータによって実施される方法は、
ユーザが入力したモード選択に応じて、自動モードと手動モードとのいずれかを選択することを含み、
ポインティング・カーソルの位置を特定することと、アクティブなブランチを自動的に選択することと、展開されるべきサブレベルを特定することと、ツリー・ビューを自動的に更新することとが、自動モードにおいてのみ実行され、
ツリー・ビューが、手動モードにおいて、グラフィカル・ユーザ・インタフェースに対する更なる手動のユーザ入力に応じて更新される。
【００２７】
ここに提案された解決手段による方法を実施する装置は、手動のツリー・ビュー構成機能とここに提案された自動機構との両方を、２つのモードを切り替える手段を用いて提供できる。一実施態様において、この装置は、自動モードがオンに切り替えられると、手動で設定されたビュー構成を記憶して、自動モードがオフに再び切り替えられると、前に記憶した構成を復元する。
【００２８】
一態様において、ポインティング・カーソルは、ツリー・ビューとのユーザ・インタラクション用に生成される。これは、例えば、標準的なポインティング・カーソルを使用しないシステムに適用される。標準的な入力として、例えばマウス・ポインタを使用するデバイスについては、スクロール・バーに依存しないスクロールの解決手段を設けることができ、一方、そのような標準的なポインティング・カーソルを使用しないタッチスクリーン制御のデバイスは、スクロールについて、標準的なスワイプのジェスチャを使用できる。ポインティング入力デバイス、例えば、マウス、トラックボール、タッチパッド又はトラックポイントによって制御されるポインティング・カーソルを使用するシステム上では、ポインティング・カーソル位置は、このポインティング・カーソルの位置によって規定される。そのような標準的なポインティング・カーソルを使用しないシステム、例えば、タッチスクリーン制御のデバイス上では、ツリー・ビューのビューイング・ウィンドウ用のポインティング・カーソルが、その代わりに使用される。この専用のポインティング・カーソルの位置は、例えばユーザの指又はスタイラスを用いて、ポインティング・カーソルをビューイング・ウィンドウ上でドラッグすることによって制御される。特に、標準的なポインティング・カーソルを使用するシステム上において、且つ、ここに提案された解決手段による自動メカニズムがアクティブである時に、この自動メカニズムを使用するアプリケーションは、ビューをスクロールするためには、ビューイング・ウィンドウの縁端に在る標準的なスクロール・バーを使用しない。その理由は、そのようなスクロール・バーにアクセスするためにポインティング・カーソルをツリー・ビュー上で移動させることによって、ビューが再構成され得るからである。その代わりに、その他のスクロール制御手段、例えば、キーボード制御、マウス・ホイール（例えば、ホイールを通常のように用いた垂直方向のスクロール、及び、ホイールを押して、マウス移動と組み合わせることによる、或いは、もしサポートされているならば、ホイールの左右のティルティング（ｔｉｌｔｉｎｇ）による、水平方向のスクロール）、或いは、ポインティング・カーソルをビューイング・ウィンドウの縁端に移動させた際の自動的なスクロールが使用される。一方、タッチスクリーン制御のアプリケーションは、ビューをスクロールするために、ビューイング・ウィンドウ上で標準的なスワイプのジェスチャを使用でき、但し、これは、スワイプのジェスチャをポインティング・カーソル位置から開始しないことを前提条件としており、そのように開始することは、その代わりに、ポインティング・カーソルのドラッグと解釈され得る。
【００２９】
一態様において、ツリー・ビューには、木要素が、インデントに対応しており、且つ、サブ要素を有する、即ち、サブツリーを隠しているか否かの視覚的表示が備えられている。この視覚的表示は、プラス、右向き三角形又は矢印のようなアイコンであってもよい。別の一例として、この視覚的表示は、木要素を様々な様式で、例えば、種々の色又は字形、太字体／斜字体か否か、などで描画することによって設けてもよい。一実施態様において、この視覚的表示には、未展開のレベル、即ち、サブツリーの複雑度のグラフィック的な示唆、例えば、隠された要素の量を示す数又はバーが付加的に備えられている。
【００３０】
更に、一態様において、ツリー・ビューに対する木構造の可視区画の位置を視覚化する１つ又は複数の位置インジケータが、ビューイング・ウィンドウの一部として示される。これは、例えば、ビューをスクロールすることによって、或いは、ビューの自動的な再構成によって、ビューイング・ウィンドウ内でツリー・ビューのいずれの部分も実際に見えなくなった場合に、ナビゲーション情報を提供する。位置インジケータは、例えば、スクロール・バー、より広い部分がその位置を示している小さいライン、及び／又は、ビューイング・ウィンドウの高さ／幅に対するその位置を示している簡素なラインであってもよい。位置インジケータがスクロール制御機能を提供する場合、それらの位置インジケータはビューイング・ウィンドウのスクロールには使用されない。その理由は、ポインティング・カーソルをツリー・ビュー上で移動させる際のビューの潜在的に不所望な再構成を回避するためである。別の一態様において、位置インジケータは、グラフィカル・ユーザ・インタフェースの別個のウィンドウ又はフレーム内に示される。
【００３１】
明示的に説明されていないが、これらの態様は、任意に組み合わせて、或いは、部分的に組み合わせて使用してもよい。
【図面の簡単な説明】
【００３２】
【図１】描画された木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画する方法の一実施形態を概略的に例示する図である。
【図２】描画された木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画するデータ処理装置の一実施形態を概略的に例示する図である。
【図３】描画された木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画するデータ処理装置の別の実施形態を概略的に例示する図である。
【図４】図４から図３２はポインティング・カーソルを介したユーザ・インタラクションの際にツリー・ビュー再構成メカニズムの影響を受けるツリー・ビューの一実施態様を概略的に例示する図である。特に、図４はツリー・ビューの一例を例示する図である。
【図５】ポインティング・カーソルがツリー・ビューのビューイング・ウィンドウの外側に在る状況を例示する図である。
【図６】ポインティング・カーソルがツリー要素に対して垂直方向に位置合わせされていない状況を例示する図である。
【図７】トップ・レベルの要素のみを有するアクティブなブランチが表示されている状況を例示する図である。
【図８】アクティブなブランチの次のサブレベルが自動的に展開されている状況を例示する図である。
【図９】アクティブなブランチの更なるサブレベルが自動的に展開されている状況を例示する図である。
【図１０】アクティブなブランチがサブレベルのツリー要素を介して選択される状況を例示する図である。
【図１１】上記サブレベルのツリー要素の下の次のサブレベルが自動的に展開されている状況を例示する図である。
【図１２】ツリー・レベルが自動的に折り畳まれる状況の第１の部分を例示する図である。
【図１３】ツリー・レベルが自動的に折り畳まれる状況の第２の部分を例示する図である。
【図１４】ツリー・レベルが自動的に折り畳まれる状況の第３の部分を例示する図である。
【図１５】サブレベルがスクロールによって自動的に展開される状況の第１の部分を例示する図である。
【図１６】サブレベルがスクロールによって自動的に展開される状況の第２の部分を例示する図である。
【図１７】サブレベルがスクロールによって自動的に展開される状況の第３の部分を例示する図である。
【図１８】サブレベルがスクロールによって自動的に折り畳まれる状況の第１の部分を例示する図である。
【図１９】サブレベルがスクロールによって自動的に折り畳まれる状況の第２の部分を例示する図である。
【図２０】サブレベルがスクロールによって自動的に折り畳まれる状況の第３の部分を例示する図である。
【図２１】一番上のブランチが自動的に展開される状況の第１の部分を例示する図である。
【図２２】一番上のブランチが自動的に展開される状況の第２の部分を例示する図である。
【図２３】一番下のブランチが自動的に展開される状況の第１の部分を例示する図である。
【図２４】一番下のブランチが自動的に展開される状況の第２の部分を例示する図である。
【図２５】アクティブなブランチが変更したときに自動的に折り畳み／展開する状況の第１の部分を例示する図である。
【図２６】アクティブなブランチが変更したときに自動的に折り畳み／展開する状況の第２の部分を例示する図である。
【図２７】一番上のブランチのスクロールによる自動的な展開の状況の第１の部分を例示する図である。
【図２８】一番上のブランチのスクロールによる自動的な展開の状況の第２の部分を例示する図である。
【図２９】一番下のブランチのスクロールによる自動的な展開の状況の第１の部分を例示する図である。
【図３０】一番下のブランチのスクロールによる自動的な展開の状況の第２の部分を例示する図である。
【図３１】スクロールによってアクティブなブランチが変更したときに自動的に折り畳み／展開する状況の第１の部分を例示する図である。
【図３２】スクロールによってアクティブなブランチが変更したときに自動的に折り畳み／展開する状況の第２の部分を例示する図である。
【発明を実施するための形態】
【００３３】
より良い理解のために、ここに提案した解決手段を、図面を参照しながら以下の記載において更に詳しく説明する。尚、この解決手段は、これらの代表的な実施形態には限定されないこと、また、明示する特徴は、添付の特許請求の範囲に規定された本発明の権利範囲から逸脱することなく、適宜、組み合わせる、及び／又は、修正することができることを理解されたい。
【００３４】
図１を参照すると、描画される木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画する、コンピュータによって実施される方法１０の一実施形態が概略的に示されている。この図示の実施形態によれば、この方法は、ツリーのコンパクトな提示のために、常時、ツリー・ビューを再構成する自動メカニズムを提供する。
【００３５】
最初のステップ１１において、複数のブランチで構成される木構造のツリー・ビューが生成される。図示された実施形態によれば、次のステップ１２において、ユーザが入力したモード選択に応じて、自動モードと手動モードとのいずれかの選択が行われる。手動モードでは、次のステップ１３において、ツリー・ビューがグラフィカル・ユーザ・インタフェースに対する更なる手動のユーザ入力に応じて更新される。
【００３６】
自動モードでは、下記のステップが行われる。
【００３７】
次のステップ１４で、ツリー・ビューに対するポインティング・カーソルの位置が特定される。この位置は、第１の方向に従う第１の位置値と、第１の方向に直交する第２の方向に従う第２の位置値とで構成される。
【００３８】
次のステップ１５で、ポインティング・カーソルの位置が第１の方向に従って合わされたブランチが、アクティブなブランチとして自動的に選択される。次のステップ１６で、展開されるべきアクティブなブランチのサブレベルが、そのサブレベルのインデント（ｉｎｄｅｎｔａｔｉｏｎ：字下げ）に対する第２の位置値によって特定される。次のステップ１７で、ツリー・ビューが、アクティブなブランチの特定されたサブレベルを展開してその他のブランチを折り畳むことによって、自動的に更新される。
【００３９】
次のステップ１８で、ツリー・ビューに対するポインティング・カーソルの位置が引き続き変更された場合、ポインティング・カーソル位置特定ステップ１４、アクティブ・ブランチ選択ステップ１５、サブレベル展開特定ステップ１６、及び、自動ツリー更新ステップ１７が、連続的に繰り返される。それ以外の場合、図示の実施形態において、本方法は、ツリー・ビューに対するポインティング・カーソルの任意の更なる位置変更を待つ。
【００４０】
次に、図２と図３を参照すると、描画される木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画するデータ処理装置の実施形態が概略的に示されている。図２に示された装置と図３に示された装置は、描画される木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画する装置の一部分として、上述の木構造描画方法の利点と特徴を実現できる。
【００４１】
図２に示されたデータ処理装置２０は、ユーザによるモード選択入力２２に応じて自動モードと手動モードとのいずれかを選択するように構成された選択ユニット２１を含んでいる。
【００４２】
グラフィック描写ユニット２３が、複数のブランチで構成される木構造のツリー・ビューを生成するように構成されている。グラフィック描写ユニット２３は、ツリー・ビューを表示する表示デバイスに接続されているか、或いは、接続可能であるか、或いは、この表示デバイスを含んでいる。手動モードにおいて、グラフィック描写ユニット２３は、グラフィカル・ユーザ・インタフェースへの更なる手動のユーザ入力に応じて、ツリー・ビューを更新する。自動モードにおいて、グラフィック描写ユニット２３は、少なくとも展開特定ユニット２７からの入力に応じて、ツリー・ビューを更新する。
【００４３】
位置特定ユニット２４が、グラフィック描写ユニット２３に接続されており、ツリー・ビューに対するポインティング・カーソルの位置を特定するように構成されている。この位置は、第１の方向に従う第１の位置値と、この第１の方向に直交する第２の方向に従う第２の位置値とで構成される。この位置は、ポインティング・カーソルをスクロールする又は移動させることによってポインティング・カーソルの位置を制御するユーザからの入力２５に基づいて特定される。
【００４４】
アクティブ・ブランチ選択ユニット２６が、ポインティング・カーソルの位置が第１の方向に従って合わされたブランチを、アクティブなブランチとして自動的に選択するように構成されており、また、展開特定ユニット２７が、展開されるべきアクティブなブランチのサブレベルを、そのサブレベルのインデントに対する第２の位置値によって特定するように構成されている。
【００４５】
グラフィック描写ユニット２３は、アクティブなブランチの特定されたサブレベルを展開してその他のブランチを折り畳むことによって、ツリー・ビューを自動的に更新するように構成されている。
【００４６】
図２に示された実施形態において、選択ユニット２１、グラフィック描写ユニット２３、位置特定ユニット２４、アクティブ・ブランチ選択ユニット２６、及び、展開特定ユニット２７は、直接、互いに通信する。別の一実施形態において、本装置は、これらのユニットのうちの１つ又は複数のユニットに接続され、それらの通信を制御する制御ユニットを有する。
【００４７】
選択ユニット２１、グラフィック描写ユニット２３、位置特定ユニット２４、アクティブ・ブランチ選択ユニット２６、及び、展開特定ユニット２７は、個別のデバイスとして、或いは、組み合わされて少なくとも１つのデバイス又は論理回路として設けられてもよいし、或いは、その処理を行うように構成されているか、少なくとも１つのメモリデバイスに接続されているか又はその少なくとも１つのメモリデバイスを含んでいるマイクロプロセッサか、マイクロコントローラ又はその他の処理デバイスか、コンピュータか、或いは、その他のプログラム可能な装置によって実行される機能であってもよい。
【００４８】
図３に示されているように、描画される木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画するデータ処理装置３０の一実施形態は、処理デバイス３１、表示デバイス３２、及び、命令を記憶しているメモリデバイス３３を備えており、メモリデバイス３３に記憶されている命令は、実行される際、処理デバイスに、
複数のブランチに編成される木構造を表示デバイス器３２によって示すツリー・ビューを生成させ、
ツリー・ビューに対するポインティング・カーソルの位置であって、第１の方向に従う第１の位置値と、この第１の方向に直交する第２の方向に従う第２の位置値とで構成されるこの位置を特定させ、
ポインティング・カーソルの位置が第１の方向に従って合わされたブランチをアクティブなブランチとして自動的に選択させ、
展開されるべきアクティブなブランチのサブレベルを、そのサブレベルのインデントに対する第２の位置値によって、特定させ、
アクティブなブランチの特定されたサブレベルを展開してその他のブランチを折り畳むことによって、表示デバイスが示すツリー・ビューを自動的に更新させる。
【００４９】
例えば、この処理デバイスは、前述の方法の１つに従って上述のステップを行うように適合化されたプロセッサであってもよい。一実施形態において、この適合化には、このプロセッサが前述の方法の１つに従ってステップを行うように構成される、例えば、プログラムされることが含まれる。
【００５０】
次に、図４から図３２を参照すると、一例として、自動モードにおけるポインティング・カーソルを介したユーザ・インタラクションの際にツリー・ビュー再構成メカニズムの影響を受ける分類ツリー・ビューの一実施態様が概略的に例示されている。
【００５１】
図４は、現在４個のサブレベルが展開されている、ビューイング・ウィンドウ内における分類木のツリー・ビューの一例を示している。ポインティング・カーソルの位置が、矢印によって示されている。このツリー・ビューにおいて木として表示されている分類は、９個のトップ・レベルの概念（Ｃｏｎｃｅｐｔ_１,…,Ｃｏｎｃｅｐｔ_９）を有しており、各々の上位概念、即ち、親のノード／要素が、９個の下位概念、即ち、子のノード／要素を備えており、全部で５つのレベルの階層が設けられている。図４から図３２に例示された例において、この分類が操作される。図４において、ポインティング・カーソルが垂直方向に位置合わせされたブランチのみが展開される一方で、その他のブランチが折り畳まれることによって、レベル５までの木要素が可視であるにもかかわらず、コンパクトな木の提示が実現されている。ここに提案された解決手段によれば、ツリー・ビューに対するポインティング・カーソルの位置が、ツリー・ビューの自動的な展開／折り畳みの操作の制御に使用される。木要素に対するポインティング・カーソルの垂直方向の位置が、その木のどのブランチをアクティブなブランチとして展開すべきかを制御する。その木のその他のブランチは、自動的に折り畳まれる。これらを非アクティブなブランチと呼称する。また、木レベルのインデントに対するポインティング・カーソルの水平方向の位置が、アクティブなブランチの何個のサブレベルを展開すべきかを制御する。木要素の自動的な展開／折り畳みに際して、実際のポインティング・カーソル位置が、更新されたツリー・ビューに対する新たな論理的なポインティング・カーソル位置を反映するように、更新されたツリー・ビューも自動的に垂直方向に動かされることがある。
【００５２】
図５は、ポインティング・カーソルがビューイング・ウィンドウを指し示していない時のツリー・ビューを示している。この状況は、ポインティング・カーソルが、システムのポインティング・カーソルである、即ち、特にツリー・ビューと相互作用するように作成されてはいない標準的なポインティング・カーソルである場合にのみ起こり得る。この場合においては、ポインティング・カーソルの垂直方向の位置にかかわらず、当然、アクティブなブランチは無い。従って、木のトップ・レベルの要素のみが表示されている。更に、図示された実施形態では、サブ要素インジケータがトップ・レベルの木要素に付与されている場合は、この木は、その一番上の要素が、その対応付けられたサブ要素インジケータも含めて、常に、ビューイング・ウィンドウの左上の隅に表示されている。これによって、この木のコンパクトで一貫した提示が、ポインティング・カーソルがビューイング・ウィンドウ内に移動させられた際のこの木におけるナビゲーション用の開始点として、ユーザに提供される。また、このような移動によって、ポインティング・カーソルがビューイング・ウィンドウに入った際のツリー・ビューに対する位置とその移動の方向とに従って、ツリー・ビューの自動的な再構成が早くも生じ得る。
【００５３】
図６は、ポインティング・カーソルが、ビューイング・ウィンドウを指し示しているが、いずれの木要素にも垂直方向に位置合わせされていない状況を例示している。いずれのブランチもアクティブなブランチとして選択されていないので、同じく、この木のトップ・レベルの要素のみが表示されている。従って、システムのポインティング・カーソルが、ビューイング・ウィンドウ内へ移動させられて、いずれの木要素にも垂直方向に位置合わせされていない場合は、ツリー・ビューは変化しない。しかしながら、表示すべき木が全く無い場合ではない限り、ポインティング・カーソルがビューイング・ウィンドウを指し示していない時には、一番上の木要素がビューイング・ウィンドウの上側縁端に表示されているので、ポインティング・カーソルを頂部からビューイング・ウィンドウ内へ移動させると、その進入位置は、一番上の木要素に垂直方向に位置合わせされることになる。ポインティング・カーソルが、ビューイング・ウィンドウを指し示しており、且つ、１つの木要素に垂直方向に位置合わせされている場合、この要素が属しているブランチが、アクティブなブランチである。アクティブなブランチのサブレベルがいくつ展開されてよいかは、ポインティング・カーソルの水平方向の位置によって決まる。この位置が、木レベル１と呼称されるトップの木レベルに対応している場合、即ち、ポインティング・カーソルが、木レベル２のインデントの左側に配置されている場合、アクティブなブランチのトップ・レベルの要素のみが、非アクティブなブランチのトップ・レベルの要素と共に表示される（図７参照）。ポインティング・カーソルは、図７に示された位置から、ツリー・ビューを変更せずに、ビューイング・ウィンドウ内で上下に移動させることができる。単にアクティブなブランチが在るか否かと、どのトップ・レベルの木要素がアクティブなブランチに対応付けられているかとは、ツリー・ビューに対するポインティング・カーソルの垂直方向の移動と共に変わる。
【００５４】
アクティブなブランチが在り、且つ、ポインティング・カーソルが右に移動させられて次の木レベルのインデントを越えると、そのアクティブなブランチの次のサブレベルが、もし存在すれば、自動的に展開される。ポインティング・カーソルが、展開されている木レベルの直接の上位要素に垂直方向に位置合わせされている場合、この次のサブレベルは、当然、この直接の上位要素のサブレベルである。それ以外の場合、この次のサブレベルは、アクティブなブランチの最も低い現在展開されている木レベルの一番上の木要素のサブレベルになるように規定されている。例えば、ポインティング・カーソルが、図７に示されたツリー・ビューにおける木インデントの１レベル分に等しい距離だけ右に移動させられた場合、その結果として生じるツリー・ビューは、図８に対応しており、その理由は、その結果として生じる水平方向のポインティング・カーソルの位置が木レベル２に対応している、即ち、ポインティング・カーソルが木レベル２のインデントと木レベル３のインデントとの間に配置されているからである。従って、ポインティング・カーソルが途中で木レベル２のインデントを通過すると、アクティブなブランチの木レベル２が自動的に展開される。ポインティング・カーソルを更に右に、木インデントの４レベル分の距離だけ移動させることによって、それぞれの対応するインデントを越える度に、アクティブなブランチのサブレベルが益々展開され、その結果、図９に示された再構成済みツリー・ビューが得られるが、結果として生じた水平方向のポインティング・カーソルの位置は、意図的に木レベル６に対応しており、これは、ポインティング・カーソルを、アクティブなブランチの最も低い木レベルのインデントの右側に在る更なるインデントへ移動させても、ツリー・ビューには更なる変化が生じないことを例示している。水平方向のポインティング・カーソルの位置に従う、アクティブなブランチのサブレベルの自動的な展開は、システムのポインティング・カーソルが、ビューイング・ウィンドウ内へ、その左側、右側又は上側から移動させられ、且つ、その進入位置が１つの木要素に垂直方向に位置合わせされている場合にも起こり、この１つの木要素は、常に、トップ・レベルの木要素の１つであり、その理由は、ポインティング・カーソルがビューイング・ウィンドウを指し示していない時には、これらのトップ・レベルの木要素のみが表示されているからである。ポインティング・カーソルが垂直方向に位置合わせされるトップ・レベルの木要素を備えたブランチは、アクティブなブランチに成り、ツリー・ビューに対するポインティング・カーソルの水平方向の位置に従って自動的に展開されるが、これは、アクティブなブランチのサブレベル数によって制限される。
【００５５】
通常、ユーザは、一度にアクティブなブランチの複数のサブレベルを展開しようとはせずに、先ず、現在展開されているサブレベルの木要素をブラウズして、目的とする要素が在るか否かを確認して、この要素の下のサブレベルを展開したいか否かを考える。例えば、ユーザが、図８に示されたツリー・ビューにおけるＣｏｎｃｅｐｔ_３_３の下のサブレベルを展開することに決めた場合、ユーザは、恐らく、ポインティング・カーソルを下方にＣｏｎｃｅｐｔ_３_３まで移動させて、Ｃｏｎｃｅｐｔ_３_３を備えたブランチをアクティブなブランチにして（図１０参照）、次に、ポインティング・カーソルを右に移動させて、次のサブレベルを展開するであろう（図１１参照）。ユーザが、図１１に示されたツリー・ビューにおける各々の木レベルの各３番目の要素のサブレベルを連続して展開する場合、ツリー・ビューは、より小さいビューイング・ウィンドウの下側縁端によって部分的に切り取られることを除けば、最終的に図４に対応することになる。
【００５６】
アクティブなブランチが存在し、且つ、ポインティング・カーソルが、左に移動させられて、木レベル１以外の最も低い現在展開されている木レベルのインデントを通過すると、この木レベルは自動的に折り畳まれる。ポインティング・カーソルが、折り畳まれる木レベルの直接の又は間接的な上位要素に垂直方向に位置合わせされている場合、アクティブなブランチは変わらない。例えば、ポインティング・カーソルが、図９に示されたツリー・ビューにおける木インデントの４レベル分に等しい距離だけ左に移動させられる場合、結果として生じるツリー・ビューは図８に対応しており、その理由は、結果として生じる水平方向のポインティング・カーソルの位置が木レベル２に対応しているからである。従って、アクティブなブランチの木レベル５は、ポインティング・カーソルが木レベル５のインデントを途中で通過した途端に自動的に折り畳まれ、その後、アクティブなブランチの木レベル４及び３は、それぞれの対応するインデントが通過された途端に、自動的に折り畳まれる。ポインティング・カーソルを更に左に木インデントの１レベル分だけ移動させることによって、アクティブなブランチの木レベル２も折り畳まれて、その結果として、図７に示されたツリー・ビューが生じる。同様に、図１１に示されたツリー・ビューにおいて、ポインティング・カーソルを左に移動させることによって、木レベル３のインデントがポインティング・カーソルによって通過された途端に、図１０に示されたツリー・ビューが生じる。
【００５７】
ポインティング・カーソルを左に移動させることによって、ポインティング・カーソルが、折り畳まれる木レベルの直接の、又は、間接的な上位要素に垂直方向に位置合わせされない場合は、単にこの木レベルを折り畳むことによって、ある任意の木要素が、もし在れば、この木レベルの要素によって以前占められていたスペースと、これらの要素に対するポインティング・カーソルの垂直方向の位置とに従って、ポインティング・カーソルに垂直方向に位置合わせされることになるであろう。従って、この任意の木要素を備えた新たなアクティブなブランチが存在することになるか、或いは、ユーザによる制御がなければ、もはやアクティブなブランチは存在しないことになるであろう。従って、図示の実施形態においては、更新されたツリー・ビューは、このケースでは、折り畳まれた木レベルの直接の上位要素がポインティング・カーソルに垂直方向に位置合わせされるように自動的に垂直方向に動かされ、その際、ポインティング・カーソルに対するこの上位要素の垂直方向の変位は、ポインティング・カーソルがツリー・ビューの更新前に垂直方向に位置合わせされた木要素に対するものと同じであり、その理由は、この位置が、更新されたツリー・ビュー内における新たな論理的なポインティング・カーソル位置になるからである。また、これによって、この上位要素を備えたブランチがアクティブなブランチになり、木に対するシームレスな更なるナビゲーションが可能になる。もう一つの手法は、代わりに、ポインティング・カーソルをこの上位要素の位置に移動させることであるが、これは、ユーザにとって紛らわしいと考えられる。更に、この上位要素は、現時点で可視でなくてもよいが、いずれにしても、更新されたツリー・ビューを動かす必要がある。
【００５８】
更新されたツリー・ビューを自動的に垂直方向に動かすことによって、木の一番上の要素が、ビューイング・ウィンドウの上側縁端からある程度の距離だけ離れて表示されることがある。そのような変位は、ユーザが目的とする次のサブレベルを展開してスクロールした途端に素早く解消される。利便性のために、別の実施形態において、本メカニズムには、ツリー・ビューの一番上の要素を再びビューイング・ウィンドウの上側縁端に移動させる補正機能が含まれており、これには、ポインティング・カーソルを、ポインティング・カーソルがツリー・ビューに対して同じ位置に留まるように移動させることが含まれている。この補正機能は、ユーザの要求に基づいて、例えばキーボード又はマウス制御又はマルチタッチ・ジェスチャによってトリガされてもよく、或いは、ユーザによる好みの設定に従って、そのような変位の発生時に自動的にトリガされてもよい。
【００５９】
図１２から図１４には、ポインティング・カーソルを左に移動させることによって生じる、更新されたツリー・ビューの垂直方向の動きを結果として伴う木レベルの自動的な折り畳みの一例が例示されている。図１２は、ポインティング・カーソルの移動前のビューを示している。今、ポインティング・カーソルが、木インデントの１レベル分に等しい距離だけ左に移動させられると、その結果として、図１３に示されたツリー・ビューが生じ、その理由は、ポインティング・カーソルが途中で木レベル３のインデントを通過した途端に、木レベル３が自動的に折り畳まれて、Ｃｏｎｃｅｐｔ_３_３_３の直接の上位要素であるＣｏｎｃｅｐｔ_３_３が、Ｃｏｎｃｅｐｔ_３_３_３がツリー・ビューの更新前に表示されていた垂直方向の位置に表示されるように、更新されたツリー・ビューが自動的に下方に動かされるからである。ポインティング・カーソルが、更に、木インデントの１レベル分だけ左に移動させられると、図１４に示されたツリー・ビューが生じ、その際、図１４におけるＣｏｎｃｅｐｔ_３が、図１３におけるＣｏｎｃｅｐｔ_３_３と同じ垂直方向の位置に表示される。
【００６０】
また、木レベルの自動的な展開又は折り畳みは、ツリー・ビューが、不変のポインティング・カーソル位置に対して水平方向に変位して、その結果として、水平方向のポインティング・カーソル位置が、前と異なる木レベルに対応する場合、ビューイング・ウィンドウの水平方向のスクロールによってトリガされてもよく、その際、自動的な展開は、アクティブなブランチのサブレベル数によって制限される。原則として、ビューイング・ウィンドウを右にスクロールすることは、右に最大限に到達したツリー・ビューの要素が、この要素がビューイング・ウィンドウ内で実際に可視であるか否かに関わらず、ビューイング・ウィンドウの右側縁端に右詰めされることによって、制限される。しかしながら、アクティブなブランチの次のサブレベルが存在する場合には、展開可能であるためには、アクティブなブランチの最も低い現在展開されている木レベルのインデントの右に在る次の木レベルのインデントが、水平方向のスクロールと水平方向のポインティング・カーソル移動との任意の組み合わせにより、ポインティング・カーソルによってアクセス可能であるべきであるので、ビューイング・ウィンドウは、このインデントがポインティング・カーソルによって明らかにアクセス可能であるように右にスクロールされることを許容する。この結果、右に最大限に到達したツリー・ビューの要素は、この要素が実際に可視であり、且つ、明らかにこのインデントに伸延するほど長くなければ、ビューイング・ウィンドウの右側縁端からある程度の距離だけ離れて示される。他方、木のトップ・レベルの要素の左側にはアクセスされる木レベルのインデントが無いので、ビューイング・ウィンドウを左にスクロールすることは、これらのトップ・レベルの要素が、これらに対応付けられたサブ要素インジケータが付けられている場合はそれらのサブ要素インジケータも含めて、ビューイング・ウィンドウの左側縁端に示されることによって、制限され得る。
【００６１】
図１５から図１７には、ビューイング・ウィンドウを右にスクロールすることによって生じる、アクティブなブランチのサブレベルの自動的な展開の一例が例示されている。図１５は、スクロール前のビューを示している。ポインティング・カーソルがビューイング・ウィンドウの右側縁端に殆ど到達しているので、アクティブなブランチの更なるサブレベルは、ポインティング・カーソルを右に移動させることによっては展開できず、その代わりにビューイング・ウィンドウを右にスクロールすることによって展開しなければならない。更に、アクティブなブランチの木レベル３の要素がビューイング・ウィンドウの右側縁端によって切られているので、ユーザは、これらの要素のテキストをもっと読めるようにビューを右にスクロールしたいとも思うかもしれない。次に、ビューイング・ウィンドウが、木インデントの１レベル分に等しい距離だけ、右にスクロールされ、その結果として、不変のポインティング・カーソル位置が水平方向に木レベル４に対応し、これにより、アクティブなブランチの木レベル４が自動的に展開される（図１６参照）。アクティブなブランチの次のサブレベルを展開する場合、或いは、アクティブなブランチの木レベル３の依然として切られた要素を読めるようにする場合、ビューイング・ウィンドウが、今再び、木インデントの１レベル分だけ右にスクロールされ、その結果として、不変のポインティング・カーソル位置が水平方向に木レベル５に対応し、これにより、アクティブなブランチの木レベル５が自動的に展開される（図１７参照）。次に、ユーザは、アクティブなブランチの更なるサブレベルを展開しようとして、ビューイング・ウィンドウを更に右にスクロールするかもしれないが、これは、そのようなサブレベルが無いので、不変のツリー・ビューが、アクティブなブランチの木レベル５の要素が、これら全ての要素が木レベル６のインデントに明らかに伸延するほどに長い場合に、もはやビューイング・ウィンドウの右側縁端によって切られなくなり、ビューイング・ウィンドウの右側縁端に対するこれらの要素の更なる変位が不要となるまで、ビューイング・ウィンドウ内で左に動かされることになるだけである。その代わりに、アクティブなブランチの木レベル３の要素のテキストを読めるようにスクロールが行われた場合、ユーザは、次に、おそらく、ポインティング・カーソルを、その水平方向の位置が木レベル３に対応して自動的にアクティブなブランチの木レベル４及び５を再び折り畳むまで、左に移動させるであろう。ポインティング・カーソルが、ビューイング・ウィンドウの、左へのスクロールによって折り畳まれる木レベルの直接の又は間接的な上位要素に垂直方向に合わせされている場合、アクティブなブランチは変わらない。例えば、図１７に示されたビューイング・ウィンドウが、木インデントの１レベル分に等しい距離だけ左にスクロールされると、その結果として生じるツリー・ビューは図１６に対応しており、その理由は、不変のポインティング・カーソル位置が木レベル４に水平方向に対応しており、従って、アクティブなブランチの木レベル５が単純に自動的に折り畳まれるからである。更なる木インデントの１レベル分の左へのスクロール操作によって、アクティブなブランチの木レベル４も自動的に折り畳まれて、その結果として、図１５に示されたツリー・ビューが生じる。ポインティング・カーソルが、ビューイング・ウィンドウの、左へのスクロールによって折り畳まれる木レベルの直接の又は間接的な上位要素に垂直方向に位置合わせされていない場合、同様の状況下でポインティング・カーソルを左に移動させる際の動作と同様に且つ同じ理由で、この更新されたツリー・ビューも、折り畳まれた木レベルの直接の上位要素が不変のポインティング・カーソル位置に垂直方向に位置合わせされるように垂直方向に動かされる。これによって、再び、ツリー・ビューの一番上の要素がビューイング・ウィンドウの上側縁端に対して変位し得るが、これは前述の如く解消できる。
【００６２】
図１８から図２０には、ビューイング・ウィンドウを左にスクロールすることによって生じる、更新されたツリー・ビューの垂直方向の動きを結果として伴う木レベルの自動的な折り畳みの一例が例示されている。図１８は、スクロール前のビューを示している。次に、ビューイング・ウィンドウが、木インデントの１レベル分に等しい距離だけ左にスクロールされ、その結果として、不変のポインティング・カーソル位置が水平方向において木レベル４に対応し、これにより、Ｃｏｎｃｅｐｔ_２_２_２_２_２の直接の上位要素であるＣｏｎｃｅｐｔ_２_２_２_２が、Ｃｏｎｃｅｐｔ_２_２_２_２_２がツリー・ビューの更新前に表示されていた垂直方向の位置に表示されるように、木レベル５が自動的に折り畳まれて、更新されたツリー・ビューが自動的に下方に動かされる（図１９参照）。更なる左への木インデントの１レベル分のスクロール操作によって、図２０に示されたツリー・ビューが生じ、図２０におけるＣｏｎｃｅｐｔ_２_２_２が、図１９におけるＣｏｎｃｅｐｔ_２_２_２_２と同じ垂直方向の位置に表示される。
【００６３】
また、木レベルの自動的な展開又は折り畳みは、ツリー・ビューに対するポインティング・カーソルの結果として生じる垂直方向の移動によって非アクティブなブランチがアクティブなブランチになる、或いは、その逆が生じる場合に、ビューイング・ウィンドウ内におけるポインティング・カーソルの垂直方向の移動によって、或いは、ビューイング・ウィンドウの垂直方向のスクロールによって、トリガされてもよい。これには、現在のアクティブなブランチが存在する場合には、その現在のアクティブなブランチの自動的な折り畳みと、新たなアクティブなブランチが存在する場合には、その新たなアクティブなブランチの自動的な展開とが含まれ、後者は、ツリー・ビューに対するポインティング・カーソルの水平方向の位置に依存し、且つ、その新たなアクティブなブランチのサブレベル数によって制限される。これらの動作の前後で表示されるツリー・ビューは、ある程度の木要素を共通に有することがあるので、ツリー・ビューの結果として生じる更新は、全く変化が見られなくなる時点まで、実際にある程度見て分かることがある。更に、ここに提案されたメカニズムは、実際のポインティング・カーソル位置が、更新されたツリー・ビューに対する新たな論理的なポインティング・カーソル位置を反映するように、この更新されたツリー・ビューを自動的に垂直方向に動かしてもよい。これによって、再び、ツリー・ビューの一番上の要素がビューイング・ウィンドウの上側縁端に対して変位し得るが、これは前述のように解消できる。
【００６４】
標準的なツリー・ビューの垂直方向のスクロールは、通常、ツリー・ビューの一番上の要素がビューイング・ウィンドウの上側縁端に示されることと、ツリー・ビューの一番下の要素がビューイング・ウィンドウの下側縁端に示されることと、によって制限される。しかしながら、この方式は、ここに提案されたメカニズムを用いるツリー・ビューには、うまく適合しない。第一に、ツリー・ビューに対するポインティング・カーソルの移動に基づくツリー・ビューの自動的な再構成は、ビューイング・ウィンドウの上側又は下側の縁端に対する、それぞれ、ツリー・ビューの一番上又は一番下の要素の垂直方向の変位をとにかく頻繁に生じさせるので、この動作を、ビューイング・ウィンドウの垂直方向のスクロールについてのみ回避する効用は殆ど無い。第二に、ビューイング・ウィンドウの垂直方向のスクロール自体が頻繁にビューの再構成を生じさせるので、スクロールの前に表示されているツリー・ビューに従って、そのようなスクロールを制限すれば、その結果として、目的とする木要素に到達するために、スクロール操作とポインティング・カーソルの移動とが交互に必要となる。その理由は、更なるスクロールが、それが更なるポインティング・カーソルの移動によって再びロック解除されるまで妨げられ得るからである。更に、仮に、ここに提案されたメカニズムを用いるアプリケーションが、その代わりに、更新されたツリー・ビューがそのような標準的なスクロールの制限に従って表示され得るかをチェックして、意図されるスクロール距離がこれらの制限に違反するならば、そのスクロール距離は低減される必要があり、このチェックが、再び、或いは、複数回行われる必要があるであろう。従って、図示の実施形態において、ここに提案された解決手段による垂直方向のスクロールは、ツリー・ビューの一番上又は一番下の要素が、それぞれ、ビューイング・ウィンドウの上方又は下方のスクロールについて、ビューイング・ウィンドウ内においてポインティング・カーソルに垂直方向に位置合わせされることによって制限される。これによって、ユーザは、不変のポインティング・カーソルの位置の下で、ツリー・ビュー全体を上方又は下方にスクロールできるようになる。更に、ユーザは、ツリー・ビューのうちのどれだけが、ポインティング・カーソルの上方又は下方に表示できるかを、ビューイング・ウィンドウ内において、対応する垂直方向のポインティング・カーソルの位置を選ぶことによって、容易に選択できる。ビューイング・ウィンドウ内におけるポインティング・カーソルの垂直方向の移動によって、或いは、ビューイング・ウィンドウの垂直方向のスクロールによって生じた、ツリー・ビューに対するポインティング・カーソルの垂直方向の変位の結果生じた、ツリー・ビューに対する新たな論理的なポインティング・カーソル位置は、以下、新論理的ポインティング・カーソル位置と呼称するが、以下、適合化ツリー・ビュー（ｔａｉｌｏｒｅｄ  ｔｒｅｅ  ｖｉｅｗ）と呼称する概念的なツリー・ビューによって規定される。この適合化ツリー・ビューは、全ての要素とブランチが、垂直方向のポインティング・カーソル位置に関わらず、ポインティング・カーソルの水平方向��位置に対応する木レベルまで展開された実際のツリー・ビューであり、その際、実際のツリー・ビューに対する水平方向のポインティング・カーソル位置と、適合化ツリー・ビューに対する水平方向のポインティング・カーソル位置とが同じであると定義される。実際のツリー・ビューに対する垂直方向のポインティング・カーソル位置と、適合化ツリー・ビューに対する垂直方向のポインティング・カーソル位置とは、次のように定義される。即ち、ポインティング・カーソルが、実際のツリー・ビューの一番上の要素の上方に置かれている時に、このポインティング・カーソルは、概念的に、適合化ツリー・ビューの一番上の要素の上方にも置かれており、且つ、これらの要素からの垂直方向の距離は同じである。ポインティング・カーソルが、実際のツリー・ビューの１つの要素に垂直方向に位置合わせされている時に、このポインティング・カーソルは、概念的に、適合化ツリー・ビューの同じ要素にも垂直方向に位置合わせされており、且つ、これらの要素に対する垂直方向の変位は同じである。ポインティング・カーソルが、実際のツリー・ビューの一番下の要素の下方に置かれている時に、このポインティング・カーソルは、概念的に、適合化ツリー・ビューの一番下の要素の下方にも置かれており、且つ、これらの要素からの垂直方向の距離は同じである。新論理的ポインティング・カーソル位置は、実際のツリー・ビューに対するポインティング・カーソルの垂直方向の変位が、同じ方向と距離で適合化ツリー・ビューに対して代わりに適用された場合に、ポインティング・カーソルが適合化ツリー・ビューに対して有する位置であると定義される。
【００６５】
ポインティング・カーソルがビューイング・ウィンドウ内においてツリー・ビューの一番上の要素の上方に置かれている時には、アクティブなブランチは存在せず、その結果として、木のトップ・レベルの要素のみが表示されている（図２１参照）。ポインティング・カーソルは、ビューイング・ウィンドウ内において、ツリー・ビューの一番上の要素の上方に留まる限り、ツリー・ビューを変更せずに、図２１に示された位置から上下に移動させることができる。ポインティング・カーソルが下方に移動させられて空の領域とツリー・ビューの一番上の要素との間の垂直方向の境界を通過する時に、このポインティング・カーソルは、空の領域と適合化ツリー・ビューの一番上の要素との間の垂直方向の境界も通過することになる。従って、新論理的ポインティング・カーソル位置が、適合化ツリー・ビューの一番上の要素に垂直方向に位置合わせされ、この一番上の要素を備えたブランチが新たなアクティブなブランチになって自動的に展開される。ツリー・ビューの一番上の要素は、常に、適合化ツリー・ビューの一番上の要素と同じ木要素であるから、新論理的ポインティング・カーソル位置は実際のポインティング・カーソル位置と一致しており、更新されたツリー・ビューの垂直方向の動きは必要ない。例えば、図２１に示されたビューイング・ウィンドウにおけるポインティング・カーソルが、図２２に示された位置まで下方に移動させられた場合、その結果として生じるツリー・ビューは、図２２に対応しており、その理由は、ポインティング・カーソルが空の領域とＣｏｎｃｅｐｔ_１との間の垂直方向の境界を途中で通過した途端に、新論理的ポインティング・カーソル位置が垂直方向にＣｏｎｃｅｐｔ_１に合わされて、Ｃｏｎｃｅｐｔ_１を備えたブランチが、アクティブなブランチになり、水平方向のポインティング・カーソル位置に従って、木レベル２まで展開されるからである。ポインティング・カーソルが、ビューイング・ウィンドウ内において上方に移動させられてツリー・ビューの一番上の要素とその上の空の領域との間の垂直方向の境界を通過する時に、そのポインティング・カーソルは、適合化ツリー・ビューの一番上の要素とその上の空の領域との間の垂直方向の境界も通過することになる。従って、新論理的ポインティング・カーソル位置は、正に、ツリー・ビューの一番上の要素の上方に在り、この一番上の要素を備えたブランチは、もはやアクティブなブランチではなくなり、自動的に折り畳まれる。ツリー・ビューの一番上の要素と適合化ツリー・ビューの一番上の要素とは同一であるので、新論理的ポインティング・カーソル位置は実際のポインティング・カーソル位置と一致して、更新されたツリー・ビューの垂直方向の動きは必要ない。例えば、図２２に示されたビューイング・ウィンドウ内におけるポインティング・カーソルが、図２１に示された位置まで上方に移動させられた場合、その結果として生じるツリー・ビューは図２１に対応しており、その理由は、ポインティング・カーソルがＣｏｎｃｅｐｔ_１とその上の空の領域との間の垂直方向の境界を途中で通過した途端に、新論理的ポインティング・カーソル位置がいずれの木要素にも垂直方向に合わされず、Ｃｏ��ｃｅｐｔ_１を備えたブランチは、もはやアクティブなブランチではなくなり、自動的に折り畳まれるからである。
【００６６】
ポインティング・カーソルがビューイング・ウィンドウ内においてツリー・ビューの一番下の要素の下方に置かれている時には、アクティブなブランチは存在せず、その結果として、木のトップ・レベルの要素のみが表示されている（図２３参照）。ポインティング・カーソルは、ビューイング・ウィンドウ内において、ツリー・ビューの一番下の要素の下方に留まる限り、ツリー・ビューを変更せずに、図２３に示された位置から上下に移動させることができる。ポインティング・カーソルが上方に移動させられて空の領域とツリー・ビューの一番下の要素との間の垂直方向の境界を通過する時に、このポインティング・カーソルは、空の領域と適合化ツリー・ビューの一番下の要素との間の垂直方向の境界も通過することになる。従って、新論理的ポインティング・カーソル位置が、適合化ツリー・ビューの一番下の要素に垂直方向に位置合わせされ、この一番下の要素を備えたブランチがアクティブなブランチになって自動的に展開される。ツリー・ビューの一番下の要素は、適合化ツリー・ビューの一番下の要素と同じ木要素ではないこともあるので、この結果として、新論理的ポインティング・カーソル位置は実際のポインティング・カーソル位置と一致しないこともある。これが事実である場合、更新されたツリー・ビューも、新論理的ポインティング・カーソル位置と実際のポインティング・カーソル位置とが同じになるように、自動的に垂直方向に動かされて、その結果として、更新されたツリー・ビューの一番下の要素が、ツリー・ビューの一番下の要素がツリー・ビューの更新前に表示されていた垂直方向の位置に表示される。例えば、図２３に示されたビューイング・ウィンドウにおけるポインティング・カーソルが図２４に示された位置まで上方に移動させられた場合、その結果として生じるツリー・ビューは図２４に対応しており、その理由は、ポインティング・カーソルが空の領域とＣｏｎｃｅｐｔ_９との間の垂直方向の境界を途中で通過した途端に、新論理的ポインティング・カーソル位置が垂直方向にＣｏｎｃｅｐｔ_９_９に合わされて、Ｃｏｎｃｅｐｔ_９_９を備えたブランチが、アクティブなブランチになり、水平方向のポインティング・カーソル位置に従って木レベル２まで展開され、そして、更新されたツリー・ビューは、Ｃｏｎｃｅｐｔ_９_９が、Ｃｏｎｃｅｐｔ_９がツリー・ビューの更新前に表示されていた垂直方向の位置に表示されるように上方に動かされるからである。ポインティング・カーソルがビューイング・ウィンドウ内において下方に移動させられて、ツリー・ビューの一番下の要素とその下の空の領域との間の垂直方向の境界を通過する時に、そのポインティング・カーソルは、適合化ツリー・ビューの一番下の要素とその下の空の領域との間の垂直方向の境界も通過することになる。従って、新論理的ポインティング・カーソル位置は、正に、ツリー・ビューの一番下の要素の下方に在り、この一番下の要素を備えたブランチは、もはやアクティブなブランチではなくなり、自動的に折り畳まれる。ツリー・ビューの一番下の要素は、更新されたツリー・ビューの一番下の要素と同じ木要素ではないこともあるので、この結果として、新論理的ポインティング・カーソ���位置は実際のポインティング・カーソル位置と一致しないこともある。これが事実である場合、更新されたツリー・ビューも、新論理的ポインティング・カーソル位置と実際のポインティング・カーソル位置とが同じになるように、自動的に垂直方向に動かされ、その結果として、更新されたツリー・ビューの一番下の要素が、ツリー・ビューの一番下の要素がツリー・ビューの更新前に表示されていた垂直方向の位置に表示される。例えば、図２４に示されたビューイング・ウィンドウにおけるポインティング・カーソルが、図２３に示された位置まで下方に移動させられた場合、その結果として生じるツリー・ビューは図２３に対応しており、その理由は、ポインティング・カーソルがＣｏｎｃｅｐｔ_９_９とその下の空の領域との間の垂直方向の境界を途中で通過した途端に、新論理的ポインティング・カーソル位置がいずれの木要素にも垂直方向に位置合わせされず、Ｃｏｎｃｅｐｔ_９_９を備えたブランチは、もはやアクティブなブランチではなくなって自動的に折り畳まれ、そして、更新されたツリー・ビューは、Ｃｏｎｃｅｐｔ_９が、Ｃｏｎｃｅｐｔ_９_９がツリー・ビューの更新前に表示されていた垂直方向の位置に表示されるように下方に動かされるからである。
【００６７】
ポインティング・カーソルが移動してツリー・ビューの２つの垂直方向に隣接する要素相互間の垂直方向の境界を通過すると、その結果として、現在のアクティブなブランチが自動的に折り畳まれて新たなアクティブなブランチが自動的に展開されることによって、アクティブなブランチが変更される。新論理的ポインティング・カーソル位置は、移動の方向に従って、ポインティング・カーソルが前に垂直方向に位置合わせされていた木要素の直ぐ上の又は下の、適合化ツリー・ビューの要素に垂直方向に合わされる。ツリー・ビューの更新によって、新論理的ポインティング・カーソル位置が実際のポインティング・カーソル位置と一致しない場合、更新されたツリー・ビューも、新論理的ポインティング・カーソル位置と実際のポインティング・カーソル位置とが同じになるように、自動的に垂直方向に動かされ、その結果として、ポインティング・カーソルに垂直方向に位置合わせされている更新されたツリー・ビューの要素が、ポインティング・カーソルが移動させられたツリー・ビューの要素がツリー・ビューの更新前に表示されていた垂直方向の位置に表示される。例えば、図２５に示されたビューイング・ウィンドウにおけるポインティング・カーソルが、図２６に示された位置まで下方に移動させられた場合、その結果として生じるツリー・ビューは図２６に対応しており、その理由は、ポインティング・カーソルがＣｏｎｃｅｐｔ_１_９とＣｏｎｃｅｐｔ_２との間の垂直方向の境界を途中で通過した途端に、新論理的ポインティング・カーソル位置が垂直方向にＣｏｎｃｅｐｔ_２に合わされて、Ｃｏｎｃｅｐｔ_１_９を備えたブランチは、もはやアクティブなブランチではなくなり、自動的に折り畳まれて、Ｃｏｎｃｅｐｔ_２を備えたブランチが、新たなアクティブなブランチになり、水平方向のポインティング・カーソル位置に従って木レベル２まで展開され、そして、更新されたツリー・ビューは、Ｃｏｎｃｅｐｔ_２が、これがツリー・ビューの更新前に表示されていた同じ垂直方向の位置に表示されるように、下方に動かされるからである。図２６に示されたビューイング・ウィンドウにおけるポインティング・カーソルが、図２５に示された位置まで上方に移動させられた場合、その結果として生じるツリー・ビューは図２５に対応しており、その理由は、ポインティング・カーソルがＣｏｎｃｅｐｔ_２とＣｏｎｃｅｐｔ_１との間の垂直方向の境界を途中で通過した途端に、新論理的ポインティング・カーソル位置が垂直方向にＣｏｎｃｅｐｔ_１_９に合わされて、Ｃｏｎｃｅｐｔ_２を備えたブランチは、もはやアクティブなブランチではなくなり、自動的に折り畳まれて、Ｃｏｎｃｅｐｔ_１_９を備えたブランチが、新たなアクティブなブランチになり、水平方向のポインティング・カーソル位置に従って木レベル２まで展開され、そして、更新されたツリー・ビューは、Ｃｏｎｃｅｐｔ_１_９が、Ｃｏｎｃｅｐｔ_１がツリー・ビューの更新前に表示されていた垂直方向の位置に表示されるように、上方に動かされるからである。
【００６８】
一貫性を保つために、ポインティング・カーソルが新たなアクティブなブランチに下側から、且つ、空の領域から又は現在のアクティブなブランチから移動させられた場合のようなアクティブなブランチのサブレベルの自動的な展開は、システムのポインティング・カーソルがビューイング・ウィンドウ内に下側から移動させられて、その進入位置が木要素に垂直方向に位置合わせされる時にも生じ、この木要素は、常にトップ・レベルの木要素の１つである。その理由は、ポインティング・カーソルがビューイング・ウィンドウを指し示していない時にはそれらのトップ・レベルの木要素のみが表示されているからである。新論理的ポインティング・カーソル位置が垂直方向に位置合わせされたこの木要素を備えたブランチが、アクティブなブランチになり、ツリー・ビューに対するポインティング・カーソルの水平方向の位置に従って、且つ、このアクティブなブランチのサブレベル数による制限の下で自動的に展開され、そして、更新されたツリー・ビューは、新論理的ポインティング・カーソル位置が実際のポインティング・カーソル位置と一致するように、自動的に垂直方向に動かされる。
【００６９】
ビューイング・ウィンドウの垂直方向のスクロールは、ビューイング・ウィンドウ内におけるポインティング・カーソルの垂直方向の移動と同様に処理されるが、次の２つの顕著な違いがある。第一に、垂直方向のポインティング・カーソルの移動が常に連続しているのに対して、垂直方向のスクロールは連続していないこともあり、その結果として、新論理的ポインティング・カーソル位置が、適合化ツリー・ビューの一番上の要素、一番下の要素、或いは、垂直方向に隣接した要素ではなく、任意の要素に垂直方向に位置合わせされることがある。第二に、ビューイング・ウィンドウ内において、ポインティング・カーソルをツリー・ビューの上側又は下側で移動させることは制限されないのに対して、ビューイング・ウィンドウの垂直方向のスクロールは、前述のように制限されることがある。図示の実施形態においては、垂直方向のスクロールの制限が適用される。更に、次の例では、木要素の高さの倍数に等しい距離分の垂直方向のスクロールのみを例示する。ポインティング・カーソルがツリー・ビューの再構成の前後で木要素に垂直方向に位置合わせされることを前提条件とすると、その他のスクロール距離によれば、再構成されたツリー・ビュー内においてポインティング・カーソルが垂直方向に位置合わせされる木要素と、ツリー・ビューの再構成の前にポインティング・カーソルが垂直方向に位置合わせされていた木要素とのポインティング・カーソルに対する垂直方向の変位はさらに異なることになるであろう。
【００７０】
ポインティング・カーソルがビューイング・ウィンドウ内においてツリー・ビューの一番上の要素の上方に置かれている時、新論理的ポインティング・カーソル位置が、適合化ツリー・ビューのいずれの要素にも垂直方向にまだ位置合わせされていない限り、ビューイング・ウィンドウは下方のみにスクロールでき、その結果として、不変のツリー・ビューが、ビューイング・ウィンドウ内において上方に単純に動かされる。新論理的ポインティング・カーソル位置が初めて適合化ツリー・ビューの要素に垂直方向に位置合わせされた途端に、この要素を備えたブランチがアクティブなブランチになって自動的に展開される。ツリー・ビューの更新によって、新論理的ポインティング・カーソル位置が実際のポインティング・カーソル位置と一致しない場合、更新されたツリー・ビューも、新論理的ポインティング・カーソル位置と実際のポインティング・カーソル位置とが同じになるように自動的に垂直方向に動かされる。例えば、図２７に示されたビューイング・ウィンドウが４個の木要素の高さに等しい距離だけ下方にスクロールされると、その結果として生じるツリー・ビューは、図２８に対応しており、その理由は、新論理的ポインティング・カーソル位置が垂直方向にＣｏｎｃｅｐｔ_１_１_１に合わされて、このＣｏｎｃｅｐｔ_１_１_１を備えたブランチが、アクティブなブランチになり、水平方向のポインティング・カーソル位置に従って、木レベル３まで展開されるからである。新論理的ポインティング・カーソル位置が既に実際のポインティング・カーソル位置と一致しているので、更新されたツリー・ビューが垂直方向に動かされる必要はない。
【００７１】
ポインティング・カーソルがビューイング・ウィンドウ内においてツリー・ビューの一番下の要素の下方に置かれている時、新論理的ポインティング・カーソル位置が、適合化ツリー・ビューのいずれの要素にも垂直方向にまだ位置合わせされていない限り、ビューイング・ウィンドウは上方のみにスクロールでき、その結果として、不変のツリー・ビューが、ビューイング・ウィンドウ内において下方に単純に動かされる。新論理的ポインティング・カーソル位置が初めて適合化ツリー・ビューの要素に垂直方向に位置合わせされた途端に、この要素を備えたブランチがアクティブなブランチになって自動的に展開される。ツリー・ビューの更新によって、新論理的ポインティング・カーソル位置が実際のポインティング・カーソル位置と一致しない場合、更新されたツリー・ビューも、新論理的ポインティング・カーソル位置と実際のポインティング・カーソル位置とが同じになるように自動的に垂直方向に動かされる。例えば、図２９に示されたビューイング・ウィンドウが４個の木要素の高さに等しい距離だけ上方にスクロールされると、その結果として生じるツリー・ビューは、図３０に対応しており、その理由は、新論理的ポインティング・カーソル位置が垂直方向にＣｏｎｃｅｐｔ_９_９_７に合わされて、このＣｏｎｃｅｐｔ_９_９_７を備えたブランチが、アクティブなブランチになり、水平方向のポインティング・カーソル位置に従って、木レベル３まで展開され、更新されたツリー・ビューは、新論理的ポインティング・カーソル位置と実際のポインティング・カーソル位置とが同じになるように、上方に動かされるからである。
【００７２】
アクティブなブランチが存在し、且つ、ビューイング・ウィンドウの垂直方向のスクロールによって、新論理的ポインティング・カーソル位置が適合化ツリー・ビューの要素に垂直方向に位置合わせされ、その際、この木要素が、ポインティング・カーソルが前に垂直方向に位置合わせされていた木要素と異なる場合、アクティブなブランチが変わる。従って、現在のアクティブなブランチが自動的に折り畳まれて、新たなアクティブなブランチが自動的に展開される。ツリー・ビューの更新によって、新論理的ポインティング・カーソル位置が実際のポインティング・カーソル位置と一致しない場合、更新されたツリー・ビューも、新論理的ポインティング・カーソル位置と実際のポインティング・カーソル位置とが同じになるように自動的に垂直方向に動かされる。例えば、図３１に示されたビューイング・ウィンドウが４個の木要素の高さに等しい距離だけ下方にスクロールされると、その結果として生じるツリー・ビューは、図３２に対応しており、その理由は、新論理的ポインティング・カーソル位置が垂直方向にＣｏｎｃｅｐｔ_８_９_２に合わされて、Ｃｏｎｃｅｐｔ_８_８_８を備えたブランチは、もはやアクティブなブランチではなくなって自動的に折り畳まれ、Ｃｏｎｃｅｐｔ_８_９_２を備えたブランチが、新たなアクティブなブランチになり、水平方向のポインティング・カーソル位置に従って、木レベル３まで展開され、更新されたツリー・ビューは、Ｃｏｎｃｅｐｔ_８_９_２が、Ｃｏｎｃｅｐｔ_８_８_８がツリー・ビューの更新前に表示されていた垂直方向の位置に表示されるように、下方に動かされるからである。図３２に示されたビューイング・ウィンドウが４個の木要素の高さに等しい距離だけ上方にスクロールされると、その結果として生じるツリー・ビューは、図３１に対応しており、その理由は、新論理的ポインティング・カーソル位置が垂直方向にＣｏｎｃｅｐｔ_８_８_８に合わされて、Ｃｏｎｃｅｐｔ_８_９_２を備えたブランチは、もはやアクティブなブランチではなくなって自動的に折り畳まれ、Ｃｏｎｃｅｐｔ_８_８_８を備えたブランチが、新たなアクティブなブランチになり、水平方向のポインティング・カーソル位置に従って、木レベル３まで展開され、更新されたツリー・ビューは、Ｃｏｎｃｅｐｔ_８_８_８が、Ｃｏｎｃｅｐｔ_８_９_２がツリー・ビューの更新前に表示されていた垂直方向の位置に表示されるように、上方に動かされるからである。
【００７３】
ビューイング・ウィンドウを上方又は下方にスクロールすることによって、新論理的ポインティング・カーソル位置がツリー・ビューの、それぞれ、一番上の要素の上側又は一番下の要素の下側になるかもしれない場合、スクロールの制限が機能して、新論理的ポインティング・カーソル位置が垂直方向に適合化ツリー・ビューの、それぞれ、一番上又は一番下の要素に合わされるようにスクロールの距離を低減する。従って、現在のアクティブなブランチが、存在する場合には、自動的に折り畳まれて、適合化ツリー・ビューの、それぞれ、一番上又は一番下の要素を備えたブランチが新たなアクティブなブランチになり、自動的に展開される。ツリー・ビューの更新によって、新論理的ポインティング・カーソル位置が実際のポインティング・カーソル位置と一致しない場合、更新されたツリー・ビューも、新論理的ポインティング・カーソル位置と実際のポインティング・カーソル位置とが同じになるように、自動的に垂直方向に動かされる。これは、ビューイング・ウィンドウの垂直方向のスクロールによって、直接、新論理的ポインティング・カーソル位置が適合化ツリー・ビューの、それぞれ、一番上又は一番下の要素に垂直方向に合わされることによって生じる動作と同じ動作である。
【００７４】
当業者であれば理解できるように、本原理の態様は、装置、システム、方法、或いは、コンピュータ可読媒体として実施できる。従って、本原理の態様は、ハードウェアの実施形態、ソフトウェアの実施形態、或いは、ソフトウェアとハードウェアの態様を組み合わせた実施形態の形を取ることができる。更に、本原理の態様は、コンピュータ可読記憶媒体の形態を取ることができる。１つ又は複数のコンピュータ可読記憶媒体の任意の組み合わせも利用できる。
【００７５】
本原理の態様は、例えば、少なくとも部分的に、プログラム可能な装置上で実行された際に本発明の実施形態による方法のステップを実行するための、或いは、プログラム可能な装置が本発明の実施形態による装置又はシステムの機能を実行できるようにするためのコード部分を備えたコンピュータ・プログラムの形態で実施されてもよい。
【００７６】
更に、図２と図３に示されたあらゆる接続は、直接の又は間接的な接続であってもよい。更に、当業者であれば、論理ブロック相互間の境界が単なる例示であること、及び、代替の実施形態において、論理ブロックが統合されてもよく、或いは、種々の論理ブロックについての機能が分解されてもよいことが分かるであろう。  
上記の実施形態に加えて、以下の付記を開示する。
（付記１）
描画された木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画する、コンピュータによって実施される方法（１０)であって、
複数のブランチで構成される前記木構造のツリー・ビューを生成すること（１１）と、
前記ツリー・ビューに対する前記ポインティング・カーソルの位置を特定すること（１４）であって、該位置は、第１の方向に従う第１の位置値と、該第１の方向に直交する第２の方向に従う第２の位置値とで構成されている、前記特定することと、
前記ポインティング・カーソルの位置が前記第１の方向に従って合わされたブランチをアクティブなブランチとして自動的に選択すること（１５）と、
展開されるべき前記アクティブなブランチのサブレベルを、該サブレベルのインデントに対する前記第２の位置値によって特定すること（１６）と、
前記アクティブなブランチの前記特定されたサブレベルを展開し、かつその他のブランチを折り畳むことによって、前記ツリー・ビューを自動的に更新すること（１７）と、
を含む、前記コンピュータによって実施される方法。
（付記２）
前記グラフィカル・ユーザ・インタフェース内において前記ツリー・ビューを表示する表示デバイスのスクリーン上において、前記第１の方向が垂直方向に対応し、前記第２の方向が水平方向に対応する、付記１に記載のコンピュータによって実施される方法。
（付記３）
前記ポインティング・カーソルの位置を特定すること（１４）と、前記アクティブなブランチを自動的に選択すること（１５）と、前記展開されるべきサブレベルを特定すること（１６）と、前記ツリー・ビューを自動的に更新すること（１７）とが連続的に繰り返される、付記１又は２に記載のコンピュータによって実施される方法。
（付記４）
前記展開されるべきサブレベルの量が現在展開されているサブレベルの量よりも少ない場合、前記ツリー・ビューが、前記アクティブなブランチの超過分のサブレベルを折り畳むことによって更新され、かつ、該更新されたツリー・ビューが、前記折り畳まれた超過分のサブレベルを隠している対応する要素が前記第１の方向に従う前記ポインティング・カーソルの位置に合わされるまで、前記第１の方向に動かされる、付記１から３のいずれか１つに記載のコンピュータによって実施される方法。
（付記５）
前記要素の木構造が概念の分類に対応している、付記１から４のいずれか１つに記載のコンピュータによって実施される方法。
（付記６）
前記要素の木構造がファイルのディレクトリ構造に対応している、付記１から４のいずれか１つに記載のコンピュータによって実施される方法。
（付記７）
ユーザによって入力されたモード選択に応じて、自動モードと手動モードとのいずれかを選択すること（１２）を含み、
前記ポインティング・カーソルの位置を特定すること（１４）と、前記アクティブなブランチを自動的に選択すること（１５）と、前記展開されるべきサブレベルを特定すること（１６）と、前記ツリー・ビューを自動的に更新すること（１７）とが、前記自動モードにおいてのみ実行され、
前記ツリー・ビューが、前記手動モードにおいて、前記グラフィカル・ユーザ・インタフェースに対する更なる手動のユーザ入力に応じて更新される（１３）、
付記１から６のいずれか１つに記載のコンピュータによって実施される方法。
（付記８）
前記ポインティング・カーソルが、前記ツリー・ビューとのユーザ・インタラクション用に生成される、付記１から７のいずれか１つに記載のコンピュータによって実施される方法。
（付記９）
描画された木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画するデータ処理装置（２０）であって、
複数のブランチで構成される前記木構造のツリー・ビューを生成するように構成されたグラフィック描写ユニット（２３）と、
前記ツリー・ビューに対する前記ポインティング・カーソルの位置を特定するように構成された位置特定ユニット（２４）であって、該位置は、第１の方向に従う第１の位置値と、該第１の方向に直交する第２の方向に従う第２の位置値とで構成されている、前記位置特定ユニットと、
前記ポインティング・カーソルの位置が前記第１の方向に従って合わされたブランチをアクティブなブランチとして自動的に選択するように構成されたアクティブ・ブランチ選択ユニット（２６）と、
展開されるべき前記アクティブなブランチのサブレベルを、該サブレベルのインデントに対する前記第２の位置値によって特定するように構成された展開特定ユニット（２７）と、
を備えており、
前記グラフィック描写ユニット（２３）は、前記アクティブなブランチの前記特定されたサブレベルを展開し、かつその他のブランチを折り畳むことによって、前記ツリー・ビューを自動的に更新するように更に構成されている、前記データ処理装置。
（付記１０）
前記位置特定ユニット（２４）を用いて前記ポインティング・カーソルの位置を特定することと、前記アクティブ・ブランチ選択ユニット（２６）を用いて前記アクティブなブランチを自動的に選択することと、前記展開特定ユニット（２７）を用いて前記展開されるべきサブレベルを特定することと、前記グラフィック描写ユニット（２３）を用いて前記ツリー・ビューを自動的に更新することとを連続的に繰り返すように構成されている、付記９に記載のデータ処理装置。
（付記１１）
前記展開特定ユニット（２７）が、前記展開されるべきサブレベルの量が現在展開されているサブレベルの量よりも少ないと判定した場合、前記グラフィック描写ユニット（２３）が、前記アクティブなブランチの超過分のサブレベルを折り畳むことによって前記ツリー・ビューを更新し、かつ、該更新されたツリー・ビューを、前記折り畳まれた超過分のサブレベルを隠している対応する要素が前記第１の方向に従う前記ポインティング・カーソルの位置に合わされるまで、前記第１の方向に動かすように構成されている、付記９又は１０に記載のデータ処理装置。
（付記１２）
ユーザによって入力されたモード選択に応じて、自動モードと手動モードとのいずれかを選択するように構成された選択ユニット（２１）を備えており、
前記データ処理装置（２１）は、前記位置特定ユニット（２４）を用いて前記ポインティング・カーソルの位置を特定することと、前記アクティブ・ブランチ選択ユニット（２６）を用いて前記アクティブなブランチを自動的に選択することと、前記展開特定ユニット（２７）を用いて前記展開されるべきサブレベルを特定することと、前記グラフィック描写ユニット（２３）を用いて前記ツリー・ビューを自動的に更新することとを、前記自動モードにおいてのみ実行するように構成されており、
前記グラフィック描写ユニット（２３）は、前記手動モードにおいて、前記グラフィカル・ユーザ・インタフェースに対する更なる手動のユーザ入力に応じて、前記ツリー・ビューを更新するように構成されている、付記９から１１のいずれか１つに記載のデータ処理装置。
（付記１３）
前記ポインティング・カーソルを前記ツリー・ビューとのユーザ・インタラクション用に生成するように構成されている、付記９から１２のいずれか１つに記載のデータ処理装置。
（付記１４）
描画された木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画するデータ処理装置（３０）であって、
処理デバイス（３１）と、
表示デバイス（３２）と、
命令を記憶しているメモリデバイス（３３）と、
を備えており、
前記命令は、実行されると、
複数のブランチで構成される前記木構造を前記表示デバイスを用いて示すツリー・ビューを生成することと、
前記ツリー・ビューに対する前記ポインティング・カーソルの位置を特定することであって、該位置は、第１の方向に従う第１の位置値と、前記第１の方向に直交する第２の方向に従う第２の位置値とで構成されている、前記特定することと、
前記ポインティング・カーソルの位置が前記第１の方向に従って合わされたブランチをアクティブなブランチとして自動的に選択することと、
展開されるべき前記アクティブなブランチのサブレベルを、該サブレベルのインデントに対する前記第２の位置値によって特定することと、
前記アクティブなブランチの前記特定されたサブレベルを展開し、かつその他のブランチを折り畳むことによって、前記表示デバイスに示される前記ツリー・ビューを自動的に更新することと、
を前記処理デバイスに行わせる、前記データ処理装置。
（付記１５）
描画された木構造に対するポインティング・カーソルの位置に従って要素の木構造をグラフィカル・ユーザ・インタフェースにおいて描画することを可能にする命令を記憶しているコンピュータ可読記憶媒体であって、前記命令は、コンピュータによって実行されると、
複数のブランチで構成される前記木構造のツリー・ビューを生成すること（１１）と、
前記ツリー・ビューに対する前記ポインティング・カーソルの位置を特定すること（１４）であって、該位置は、第１の方向に従う第１の位置値と、該第１の方向に直交する第２の方向に従う第２の位置値とで構成されている、前記特定することと、
前記ポインティング・カーソルの位置が前記第１の方向に従って合わされたブランチをアクティブなブランチとして自動的に選択すること（１５）と、
展開されるべき前記アクティブなブランチのサブレベルを、該サブレベルのインデントに対する前記第２の位置値によって特定すること（１６）と、
前記アクティブなブランチの前記特定されたサブレベルを展開し、かつその他のブランチを折り畳むことによって、前記ツリー・ビューを自動的に更新すること（１７）と、
を前記コンピュータに行わせる、前記コンピュータ可読記憶媒体。
【図１】
0006709223.tif 000002
【図２】
0006709223.tif 000003
【図３】
0006709223.tif 000004
【図４】
0006709223.tif 000005
【図５】
0006709223.tif 000006
【図６】
0006709223.tif 000007
【図７】
0006709223.tif 000008
【図８】
0006709223.tif 000009
【図９】
0006709223.tif 000010
【図１０】
0006709223.tif 000011
【図１１】
0006709223.tif 000012
【図１２】
0006709223.tif 000013
【図１３】
0006709223.tif 000014
【図１４】
0006709223.tif 000015
【図１５】
0006709223.tif 000016
【図１６】
0006709223.tif 000017
【図１７】
0006709223.tif 000018
【図１８】
0006709223.tif 000019
【図１９】
0006709223.tif 000020
【図２０】
0006709223.tif 000021
【図２１】
0006709223.tif 000022
【図２２】
0006709223.tif 000023
【図２３】
0006709223.tif 000024
【図２４】
0006709223.tif 000025
【図２５】
0006709223.tif 000026
【図２６】
0006709223.tif 000027
【図２７】
0006709223.tif 000028
【図２８】
0006709223.tif 000029
【図２９】
0006709223.tif 000030
【図３０】
0006709223.tif 000031
【図３１】
0006709223.tif 000032
【図３２】
0006709223.tif 000033