diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2019-08-19 16:01:05 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2019-08-21 10:13:23 +0200 |
commit | 63a4ecea93e278eeaa5de23d774d4dee06d9c4fa (patch) | |
tree | 01e0b9031cb3dba9c5ec8af8ba95a87790d8b4c8 /examples/quickcontrols2/texteditor/documenthandler.cpp | |
parent | 7c2ec7dc49799fffb2ed48a3a5afe2d8561ce3ee (diff) |
TextEditor: Add modified handling
Add a modified property to the document and add
handling in onClosing(). Connect the actions to
call close() instead of Qt.quit() for it to
become active.
Change-Id: I0fec75629db64e91508ed8ba45d4fb60be146b1b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Diffstat (limited to 'examples/quickcontrols2/texteditor/documenthandler.cpp')
-rw-r--r-- | examples/quickcontrols2/texteditor/documenthandler.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/examples/quickcontrols2/texteditor/documenthandler.cpp b/examples/quickcontrols2/texteditor/documenthandler.cpp index 25a83592..5def1b61 100644 --- a/examples/quickcontrols2/texteditor/documenthandler.cpp +++ b/examples/quickcontrols2/texteditor/documenthandler.cpp @@ -80,7 +80,11 @@ void DocumentHandler::setDocument(QQuickTextDocument *document) if (document == m_document) return; + if (m_document) + m_document->textDocument()->disconnect(this); m_document = document; + if (m_document) + connect(m_document->textDocument(), &QTextDocument::modificationChanged, this, &DocumentHandler::modifiedChanged); emit documentChanged(); } @@ -370,3 +374,14 @@ void DocumentHandler::mergeFormatOnWordOrSelection(const QTextCharFormat &format cursor.select(QTextCursor::WordUnderCursor); cursor.mergeCharFormat(format); } + +bool DocumentHandler::modified() const +{ + return m_document && m_document->textDocument()->isModified(); +} + +void DocumentHandler::setModified(bool m) +{ + if (m_document) + m_document->textDocument()->setModified(m); +} |