Update Sketcher context menu.

Refine poposed constraints on point selection.
Add symmetry constraint to context menu.
Rearrange commands to be consistent with the toolbar.
This commit is contained in:
Max Wilfinger
2024-03-30 11:02:05 +01:00
committed by Yorik van Havre
parent 0fcaf5ccae
commit 33abd923b3
2 changed files with 38 additions and 20 deletions

View File

@@ -4085,7 +4085,8 @@ void ViewProviderSketch::generateContextMenu()
}
if (selectedPoints == 1) {
menu << "Sketcher_ConstrainPerpendicular"
<< "Sketcher_ConstrainTangent";
<< "Sketcher_ConstrainTangent"
<< "Sketcher_ConstrainSymmetric";
}
}
else {
@@ -4110,13 +4111,35 @@ void ViewProviderSketch::generateContextMenu()
menu << "Sketcher_JoinCurves";
}
}
if (selectedPoints == 3) {
menu << "Sketcher_ConstrainSymmetric";
}
}
else if (selectedLines >= 1 && selectedPoints >= 1 && !onlyOrigin) {
menu << "Sketcher_Dimension"
<< "Sketcher_ConstrainHorVer"
menu << "Sketcher_Dimension";
if (selectedPoints == 1) {
menu << "Sketcher_ConstrainCoincidentUnified";
}
menu << "Sketcher_ConstrainHorVer"
<< "Sketcher_ConstrainHorizontal"
<< "Sketcher_ConstrainVertical";
if (selectedLines > 1) {
menu << "Sketcher_ConstrainParallel";
}
if (selectedLines == 2 && selectedPoints == 1) {
menu << "Sketcher_ConstrainPerpendicular"
<< "Sketcher_ConstrainTangent";
}
if (selectedLines == 1 && selectedPoints == 1) {
menu << "Sketcher_ConstrainSymmetric";
}
}
// context menu if only constraints are selected
else if (selectedConstraints >= 1) {
menu << "Sketcher_ToggleDrivingConstraint"
@@ -4134,6 +4157,7 @@ void ViewProviderSketch::generateContextMenu()
<< "Sketcher_Rotate"
<< "Sketcher_Scale"
<< "Sketcher_Offset"
<< "Sketcher_Symmetry"
<< "Separator"
<< "Sketcher_CompDimensionTools"
<< "Sketcher_CompConstrainTools"

View File

@@ -534,11 +534,11 @@ inline void SketcherAddWorkbenchTools<Gui::MenuItem>(Gui::MenuItem& consaccel)
<< "Sketcher_SelectHorizontalAxis"
<< "Sketcher_SelectVerticalAxis"
<< "Separator"
<< "Sketcher_Offset"
<< "Sketcher_Translate"
<< "Sketcher_Rotate"
<< "Sketcher_Scale"
<< "Sketcher_Offset"
<< "Sketcher_Symmetry"
<< "Sketcher_Translate"
<< "Sketcher_RemoveAxesAlignment"
<< "Separator"
<< "Sketcher_DeleteAllGeometry"
@@ -552,21 +552,15 @@ inline void SketcherAddWorkbenchTools<Gui::MenuItem>(Gui::MenuItem& consaccel)
template<>
inline void SketcherAddWorkbenchTools<Gui::ToolBarItem>(Gui::ToolBarItem& consaccel)
{
consaccel //<< "Sketcher_SelectElementsWithDoFs" //rarely used, it is usually accessed by
// solver
// message.
<< "Sketcher_SelectConstraints"
<< "Sketcher_SelectElementsAssociatedWithConstraints"
//<< "Sketcher_SelectRedundantConstraints" //rarely used, it is usually accessed by solver
// message.
//<< "Sketcher_SelectConflictingConstraints"
<< "Sketcher_RestoreInternalAlignmentGeometry"
<< "Sketcher_Offset"
<< "Sketcher_Rotate"
<< "Sketcher_Scale"
<< "Sketcher_Symmetry"
<< "Sketcher_Translate"
<< "Sketcher_RemoveAxesAlignment";
consaccel << "Sketcher_Translate"
<< "Sketcher_Rotate"
<< "Sketcher_Scale"
<< "Sketcher_Offset"
<< "Sketcher_Symmetry"
<< "Sketcher_RemoveAxesAlignment"
<< "Sketcher_SelectConstraints"
<< "Sketcher_SelectElementsAssociatedWithConstraints"
<< "Sketcher_RestoreInternalAlignmentGeometry";
}
template<typename T>