OGS
MeshValueEditDialog.cpp
Go to the documentation of this file.
1
15#include "MeshValueEditDialog.h"
16
17#include "Base/OGSError.h"
19
21 : QDialog(parent), _mesh(mesh)
22{
23 setupUi(this);
24 this->edit_old_value->setEnabled(false);
25 this->edit_new_value->setEnabled(false);
26 this->replaceCheckBox->setEnabled(false);
27}
28
30
32{
33 if (this->condenseButton->isChecked())
34 {
36 }
37 else
38 {
39 if (this->edit_old_value->text().isEmpty())
40 {
41 OGSError::box("Please input which material you want to replace.");
42 return;
43 }
44 unsigned old_value =
45 static_cast<unsigned>(this->edit_old_value->text().toInt());
46 if (this->edit_new_value->text().isEmpty())
47 {
48 OGSError::box("Please input the new material to replace group " +
49 this->edit_old_value->text() + ".");
50 return;
51 }
52 unsigned new_value =
53 static_cast<unsigned>(this->edit_new_value->text().toInt());
54 bool do_not_replace = this->replaceCheckBox->isChecked();
56 *_mesh, old_value, new_value, !do_not_replace);
57 if (!result && do_not_replace)
58 {
59 OGSError::box("The new material group already exists.");
60 return;
61 }
62 }
63
65 this->done(QDialog::Accepted);
66}
67
69{
70 this->done(QDialog::Rejected);
71}
72
74{
75 this->edit_old_value->setEnabled(isSelected);
76 this->edit_new_value->setEnabled(isSelected);
77 this->replaceCheckBox->setEnabled(isSelected);
78}
Definition of the ElementValueModification class.
Definition of the MeshValueEditDialog class.
Definition of the OGSError class.
static bool replace(MeshLib::Mesh &mesh, int const old_value, int const new_value, bool replace_if_exists=false)
static std::size_t condense(MeshLib::Mesh &mesh)
MeshValueEditDialog(MeshLib::Mesh *mesh, QDialog *parent=nullptr)
Constructor for creating a new FEM condition.
~MeshValueEditDialog() override
void on_replaceButton_toggled(bool isSelected)
void accept() override
Instructions if the OK-Button has been pressed.
void reject() override
Instructions if the Cancel-Button has been pressed.
void valueEditFinished(MeshLib::Mesh *)
static void box(const QString &e)
Definition OGSError.cpp:23