#pragma once #include #include class DataModel; class QDataWidgetMapper; namespace Ui { class MainWindow; }; class MainWindow : public QMainWindow { Q_OBJECT private: Ui::MainWindow *ui; std::unique_ptr m_dataModel; QString m_filename; public: MainWindow(QWidget *parent = nullptr); ~MainWindow(); public slots: void newFile(); void openFile(); void saveFile(); void saveFileAs(); private: void saveFile(const QString &filename); };