diff options
author | Alexander Kornilov <Alexander.Kornilov@Teleca.com> | 2010-11-29 17:28:07 +0300 |
---|---|---|
committer | Pekka Vuorela <pekka.ta.vuorela@nokia.com> | 2010-11-29 17:57:53 +0200 |
commit | 9ee14ace70cc44be55a50dbd2d0fcfb949f7cb66 (patch) | |
tree | f5c2d03bb206cd256fc8ebd62121305c8e03e570 /src | |
parent | af21719e4db40fe041d4728f33660d3b478d3b14 (diff) |
Changes: The cursorPosition() for MTextEditView was shared.
RevBy: Pekka Vuorela
Diffstat (limited to 'src')
-rw-r--r-- | src/views/mtexteditview.cpp | 13 | ||||
-rw-r--r-- | src/views/mtexteditview.h | 8 | ||||
-rw-r--r-- | src/views/mtexteditview_p.h | 2 |
3 files changed, 19 insertions, 4 deletions
diff --git a/src/views/mtexteditview.cpp b/src/views/mtexteditview.cpp index 4cbc8556..75928410 100644 --- a/src/views/mtexteditview.cpp +++ b/src/views/mtexteditview.cpp @@ -148,11 +148,12 @@ int MTextEditViewPrivate::cursorPosition(QGraphicsSceneMouseEvent *event) * \param hitPoint mouse position * \return cursor position as characters from start of document */ -int MTextEditViewPrivate::cursorPosition(QPointF hitPoint) +int MTextEditViewPrivate::cursorPosition(const QPointF &point, Qt::HitTestAccuracy accuracy) { Q_Q(MTextEditView); // adjust widget position to textdocument position + QPointF hitPoint = point; hitPoint.rx() += hscroll; hitPoint.ry() += vscroll; hitPoint.rx() -= q->style()->paddingLeft(); @@ -180,7 +181,7 @@ int MTextEditViewPrivate::cursorPosition(QPointF hitPoint) hitPoint.setY(maxY); } - return activeDocument()->documentLayout()->hitTest(hitPoint, Qt::FuzzyHit); + return activeDocument()->documentLayout()->hitTest(hitPoint, accuracy); } @@ -468,7 +469,13 @@ const QPointF &MTextEditView::mouseTarget() const int MTextEditView::cursorPosition(const QPointF &hitPoint) { Q_D(MTextEditView); - return d->cursorPosition(hitPoint); + return d->cursorPosition(hitPoint, Qt::FuzzyHit); +} + +int MTextEditView::cursorPosition(const QPointF &hitPoint, Qt::HitTestAccuracy accuracy) +{ + Q_D(MTextEditView); + return d->cursorPosition(hitPoint, accuracy); } void MTextEditViewPrivate::hideUnmaskedText() diff --git a/src/views/mtexteditview.h b/src/views/mtexteditview.h index 0feec8c7..f5f0cbaf 100644 --- a/src/views/mtexteditview.h +++ b/src/views/mtexteditview.h @@ -87,6 +87,14 @@ protected: */ int cursorPosition(const QPointF &hitPoint); + /*! + * \brief Returns cursor position from a mouse position + * \param hitPoint mouse position + * \param accuracy specified accuracy + * \return cursor position as characters from start of document + */ + int cursorPosition(const QPointF &hitPoint, Qt::HitTestAccuracy accuracy); + protected Q_SLOTS: /*! * \brief Set view focused diff --git a/src/views/mtexteditview_p.h b/src/views/mtexteditview_p.h index 193626a9..67ea6a7b 100644 --- a/src/views/mtexteditview_p.h +++ b/src/views/mtexteditview_p.h @@ -47,7 +47,7 @@ public: virtual ~MTextEditViewPrivate(); int cursorPosition(QGraphicsSceneMouseEvent *event); - int cursorPosition(QPointF event); + int cursorPosition(const QPointF &point, Qt::HitTestAccuracy accuracy = Qt::FuzzyHit); QTextDocument *document() const; QTextDocument *promptDocument() const; |