VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtObserverSettingsPage.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2021 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 #include <vrvCoreQt/vrvCoreQt.h>
12 #include <vrvCoreQt/DtPage.h>
14 
15 
16 class QComboBox;
17 class QTreeWidget;
18 class QTreeWidgetItem;
19 class QSlider;
20 class QDoubleSpinBox;
21 class QRadioButton;
22 class QButtonGroup;
23 class QLabel;
24 class QCheckBox;
25 
26 namespace makVrv
27 {
28  class DtDe;
29  class DtSelectInstanceWidget;
30  class DtObserverSettingsLogic;
31  class DtPersistenceToolbarWidget;
32  class DtSliderDoubleSpinboxWidget;
33 
38  {
39  Q_OBJECT
40 
41  public:
42 
44  DtObserverSettingsPage(DtDe& de, QWidget* parent, Qt::WindowFlags f = 0);
45 
47  virtual ~DtObserverSettingsPage();
48 
50  virtual QIcon icon();
51 
54  virtual DtQIconConfigurations qIconConfigurations() const;
55 
57  virtual QString title();
58 
60  virtual const std::string& pageClassName() const;
61 
63  static const std::string& thePageClassName();
64 
67  virtual int currentObserverIndex() const;
68 
71  virtual std::string currentObserverName() const;
72 
75  virtual int findObserverInstanceIndex(const std::string& instanceName);
76 
78  virtual void setObserverInstanceNames(const std::list<std::string>& instanceNames);
79 
82  virtual void setCurrentObserverIndex(int i);
83 
87  virtual void setCurrentObserverInstanceName(const std::string& instanceName) ;
88 
93  virtual void addObserverInstance(const DtUnicode& name, int index = -1);
94 
100  virtual void removeObserverInstance(int i);
101 
103  virtual void setDeleteObserverEnabled( bool enabled );
104 
107  virtual int currentObserverModeIndex() const;
108 
111  virtual std::string currentObserverModeName() const;
112 
115  virtual int findObserverModeInstanceIndex( const std::string& instanceName );
116 
118  virtual void setObserverModeInstanceNames( const std::list<std::string>& instanceNames );
119 
122  virtual void setCurrentObserverModeIndex( int i );
123 
127  virtual void setCurrentObserverModeInstanceName( const std::string& instanceName );
128 
133  virtual void addObserverModeInstance( const std::string& name, int index = -1 );
134 
135 
141  virtual void removeObserverModeInstance( int i );
142 
143  virtual void observerCreateRequestFailed( const std::string& observerName );
144 
145  virtual void addModelSet( int modelSet, const DtUnicode& displayName );
146  virtual void setCurrentProjection( const std::string& projectionName );
147 
148  virtual void setCurrentModelSet( int modelSet );
149  virtual void addProjection( const DtUnicode& displayName );
150 
151  virtual void setCurrentSensorMode( const std::string& sensorName );
152  virtual void addSensorMode( const std::string& sensorName );
153  virtual void removeSensorMode( const std::string& sensorName );
154  virtual void renameSensorMode( const std::string& oldName, const std::string& newName );
155  virtual void enableSensorMode( bool enable );
156 
157  virtual void addKeyMap( const std::string& displayName );
158  virtual void setCurrentKeyMap( const std::string& keyMapName );
159 
160  virtual void setOrbitSpeedGainSlider( int gain );
161  virtual void setRotationSpeedGainSlider( int gain );
162  virtual void setLinearSpeedGainSlider( int gain );
163  virtual void setSliderGainPrecision( int precision );
164 
165  virtual void addModelScaleType(const DtUnicode& displayName, const std::string& value);
166  virtual void clearModelScaleTypes();
167  virtual void setModelScaleFactorSlider( int factor );
168  virtual void enableModelScaleFactorSlider( bool enable );
169  virtual void setModelScaleFactorSliderMaximum( int maximum );
170 
171  virtual void setModelScaleTypeSelector(const std::string& scaleType);
172  virtual void enableModelScaleTypeSelector( bool enable );
173 
174  virtual void setMaxModelScaleFactorSpinBox( double maxScaleFactor );
175  virtual void enableMaxModelScaleFactorSpinBox( bool enable );
176 
177  virtual void setSpeedScalingMode( DtObserverObject::SpeedScalingMode mode );
178  virtual void setSpeedScalingMslModeOffset( double offset );
179  virtual void setSpeedScalingMslModeOffsetRanges( double minRange, double maxRange );
180  virtual void setDistanceUnitLabels( const DtUnicode& unitLabel );
181  virtual void setDistanceDecimals( int decimals );
182 
183  virtual void setCameraShakeEnabled( bool enabled );
184  virtual void setCameraShakeIntensity( float intensity );
185 
187  virtual void setLodScaleCenterEnabled(bool enabled);
189  virtual void setLodScaleCenterMagMinLimit(double limit);
190 
191  virtual void clearObserverSettings();
192  virtual void addObserverSetting( int key, const DtUnicode& displayName, bool visualTypeSetting );
193  virtual void setObserverSetting(const DtUnicode& displayName, bool checked, bool visualTypeSetting);
194 
196  virtual void enableNorthType(bool enable);
197 
199  virtual void clearNorthTypes();
200 
204  virtual void addNorthType(const std::string& displayName, DtObserverObject::NorthType northType);
205 
208  virtual void setCurrentNorthType(DtObserverObject::NorthType northType);
209 
210  protected:
211 
213  void setupGui();
214 
216  virtual void activate();
217 
219  virtual void deactivate();
220 
222  QString askForObserverModeName(QString initial, const QString& title);
223 
225  QString askForObserverName(QString initial, const QString& title);
226 
227  // ** boost signal receivers (from selectObserverInstanceWidget)
228 
229  virtual void onObserverChanged( int index, const std::string& observerName );
230 
231  virtual void onRenameObserverRequested();
232 
233  virtual void onNewObserverRequested();
234 
235  virtual void onDeleteObserverRequested();
236 
237  // ** boost signal receivers (from selectObserverModeInstanceWidget)
238 
239  virtual void onObserverModeChanged( int index, const std::string& modeName );
240 
241  virtual void onRenameObserverModeRequested();
242 
243  virtual void onNewObserverModeRequested();
244 
245  virtual void onDeleteObserverModeRequested();
246 
247  // ** Qt signal receivers (from other Qt components)
248 
249  protected slots:
250 
251  virtual void onModelSetChanged( int index );
252  virtual void onKeyMapChanged( int index );
253  virtual void onProjectionChanged( int index );
254  virtual void onTreeItemChanged( QTreeWidgetItem* item, int column );
255  virtual void onLinearSpeedGainSliderChanged( int value );
256  virtual void onRotationSpeedGainSliderChanged( int value );
257  virtual void onOrbitSpeedGainSliderChanged( int value );
258  virtual void onModelScaleFactorSliderChanged( int value );
259  virtual void onModelScaleTypeChanged( int index );
260  virtual void onMaxModelScaleFactorSpinBoxChanged( double value );
261  virtual void onSensorModeChanged( int index );
262  virtual void onSpeedScalingMslRadioButtonClicked();
263  virtual void onSpeedScalingAglRadioButtonClicked();
264  virtual void onSpeedScalingMslModeOffsetSliderChanged( double value );
265  virtual void onCameraShakeEnabledCheckBoxChanged( bool enabled );
266  virtual void onCameraShakeIntensitySliderChanged( double value );
267 
269  virtual void onLodScaleCenterEnabledCheckBoxChanged(bool enabled);
271  virtual void onLodScaleCenterMagMinLimitSliderChanged(double intensity);
272 
274  virtual void onNorthTypeChanged(int index);
275 
276  protected:
277 
279 
283 
299 
303 
307 
310 
312  };
313 
318 }
319 
A widget that displays a persistence GUI in some way Operations presented are import, export, save, and restore.
Definition: DtPersistenceToolbarWidget.h:26
This is the interface for the DtObserverSettingsPage.
Definition: DtObserverSettingsInterface.h:21
QCheckBox * myCameraShakeEnabledCheckBox
Definition: DtObserverSettingsPage.h:300
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
QTreeWidget * myVisualTypeSettingsWidget
Definition: DtObserverSettingsPage.h:308
Contains makVrv::DtPage class.
QComboBox * myNorthTypeComboBox
Definition: DtObserverSettingsPage.h:311
DtSliderDoubleSpinboxWidget * myLodScaleCenterMagMinLimitSlider
Definition: DtObserverSettingsPage.h:306
DtSliderDoubleSpinboxWidget * mySpeedScalingMslModeOffsetSlider
Definition: DtObserverSettingsPage.h:298
QComboBox * myModelSetComboBox
Definition: DtObserverSettingsPage.h:286
Base select instance widget.
Definition: DtSelectInstanceWidget.h:28
#define DT_DLL_VRVCOREQT
Definition: vrvCoreQt.h:20
QLabel * myMslOffsetLabel
Definition: DtObserverSettingsPage.h:297
Contains DLL export macros.
QSlider * myModelScaleFactorSlider
Definition: DtObserverSettingsPage.h:291
Definition: DtPage.h:150
QRadioButton * mySpeedScalingAglRadioButton
Definition: DtObserverSettingsPage.h:295
QSlider * myRotationSpeedGainSlider
Definition: DtObserverSettingsPage.h:289
QLabel * myLodScaleCenterMagMinLimitLabel
Definition: DtObserverSettingsPage.h:305
QComboBox * myKeyMapComboBox
Definition: DtObserverSettingsPage.h:285
QComboBox * myModelScaleTypeComboBox
Definition: DtObserverSettingsPage.h:292
Contains makVrv::DtObserverSettingsInterface class.
SpeedScalingMode
Definition: DtObserverObject.h:50
DtSelectInstanceWidget * myObserverModeSelectInstanceWidget
Definition: DtObserverSettingsPage.h:281
A widget for pairing a horizontal slider with a double spin-box. The spin box must be clamped to a mi...
Definition: DtSliderDoubleSpinboxWidget.h:30
DtPersistenceToolbarWidget * myPersistenceToolbar
Definition: DtObserverSettingsPage.h:282
QButtonGroup * mySpeedScalingModeButtonGroup
Definition: DtObserverSettingsPage.h:294
QComboBox * myProjectionComboBox
Definition: DtObserverSettingsPage.h:284
NorthType
Definition: DtObserverObject.h:56
QTreeWidget * myObsererControlSettingsWidget
Definition: DtObserverSettingsPage.h:309
The page is a single widget component which is viewed in a page collection.
Definition: DtPage.h:30
QDoubleSpinBox * myMaxModelScaleFactorSpinBox
Definition: DtObserverSettingsPage.h:293
QComboBox * mySensorComboBox
Definition: DtObserverSettingsPage.h:287
DtPageCreatorTemplate< DtObserverSettingsPage > DtObserverSettingsPageCreator
Creator class for DtObserverSettingsPage.
Definition: DtObserverSettingsPage.h:317
Logic class for editing definition ObserverMode.
Definition: DtObserverSettingsLogic.h:27
const char int mode
Definition: ioapi.h:38
DtSelectInstanceWidget * myObserverSelectInstanceWidget
Definition: DtObserverSettingsPage.h:280
DtSliderDoubleSpinboxWidget * myCameraShakeIntensitySlider
Definition: DtObserverSettingsPage.h:302
DtObserverSettingsLogic * myLogic
Definition: DtObserverSettingsPage.h:278
QCheckBox * myLodScaleCenterEnabledCheckBox
Definition: DtObserverSettingsPage.h:304
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:70
QRadioButton * mySpeedScalingMslRadioButton
Definition: DtObserverSettingsPage.h:296
A collection of icon configurations. The collection maintains flags indicating whether to generate ic...
Definition: DtQIconConfiguration.h:75
A dialog for editing ObserverModes.
Definition: DtObserverSettingsPage.h:36
voidpf uLong offset
Definition: ioapi.h:42
QSlider * myOrbitSpeedGainSlider
Definition: DtObserverSettingsPage.h:290
QSlider * myLinearSpeedGainSlider
Definition: DtObserverSettingsPage.h:288
QLabel * myCameraShakeIntensityLabel
Definition: DtObserverSettingsPage.h:301

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)