From 9681eb74b340374f9176aa370a09b6f8beeadccf Mon Sep 17 00:00:00 2001 From: Yorik van Havre Date: Sun, 22 Apr 2012 17:37:00 -0300 Subject: [PATCH] Revert 'remove unnecessary template code from document group' Reverts commit 06c683dcf308c2f342419442d96943d9703f99ee, because used by the Arch module --- src/App/Application.cpp | 1 + src/App/DocumentObjectGroup.cpp | 12 ++++++++++++ src/App/DocumentObjectGroup.h | 4 +++- 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/App/Application.cpp b/src/App/Application.cpp index 21ce1f2e6c..a622eecf2a 100644 --- a/src/App/Application.cpp +++ b/src/App/Application.cpp @@ -1022,6 +1022,7 @@ void Application::initTypes(void) App ::GeometryPython ::init(); App ::Document ::init(); App ::DocumentObjectGroup ::init(); + App ::DocumentObjectGroupPython ::init(); App ::DocumentObjectFileIncluded::init(); App ::InventorObject ::init(); App ::VRMLObject ::init(); diff --git a/src/App/DocumentObjectGroup.cpp b/src/App/DocumentObjectGroup.cpp index d871f3a4e0..1c16e0e513 100644 --- a/src/App/DocumentObjectGroup.cpp +++ b/src/App/DocumentObjectGroup.cpp @@ -179,4 +179,16 @@ PyObject *DocumentObjectGroup::getPyObject() return Py::new_reference_to(PythonObject); } +// Python feature --------------------------------------------------------- +namespace App { +/// @cond DOXERR +PROPERTY_SOURCE_TEMPLATE(App::DocumentObjectGroupPython, App::DocumentObjectGroup) +template<> const char* App::DocumentObjectGroupPython::getViewProviderName(void) const { + return "Gui::ViewProviderDocumentObjectGroupPython"; +} +/// @endcond + +// explicit template instantiation +template class AppExport FeaturePythonT; +} diff --git a/src/App/DocumentObjectGroup.h b/src/App/DocumentObjectGroup.h index 3afb50c9cf..a7a4537df5 100644 --- a/src/App/DocumentObjectGroup.h +++ b/src/App/DocumentObjectGroup.h @@ -24,7 +24,7 @@ #ifndef APP_DOCUMENTOBJECTGROUP_H #define APP_DOCUMENTOBJECTGROUP_H -//#include "FeaturePython.h" +#include "FeaturePython.h" #include "DocumentObject.h" #include "PropertyLinks.h" #include @@ -99,6 +99,8 @@ private: void removeObjectFromDocument(DocumentObject*); }; +typedef App::FeaturePythonT DocumentObjectGroupPython; + } //namespace App