[FEM] use std::unique_ptr for all dialog objects
- also fix too long line - also further clang automatic code style changes
This commit is contained in:
@@ -54,16 +54,13 @@ using namespace Gui;
|
||||
|
||||
|
||||
TaskCreateNodeSet::TaskCreateNodeSet(Fem::FemSetNodesObject* pcObject, QWidget* parent)
|
||||
: TaskBox(Gui::BitmapFactory().pixmap("FEM_CreateNodesSet"),
|
||||
tr("Nodes set"),
|
||||
true,
|
||||
parent),
|
||||
pcObject(pcObject),
|
||||
selectionMode(none)
|
||||
: TaskBox(Gui::BitmapFactory().pixmap("FEM_CreateNodesSet"), tr("Nodes set"), true, parent),
|
||||
pcObject(pcObject),
|
||||
selectionMode(none),
|
||||
ui(new Ui_TaskCreateNodeSet)
|
||||
{
|
||||
// we need a separate container widget to add all controls to
|
||||
proxy = new QWidget(this);
|
||||
ui = new Ui_TaskCreateNodeSet();
|
||||
ui->setupUi(proxy);
|
||||
QMetaObject::connectSlotsByName(this);
|
||||
|
||||
@@ -71,11 +68,16 @@ TaskCreateNodeSet::TaskCreateNodeSet(Fem::FemSetNodesObject* pcObject, QWidget*
|
||||
|
||||
QObject::connect(ui->toolButton_Poly, &QToolButton::clicked, this, &TaskCreateNodeSet::Poly);
|
||||
QObject::connect(ui->toolButton_Pick, &QToolButton::clicked, this, &TaskCreateNodeSet::Pick);
|
||||
QObject::connect(ui->comboBox, qOverload<int>(&QComboBox::activated), this, &TaskCreateNodeSet::SwitchMethod);
|
||||
QObject::connect(ui->comboBox,
|
||||
qOverload<int>(&QComboBox::activated),
|
||||
this,
|
||||
&TaskCreateNodeSet::SwitchMethod);
|
||||
|
||||
// check if the Link to the FemMesh is defined
|
||||
assert(pcObject->FemMesh.getValue<Fem::FemMeshObject*>());
|
||||
MeshViewProvider = dynamic_cast<ViewProviderFemMesh*>(Gui::Application::Instance->getViewProvider(pcObject->FemMesh.getValue<Fem::FemMeshObject*>()));
|
||||
MeshViewProvider =
|
||||
dynamic_cast<ViewProviderFemMesh*>(Gui::Application::Instance->getViewProvider(
|
||||
pcObject->FemMesh.getValue<Fem::FemMeshObject*>()));
|
||||
assert(MeshViewProvider);
|
||||
|
||||
tempSet = pcObject->Nodes.getValues();
|
||||
@@ -152,9 +154,13 @@ void TaskCreateNodeSet::DefineNodesCallback(void* ud, SoEventCallback* n)
|
||||
taskBox->DefineNodes(polygon, proj, role == Gui::SelectionRole::Inner ? true : false);
|
||||
}
|
||||
|
||||
void TaskCreateNodeSet::DefineNodes(const Base::Polygon2d& polygon, const Gui::ViewVolumeProjection& proj, bool inner)
|
||||
void TaskCreateNodeSet::DefineNodes(const Base::Polygon2d& polygon,
|
||||
const Gui::ViewVolumeProjection& proj, bool inner)
|
||||
{
|
||||
const SMESHDS_Mesh* data = pcObject->FemMesh.getValue<Fem::FemMeshObject*>()->FemMesh.getValue().getSMesh()->GetMeshDS();
|
||||
const SMESHDS_Mesh* data = pcObject->FemMesh.getValue<Fem::FemMeshObject*>()
|
||||
->FemMesh.getValue()
|
||||
.getSMesh()
|
||||
->GetMeshDS();
|
||||
|
||||
SMDS_NodeIteratorPtr aNodeIter = data->nodesIterator();
|
||||
Base::Vector3f pt2d;
|
||||
@@ -192,16 +198,19 @@ void TaskCreateNodeSet::onSelectionChanged(const Gui::SelectionChanges& msg)
|
||||
|
||||
tempSet.clear();
|
||||
|
||||
|
||||
Base::Console().Message("Picked Element:%i Face:%i\n", elem, face);
|
||||
|
||||
|
||||
if (!ui->checkBox_Add->isChecked()) {
|
||||
std::set<long> tmp = pcObject->FemMesh.getValue<Fem::FemMeshObject*>()->FemMesh.getValue().getSurfaceNodes(elem, face);
|
||||
std::set<long> tmp = pcObject->FemMesh.getValue<Fem::FemMeshObject*>()
|
||||
->FemMesh.getValue()
|
||||
.getSurfaceNodes(elem, face);
|
||||
tempSet.insert(tmp.begin(), tmp.end());
|
||||
}
|
||||
else {
|
||||
tempSet = pcObject->FemMesh.getValue<Fem::FemMeshObject*>()->FemMesh.getValue().getSurfaceNodes(elem, face);
|
||||
tempSet = pcObject->FemMesh.getValue<Fem::FemMeshObject*>()
|
||||
->FemMesh.getValue()
|
||||
.getSurfaceNodes(elem, face);
|
||||
}
|
||||
|
||||
selectionMode = none;
|
||||
@@ -211,10 +220,8 @@ void TaskCreateNodeSet::onSelectionChanged(const Gui::SelectionChanges& msg)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
TaskCreateNodeSet::~TaskCreateNodeSet()
|
||||
{
|
||||
delete ui;
|
||||
Gui::Selection().rmvSelectionGate();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user