Version: 9.16.0
GroupGUI_BooleanDlg.h
Go to the documentation of this file.
1// Copyright (C) 2007-2026 CEA, EDF, OPEN CASCADE
2//
3// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5//
6// This library is free software; you can redistribute it and/or
7// modify it under the terms of the GNU Lesser General Public
8// License as published by the Free Software Foundation; either
9// version 2.1 of the License, or (at your option) any later version.
10//
11// This library is distributed in the hope that it will be useful,
12// but WITHOUT ANY WARRANTY; without even the implied warranty of
13// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14// Lesser General Public License for more details.
15//
16// You should have received a copy of the GNU Lesser General Public
17// License along with this library; if not, write to the Free Software
18// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19//
20// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21//
22
23// GEOM GEOMGUI : GUI for Geometry component
24// File : GroupGUI_BooleanDlg.h
25// Author : Lucien PIGNOLONI, Open CASCADE S.A.S.
26
27#ifndef GROUPGUI_BOOLEANDLG_H
28#define GROUPGUI_BOOLEANDLG_H
29
30#include "GEOMBase_Skeleton.h"
31#include "GEOM_GenericObjPtr.h"
32
33class DlgRef_2Sel;
34
35//=================================================================================
36// class : GroupGUI_BooleanDlg
37// purpose :
38//=================================================================================
40{
41 Q_OBJECT
42
43public:
44 enum Operation { UNION = 1, INTERSECT = 2, CUT = 3 };
45
46 GroupGUI_BooleanDlg (const int, GeometryGUI*, QWidget* = 0,
47 bool = false, Qt::WindowFlags = 0);
49
50protected:
51 // redefined from GEOMBase_Helper
52 virtual GEOM::GEOM_IOperations_ptr createOperation();
53 virtual bool isValid (QString&);
54 virtual bool execute (ObjectList&);
55 virtual GEOM::GEOM_Object_ptr getFather (GEOM::GEOM_Object_ptr);
56 virtual QList<GEOM::GeomObjPtr> getSourceObjects();
57
58private:
59 void Init();
60 void enterEvent (QEvent*);
61
62private slots:
63 void ClickOnOk();
64 bool ClickOnApply();
67 void ActivateThisDialog();
68
69private:
71
74
76};
77
78#endif // GROUPGUI_BOOLEANDLG_H
std::list< GEOM::GEOM_Object_ptr > ObjectList
Definition: GEOMBase_Helper.h:46
Definition: DlgRef.h:607
Definition: GEOMBase_Skeleton.h:53
Definition: GeometryGUI.h:74
Definition: GroupGUI_BooleanDlg.h:40
void ClickOnOk()
Definition: GroupGUI_BooleanDlg.cxx:165
GEOM::ListOfGO myListTools
Definition: GroupGUI_BooleanDlg.h:73
void ActivateThisDialog()
Definition: GroupGUI_BooleanDlg.cxx:244
void SelectionIntoArgument()
Definition: GroupGUI_BooleanDlg.cxx:191
Operation
Definition: GroupGUI_BooleanDlg.h:44
@ CUT
Definition: GroupGUI_BooleanDlg.h:44
@ UNION
Definition: GroupGUI_BooleanDlg.h:44
@ INTERSECT
Definition: GroupGUI_BooleanDlg.h:44
virtual QList< GEOM::GeomObjPtr > getSourceObjects()
Definition: GroupGUI_BooleanDlg.cxx:327
void Init()
Definition: GroupGUI_BooleanDlg.cxx:126
bool ClickOnApply()
Definition: GroupGUI_BooleanDlg.cxx:176
void SetEditCurrentArgument()
Definition: GroupGUI_BooleanDlg.cxx:216
void enterEvent(QEvent *)
Definition: GroupGUI_BooleanDlg.cxx:256
GEOM::ListOfGO myListShapes
Definition: GroupGUI_BooleanDlg.h:72
DlgRef_2Sel * myGroup
Definition: GroupGUI_BooleanDlg.h:75
virtual bool isValid(QString &)
Definition: GroupGUI_BooleanDlg.cxx:275
virtual bool execute(ObjectList &)
Definition: GroupGUI_BooleanDlg.cxx:284
GroupGUI_BooleanDlg(const int, GeometryGUI *, QWidget *=0, bool=false, Qt::WindowFlags=0)
Definition: GroupGUI_BooleanDlg.cxx:47
virtual GEOM::GEOM_Object_ptr getFather(GEOM::GEOM_Object_ptr)
Definition: GroupGUI_BooleanDlg.cxx:313
virtual GEOM::GEOM_IOperations_ptr createOperation()
Definition: GroupGUI_BooleanDlg.cxx:266
int myOperation
Definition: GroupGUI_BooleanDlg.h:70
~GroupGUI_BooleanDlg()
Definition: GroupGUI_BooleanDlg.cxx:118
sequence< GEOM_Object > ListOfGO
Definition: GEOM_Gen.idl:290