Salome HOME
Merge branch 'mbs/32757' of https://codev-tuleap.cea.fr/plugins/git/salome/shaper...
[modules/shaper.git] / src / ModelAPI / ModelAPI_Feature.cpp
index 14397b0fea7efed0e0c42ee1af67e89196f375c8..4b0939fab5e3220691f8928583537a9f76fd6d41 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2014-2021  CEA/DEN, EDF R&D
+// Copyright (C) 2014-2022  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
 #include <ModelAPI_Data.h>
 #include <ModelAPI_Document.h>
 #include <ModelAPI_Session.h>
+#include <ModelAPI_Tools.h>
+#include <ModelAPI_ResultGroup.h>
 #include <Events_Loop.h>
 #include <Config_Translator.h>
+#include <Config_PropManager.h>
 
 void ModelAPI_Feature::setError(const std::string& theError,
                                 bool isSend,
@@ -70,6 +73,13 @@ void ModelAPI_Feature::setResult(const std::shared_ptr<ModelAPI_Result>& theResu
   // in any case result becomes enabled
   if (!isDisabled()) // disabled feature may be executed when it is added as not enabled (#2078)
     theResult->setDisabled(theResult, false);
+
+    if (Config_PropManager::getAutoColorStatus()
+                            && theResult->groupName() == ModelAPI_ResultGroup::group()) {
+      std::vector<int> aColor;
+      ModelAPI_Tools::findRandomColor(aColor);
+      ModelAPI_Tools::setColor(theResult,  aColor);
+    }
 }
 
 void ModelAPI_Feature::setResult(const std::shared_ptr<ModelAPI_Result>& theResult,