OGS
MeshElementRemovalDialog.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2// SPDX-License-Identifier: BSD-3-Clause
3
4#pragma once
5
6#include "ui_MeshElementRemoval.h"
7
8#include <QDialog>
9#include <array>
10
12
13
15{
16class Project;
17}
18
19namespace MeshLib {
20class Mesh;
21}
22
26class MeshElementRemovalDialog : public QDialog, private Ui_MeshElementRemoval
27{
28 Q_OBJECT
29
30public:
32 QDialog* parent = nullptr);
34
35private slots:
36 void on_boundingBoxCheckBox_toggled(bool is_checked);
37 void on_invertBoundingBoxCheckBox_toggled(bool const is_checked);
38 void on_elementTypeCheckBox_toggled(bool is_checked);
39 void on_scalarArrayCheckBox_toggled(bool is_checked);
40 void on_insideButton_toggled(bool is_checked);
43 void on_xMinEdit_textChanged() { aabb_edits[0] = true; }
44 void on_xMaxEdit_textChanged() { aabb_edits[1] = true; }
45 void on_yMinEdit_textChanged() { aabb_edits[2] = true; }
46 void on_yMaxEdit_textChanged() { aabb_edits[3] = true; }
47 void on_zMinEdit_textChanged() { aabb_edits[4] = true; }
48 void on_zMaxEdit_textChanged() { aabb_edits[5] = true; }
49 void accept() override;
50 void reject() override;
51
52private:
53 std::size_t addScalarArrays(MeshLib::Mesh const& mesh) const;
54 void enableScalarArrayWidgets(bool enable) const;
55
56 template <typename T>
58
59 void toggleScalarEdits(bool outside) const;
60
63 std::array<bool, 6> aabb_edits;
64
65signals:
67};
~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_invertBoundingBoxCheckBox_toggled(bool const is_checked)
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
void on_boundingBoxCheckBox_toggled(bool is_checked)