[TD] Dimensions: donovaly's minor fixes for TheoreticalExact dimensions.

This commit is contained in:
Aapo
2021-01-29 10:27:11 +02:00
committed by wwmayer
parent e802179cf4
commit 4ea0784341
3 changed files with 10 additions and 2 deletions

View File

@@ -216,10 +216,13 @@ void DrawViewDimension::onChanged(const App::Property* prop)
UnderTolerance.setReadOnly(true);
FormatSpecOverTolerance.setReadOnly(true);
FormatSpecUnderTolerance.setReadOnly(true);
ArbitraryTolerances.setValue(false);
ArbitraryTolerances.setReadOnly(true);
}
else {
OverTolerance.setReadOnly(false);
FormatSpecOverTolerance.setReadOnly(false);
ArbitraryTolerances.setReadOnly(false);
if (!EqualTolerance.getValue()) {
UnderTolerance.setReadOnly(false);
FormatSpecUnderTolerance.setReadOnly(false);
@@ -923,7 +926,8 @@ std::string DrawViewDimension::getFormattedDimensionValue(int partial)
{
QString qFormatSpec = QString::fromUtf8(FormatSpec.getStrValue().data());
if (Arbitrary.getValue() && !EqualTolerance.getValue()) {
if ( (Arbitrary.getValue() && !EqualTolerance.getValue())
|| (Arbitrary.getValue() && TheoreticalExact.getValue()) ) {
return FormatSpec.getStrValue();
}

View File

@@ -628,7 +628,8 @@ void QGIViewDimension::updateDim()
QString labelText;
QString unitText;
if (dim->Arbitrary.getValue() && !dim->EqualTolerance.getValue()) {
if ( (dim->Arbitrary.getValue() && !dim->EqualTolerance.getValue())
|| (dim->Arbitrary.getValue() && dim->TheoreticalExact.getValue()) ) {
labelText = QString::fromUtf8(dim->getFormattedDimensionValue(1).c_str()); //just the number pref/spec/suf
} else {
if (dim->isMultiValueSchema()) {

View File

@@ -180,11 +180,14 @@ void TaskDimension::onTheoreticallyExactChanged()
ui->qsbUndertolerance->setDisabled(true);
ui->leFormatSpecifierOverTolerance->setDisabled(true);
ui->leFormatSpecifierUnderTolerance->setDisabled(true);
ui->cbArbitraryTolerances->setDisabled(true);
ui->cbArbitraryTolerances->setChecked(false);
}
else {
ui->cbEqualTolerance->setDisabled(false);
ui->qsbOvertolerance->setDisabled(false);
ui->leFormatSpecifierOverTolerance->setDisabled(false);
ui->cbArbitraryTolerances->setDisabled(false);
if (!ui->cbEqualTolerance->isChecked()) {
ui->qsbUndertolerance->setDisabled(false);
ui->leFormatSpecifierUnderTolerance->setDisabled(false);