41 lines
1.1 KiB
C++
41 lines
1.1 KiB
C++
#ifndef VISUABLE_PROJECT_CONTROLLER
|
|
#define VISUABLE_PROJECT_CONTROLLER
|
|
|
|
#include "appcore.h"
|
|
|
|
#include <QTreeView>
|
|
#include <QWidget>
|
|
#include <libProjectManager.h>
|
|
|
|
|
|
namespace Components {
|
|
|
|
class VisiableProjectController : public QTreeView
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
VisiableProjectController(Core::AppCore *src, Project::ProjectManager *project, QWidget *parent=nullptr);
|
|
virtual ~VisiableProjectController() = default;
|
|
|
|
signals:
|
|
void activeDocument(const QString &file_path, const QString &name);
|
|
void aboutToBoDelete(const QList<QFileInfo> &file_paths);
|
|
|
|
private:
|
|
Core::AppCore *const rtcore;
|
|
Project::ProjectManager *pjtins;
|
|
|
|
void explicit_active_document(const QModelIndex &curr);
|
|
void contexMenuPopup(const QPoint &pos);
|
|
|
|
void alloc_file(const QModelIndex &idx_it, const QString &type, const QString &suffix);
|
|
void project_configration();
|
|
|
|
void remove_node_tree(const QModelIndex &target);
|
|
|
|
QList<QStandardItem*> nodes_contained(QStandardItem *root);
|
|
};
|
|
}
|
|
|
|
#endif // VISUABLE_PROJECT_CONTROLLER
|