X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSketchPlugin%2FSketchPlugin_Plugin.cpp;h=cfa5e8a095e35f92ed3c07b14d8d450579e931b6;hb=20d233731eaae06b9a75280a2ca675bc9a11cc72;hp=88f062b69fb069f6c5aa1d797bf413070123b8e1;hpb=70b63231279a083e2c9c0281b1ad28dd6d4fba82;p=modules%2Fshaper.git diff --git a/src/SketchPlugin/SketchPlugin_Plugin.cpp b/src/SketchPlugin/SketchPlugin_Plugin.cpp index 88f062b69..cfa5e8a09 100644 --- a/src/SketchPlugin/SketchPlugin_Plugin.cpp +++ b/src/SketchPlugin/SketchPlugin_Plugin.cpp @@ -6,16 +6,24 @@ #include #include #include +#include #include #include +#include +#include +#include #include +#include #include #include #include #include +#include +#include +#include +#include #include -#include -#include +#include #include #include @@ -46,31 +54,35 @@ SketchPlugin_Plugin::SketchPlugin_Plugin() ModelAPI_ValidatorsFactory* aFactory = aMgr->validators(); aFactory->registerValidator("SketchPlugin_DistanceAttr", new SketchPlugin_DistanceAttrValidator); - //aFactory->registerValidator("SketchPlugin_DifferentObjects", - // new SketchPlugin_DifferentObjectsValidator); - aFactory->registerValidator("SketchPlugin_ResultPoint", new SketchPlugin_ResultPointValidator); - aFactory->registerValidator("SketchPlugin_ResultLine", new SketchPlugin_ResultLineValidator); - aFactory->registerValidator("SketchPlugin_ResultArc", new SketchPlugin_ResultArcValidator); - aFactory->registerValidator("SketchPlugin_ShapeValidator", - new SketchPlugin_ShapeValidator); + aFactory->registerValidator("SketchPlugin_ExternalValidator", + new SketchPlugin_ExternalValidator); + aFactory->registerValidator("SketchPlugin_TangentAttr", + new SketchPlugin_TangentAttrValidator); + aFactory->registerValidator("SketchPlugin_NotFixed", + new SketchPlugin_NotFixedValidator); + aFactory->registerValidator("SketchPlugin_EqualAttr", + new SketchPlugin_EqualAttrValidator); + aFactory->registerValidator("SketchPlugin_MirrorAttr", + new SketchPlugin_MirrorAttrValidator); + aFactory->registerValidator("SketchPlugin_CoincidenceAttr", + new SketchPlugin_CoincidenceAttrValidator); + aFactory->registerValidator("SketchPlugin_CopyValidator", + new SketchPlugin_CopyValidator); + aFactory->registerValidator("SketchPlugin_SolverErrorValidator", + new SketchPlugin_SolverErrorValidator); // register this plugin ModelAPI_Session::get()->registerPlugin(this); + + Config_PropManager::registerProp("Visualization", "sketch_entity_color", "Sketch entity color", + Config_Prop::Color, SKETCH_ENTITY_COLOR); - Config_PropManager::registerProp("Visualization", "sketch_edge_color", "Sketch edge color", - Config_Prop::Color, SKETCH_EDGE_COLOR); + Config_PropManager::registerProp("Visualization", "sketch_external_color", "Sketch external entity color", + Config_Prop::Color, SKETCH_EXTERNAL_COLOR); - Config_PropManager::registerProp("Visualization", "sketch_point_color", "Sketch point color", - Config_Prop::Color, SKETCH_POINT_COLOR); + Config_PropManager::registerProp("Visualization", "sketch_auxiliary_color", "Sketch auxiliary entity color", + Config_Prop::Color, SKETCH_AUXILIARY_COLOR); - Config_PropManager::registerProp("Visualization", "sketch_external_color", "Sketch external edge color", - Config_Prop::Color, SKETCH_EXTERNAL_EDGE_COLOR); - - Config_PropManager::registerProp("Visualization", "sketch_construction_color", "Sketch construction color", - Config_Prop::Color, SKETCH_CONSTRUCTION_COLOR); - - Config_PropManager::registerProp("Visualization", "sketch_parallel_color", "Sketch constraint color", - Config_Prop::Color, SKETCH_CONSTRAINT_COLOR); Config_PropManager::registerProp("Visualization", "sketch_dimension_color", "Sketch dimension color", Config_Prop::Color, SKETCH_DIMENSION_COLOR); @@ -111,6 +123,24 @@ FeaturePtr SketchPlugin_Plugin::createFeature(string theFeatureID) return FeaturePtr(new SketchPlugin_ConstraintRadius); } else if (theFeatureID == SketchPlugin_ConstraintRigid::ID()) { return FeaturePtr(new SketchPlugin_ConstraintRigid); + } else if (theFeatureID == SketchPlugin_ConstraintHorizontal::ID()) { + return FeaturePtr(new SketchPlugin_ConstraintHorizontal); + } else if (theFeatureID == SketchPlugin_ConstraintVertical::ID()) { + return FeaturePtr(new SketchPlugin_ConstraintVertical); + } else if (theFeatureID == SketchPlugin_ConstraintEqual::ID()) { + return FeaturePtr(new SketchPlugin_ConstraintEqual); + } else if (theFeatureID == SketchPlugin_ConstraintTangent::ID()) { + return FeaturePtr(new SketchPlugin_ConstraintTangent); + } else if (theFeatureID == SketchPlugin_ConstraintMirror::ID()) { + return FeaturePtr(new SketchPlugin_ConstraintMirror); + } else if (theFeatureID == SketchPlugin_ConstraintFillet::ID()) { + return FeaturePtr(new SketchPlugin_ConstraintFillet); + } else if (theFeatureID == SketchPlugin_MultiTranslation::ID()) { + return FeaturePtr(new SketchPlugin_MultiTranslation); + } else if (theFeatureID == SketchPlugin_MultiRotation::ID()) { + return FeaturePtr(new SketchPlugin_MultiRotation); + } else if (theFeatureID == SketchPlugin_ConstraintAngle::ID()) { + return FeaturePtr(new SketchPlugin_ConstraintAngle); } // feature of such kind is not found return FeaturePtr(); @@ -131,8 +161,8 @@ std::shared_ptr SketchPlugin_Plugin ::getFeaturesState(const std::shared_ptr& theFeature) const { const Events_ID kResponseEvent = Events_Loop::loop()->eventByName(EVENT_FEATURE_STATE_RESPONSE); - std::shared_ptr aMsg = - std::make_shared(kResponseEvent, this); + std::shared_ptr aMsg( + new ModelAPI_FeatureStateMessage(kResponseEvent, this)); bool aHasSketchPlane = false; std::shared_ptr aSketchFeature = @@ -155,6 +185,15 @@ std::shared_ptr SketchPlugin_Plugin aMsg->setState(SketchPlugin_ConstraintPerpendicular::ID(), aHasSketchPlane); aMsg->setState(SketchPlugin_ConstraintRadius::ID(), aHasSketchPlane); aMsg->setState(SketchPlugin_ConstraintRigid::ID(), aHasSketchPlane); + aMsg->setState(SketchPlugin_ConstraintHorizontal::ID(), aHasSketchPlane); + aMsg->setState(SketchPlugin_ConstraintVertical::ID(), aHasSketchPlane); + aMsg->setState(SketchPlugin_ConstraintEqual::ID(), aHasSketchPlane); + aMsg->setState(SketchPlugin_ConstraintTangent::ID(), aHasSketchPlane); + aMsg->setState(SketchPlugin_ConstraintMirror::ID(), aHasSketchPlane); + aMsg->setState(SketchPlugin_ConstraintFillet::ID(), aHasSketchPlane); + aMsg->setState(SketchPlugin_ConstraintAngle::ID(), aHasSketchPlane); + aMsg->setState(SketchPlugin_MultiRotation::ID(), aHasSketchPlane); + aMsg->setState(SketchPlugin_MultiTranslation::ID(), aHasSketchPlane); } } return aMsg;