PartDesign: [skip ci] move indexesMoved() to base class TaskTransformedParameters to avoid code duplication
This commit is contained in:
@@ -222,22 +222,6 @@ void TaskLinearPatternParameters::updateUI()
|
||||
blockUpdate = false;
|
||||
}
|
||||
|
||||
void TaskLinearPatternParameters::indexesMoved()
|
||||
{
|
||||
PartDesign::Transformed* pcTransformed = getObject();
|
||||
std::vector<App::DocumentObject*> originals = pcTransformed->Originals.getValues();
|
||||
// the number of items has not been changed, they have just been reordered
|
||||
// so we read every list item to recreate the originals vector
|
||||
std::string name;
|
||||
for (unsigned i = 0; i < ui->listWidgetFeatures->count(); i++) {
|
||||
name = ui->listWidgetFeatures->item(i)->data(Qt::UserRole).toByteArray().constData();
|
||||
originals[i] = pcTransformed->getDocument()->getObject(name.c_str());
|
||||
}
|
||||
setupTransaction();
|
||||
pcTransformed->Originals.setValues(originals);
|
||||
recomputeFeature();
|
||||
}
|
||||
|
||||
void TaskLinearPatternParameters::onUpdateViewTimer()
|
||||
{
|
||||
setupTransaction();
|
||||
|
||||
@@ -60,7 +60,6 @@ public:
|
||||
virtual void apply();
|
||||
|
||||
private Q_SLOTS:
|
||||
void indexesMoved();
|
||||
void onUpdateViewTimer();
|
||||
void onDirectionChanged(int num);
|
||||
void onCheckReverse(const bool on);
|
||||
|
||||
@@ -186,22 +186,6 @@ void TaskMirroredParameters::updateUI()
|
||||
blockUpdate = false;
|
||||
}
|
||||
|
||||
void TaskMirroredParameters::indexesMoved()
|
||||
{
|
||||
PartDesign::Transformed* pcTransformed = getObject();
|
||||
std::vector<App::DocumentObject*> originals = pcTransformed->Originals.getValues();
|
||||
// the number of items has not been changed, they have just been reordered
|
||||
// so we read every list item to recreate the originals vector
|
||||
std::string name;
|
||||
for (unsigned i = 0; i < ui->listWidgetFeatures->count(); i++) {
|
||||
name = ui->listWidgetFeatures->item(i)->data(Qt::UserRole).toByteArray().constData();
|
||||
originals[i] = pcTransformed->getDocument()->getObject(name.c_str());
|
||||
}
|
||||
setupTransaction();
|
||||
pcTransformed->Originals.setValues(originals);
|
||||
recomputeFeature();
|
||||
}
|
||||
|
||||
void TaskMirroredParameters::addObject(App::DocumentObject* obj)
|
||||
{
|
||||
QString label = QString::fromUtf8(obj->Label.getValue());
|
||||
|
||||
@@ -62,7 +62,6 @@ public:
|
||||
virtual void apply();
|
||||
|
||||
private Q_SLOTS:
|
||||
void indexesMoved();
|
||||
void onPlaneChanged(int num);
|
||||
virtual void onUpdateView(bool);
|
||||
virtual void onFeatureDeleted(void);
|
||||
|
||||
@@ -162,22 +162,6 @@ TaskMultiTransformParameters::TaskMultiTransformParameters(ViewProviderTransform
|
||||
// ---------------------
|
||||
}
|
||||
|
||||
void TaskMultiTransformParameters::indexesMoved()
|
||||
{
|
||||
PartDesign::Transformed* pcTransformed = getObject();
|
||||
std::vector<App::DocumentObject*> originals = pcTransformed->Originals.getValues();
|
||||
// the number of items has not been changed, they have just been reordered
|
||||
// so we read every list item to recreate the originals vector
|
||||
std::string name;
|
||||
for (unsigned i = 0; i < ui->listWidgetFeatures->count(); i++) {
|
||||
name = ui->listWidgetFeatures->item(i)->data(Qt::UserRole).toByteArray().constData();
|
||||
originals[i] = pcTransformed->getDocument()->getObject(name.c_str());
|
||||
}
|
||||
setupTransaction();
|
||||
pcTransformed->Originals.setValues(originals);
|
||||
recomputeFeature();
|
||||
}
|
||||
|
||||
void TaskMultiTransformParameters::addObject(App::DocumentObject* obj)
|
||||
{
|
||||
QString label = QString::fromUtf8(obj->Label.getValue());
|
||||
|
||||
@@ -68,7 +68,6 @@ public:
|
||||
virtual void apply();
|
||||
|
||||
private Q_SLOTS:
|
||||
void indexesMoved();
|
||||
void onTransformDelete();
|
||||
void onTransformEdit();
|
||||
void onTransformActivated(const QModelIndex& index);
|
||||
|
||||
@@ -217,22 +217,6 @@ void TaskPolarPatternParameters::updateUI()
|
||||
blockUpdate = false;
|
||||
}
|
||||
|
||||
void TaskPolarPatternParameters::indexesMoved()
|
||||
{
|
||||
PartDesign::Transformed* pcTransformed = getObject();
|
||||
std::vector<App::DocumentObject*> originals = pcTransformed->Originals.getValues();
|
||||
// the number of items has not been changed, they have just been reordered
|
||||
// so we read every list item to recreate the originals vector
|
||||
std::string name;
|
||||
for (unsigned i = 0; i < ui->listWidgetFeatures->count(); i++) {
|
||||
name = ui->listWidgetFeatures->item(i)->data(Qt::UserRole).toByteArray().constData();
|
||||
originals[i] = pcTransformed->getDocument()->getObject(name.c_str());
|
||||
}
|
||||
setupTransaction();
|
||||
pcTransformed->Originals.setValues(originals);
|
||||
recomputeFeature();
|
||||
}
|
||||
|
||||
void TaskPolarPatternParameters::onUpdateViewTimer()
|
||||
{
|
||||
setupTransaction();
|
||||
|
||||
@@ -58,8 +58,8 @@ public:
|
||||
virtual ~TaskPolarPatternParameters();
|
||||
|
||||
void apply();
|
||||
|
||||
private Q_SLOTS:
|
||||
void indexesMoved();
|
||||
void onUpdateViewTimer();
|
||||
void onAxisChanged(int num);
|
||||
void onCheckReverse(const bool on);
|
||||
|
||||
@@ -400,6 +400,28 @@ void TaskTransformedParameters::addReferenceSelectionGate(bool edge, bool face,
|
||||
Gui::Selection().addSelectionGate(new CombineSelectionFilterGates(gateRefPtr, gateDepPtr));
|
||||
}
|
||||
|
||||
void TaskTransformedParameters::indexesMoved()
|
||||
{
|
||||
QAbstractItemModel* model = qobject_cast<QAbstractItemModel*>(sender());
|
||||
if (!model)
|
||||
return;
|
||||
|
||||
PartDesign::Transformed* pcTransformed = getObject();
|
||||
std::vector<App::DocumentObject*> originals = pcTransformed->Originals.getValues();
|
||||
|
||||
QByteArray name;
|
||||
int rows = model->rowCount();
|
||||
for (int i = 0; i < rows; i++) {
|
||||
QModelIndex index = model->index(i, 0);
|
||||
name = index.data(Qt::UserRole).toByteArray().constData();
|
||||
originals[i] = pcTransformed->getDocument()->getObject(name.constData());
|
||||
}
|
||||
|
||||
setupTransaction();
|
||||
pcTransformed->Originals.setValues(originals);
|
||||
recomputeFeature();
|
||||
}
|
||||
|
||||
//**************************************************************************
|
||||
//**************************************************************************
|
||||
// TaskDialog
|
||||
|
||||
@@ -168,6 +168,7 @@ protected Q_SLOTS:
|
||||
void onButtonAddFeature(const bool checked);
|
||||
void onButtonRemoveFeature(const bool checked);
|
||||
virtual void onFeatureDeleted(void)=0;
|
||||
void indexesMoved();
|
||||
|
||||
protected:
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user