X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_Tools.h;h=279e08560b6e60116bd8abbabce9c8c37c1bb1e0;hb=21e765709ef191519dc14463ce5ce90c2d62cc04;hp=e541ba2f0418e8fcef741ece0fd46eb62e0433f8;hpb=4d76048c10932d7f0332ac1819e020ce88838f5a;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_Tools.h b/src/XGUI/XGUI_Tools.h index e541ba2f0..279e08560 100644 --- a/src/XGUI/XGUI_Tools.h +++ b/src/XGUI/XGUI_Tools.h @@ -8,10 +8,13 @@ #include #include + #include #include +class QWidget; + /*! \ingroup GUI \brief Return directory part of the file path. @@ -65,16 +68,58 @@ bool XGUI_EXPORT isModelObject(FeaturePtr theFeature); */ std::string XGUI_EXPORT featureInfo(FeaturePtr theFeature); +/*! + Returns true if there are no parts in the document, which are not activated or + all objects in the list are not PartSet document. + It shows the warning control if the result is false. + \param theParent a parent for the warning control + \param theList a list of object + \return a boolean value + */ +bool XGUI_EXPORT canRemoveOrRename(QWidget* theParent, const QObjectPtrList& aList); + +/*! + Returns true if theObject can be renamed in theName + */ +bool canRename(QWidget* theParent, const ObjectPtr& theObject, const QString& theName); /*! -Check types of objects which are in the given list -\param theObjects the list of objects -\param hasResult will be set to true if list contains Result objects -\param hasFeature will be set to true if list contains Feature objects -\param hasParameter will be set to true if list contains Parameter objects -*/ -void checkObjects(const QObjectPtrList& theObjects, bool& hasResult, bool& hasFeature, bool& hasParameter); + Returns true if there are no parts in the document, which are not activated + \return a boolean value + */ +bool XGUI_EXPORT allDocumentsActivated(QString& theNotActivatedNames); +/*! + Returns a container of referenced feature to the current object in the object document. + \param theObject an object, which will be casted to a feature type + \param theRefFeatures an output container + */ +void XGUI_EXPORT refsToFeatureInFeatureDocument(const ObjectPtr& theObject, + std::set& theRefFeatures); + +/*! + Returns true if the object if a sub child of the feature. The feature is casted to the + composite one. If it is possible, the sub object check happens. The method is applyed + recursively to the feature subs. + \param theObject a candidate to be a sub object + \param theFeature a candidate to be a composite feature + \return a boolean value + */ +bool XGUI_EXPORT isSubOfComposite(const ObjectPtr& theObject, const FeaturePtr& theFeature); + +/*! + Returns a container of references feature to the source object. The search happens in the object + document and in other Part documents if the object belongs to the PartSet. The search is recursive, + in other words it is applyed to set of the found objects until it is possible. + It do not returns the referenced features to the object if this references is a composite feature + which has the object as a sub object. + \param theSourceObject an object, which references are searched + \param theObject an intermediate recursive object, should be set in the source object + \return a boolean value + */ +void XGUI_EXPORT refsToFeatureInAllDocuments(const ObjectPtr& theSourceObject, + const ObjectPtr& theObject, + std::set& theRefFeatures); }; #endif