Open Inventor
Release 2023.2.3
Loading...
Searching...
No Matches
SoGuiFullViewer.h
Go to the documentation of this file.
1
/*=======================================================================
2
*** THE CONTENT OF THIS WORK IS PROPRIETARY TO FEI S.A.S, (FEI S.A.S.), ***
3
*** AND IS DISTRIBUTED UNDER A LICENSE AGREEMENT. ***
4
*** ***
5
*** REPRODUCTION, DISCLOSURE, OR USE, IN WHOLE OR IN PART, OTHER THAN AS ***
6
*** SPECIFIED IN THE LICENSE ARE NOT TO BE UNDERTAKEN EXCEPT WITH PRIOR ***
7
*** WRITTEN AUTHORIZATION OF FEI S.A.S. ***
8
*** ***
9
*** RESTRICTED RIGHTS LEGEND ***
10
*** USE, DUPLICATION, OR DISCLOSURE BY THE GOVERNMENT OF THE CONTENT OF THIS ***
11
*** WORK OR RELATED DOCUMENTATION IS SUBJECT TO RESTRICTIONS AS SET FORTH IN ***
12
*** SUBPARAGRAPH (C)(1) OF THE COMMERCIAL COMPUTER SOFTWARE RESTRICTED RIGHT ***
13
*** CLAUSE AT FAR 52.227-19 OR SUBPARAGRAPH (C)(1)(II) OF THE RIGHTS IN ***
14
*** TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE AT DFARS 52.227-7013. ***
15
*** ***
16
*** COPYRIGHT (C) 1996-2020 BY FEI S.A.S, ***
17
*** BORDEAUX, FRANCE ***
18
*** ALL RIGHTS RESERVED ***
19
**=======================================================================*/
20
/*=======================================================================
21
** Author : T.MEHAMLI (Jun 2007)
22
**=======================================================================*/
23
24
#ifndef SO_GUI_FULL_VIEWER
25
#define SO_GUI_FULL_VIEWER
26
28
//
29
// Class: SoGuiFullViewer
30
//
31
// SoXXFullViewer implementation class
32
//
33
//
35
36
#include <
Inventor/Gui/viewers/SoGuiViewer.h
>
37
38
// classes used
39
class
SoFieldSensor
;
40
class
SoStereoDialog
;
41
class
SoAntialiasingParameters
;
42
43
44
class
SoGuiFullViewer
:
public
SoGuiViewer
45
{
46
#ifndef HIDDEN_FROM_DOC
47
SO_FIELDCONTAINER_HEADER
(
SoGuiFullViewer
);
48
#endif
49
50
private
:
51
// This specifies what should be build by default in the constructor
52
enum
BuildFlag
53
{
57
BUILD_NONE = 0x00,
61
BUILD_DECORATION = 0x01,
65
BUILD_POPUP = 0x02,
69
BUILD_ALL = 0xff
70
};
71
72
/*
73
* Defines
74
*/
75
// list of the different popup choices
76
enum
popupChoices
77
{
78
VIEW_ALL = 20,
// enables the same menu routine to be used
79
SET_HOME,
// as the draw style entrie (can't overlap
80
HOME,
// with SoWinViewerDrawStyle values)
81
HEADLIGHT,
82
SEEK,
83
PREF,
84
VIEWING,
85
DECORATION,
86
FULLSCREEN,
87
COPY_VIEW,
88
PASTE_VIEW,
89
HELP
90
};
91
92
enum
drawChoices
93
{
94
AS_IS,
95
HIDDEN_LINE,
96
NO_TXT,
97
LOW_RES,
98
LINE,
99
POINT,
100
BBOX,
101
102
MOVE_SAME_AS,
103
MOVE_NO_TXT,
104
MOVE_LOW_RES,
105
MOVE_LINE,
106
MOVE_LOW_LINE,
107
MOVE_POINT,
108
MOVE_LOW_POINT,
109
MOVE_BBOX,
110
111
DRAW_STYLE_NUM
// specify the length
112
};
113
114
// list of the toggle buttons in the popumenu
115
enum
popupToggles
116
{
117
HEADLIGHT_WIDGET = 0,
// very convenient to start at 0
118
VIEWING_WIDGET,
119
DECORATION_WIDGET,
120
FULLSCREEN_WIDGET,
121
POPUP_TOGGLE_NUM
// specify the length
122
};
123
124
// list of custom push buttons
125
enum
ViewerPushButtons
126
{
127
PICK_PUSH,
128
VIEW_PUSH,
129
HELP_PUSH,
130
HOME_PUSH,
131
SET_HOME_PUSH,
132
VIEW_ALL_PUSH,
133
SEEK_PUSH,
134
PUSH_NUM
135
};
136
140
SoGuiFullViewer
();
141
149
void
setDecoration(
SbBool
onOrOff );
150
154
SbBool
isDecoration();
155
185
void
setPopupMenuEnabled(
SbBool
trueOrFalse );
186
190
SbBool
isPopupMenuEnabled();
191
201
bool
toggleAntiAliasing();
202
203
// Accessors and mutators for xxWheelVals
204
void
setRightWheelVal(
float
newVal );
205
float
getRightWheelVal()
const
;
206
207
void
setBottomWheelVal(
float
newVal );
208
float
getBottomWheelVal()
const
;
209
210
void
setLeftWheelVal(
float
newVal );
211
float
getLeftWheelVal()
const
;
212
213
void
initVars( BuildFlag buildFlag );
// Initialize m_popupEnabled & m_decorationFlag
214
215
// ----------------------- Extension usage -----------------------------------
216
217
// Subclasses can redefine these to add viewer functionality. They
218
// by default call start and finish interactive viewing methods.
219
// (defined in the base class).
220
virtual
void
rightWheelStart();
221
virtual
void
bottomWheelStart();
222
virtual
void
leftWheelStart();
223
virtual
void
rightWheelFinish();
224
virtual
void
bottomWheelFinish();
225
virtual
void
leftWheelFinish();
226
227
int
SO_WHEEL_DELTA;
228
229
private
:
233
virtual
~SoGuiFullViewer
();
234
235
// ----------------------- Private usage -------------------------------------
236
private
:
237
238
SbBool
m_decorationFlag;
239
SbBool
m_popupEnabled;
240
float
m_rightWheelVal, m_bottomWheelVal, m_leftWheelVal;
241
242
// Antialiasing parameters to restore after toggling AA OFF with the GUI button
243
float
m_savedAAQuality;
244
SoAntialiasingParameters
* m_savedAAParams;
245
};
246
247
#endif
// SO_GUI_FULL_VIEWER
248
249
SoGuiViewer.h
SO_FIELDCONTAINER_HEADER
#define SO_FIELDCONTAINER_HEADER(className)
Definition
SoSubFieldContainer.h:60
SoAntialiasingParameters
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Antialiasing par...
Definition
SoAntialiasingParameters.h:45
SoFieldSensor
Sensor class that can be attached to Open Inventor fields.
Definition
SoFieldSensor.h:76
SoGuiFullViewer
Definition
SoGuiFullViewer.h:45
SoGuiViewer
Definition
SoGuiViewer.h:81
SoStereoDialog
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Component that l...
Definition
SoQtStereoDialog.h:54
SbBool
int SbBool
Boolean type.
Definition
SbBase.h:87
Inventor
Gui
viewers
SoGuiFullViewer.h
Generated by
1.9.8