diff --git a/Blocks3D.vcproj b/Blocks3D.vcproj
index e7315b6..3e1c6cf 100644
--- a/Blocks3D.vcproj
+++ b/Blocks3D.vcproj
@@ -675,14 +675,22 @@
+
+
+
+
@@ -960,14 +968,22 @@
+
+
+
+
diff --git a/src/include/DataModelV2/Instance.h b/src/include/DataModelV2/Instance.h
index be7eae1..ee28095 100644
--- a/src/include/DataModelV2/Instance.h
+++ b/src/include/DataModelV2/Instance.h
@@ -1,6 +1,7 @@
#pragma once
#include
#include "propertyGrid.h"
+#include "PropertiesV2/StringProperty.h"
#include "map"
class Instance
@@ -26,12 +27,18 @@ public:
void clearChildren();
Instance* getParent();
virtual Instance* clone() const { return new Instance(*this); }
+ //Deprecated
virtual std::vector getProperties();
+ //Deprecated
virtual void PropUpdate(LPPROPGRIDITEM &pItem);
+
+ virtual std::vector collectProperties();
+
int listicon;
protected:
std::string className;
Instance* parent; // Another pointer.
+ //Deprecated
PROPGRIDITEM createPGI(LPSTR catalog, LPSTR propName, LPSTR propDesc, LPARAM curVal, INT type, TCHAR choices[] = NULL);
private:
static const std::map g_logLevelsDescriptions;
diff --git a/src/include/DataModelV2/PVInstance.h b/src/include/DataModelV2/PVInstance.h
index 79ac705..c5723f3 100644
--- a/src/include/DataModelV2/PVInstance.h
+++ b/src/include/DataModelV2/PVInstance.h
@@ -16,6 +16,7 @@ public:
bool nameShown;
bool controllerFlagShown;
Enum::Controller::Value controller;
+ virtual void makeJoints();
protected:
CoordinateFrame cFrame;
static G3D::Color3 getControllerColor(int controller)
diff --git a/src/include/Properties/BoolProperty.h b/src/include/Properties/BoolProperty.h
deleted file mode 100644
index ef541ec..0000000
--- a/src/include/Properties/BoolProperty.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#pragma once
-#include "Property.h"
-class BoolProperty : public Property
-{
-public:
- BoolProperty(std::string name, bool& value, Instance& owner)
- {
- Property(name, value, owner);
- }
- ~BoolProperty(void);
- PROPGRIDITEM getPropGridItem();
-};
diff --git a/src/include/Properties/Property.h b/src/include/Properties/Property.h
deleted file mode 100644
index 2a3a0d9..0000000
--- a/src/include/Properties/Property.h
+++ /dev/null
@@ -1,30 +0,0 @@
-#pragma once
-#include "DataModelV2/Instance.h"
-#include
-class Instance;
-
-template
-class Property
-{
-public:
- Property(std::string name, T& value, Instance& owner)
- {
- _value = value;
- _owner = owner;
- }
- ~Property(void);
- const T getValue()
- {
- return _value;
- }
- const void setValue(T val)
- {
- _value = val;
- }
- virtual PROPGRIDITEM getPropGridItem();
- void setProperty(LPPROPGRIDITEM item);
-protected:
- Instance* _owner;
- std::string _name;
- T* _value;
-};
diff --git a/src/source/DataModelV2/Instance.cpp b/src/source/DataModelV2/Instance.cpp
index a83a9a8..b489ba2 100644
--- a/src/source/DataModelV2/Instance.cpp
+++ b/src/source/DataModelV2/Instance.cpp
@@ -80,6 +80,13 @@ std::vector Instance::getProperties()
}
+std::vector Instance::collectProperties()
+{
+ std::vector properties;
+ properties.push_back(StringProperty("Name", "The name of this instance", "Properties", name, this, &Instance::setName));
+ return properties;
+}
+
Instance::~Instance(void)
{
diff --git a/src/source/DataModelV2/PVInstance.cpp b/src/source/DataModelV2/PVInstance.cpp
index 2688022..48d4372 100644
--- a/src/source/DataModelV2/PVInstance.cpp
+++ b/src/source/DataModelV2/PVInstance.cpp
@@ -90,6 +90,15 @@ std::vector PVInstance::getProperties()
return properties;
}
+
+void PVInstance::makeJoints()
+{
+ for(size_t i = 0; i < children.size(); i++)
+ {
+
+ }
+}
+
void PVInstance::PropUpdate(LPPROPGRIDITEM &pItem)
{
if(strcmp(pItem->lpszPropName, "NameShown") == 0)
diff --git a/src/source/Properties/BoolProperty.cpp b/src/source/Properties/BoolProperty.cpp
deleted file mode 100644
index 744db4b..0000000
--- a/src/source/Properties/BoolProperty.cpp
+++ /dev/null
@@ -1,5 +0,0 @@
-//#include "Properties/BoolProperty.h"
-//PROPGRIDITEM BoolProperty::getPropGridItem()
-//{
- //return PROPGRIDITEM();
-//}
\ No newline at end of file
diff --git a/src/source/Properties/Property.cpp b/src/source/Properties/Property.cpp
deleted file mode 100644
index 3221ffb..0000000
--- a/src/source/Properties/Property.cpp
+++ /dev/null
@@ -1,7 +0,0 @@
-#include "Properties/Property.h"
-
-template
-void Property::setProperty(LPPROPGRIDITEM item)
-{
- _owner->propertiesChanged();
-}
\ No newline at end of file