QtNovelUI/WordsIDE/projectview.h

39 lines
933 B
C++

#ifndef PROJECTVIEW_H
#define PROJECTVIEW_H
#include "DocsManager.h"
#include "manager_docs.h"
#include <QTreeView>
#include <QWidget>
#include <commandsdispatcher.h>
#include <libProjectManager.h>
#include <splitwindow.h>
namespace Components {
/**
* @brief 项目视图
*/
class ProjectView : public SplitFrame::FnWrap<ProjectView, false> {
Q_OBJECT
public:
explicit ProjectView(SplitFrame::SplitPanel *host, Schedule::CommandsDispatcher *core, Core::DocumentsManager *mgr);
QModelIndex currentIndex() const;
private:
Core::DocumentsManager *const project_manager;
Schedule::CommandsDispatcher *const source;
QTreeView *const view_present;
void menu_popup(const QPoint &p);
void open_target(const QModelIndex &t);
// FnWrap interface
public:
virtual void closeProcess() override;
};
}
#endif // PROJECTVIEW_H