Add a combo box to the transform featues UI for the TransformMode
This commit is contained in:
@@ -91,6 +91,10 @@ void TaskTransformedParameters::setupUI()
|
||||
ui->setupUi(proxy);
|
||||
QMetaObject::connectSlotsByName(this);
|
||||
|
||||
connect(ui->comboMode,
|
||||
qOverload<int>(&QComboBox::activated),
|
||||
this,
|
||||
&TaskTransformedParameters::onModeChanged);
|
||||
connect(ui->buttonAddFeature,
|
||||
&QToolButton::toggled,
|
||||
this,
|
||||
@@ -120,8 +124,13 @@ void TaskTransformedParameters::setupUI()
|
||||
|
||||
// Get the feature data
|
||||
auto pcTransformed = static_cast<PartDesign::Transformed*>(getObject());
|
||||
std::vector<App::DocumentObject*> originals = pcTransformed->Originals.getValues();
|
||||
|
||||
using Mode = PartDesign::Transformed::Mode;
|
||||
auto const mode = static_cast<Mode>(pcTransformed->TransformMode.getValue());
|
||||
ui->groupFeatureList->setEnabled(mode == Mode::TransformToolShapes);
|
||||
ui->comboMode->setCurrentIndex(static_cast<int>(mode));
|
||||
|
||||
std::vector<App::DocumentObject*> originals = pcTransformed->Originals.getValues();
|
||||
// Fill data into dialog elements
|
||||
for (auto obj : originals) {
|
||||
if (obj) {
|
||||
@@ -272,6 +281,22 @@ bool TaskTransformedParameters::isEnabledTransaction() const
|
||||
return enableTransaction;
|
||||
}
|
||||
|
||||
void TaskTransformedParameters::onModeChanged(int mode)
|
||||
{
|
||||
using Mode = PartDesign::Transformed::Mode;
|
||||
|
||||
auto pcTransformed = static_cast<PartDesign::Transformed*>(getObject());
|
||||
pcTransformed->TransformMode.setValue(mode);
|
||||
|
||||
auto const tmode = static_cast<Mode>(mode);
|
||||
ui->groupFeatureList->setEnabled(tmode == Mode::TransformToolShapes);
|
||||
if (tmode == Mode::TransformBody) {
|
||||
ui->listWidgetFeatures->clear();
|
||||
}
|
||||
setupTransaction();
|
||||
recomputeFeature();
|
||||
}
|
||||
|
||||
void TaskTransformedParameters::onButtonAddFeature(bool checked)
|
||||
{
|
||||
if (checked) {
|
||||
|
||||
@@ -228,6 +228,7 @@ private Q_SLOTS:
|
||||
void onButtonRemoveFeature(bool checked);
|
||||
void onFeatureDeleted();
|
||||
void indexesMoved();
|
||||
void onModeChanged(int mode);
|
||||
|
||||
private:
|
||||
/** Setup the parameter UI.
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>262</width>
|
||||
<height>207</height>
|
||||
<width>297</width>
|
||||
<height>248</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
@@ -15,43 +15,95 @@
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QPushButton" name="buttonAddFeature">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Add feature</string>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
<string>Mode:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="buttonRemoveFeature">
|
||||
<property name="text">
|
||||
<string>Remove feature</string>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
<widget class="QComboBox" name="comboMode">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Transform tool shapes</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Transform body</string>
|
||||
</property>
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QListWidget" name="listWidgetFeatures">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>120</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>List can be reordered by dragging</string>
|
||||
</property>
|
||||
<property name="dragDropMode">
|
||||
<enum>QAbstractItemView::InternalMove</enum>
|
||||
</property>
|
||||
<widget class="QWidget" name="groupFeatureList" native="true">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<widget class="QPushButton" name="buttonAddFeature">
|
||||
<property name="text">
|
||||
<string>Add feature</string>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="buttonRemoveFeature">
|
||||
<property name="text">
|
||||
<string>Remove feature</string>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QListWidget" name="listWidgetFeatures">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>120</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>List can be reordered by dragging</string>
|
||||
</property>
|
||||
<property name="dragDropMode">
|
||||
<enum>QAbstractItemView::InternalMove</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
@@ -70,6 +122,7 @@
|
||||
</layout>
|
||||
</widget>
|
||||
<tabstops>
|
||||
<tabstop>comboMode</tabstop>
|
||||
<tabstop>buttonAddFeature</tabstop>
|
||||
<tabstop>buttonRemoveFeature</tabstop>
|
||||
<tabstop>listWidgetFeatures</tabstop>
|
||||
|
||||
Reference in New Issue
Block a user