Using DataModelV2

This commit is contained in:
Vulpovile
2021-03-07 21:25:31 -08:00
parent a826d01b89
commit 9d95a5b891
37 changed files with 3821 additions and 54 deletions

View File

@@ -1,18 +1,37 @@
#pragma once
#include <G3DAll.h>
#include "propertyGrid.h"
#include "map"
class Instance
{
public:
static Instance* Instance::Create(std::string classname)
{
}
bool canDelete;
Instance(void);
Instance(const Instance &);
~Instance(void);
std::vector<Instance*>* getChildren();
Instance(const Instance&);
virtual ~Instance(void);
std::string name;
virtual void render(RenderDevice*);
virtual void update();
std::vector<Instance*> children; // All children.
std::string getClassName();
Instance* findFirstChild(std::string);
std::vector<Instance* > getChildren();
std::vector<Instance* > getAllChildren();
virtual void setParent(Instance*);
void setName(std::string newName);
void addChild(Instance*);
void removeChild(Instance*);
void clearChildren();
Instance* getParent();
virtual Instance* clone() const { return new Instance(*this); }
virtual std::vector<PROPGRIDITEM> getProperties();
virtual void PropUpdate(LPPROPGRIDITEM &pItem);
int listicon;
protected:
std::vector<Instance*> children;
Instance * parent;
}
std::string className;
Instance* parent; // Another pointer.
PROPGRIDITEM createPGI(LPSTR catalog, LPSTR propName, LPSTR propDesc, LPARAM curVal, INT type, TCHAR choices[] = NULL);
private:
static const std::map<std::string, Instance> g_logLevelsDescriptions;
};