Salome HOME
First implementation of the sketch drawer: helper for creation of sketch on imported...
[modules/shaper.git] / src / SketchPlugin / SketchPlugin_Plugin.cpp
index aaf1402ed22edbaf8b10c74c7759cc21d29227fc..f7bc806d56ed4e79ae57a26aac2017a7074580e6 100644 (file)
@@ -54,6 +54,7 @@
 #include <SketchPlugin_ExternalValidator.h>
 #include <SketchPlugin_Ellipse.h>
 #include <SketchPlugin_MacroEllipse.h>
+#include <SketchPlugin_SketchDrawer.h>
 
 #include <SketcherPrs_Tools.h>
 
@@ -77,7 +78,7 @@
 #define SKETCH_ENTITY_COLOR "225,0,0"
 #define SKETCH_EXTERNAL_COLOR "170,0,225"
 #define SKETCH_AUXILIARY_COLOR "0,85,0"
-#define SKETCH_OVERCONSTRAINT_COLOR "0,0,0"
+#define SKETCH_OVERCONSTRAINT_COLOR "255,0,0"
 #define SKETCH_FULLY_CONSTRAINED_COLOR "0,150,0"
 
 //#define SET_PLANES_COLOR_IN_PREFERENCES
@@ -138,6 +139,8 @@ SketchPlugin_Plugin::SketchPlugin_Plugin()
                               new SketchPlugin_ReplicationReferenceValidator);
   aFactory->registerValidator("SketchPlugin_SketchFeatureValidator",
                               new SketchPlugin_SketchFeatureValidator);
+  aFactory->registerValidator("SketchPlugin_MultiRotationAngleValidator",
+                              new SketchPlugin_MultiRotationAngleValidator);
 
   // register this plugin
   ModelAPI_Session::get()->registerPlugin(this);
@@ -154,10 +157,6 @@ SketchPlugin_Plugin::SketchPlugin_Plugin()
                                    "Sketch auxiliary entity color",
                                    Config_Prop::Color, SKETCH_AUXILIARY_COLOR);
 
-  Config_PropManager::registerProp("Visualization", "sketch_dimension_color",
-                                   "Sketch dimension color",
-                                   Config_Prop::Color, SKETCH_DIMENSION_COLOR);
-
   Config_PropManager::registerProp("Visualization", "sketch_overconstraint_color",
                                    "Sketch overconstraint color",
                                    Config_Prop::Color, SKETCH_OVERCONSTRAINT_COLOR);
@@ -176,18 +175,6 @@ SketchPlugin_Plugin::SketchPlugin_Plugin()
                                    Config_Prop::Color, XY_PLANE_COLOR);
 #endif
 
-  Config_PropManager::registerProp(SKETCH_TAB_NAME, "dimension_font", "Dimension font",
-    Config_Prop::String, "Times-bold");
-  std::ostringstream aStream;
-  aStream << SketcherPrs_Tools::getDefaultTextHeight();
-
-  Config_PropManager::registerProp(SKETCH_TAB_NAME, "dimension_value_size",
-    "Dimension value size", Config_Prop::IntSpin, aStream.str());
-  aStream.str("");
-  aStream.clear();
-  aStream << SketcherPrs_Tools::getDefaultArrowSize();
-  Config_PropManager::registerProp(SKETCH_TAB_NAME, "dimension_arrow_size",
-    "Dimension arrow size", Config_Prop::IntSpin, aStream.str());
 }
 
 FeaturePtr SketchPlugin_Plugin::createFeature(std::string theFeatureID)
@@ -258,6 +245,8 @@ FeaturePtr SketchPlugin_Plugin::createFeature(std::string theFeatureID)
     return FeaturePtr(new SketchPlugin_Ellipse);
   } else if (theFeatureID == SketchPlugin_MacroEllipse::ID()) {
     return FeaturePtr(new SketchPlugin_MacroEllipse);
+  } else if (theFeatureID == SketchPlugin_SketchDrawer::ID()) {
+    return FeaturePtr(new SketchPlugin_SketchDrawer);
   }
   // feature of such kind is not found
   return FeaturePtr();