[PD] Pad/Pocket: fix reverse behavior
- bring back intended behavior as in FC 0.19: - if 2 lengths, then midplane is invisible - if reversed checked, then no symmetric and if symmetric then no reverse - unify the code for Pad and Pocket (reversed is always visible) - fix a typo in a bool name
This commit is contained in:
@@ -522,6 +522,7 @@ void TaskExtrudeParameters::onMidplaneChanged(bool on)
|
||||
{
|
||||
PartDesign::FeatureExtrude* extrude = static_cast<PartDesign::FeatureExtrude*>(vp->getObject());
|
||||
extrude->Midplane.setValue(on);
|
||||
ui->checkBoxReversed->setEnabled(!on);
|
||||
tryRecomputeFeature();
|
||||
}
|
||||
|
||||
@@ -529,6 +530,7 @@ void TaskExtrudeParameters::onReversedChanged(bool on)
|
||||
{
|
||||
PartDesign::FeatureExtrude* extrude = static_cast<PartDesign::FeatureExtrude*>(vp->getObject());
|
||||
extrude->Reversed.setValue(on);
|
||||
ui->checkBoxMidplane->setEnabled(!on);
|
||||
// update the direction
|
||||
tryRecomputeFeature();
|
||||
updateDirectionEdits();
|
||||
|
||||
@@ -89,7 +89,6 @@ void TaskPadParameters::updateUI(int index)
|
||||
bool isMidplaneEnabled = false;
|
||||
bool isMidplaneVisible = false;
|
||||
bool isReversedEnabled = false;
|
||||
bool isReversedVisible = false;
|
||||
bool isFaceEditEnabled = false;
|
||||
|
||||
Modes mode = static_cast<Modes>(index);
|
||||
@@ -97,20 +96,15 @@ void TaskPadParameters::updateUI(int index)
|
||||
if (mode == Modes::Dimension) {
|
||||
isLengthEditVisible = true;
|
||||
ui->lengthEdit->selectNumber();
|
||||
// Make sure that the spin box has the focus to get key events
|
||||
// Calling setFocus() directly doesn't work because the spin box is not
|
||||
// yet visible.
|
||||
QMetaObject::invokeMethod(ui->lengthEdit, "setFocus", Qt::QueuedConnection);
|
||||
isMidplaneEnabled = !ui->checkBoxReversed->isChecked();
|
||||
isMidplaneVisible = true;
|
||||
// Reverse only makes sense if Midplane is not true
|
||||
isReversedEnabled = !ui->checkBoxMidplane->isChecked();
|
||||
isReversedVisible = true;
|
||||
}
|
||||
else if (mode == Modes::ToLast || mode == Modes::ToFirst) {
|
||||
isOffsetEditVisible = true;
|
||||
isReversedEnabled = true;
|
||||
isReversedVisible = true;
|
||||
}
|
||||
else if (mode == Modes::ToFace) {
|
||||
isOffsetEditVisible = true;
|
||||
@@ -120,15 +114,11 @@ void TaskPadParameters::updateUI(int index)
|
||||
if (ui->lineFaceName->property("FeatureName").isNull())
|
||||
onButtonFace(true);
|
||||
isReversedEnabled = true;
|
||||
isReversedVisible = true;
|
||||
}
|
||||
else if (mode == Modes::TwoDimensions) {
|
||||
isLengthEditVisible = true;
|
||||
isLengthEdit2Visible = true;
|
||||
isMidplaneEnabled = !ui->checkBoxReversed->isChecked();
|
||||
isMidplaneVisible = true;
|
||||
isReversedEnabled = !ui->checkBoxMidplane->isChecked();
|
||||
isReversedVisible = true;
|
||||
isReversedEnabled = true;
|
||||
}
|
||||
|
||||
ui->lengthEdit->setVisible( isLengthEditVisible );
|
||||
@@ -144,7 +134,6 @@ void TaskPadParameters::updateUI(int index)
|
||||
ui->checkBoxMidplane->setVisible( isMidplaneVisible );
|
||||
|
||||
ui->checkBoxReversed->setEnabled( isReversedEnabled );
|
||||
ui->checkBoxReversed->setVisible( isReversedVisible );
|
||||
|
||||
ui->lengthEdit2->setVisible( isLengthEdit2Visible );
|
||||
ui->lengthEdit2->setEnabled( isLengthEdit2Visible );
|
||||
|
||||
@@ -88,7 +88,8 @@ void TaskPocketParameters::updateUI(int index)
|
||||
bool isLengthEdit2Visible = false;
|
||||
bool isOffsetEditVisible = false;
|
||||
bool isOffsetEditEnabled = true;
|
||||
bool isMidplateEnabled = false;
|
||||
bool isMidplaneEnabled = false;
|
||||
bool isMidplaneVisible = false;
|
||||
bool isReversedEnabled = false;
|
||||
bool isFaceEditEnabled = false;
|
||||
|
||||
@@ -97,18 +98,16 @@ void TaskPocketParameters::updateUI(int index)
|
||||
if (mode == Modes::Dimension) {
|
||||
isLengthEditVisible = true;
|
||||
ui->lengthEdit->selectNumber();
|
||||
// Make sure that the spin box has the focus to get key events
|
||||
// Calling setFocus() directly doesn't work because the spin box is not
|
||||
// yet visible.
|
||||
QMetaObject::invokeMethod(ui->lengthEdit, "setFocus", Qt::QueuedConnection);
|
||||
isMidplateEnabled = true;
|
||||
isMidplaneVisible = true;
|
||||
isMidplaneEnabled = true;
|
||||
// Reverse only makes sense if Midplane is not true
|
||||
isReversedEnabled = !ui->checkBoxMidplane->isChecked();
|
||||
}
|
||||
else if (mode == Modes::ThroughAll) {
|
||||
isOffsetEditVisible = true;
|
||||
isOffsetEditEnabled = false; // offset may have some meaning for through all but it doesn't work
|
||||
isMidplateEnabled = true;
|
||||
isMidplaneEnabled = true;
|
||||
isReversedEnabled = !ui->checkBoxMidplane->isChecked();
|
||||
}
|
||||
else if (mode == Modes::ToFirst) {
|
||||
@@ -146,7 +145,8 @@ void TaskPocketParameters::updateUI(int index)
|
||||
ui->offsetEdit->setEnabled( isOffsetEditVisible && isOffsetEditEnabled );
|
||||
ui->labelOffset->setVisible( isOffsetEditVisible );
|
||||
|
||||
ui->checkBoxMidplane->setEnabled( isMidplateEnabled );
|
||||
ui->checkBoxMidplane->setEnabled( isMidplaneEnabled );
|
||||
ui->checkBoxMidplane->setVisible(isMidplaneVisible);
|
||||
|
||||
ui->checkBoxReversed->setEnabled( isReversedEnabled );
|
||||
|
||||
|
||||
Reference in New Issue
Block a user