Version: 8.3.0
Main Page
Namespaces
Classes
Files
File List
File Members
SALOME Geometry Developer
Namespaces
Classes
Files
File List
idl
src
AdvancedEngine
AdvancedGUI
ARCHIMEDE
BasicGUI
BlockFix
BlocksGUI
BooleanGUI
BREPPlugin
BuildGUI
CurveCreator
DependencyTree
DisplayGUI
DlgRef
EntityGUI
GenerationGUI
GEOM
GEOM_I
GEOM_I_Superv
GEOM_SWIG_WITHIHM
GEOMAlgo
GEOMBase
GEOMClient
GEOMFiltersSelection
GEOMGUI
GEOMImpl
GEOMToolsGUI
GEOMUtils
GroupGUI
IGESPlugin
Material
MeasureGUI
MeasureGUI.cxx
MeasureGUI.h
MeasureGUI_AngleDlg.cxx
MeasureGUI_AngleDlg.h
MeasureGUI_AnnotationDlg.cxx
MeasureGUI_AnnotationDlg.h
MeasureGUI_AnnotationInteractor.cxx
MeasureGUI_AnnotationInteractor.h
MeasureGUI_BndBoxDlg.cxx
MeasureGUI_BndBoxDlg.h
MeasureGUI_CenterMassDlg.cxx
MeasureGUI_CenterMassDlg.h
MeasureGUI_CheckCompoundOfBlocksDlg.cxx
MeasureGUI_CheckCompoundOfBlocksDlg.h
MeasureGUI_CheckSelfIntersectionsDlg.cxx
MeasureGUI_CheckSelfIntersectionsDlg.h
MeasureGUI_CheckShapeDlg.cxx
MeasureGUI_CheckShapeDlg.h
MeasureGUI_CreateDimensionDlg.cxx
MeasureGUI_CreateDimensionDlg.h
MeasureGUI_definitions.h
MeasureGUI_DimensionCreateTool.cxx
MeasureGUI_DimensionCreateTool.h
MeasureGUI_DimensionFilter.cxx
MeasureGUI_DimensionFilter.h
MeasureGUI_DimensionInteractor.cxx
MeasureGUI_DimensionInteractor.h
MeasureGUI_DistanceDlg.cxx
MeasureGUI_DistanceDlg.h
MeasureGUI_FastCheckIntersectionsDlg.cxx
MeasureGUI_FastCheckIntersectionsDlg.h
MeasureGUI_GetNonBlocksDlg.cxx
MeasureGUI_GetNonBlocksDlg.h
MeasureGUI_InertiaDlg.cxx
MeasureGUI_InertiaDlg.h
MeasureGUI_ManageDimensionsDlg.cxx
MeasureGUI_ManageDimensionsDlg.h
MeasureGUI_MaxToleranceDlg.cxx
MeasureGUI_MaxToleranceDlg.h
MeasureGUI_NormaleDlg.cxx
MeasureGUI_NormaleDlg.h
MeasureGUI_PointDlg.cxx
MeasureGUI_PointDlg.h
MeasureGUI_PropertiesDlg.cxx
MeasureGUI_PropertiesDlg.h
MeasureGUI_ShapeStatisticsDlg.cxx
MeasureGUI_ShapeStatisticsDlg.h
MeasureGUI_Skeleton.cxx
MeasureGUI_Skeleton.h
MeasureGUI_WhatisDlg.cxx
MeasureGUI_WhatisDlg.h
MeasureGUI_Widgets.cxx
MeasureGUI_Widgets.h
OBJECT
OCC2VTK
OperationGUI
PrimitiveGUI
RepairGUI
ShapeRecognition
ShHealOper
SKETCHER
STEPPlugin
STLPlugin
TransformationGUI
VTKPlugin
XAO
XAOPlugin
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
MeasureGUI_AnnotationDlg.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 : MeasureGUI_AnnotationDlg.h
25
26
#ifndef MeasureGUI_AnnotationDlg_H
27
#define MeasureGUI_AnnotationDlg_H
28
29
#include <
GEOMBase_Skeleton.h
>
30
31
#include <
GEOM_Annotation.hxx
>
32
#include <
GEOM_Constants.h
>
33
#include <
GEOMGUI_AnnotationAttrs.h
>
34
35
#include <TopAbs_ShapeEnum.hxx>
36
//#include <TColStd_DataMapOfIntegerInteger.hxx>
37
//#include <TColStd_IndexedMapOfInteger.hxx>
38
//#include <TopTools_IndexedMapOfShape.hxx>
39
40
//#include <QMap>
41
//#include <QSet>
42
//#include <QVector>
43
//#include <QTableWidget>
44
45
class
QGroupBox
;
46
class
QLineEdit;
47
class
QPushButton;
48
class
QComboBox;
49
class
QCheckBox;
50
class
SalomeApp_IntSpinBox;
51
class
MeasureGUI_AnnotationInteractor
;
52
53
//=================================================================================
54
// class : MeasureGUI_AnnotationDlg
55
// purpose :
56
//=================================================================================
57
class
MeasureGUI_AnnotationDlg
:
public
GEOMBase_Skeleton
58
{
59
Q_OBJECT
60
61
public
:
62
MeasureGUI_AnnotationDlg
(
GeometryGUI
* theGeometryGUI,
63
const
bool
theIsCreate,
64
QWidget
* parent=0,
65
bool
modal=
false
, Qt::WindowFlags fl=0 );
66
~MeasureGUI_AnnotationDlg
();
67
68
protected
:
69
// redefined from GEOMBase_Helper
70
virtual
GEOM::GEOM_IOperations_ptr
createOperation
();
71
virtual
bool
isValid
( QString& );
72
virtual
bool
execute
();
73
74
SALOME_Prs*
buildPrs
();
75
void
updateSubShapeEnableState
();
76
void
redisplayPreview
();
77
78
void
closeEvent
( QCloseEvent* theEv );
79
80
private
slots:
81
void
ClickOnOk
();
82
bool
ClickOnApply
();
83
void
SelectionIntoArgument
();
84
void
SetEditCurrentArgument
();
85
86
void
onTextChange
();
87
void
onTypeChange
();
88
void
onSubShapeTypeChange
();
89
90
void
onDragged
( Handle_GEOM_Annotation theAnnotation );
91
92
private
:
93
void
Init
();
94
95
void
activateSelectionArgument
( QPushButton* theSelectionButton );
96
void
activateSelection
();
97
TopAbs_ShapeEnum
getShapeType
()
const
;
98
99
bool
getPickedPoint
( gp_Pnt& thePnt,
const
TopoDS_Shape& theShape );
100
gp_Pnt
getAttachPoint
(
const
TopoDS_Shape& theShape,
bool
& theIsOk );
101
gp_Pnt
getDefaultPosition
(
const
gp_Pnt& theAttach );
102
103
private
:
104
TopAbs_ShapeEnum
mySelectionMode
;
105
QString
myEditAnnotationEntry
;
106
int
myEditAnnotationIndex
;
107
GEOMGUI_AnnotationAttrs::Properties
myAnnotationProperties
;
108
bool
myIsPositionDefined
;
110
bool
myIsCreation
;
111
GEOM::GeomObjPtr
myShape
;
112
113
QLineEdit*
myTextEdit
;
114
115
QPushButton*
myShapeSelBtn
;
116
// update shape name by shape selection if it has not been manually modified yet
117
bool
myShapeNameModified
;
118
QLineEdit*
myShapeName
;
119
QCheckBox*
myIsScreenFixed
;
120
121
QComboBox*
mySubShapeTypeCombo
;
122
123
QPushButton*
mySubShapeSelBtn
;
124
QLineEdit*
mySubShapeName
;
125
126
MeasureGUI_AnnotationInteractor
*
myInteractor
;
127
};
128
129
#endif
src
MeasureGUI
MeasureGUI_AnnotationDlg.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