summaryrefslogtreecommitdiffstats
path: root/src/gui/widgets
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-02-19 23:07:13 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-02-19 23:07:13 (GMT)
commit8f10ca802dee1ed110f301191c4a56a85575033c (patch)
tree4465150efc232421953b6c7f1885c7738ce1e395 /src/gui/widgets
parent01498eb9a44f3b15e517e81b309087fbbf1b93bf (diff)
parent402da10939d1d3a5973caaf9deaef0f9f10d834a (diff)
downloadQt-8f10ca802dee1ed110f301191c4a56a85575033c.zip
Qt-8f10ca802dee1ed110f301191c4a56a85575033c.tar.gz
Qt-8f10ca802dee1ed110f301191c4a56a85575033c.tar.bz2
Merge branch 'master' of scm.dev.nokia.troll.no:qt/berlin-staging-1 into master-integration
* 'master' of scm.dev.nokia.troll.no:qt/berlin-staging-1: (25 commits) Add convenience function QTextCursor::positionInBlock() Fixed URL in Russian translation. Designer/Resourceview: Suppress warning about QFileInfo on empty path. optimize qstring::simplified() Revert optimizations to QString::append unbreak QList::append() and co. again Implement bookmark manager widget. optimization: use QList::reserve() and QVector::reserve() amend "purge msvc.net and msvc2002 makespecs" Added QPlainTextEditor::anchorAt(const QPoint &pos) Fix memmory leak. Fix spacing. Prevent renaming the bookmarks menu root item, it's just a placeholder. Fix broken set last shown pagen when the last page was about:blank. Move launch with external app in base class. Make sure the bookmarks menu updates on add/ remove as well. Fix broken Drag&Drop, reset and clear the model if we set new bookmarks. avoid double reallocations in appending operations avoid double reallocation in string-growing replace() case optimize qHash() some more ...
Diffstat (limited to 'src/gui/widgets')
-rw-r--r--src/gui/widgets/qplaintextedit.cpp20
-rw-r--r--src/gui/widgets/qplaintextedit.h2
2 files changed, 22 insertions, 0 deletions
diff --git a/src/gui/widgets/qplaintextedit.cpp b/src/gui/widgets/qplaintextedit.cpp
index 0d798b7..ef9fac3 100644
--- a/src/gui/widgets/qplaintextedit.cpp
+++ b/src/gui/widgets/qplaintextedit.cpp
@@ -1320,6 +1320,26 @@ QTextCursor QPlainTextEdit::textCursor() const
return d->control->textCursor();
}
+/*!
+ Returns the reference of the anchor at position \a pos, or an
+ empty string if no anchor exists at that point.
+
+ \since 4.7
+ */
+QString QPlainTextEdit::anchorAt(const QPoint &pos) const
+{
+ Q_D(const QPlainTextEdit);
+ int cursorPos = d->control->hitTest(pos + QPoint(d->horizontalOffset(),
+ d->verticalOffset()),
+ Qt::ExactHit);
+ if (cursorPos < 0)
+ return QString();
+
+ QTextDocumentPrivate *pieceTable = document()->docHandle();
+ QTextDocumentPrivate::FragmentIterator it = pieceTable->find(cursorPos);
+ QTextCharFormat fmt = pieceTable->formatCollection()->charFormat(it->format);
+ return fmt.anchorHref();
+}
/*!
Undoes the last operation.
diff --git a/src/gui/widgets/qplaintextedit.h b/src/gui/widgets/qplaintextedit.h
index 15cf0967..106ae6d 100644
--- a/src/gui/widgets/qplaintextedit.h
+++ b/src/gui/widgets/qplaintextedit.h
@@ -159,6 +159,8 @@ public:
QRect cursorRect(const QTextCursor &cursor) const;
QRect cursorRect() const;
+ QString anchorAt(const QPoint &pos) const;
+
bool overwriteMode() const;
void setOverwriteMode(bool overwrite);