1 // Project MULTIPR, IOLS WP1.2.1 - EDF/CS
2 // Partitioning/decimation module for the SALOME v3.2 platform
7 * \brief MULTIPR GUI (QT)
9 * \author Olivier LE ROUX - CS, Virtual Reality Dpt
14 #ifndef __MULTIPR_GUI__
15 #define __MULTIPR_GUI__
18 //*****************************************************************************
20 //*****************************************************************************
22 #include <SalomeApp_Module.h>
23 #include <LightApp_DataObject.h>
24 #include <LightApp_DataModel.h>
26 #include <SALOMEconfig.h>
27 #include CORBA_CLIENT_HEADER(MULTIPR)
29 #include "MULTIPR_ProgressCallback.hxx"
32 //*****************************************************************************
34 //*****************************************************************************
36 class SalomeApp_Application;
51 //*****************************************************************************
54 //*****************************************************************************
56 class MULTIPR_GUI: public SalomeApp_Module
64 virtual ~MULTIPR_GUI();
66 void initialize(CAM_Application*);
68 QString engineIOR() const;
70 void windows(QMap<int, int>&) const;
72 MULTIPR_ORB::MULTIPR_Obj_ptr getMULTIPRObj();
74 SalomeApp_Application* getAppli() const;
76 void selected(QStringList&, const bool);
78 const QStringList& getSelectedParts() const { return mSelectedParts; }
82 bool deactivateModule(SUIT_Study*);
83 bool activateModule(SUIT_Study*);
87 void OnImportFromMEDFile();
96 virtual CAM_DataModel* createDataModel();
98 void retrieveSelectedParts();
99 bool isPartExist(const char* partName);
100 bool removeLowerResolution();
106 ACTION_IMPORT_MED = 190,
115 QString mMEDFileName;
116 QStringList mSelectedParts;
117 MULTIPR_ORB::MULTIPR_Obj_ptr mMULTIPRObj;
119 }; // class MULTIPR_GUI
122 //*****************************************************************************
123 // Class MULTIPR_GUI_DataObject
124 // To use Object Browser
125 //*****************************************************************************
127 class MULTIPR_GUI_DataObject : public LightApp_DataObject
131 MULTIPR_GUI_DataObject(SUIT_DataObject* parent, const char* name);
132 virtual ~MULTIPR_GUI_DataObject();
134 virtual QString entry() const;
135 virtual QString name() const;
136 virtual QPixmap icon() const;
137 virtual QString toolTip() const;
145 //*****************************************************************************
146 // Class MULTIPR_GUI_DataObject_Module
147 //*****************************************************************************
149 class MULTIPR_GUI_DataObject_Module : public MULTIPR_GUI_DataObject, public LightApp_ModuleObject
153 MULTIPR_GUI_DataObject_Module(CAM_DataModel* dm, SUIT_DataObject* parent, const char* name);
154 virtual ~MULTIPR_GUI_DataObject_Module();
156 virtual QString entry() const;
157 virtual QString name() const;
158 virtual QPixmap icon() const;
159 virtual QString toolTip() const;
163 //*****************************************************************************
164 // Class MULTIPR_GUI_DataObject_Mesh
165 //*****************************************************************************
167 class MULTIPR_GUI_DataObject_Mesh : public MULTIPR_GUI_DataObject
171 MULTIPR_GUI_DataObject_Mesh(SUIT_DataObject* parent, const char* name);
172 virtual ~MULTIPR_GUI_DataObject_Mesh();
174 virtual QString entry() const;
175 virtual QPixmap icon() const;
176 virtual QString toolTip() const;
180 //*****************************************************************************
181 // Class MULTIPR_GUI_DataObject_Part
182 //*****************************************************************************
184 class MULTIPR_GUI_DataObject_Part : public MULTIPR_GUI_DataObject
188 MULTIPR_GUI_DataObject_Part(SUIT_DataObject* parent, const char* name, const char* info);
189 virtual ~MULTIPR_GUI_DataObject_Part();
191 virtual QString entry() const;
192 virtual QPixmap icon() const;
193 virtual QString toolTip() const;
200 QString mMEDFileName;
205 //*****************************************************************************
206 // Class MULTIPR_GUI_DataObject_Resolution
207 //*****************************************************************************
209 class MULTIPR_GUI_DataObject_Resolution : public MULTIPR_GUI_DataObject_Part
213 MULTIPR_GUI_DataObject_Resolution(SUIT_DataObject* parent, const char* name, const char* info);
214 virtual ~MULTIPR_GUI_DataObject_Resolution();
216 virtual QString entry() const;
217 virtual QPixmap icon() const;
218 virtual QString toolTip() const;
222 //*****************************************************************************
223 // Class MULTIPR_GUI_DataModel
224 //*****************************************************************************
226 class MULTIPR_GUI_DataModel : public LightApp_DataModel
230 MULTIPR_GUI_DataModel(CAM_Module*);
231 virtual ~MULTIPR_GUI_DataModel();
235 virtual void build();
239 MULTIPR_GUI* mMULTIPR_GUI;
243 #endif // __MULTIPR_GUI__