Move BaseTextDocument::documentClosing to BaseTextDocumentLayout

Centralizing mark handling

Change-Id: Ie29c15d97aa171fbf3516d4242fe3f962091477a
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
This commit is contained in:
Daniel Teske
2012-02-15 13:39:10 +01:00
parent c44d65d3c6
commit 45850c23f2
4 changed files with 17 additions and 13 deletions

View File

@@ -97,7 +97,6 @@ BaseTextDocument::BaseTextDocument() : d(new BaseTextDocumentPrivate(this))
BaseTextDocument::~BaseTextDocument()
{
documentClosing();
delete d->m_document;
d->m_document = 0;
delete d;
@@ -377,7 +376,10 @@ bool BaseTextDocument::reload(QString *errorString, QTextCodec *codec)
bool BaseTextDocument::reload(QString *errorString)
{
emit aboutToReload();
documentClosing(); // removes text marks non-permanently
BaseTextDocumentLayout *documentLayout =
qobject_cast<BaseTextDocumentLayout*>(d->m_document->documentLayout());
if (documentLayout)
documentLayout->documentClosing(); // removes text marks non-permanently
if (!open(errorString, d->m_fileName, d->m_fileName))
return false;
@@ -471,16 +473,6 @@ void BaseTextDocument::ensureFinalNewLine(QTextCursor& cursor)
}
}
void BaseTextDocument::documentClosing()
{
QTextBlock block = d->m_document->begin();
while (block.isValid()) {
if (TextBlockUserData *data = static_cast<TextBlockUserData *>(block.userData()))
data->documentClosing();
block = block.next();
}
}
bool BaseTextDocument::hasHighlightWarning() const
{
return d->m_hasHighlightWarning;