X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModuleBase%2FModuleBase_DoubleSpinBox.h;h=7b910797ed42008adc62d9f1b68f4fb3d43975c1;hb=5303dd1fa6ad4411e38f8d36103c72109957e05c;hp=a247fb8b782d5fde34efb0acb4ab629c47c88438;hpb=4021ee9a0bbca04e0d2db98efa55eff30f03985a;p=modules%2Fshaper.git diff --git a/src/ModuleBase/ModuleBase_DoubleSpinBox.h b/src/ModuleBase/ModuleBase_DoubleSpinBox.h index a247fb8b7..7b910797e 100644 --- a/src/ModuleBase/ModuleBase_DoubleSpinBox.h +++ b/src/ModuleBase/ModuleBase_DoubleSpinBox.h @@ -1,5 +1,7 @@ +// Copyright (C) 2014-20xx CEA/DEN, EDF R&D + // File: ModuleBase_DoubleSpinBox.h -// Author: Sergey TELKOV +// Author: Sergey BELASH // #ifndef MODULEBASE_DOUBLESPINBOX_H_ #define MODULEBASE_DOUBLESPINBOX_H_ @@ -9,35 +11,56 @@ #include #include + +/** +* \ingroup GUI +* An extension and customozation of QDoubleSpinBox class +*/ class MODULEBASE_EXPORT ModuleBase_DoubleSpinBox : public QDoubleSpinBox { Q_OBJECT public: - ModuleBase_DoubleSpinBox(QWidget* = 0, int thePrecision = 6); + explicit ModuleBase_DoubleSpinBox( QWidget* theParent = 0, int thePrecision = 15 ); virtual ~ModuleBase_DoubleSpinBox(); + /// Returns true if the control is clear bool isCleared() const; + + /// Set control clear virtual void setCleared(const bool); + /// Returns current precision int getPrecision() const; + + /// Set precision void setPrecision(const int); + /// Set step virtual void stepBy(int); + /// Converts value from string to double virtual double valueFromText(const QString&) const; + + /// Convert value from double to string virtual QString textFromValue(double) const; + /// Validate current value virtual QValidator::State validate(QString&, int&) const; protected slots: + /// Called on text changed virtual void onTextChanged(const QString&); protected: + /// Removes extra trailing zero symbols QString removeTrailingZeroes(const QString&) const; private: + /// Is clear flag bool myCleared; + + /// Precision value int myPrecision; };