﻿TEditor version up history

ver 2.52 2006/05/05 -------------------------------------------------
■ 改良
OnMouseWheelxxxx を Delphi 4 以上で有効にした
heditor.pas

コンパイラオプションを Delphi2005, BDS2006 に対応させた
heverdef.inc

■ バグ
タブ文字を含む行に矩形張り付けを行った場合、キャレット位置が不正になる
バグを修正（久世さんに感謝）
HEditor.pas
procedure TEditor.SetSelTextBox(Buffer: PChar);

リストのインデックスが範囲を超えましたエラーが出る場合があったので
修正（かとちんさん、ootomoさんに感謝）
heFountain.pas
procedure TFountainParser.LastTokenBracket(Index: Integer;
  Strings: TRowAttributeStringList; var Data: TRowAttributeData);

スクロールを伴う文字列更新で行番号の描画が不正になる
バグを修正（ootomoさんに感謝）
HEditor.pas
procedure TEditorScreen.Update;

ver 2.51 2004/11/05 -------------------------------------------------
■ バグ
・HViewEdt.pas, HViewEdt.dfm を ver 2.48 のモノに戻した。
  ver 2.50 では、HViewEdt.dfm に Caret.TokenEndStop に対応する
  CheckBox を増やしたが D4, D6 がお亡くなりになる不具合が発生した。
  あまりにもたくさんのコントロールが張り付いたフォームをプロパティ
  エディタとするのには限界を超えたのかもしれないが、詳細は不明。

ver 2.50 2004/10/23 -------------------------------------------------
■ 新機能
・TEditorCaret.TokenEndStop プロパティを追加し、Ctrl + VK_LEFT,
  Ctrl + VK_RIGHT キー入力時に現在のトークンの終端へキャレットを移動
  出来るようにした
  TEditor.FindNextWordStart メソッドを virtual 化し、このプロパティに
  対応する動作とした。

■ バグ
・not FreeCaret and not FreeRow and not KeepCaret の時に全角２バイト目
  などでキャレット位置を補正した場合その補正値にキャレット位置が復帰
  してしまうバグを修正した。
  TEditor.AdjustCol メソッド

ver 2.48 2004/01/07 -------------------------------------------------
■ 改良
・CreateWindowHandle の override を D3 からとするコンパイラオプション
  を追加した。

ver 2.47 2003/11/28 -------------------------------------------------
■ 変更点
・設計時と実行時で crRightArrow, crDragSelCopy が違う問題を解決する
  ため heUtils.pas を更新し、独自のマウスカーソルのための変数
  crRightArrow, crDragSelCopy を GetUnUsedCursorIndex 関数を利用して
  決定する方式から以下の数値に固定化した。RegisterIntegerConsts
  手続きの利用もやめた。

  var
    crRightArrow: TCursor = (1958);
    crDragSelCopy: TCursor = (1959);

・内部文字列オブジェクトへの参照を返す InternalList プロパティを
  追加した。このプロパティで得た参照によって内部文字列オブジェクトを
  更新した場合、TEditor はその動作を保証しない。

ver 2.46 2003/10/03 -------------------------------------------------
■ バグ
・CreateWindowHandle を override して、再生成される際に生じるエラーを
  回避した。ご指摘下さった、十五夜るなさん、解決して下さった、にしのさ
  んに感謝致します。

ver 2.45 2003/05/05 -------------------------------------------------
■ バグ
・ver 2.44 の heUtils.pas の finalization 節で UnregisterIntegerConsts
  を実行していたが、メモリーリークすることが判明したのでこれを削除した
  
ver 2.44 2003/04/25 -------------------------------------------------
■ バグ
・TEditor.Caret.Cursors の設定が実行時に変わることに対応した。
  heUtils.pas で RegisterIntegerConsts, UnregisterIntegerConsts を実行

・D6 以降で TEditor.Caret.Cursors プロパティをプロパティエディタで設定
  出来なかったことへ対応した。
  HPropert.pas の TEditorCursorsPropertyEditor を変更

ver 2.43 2003/03/17 -------------------------------------------------
■ バグ
・Caret.TabSpaceCount が単独で変更された場合にも undo データがクリア
  されるようにした。
  procedure TEditor.ViewChanged

・動的に TEditor を生成し、且つ Name プロパティに値を設定して終了した
  場合にメモリーリークが発生していたので対応した
  procedure TEditor.WMSetText

ver 2.42 2002/11/20 -------------------------------------------------
■ バグ
・[EOF] を表示中に、Lines.EndUpdate; の直後に Lines.Add を実行すると
  [EOF] が２個表示されるバグを修正した。
  procedure TEditorScreen.Update;

ver 2.41 2002/10/12 -------------------------------------------------
■ バグ
・Quotation プロパティで指定された文字で囲まれたトークンが折り返し
  表示された時の不具合を修正した
  EditorFountain.pas IncludeTabToken メソッド

ver 2.40 2002/08/31 -------------------------------------------------
■ 修正
・heverdef.inc を Delphi 7 に対応させた
・heStringList.pas のコンパイラ指令を Delphi 7 に対応させた

ver 2.38 2002/05/31 -------------------------------------------------
■ バグ
・HitStyle プロパティに hsCaret を設定した状態で HitSelLength プロパテ
  ィを 1 に設定すると、キャレットの幅が不正になるバグを修正した。
  SetHitSelLength メソッド

■ 修正
・#WM_IME_COMOISITION のコメントを書き直した

ver 2.37 2002/05/08 -------------------------------------------------
■ 改良
・HitStyle プロパティに hsCaret を設定した状態で HitSelLength プロパテ
  ィを設定する際、タブ文字に対応した。SetHitSelLength メソッド

ver 2.36 2001/10/19 -------------------------------------------------
■ 新機能
・fsUnderline の下線を１点破線で描画出来るようになった。
・文字列定数ユニット heStrConsts.pas を導入した。
・D5, D6 用のマウスホイールイベントを追加した。
    property OnMouseWheel;
    property OnMouseWheelDown;
    property OnMouseWheelUp;

ver 2.35 2001/10/05 -------------------------------------------------
■ 改良
・バイナリファイルを読み込んだとき、リストエラーが出る場合があったの
  で、対応した。
    heFountain.pas
      TFountainParser.DBKanjiProc;

ver 2.34 2001/09/23 -------------------------------------------------
■ バグ
・HEditor.pas TEditor.PosTokenString, SelectPosToken メソッドのバグを
  修正したことによって、以下のメソッドでパーサーによって動作が左右さ
  れるバグが修正された。
  
  SelectWordFromCaret
  SelectWordFromPos
  WordFromCaret,
  WordFromPos

  また、以下のメソッドでパーサーの設定が反映されていなかったバグが
  修正された。
  
  SelectTokenBracketFromCaret
  SelectTokenBracketFromPos
  SelectTokenFromCaret
  SelectTokenFromPos
  TokenBracketFromCaret
  TokenBracketFromPos
  TokenFromCaret
  TokenFromPos
  TokenStringBracketFromCaret
  TokenStringBracketFromPos
  TokenStringFromCaret
  TokenStringFromPos 

■ 新機能
・TPerlFountainParser を実現するため、内部文字列オブジェクトの基底
  クラスに新しい文字列フィールドを追加した。
    heStringList.pas 
      TheStringList.DataStrings プロパティ
・TRowAttributeData 型に、以下の新しいフィールドを追加した。
    heRaStrings.pas 
      TRowAttributeData
        RowAttribute: TRowAttribute;
        PrevRowAttribute: TRowAttribute;
        Remain: Integer;
        DataStr: String;
・内部文字列オブジェクトに以下のプロパティを追加した。
    heRaStrings.pas 
      TRowAttributeStringList
        PrevRows, Remains プロパティ
・TEditor に上記新しいデータに対応するプロパティが増えた
    HEditor.pas
      TEditor.ListDataString, ListPrevRow, ListRemain プロパティ
・THTMLFountainParser が toSingleQuotation に対応した。

ver 2.33 2001/09/09 -------------------------------------------------
■ バグ
・３行以上に渡るトークンを認識出来なかったバグを修正した。
  ver 2.26 でこの不具合を作り込んでいた（反省）
  heFountain.pas TFountainParser.LastTokenBracket メソッド

■ 改良
・TRowAttributeStringList.Elements プロパティのデータフィールド長を
  ８ビットに拡張した。heRaStrings.pas
・TFountainParser に EolToken メソッドを追加し、toComment と同じ形式の
  独自のトークンを扱えるようにした。heFountain.pas

ver 2.32 2001/08/31 -------------------------------------------------
HitStyle に hsDraw, hsCaret が指定された状態で置き換え処理が出来な
かったことに対応するため以下のメソッドとプロパティが追加された。
これにともない、従来の HitSelected, SelectedDraw プロパティの意味が
変更された。

■ 追加されたメソッドとプロパティ
・TEditor.HitToSelected メソッド
・TEditor.SelectedData プロパティ

ver 2.31 2001/08/27 -------------------------------------------------
■ 新機能
・Caret.FreeRow プロパティを追加した。
  Caret.FreeCaret が False の時、Caret.FreeRow プロパティを True に
  設定すると、↑↓（VK_UP, VK_DOWN）キー押し下げの場合だけフリーキャ
  レット状態になる。
■ 改良
・サンプルプロジェクトに Search ページを追加した。

ver 2.30 2001/08/26 -------------------------------------------------
■ 改良
・TEditor.Speed.InitBracketsFull = True の状態且つ TFountain コンポー
  ネントを接続した状態で TEditor を破棄すると、InitBrackets メソッドが
  全文字列に対して処理を実行するため、無用な時間が費やされていたので、
  TEditor.Destroy に Destroying メソッド呼び出しを追加した。

■ 新機能
・検索一致文字列を表現する機能が実装された。
  追加された型
    TEditorHitStyle = (hsSelect, hsDraw, hsCaret);
      hsSelect ... 従来型の選択方式
      hsDraw ..... View.Colors.Hit に保持される背景色・前景色で描画
      hsCaret .... 検索一致文字列長のキャレットを作成し点滅させる
                   （折り返し、改行を含むヒット文字列には非対応）
  更新された型
    TEditorSelectionState = 
      (sstNone, sstInit, sstSelected, sstHitSelected);
      sstSelected ...... 従来の選択状態。
      sstHitSelected ... 検索一致文字列を描画している状態。
  追加されたプロパティ
    TEditor
      HitStyle, HitSelLength, HitSelected, SelectedDraw 各プロパティ
    TEditorColors
      Hit プロパティ
    TEditorProp
      HitStyle プロパティ

ver 2.27 2001/08/06 -------------------------------------------------
■ バグ
・TUndoDataList.Clear の条件シンボルを TLIST_CLEAR_VIRTUAL に修正した

ver 2.26 2001/08/05 -------------------------------------------------
■ バグ
・半角空白だけの行文字列が折り返し表示されている場合、BracketIndex が
  更新されなかったバグを修正した。
■ 改良
・条件シンボル定義ファイルに TLIST_CLEAR_VIRTUAL を追加し、Delphi4,
  C++Builder3 以降で TList.Clear メソッドが virtual 化されたことに
  対応した。

ver 2.25 2001/07/26 -------------------------------------------------
■ 改良
・Delphi, C++Builder 各バージョンに対応する条件シンボル定義ファイルを
  導入した。SybEdit, http://synedit.sourceforge.net/ を参考にさせて
  頂きました。heverdef.inc
・内部文字列リストの基底クラス（ TPointerStringList ）が、とんでもなく
  遅いことに気づいたので、TStrings から派生した TheStringList を導入
  した。 heStringList.pas, heRaStrings.pas
・Ｄ６に対応するコンパイラオプションを追加した
  HEditReg.pas, HPropert.pas

■ 変更点
・本バージョンより、ヘルプファイルを分割しました。
  お手数ですが、hehlp223.lzh を別途ダウンロードしてください。
  hehlp223.lzh に含まれるヘルプファイルは TEditor ver 2.23, 2.24 に
  同梱されていたものです。

ver 2.24 2001/07/24 -------------------------------------------------
■ バグ
・Search メソッドで後方検索を行うと、リストエラーが発生する場合が
  あったバグを修正した。

ver 2.23 2001/07/24 -------------------------------------------------
■ 新機能
・TEditor.LinesToRow メソッドを追加した。
・TEditor.Search メソッドを追加した。

ver 2.22 2001/07/18 -------------------------------------------------
■ 改良
・WordWrap = True で、WrapOption が更新された場合たとき、RowMarks が
  １ヶ所に集まって画面上から消える仕様を改善した。
  TEditorScreenStrings.WrapLines メソッド
■ 新機能
・Speed プロパティ ( TEditorSpeed ) を導入した
    VK_DOWN, VK_UP が押し続けられた時のスクロール量
    VK_NEXT, VK_VK_PRIOR に対するスクロール量、
    VK_NEXT, VK_VK_PRIOR が押し続けられた時のスクロール量
    InitBrackets を全行に対して行うかどうか
  などを指定出来るようになった。
    TEditorSpeed.CaretVerticalAc, InitBracketsFull, PageVerticalRange,
    PageVerticalRangeAc プロパティ

ver 2.21 2001/07/16 -------------------------------------------------
■ バグ
・Imagebar の描画が、Leftbar の行番号桁数の増減に追随していなかった
  バグを修正した。
    TEditor.UpdateLeftBarWidth メソッド
■ 改良
・RowMarks 更新処理を見直した
  TEditorScreenStrings.StretchLines, Clear メソッド
  TEditor.PutRowMark, DeleteRowMark, SetListRowMarks メソッド

ver 2.20 2001/07/15 -------------------------------------------------
■ バグ
・ver 2.11 で SetRowCol メソッドを簡略化したが、マウスでの選択処理中に
  全角文字や、タブ文字を通過する際キャレットがちらつくので、元に戻した。
  というか、そのための処理だったことを忘れて簡略化してしまっていた(反省)

■ 改良
・Wnn98 を使用すると WParam に IMN_CLOSECANDIDATE が設定された
  WM_IME_NOTIFY (だけ)が来る現象があるため、CaretEndUpdate メソッド
  が改良された
・PaintRectSelected の引数に Parser: TFountainParser が加わった

■ 新機能
・Leftbar の左側にジャンプマークなどのビットマップを表示出来るようになり、
  しおり機能が追加された。内蔵ポップアップメニューにもこれに対応する項目
  が追加された。

  新しいプロパティとメソッド
  TEditor
    Imagebar, ImageDigits, ImageMarks, ListRowMarks 各プロパティ
    PutRowMark, DeleteRowMark, GotoRowMark 各メソッド
  TRowAttributeStringList
    RowMarks プロパティ
  TEditorScreenStrings
    IncludeRowMarks, ExcludeRowMarks, ValidRowMarks 各メソッド

ver 2.14d6 2001/07/08 Delphi 6 コンパニオンＣＤバージョン -----------
■ 改良
・Ｄ６に対応するコンパイラオプションを追加した
  HEditReg.pas, HPropert.pas

ver 2.13 2001/06/27 -------------------------------------------------
■ バグ
・文字列が更新されたとき、内部文字列オブジェクトの Tokens, PrevTokens
  プロパティが更新されていなかったバグを修正した。
  TEditorScreenStrings.ChangeList, DeleteList, InsertList メソッド

■ 改良
・WM_IME_CHAR メッセージハンドラを削除し、WM_IME_COMPOSITION メッセー
  ジハンドラを復活させた。
・TKeyMacro に対応する２バイト文字列取得処理を WM_CHAR メッセージハン
  ドラで行う仕様になった。これで Windows 標準仕様になったと思う。
・TFountain に CreateParser メソッドが実装され、C++Builer において、
  クラス参照型変数からそのクラスのコンストラクタ呼び出しが出来ないこと
  に対応した。

ver 2.12 2001/06/22 -------------------------------------------------
■ バグ
・Windows2000 で IME 入力確定後の Enter キーが無視されたり、半角スペ
  ースを入力すると E が表示される場合があったバグを修正した。
・「渡邊」という文字を入力するとリストエラーが発生したバグを修正した。
    TEditor.WMImeComposition, WMImeChar, WMChar メッセージハンドラ

■ 改良
・TStoreComponent.ReadReg, WriteReg メソッドの引数を変更し、拙作
  TRegManager と互換性を持たせた。

ver 2.11 2001/06/12 -------------------------------------------------
■ バグ
・１，０００文字を越える行文字列を表示する際、HideMark プロパティが
  False に設定されていると、改行マークや [EOF] マークが表示されていた
  バグを修正した。TEditor.PaintLine, PaintLineSelected メソッド
・TStoreComponent の WriteIni, ReadIni, WriteReg, ReadReg メソッドの
  実装を TStream.WriteComponent, ReadComponent メソッドを利用する方式
  に変更し、TEditor に TFountain が接続された状態で読み込み処理を行う
  と、接続が切断されていた不具合を修正した。
・THTMLFountain で </H3> などが toTagElement として認識されていなかっ
  たバグを修正した。THTMLFountainParser.SlashProc メソッド
■ 改良
・ExpandTabLength, TabbedTopSpace メソッドを導入し、StrToAttributes
  メソッドのロジックを見直したことによって、文字列処理を高速化した。
・TEditorStrings.SetTextStr メソッドで受け取る文字列の終端が #10, #13
  ではないとき、最終行の属性を raEof とするようにした。
・Windows 2000 上での IME 入力において、変換確定後のリターンキーが無視
  される症状が報告されたので、WM_IME_CHAR メッセージハンドラを改良した。
・TFountain の TStrings 型プロパティエディタを独立させた。

ver 2.10 2001/06/05 -------------------------------------------------
■ バグ
・SelTabIndent, SelTabUnIndent メソッドで選択領域が不正になる場合が
  あったバグを修正した。
・SelIndent で先頭の空白部分にタブ文字がある場合選択領域が不正になる
  場合があったバグを修正した。
・設計時に Lines プロパティを編集する際、WordWrap が反映されない
  場合があったバグを修正した。
・SetFountain メソッドで FreeNotification メソッド実行を行っていなか
  ったバグを修正し、他のフォームにある TFountian コンポーネントを参照
  出来るようにした。
■ 新機能
・TEditorMarks.HideMark プロパティが増えた
・TFountain にファイル拡張子リストを保持する FileExtList プロパティが
  追加された。
・TFountain に、引数に与えられたファイル拡張子が FileExtList に存在す
  るかどうかを返す HasExt メソッドが追加された。

ver 2.10b2 2001/05/07 -----------------------------------------------
■ バグ
・１，０００文字目に全角文字を入力した場合文字が化ける場合があった
  バグを修正した
    TEditor.AdjustCol メソッド
・MaxLineCharacter 定数を変更しても追随していなかったバグを修正  
    TEditor.InitDrawInfo メソッド
■ 改良
・TKeyMacro コンポーネントへ対応するため、IME からの文字列取得を TMemo
  と同様に WM_IME_CHAR メッセージハンドラで行うようにした。
  WM_IME_COMPOSITON メッセージハンドラは削除された。

ver 2.10b 2001/04/20 ------------------------------------------------
■ バグ
・WrapOption が更新されて行数が増えた場合、レフトバーの幅が更新されな
  かったバグを修正。
    TEditorScreenStrings.ClientsInitView メソッド

・WrapByte が TabSpaceCount の倍数でない時、タブ文字を含む行が正常に
  ワードラップされなかったバグを修正。
    TEditorScreenStrings.StrToWrapList, WrapCount メソッド

・ver 2.04b で WrapByte に指定された値より１バイト少ない位置で折り返
  されていたバグを修正。
    TEditorScreenStrings.StrToWrapList, WrapCount メソッド

・選択領域を更新すると改行マークが消える場合があったバグを修正。
    TEditor.PaintLine, PaintLineSelected メソッド

・Leftbar.LeftMargin, RightMargin に MarginLimit 以上の値を設定
  出来ていたバグを修正。
    TEditorLeftbar.SetLeftMargin, SetRightMargin

・１，０００文字目に２バイト文字があると文字化けしていたバグを修正。

■ 改良
・１，０００文字目が全角１バイト目の場合は、１，００１文字目まで描画
  する仕様とした。キャレットの移動、RetMark, EofMark, WrapMark の描画
  もこれに対応した
    FDxArray フィールドデータ
    TEditor.DrawTextRect, SetCol, AdjustCol, PaintLine,
    PaintLineSelected メソッド

・Delphi-IDE のコンポーネントパレット上に TEditor ページを作成する
  仕様になった。

・改行マークの描画方式をフォントサイズに追随する仕様に変更した。
    TEditor.DrawRetMark, DrawRetMarkSelected

・デフォルトの色指定が変更された。
    clWindow -> clWhite;   clWindowText -> clBlack; 他

・トークンに対応する描画要素のデフォルト色を clNone とし、この clNone
  が指定されている場合 TEditor.Color, TEditor.Font.Color に追随する仕様
  とした。

・ver 2.00 で追加された ParserClass プロパティが削除された。

・ソースコード内のコメントへのインデックスを付けるようにした。

■ 新機能
・折り返しマークを表示出来るようにした
    TEditorMarks.WrapMark プロパティ

・パーサーを内包するコンポーネント (TFountain) への参照フィールドを
  持った。
    TEditor.Fountain プロパティ

・現在の Fountain を返すプロパティが追加された。
    TEditor.ActiveFountain プロパティ。

・FList の各行データを取得するプロパティが追加された。
    TEditor.ListData, ListPrevToken, ListWrappedByte プロパティ。

ver 2.04b 2001/03/06 ------------------------------------------------
■ 改良
・以下のメソッドが追加された。
  function CreateEditorCaret: TEditorCaret; virtual;
  function CreateEditorMarks: TEditorMarks; virtual;
  function CreateEditorMargin: TEditorMargin; virtual;
  function CreateEditorLeftbar: TEditorLeftbar; virtual;
  function CreateEditorRuler: TEditorRuler; virtual;
・TEditor の private セクションから、プロパティのデータフィールド、
  プロパティのアクセスメソッド、メッセージハンドラを除く部分が
  protected セクションに移動された。

ver 2.03 2001/02/25 -------------------------------------------------
■ バグ
・１行文字列が１，０００文字を越えた状態で WordWrap オンオフを繰り返
  すと致命的なエラーが発生していたバグを修正した。
  TEditor.DrawTextRect メソッド
  また、１，０００文字目以降の文字列は描画されない仕様とした。

■ 新機能
・Shift + VK_RETURN を入力した場合、現在行にインデントされた新しい１行
  を挿入する仕様になった。
  TEditor.WMChar メソッド
・トップマージン内のカーソルを指定出来るようになった。
  Cursors.TopMarginCursor プロパティ

■ 改良
・TEditorParser.LastTokenBracket メソッドを virtual 化した。
・TEditor.ListInfoFromPos メソッドを virtual 化した。
・TEditor.DoCaretMoved メソッドを追加した。
・VK_LEFT, VK_RIGHT 入力時のキャレット位置取得方法を変更した。
  TEditor.WMKeyDown メソッド
・半角文字入力時の受け入れ文字を ($20..$7E, $A1..$DF) から 
  ($20..$7E, $A0..$FF) へ変更した。TEditor.WMChar メソッド

ver 2.02 2000/12/31 -------------------------------------------------
■ バグ
・function TEditorParser.IsReserveWord: Boolean;
  該当トークンが toBracket, toComment の場合は偽を返すようにした
・D5 でサイズを極端に小さくすると発生していたエラーを回避するため
  InitDrawInfo メソッドでの FRowCount の取得方法を改善した
・Color, ParentColor プロパティにデフォルト指定を追加した。
・ExchangeList メソッドに InitOriginBase 呼び出し処理を加えた。

ver 2.01 2000/11/27 -------------------------------------------------
■ バグ
・Ⅳなどの全角記号を表示させるとフリーズするバグを修正した
  TEditorParser.DBSymbolProc メソッド

■ 改良
・TEditorStrings.LoadFromFile で、unix などで作成された #10 のみを
  改行文字として扱うファイルも読み込めるようにした。
・TEditorParser のコンストラクタを virtual 化した
・折り返し表示処理を若干高速化した
  TEditorScreenStrings.WrapLines, StretchLines メソッド
・ヘルプファイルに toString の記述があった部分を修正した

ver 2.00 2000/11/24 -------------------------------------------------
■ 新機能
・３行以上にわたって折り返し表示されている長いトークン（'' で囲まれた
  長い文字列や、長～い url など）が別色表示出来るようになった。
・TEditor に ParserClass プロパティが追加され、実行時にパーサークラス
  を変更出来るようになった。
・TEditorParser が改良され、トークンの取得方法を容易にカスタマイズ出
  来るようになった。
・TEditorParser に public なメソッド群が追加された。
  constructor CreateWithToken(const S: String; Editor: TEditor;
    BracketIndex: Integer; Token: Char);
  procedure NewData(const S: String; Editor: TEditor;
    BracketIndex: Integer; Token: Char);
  function TokenLength: Longint;
  function TokenToEditorColor: TEditorColor; virtual;
・TEditorParser.NextToken で行われていた処理を細分化し protected な
  メソッド群が多数追加された。
・toString, toInteger の扱いが変更され、新しいトークンが追加された。
  toHex, toQuotation, toControlCode, toControlCodeHex, toReserve

■ 改良
・TEditorProp.AssignTo の動作を改善した。

■ バグ
・折り返し表示するための文字列リスト全体を処理するメソッドのバグを修
  正した（ TEditorScreenStrings.WrapLines メソッド ）

ver 1.75 2000/11/01 -------------------------------------------------
■ バグ
・折り返し表示するための文字列分割メソッドのバグを修正した
  TEditorScreenStrings.StrToWrapList メソッド
・バックスペースアンインデント処理のバグを修正した

ver 1.74 2000/10/17 -------------------------------------------------
■ バグ
・Caret.BackSpaceUnIndent プロパティを False に設定してもバックスペー
  スアンインデント出来てしまっていたバグを修正。

ver 1.73 2000/10/12 -------------------------------------------------
■ バグ
・WordBreak 処理の不具合によって undo, redo 実行時にリストエラーが発生
  していたバグを修正した。
■ 改良
・Delphi4 以降 TControl.DefaultHandler メソッドが public になったこと
  へ対応した。
■ 新機能
・Caret.BackSpaceUnIndent プロパティが追加され、バックスペースアンイン
  デントが可能になった。

ver 1.72 2000/07/21 -------------------------------------------------
■ バグ
・リストエラーが出るバグを修正した InitBrackets メソッド
■ 改良
・描画ロジックを改善した。
・PosTokenString メソッドの返値取得方法を改善した
・サンプルプロジェクトの描画ロジックを Leftbar, Ruler に対応させた

TEditorScreen.Update メソッドを改良した
ver 1.71 2000/07/16 -------------------------------------------------
■ バグ
・実行時に View.Brackets を更新するとエラーになっていたバグを修正
・View.Brackets に指定された文字列を編集した時、描画が追随しない
  バグを修正

■ 改良
・Undo, Redo を実行する際の描画の静粛性を向上させた

ver 1.70 2000/07/12 -------------------------------------------------
■ 新機能
・Leftbar, Ruler が実装され行番号・ルーラーを表示出来るようになった
・Leftbar の幅 + Margin.Left の値を返す LeftMargin メソッドを実装
・Ruler の高さ + Margin.Top の値を返す TopMargin メソッドを実装
・SelTabIndent, SelTabUnIndent メソッドを実装

■ 改良
・SelIndent, SelUnIndent の仕様を改良し、タブ文字も扱えるようになった
・SetScrollBars メソッド内での RecreateWnd メソッド呼び出しをやめて
  ShowScrollBar(Handle, ... の形にした。
・表示可能文字列長を１，０００文字とし、横スクロールの限界値をこれに
  対応した
・描画の静粛性が向上した

■ バグ
・SelIndent, SelUnIndent 後に選択開始位置が不正になっていたバグを修正
・一部のメッセージハンドラで ReadOnly プロパティを無視して文字列を更新
  していたバグを修正
・[EOF] 上で Ctrl + ↑↓が機能しなかったバグを修正

ver 1.62 2000/05/10 -------------------------------------------------
■ バグ
・ver 1.61 で、キャレットが画面に定着する場合があった不具合を改善
・今回の ver 1.62 を TEditor 安定版として公開し続けることにします。

ver 1.61 2000/05/01 -------------------------------------------------
■ 改良
・$2000 バイト以上の長い１行文字列を含むファイル読み込みへの対応
・フォーカスの再入によるキャレット位置へのスクロールを回避
・スクロールバーをクリックしてもフォーカスが移動しないようにした
・スクロールによってキャレットがマージン内に入る現象を回避した

■ 新機能
・toBracket 対応のメソッド群を実装した

  procedure TEditor.SelectTokenBracketFromCaret;
  procedure TEditor.SelectTokenBracketFromPos(Pos: TPoint);
  function TEditor.TokenBracketFromCaret: Char;
  function TEditor.TokenBracketFromPos(Pos: TPoint): Char;
  function TEditor.TokenStringBracketFromCaret: String;
  function TEditor.TokenStringBracketFromPos(Pos: TPoint): String;

ver 1.60 2000/04/23 -------------------------------------------------
■ 新機能
・EM_ 系のメッセージハンドラを実装した。

■ 改良
・UrlChars に '+' を追加した
・[EOF] 以降での Ctrl + ←→を無効化した

ver 1.54 2000/04/04 -------------------------------------------------
■ 改良
・選択領域をドラッグする際、コントロールキー押し下げるとマウスカーソ
  ルが変わる仕様にした。Caret.Cursors.DragSelCopyCursor プロパティが
  追加されています。
・エスケープキーで選択領域のドラッグを中断出来る仕様にした。

ver 1.53 2000/03/29 -------------------------------------------------
■ 改良
・選択領域ドラッグの仕様を変更し、左ボタンを押し下げた状態から、数ピク
  セルドラッグされた時点で開始されるようになった。
・マウスで選択処理を行う時にキー入力を受け付けない仕様にした。
・マウスによる選択やドラッグ時に上方向にもスクロールするようにした。
・OnMouseMove イベントハンドラでマウスカーソル変更処理を行う場合の
  不具合を解消した。

■ 新しい型・メソッド・プロパティ
・TEditorSelDragState 型
・TEditorMouseCursorState 型
・CancelSelDrag メソッド
・CursorState プロパティ
・Caret.AutoCursor プロパティ
・WM_CLEAR, WM_COPY, WM_CUT, WM_PASTE メッセージハンドラの実装

ver 1.52 2000/03/23 -------------------------------------------------
■ 新機能
・選択領域の文字列をマウスドラッグで移動する際のマウスカーソルを指定
  出来るようにした。Caret.Cursors プロパティが増えています。
・TEditorCaret.SelDragMode プロパティによって、選択文字列のドラッグ＆
  ドロップを実装出来る仕様になった。
・レフトマージン内のマウスカーソルを指定出来るようになった。
  Caret.Cursors.LeftMarginCursor プロパティ
・レフトマージンをクリックすることで、対象１行文字列を選択出来るように
  なった。

■ 改良
・選択文字列のドラッグ中に右クリックするとポップアップメニューが
  出てしまっていた不具合を解消した

ver 1.51 2000/03/12 -------------------------------------------------
■ 改良
・選択領域のマウスドラッグ移動の仕様を改善し、文字列終端以降へも移動
  出来るようにした。

ver 1.50 2000/03/11 -------------------------------------------------
■ 新機能
・選択領域の文字列をマウスドラッグで移動出来るようにした。
■ 改良
・キャレットを縦移動する際、Caret.InTab プロパティ値が False でもタブ
  文字にキャレットが入ってしまう仕様を改善し、Caret.Intab プロパティ
  値を遵守する仕様にした。

ver 1.45 2000/03/02 -------------------------------------------------
■ バグ
・[EOF] 以降を選択した状態で SelectionMode プロパティ値を変更する
  と発生していたエラーを修正した。
■ 改良
・マウスによるキャレット位置指定処理を改善した。
・タブ文字をマウスドラッグによって選択する際の動作を改善した。

ver 1.44 2000/02/04 -------------------------------------------------
■ バグ
・Clear メソッドでキャレット位置が不正になるバグを修正
・その他、分割処理関連のロジックを見直した。

ver 1.43 2000/01/30 -------------------------------------------------
■ バグ
・Brackets プロパティ値が設定されているとプロパティエディタが
  開けなくなるバグを修正

ver 1.42 2000/01/29 -------------------------------------------------
■ バグ
・画面分割時の Undo, Redo でキャレット位置が不正になるバグを修正
・画面分割時に文字列を削除した場合、[EOF]マークが不正になるバグを修正

ver 1.41 2000/01/27 -------------------------------------------------
■ バグ
・TEditorColors.Destroy, TUndoDataList.Clear, Delete にメモリーリーク
  のバグがありました。ご指摘を頂いた DEKO さんに多謝。

ver 1.40 2000/01/25 -------------------------------------------------
■ 新機能
・２画面分割・別窓での編集を実現するための ExchangeList メソッドを実装
  し、文字列の更新・描画もこれに対応しました。
  実際の画面分割・別窓編集には若干のコーディングが必要になります。
  メソッド一発で分割されたりはしません。

ver 1.34 2000/01/18 -------------------------------------------------
■ バグ
・toUrl, toMail なトークンが折り返し表示された場合、正しく描画されなか
  ったバグを修正。
・動的に生成した場合、デフォルトのポップアップメニューが機能しなかった
  バグを修正。

ver 1.33 2000/01/13 -------------------------------------------------
■ バグ
・ver 1.32 で PutStrintToLine メソッドの修正の他に加えた変更に致命的な
  ミスがあったので、元に戻しました。

ver 1.32 2000/01/13 -------------------------------------------------
■ バグ
・PutStringToLine メソッドのバグを修正(^^;)
  選択状態から文字入力を行うと改行文字が１個増えるバグがありました。

ver 1.31 2000/01/12 -------------------------------------------------
■ バグ
・タブ文字がある行で文字を入力する際の不具合を修正

    PutStringToLine メソッドのバグを修正しました。以前のバージョンに
  あったタブ文字を上書きする際の不具合も解消されています。
    また、上書きモードで、折り返し表示している行の後半に IME から長い
  文字列を入力する時、次の行も上書きされるようになりました。

ver 1.30 2000/01/08 -------------------------------------------------
■ バグ
・ver1.24 にあったマウスで選択した後キーボードで選択領域の変更が
  出来なかったバグを修正

■ 新機能
・矩形選択に対応した

■ interface 部の変更点

・削除

  WMLButtonUp メッセージハンドラ
  TMouseSelPosition 型宣言

・追加

  CF_BOXTEXT 識別子
  TEditorSelectionState 型宣言
  TEditorSelectionMode 型宣言
  SelectionMode プロパティ
  OnSelectionModeChange イベント
  SetSelTextBox メソッド

ver 1.24 1999/12/20 -------------------------------------------------
■ バグ
・折り返し表示している行で文字列を入力すると、キャレット位置が
  不正になる場合があったバグを修正。
・コンパイラ指令を Delphi 5 に対応させたので、Delphi 4 から追加された
  Anchors プロパティなどが Delphi 5 でも表示されるようにした。

ver 1.23 1999/12/03 -------------------------------------------------
■ バグ
・[EOF] 以降を選択している場合、張り付けが出来なかったバグをフィックス
■ 改良
・選択状態から文字列を入力した際の Undo, Redo の動作を改善

ver 1.22 1999/12/01 -------------------------------------------------
■ バグ
・[EOF] 以降を選択して削除すると発生したエラーをフィックス
■ 改良
・選択文字列を置き換えた場合の Undo, Redo の動作を改善

ver 1.21 1999/10/10 -------------------------------------------------
■ 改良
・D5 で実行時パッケージから、DsgnIntf ユニットが削除されたことへ対応した
  （ hpropert.pas が増えました）
・TEditorStrings.Clear メソッドで、明示的に UpdateWindow するようにした
・フォーカスを持っている場合で且つ Lines.BeginUpdate した際の
  文字列処理速度を改善した。
・デフォルトポップアップメニューのキャプションを「貼り付け」にした
  また、メニューアイテムの Enabled を ReadOnly プロパティに対応させた
・TEditorParser の派生クラスを受け入れられる仕様とした。

■ 新機能
・Shift + Click で選択出来るようにした
・TEditorBracketCollection に SameBkColor, SameColor, SameStyle メソッド
  を新設した

■ バグ
・Caret.AutoIndent and Caret.TabIndent で VK_RETURN を入力した際に
  キャレット位置が不正になるバグを修正
・VK_HOME, VK_END でスクロールさせた場合、画面へキャレットが焼き付く
  バグを修正
・[EOF] で Shift + VK_DOWN, 先頭行で Shift + VK_UP キー入力を
  すると、アンダーラインが消えたままになるバグを修正

ver 1.20 1999/09/23 -------------------------------------------------
■ 改良
  ・PosTokenString メソッドを複数行に渡る語句へ対応させた（引数に変化あり）
■ 新機能
  ・SelectTokenFromCaret メソッドを新設 // キャレット位置の語句を選択
  ・SelectTokenFromPos メソッドを新設   // Pos 位置の語句を選択
  ・SelectWordFromCaret メソッドを新設  // キャレット位置の１語を選択
  ・SelectWordFromPos メソッドを新設    // Pos 位置の１語を選択

ver 1.12 1999/09/18 -------------------------------------------------
■ 改良
・スクロールバーによって、キャレットが消えた状態からフォーカスを失った
  後、マウスで再入した場合の動作を改善した。
■ 新機能
・デフォルトのポップアップメニューを加えた

ver 1.11 1999/09/09 -------------------------------------------------
■ バグ
・fsMDIChild フォーム上で利用する際、親フォームにあるコントロールとの
  間で起こるフォーカス移動の不具合を修正。nifty:FDELPHI/MES/10/6452 で
  Satobe さんにアドバイスを頂きました。感謝

ver 1.10 1999/08/28 -------------------------------------------------

■ バグ
・Undo, Redo する際、文字列リストの Brackets 配列プロパティが更新され
  ないバグを修正
・「句読点のぶら下げ」の不具合を修正
・文字列に変更が無くても BeginUpdate, EndUpdate を実行すると OnChange 
  イベントが発生していたバグを修正
・サンプルプロジェクトのバグを修正

■ 改良
・url の判別文字列に 'www.', '=', '?' を加えた
・コンパイラ指令を追加した。{$V+,B-,X+,T-,P+,H+,J+}

■ 新機能
・View.Mail プロパティを追加        // メールアドレスを判別するしないフラグ
・View.Colors.Mail プロパティを追加 // メールアドレスの描画色
・Caret.KeepCaret プロパティを追加  // キャレット位置を保存するしないフラグ
・SelIndent メソッドを追加          // 選択行のインデント
・SelUnIndent メソッドを追加        // 選択行のアンインデント
・OnSelectionChange イベントを追加  // 選択領域の変更を通知するイベント

ver 1.00 1999/07/23 -------------------------------------------------

■ 新機能
・予約語・記号・文字列・数値・コメント領域・半角文字・
  全角文字及び半角カタカナ・url を識別し、それぞれに、
  背景色、文字色、フォントスタイルを指定出来るようになった
・{ }, (* *), <!-- -->, asm end, つまり である, など、特定の文字列で
  囲まれた領域を複数行に渡って別色表示出来るようになった。
  
■ published プロパティの変更

・以下のプロパティは削除されました。
  property DefaultDrawing: Boolean read FDefaultDrawing write SetDefaultDrawing;
  property DisposeBlank: Boolean read FDisposeBlank write SetDisposeBlank;
  property DrawAllWords: Boolean read FDrawAllWords write SetDrawAllWords;
  property DelimDBCS: Boolean read FDelimDBCS write SetDelimDBCS;
  property ReserveWordColor: Boolean read FReserveWordColor write SetReserveWordColor;
  property ReserveWordFont: TFont read FReserveWordFont write SetReserveWordFont;

・以下のプロパティは TEditorViewInfo の TEditorColors オブジェクトへ
  移行されました。
  property ReserveBkColor: TColor read FReserveBkColor write SetReserveBkColor;
  property SelectBkColor: TColor read FSelectBkColor write FSelectBkColor;
  property SelectFontColor: TColor read FSelectFontColor write FSelectFontColor;

    ex Editor1.ReserveBkColor は 
       Editor1.View.Colors.Reserve.BkColor となります。

・以下のプロパティは TEditorCaret オブジェクトへ移行されました。
  property CaretAutoIndent: Boolean read FCaretAutoIndent write FCaretAutoIndent;
  property CaretFree: Boolean read FCaretFree write SetCaretFree;
  property CaretInTab: Boolean read FCaretInTab write FCaretInTab;
  property CaretLockScroll: Boolean read FCaretLockScroll write FCaretLockScroll;
  property CaretNextLine: Boolean read FCaretNextLine write FCaretNextLine;
  property CaretStyle: TEditorCaretStyle read FCaretStyle write SetCaretStyle;
  property PrevSpaceIndent: Boolean read FPrevSpaceIndent write FPrevSpaceIndent;
  property SoftTab: Boolean read FSoftTab write FSoftTab;
  property TabIndent: Boolean read FTabIndent write FTabIndent;
  property TabSpaceCount: Integer read FTabSpaceCount write SetTabSpaceCount;

    ex Editor1.CaretAutoIndent は Editor1.Caret.AutoIndent となります。

・以下のプロパティは TEditorMargin オブジェクトへ移行されました。
  property CharacterMargin: Integer read FCharacterMargin write SetCharacterMargin;
  property TopMargin: Integer read FTopMargin write SetTopMargin;
  property LeftMargin: Integer read FLeftMargin write SetLeftMargin;
  property LineMargin: Integer read FLineMargin write SetLineMargin;

    ex Editor1.LeftMargin は Editor1.Margin.Left となります。

・以下のプロパティは TEditorMarks オブジェクトへ移行されました。
  property EofMark: Boolean read FEofMark write SetEofMark;
  property EofMarkColor: TColor read FEofMarkColor write SetEofMarkColor;
  property RetMark: Boolean read FRetMark write SetRetMark;
  property RetMarkColor: TColor read FRetMarkColor write SetRetMarkColor;
  property UnderLine: Boolean read FUnderLine write SetUnderLine;
  property UnderLineColor: TColor read FUnderLineColor write SetUnderLineColor;

    ex Editor1.EofMark は Editor1.Marks.EofMark.Visible に、また
       Editor1.EofMarkColor は Editor1.Marks.EofMark.Color となります。

■ 削除された public メソッド
  procedure StrToWordList(S: String; List: TStrings); // S をデリミタで切り分けた文字列を List に格納する

■ 追加された public メソッド
  function TokenFromCaret: Char;                     // キャレット位置の語句の種類を返す toBracket を返すことは無い
  function TokenFromPos(Pos: TPoint): Char;          // 指定ポイントの語句の種類を返す toBracket を返すことは無い
  function TokenStringFromCaret: String;             // キャレット位置の語句を返す（View.Bracets は無視される）
  function TokenStringFromPos(Pos: TPoint): String;  // 指定ポイントの語句を返す（View.Bracets は無視される）
  function WordFromCaret: String;                    // キャレット位置の１語を返す（View の各プロパティ設定は無視される）

ver 0.63 1999/05/15 -------------------------------------------------

■ バグ
・Ｄ４用 HEditor4.dcu で終了時に「不正なポインタ操作」エラーが
　出ていたバグを修正した。
・MSIME95 を使用して全角スペースを入力するとキャレットが消えてしまう
　現象を回避した。

ver 0.62 1999/05/12 -------------------------------------------------

■ バグ
・選択領域を削除する際、改行文字が消えてしまうバグを修正。
・Undo, Redo メソッド実行時、選択状態が解除されないバグを修正
・追い出し処理で、全角文字が化けるバグを修正。
・WrapOption プロパティの変化が反映されないバグを修正。
・WordBreak 処理で、WrapByte に達すると追い出されていたバグを修正
■ 改善
・WordBreak 処理で、全角半角区切りを処理の対象に加えた。
・TWrapOption メンバーから TStringList フィールドを削除し、
  StrWrapList メソッドを高速化した。

ver 0.61 1999/05/08 -------------------------------------------------

■ バグ
・OnDrawLine イベントが発生しない場合があったバグを修正
・DeleteRow, Clear, Lines.Add, Insert, Put, Delete を選択状態から実行
  した場合、選択状態が解除されないバグを修正
・選択状態から SelStart := 0; が機能しなかったバグを修正
・タブ文字を含む行での選択領域を削除する際、キャレット位置が不正になる
  バグを修正
・WordWrap, WrapByte プロパティ値の変更がスクロールポジションに反映
  されていなかったバグを修正
・動的に生成する際の「コントロールは親ウィンドゥを・・・」エラーへの対処

■ 改善
・WordWrap, WrapByte プロパティ値を変えても、OnChange イベントが発生
  しない仕様に変更。
・ＩＭＥ関連の描画を改善した
・SetSelTextBuf の実装を変更し、Undo, Redo との相性を改善した
・Windows.pas 程度の文字列データの貼り付け、Undo, Redo など、大量の
  文字列一括処理を高速化した

■ 変更
・ListToFile, ListToStream メソッドを TEditor のメソッドとした
・Delimiters プロパティから '_' を除外した
・WrapByte プロパティが WrapOption.WrapByte となった。

■ 新機能
・WordWrap 機能を強化し、追い出し、句読点のぶら下げ、行頭禁則、行末禁則
  英文ワードラップに対応した。
・オートインデントを WordWrap に対応させた。
・WM_GETTEXT, WM_SETTEXT, WM_GETTEXTLENGTH, メッセージハンドラを実装し、
  GetTextBuf, SetTextBuf メソッドを有効なものとした。
  これにより、フォームに貼り付ける際、Editor1 の文字列が Lines プロパ
  ティに入るようになった。
・StrToWrapList メソッドを public に移動
・LeftScrollWidth プロパティを public に移動
・FList.Count を参照する ListCount プロパティを新設
・FList[n] を参照する ListString プロパティを新設
・CaretLockScroll プロパティの新設

ver 0.60 1999/02/22 -------------------------------------------------
・選択状態でＩＭＥ入力しても、選択領域が削除されないバグを修正
・全角文字を選択した状態で横スクロールさせるとレフトマージン部分にゴミ
  が残るバグを修正
・横スクロールした状態で且つ、[EOF] マーク直前にキャレットがある状態
  から VK_BACK キーを入力して右スクロールした場合、[EOF]の一部がレフト
  マージン内に描画されてしまうバグを修正
・GetSelLength のバグを修正
・VK_UP, VK_DOWN キーのリピート入力で２行スクロールする仕様に変更
・オートインデントの仕様を変更
  スペースを入力した後リターンキーを入力してもオートインデントされる
  ようになった。
　Delphi のコードエディタのような、上方のスペースに合わせたインデントを
  行う・行わないを決める PrevSpaceIndent プロパティを新設
・Paint を override する仕様に変わったので、設計時の不安定感が無くなった
  nifty:FDELPHI/MES/10/05654 Satobe さん（JCG00336）のアドバイスを参考に
  させて頂きました。
・キャレットの居場所を確保するために余計な１行を追加する仕様を廃止した。
  Row = Lines.Count な場合も発生する
・WordWrap の実装
  WordWrap, WrapByte プロパティの新設
  DeleteRow, RowToLines, ColToChar, ListToFile, ListToStream メソッドの追加
・published なプロパティが増えた
  DragCursor, DragMode, OnDragDrop, OnDragOver, OnEndDrag, OnStartDrag
  Delphi4 版ではさらに
  Anchors, Constraints, DragKind, OnCanResize, OnEndDock, OnResize, 
  OnStartDock

ver 0.55 1999/01/07 -------------------------------------------------
・選択領域の描画中に、ReserveWordColor プロパティの値を無視して
　予約語を別色表示するバグを修正
・LoadFromFile で $2000 バイト目に #10 があると余分な空白行が挿入
  されてしまうバグを修正

ver 0.54 1999/01/05 -------------------------------------------------
・どんなフォントサイズでも、半角：全角＝１：２の比率で描画される仕様に
  変更したので fsBold, fsItalicなフォントスタイルも使用可能になった
  nifty:FDELPHI/MES/10/05453 Satobe さん（JCG00336）のアドバイスを参考に
  させて頂きました。
・VK_PRIOR, VK_NEXT によるスクロール時の静粛性を向上
・連続スクロール時のキャレットのチラツキを抑制
・選択領域を描画する際のチラツキを大幅に抑制
・実行時にフォントを変更してもキャレットサイズが変わらなかったバグを
  修正
・キャレットが移動したとき、キャレット幅を、半角・全角文字幅に合わせる
  仕様に変更
・選択状態を解除したときアンダーラインが描画されなかったバグを修正
・マウスによるキャレット移動を行った時、マウスポインタが微妙に移動すると
  選択状態に入り、アンダーラインが表示されない状態になる不具合を修正
・LoadFromFile で #26 を読み込まないように変更
・StrToWordList のバグを修正
・CharacterMargin プロパティの追加
・DrawTextRect メソッドの追加
・SelStrPosition プロパティの追加
・SelDrawPosition プロパティの追加
・Selected プロパティの追加
・ReserveWordFont プロパティの追加
☆ReserveFontColor プロパティの削除

ver 0.53 1998/11/27 -------------------------------------------------
・たま～に描画されない部分が出現するバグを修正
・Delphi 4 用の heditor4.dcu を同梱

ver 0.52 1998/11/23 -------------------------------------------------
・空白行に改行マークが描画されないバグを修正
・アンダーラインを表示する場合は 行間が１ドット増す仕様に変更
・描画時の静粛性を向上（出来たと思う^^;）
・[EOF] マークの描画機能の追加
・Ctrl + ← → によるデリミタ間の移動機能の追加
・Ctrl + ↑ ↓ による上下スクロール機能の追加
・DelimDBCS プロパティの追加（全角半角の切り替わりを区切りとして扱う）
・CharFromPos メソッドの追加
・StrInfoFromPos メソッドの追加
・WordFromPos メソッドの追加
・StrToWordList メソッドの追加
・ExpandTab メソッドの公開
・OnTopRowChange イベントの追加
・OnTopColChange イベントの追加
・ReserveBkColor プロパティの追加（復活^^;）
・DefaultDrawing プロパティの追加
・DrawAllWords プロパティの追加
・OnBeforeDrawWord イベントの追加
・OnDrawLine イベントの追加

★DrawStyle プロパティの削除
★OnDrawWord イベントの削除

ver 0.51 1998/11/08 -------------------------------------------------
・梱包ファイル内容に手違いがあったので再アップロード

ver 0.50 1998/11/08 -------------------------------------------------
・レフトマージン内に改行マークが描画されてしまうバグを修正
・文字列後端より右の空白部分に文字入力する場合、それまでの改行マークが
  取り残されるバグを修正
・Clear メソッドの不具合を修正
・LineMargin プロパティの追加
・TopMargin プロパティの追加
・DrawStyle プロパティ、OnDrawWord イベントハンドラの追加
  によって、オーナードローが可能になりました＼(^o^)／

ver 0.43 1998/11/01 -------------------------------------------------
・画面スクロール時の描画の不具合（結構致命的でした^^;）を修正
・DeleteSelection, SetSelTextBuf の高速化
  Undo, Redo に対応した分遅くなっていましたので少し改善しました。
・サンプルプロジェクトのバグをいくつか^^;修正

ver 0.42 1998/10/30 -------------------------------------------------
・Undo, Redo 時の描画の不具合を修正
・改行マークの描画機能を持たせました。RetMark プロパティ
・アンダーラインの描画機能を持たせました。UnderLine プロパティ
・予約語の背景色指定機能を（ReserveBkColor プロパティ）を削除しました。
　ver 0.42 をインストール後、既存のプロジェクトファイルを開くと
  ReserveBkColor プロパティが見つかりませんのエラーになると思いますが
  無視するボタンをクリックしてください。
・ver 0.41 は予約語の背景色描画における不具合を修正したものでしたが
　描画スピードが不満足な出来だったため、公開せずに結局 ReserveBkColor
  プロパティを削除してしまいました。

ver 0.40 1998/10/24 -------------------------------------------------
・Default = True なボタンがあると、VK_RETURN キーが入力出来なくなる
  不具合を修正
・ClearSelection の実装を「選択状態の解除」から「選択領域の削除」に変更
・文字列保持オブジェクト(TEditorStrings)の宣言を interface 部に移動
・Delimiters プロパティの追加

☆ Undo オブジェクトを実装しました
・EditorUndoObj プロパティの追加
・UndoListMax プロパティの追加
・CanRedo メソッドの追加
・CanUndo メソッドの追加
・Undo メソッドの追加
・Redo メソッドの追加

ver 0.32  1998/08/19 -------------------------------------------------
・SetSelLength の不具合を修正
・DeleteSelection の高速化
・SetSelTextBuf の高速化
・TopRow = 0 の状態で、VK_PRIOR が入力されたとき、キャレットを最初の行へ
  移動するように変更
・CaretFree = False 時にタブ文字を含む行でのキャレット移動の不具合を修正
・CaretFree = False に設定されると DisposeBlank = False となるように変更
  これによって、最後尾に空白(#$20)を入力出来なかった不具合を解消
・タブ文字の展開数をカラム位置によって調節するように変更
・TabIndent プロパティの追加
・ClearSelection メソッドの追加
・CopyToClipboard メソッドの追加
・CutToClipboard メソッドの追加
・PasteFromClipboard メソッドの追加
・SelectAll メソッドの追加

ver 0.31  1998/08/16 -------------------------------------------------
・32,767 + 画面表示可能行数以上のスクロールが出来なかった不具合を修正
・予約語を入力した際の描画の不具合を修正
・キャレットが全角文字に入った際の位置調節の不具合を修正
・全角文字に半角文字を上書きした際の不具合を修正
・ファイル読み込みの高速化（nifty:FDELPHI/MES/10/04498 大石　剛司 さんの
  アドバイスを参考にさせていただきました。）

ver 0.30  1998/08/09  -------------------------------------------------
・横スクロール時画面上部がスクロールされないバグを修正
・タブ文字に対応
・SoftTab プロパティの追加
・CaretInTab プロパティの追加
・StrIndex メソッドの追加
・CreateDelimiters メソッドの追加
・RowHeight プロパティの追加
・ColWidth プロパティの追加
・Canvas プロパティの追加

ver 0.21  1998/07/31  -------------------------------------------------
・ver 0.20 の上書き時のハゲしいチラツキ(^^;)を抑制
・SetSelLength の不具合を修正
・SetSelTextBuf の不具合を修正
・上書きキャレットを統一
・ReadOnly プロパティでの手抜き(^^;)をきちんと実装

ver 0.20  1998/07/27  -------------------------------------------------
・Modified プロパティの追加
・DiaposeBlank プロパティの追加
・LineDraw の改良によって入力時のチラツキを抑制

ver 0.10  1998/07/25  -------------------------------------------------
・初版

