◀Unicode版開発トップへ
  • 291 Commit報告:(Keep) テキスト描画整理
    • 293 Re:Commit報告:(Keep) テキスト描画整理
      • 294 Re2:Commit報告:(Keep) テキスト描画整理
        • 296 Re3:Commit報告:(Keep) テキスト描画整理
          • 302 Re4:Commit報告:(Keep) テキスト描画整理
    • 295 Re:Commit報告:(Keep) テキスト描画整理
      • 297 Re2:Commit報告:(Keep) テキスト描画整理
        • 315 Re3:Commit報告:(Keep) テキスト描画整理
          • 326 Re4:Commit報告:(Keep) テキスト描画整理
  • [291] Commit報告:(Keep) テキスト描画整理 kobake 2008年04月20日 02:24

    リビジョン:
     rev1285

    変更種別:
     リファクタリング。機能変更無し。

    内容:
     DispLineNew() の名前を DrawLogicLine() に変更。
     DrawLogicLine() から、レイアウト行描画部分を抜き出し、DrawLayoutLine() を作成。
     DrawLayoutLine() 内、各種カラー処理を CDrawStrategy 派生クラスに分離。
     各 CDrawStrategy 派生クラス内の重複処理を抜き出し、まとめ。
     → SDrawStrategyInfo::DrawToHere(), SDrawStrategyInfo::ChangeColor() 等。

    何百行もあり処理フローを見通すことが非常に困難であった DispLineNew() を、
    今回の整理により、なんとか見通せる形にもってこれたかと思います。
    (現在の名前は DrawLogicLine となっています)
    • [293] Re:Commit報告:(Keep) テキスト描画整理 anonymous 2008年04月20日 07:38

      不具合です。
      C/C++ファイルを開いたとき、コメントが1行目しか色分けされません。
      タイプ別設定画面を開きOKボタンを押すと正常に表示されます。
      • [294] Re2:Commit報告:(Keep) テキスト描画整理 anonymous 2008年04月20日 07:40

        条件がありました。
        ・ファイルをドラッグ&ドロップしたときに発生します。

        • [296] Re3:Commit報告:(Keep) テキスト描画整理 kobake 2008年04月20日 12:00

          ▼ anonymousさん
          > 不具合です。
          > C/C++ファイルを開いたとき、コメントが1行目しか色分けされません。
          > タイプ別設定画面を開きOKボタンを押すと正常に表示されます。
          ▼ anonymousさん
          > 条件がありました。
          > ・ファイルをドラッグ&ドロップしたときに発生します。

          ご報告ありがとうございます。
          ただ、こちらでは再現できませんでした。
          問題を再現することができる、最小限のファイル内容を
          教えていただくことはできますでしょうか。
          • [302] Re4:Commit報告:(Keep) テキスト描画整理 ac 2008年04月20日 15:20

            以下の手順で発生します。

            Vista(HomePremium)SP1, IE7, TortoiseSVN 1.4.7
            XP(HomeEditon)SP2, IE7, TortoiseSVN 1.4.8

            コメントが1行目しか色分けされない:
            ・sakuraW_r1286.zip(rev1286)を展開
            ・起動し、共通設定で「タスクトレイに常駐」のチェックをはずしOKを押下
            ・エクスプローラからCAutoSave.cpp(ssrc_2007-12-07版)をドラッグドロップ

            変更行の色分け:
            ・sakuraW_r1286のサクラエディタを起動(上記の設定で)
            ・a[ret]b[ret]c[ret]<Ctrl+S>c[ret]d[ret]f[ret]<Ctrl+S>と入力
            ---以下の状態---
            a
            b
            c
            d
            e
            f
            I[EOF]
            ・"d"の行(4行目)を修正すると4,5,6行目が変更行になる
            ・ウインドウ>再描画、カーソル移動、マウスクリックでカーソル移動をするとカーソル以降が変更行表示に変化する
    • [295] Re:Commit報告:(Keep) テキスト描画整理 anonymous 2008年04月20日 07:57

      編集を繰り返すと、変更していない行まで色分けしてしまいます。
      ・過去に編集した箇所が色分けされているように見える。
      • [297] Re2:Commit報告:(Keep) テキスト描画整理 kobake 2008年04月20日 12:02

        ▼ anonymousさん
        > 編集を繰り返すと、変更していない行まで色分けしてしまいます。
        > ・過去に編集した箇所が色分けされているように見える。

        ご報告ありがとうございます。
        問題を再現するための具体的な操作が判るようでしたら、
        教えていただけますでしょうか。
        • [315] Re3:Commit報告:(Keep) テキスト描画整理 dskoba 2008年04月23日 22:10

          > 編集を繰り返すと、変更していない行まで色分けしてしまいます。

          これは描画の問題ではなくて変更行の判定の問題。

          >>dev:4576
          >>data:3751
          • [326] Re4:Commit報告:(Keep) テキスト描画整理 kobake 2008年04月27日 23:53

            ▼ dskobaさん
            > > 編集を繰り返すと、変更していない行まで色分けしてしまいます。
            >
            > これは描画の問題ではなくて変更行の判定の問題。
            >
            > >>dev:4576
            > >>data:3751

            情報ありがとうございます。
            ただ、今回の件に関しては、変更行フラグをちゃんと管理できていない、というバグでした。rev1301で修正しました。