X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2FPartSet%2FPartSet_ExternalObjectsMgr.h;h=03b8097301c22bb44a5697b1288adb47623d50be;hb=e419ba088664a34ae78e0fe9fa899152d99107ff;hp=6451751dee3dda3e01d0e659f079de9f3583d918;hpb=58185df5c4d0877054ea33a0fe8ebded75bd9d7b;p=modules%2Fshaper.git diff --git a/src/PartSet/PartSet_ExternalObjectsMgr.h b/src/PartSet/PartSet_ExternalObjectsMgr.h index 6451751de..03b809730 100644 --- a/src/PartSet/PartSet_ExternalObjectsMgr.h +++ b/src/PartSet/PartSet_ExternalObjectsMgr.h @@ -36,6 +36,8 @@ class PARTSET_EXPORT PartSet_ExternalObjectsMgr /// Returns the state whether the external object is used bool useExternal() const { return myUseExternal; } + bool isValidObject(const ObjectPtr& theObject); + /// Finds or create and external object /// \param theSelectedObject an object /// \param theShape a selected shape, which is used in the selection attribute @@ -44,16 +46,34 @@ class PARTSET_EXPORT PartSet_ExternalObjectsMgr ObjectPtr externalObject(const ObjectPtr& theSelectedObject, const GeomShapePtr& theShape, const CompositeFeaturePtr& theSketch); + ObjectPtr externalObjectValidated(const ObjectPtr& theSelectedObject, const GeomShapePtr& theShape, + const CompositeFeaturePtr& theSketch); + // Removes the external presentation from the model /// \param theSketch a current sketch /// \param theFeature a current feature void removeExternal(const CompositeFeaturePtr& theSketch, const FeaturePtr& theFeature); + void removeExternalValidated(const CompositeFeaturePtr& theSketch, + const FeaturePtr& theFeature); + + void removeUnusedExternalObjects(const QObjectPtrList& theIgnoreObjects, + const CompositeFeaturePtr& theSketch, + const FeaturePtr& theFeature); + +protected: + void removeExternalObject(const ObjectPtr& theObject, + const CompositeFeaturePtr& theSketch, + const FeaturePtr& theFeature); + protected: /// An external object QObjectPtrList myExternalObjects; + /// An external object + ObjectPtr myExternalObjectValidated; + /// Boolean value about the neccessity of the external object use bool myUseExternal; };