|
- #ifndef BASEDOCUMENT_H
- #define BASEDOCUMENT_H
-
- #include <QWidget>
- #include <QString>
-
- class BaseDocument : public QWidget
- {
- Q_OBJECT
- public:
- enum DocumentType { HMI, PLC };
- BaseDocument(DocumentType type, QWidget *parent = nullptr);
- virtual ~BaseDocument() = default;
-
- DocumentType type() const;
- virtual QString title() const = 0;
- virtual QString filePath() const;
- virtual void setFilePath(const QString &path);
- virtual bool isModified() const;
- virtual void setModified(bool modified);
-
- // 保存/加载接口
- virtual bool saveToFile(const QString &filePath) = 0;
- virtual bool loadFromFile(const QString &filePath) = 0;
-
- protected:
- DocumentType m_type;
- QString m_filePath;
- bool m_modified = false;
- };
-
- #endif // BASEDOCUMENT_H
|