◀ANSI版開発トップへ
  • 4333 画面がとても大きいと選択範囲が反転しない
    • 4341 Re: 画面がとても大きいと選択範囲が反転しない
      • 4347 Re2: 画面がとても大きいと選択範囲が反転しない
        • 4387 Re3: 画面がとても大きいと選択範囲が反転しない
  • [4333] 画面がとても大きいと選択範囲が反転しない もか 2006年03月24日 21:59

    画面の幅が大きく、3000px超えて選択した時に、右側が反転しません。
    1280x1024の画面をマルチディスプレー構成で3つ横に並べて表示すると超えるので
    あり得ない幅では無いです。

    CEditView_New2.cpp
    CEditView::DispTextSelected
    493行目以下の
    if( rcClip.right - rcClip.left > 3000 ){
    rcClip.right = rcClip.left + 3000;
    }

    この処理を削除すると、何か問題が出るかは未検証です。

    # ディスプレイ3つも持ってないけど。
    • [4341] Re: 画面がとても大きいと選択範囲が反転しない げんた 2006年03月26日 00:55

      >CEditView_New2.cpp
      >CEditView::DispTextSelected
      >493行目以下の
      CEditView.cpp(2192)のCEditView::DrawSelectAreaLine()でも同様の処理がありますね.
      初期ソースから入っていましたので,理由はわかりません.選択範囲だけというのも妙です.
      あんまり意味がないような気はします.
      • [4347] Re2: 画面がとても大きいと選択範囲が反転しない もか 2006年03月29日 02:13

        >CEditView.cpp(2192)のCEditView::DrawSelectAreaLine()でも同様の処理がありますね.
        >初期ソースから入っていましたので,理由はわかりません.選択範囲だけというのも妙です.
        >あんまり意味がないような気はします.
        Win9xの16bit制限に絡んで、おかしくなるのかとも考えましたが
        うまく再現できなかったので、安全優先で画面内に抑えるように修正しました。
        CEditView::DrawSelectAreaLine()も合わせて変更し、
        ついでに処理の効率化をしたつもりです。

        TortoiseSVN 便利ですね。
        rev 954 からの差分を改行コードだけCRLFに変えてYahoo Groupにアップしました。
        今回は直接コミットするには大きい・ブランチには小さいのでパッチにしました。
        sdiff_r954_select_draw_fix.zip
        です。
        • [4387] Re3: 画面がとても大きいと選択範囲が反転しない げんた 2006年04月08日 11:25

          sakura/trunk#957でCommitしました.