]> SALOME platform Git repositories - modules/shaper.git/blobdiff - src/SketchPlugin/SketchPlugin_Plugin.cpp
Salome HOME
Task 2.3: Creation of Intersection
[modules/shaper.git] / src / SketchPlugin / SketchPlugin_Plugin.cpp
index 0a1c026780f159025a7b7ca0653c3a74ebde224a..4ea4a6a1838cee8d93283ec991f033b511797551 100644 (file)
@@ -26,6 +26,7 @@
 #include <SketchPlugin_Circle.h>
 #include <SketchPlugin_Arc.h>
 #include <SketchPlugin_Projection.h>
+#include <SketchPlugin_Intersection.h>
 #include <SketchPlugin_ConstraintAngle.h>
 #include <SketchPlugin_ConstraintCoincidence.h>
 #include <SketchPlugin_ConstraintCollinear.h>
@@ -55,6 +56,8 @@
 #include <SketchPlugin_Ellipse.h>
 #include <SketchPlugin_MacroEllipse.h>
 
+#include <SketcherPrs_Tools.h>
+
 #include <Events_Loop.h>
 #include <GeomDataAPI_Dir.h>
 
@@ -66,6 +69,7 @@
 #include <Config_PropManager.h>
 
 #include <memory>
+#include <sstream>
 
 #ifdef _DEBUG
 #include <iostream>
@@ -131,6 +135,12 @@ SketchPlugin_Plugin::SketchPlugin_Plugin()
   aFactory->registerValidator("SketchPlugin_ArcEndPointIntersectionValidator",
                               new SketchPlugin_ArcEndPointIntersectionValidator);
   aFactory->registerValidator("SketchPlugin_HasNoConstraint", new SketchPlugin_HasNoConstraint);
+  aFactory->registerValidator("SketchPlugin_ReplicationReference",
+                              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);
@@ -168,6 +178,19 @@ SketchPlugin_Plugin::SketchPlugin_Plugin()
   Config_PropManager::registerProp("Visualization", "xy_plane_color", "XY plane color",
                                    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)
@@ -186,6 +209,8 @@ FeaturePtr SketchPlugin_Plugin::createFeature(std::string theFeatureID)
     return FeaturePtr(new SketchPlugin_Arc);
   } else if (theFeatureID == SketchPlugin_Projection::ID()) {
     return FeaturePtr(new SketchPlugin_Projection);
+  } else if (theFeatureID == SketchPlugin_Intersection::ID()) {
+    return FeaturePtr(new SketchPlugin_Intersection);
   } else if (theFeatureID == SketchPlugin_ConstraintCoincidence::ID()) {
     return FeaturePtr(new SketchPlugin_ConstraintCoincidence);
   } else if (theFeatureID == SketchPlugin_ConstraintCollinear::ID()) {