(57)【要約】 【課題】  ユーザがスクロールバーを用いて表示領域を操作しても、ユーザは重要度の高いデータを常に閲覧することを可能にすること。【解決手段】  表示制御装置は、表示領域に表示されている文書データを行単位に格納する第１格納部と、文書データに対して、重要度の高い情報であることを示す識別情報が設定されているか否かを判定する判定部と、識別情報が設定されている文書データを識別して特定データとして行単位に格納する第２格納部と、特定データのデータ量に基づき、特定データの全てを表示領域内に表示することが可能な特定領域のサイズと、文書データから特定データを除いた標準データのうち少なくとも一部の行を表示するための標準領域のサイズと、を決定する決定部と、表示領域を、特定領域と、標準領域と、に分割して、特定データを特定領域に表示し、標準領域に標準データを表示する表示制御部とを備える。【選択図】  図１４
2009187308.tif 000002
【特許請求の範囲】
【請求項１】
表示領域に表示されている文書データを行単位に格納する第１格納手段と、
前記第１格納手段により格納された行単位の文書データに対して、重要度の高い情報であることを示す識別情報が設定されているか否かを判定する判定手段と、
前記判定手段の判定結果に基づき、前記識別情報が設定されている文書データを識別して特定データとして行単位に格納する第２格納手段と、
前記第２格納手段により格納された前記特定データのデータ量に基づき、前記特定データの全てを表示することが可能な特定領域のサイズと、前記文書データから前記特定データを除いた標準データのうち少なくとも一部の行を表示するための標準領域のサイズと、を決定する決定手段と、
前記決定手段の決定に基づき、前記表示領域を、前記特定領域と、前記標準領域と、に分割して、前記特定データを前記特定領域に表示し、前記標準領域に前記標準データを表示する表示制御手段と、
を備えることを特徴とする表示制御装置。
【請求項２】
前記識別情報として、文字列または図形情報を指定するための指定手段を更に備え、
前記判定手段は、前記文書データの中で前記文字列または前記図形情報を含む行の文書データを前記特定データとして判定することを特徴とする請求項１に記載の表示制御装置。
【請求項３】
前記文字列には、文字サイズ、前記文字列に設定された表示色、前記文字列の書体、前記文字列に対する下線付きの設定のうち、少なくともいずれか１つが設定可能であることを特徴とする請求項２に記載の表示制御装置。
【請求項４】
前記第２格納手段が前記特定データを更に追加して格納した場合、前記表示制御手段は、追加された前記特定データが前記特定領域に収まるか否かを前記特定領域のサイズと、追加された前記特定データのデータ量と、の比較に基づき判定することを特徴とする請求項１に記載の表示制御装置。
【請求項５】
前記表示制御手段の判定結果により、追加された前記特定データが前記特定領域に収まらないと判定される場合、前記表示制御手段は、現在設定されている前記特定データのフォントサイズよりも小さいフォントサイズに切り替えて、追加された前記特定データを前記特定領域に表示することを特徴とする請求項４に記載の表示制御装置。
【請求項６】
前記データ量は、前記第２格納手段に格納された前記特定データの総行数と前記特定データに設定されているフォントサイズに基づき決定されることを特徴とする請求項１または４に記載の表示制御装置。
【請求項７】
前記表示制御手段の判定結果により、追加された前記特定データが前記特定領域に収まらないと判定される場合、前記表示制御手段は、前記特定領域で前記特定データの表示位置を移動させることが可能なスライドバーを前記表示領域に表示することを特徴とする請求項５に記載の表示制御装置。
【請求項８】
第１格納手段と、判定手段と、第２格納手段と、決定手段と、表示制御手段とを備える表示制御装置における表示制御方法であって、
前記第１格納手段が、表示領域に表示されている文書データを行単位に格納する第１格納工程と、
前記判定手段が、前記第１格納工程により格納された行単位の文書データに対して、重要度の高い情報であることを示す識別情報が設定されているか否かを判定する判定工程と、
前記第２格納手段が、前記判定工程の判定結果に基づき、前記識別情報が設定されている文書データを特定データとして行単位に格納する第２格納工程と、
前記決定手段が、前記第２格納工程により格納された前記特定データのデータ量に基づき、前記特定データの全てを表示することが可能な特定領域のサイズと、前記文書データから前記特定データを除いた標準データのうち少なくとも一部の行を表示するための標準領域のサイズと、を決定する決定工程と、
前記表示制御手段が、前記表示領域を、前記特定領域と、前記標準領域と、に分割して、前記特定データを前記特定領域に表示し、前記標準領域に前記標準データを表示する表示制御工程と、
を備えることを特徴とする表示制御方法。
【請求項９】
前記表示制御装置は更に指定手段を備え、
前記指定手段が、前記識別情報として、予め定められた文字列または図形情報を指定するための指定工程を更に備え、
前記判定工程では、前記文書データの中で前記文字列または前記図形情報を含む行の文書データを前記特定データとして判定することを特徴とする請求項８に記載の表示制御方法。
【請求項１０】
前記文字列には、文字サイズ、前記文字列に設定された表示色、前記文字列の書体、前記文字列に対する下線付きの設定のうち、少なくともいずれか１つが設定可能であることを特徴とする請求項９に記載の表示制御方法。
【請求項１１】
前記第２格納工程が前記特定データを更に追加して格納した場合、前記表示制御工程では、追加された前記特定データが前記特定領域に収まるか否かを前記特定領域のサイズと、追加された前記特定データのデータ量と、の比較に基づき判定することを特徴とする請求項８に記載の表示制御方法。
【請求項１２】
前記表示制御工程の判定結果により、追加された前記特定データが前記特定領域に収まらないと判定される場合、前記表示制御工程では、現在設定されている前記特定データのフォントサイズよりも小さいフォントサイズに切り替えて、追加された前記特定データを前記特定領域に表示することを特徴とする請求項１１に記載の表示制御方法。
【請求項１３】
前記データ量は、前記第２格納手段に格納された前記特定データの総行数と前記特定データに設定されているフォントサイズに基づき決定されることを特徴とする請求項８または１１に記載の表示制御方法。
【請求項１４】
前記表示制御工程の判定結果により、追加された前記特定データが前記特定領域に収まらないと判定される場合、前記表示制御工程では、前記特定領域で前記特定データの表示位置を移動させることが可能なスライドバーを前記表示領域に表示することを特徴とする請求項１２に記載の表示制御方法。
【請求項１５】
コンピュータを、請求項１乃至７のいずれか１項に記載の表示制御装置として機能させるプログラム。
【請求項１６】
請求項１５に記載のプログラムを格納したコンピュータ可読の記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は表示制御技術に関する。
【背景技術】
【０００２】
ネットワークを通じて文字ベースの会話を行うチャットシステムでは、データが入力されていくとウィンドウ内に入力されたデータを１つのウィンドウ内に表示しきれなくなる場合がある。このような場合、先に入力されたデータをウィンドウ内で非表示にして、新しく入力されるデータを表示するための表示領域が確保される。ユーザは、ウィンドウ内に表示されるスクロールバーを操作することによって、ウィンドウ内から非表示になったデータをウィンドウ内に表示させてデータを閲覧することができる。
【０００３】
図１、図２は、従来のチャットシステムにおけるウィンドウ表示を例示する図である。例えば、図1では、ウィンドウ全体に入力されたデータが表示されており、更に、データを表示するためのスペースはない。図１の表示状態で、会話の入力フィールドから更にデータが入力されると、図２のように、それまでに入力されたデータの表示位置はウィンドウの上方に移動する。図１の表示状態で一番上の行に表示されていたデータが非表示とされ、新たに入力されたデータがウィンドウの末尾に追加される。その際に、例えば、ウィンドウの右端にスクロールバーが表示される。ユーザは、マウスを用いてそのスクロールバーをスライド操作することによって、表示位置が上方に移動してウィンドウ内から非表示となったデータをウィンドウ内に表示することが可能である。
【０００４】
また、チャットシステムにおけるディスプレイ上の表示技術として、例えば、特許文献１では、利用者と関連性の高い内容を強調して表示する技術が開示されている。
【０００５】
更に、遠隔地に離れている複数のユーザが、ネットワークを通じて情報処理装置のGUI上で、お互いの顔を見ながらコミュニケーションをとる技術として、テレビ会議システムがある。このテレビ会議システムは、会議の資料といった電子ファイルを送信するファイル転送機能や、転送されたファイルをユーザ同士で共有して閲覧する画面共有機能を有する。また、テレビ会議システムは、各ユーザがマウスを使って描いた絵を共有するホワイトボード機能や、会議の議事録をテキストベースのチャットで記録する議事録機能を有する。
【特許文献１】特開２００４−２１３１５３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、従来のチャットシステムでは、ウィンドウ内に重要なデータを常に閲覧可能な状態で表示することはできない。
【０００７】
また、従来の議事録機能では、テレビ会議のアジェンダやアクションアイテムなど会議において重要なデータが表示されていても、ユーザが新たな議事録データを追加すると、議事録データ全体の表示位置を自動的に上方に移動させて表示していた。仮にウィンドウ上部にアジェンダやアクションアイテムなどユーザにとって常に閲覧したい重要なデータがあった場合でも、議事録データの追加作業を続けるとそのデータが非表示となってしまい、ユーザに常に閲覧可能な状態で表示することはできない。
【０００８】
本発明は、上記の課題に鑑みてなされたものであり、ユーザがスクロールバーを用いて表示領域を操作しても、ユーザは重要度の高いデータを常に閲覧することを可能にする表示制御技術の提供を目的とする。
【課題を解決するための手段】
【０００９】
上記の目的を達成する本発明に係る表示制御装置は、表示領域に表示されている文書データを行単位に格納する第１格納手段と、
前記第１格納手段により格納された行単位の文書データに対して、重要度の高い情報であることを示す識別情報が設定されているか否かを判定する判定手段と、
前記判定手段の判定結果に基づき、前記識別情報が設定されている文書データを識別して特定データとして行単位に格納する第２格納手段と、
前記第２格納手段により格納された前記特定データのデータ量に基づき、前記特定データの全てを表示することが可能な特定領域のサイズと、前記文書データから前記特定データを除いた標準データのうち少なくとも一部の行を表示するための標準領域のサイズと、を決定する決定手段と、
前記決定手段の決定に基づき、前記表示領域を、前記特定領域と、前記標準領域と、に分割して、前記特定データを前記特定領域に表示し、前記標準領域に前記標準データを表示する表示制御手段と、
を備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、ユーザがスクロールバーを用いて表示領域を操作しても、ユーザは重要度の高いデータを常に閲覧することが可能になる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照して、本発明の好適な実施形態を例示的に詳しく説明する。ただし、この実施の形態に記載されている構成要素はあくまで例示であり、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。
【００１２】
（第１実施形態）
図３は本発明の実施形態に係る表示制御装置を含む表示制御システムの概略を示した構成図である。同図において、表示制御装置として機能する情報処理装置（ＰＣ）101は、LAN102に接続されている。LAN102には、ネットワークデバイスとして、デジタルカメラ１０３、プリンター１０４、ファイルサーバ１０５が接続されている。図４は、本発明の実施形態に係るＰＣ１０１の概略的な構成を示すブロック図である。同図において、ＣＰＵ２０１はシステム制御部であり、ＰＣ１０１の全体を制御する。ＲＯＭ２０２は、ＣＰＵ２０１の制御プログラムや各種データを格納することが可能である。ＲＡＭ２０３は、ＳＲＡＭ、ＤＲＡＭなどで構成され、プログラム制御変数などを格納することが可能な内部メモリとして機能する。また、各種設定パラメータ、各種ワーク用バッファもＲＡＭ２０３に格納される。記憶部２０４はハードディスクなどで構成され、文書データや画像データなどの各種データファイルを格納する。操作部２０５はキーボードやマウス、タッチパネルなどで構成され、オペレータは操作部２０５を介して各種入力操作を行うことが可能である。表示部２０６は、オペレータが操作部２０５から入力された文字や画像を含むデータをウィンドウ上に表示する。LAN I/F ２０７は、ＬＡＮ回線２０８に接続するためのインターフェースである。USB I/F ２０９は、ＵＳＢ回線２１０に接続するためのインターフェースである。
【００１３】
図５は、表示制御の処理の流れを説明するフローチャートである。表示制御として、ユーザがネットワークを介してテレビ会議を行い、会議の内容を議事録として記録する場合に、他のユーザに対して会議のアジェンダを常に閲覧可能な状態に表示しながら記録する処理の流れを説明する。
【００１４】
ＣＰＵ２０１の全体的な制御の下に図５のフローチャートの処理が実行される。本実施形態にかかる表示制御用のアプリケーションが起動すると本処理がスタートする（Ｓ１０１）。
【００１５】
図６は、テレビ会議における議事録をテキストベースで記録するアプリケーションの画面表示を例示する図である。ステップＳ１０２において、アプリケーションのメニューにおいて、議事録を記録する準備として、ユーザが会議のアジェンダと、そのアジェンダのフォントサイズを入力する。その際、ユーザの入力したアジェンダの数（length）を内部メモリに保存しする。図６の場合、「進捗報告」、「課題」、「今後の予定」、「質疑応答」の４つがアジェンダの数（length）となる。アジェンダの数（length）は、任意に設定することが可能である。
【００１６】
ステップＳ１０３において、アジェンダを保存する配列a［n］(n=0,1,2,...)を初期化し、それぞれの配列にアジェンダを設定する。アジェンダの数（length）を「４」とすると、配列a［n］(n=0,1,2,3)は図７のようにａ［０］：進捗報告、［１］：課題、［２］：今後の予定、［３］：質疑応答、のように設定される。
【００１７】
ステップＳ１０４において、ユーザが入力したアジェンダのフォントサイズを内部メモリに保存する。フォントサイズは任意に設定することが可能であり、図６の例ではフォントサイズは10に設定されている。
【００１８】
そして、ステップＳ１０５において、アジェンダを保存する配列ｇ［ｍ］を初期化する。例えば、図８に示すような、各アジェンダに対する議事録の具体的な内容を保存する配列ｇ［ｍ］（m=0,1,2,…）を初期化する。この配列ｇ［ｍ］は、アジェンダの数（length）と同じとする。そして、図９のように、配列a［n］に保存されているアジェンダをウィンドウ内に順番に表示する。
【００１９】
次に、ステップＳ１０６において、ユーザの選択したアジェンダに対して、議事録の具体的な内容を入力するための入力フィールドのサイズ（横サイズ（width）と縦サイズ（height））を決定、決定して、内部メモリに保存する。
【００２０】
横サイズ（width）は、表示部２０６のウィンドウの横幅（WIDTH）と同じとする。一方、縦サイズ（height）は、図7のアジェンダの配列a［n］(n=0,1,2,3)について、各アジェンダの文字列の高さと、表示部２０６のウィンドウの横幅（WIDTH）を用いて、表示するのに必要な行数を求める。それぞれのアジェンダの１行分の文字列の長さは、ウィンドウの横幅（WIDTH）よりも小さいとすると、例えば、４つのアジェンダの全てを表示するには４行分の表示領域が必要となる。また、1文字当たりの縦サイズはフォントサイズに基づき設定することが可能である。ここでは、フォントサイズが10なので、必要とする高さ（縦サイズ）は４行分で40となる。よって、入力フィールドの縦サイズは、表示部２０６のウィンドウの縦幅（HEIGHT）から、全てのアジェンダを表示するのに必要な高さ（縦サイズ）40を引いたサイズ(HEIGHT-40)となる。
【００２１】
次に、ステップＳ１０７において、ユーザが議事録の記録を終了させたかどうかを判定する。ユーザが記録を終了させた場合（Ｓ１０７−Ｙｅｓ）、処理は終了する（Ｓ１１５）。一方、ステップＳ１０７の判定で、ユーザが議事録の記録を終了しない場合（Ｓ１０７−Ｎｏ）、処理はステップＳ１０８に進められる。
【００２２】
ステップＳ１０８において、ユーザが特定のアジェンダをマウスでクリックして選択したかどうかを判定する。もし、特定のアジェンダを選択していない場合は、処理をステップＳ１０７に戻し、記録処理を終了するか否か判定し、ステップＳ１０８以降、同様の処理を繰り返す。
【００２３】
特定のアジェンダが選択されると（Ｓ１０８−Ｙｅｓ）、処理はステップＳ１０９に進められる。
【００２４】
ステップＳ１０９において、ユーザが選択したアジェンダを識別するための識別情報を内部メモリに保存する。アジェンダ「進捗報告」が選択された場合、選択されたアジェンダを識別するための識別情報として変数ｎに「０（ａ［０］に対応する）」が代入される。
【００２５】
次に、ステップＳ１１０において、図１０に示すように、指定したアジェンダに対して議事録の具体的内容を入力する矩形の入力フィールドについて、矩形の左上の座標Ａを求めて内部メモリに保存する。座標Ａはウィンドウ内で入力フィールドの表示位置、表示サイズを特定するための基準座標となる。基準座標Ａを原点として、入力フィールドの高さ方向の縦サイズ（height）と横方向の横サイズ（width）を定めることにより、矩形の入力フィールドの表示位置、表示サイズを特定することができる。
【００２６】
入力フィールドの上方に、ユーザの選択した番号までのアジェンダを表示する。座標Ａのy座標は、アジェンダを保存している配列a[n]のi番目の内容の文字の長さをlen(i)とすると、現在のウィンドウの横サイズWIDTHと、S104において決定した1文字当たりの縦サイズ10を用いて（１）式で求められる。
【００２７】
【数１】
2009187308.tif 000003
【００２８】
座標Ａがウィンドウ内の左端の座標である場合、x座標は常に「０」である。図１０のように、ユーザが「進捗報告」のアジェンダを選択している場合、入力フィールドの左上の座標Ａは(０,１１)となる。
【００２９】
次に、ステップＳ１１１において、ユーザが選択したアジェンダをａ［n］とし、先頭の配列からユーザに選択された一つ前までに対応するアジェンダ（配列a[0]〜a[n-1]）をウィンドウの上方から順番に表示する。
【００３０】
ステップＳ１１２において、基準座標をＳ１１０で求めた座標Ａに設定し、入力フィールドの縦横のサイズをＳ１０６で求めた横サイズと縦サイズに設定して、ウィンドウ内に議事録の入力フィールドを表示する。
【００３１】
そして、ステップＳ１１３において、残りのアジェンダa[n+1]〜a[length-1]を、入力フィールドの下部に順番に表示する。すなわち、ユーザに選択されたアジェンダ（ａ［n］）の次の配列から、最後の配列に対応するアジェンダ（a[n+1]〜a[length-1]）を入力フィールドの下部に表示する。
【００３２】
ステップＳ１１４において、ユーザは、ステップＳ１１２で表示した入力フィールドに、選択したアジェンダに対する議事録の具体的な内容を入力し、議事録の具体的な内容は、選択されたアジェンダ（ａ［n］）に対応する配列g[n]に保存される。図１０に示す表示状態において、議事録の具体的な内容は、図１１のようにg[0]に保存される。
【００３３】
アジェンダを変更する場合、ステップＳ１０８〜Ｓ１１４の手順を同様に行うことによって、議事録を記録することが可能になる。図１２は、アジェンダ「課題」が選択された場合の表示例を示す図であり、基準座標Ａ’は、フォントサイズを１０とすると、２つのアジェンダを表示するために必要となるサイズを考慮して、Ａ’（０、２１）となる。アジェンダ「課題」は、図７の配列ａ［１］に対応しており、議事録の具体的な内容は、配列ａ［１］に対応する図１３の配列g[1]に保存される。
【００３４】
以上の処理によりユーザは、会議のアジェンダを常に閲覧しながら、選択したアジェンダに対する議事録を入力し、記録することが可能になる。
【００３５】
（第２実施形態）
次に、本発明の第２実施形態として、ネットワーク通信を用いて文字ベースで会話を行うチャットおいて、ユーザのマークした重要な会話のみを、ウィンドウ内に常に閲覧可能な状態で表示する構成を説明する。
【００３６】
図１４は、第２実施形態にかかる処理の流れを説明するフローチャートである。ＣＰＵ２０１の全体的な制御の下に図１４のフローチャートの処理が実行される。本実施形態にかかる表示制御用のアプリケーションが起動すると本処理がスタートする（Ｓ２０１）。
【００３７】
ステップＳ２０２において、発話者の名前と、その発話者の入力した内容をリスト状に格納する配列talkを初期化する。本実施形態では、発話者の名前の末尾に、その発話者の入力した内容を追加した文字列を、配列talkに格納するものとする。もし、発話者の名前が不要な場合には、配列talkに発話者の内容だけを格納することも可能である。会話が始まっていない状態では、配列の長さは0であり、ユーザの会話が始まった後は、その会話に対して配列talkにデータが格納されていく。
【００３８】
図１６は、チャットシステムにおける会話表示を例示する図である。図１６の会話を例にとると、配列talk[0]には、
「[Aさん]
明日のプレゼンお願いします」が格納される。
【００３９】
次に、配列talk[1]には
「[Bさん]
場所はどこですか？」が格納される。
【００４０】
ステップＳ２０３において、ユーザのマークした会話のインデックスを格納する配列markを初期化する。
【００４１】
ステップＳ２０４において、ユーザのマークした会話を表示するための枠の縦サイズ（markSize）を「０」で初期化する。横サイズはチャットウィンドウの横サイズと同じである。ここで、ユーザのマークした重要な内容の会話を表示するための枠を、重要データ欄と呼ぶことにする。
【００４２】
次に、ステップＳ２０５において、ユーザのマークしていない通常の会話を表示するための枠の縦サイズ（normalSize）を、チャットウィンドウの縦サイズで初期化する。横サイズはチャットウィンドウの横サイズと同じである。ここで、ユーザが重要な内容としてマークしていない通常の会話を表示するための枠を、標準データ欄と呼ぶことにする。
【００４３】
図１５は、格納された行単位の文書データ（文字データを含む）に対して、重要度の高い情報であることを示す識別情報、例えば、文字列、マーク等の図形情報を指定するためのユーザインタフェース画面を例示する図である。ユーザは、ユーザインタフェース画面を介して、識別情報に用いる文字列の文字サイズ、文字列の表示色、文字列の書体（線の太さを含む）、文字列に対する下線付きの設定のうち、少なくともいずれか１つが設定可能である。チャットの内容に対して、少なくともいずれか１つの項目が指定されると、ＣＰＵ２０１は、その会話の内容を重要な会話の内容と判定する。
【００４４】
ステップＳ２０６において、ユーザが、重要な会話に対する文字列、または図形情報（マーク）の指定方法を、図１５に示すユーザインタフェースから指定すると、指定された識別情報の属性は内部メモリに保存される。
【００４５】
次に、ステップＳ２０７において、ユーザのチャットの会話が終了したかどうかを判定する。ユーザがチャットの会話を終了する場合（Ｓ２０７−Ｙｅｓ）、処理は終了する（Ｓ２１５）。一方、ステップＳ２０７の判定で、ユーザがチャットの会話を終了していない場合（Ｓ２０７−Ｎｏ）、処理はステップＳ２０８に進められる。
【００４６】
ステップＳ２０８において、ＣＰＵ２０１は第１格納手段として機能し、表示領域に表示されている文字データを行単位に内部メモリに格納する。ここで、各会話の発話者の名前と、その発話者が入力した内容が行単位に配列talkに格納される。
【００４７】
ステップＳ２０９において、ＣＰＵ２０１は判定手段として機能し、格納された行単位の文字データに対して、重要度の高い情報であることを示す識別情報が設定されているか否かを判定する。先のステップＳ２０６で指定された文字列や図形情報が、その会話に設定されているかどうかを判定する。文字列や図形情報が設定されていない場合（Ｓ２０９−Ｎｏ）、処理はステップＳ２１１に進められる。一方、文字列や図形情報が設定されている場合（Ｓ２０９−Ｙｅｓ）、処理はステップＳ２１０に進められる。
【００４８】
図１５に示すユーザインタフェースを用いて、ユーザは、重要な内容の会話であることを示す文字列や図形情報を指定することができる。ここで、文字には、文字列を構成するカナ、漢字、英数字が含まれ、図形情報（マーク）には、文字列を構成する記号、符号などが含まれる。例えば、図形情報（マーク）として「☆」をユーザが指定した場合に、図１６のようにユーザが会話文中に「☆」を入力すると、ＣＰＵ２０１は、重要な会話文であることを示す文字データであると判定する。
【００４９】
特定の文字列、図形情報（マーク）の種類のほか、文字列の修飾、例えば、文字列の書体として、文字を太くして強調する指定がされている場合、ＣＰＵ２０１は、重要な会話文であることを示す文字データと判定する。例えば、図１７に示すように、文字データのフォントを太くして強調されている場合に、ＣＰＵ２０１は、重要な会話文であることを示す文字データと判定する。また、文字列の修飾として、文字列の表示色、下線付きが指定されている場合に、ＣＰＵ２０１は、重要な会話文であることを示す文字データと判定する。
【００５０】
ステップＳ２１０において、ＣＰＵ２０１は、第２格納手段として機能し、Ｓ２０９の判定結果に基づき、識別情報が設定されている文字データを特定データとして行単位に内部メモリに格納する。先のステップＳ２０９で会話文中に識別情報が付いていると判定された場合、配列markの末尾にその識別情報の付いた会話のインデックスを追加する。
【００５１】
ステップＳ２１１において、ＣＰＵ２０１は決定手段として機能し、格納された特定データのデータ量に基づき、特定データを、表示領域内に表示するための特定領域のサイズを決定する。そして、ＣＰＵ２０１は、その決定結果に基づき、文字データから特定データを除いた標準データを表示領域内に表示するための標準領域のサイズを決定する。配列markの各要素に格納されているインデックスを決定し、配列talkの内容を重要データ欄に表示するために、その重要データ欄の縦のサイズ（markSize）を決定し、決定結果を内部メモリに保存する。重要データ欄の縦のサイズ（markSize）は、ウィンドウの横幅、特定データの総行数と特定データに設定されているフォントサイズに基づき決定される。
【００５２】
ステップＳ２１２において、ＣＰＵ２０１は表示制御手段として機能し、表示領域を、特定領域と標準領域とに分割し、特定データを特定領域に表示する。ＣＰＵ２０１は、重要データ欄に、配列markのインデックスの会話の内容を表示する。
【００５３】
ステップＳ２１３において、ＣＰＵ２０１は、チャットのウィンドウの縦サイズからmarkSizeを引いた値（normalSize）を内部メモリに格納する。
【００５４】
ステップＳ２１４において、ＣＰＵ２０１は表示制御手段として機能し、標準情報を標準領域（標準データ欄）に表示する。ＣＰＵ２０１は、標準データ欄の縦のサイズをnormalSizeの値に設定し、全ての会話を格納している配列talkについて、インデックス番号の大きく新しい会話から順番に、標準データ欄にその会話の内容を表示する。
【００５５】
図１８は、図１４のステップＳ２１４の詳細な処理手順を示す図である。
【００５６】
ステップＳ２１４の実行により本処理が起動する（Ｓ３０１）。
【００５７】
ステップＳ３０２において、配列talkのインデックス番号をindex、配列talkの長さをlengthとすると、まず、index＝lengthとして初期化する。
【００５８】
ステップＳ３０３において、変数valueを0に初期化する。
【００５９】
次に、ステップＳ３０４において、valueが標準データ欄の縦のサイズnormalSizeよりも大きいかどうか判定する。
【００６０】
もし、valueがnormalSizeよりも小さいと判定される場合（Ｓ３０４−Ｎｏ）、処理はステップＳ３０５に進められ、indexの値を１つ小さくする。
【００６１】
ステップＳ３０６において、talk[index]の内容について、ステップＳ２１１のように、発話者の名前とその内容をウィンドウ内に表示するために必要な行数を求める。
【００６２】
ステップＳ３０７において、先のステップＳ３０６で求められた行数に、現在表示している文字の縦サイズを掛けて、その値を変数valueに加え、処理をステップＳ３０４に戻す。ステップＳ３０４の判定において、valueがnormalSizeより大きいと判定される場合（Ｓ３０４−Ｙｅｓ）、処理はステップＳ３０８に進められる。
【００６３】
そして、ステップＳ３０８において、talk[index+1]〜talk[length-1]までの内容を標準データ欄に表示して、処理を終了する（Ｓ３０９）。
【００６４】
図１９は、表示部２０６のウィンドウ内に表示される、重要データ欄と、標準データ欄と、を例示する図である。会話の途中で、会話に対してマークが付けられた場合には、そのマークを付けた会話は逐次重要データ欄に累積表示される。マークを付けていない会話は、従来のチャットシステムのようにウィンドウ内の標準データ欄に表示され、マークを付けていない会話は累積表示されない。図１９に示すように、例えば、ウィンドウの右端には、ウィンドウ内のデータの表示位置をスクロールして制御する全体画面用のスライドバーが表示される。尚、スライドバーの表示位置は、ウィンドウの右端に限定されるものではなく、ウィンドウの左端、上端、若しくは下端であってもよい。
【００６５】
特定データが更に追加して格納された場合、ＣＰＵ２０１は、追加された特定データが特定領域内に収まるか否かを特定領域のサイズと、追加された特定データのデータ量と、の比較に基づき判定する。この判定結果により、追加された特定データが特定領域内に収まらないと判定される場合、ＣＰＵ２０１は、特定領域内で特定データの表示位置を上下に動かすことが可能なスライドバーを表示する。例えば、図２０に示すように、ユーザのマークした重要な会話の個数が多い場合、重要データ欄の縦サイズ（markSize）が大きくなり、標準データ欄の縦サイズ（normalSize）が小さくなってしまう場合が考えられる。この際、ＣＰＵ２０１の制御の下、マークした会話を表示する重要データ欄の、例えば、図２０に示すように、重要データ欄のデータの表示位置をスクロールして制御する重要データ欄用のスライドバーが更に表示される。尚、重要データ欄用のスライドバーの表示位置も、重要データ欄の右端に限定されるものではなく、ウィンドウの左端、上端、若しくは下端であってもよい。
【００６６】
ユーザは重要データ欄用のスライドバーを操作することによって、マークした会話のうち表示しきれない会話の内容の表示位置を制御して、ウィンドウ内で重要データを閲覧することが可能になる。
【００６７】
追加された特定データが特定領域内に収まらないと判定される場合、例えば、図２１に示すように、ＣＰＵ２０１は、現在設定されている特定データのフォントサイズよりも小さいフォントサイズに切り替えて、追加された特定データを特定領域内に表示する。ＣＰＵ２０１は、重要データ欄のフォントサイズを標準データ欄のフォントサイズに比べて小さくして、より多くの会話の内容を、ウィンドウ内の重要データ欄に累積表示するように表示制御することも可能である。
【００６８】
本実施形態に拠れば、ユーザにとって重要な内容としてマークを付けた会話を、ウィンドウ内に累積表示することによって、ユーザは、過去にマークした会話の内容を閲覧しながら、通常の会話を続けることが可能になる。
【００６９】
（第３実施形態）
次に、第３実施形態では、図２２のようなプログラムの編集ソフトの構成において、ウィンドウ内に全てのプログラムを表示しきれない場合に、各関数の宣言部分のみをユーザに閲覧可能なように表示する構成を説明する。
【００７０】
図２３は、第３実施形態にかかる処理の流れを説明するフローチャートである。ＣＰＵ２０１の全体的な制御の下に図２３のフローチャートの処理が実行される。本実施形態にかかる表示制御用のアプリケーションが起動すると本処理がスタートする（Ｓ４０１）。
【００７１】
まず、ステップＳ４０２において、データ全体について、各行をリスト状にして内部メモリに格納する。
【００７２】
ステップＳ４０３において、内部メモリに格納した各行の文字列を解析し、クラスの宣言部分を格納しているリストのインデックスを抽出して、内部メモリに格納する。
【００７３】
ステップＳ４０４において、リスト状に内部メモリに格納した各行の文字列を解析して、関数の宣言部分を格納しているリストのインデックスを抽出して、内部メモリに保存する。その際に、各関数宣言に対して、図２４のように、関数func1()〜関数func5()の処理内容をグループ化(関数１、２、・・・５)して内部メモリに保存する。
【００７４】
ステップＳ４０６において、表示部２０６に表示されているプログラムにユーザが新たに関数を追加する。例えば、編集ソフトのウィンドウ内に関数func1()…関数func5()が表示されている状態で、更にユーザが関数func6()を追加する。追加された関数func6に関して、ステップＳ４０２〜Ｓ４０５と同様に、各行のリストを内部メモリに格納し、宣言部分の解析、関数のグループ化が行われる。
【００７５】
ステップＳ４０７において、先のステップＳ４０６で追加されたプログラムを含めて、プログラムの全体が表示部２０６に表示されている編集ソフトのウィンドウ内に表示可能か否かを判定する。ＣＰＵ２０１は、内部メモリに格納されているプログラムの行数に対応したリスト数と、文字のフォントサイズ、ウィンドウの縦、横のサイズに基づき、ウィンドウ内に関数の全体が収まり、表示可能か否かを判定する。プログラム全体がウィンドウ内に表示可能な場合（Ｓ４０７−Ｙｅｓ）、処理は終了する（Ｓ４１１）。一方、ステップＳ４０７で、プログラム全体をウィンドウ内に表示できないと判定される場合（Ｓ４０７−Ｎｏ）、処理はステップＳ４０８に進められる。
【００７６】
ステップＳ４０８において、先のステップＳ４０３で求めたインデックスを基にクラスの宣言部分をウィンドウ内に表示する。
【００７７】
ステップＳ４０９において、全ての関数についてクラスの宣言部分だけを縮小表示したかどうか判定する。全ての関数のクラスの宣言部分を縮小表示していると判定される場合（Ｓ４０９−Ｙｅｓ）、処理は終了する（Ｓ４１１）。一方、ステップＳ４０９の判定で、全ての関数のクラスの宣言部分を縮小表示していないと判定される場合（Ｓ４０９−Ｎｏ）、処理はステップＳ４１０に進められる。
【００７８】
ステップＳ４１０において、先のステップＳ４０４で求めたインデックスを基に、各関数の宣言部分を編集ソフトのウィンドウ内に表示して、処理は終了する（Ｓ４１１）。
【００７９】
図２５は、ユーザが関数func6()を追加した場合を例示する図である。関数func6()をユーザが追加したことによって、プログラム全体を表示することができない場合でも、各関数の宣言部分のみを表示することによって、ユーザはプログラム全体において、呼び出すことが可能な関数を容易に把握することが可能になる。図２５のように、各関数の宣言部分だけを縮小表示している際に、ユーザがスクロールバーを操作することによって、縮小表示している関数の内容を展開して確認する際の処理を、図２６を参照して説明する。
【００８０】
例えば、図２５において、ユーザがスクロールバーを上方に移動させて関数func5()の内容を展開表示して確認する場合、図２６の処理を実行する表示制御用のアプリケーションが起動する（Ｓ５０１）。
【００８１】
ステップＳ５０２において、新たに追加した関数の各行を、内部メモリに格納されているリストに追加する。
【００８２】
ステップＳ５０３において、内部メモリに追加した関数について、関数の宣言部分を解析して、そのインデックスを内部メモリに保存する。
【００８３】
ステップＳ５０４において、その関数の宣言部分に対して、その関数の処理内容を図２４のようにグループ化して内部メモリに保存する。
【００８４】
ステップＳ５０５において、ユーザが操作したスクロールバーの位置情報を解析して内部メモリに保存する。例えば、図２５に示すように、ウィンドウの縦方向をＹ座標として、スクロールバーの上端の座標値としてｙ１、下端の座標値としてｙ２を求める。
【００８５】
ステップＳ５０６において、先のステップＳ５０５で解析されたスクロールバーの位置情報に基づき、スクロールバーに対応して表示されている関数宣言のインデックスを特定し、その結果を内部メモリに保存する。
【００８６】
ステップＳ５０７において、全ての関数宣言を表示したかどうか判定する。全ての関数宣言を表示していないと判定した場合（Ｓ５０７−Ｎｏ）、処理はステップＳ５０８に進められる。ステップＳ５０８において、各関数宣言について、その関数宣言の表示位置がスクロールバーの位置に対応する関数宣言であるかどうか判定する。関数宣言の表示位置は、例えば、ステップＳ５０３の関数の宣言部分の解析結果に基づき、抽出された関数宣言の数、表示部２０６のウインドウサイズに基づき求めることが可能である。スクロールバーの長さをＬ１とすると、ウィンドウ内におけるスクロールバーの相対的な位置は、例えば、図２５に示すように、ウィンドウの上端からＬ０、下端からＬ２の位置にあると求めることができる。
【００８７】
各関数宣言の表示位置とスクロールバーの位置とを比較して、スクロールバーが位置する関数でない場合（Ｓ５０８―Ｎｏ）、処理はステップＳ５１０に進められ、ステップＳ５１０において、関数宣言のみを縮小表示する。
【００８８】
一方、ステップＳ５０８の判定で、スクロールバーの位置する関数である場合（Ｓ５０８−Ｙｅｓ）、処理はステップＳ５０９に進められる。
【００８９】
そして、ステップＳ５０９において、該当する関数について、その関数宣言と、その関数の処理内容を、例えば、図２４に示すようにグループ化された内容に基づいて、展開してウィンドウ内に表示する。
【００９０】
以上の処理を行うことによって、図２７のように、関数func1,2,3,4,6は関数宣言のみを表示し、ユーザの操作したスクロールバーの位置にある関数func5に関しては、その関数の処理内容を展開して表示することが可能になる。
【００９１】
（第４実施形態）
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録したコンピュータ可読の記憶媒体を、システムあるいは装置に供給することによっても、達成されることは言うまでもない。また、システムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【００９２】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００９３】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【００９４】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現される。また、プログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【００９５】
【図１】従来のチャットシステムにおけるウィンドウ表示を例示する図である。
【図２】従来のチャットシステムにおけるウィンドウ表示を例示する図である。
【図３】本発明の実施形態に係る表示制御装置を含む表示制御システムの概略を示した構成図である。
【図４】本発明の実施形態に係るＰＣ１０１の概略的な構成を示すブロック図である。
【図５】第1実施形態にかかる処理の流れを説明するフローチャートである。
【図６】テレビ会議における議事録をテキストベースで記録するアプリケーションの画面表示を例示する図である。
【図７】アジェンダの内容を保存した配列の例を示す図である。
【図８】各アジェンダに対する議事録の具体的な内容を保存する配列の例を示す図である。
【図９】アジェンダのみをウィンドウ内に表示した例を示す図である。
【図１０】指定したアジェンダに対して議事録の具体的内容を入力する矩形の入力フィールドを例示する図である。
【図１１】議事録の具体的な内容を保存した配列の例を示す図である。
【図１２】アジェンダ「課題」が選択された場合の表示例を示す図である。
【図１３】議事録の具体的な内容を保存した配列の例を示す図である。
【図１４】第２実施形態にかかる処理の流れを説明するフローチャートである。
【図１５】重要な会話に対する文字列、または図形情報を指定するためのユーザインタフェースを例示する図である。
【図１６】図形情報として「☆」が指定された文字データの強調表示を例示する図である。
【図１７】文字データのフォントを太くして強調された文字データを例示する図である。
【図１８】図１４のステップＳ２１４の詳細な処理手順を示す図である。
【図１９】表示部２０６のウィンドウ内に表示される、重要データ欄と、標準データ欄と、を例示する図である。
【図２０】重要データ欄のデータの表示位置をスクロールして制御する重要データ欄用のスライドバーを例示する図である。
【図２１】現在設定されている特定データのフォントサイズよりも小さいフォントサイズに切り替えて、追加された特定データを特定領域内に表示する例を示す図である。
【図２２】プログラムの編集ソフトの構成例を示す図である。
【図２３】第３実施形態にかかる処理の流れを説明する図である。
【図２４】関数func1()〜関数func5()の処理内容をグループ化(関数１、２、・・・５)を例示する図である。
【図２５】ユーザが関数func6()を追加した場合を例示する図である。
【図２６】関数の内容を展開表示する処理の流れを説明する図である。
【図２７】ユーザの操作したスクロールバーの位置にある関数func5に関して、関数の処理内容を展開して表示した例を示す図である。
【符号の説明】
【００９６】
１０１…ＰＣ
１０２…ＬＡＮ
１０３…デジタルカメラ
１０４…プリンター
１０５…ファイルサーバ
２０１…ＣＰＵ
２０２…ＲＯＭ
２０３…ＲＡＭ
２０４…記憶部(ハードディスク)
２０５…操作部
２０６…表示部
２０７…ＬＡＮ  Ｉ／Ｆ
２０８…ＬＡＮ回線
２０９…ＵＳＢ  Ｉ／Ｆ
２１０…ＵＳＢ回線
【図１】
2009187308.tif 000004
【図２】
2009187308.tif 000005
【図３】
2009187308.tif 000006
【図４】
2009187308.tif 000007
【図５】
2009187308.tif 000008
【図６】
2009187308.tif 000009
【図７】
2009187308.tif 000010
【図８】
2009187308.tif 000011
【図９】
2009187308.tif 000012
【図１０】
2009187308.tif 000013
【図１１】
2009187308.tif 000014
【図１２】
2009187308.tif 000015
【図１３】
2009187308.tif 000016
【図１４】
2009187308.tif 000017
【図１５】
2009187308.tif 000018
【図１６】
2009187308.tif 000019
【図１７】
2009187308.tif 000020
【図１８】
2009187308.tif 000021
【図１９】
2009187308.tif 000022
【図２０】
2009187308.tif 000023
【図２１】
2009187308.tif 000024
【図２２】
2009187308.tif 000025
【図２３】
2009187308.tif 000026
【図２４】
2009187308.tif 000027
【図２５】
2009187308.tif 000028
【図２６】
2009187308.tif 000029
【図２７】
2009187308.tif 000030