aboutsummaryrefslogtreecommitdiffstats
path: root/examples/quickcontrols2/texteditor/documenthandler.cpp
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2019-08-19 16:01:05 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2019-08-21 10:13:23 +0200
commit63a4ecea93e278eeaa5de23d774d4dee06d9c4fa (patch)
tree01e0b9031cb3dba9c5ec8af8ba95a87790d8b4c8 /examples/quickcontrols2/texteditor/documenthandler.cpp
parent7c2ec7dc49799fffb2ed48a3a5afe2d8561ce3ee (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.cpp15
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);
+}