Maraiah/source/tycho/cc_headers/project.h

44 lines
650 B
C++

#pragma once
#include <QMdiSubWindow>
#include "bindings.h"
#include "../ui/ui_projectview.h"
class ProjectModel : public QObject
{
Q_OBJECT
public:
explicit ProjectModel();
~ProjectModel();
bool isDirty() const;
public slots:
bool open(const QString &fname);
void save();
private:
Project data;
};
class ProjectView : public QMdiSubWindow, private Ui::ProjectView
{
Q_OBJECT
public:
explicit ProjectView(QWidget *parent = nullptr);
~ProjectView();
QSharedPointer<ProjectModel> model();
protected:
void closeEvent(QCloseEvent *event) override;
private:
QSharedPointer<ProjectModel> proj;
};
// EOF