Version: 8.3.0
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
BasicGUI_PointDlg.h
Go to the documentation of this file.
1
// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, 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 : BasicGUI_PointDlg.h
25
// Author : Lucien PIGNOLONI, Open CASCADE S.A.S.
26
27
#ifndef BASICGUI_POINTDLG_H
28
#define BASICGUI_POINTDLG_H
29
30
#include "
GEOMBase_Skeleton.h
"
31
#include "
GEOM_GenericObjPtr.h
"
32
#include <QMap>
33
34
class
DlgRef_2Sel1Spin2Check
;
35
class
DlgRef_3Spin
;
36
class
DlgRef_2Sel
;
37
class
DlgRef_1Sel3Spin
;
38
class
DlgRef_1Sel2Spin
;
39
40
class
QLineEdit;
41
class
QGroupBox
;
42
class
QButtonGroup;
43
class
QMenu;
44
class
QAction;
45
46
class
gp_Pnt;
47
48
//=================================================================================
49
// class : BasicGUI_PointDlg
50
// purpose :
51
//=================================================================================
52
class
BasicGUI_PointDlg
:
public
GEOMBase_Skeleton
53
{
54
Q_OBJECT
55
56
public
:
57
BasicGUI_PointDlg
(
GeometryGUI
*,
QWidget
* = 0,
bool
=
false
, Qt::WindowFlags = 0 );
58
59
~BasicGUI_PointDlg
();
60
61
bool
acceptMouseEvent
()
const
{
return
(
getConstructorId
() == 0 ); }
62
void
OnPointSelected
(
const
gp_Pnt& );
// called by BasicGUI::OnMousePress()
63
64
protected
:
65
// redefined from GEOMBase_Helper
66
virtual
GEOM::GEOM_IOperations_ptr
createOperation
();
67
virtual
bool
isValid
( QString& );
68
virtual
bool
execute
(
ObjectList
& );
69
virtual
void
addSubshapesToStudy
();
70
virtual
QList<GEOM::GeomObjPtr>
getSourceObjects
();
71
72
private
:
73
void
Init
();
74
void
enterEvent
( QEvent* );
75
double
getParameter
()
const
;
76
double
getUParameter
()
const
;
77
double
getVParameter
()
const
;
78
void
updateParamCoord
(
bool
theIsUpdate);
79
80
private
:
81
GEOM::GeomObjPtr
myEdge
;
82
GEOM::GeomObjPtr
myFace
;
83
GEOM::GeomObjPtr
myRefPoint
;
84
GEOM::GeomObjPtr
myLine1
;
85
GEOM::GeomObjPtr
myLine2
;
86
87
bool
myBusy
;
88
89
DlgRef_3Spin
*
GroupXYZ
;
90
DlgRef_1Sel3Spin
*
GroupRefPoint
;
91
DlgRef_2Sel1Spin2Check
*
GroupOnCurve
;
92
DlgRef_2Sel
*
GroupLineIntersection
;
93
DlgRef_1Sel2Spin
*
GroupOnSurface
;
94
95
QGroupBox
*
myCoordGrp
;
96
QLineEdit*
myX
;
97
QLineEdit*
myY
;
98
QLineEdit*
myZ
;
99
100
QGroupBox
*
myParamGroup
;
101
QButtonGroup*
myParamCoord
;
102
103
QMap<QAction*, int>
myActions
;
104
105
TopAbs_ShapeEnum
myNeedType
;
106
107
private
slots:
108
void
ClickOnOk
();
109
bool
ClickOnApply
();
110
void
ActivateThisDialog
();
111
void
DeactivateActiveDialog
();
112
void
SelectionIntoArgument
();
113
void
SetEditCurrentArgument
();
114
void
ConstructorsClicked
(
int
);
115
void
ValueChangedInSpinBox
(
double
);
116
void
SetDoubleSpinBoxStep
(
double
);
117
void
ClickParamCoord
(
int
);
118
void
CheckBoxClicked
();
119
void
updateSize
();
120
};
121
122
#endif // BASICGUI_POINTDLG_H
src
BasicGUI
BasicGUI_PointDlg.h
Copyright © 2007-2017 CEA/DEN, EDF R&D, OPEN CASCADE
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS