X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModuleBase%2FModuleBase_Tools.h;h=3c9006d9a65a1f376da3de9e824be1a9538e164f;hb=af851100774c4ff33b515c884abe0cd03c3f0528;hp=f326a9e5782211565f8dc80d358eca4eb9c2d4c9;hpb=141af0409801857d641e2bf61cd414b373e65b0b;p=modules%2Fshaper.git diff --git a/src/ModuleBase/ModuleBase_Tools.h b/src/ModuleBase/ModuleBase_Tools.h index f326a9e57..3c9006d9a 100644 --- a/src/ModuleBase/ModuleBase_Tools.h +++ b/src/ModuleBase/ModuleBase_Tools.h @@ -1,25 +1,70 @@ +// Copyright (C) 2014-20xx CEA/DEN, EDF R&D + // File: ModuleBase_Tools.h // Created: 11 July 2014 // Author: Vitaly Smetannikov - #ifndef ModuleBase_Tools_H #define ModuleBase_Tools_H #include "ModuleBase.h" -#include +#include + +#include + +class QWidget; +class QLayout; +class QDoubleSpinBox; + +namespace ModuleBase_Tools { + +/* + * Methods to adjust margins and spacings. + */ +MODULEBASE_EXPORT void adjustMargins(QWidget* theWidget); +MODULEBASE_EXPORT void adjustMargins(QLayout* theLayout); + +MODULEBASE_EXPORT void zeroMargins(QWidget* theWidget); +MODULEBASE_EXPORT void zeroMargins(QLayout* theLayout); + + +/** + * \ingroup GUI + * Methods to modify a resource pixmap + */ + +//! Create composite pixmap. +//! Pixmap \a theAdditionalIcon is drawn over pixmap \a dest with coordinates +//! specified relatively to the upper left corner of \a theIcon. + +//! \param theAdditionalIcon resource text of the additional pixmap +//! \param theIcon resource text of the background pixmap +//! \return resulting pixmap +MODULEBASE_EXPORT QPixmap composite(const QString& theAdditionalIcon, const QString& theIcon); + +//! Generates the pixmap lighter than the resources pixmap. +//! Pixmap \a theIcon is lighted according to the given value. +//! If the lighter value is greater than 100, this functions returns a lighter pixmap. +//! Setting lighter value to 150 returns a color that is 50% brighter. If the factor is less than 100, +//! the return pixmap is darker. If the factor is 0 or negative, the return pixmap is unspecified. -class GeomAPI_Shape; +//! \param resource text of the pixmap +//! \param theLighterValue a lighter factor +//! \return resulting pixmap +MODULEBASE_EXPORT QPixmap lighter(const QString& theIcon, const int theLighterValue = 200); -namespace ModuleBase_Tools -{ +/// Sets programmatically the value to the spin box without emitting any signals(e.g. valueChanged) +/// \param theSpin an X or Y coordinate widget +/// \param theValue a new value +MODULEBASE_EXPORT void setSpinValue(QDoubleSpinBox* theSpin, double theValue); - /** - * Returns returns a shape if the result has a shape method. Otherwise returns NULL pointer - */ - MODULEBASE_EXPORT boost::shared_ptr shape(ResultPtr theResult); +/// 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 +/// \return a string +MODULEBASE_EXPORT QString objectInfo(const ObjectPtr& theObj, const bool isUseAttributesInfo = false); -}; +} -#endif \ No newline at end of file +#endif