X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_Tools.cpp;h=5cf560636b93be6c263d9eea048d6b664f0c32b6;hb=fd958c0c05de3b2661006daeb7580c3734c9709d;hp=8ce0a36ac0bcb25349a31bd518513a43d995496f;hpb=e3cdcd3e1329acba45cd12baf064345ab94fd98b;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_Tools.cpp b/src/XGUI/XGUI_Tools.cpp index 8ce0a36ac..5cf560636 100644 --- a/src/XGUI/XGUI_Tools.cpp +++ b/src/XGUI/XGUI_Tools.cpp @@ -1,13 +1,15 @@ #include "XGUI_Tools.h" #include -#include +#include #include #include #include +namespace XGUI_Tools +{ //****************************************************************** QString dir(const QString& path, bool isAbs) { @@ -54,7 +56,13 @@ QRect makeRect(const int x1, const int y1, const int x2, const int y2) } //****************************************************************** -std::string featureInfo(boost::shared_ptr theFeature) +bool isModelObject(FeaturePtr theFeature) +{ + return theFeature && !theFeature->data(); +} + +//****************************************************************** +std::string featureInfo(FeaturePtr theFeature) { std::ostringstream aStream; if (theFeature) @@ -62,3 +70,15 @@ std::string featureInfo(boost::shared_ptr theFeature) return QString(aStream.str().c_str()).toStdString(); } +//****************************************************************** +FeaturePtr realFeature(const FeaturePtr theFeature) +{ + if (theFeature->data()) { + return theFeature; + } else { + ObjectPtr aObject = boost::dynamic_pointer_cast(theFeature); + return aObject->featureRef(); + } +} + +}