bool PartSet_OperationFeatureCreate::canProcessKind(const std::string& theId)
{
- return theId == SKETCH_LINE_KIND || theId == SKETCH_POINT_KIND ||
- theId == SKETCH_CIRCLE_KIND ||
- theId == SKETCH_ARC_KIND ||
- theId == SKETCH_CONSTRAINT_DISTANCE_KIND ||
- theId == SKETCH_CONSTRAINT_LENGTH_KIND ||
- theId == SKETCH_CONSTRAINT_RADIUS_KIND ||
- theId == SKETCH_CONSTRAINT_PARALLEL_KIND ||
- theId == SKETCH_CONSTRAINT_PERPENDICULAR_KIND ||
- theId == SKETCH_CONSTRAINT_COINCIDENCE_KIND;
+ return theId == SketchPlugin_Line::ID() || theId == SketchPlugin_Point::ID() ||
+ theId == SketchPlugin_Circle::ID() ||
+ theId == SketchPlugin_Arc::ID() ||
+ theId == SketchPlugin_ConstraintDistance::ID() ||
+ theId == SketchPlugin_ConstraintLength::ID() ||
+ theId == SketchPlugin_ConstraintRadius::ID() ||
+ theId == SketchPlugin_ConstraintParallel::ID() ||
+ theId == SketchPlugin_ConstraintPerpendicular::ID() ||
+ theId == SketchPlugin_ConstraintCoincidence::ID();
}
bool PartSet_OperationFeatureCreate::canBeCommitted() const
{
PartSet_Tools::convertTo2D(aPoint, sketch(), theView, aX, anY);
// move to selected line
- if (feature()->getKind() == SKETCH_LINE_KIND) {
+ if (feature()->getKind() == SketchPlugin_Line::ID()) {
//FeaturePtr aFeature = aPrs.feature();
//projectPointOnLine(aFeature, myPointSelectionMode, aPoint, theView, aX, anY);
}
}
}
}
- FeaturePtr aFeature;
+ ResultPtr aFeature;
if (!theSelected.empty()) {
ModuleBase_ViewerPrs aPrs = theSelected.front();
- aFeature = aPrs.feature();
+ aFeature = aPrs.result();
}
- else
- aFeature = feature(); // for the widget distance only
+ // TODO
+ //else
+ // aFeature = feature(); // for the widget distance only
- bool isApplyed = setWidgetValue(aFeature, aX, anY);
+ // TODO
+ /*bool isApplyed = setWidgetValue(aFeature, aX, anY);
if (isApplyed) {
flushUpdated();
emit activateNextWidget(myActiveWidget);
- }
+ }*/
}
void PartSet_OperationFeatureCreate::mouseMoved(QMouseEvent* theEvent, Handle(V3d_View) theView)
if ((myPreSelection.size() > 0) && myActiveWidget) {
const ModuleBase_ViewerPrs& aPrs = myPreSelection.front();
ModuleBase_WidgetValueFeature aValue;
- aValue.setFeature(aPrs.feature());
+ aValue.setResult(aPrs.result());
if (myActiveWidget->setValue(&aValue)) {
myPreSelection.remove(aPrs);
emit activateNextWidget(myActiveWidget);
bool PartSet_OperationFeatureCreate::setWidgetValue(FeaturePtr theFeature, double theX, double theY)
{
ModuleBase_WidgetValueFeature* aValue = new ModuleBase_WidgetValueFeature();
- aValue->setFeature(theFeature);
+ aValue->setResult(theFeature->firstResult());
aValue->setPoint(boost::shared_ptr<GeomAPI_Pnt2d>(new GeomAPI_Pnt2d(theX, theY)));
bool isApplyed = myActiveWidget->setValue(aValue);