Salome HOME
NPAL17269: Performance pb. when creating a group with GUI.
[modules/geom.git] / src / BooleanGUI / BooleanGUI.h
index 6fb9cde55ec0686eb48471d470d2d342eedfc943..32d8f57e01c9661565e4f464cba88c88b2e50839 100644 (file)
 //  License along with this library; if not, write to the Free Software 
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
 // 
-//  See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org 
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //
 //
 //  File   : BooleanGUI.h
 //  Author : Damien COQUERET
 //  Module : GEOM
-//  $Header: 
 
 #ifndef BOOLEANGUI_H
 #define BOOLEANGUI_H
 
-#include "GEOMBase.h"
+#include "GEOMGUI.h"
+
+#ifdef WNT
+ #if defined BOOLEANGUI_EXPORTS
+  #if defined WIN32
+   #define GEOM_BOOLEANGUI_EXPORT __declspec( dllexport )
+  #else
+   #define GEOM_BOOLEANGUI_EXPORT
+  #endif
+ #else
+  #if defined WIN32
+   #define GEOM_BOOLEANGUI_EXPORT __declspec( dllimport )
+  #else
+   #define GEOM_BOOLEANGUI_EXPORT
+  #endif
+ #endif
+#else
+ #define GEOM_BOOLEANGUI_EXPORT
+#endif
 
 //=================================================================================
 // class    : BooleanGUI
 // purpose  :
 //=================================================================================
-class BooleanGUI : public QObject
+class GEOM_BOOLEANGUI_EXPORT BooleanGUI : public GEOMGUI
 {
-  Q_OBJECT /* for QT compatibility */
+public:
+  enum BooleanOperation { COMMON = 1, CUT = 2, FUSE = 3, SECTION = 4 };
 
-public :
-  BooleanGUI();
+  BooleanGUI( GeometryGUI* parent );
   ~BooleanGUI();
 
-  static bool OnGUIEvent(int theCommandID, QAD_Desktop* parent);
-
-  void MakeBooleanAndDisplay(GEOM::GEOM_Shape_ptr Shape1,
-                            GEOM::GEOM_Shape_ptr Shape2,
-                            const short operation);
-
-  GEOMBase* myGeomBase;
-  GEOMContext* myGeomGUI;
-  GEOM::GEOM_Gen_var myGeom;   /* Current Geom Component */
-
+  bool OnGUIEvent(int theCommandID, SUIT_Desktop* parent);
 };
 
 #endif