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_ManageDimensionsDlg.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_ManageDimensionsDlg.h
25
// Author : Anton POLETAEV, Open CASCADE S.A.S.
26
//
27
#ifndef MEASUREGUI_MANAGEDIMENSIONSDLG_H
28
#define MEASUREGUI_MANAGEDIMENSIONSDLG_H
29
30
#include <
GEOMBase_Skeleton.h
>
31
#include "
MeasureGUI_DimensionInteractor.h
"
32
#include "
MeasureGUI_Widgets.h
"
33
#include <
GEOMGUI_DimensionProperty.h
>
34
35
class
DlgRef_1Sel
;
36
class
QTreeWidget
;
37
class
QPushButton;
38
class
SOCC_Viewer;
39
class
MeasureGUI_CreateDimensionDlg
;
40
41
//=================================================================================
42
// class : MeasureGUI_ManageDimensionsDlg
43
// purpose : The dialog provides interactive management of measurement
44
// dimension presentations and the "dimension" property state of
45
// GEOM shape objects.
46
//=================================================================================
47
class
MeasureGUI_ManageDimensionsDlg
:
public
GEOMBase_Skeleton
48
{
49
Q_OBJECT
50
51
public
:
52
MeasureGUI_ManageDimensionsDlg
(
GeometryGUI
*,
QWidget
* );
53
~MeasureGUI_ManageDimensionsDlg
();
54
55
protected
:
56
enum
Selection
57
{
58
Selection_None
,
59
Selection_Object
,
60
Selection_Dimension
61
};
62
63
/* User event logics */
64
protected
slots:
65
void
StartObjectSelection
() {
StartSelection
(
Selection_Object
); }
66
void
StartSelection
(
const
Selection
theSelection );
67
void
StopSelection
();
68
void
OnSelection
();
69
void
SelectionIntoArgument
(
const
Selection
theSelection );
70
void
OnAdd
();
71
void
OnRemove
();
72
void
OnChangeItem
(
QTreeWidgetItem
* theItem );
73
void
OnSelectItem
();
74
void
OnShowAll
();
75
void
OnHideAll
();
76
void
OnInteractionFinished
( Handle_AIS_InteractiveObject theIO );
77
void
Suspend
();
78
void
Resume
();
79
void
ClickOnOk
();
80
virtual
void
ClickOnCancel
();
81
bool
ClickOnApply
();
82
void
OnFinish
();
83
void
OnActivateThisDialog
();
84
void
OnDeactivateThisDialog
();
85
void
OnDimensionAdded
();
86
87
88
/* Utils */
89
private
:
90
void
SetEditObject
(
const
GEOM::GeomObjPtr
& );
91
void
RestoreState
();
92
void
PopulateList
();
93
bool
HasUnsavedChanges
();
94
bool
AllowedToCancelChanges
();
95
bool
AllowedToSaveChanges
();
96
bool
WarnUnsaved
();
97
int
IdFromItem
(
QTreeWidgetItem
* theItem );
98
int
IdFromPrs
(
const
Handle
(
AIS_InteractiveObject
)& theAIS );
99
void
SelectInList
(
const
Handle
(
AIS_InteractiveObject
)& theIO );
100
void
SelectInList
(
const
int
theId );
101
void
SelectInViewer
( SOCC_Viewer* theViewer,
const
int
theId );
102
void
RedisplayObject
();
103
104
private
:
105
void
enterEvent
(QEvent*);
106
107
private
:
108
enum
GroupItems
109
{
110
GroupItem_Distance
= 0,
111
GroupItem_Diameter
= 1,
112
GroupItem_Angle
= 2
113
};
114
115
private
:
116
GEOM::GeomObjPtr
myEditObject
;
117
bool
myIsNeedRedisplay
;
118
private
:
119
DlgRef_1Sel
*
myObjectSelector
;
120
MeasureGUI_1TreeWidget_4Button
*
myDimensionView
;
121
MeasureGUI_DimensionInteractor
*
myDimensionInteractor
;
122
GEOMGUI_DimensionProperty
mySavedPropertyState
;
123
SOCC_Viewer*
myOperatedViewer
;
124
Selection
myCurrentSelection
;
125
MeasureGUI_CreateDimensionDlg
*
myCreateDialog
;
126
};
127
128
#endif
src
MeasureGUI
MeasureGUI_ManageDimensionsDlg.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