X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModuleBase%2FModuleBase_Tools.cpp;h=5d921bdc8594b1c59d50c68005d6bba43626b2a4;hb=eef14b29d313b9dd16453d12f20aa02383ee139c;hp=d33467c7e883cacdbf53e1a68fb6b07c31a90518;hpb=cbde248859fb0072f6012907391ea90cfc254574;p=modules%2Fshaper.git diff --git a/src/ModuleBase/ModuleBase_Tools.cpp b/src/ModuleBase/ModuleBase_Tools.cpp index d33467c7e..5d921bdc8 100755 --- a/src/ModuleBase/ModuleBase_Tools.cpp +++ b/src/ModuleBase/ModuleBase_Tools.cpp @@ -5,6 +5,8 @@ // Author: Vitaly Smetannikov #include "ModuleBase_Tools.h" + +#include #include #include @@ -16,6 +18,7 @@ #include #include #include +#include #include @@ -29,6 +32,8 @@ #include #include #include +#include +#include #include @@ -91,6 +96,23 @@ void setFocus(QWidget* theWidget, const QString& theInfo) #endif } +void setShadowEffect(QWidget* theWidget, const bool isSetEffect) +{ + if (isSetEffect) { + QGraphicsDropShadowEffect* aGlowEffect = new QGraphicsDropShadowEffect(); + aGlowEffect->setOffset(.0); + aGlowEffect->setBlurRadius(10.0); + aGlowEffect->setColor(QColor(0, 170, 255)); // Light-blue color, #00AAFF + theWidget->setGraphicsEffect(aGlowEffect); + } + else { + QGraphicsEffect* anEffect = theWidget->graphicsEffect(); + if(anEffect) + anEffect->deleteLater(); + theWidget->setGraphicsEffect(NULL); + } +} + QPixmap composite(const QString& theAdditionalIcon, const QString& theIcon) { QImage anIcon(theIcon); @@ -171,6 +193,26 @@ void setSpinValue(ModuleBase_ParamSpinBox* theSpin, double theValue) theSpin->blockSignals(isBlocked); } +void setSpinText(ModuleBase_ParamIntSpinBox* theSpin, const QString& theText) +{ + // In order to avoid extra text setting because it will + // reset cursor position in control + if (theSpin->text() == theText) + return; + bool isBlocked = theSpin->blockSignals(true); + theSpin->setText(theText); + theSpin->blockSignals(isBlocked); +} + +void setSpinValue(ModuleBase_ParamIntSpinBox* theSpin, int theValue) +{ + if (theSpin->value() == theValue) + return; + bool isBlocked = theSpin->blockSignals(true); + theSpin->setValue(theValue); + theSpin->blockSignals(isBlocked); +} + QString objectInfo(const ObjectPtr& theObj, const bool isUseAttributesInfo) { QString aFeatureStr = "feature"; @@ -341,6 +383,30 @@ TopAbs_ShapeEnum getCompoundSubType(const TopoDS_Shape& theShape) return aShapeType; } +void getParameters(QStringList& theParameters) +{ + theParameters.clear(); + + SessionPtr aSession = ModelAPI_Session::get(); + std::list aDocList; + DocumentPtr anActiveDocument = aSession->activeDocument(); + DocumentPtr aRootDocument = aSession->moduleDocument(); + aDocList.push_back(anActiveDocument); + if (anActiveDocument != aRootDocument) { + aDocList.push_back(aRootDocument); + } + std::string aGroupId = ModelAPI_ResultParameter::group(); + for(std::list::const_iterator it = aDocList.begin(); it != aDocList.end(); ++it) { + DocumentPtr aDocument = *it; + int aSize = aDocument->size(aGroupId); + for (int i = 0; i < aSize; i++) { + ObjectPtr anObject = aDocument->object(aGroupId, i); + std::string aParameterName = anObject->data()->name(); + theParameters.append(aParameterName.c_str()); + } + } +} + } // namespace ModuleBase_Tools