51 lines
1.1 KiB
C++
51 lines
1.1 KiB
C++
/*
|
|
* ObjectModelReference.h
|
|
*
|
|
* Created on: Apr 17, 2016
|
|
* Author: beckermj
|
|
*/
|
|
|
|
#ifndef OBJECTMODELREFERENCE_H_
|
|
#define OBJECTMODELREFERENCE_H_
|
|
|
|
#include <Guid.h>
|
|
#include <Property.h>
|
|
#include <String.h>
|
|
|
|
#include "ObjectModel.h"
|
|
|
|
using ApplicationFramework::Guid;
|
|
using ApplicationFramework::String;
|
|
|
|
namespace UniversalEditor {
|
|
|
|
class ObjectModel;
|
|
|
|
class ObjectModelReference {
|
|
|
|
AFX_PROPERTY(Guid*, ID);
|
|
AFX_PROPERTY(String*, TypeName);
|
|
|
|
AFX_PROPERTY_BOOL(Visible);
|
|
|
|
private:
|
|
static List<ObjectModelReference*>* _objectModelReferencesList;
|
|
static List<ObjectModelReference*>* _visibleObjectModelReferencesList;
|
|
|
|
public:
|
|
ObjectModelReference();
|
|
virtual ~ObjectModelReference();
|
|
|
|
static List<ObjectModelReference*>* getObjectModelReferencesList();
|
|
static List<ObjectModelReference*>* getVisibleObjectModelReferencesList();
|
|
|
|
static ObjectModelReference* getByTypeName(String* typeName, bool includeHidden = false);
|
|
static ObjectModelReference* getByTypeName(const char* typeName, bool includeHidden = false);
|
|
|
|
ObjectModel* createInstance();
|
|
};
|
|
|
|
} /* namespace UniversalEditor */
|
|
|
|
#endif /* OBJECTMODELREFERENCE_H_ */
|