Added missed passmark option in Piece Path dialog.

Dialog should provide the same amount of options because a piece path can be
used as a custom seam allowance included as main path.

--HG--
branch : release
This commit is contained in:
Roman Telezhynskyi 2018-09-29 21:46:39 +03:00
parent b5c771b964
commit 978a8ba0c3
3 changed files with 46 additions and 2 deletions

View File

@ -496,6 +496,9 @@ void DialogPiecePath::PassmarkChanged(int index)
ui->radioButtonIntersection2OnlyLeft->setDisabled(true);
ui->radioButtonIntersection2OnlyRight->setDisabled(true);
ui->checkBoxShowSecondPassmark->setDisabled(true);
ui->checkBoxShowSecondPassmark->blockSignals(true);
ui->groupBoxMarkType->blockSignals(true);
ui->groupBoxAngleType->blockSignals(true);
@ -574,8 +577,15 @@ void DialogPiecePath::PassmarkChanged(int index)
default:
break;
}
// Show the second option
ui->checkBoxShowSecondPassmark->setEnabled(true);
ui->checkBoxShowSecondPassmark->setChecked(node.IsShowSecondPassmark());
}
}
ui->checkBoxShowSecondPassmark->blockSignals(false);
ui->groupBoxMarkType->blockSignals(false);
ui->groupBoxAngleType->blockSignals(false);
}
@ -696,6 +706,24 @@ void DialogPiecePath::PassmarkAngleTypeChanged(int id)
}
}
//---------------------------------------------------------------------------------------------------------------------
void DialogPiecePath::PassmarkShowSecondChanged(int state)
{
const int i = ui->comboBoxPassmarks->currentIndex();
if (i != -1)
{
QListWidgetItem *rowItem = GetItemById(ui->comboBoxPassmarks->currentData().toUInt());
if (rowItem)
{
VPieceNode rowNode = qvariant_cast<VPieceNode>(rowItem->data(Qt::UserRole));
rowNode.SetShowSecondPassmark(state);
rowItem->setData(Qt::UserRole, QVariant::fromValue(rowNode));
ListChanged();
}
}
}
//---------------------------------------------------------------------------------------------------------------------
void DialogPiecePath::EvalWidth()
{
@ -992,6 +1020,8 @@ void DialogPiecePath::InitPassmarksTab()
this, &DialogPiecePath::PassmarkLineTypeChanged);
connect(ui->buttonGroupAngleType, QOverload<int>::of(&QButtonGroup::buttonClicked),
this, &DialogPiecePath::PassmarkAngleTypeChanged);
connect(ui->checkBoxShowSecondPassmark, &QCheckBox::stateChanged, this,
&DialogPiecePath::PassmarkShowSecondChanged);
}
//---------------------------------------------------------------------------------------------------------------------

View File

@ -76,6 +76,7 @@ private slots:
void ReturnDefAfter();
void PassmarkLineTypeChanged(int id);
void PassmarkAngleTypeChanged(int id);
void PassmarkShowSecondChanged(int state);
void EvalWidth();
void EvalWidthBefore();

View File

@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>436</width>
<height>598</height>
<height>627</height>
</rect>
</property>
<property name="windowTitle">
@ -1134,6 +1134,19 @@
</layout>
</widget>
</item>
<item>
<widget class="QCheckBox" name="checkBoxShowSecondPassmark">
<property name="enabled">
<bool>false</bool>
</property>
<property name="toolTip">
<string>This option has effect only if the second passmark on seam line enabled in global preferences. The option helps disable the second passmark for this passmark only.</string>
</property>
<property name="text">
<string>Show the second passmark on seam line</string>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer_2">
<property name="orientation">
@ -1417,7 +1430,7 @@
</connection>
</connections>
<buttongroups>
<buttongroup name="buttonGroupMarkType"/>
<buttongroup name="buttonGroupAngleType"/>
<buttongroup name="buttonGroupMarkType"/>
</buttongroups>
</ui>