38 lines
955 B
C++

#pragma once
#include "DockPanelObject.h"
#include "DockPanelInfo.h"
#include "Deer/Memory.h"
#include <vector>
#include <string>
class asIScriptModule;
class asIScriptContext;
namespace Deer {
namespace EditorEngine {
class DockPanelContext {
public:
DockPanelContext(asIScriptModule*, DockPanelInfo*);
~DockPanelContext();
DockPanelContext(DockPanelContext&) = delete;
DockPanelContext& operator=(DockPanelContext&) = delete;
DockPanelContext(DockPanelContext&&);
DockPanelContext& operator=(DockPanelContext&&);
void render();
void init();
inline const char* getName() const { return info->name.c_str(); }
std::vector<DockPanelObject> dockPanels;
private:
asIScriptContext* context;
asIScriptModule* module;
DockPanelInfo* info;
};
}
}