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>
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;
57 //*****************************************************************************
60 //*****************************************************************************
62 class MULTIPR_GUI: public SalomeApp_Module
69 void initialize(CAM_Application*);
70 QString engineIOR() const;
71 void windows(QMap<int, int>&) const;
73 MULTIPR_ORB::MULTIPR_Obj_ptr getMULTIPRObj();
74 SalomeApp_Application* getAppli() const;
75 void selected(QStringList&, const bool);
77 static MULTIPR_ORB::MULTIPR_Gen_ptr InitMULTIPRGen(SalomeApp_Application*);
79 const QStringList& getSelectedParts() const { return mSelectedParts; }
82 bool deactivateModule(SUIT_Study*);
83 bool activateModule(SUIT_Study*);
86 void OnImportFromMEDFile();
93 void retrieveSelectedParts();
94 bool isPartExist(const char* partName);
97 virtual CAM_DataModel* createDataModel();
103 ACTION_IMPORT_MED = 190,
111 QString mMEDFileName;
112 QStringList mSelectedParts;
113 MULTIPR_ORB::MULTIPR_Obj_ptr mMULTIPRObj;
115 }; // class MULTIPR_GUI
118 //*****************************************************************************
119 // Class MULTIPR_GUI_DataObject
120 //*****************************************************************************
122 class MULTIPR_GUI_DataObject : public LightApp_DataObject
125 MULTIPR_GUI_DataObject(SUIT_DataObject* parent, const char* name);
126 virtual ~MULTIPR_GUI_DataObject();
128 virtual QString entry() const;
129 virtual QString name() const;
130 virtual QPixmap icon() const;
131 virtual QString toolTip() const;
138 //*****************************************************************************
139 // Class MULTIPR_GUI_DataObject_Module
140 //*****************************************************************************
142 class MULTIPR_GUI_DataObject_Module : public MULTIPR_GUI_DataObject, public LightApp_ModuleObject
145 MULTIPR_GUI_DataObject_Module(CAM_DataModel* dm, SUIT_DataObject* parent, const char* name);
146 virtual ~MULTIPR_GUI_DataObject_Module();
148 virtual QString entry() const;
149 virtual QString name() const;
150 virtual QPixmap icon() const;
151 virtual QString toolTip() const;
157 //*****************************************************************************
158 // Class MULTIPR_GUI_DataObject_Mesh
159 //*****************************************************************************
161 class MULTIPR_GUI_DataObject_Mesh : public MULTIPR_GUI_DataObject
164 MULTIPR_GUI_DataObject_Mesh(SUIT_DataObject* parent, const char* name);
165 virtual ~MULTIPR_GUI_DataObject_Mesh();
167 virtual QString entry() const;
168 virtual QPixmap icon() const;
169 virtual QString toolTip() const;
175 //*****************************************************************************
176 // Class MULTIPR_GUI_DataObject_Part
177 //*****************************************************************************
179 class MULTIPR_GUI_DataObject_Part : public MULTIPR_GUI_DataObject
182 MULTIPR_GUI_DataObject_Part(SUIT_DataObject* parent, const char* name, const char* info);
183 virtual ~MULTIPR_GUI_DataObject_Part();
185 virtual QString entry() const;
186 virtual QPixmap icon() const;
187 virtual QString toolTip() const;
193 QString mMEDFileName;
198 //*****************************************************************************
199 // Class MULTIPR_GUI_DataObject_Resolution
200 //*****************************************************************************
202 class MULTIPR_GUI_DataObject_Resolution : public MULTIPR_GUI_DataObject_Part
205 MULTIPR_GUI_DataObject_Resolution(SUIT_DataObject* parent, const char* name, const char* info);
206 virtual ~MULTIPR_GUI_DataObject_Resolution();
208 virtual QString entry() const;
209 virtual QPixmap icon() const;
210 virtual QString toolTip() const;
216 //*****************************************************************************
217 // Class MULTIPR_GUI_DataModel
218 //*****************************************************************************
220 class MULTIPR_GUI_DataModel : public LightApp_DataModel
223 MULTIPR_GUI_DataModel(CAM_Module*);
224 virtual ~MULTIPR_GUI_DataModel();
227 virtual void build();
230 MULTIPR_GUI* mMULTIPR_GUI;
234 #endif // __MULTIPR_GUI__