Salome HOME
Extrusion fix
[modules/shaper.git] / src / ModelAPI / ModelAPI_Object.h
index 07776479cf194c85bbae1d5bd82807fab11315b1..0d9c067d61b761fd715ad6fd252a190512bbe086 100644 (file)
@@ -55,7 +55,11 @@ class ModelAPI_Object: public ModelAPI_Entity
   virtual void initAttributes() = 0;
 
   /// Returns the feature is disabled or not.
-  virtual bool isDisabled() const = 0;
+  virtual bool isDisabled() = 0;
+
+  /// Returns the parameters of color definition in the resources config manager
+  virtual void colorConfigInfo(std::string& theSection, std::string& theName,
+                               std::string& theDefault) {}
 
   /// Called on change of any argument-attribute of this object
   /// \param theID identifier of changed attribute
@@ -69,7 +73,7 @@ class ModelAPI_Object: public ModelAPI_Entity
 
   /// Returns true if object must be displayed in the viewer: flag is stored in the
   /// data model, so on undo/redo, open/save or recreation of object by history-playing it keeps
-  /// the original state i nthe current transaction.
+  /// the original state ithe current transaction.
   MODELAPI_EXPORT virtual bool isDisplayed();
 
   /// Sets the displayed/hidden state of the object. If it is changed, sends the "redisplay"
@@ -77,6 +81,10 @@ class ModelAPI_Object: public ModelAPI_Entity
   MODELAPI_EXPORT virtual void setDisplayed(const bool theDisplay);
 
  protected:
+  /// This method is called just after creation of the object: it must initialize
+  /// all fields, normally initialized in the constructor
+  MODELAPI_EXPORT virtual void init() = 0;
+
   /// Sets the data manager of an object (document does)
   MODELAPI_EXPORT virtual void setData(std::shared_ptr<ModelAPI_Data> theData);