Salome HOME
Update copyrights
[modules/shaper.git] / src / Config / Config_Prop.h
index bdaecb59b7bc84d856cd149407fa9c402f4fe6bd..fe97e96756c9990d7c3e6ff6e529b9dd2140492f 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2014-2017  CEA/DEN, EDF R&D
+// Copyright (C) 2014-2019  CEA/DEN, EDF R&D
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 //
 // You should have received a copy of the GNU Lesser General Public
 // License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or
-// email : webmaster.salome@opencascade.com<mailto:webmaster.salome@opencascade.com>
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 
 #ifndef CONFIG_PROP_H
@@ -26,7 +25,7 @@
 #include <string>
 #include <list>
 
-static const char* SKETCH_TAB_NAME = "Sketch";
+static const char SKETCH_TAB_NAME[] = "Sketch";
 
 /*!
  * \class Config_Prop
@@ -73,7 +72,9 @@ class Config_Prop
    * \param theDefaultValue - default value of the property. This is an initial property value
    */
   Config_Prop(const std::string& theSection, const std::string& theName,
-              const std::string& theTitle, PropType theType, const std::string& theDefaultValue)
+              const std::string& theTitle, PropType theType,
+              const std::string& theDefaultValue,
+              const std::string& theMin, const std::string& theMax)
   {
     mySection = theSection;
     myName = theName;
@@ -81,6 +82,8 @@ class Config_Prop
     myType = theType;
     myValue = theDefaultValue;
     myDefaultValue = theDefaultValue;
+    myMin = theMin;
+    myMax = theMax;
   }
 
   /// Get name of section
@@ -133,6 +136,20 @@ class Config_Prop
     return (mySection == theProp->section()) && (myName == theProp->name());
   }
 
+  /// Returns minimal value
+  std::string min() const { return myMin; }
+
+  void setMin(const std::string& theMin) {
+    myMin = theMin;
+  }
+
+  /// Returns maximal value
+  std::string max() const { return myMax; }
+
+  void setMax(const std::string& theMax) {
+    myMax = theMax;
+  }
+
  private:
   std::string mySection; ///< Name of section
   std::string myName; ///< Name of property
@@ -140,6 +157,8 @@ class Config_Prop
   PropType myType; ///< Type of property
   std::string myValue; // Value in string format
   std::string myDefaultValue; // Default value
+  std::string myMin; // Minimal value
+  std::string myMax; // Maximal value
 };
 
 typedef std::list<Config_Prop*> Config_Properties;