OGS
MeshElementRemovalDialog.h
Go to the documentation of this file.
1 
15 #pragma once
16 
17 #include "ui_MeshElementRemoval.h"
18 
19 #include <QDialog>
20 #include <array>
21 
22 #include "MeshLib/PropertyVector.h"
23 
24 
25 namespace DataHolderLib
26 {
27 class Project;
28 }
29 
30 namespace MeshLib {
31 class Mesh;
32 }
33 
37 class MeshElementRemovalDialog : public QDialog, private Ui_MeshElementRemoval
38 {
39  Q_OBJECT
40 
41 public:
42  explicit MeshElementRemovalDialog(DataHolderLib::Project const& project,
43  QDialog* parent = nullptr);
45 
46 private slots:
47  void on_boundingBoxCheckBox_toggled(bool is_checked);
48  void on_elementTypeCheckBox_toggled(bool is_checked);
49  void on_scalarArrayCheckBox_toggled(bool is_checked);
50  void on_insideButton_toggled(bool is_checked);
53  void on_xMinEdit_textChanged() { aabb_edits[0] = true; }
54  void on_xMaxEdit_textChanged() { aabb_edits[1] = true; }
55  void on_yMinEdit_textChanged() { aabb_edits[2] = true; }
56  void on_yMaxEdit_textChanged() { aabb_edits[3] = true; }
57  void on_zMinEdit_textChanged() { aabb_edits[4] = true; }
58  void on_zMaxEdit_textChanged() { aabb_edits[5] = true; }
59  void accept() override;
60  void reject() override;
61 
62 private:
63  std::size_t addScalarArrays(MeshLib::Mesh const& mesh) const;
64  void enableScalarArrayWidgets(bool enable) const;
65 
66  template <typename T>
68 
69  void toggleScalarEdits(bool outside) const;
70 
73  std::array<bool, 6> aabb_edits;
74 
75 signals:
76  void meshAdded(MeshLib::Mesh* mesh);
77 };
A dialog window for settung up a database connection.
~MeshElementRemovalDialog() override
void setRangeValues(MeshLib::PropertyVector< T > const &vec)
void on_elementTypeCheckBox_toggled(bool is_checked)
MeshElementRemovalDialog(DataHolderLib::Project const &project, QDialog *parent=nullptr)
Constructor.
void toggleScalarEdits(bool outside) const
DataHolderLib::Project const & _project
void on_insideButton_toggled(bool is_checked)
void on_meshNameComboBox_currentIndexChanged(int idx)
void meshAdded(MeshLib::Mesh *mesh)
void on_scalarArrayCheckBox_toggled(bool is_checked)
void on_scalarArrayComboBox_currentIndexChanged(int idx)
std::size_t addScalarArrays(MeshLib::Mesh const &mesh) const
void enableScalarArrayWidgets(bool enable) const
std::array< bool, 6 > aabb_edits
void on_boundingBoxCheckBox_toggled(bool is_checked)