Salome HOME
Fix for the issue #1605 : optimization of undo/redo and abort processing
[modules/shaper.git] / src / ParametersPlugin / ParametersPlugin_Parameter.h
index 2eef33febd518e7d58328f4c2b106a98f8220beb..50be185b2fa2796f826e3776b12a4a6afb91f092 100644 (file)
@@ -55,6 +55,13 @@ class ParametersPlugin_Parameter : public ModelAPI_Feature
     return MY_ARGUMENTS_ID;
   }
 
+  /// return comment attribute Id
+  inline static const std::string& COMMENT_ID()
+  {
+    static const std::string MY_COMMENT_ID("comment");
+    return MY_COMMENT_ID;
+  }
+
   /// Returns the kind of a feature
   PARAMETERSPLUGIN_EXPORT virtual const std::string& getKind()
   {
@@ -65,14 +72,16 @@ class ParametersPlugin_Parameter : public ModelAPI_Feature
   /// Pre-execution is not needed for parameter
   PARAMETERSPLUGIN_EXPORT virtual bool isPreviewNeeded() const;
 
-  /// Creates a new part document if needed
+  /// Creates a parameter in document
   PARAMETERSPLUGIN_EXPORT virtual void execute();
 
   /// Request for initialization of data model of the feature: adding all attributes
   PARAMETERSPLUGIN_EXPORT virtual void initAttributes();
 
-  PARAMETERSPLUGIN_EXPORT virtual bool isInHistory(); //false
+  /// Reimplemented from ModelAPI_Feature::isInHistory(). Returns false.
+  PARAMETERSPLUGIN_EXPORT virtual bool isInHistory();
 
+  /// Reimplemented from ModelAPI_Feature::isInHistory().
   PARAMETERSPLUGIN_EXPORT virtual void attributeChanged(const std::string& theID);
 
   /// Use plugin manager for features creation
@@ -81,10 +90,10 @@ class ParametersPlugin_Parameter : public ModelAPI_Feature
  protected:
   /// Evaluates theExpression and returns its value.
   double evaluate(const std::string& theExpression, std::string& theError);
-  /// Update name of the parameter
+  /// Updates name of the parameter
   void updateName();
-  /// Update expression of the parameter
-  void updateExpression();
+  /// Updates expression of the parameter
+  bool updateExpression();
 
  private:
   std::shared_ptr<ParametersPlugin_PyInterp> myInterp;