summaryrefslogtreecommitdiff
path: root/examples/demos/documentviewer/txtviewer.h
diff options
context:
space:
mode:
Diffstat (limited to 'examples/demos/documentviewer/txtviewer.h')
-rw-r--r--examples/demos/documentviewer/txtviewer.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/examples/demos/documentviewer/txtviewer.h b/examples/demos/documentviewer/txtviewer.h
new file mode 100644
index 00000000..2b3ba953
--- /dev/null
+++ b/examples/demos/documentviewer/txtviewer.h
@@ -0,0 +1,42 @@
+// Copyright (C) 2023 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+
+#ifndef TXTVIEWER_H
+#define TXTVIEWER_H
+
+#include "abstractviewer.h"
+#include <QPointer>
+
+class QMainWindow;
+class QPlainTextEdit;
+class QLabel;
+class TxtViewer : public AbstractViewer
+{
+public:
+ TxtViewer(QFile *file, QWidget *parent, QMainWindow *mainWindow);
+ ~TxtViewer() override;
+ QString viewerName() const override { return staticMetaObject.className(); };
+ bool saveDocument() override { return saveFile(m_file.get()); };
+ bool saveDocumentAs() override;
+ bool hasContent() const override;
+ QByteArray saveState() const override { return QByteArray(); }
+ bool restoreState(QByteArray &) override { return true; }
+
+#if defined(QT_ABSTRACTVIEWER_PRINTSUPPORT)
+protected:
+ void printDocument(QPrinter *printer) const override;
+#endif // QT_ABSTRACTVIEWER_PRINTSUPPORT
+
+private slots:
+ void setupTxtUi();
+ void documentWasModified();
+
+private:
+ void openFile();
+ bool saveFile (QFile *file);
+
+ int m_classId;
+ QPlainTextEdit *m_textEdit;
+};
+
+#endif //TXTVIEWER_H