1 // Project MULTIPR, IOLS WP1.2.1 - EDF/CS
2 // Partitioning/decimation module for the SALOME v3.2 platform
5 * \file MULTIPR_GUI_Dlg.h
7 * \brief MULTIPR GUI Dialog (QT)
9 * \author Olivier LE ROUX - CS, Virtual Reality Dpt
14 #ifndef __MULTIPR_GUI_DLG__
15 #define __MULTIPR_GUI_DLG__
18 //*****************************************************************************
20 //*****************************************************************************
22 #include <SalomeApp_Module.h>
23 #include <LightApp_DataObject.h>
24 #include <LightApp_DataModel.h>
25 #include <LightApp_RootObject.h>
27 #include <SALOMEconfig.h>
28 #include CORBA_CLIENT_HEADER(MULTIPR)
31 #include <qprogressdialog.h>
35 #include "MULTIPR_ProgressCallback.hxx"
38 //*****************************************************************************
40 //*****************************************************************************
42 class SalomeApp_Application;
60 //*****************************************************************************
61 // Class MULTIPR_GUI_Partition1Dlg
62 // Dialog box used for extracting groups from sequential MED file
63 //*****************************************************************************
65 class MULTIPR_GUI_Partition1Dlg : public QDialog
70 MULTIPR_GUI_Partition1Dlg(MULTIPR_GUI* theModule);
71 ~MULTIPR_GUI_Partition1Dlg();
73 QButtonGroup* buttonGroupProcess;
74 QPushButton* pushButtonCancel;
75 QPushButton* pushButtonOK;
76 QButtonGroup* buttonGroupSelectMesh;
77 QComboBox* comboBoxSelectMesh;
78 QLabel* textLabelSelectMesh;
90 //*****************************************************************************
91 // Class MULTIPR_GUI_Partition2Dlg
92 // Dialog box used for splitting a group (use MEDSPLITTER)
93 //*****************************************************************************
95 class MULTIPR_GUI_Partition2Dlg : public QDialog
100 MULTIPR_GUI_Partition2Dlg(MULTIPR_GUI* theModule);
101 ~MULTIPR_GUI_Partition2Dlg();
103 QButtonGroup* buttonGroupSplitParameters;
104 QLabel* textLabelSelectNbParts;
105 QLabel* textLabelSelectSplitter;
106 QComboBox* comboBoxSelectSplitter;
107 QSpinBox* spinBoxNbParts;
108 QButtonGroup* buttonGroupProcess;
109 QPushButton* pushButtonOK;
110 QPushButton* pushButtonCancel;
117 MULTIPR_GUI* mModule;
121 //*****************************************************************************
122 // Class MULTIPR_GUI_DecimateDlg
123 // Dialog box used for decimating mesh (compute 2 lower resolution: medium and low)
124 //*****************************************************************************
126 class MULTIPR_GUI_DecimateDlg : public QDialog
131 MULTIPR_GUI_DecimateDlg(MULTIPR_GUI* theModule);
132 ~MULTIPR_GUI_DecimateDlg();
134 QButtonGroup* buttonGroupSelectField;
135 QLabel* textLabelSelectFieldName;
136 QLabel* textLabelSelectFieldIteration;
137 QComboBox* comboBoxSelectFieldIteration;
138 QComboBox* comboBoxSelectFieldName;
139 QButtonGroup* buttonGroupSelectFilter;
140 QLabel* textLabelSelectFilter;
141 QComboBox* comboBoxSelectFilter;
142 QButtonGroup* buttonGroupParameters;
143 QLabel* textLabelTMed;
144 QLabel* textLabelTLow;
145 QLabel* textLabelRadius;
146 QLabel* textLabelBoxing;
147 QLineEdit* lineEditTMed;
148 QLineEdit* lineEditTLow;
149 QLineEdit* lineEditRadius;
150 QSpinBox* spinBoxBoxing;
151 QButtonGroup* buttonGroupProcess;
152 QPushButton* pushButtonCancel;
153 QPushButton* pushButtonOK;
154 QPushButton* pushButtonThresholdAuto;
155 QPushButton* pushButtonRadiusAuto;
163 void OnThresholdAuto();
166 MULTIPR_GUI* mModule;
171 //*****************************************************************************
172 // Class MULTIPR_GUI_ProgressCallbackDlg
173 //*****************************************************************************
175 class MULTIPR_GUI_ProgressCallbackDlg :
176 public QProgressDialog,
177 public MULTIPR_ProgressCallback
184 MULTIPR_GUI_ProgressCallbackDlg(QWidget* parent);
186 ~MULTIPR_GUI_ProgressCallbackDlg();
188 virtual void start(const char* pTaskTitle, int pNumStep);
194 virtual void progress(float pPercent);
198 #endif // __MULTIPR_GUI_DLG__