Maraiah/source/tycho/cc_headers/project.h

49 lines
670 B
C++

#pragma once
#include "bindings.h"
#include <QMdiSubWindow>
namespace Ui
{
class ProjectView;
}
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
{
Q_OBJECT
public:
explicit ProjectView(QWidget *parent = nullptr);
~ProjectView();
QSharedPointer<ProjectModel> model();
protected:
void closeEvent(QCloseEvent *event) override;
private:
QSharedPointer<Ui::ProjectView> ui;
QSharedPointer<ProjectModel> proj;
};
// EOF