Salome HOME
#1150 Tab buttons problems
[modules/shaper.git] / src / ModuleBase / ModuleBase_Tools.h
old mode 100644 (file)
new mode 100755 (executable)
index e0aa9c6..31556d8
 #include "ModuleBase.h"
 #include "ModuleBase_Definitions.h"
 
+#include <ModelAPI_Attribute.h>
 #include <ModelAPI_Feature.h>
+
 #include <TopAbs_ShapeEnum.hxx>
+#include <TopoDS_Shape.hxx>
+#include <Prs3d_Drawer.hxx>
+
+#include <Quantity_Color.hxx>
 
 #include <QPixmap>
 
 class QWidget;
 class QLayout;
 class QDoubleSpinBox;
+class ModuleBase_ParamIntSpinBox;
 class ModuleBase_ParamSpinBox;
 
 namespace ModuleBase_Tools {
@@ -31,6 +38,30 @@ MODULEBASE_EXPORT void adjustMargins(QLayout* theLayout);
 MODULEBASE_EXPORT void zeroMargins(QWidget* theWidget);
 MODULEBASE_EXPORT void zeroMargins(QLayout* theLayout);
 
+/*
+ * Calls the same-named Qt method for the given widget.
+ * It sets the top-level widget containing this widget to be the active window.
+ * An active window is a visible top-level window that has the keyboard input focus.
+ * \param theWidget a widget to be activated
+ * \param theIndo a debug information
+ */
+MODULEBASE_EXPORT void activateWindow(QWidget* theWidget, const QString& theInfo = QString());
+
+/*
+ * Calls the same-named Qt method for the given widget.
+ * Gives the keyboard input focus to this widget (or its focus proxy) if this widget or
+ * one of its parents is the active window.
+ * \param theWidget a widget to be activated
+ * \param theIndo a debug information
+ */
+MODULEBASE_EXPORT void setFocus(QWidget* theWidget, const QString& theInfo = QString());
+
+
+//! Sets or removes the shadow effect to the widget
+//! \param theWidget a widget to be styled
+//! \param isSetEffect if true, the shadow effect is set, overwise cleared
+//! \return resulting pixmap
+MODULEBASE_EXPORT void setShadowEffect(QWidget* theWidget, const bool isSetEffect);
 
 /**
  * \ingroup GUI
@@ -72,6 +103,16 @@ MODULEBASE_EXPORT void setSpinValue(ModuleBase_ParamSpinBox* theSpin, double the
 /// \param theText a new value
 MODULEBASE_EXPORT void setSpinText(ModuleBase_ParamSpinBox* theSpin, const QString& theText);
 
+/// Sets programmatically the value to the spin box without emitting any signals(e.g. valueChanged)
+/// \param theSpin a ModuleBase_ParamIntSpinBox object
+/// \param theValue a new value
+MODULEBASE_EXPORT void setSpinValue(ModuleBase_ParamIntSpinBox* theSpin, int theValue);
+
+/// Sets programmatically the value to the spin box without emitting any signals(e.g. valueChanged)
+/// \param theSpin a SpinBox that accepts text
+/// \param theText a new value
+MODULEBASE_EXPORT void setSpinText(ModuleBase_ParamIntSpinBox* theSpin, const QString& theText);
+
 /// Converts the object to the feature or a result and generate information string
 /// \param theObj an object
 /// \param isUseAttributesInfo a flag whether the attribute values information is used
@@ -96,12 +137,36 @@ Check types of objects which are in the given list
 \param hasParameter will be set to true if list contains Parameter objects
 \param hasSubFeature will be set to true if list contains Sub-Feature objects
 */
-MODULEBASE_EXPORT void checkObjects(const QObjectPtrList& theObjects, bool& hasResult, bool& hasFeature, bool& hasParameter, bool& hasSubFeature);
+MODULEBASE_EXPORT void checkObjects(const QObjectPtrList& theObjects, bool& hasResult,
+                           bool& hasFeature, bool& hasParameter, bool& hasSubFeature);
 
-/*! Returns the default deviation coefficient value
-\return double value
+/*! Sets the default coeffient into the driver calculated accordingly the shape type.
+It provides 1.e-4 for a shape withe Edge shape type
+\param theShape a shape to define the deviation coeffient, 
+\param theDrawer a drawer
+*/
+MODULEBASE_EXPORT void setDefaultDeviationCoefficient(const TopoDS_Shape& theShape,
+                                                      const Handle(Prs3d_Drawer)& theDrawer);
+
+/*! Obtains the color from the property manager and converts it to the OCCT color
+\param theSection a property section
+\param theName a property item name
+\param theDefault a default color value
+\return quantity color
 */
-MODULEBASE_EXPORT double defaultDeviationCoefficient();
+MODULEBASE_EXPORT Quantity_Color color(const std::string& theSection,
+                                       const std::string& theName,
+                                       const std::string& theDefault);
+
+
+// Returns the object from the attribute
+/// \param theObj an object
+MODULEBASE_EXPORT ObjectPtr getObject(const AttributePtr& theAttribute);
+
+// Returns the object from the attribute
+/// \param theObj an object
+MODULEBASE_EXPORT TopAbs_ShapeEnum getCompoundSubType(const TopoDS_Shape& theShape);
+
 }
 
 #endif