OSDN Git Service

fixing caret multiple drawing(but not completely)
authorsuma <devnull@localhost>
Fri, 12 Dec 2008 07:15:38 +0000 (16:15 +0900)
committersuma <devnull@localhost>
Fri, 12 Dec 2008 07:15:38 +0000 (16:15 +0900)
src/control/standard/hexview.cpp

index 4bbae6d..a837129 100644 (file)
@@ -362,6 +362,7 @@ void HexView::mousePressEvent(QMouseEvent *ev)
                if (config_.EnableCaret && cur_->SelEnd != cur_->SelEndO) {
                        drawCaret(false, cur_->SelEndO);
                        drawCaret(true);
+                       cur_->HexCaretVisible = false;
                }
                qDebug("press -  begin:%lld", cur_->SelBegin);
        }
@@ -380,6 +381,7 @@ void HexView::mouseMoveEvent(QMouseEvent *ev)
                if (config_.EnableCaret && cur_->SelEnd != cur_->SelEndO) {
                        drawCaret(false, cur_->SelEndO);
                        drawCaret(true);
+                       cur_->HexCaretVisible = false;
                }
        }
 }
@@ -401,6 +403,7 @@ void HexView::mouseReleaseEvent(QMouseEvent *ev)
                if (config_.EnableCaret && cur_->SelEnd != cur_->SelEndO) {
                        drawCaret(false, cur_->SelEndO);
                        drawCaret(true);
+                       cur_->HexCaretVisible = false;
                }
        }
 }