ESGRAF48/source/mainwindow.h

52 lines
847 B
C
Raw Permalink Normal View History

2018-05-10 16:41:14 +00:00
#pragma once
#include "DataModel.h"
2018-05-10 16:41:14 +00:00
#include <QMainWindow>
#include <QString>
2019-01-12 15:50:04 +00:00
#include <QFont>
2018-05-10 16:41:14 +00:00
2018-05-20 10:04:21 +00:00
2018-05-16 05:02:12 +00:00
class DataModel;
class QDataWidgetMapper;
2018-05-10 16:41:14 +00:00
namespace Ui {
class MainWindow;
2018-05-10 16:41:14 +00:00
};
class MainWindow : public QMainWindow
{
Q_OBJECT
2018-05-16 05:02:12 +00:00
private:
Ui::MainWindow *ui;
DataModel m_dataModel;
QString m_filename;
bool m_saveOnClose = false;
2018-05-16 05:02:12 +00:00
public:
MainWindow(QWidget *parent);
MainWindow(QWidget *parent, const QString &filename);
~MainWindow();
2018-05-10 16:41:14 +00:00
public slots:
2018-05-20 10:04:21 +00:00
void newFile();
void openFile();
void openFile(const QString &filename);
void saveFile();
2018-05-20 10:04:21 +00:00
void saveFileAs();
void closeFile();
void print() const;
void dataModelChanged();
2018-12-09 10:11:55 +00:00
void savePdf();
void aboutDialog();
protected:
void closeEvent(QCloseEvent *event) override;
2018-05-24 09:54:24 +00:00
private:
void setupUi();
void saveFile(const QString &filename);
2018-12-09 10:11:55 +00:00
void savePdf(const QString &filename);
2018-05-10 16:41:14 +00:00
};