Salome HOME
Copyright update 2022
[modules/shaper.git] / src / ExchangePlugin / ExchangePlugin_Import.cpp
index a166c9431fc137185cd6d5e6edf1f21242063c59..e716d9af630a7a40f9a9b533fd579927f9709f7d 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2014-2020  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
@@ -31,6 +31,7 @@
 #include <ModelAPI_Session.h>
 #include <ModelAPI_ResultPart.h>
 #include <ModelAPI_Tools.h>
+#include <ModelAPI_Validator.h>
 
 
 static const std::wstring THE_NEW_PART_STR(L"New Part");
@@ -88,6 +89,23 @@ void ExchangePlugin_Import::initAttributes()
   data()->addAttribute(STEP_MATERIALS_ID(), ModelAPI_AttributeBoolean::typeId());
   data()->addAttribute(STEP_COLORS_ID(), ModelAPI_AttributeBoolean::typeId());
   data()->addAttribute(STEP_SCALE_INTER_UNITS_ID(), ModelAPI_AttributeBoolean::typeId());
+
+#ifndef HAVE_SALOME
+  ModelAPI_Session::get()->validators()->registerNotObligatory(
+    getKind(), ExchangePlugin_Import::IMPORT_TYPE_ID());
+  ModelAPI_Session::get()->validators()->registerNotObligatory(
+    getKind(), ExchangePlugin_Import::STEP_FILE_PATH_ID());
+  ModelAPI_Session::get()->validators()->registerNotObligatory(
+    getKind(), ExchangePlugin_Import::STEP_TARGET_PART_ID());
+  ModelAPI_Session::get()->validators()->registerNotObligatory(
+    getKind(), ExchangePlugin_Import::STEP_TARGET_PARTS_LIST_ID());
+  ModelAPI_Session::get()->validators()->registerNotObligatory(
+    getKind(), ExchangePlugin_Import::STEP_MATERIALS_ID());
+  ModelAPI_Session::get()->validators()->registerNotObligatory(
+    getKind(), ExchangePlugin_Import::STEP_COLORS_ID());
+  ModelAPI_Session::get()->validators()->registerNotObligatory(
+    getKind(), ExchangePlugin_Import::STEP_SCALE_INTER_UNITS_ID());
+#endif
 }
 
 /*
@@ -156,7 +174,7 @@ void ExchangePlugin_Import::execute()
 
 void ExchangePlugin_Import_Image::execute()
 {
- AttributeStringPtr aFilePathAttr = string(ExchangePlugin_ImportBase::FILE_PATH_ID());
 AttributeStringPtr aFilePathAttr = string(ExchangePlugin_ImportBase::FILE_PATH_ID());
   std::string aFilePath = aFilePathAttr->value();
   if (aFilePath.empty()) {
     setError("File path is empty.");