VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtEntityDisplaySettingsWidget.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2020 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
12 #if !defined(Q_MOC_RUN)
14 #endif
15 
16 #include <QtWidgets/QWidget>
17 
18 class QCheckBox;
19 class QDoubleSpinBox;
20 class QGroupBox;
21 class QLabel;
22 class QVBoxLayout;
23 class QGridLayout;
24 class QPushButton;
25 class QRadioButton;
26 class QButtonGroup;
27 class QSlider;
28 
29 using namespace makArchives;
30 namespace makVrv
31 {
32 
33  class DtUnicode;
34  class DtSliderDoubleSpinboxWidget;
35  class DtSliderSpinboxWidget;
36 
41  : public QWidget, public DtEntityDisplaySettingsInterface
42  {
43 
44  Q_OBJECT
45 
46  public:
47 
49  DtEntityDisplaySettingsWidget(DtDe& de, QWidget* parent,
50  Qt::WindowFlags f = Qt::Widget);
51 
54 
58 
59  virtual void setDistanceLabels(const DtUnicode& label);
60  virtual void setDistanceDecimals( int decimals );
61  virtual void setWakeDefaultLODMaxRange( double range );
62  virtual void setBuoyancyDefaultLODMaxRange( double range );
63  virtual void setBuoyancyMinCullMaxRange( double range );
64  virtual void setEntityLabelsShown(bool enabled);
65  virtual void setRotateEntitySymbols(bool enabled);
66  virtual void setEmitterVolumesShown(bool enabled);
67  virtual void setGroundClampingEnabled(bool enabled);
68  virtual void setLifeformsUprightEnabled(bool enabled);
69  virtual void setGroundClampingDistance(float distance);
70  virtual void setOrientationClampingEnabled(bool enabled);
71  virtual void setSmoothingEnabled(bool enabled);
72  virtual void setSmoothingPeriod(float period);
73  virtual void setArtPartSmoothingEnabled(bool enabled);
74  virtual void setArtPartSmoothingPeriod(float period);
75  virtual void setShowStealths(bool enabled);
76  virtual void setInfoPopupsOnSelect(bool enabled);
77  virtual void setHeightAboveTerrainEnabled(bool enabled);
78  virtual void setHeightAboveTerrainMode(
80  virtual void setHeightAboveTerrainSelectedOnly(bool enabled);
81  virtual void setColorizedModelColorType(
83  virtual void setIconScale(int scale);
84  virtual void setMaxGroundClampingDistance(float distance);
85  virtual void setSmoothingPeriodRange(float max, float min, float step);
86  virtual void setArtPartSmoothingPeriodRange(float max, float min, float step);
87 
90  virtual void setOceanWakesEnabled(bool state);
91 
94  virtual void setRotorWashEnabled(bool state);
95 
98  virtual void setHullSprayEffectsEnabled(bool state);
99 
102  virtual void setBuoyancyModelsEnabled(bool state);
103 
107  virtual void setBuoyancyDefaultLODDistance(double distance);
108 
113  virtual void setWakeDefaultLODDistance(double distance);
114 
118  virtual void setBuoyancyMinimumCullDistance(double distance);
119 
123  virtual void setBuoyancyCullType(
125 
129  virtual void setBuoyAndBeaconIconsEnabled(bool state);
130 
132  virtual void setHeightAboveTerrainPeriod( unsigned int period );
133 
138  virtual void setOccupantsVisible(bool state);
139 
144  virtual void setWheelRotationEnabled(bool enabled);
145 
147  protected slots:
148 
152 
153  // POSTREVIEW DWEST order the implementations in this order.
154  void on_entityLabelsCheckChanged(int state);
155  void on_rotateEntitySymbolsCheckChanged(int state);
156  void on_infoPopupsCheckChanged(int state);
157  void on_groundClampingCheckChanged(int state);
158  void on_groundClampingDistanceChanged(double scale);
159  void on_orientationClampingCheckChanged(int state);
160  void on_lifeformsUprightCheckChanged(int state);
161  void on_emitterVolumesCheckChanged(int state);
162  void on_smoothingCheckChanged(int state);
163  void on_smoothingPeriodChanged(double scale);
164  void on_artPartSmoothingCheckChanged(int state);
165  void on_artPartSmoothingPeriodChanged(double scale);
166  void on_HeightAboveTerrainEnabledCheckChanged(bool state);
167  void on_HeightAboveTerrainSelectedOnlyCheckChanged(int state);
168  void on_clearHistoryClicked();
169 
170  void on_showStealthsCheckChanged(int state);
171  void on_primaryColorsRadioButtonChanged(bool state);
172  void on_iconScaleSliderChanged(int state);
173 
174  void on_oceanWakesCheckChanged(int state);
175  void on_hullSprayEffectsCheckChanged(int state);
176  void on_buoyancyModelsCheckChanged(int state);
177  void on_buoyancyLODDistanceChanged(double distance);
178  void on_wakeLODDistanceChanged(double distance);
179  void on_rotorWashCheckChanged(int state);
180  void on_buoyancyMinimumCullDistanceChanged(double distance);
181  void on_buoyancyCullTypeChanged(bool);
182  void on_buoyAndBeaconIconsCheckChanged(int state);
183  void on_HeightAboveTerrainPeriodChanged(int period);
184  void on_occupantsVisibleCheckChanged(int state);
185  void on_wheelRotationCheckChanged(int state);
186 
188 
189  protected:
190 
193  void setupGui();
194 
197  void connectToSignals();
198 
199  void enableBuoyancyParameters( bool enabled );
200 
201  protected:
202 
203  // Effects
210 
211  // Ground clamping.
218 
219  // Smoothing
223 
227 
228  // Filtering
230 
231  // Force Color settings.
233  QRadioButton* myIconColorsRadioButton;
234  QButtonGroup* myColorsButtonGroup;
235 
238 
239  // Surface vehicles
250 
251  // Buoyancy cull
253 
257 
259 
261 
263 
264  };
265 
266 }
QCheckBox * myRotateEntitySymbols
Definition: DtEntityDisplaySettingsWidget.h:205
QCheckBox * myEmitterVolumesEnabledCheckbox
Definition: DtEntityDisplaySettingsWidget.h:209
QRadioButton * myPrimaryColorsRadioButton
Definition: DtEntityDisplaySettingsWidget.h:232
The interface for an entity settings widget to communicate with its logic.
Definition: DtEntitySettingsInterface.h:28
A unicode string.
Definition: DtUnicode.h:33
QCheckBox * myGroundClampingCheckbox
Definition: DtEntityDisplaySettingsWidget.h:212
QLabel * myWakeLODDistanceLabel
Definition: DtEntityDisplaySettingsWidget.h:245
DtSliderDoubleSpinboxWidget * myGroundClampingDistance
Definition: DtEntityDisplaySettingsWidget.h:217
QCheckBox * myHeightAboveTerrainEnabledCheckBox
Definition: DtEntityDisplaySettingsWidget.h:207
DtDe & myDe
Definition: DtEntityDisplaySettingsWidget.h:262
QCheckBox * myWheelRotationCheckbox
Definition: DtEntityDisplaySettingsWidget.h:260
QLabel * myGroundClampingDistanceLabel
Definition: DtEntityDisplaySettingsWidget.h:216
ColorizedModelColorType
Enumeration for the model coloring mode.
Definition: DtSharedEntityDisplaySettings.h:42
This class displays the entity display controls inside the entity display page.
Definition: DtEntityDisplaySettingsWidget.h:40
QCheckBox * mySmoothingCheckbox
Definition: DtEntityDisplaySettingsWidget.h:220
#define DT_DLL_VRVVRLQT
Definition: vrvVrlQt.h:19
A widget for pairing a horizontal slider with a spinbox.
Definition: DtSliderSpinboxWidget.h:30
QLabel * myHeightAboveTerrainPeriodLabel
Definition: DtEntityDisplaySettingsWidget.h:255
QSlider * myIconScaleSlider
Definition: DtEntityDisplaySettingsWidget.h:237
QCheckBox * myBuoyancyFrontFaceCullCheckbox
Definition: DtEntityDisplaySettingsWidget.h:252
DtSliderDoubleSpinboxWidget * myBuoyancyMinimumCullDistanceSlider
Definition: DtEntityDisplaySettingsWidget.h:249
QCheckBox * myOrientationClampingCheckbox
Definition: DtEntityDisplaySettingsWidget.h:215
QButtonGroup * myColorsButtonGroup
Definition: DtEntityDisplaySettingsWidget.h:234
QCheckBox * myBuoyancyModelsCheckbox
Definition: DtEntityDisplaySettingsWidget.h:243
Interface for the entity settings widget.
BuoyancyCullType
Definition: DtEntitySettingsRecord.h:22
QCheckBox * myHullSprayCheckbox
Definition: DtEntityDisplaySettingsWidget.h:242
DT_DLL_VRVCORE double distance(const makVrv::DtCoordinateSystem &, const DtVector &from, const DtVector &to)
Returns the distance from the two points.
QLabel * myArtPartSmoothingPeriodLabel
Definition: DtEntityDisplaySettingsWidget.h:225
QCheckBox * myEntityLabelsCheckbox
Definition: DtEntityDisplaySettingsWidget.h:204
QCheckBox * myInfoPopupsOnSelectCheckbox
Definition: DtEntityDisplaySettingsWidget.h:206
A widget for pairing a horizontal slider with a double spin-box.
Definition: DtSliderDoubleSpinboxWidget.h:30
DtSliderDoubleSpinboxWidget * myWakeLODDistanceSlider
Definition: DtEntityDisplaySettingsWidget.h:248
QCheckBox * myOccupantsVisibleCheckbox
Definition: DtEntityDisplaySettingsWidget.h:258
QCheckBox * myLifeformsUprightCheckbox
Definition: DtEntityDisplaySettingsWidget.h:214
DtSliderDoubleSpinboxWidget * myArtPartSmoothingPeriod
Definition: DtEntityDisplaySettingsWidget.h:226
QCheckBox * myShowStealthsCheckbox
Definition: DtEntityDisplaySettingsWidget.h:229
DtSliderDoubleSpinboxWidget * mySmoothingPeriod
Definition: DtEntityDisplaySettingsWidget.h:222
DtSliderDoubleSpinboxWidget * myBuoyancyLODDistanceSlider
Definition: DtEntityDisplaySettingsWidget.h:247
HeightAboveTerrainMode
Enumeration for the HAT mode.
Definition: DtSharedEntityDisplaySettings.h:35
QLabel * myBuoyancyLODDistanceLabel
Definition: DtEntityDisplaySettingsWidget.h:244
QCheckBox * myHeightAboveTerrainSelectedOnlyCheckbox
Definition: DtEntityDisplaySettingsWidget.h:208
QLabel * myBuoyancyMinimumCullDistanceLabel
Definition: DtEntityDisplaySettingsWidget.h:246
const char int mode
Definition: ioapi.h:38
QLabel * myIconScaleLabel
Definition: DtEntityDisplaySettingsWidget.h:236
QRadioButton * myIconColorsRadioButton
Definition: DtEntityDisplaySettingsWidget.h:233
DtSliderSpinboxWidget * myHeightAboveTerrainPeriodSlider
Definition: DtEntityDisplaySettingsWidget.h:256
QLabel * mySmoothingPeriodLabel
Definition: DtEntityDisplaySettingsWidget.h:221
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
QCheckBox * myBuoyAndBeaconIconsCheckbox
Definition: DtEntityDisplaySettingsWidget.h:254
QCheckBox * myRotorWashCheckbox
Definition: DtEntityDisplaySettingsWidget.h:241
QCheckBox * myTrackHistoryCheckbox
Definition: DtEntityDisplaySettingsWidget.h:213
QCheckBox * myOceanWakesCheckbox
Definition: DtEntityDisplaySettingsWidget.h:240
QCheckBox * myArtPartSmoothingCheckbox
Definition: DtEntityDisplaySettingsWidget.h:224

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)