PartDesign: Allow use of circle edge as axis in PolarPattern

This commit is contained in:
David Osterberg
2021-02-16 17:58:13 +01:00
committed by wwmayer
parent f1d6c78cbe
commit 52c0558f91
4 changed files with 21 additions and 16 deletions

View File

@@ -129,7 +129,7 @@ void TaskPolarPatternParameters::setupUI()
updateViewTimer->setInterval(getUpdateViewTimeout());
connect(updateViewTimer, SIGNAL(timeout()),
this, SLOT(onUpdateViewTimer()));
connect(ui->comboAxis, SIGNAL(activated(int)),
this, SLOT(onAxisChanged(int)));
connect(ui->checkReverse, SIGNAL(toggled(bool)),
@@ -249,7 +249,7 @@ void TaskPolarPatternParameters::removeObject(App::DocumentObject* obj)
void TaskPolarPatternParameters::onSelectionChanged(const Gui::SelectionChanges& msg)
{
if (selectionMode!=none && msg.Type == Gui::SelectionChanges::AddSelection) {
if (originalSelected(msg)) {
exitSelectionMode();
}
@@ -260,7 +260,7 @@ void TaskPolarPatternParameters::onSelectionChanged(const Gui::SelectionChanges&
getReferencedSelection(pcPolarPattern, msg, selObj, axes);
if(!selObj)
return;
if (selectionMode == reference || selObj->isDerivedFrom ( App::Line::getClassTypeId () ) ) {
setupTransaction();
pcPolarPattern->Axis.setValue(selObj, axes);
@@ -321,7 +321,7 @@ void TaskPolarPatternParameters::onAxisChanged(int /*num*/)
showBase();
selectionMode = reference;
Gui::Selection().clearSelection();
addReferenceSelectionGate(true, false);
addReferenceSelectionGate(true, false, false, false, true);
} else {
exitSelectionMode();
pcPolarPattern->Axis.Paste(axesLinks.getCurrentLink());