VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
buoyancyEditingDialog.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2015 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
8 #pragma once
9 
10 
13 #include <boost/function.hpp>
14 
15 #include <QDialog>
16 
17 namespace makVrv
18 {
19  class DtDe;
20  class DtSliderDoubleSpinboxWidget;
21  class DtSliderSpinboxWidget;
22  class DtVisualizerDefinition;
23  class DtEntityWakeVisualizer;
24  class DtVisualizerAttribute;
25  class DtWindDirectionWidget;
26 }
27 
28 namespace makVrf
29 {
30  class DtEntityFacadeCollection;
31 };
32 
33 class QSlider;
34 class QLabel;
35 class QPushButton;
36 class QGridLayout;
37 class QHBoxLayout;
38 class QComboBox;
39 class QFrame;
40 class QDoubleSpinBox;
41 class QCheckBox;
42 
43 class DtOceanSettings : public QDialog
44 {
45  Q_OBJECT
46 
47 public:
48  DtOceanSettings(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = Qt::Tool);
49  virtual ~DtOceanSettings();
50 
51 protected:
52  virtual bool showOceanForWaterVehicles() const;
53 
54 protected slots:
55  virtual void windSpeedChanged();
56  virtual void windDirectionChanged();
57  virtual void seaChoppinessChanged();
58  virtual void oceanQualityChanged();
59  virtual void onDaylightSliderMoved();
60  virtual void onViewMagnificationSpinBoxChanged(double);
61  virtual void showOceanForWaterVehiclesChanged();
62 
63 public:
64  QGridLayout* myControlsLayout;
65 
68 
71 
74 
77 
80 
81  QHBoxLayout* myButtonLayout;
83 
85  QSlider* myTimeOfDay;
87 
90 
92 
93 protected:
94  virtual void onDaylightChanged();
95 
97 };
98 
100 {
101  Q_OBJECT
102 
103 public:
105  makVrf::DtEntityFacadeCollection*, int modelSet, const Qt::WindowFlags& flags = Qt::Tool);
106  virtual ~DtBuoyancyEditingDialog();
107 
108  virtual void accept();
109  virtual void reject();
110 
111  typedef boost::function<void (double)> SetDoubleFunction;
112  typedef boost::function<void (bool)> SetBoolFunction;
113  typedef boost::function<void (int)> SetIntegerFunction;
114 
115  virtual void addWakeVariable(int row, const std::string& attributeName, SetDoubleFunction function, const QString& displayName,
116  const QString& toolTip, double min, double max, double step, double defaultValue = 0.);
117  virtual void addWakeVariable(int row, const std::string& attributeName, SetIntegerFunction function,
118  const QString& toolTip, const QString& displayName, int min, int max, int defaultValue = 0);
119  virtual void addWakeVariable(int row, const std::string& attributeName, SetBoolFunction function, const QString& displayName, const QString& toolTip);
120 
121  virtual void closeEvent(QCloseEvent*);
122 
123 protected slots:
124  virtual void integerChanged();
125  virtual void boolChanged();
126  virtual void doubleChanged();
127 
128 signals:
129  void buoyancyModified();
130  void buouancyCanceled();
131 
132 protected:
133  virtual void setReadOnly(bool);
134 
135 public:
136  QGridLayout* myControlsLayout;
137 
138  QHBoxLayout* myButtonLayout;
141 
142 protected:
148 
150  {
155  QWidget* myWidget;
160  };
161 
162  std::map<std::string, WakeVariable> myWakeVariables;
163 };
QWidget * myWidget
Definition: buoyancyEditingDialog.h:155
DtBuoyancyEditingDialog(makVrv::DtDe &de, QWidget *parent, makVrv::DtVisualizerDefinition *def, makVrf::DtEntityFacadeCollection *, int modelSet, const Qt::WindowFlags &flags=Qt::Tool)
QLabel * myOceanQualityLabel
Definition: buoyancyEditingDialog.h:78
QHBoxLayout * myButtonLayout
Definition: buoyancyEditingDialog.h:81
QLabel * mySeaChoppinessLabel
Definition: buoyancyEditingDialog.h:72
virtual void addWakeVariable(int row, const std::string &attributeName, SetDoubleFunction function, const QString &displayName, const QString &toolTip, double min, double max, double step, double defaultValue=0.)
QPushButton * myOK
Definition: buoyancyEditingDialog.h:139
virtual void doubleChanged()
QComboBox * myOceanQuality
Definition: buoyancyEditingDialog.h:79
makVrv::DtSignalConnectionManager myConnections
Definition: buoyancyEditingDialog.h:147
makVrv::DtSliderDoubleSpinboxWidget * myVelocity
Definition: buoyancyEditingDialog.h:70
makVrv::DtDe & myDe
Definition: buoyancyEditingDialog.h:143
virtual ~DtBuoyancyEditingDialog()
virtual void accept()
virtual void windSpeedChanged()
makVrf::DtEntityFacadeCollection * myFacade
Definition: buoyancyEditingDialog.h:145
makVrv::DtSliderSpinboxWidget * mySeaChoppiness
Definition: buoyancyEditingDialog.h:73
makVrv::DtEntityWakeVisualizer * myWakeVisualizer
Definition: buoyancyEditingDialog.h:146
QLabel * myTimeOfDayDisplay
Definition: buoyancyEditingDialog.h:86
virtual void integerChanged()
SetIntegerFunction integerFunction
Definition: buoyancyEditingDialog.h:151
virtual void onViewMagnificationSpinBoxChanged(double)
boost::function< void(int)> SetIntegerFunction
Definition: buoyancyEditingDialog.h:113
A widget for pairing a horizontal slider with a spinbox. The spin box must be clamped to a min and ma...
Definition: DtSliderSpinboxWidget.h:30
virtual void oceanQualityChanged()
virtual void showOceanForWaterVehiclesChanged()
bool myIsBoolean
Definition: buoyancyEditingDialog.h:158
virtual void windDirectionChanged()
makVrv::DtWindDirectionWidget * myWindDirection
Definition: buoyancyEditingDialog.h:76
QHBoxLayout * myButtonLayout
Definition: buoyancyEditingDialog.h:138
makVrv::DtDe & myDe
Definition: buoyancyEditingDialog.h:96
virtual void closeEvent(QCloseEvent *)
makVrv::DtVisualizerDefinition * myVisualizerDefinition
Definition: buoyancyEditingDialog.h:144
A widget for pairing a wind direction dial with a double spin box.
Definition: DtWindDirectionWidget.h:41
SetBoolFunction boolFunction
Definition: buoyancyEditingDialog.h:153
bool myIsInteger
Definition: buoyancyEditingDialog.h:159
std::map< std::string, WakeVariable > myWakeVariables
Definition: buoyancyEditingDialog.h:162
SetDoubleFunction doubleFunction
Definition: buoyancyEditingDialog.h:152
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
QDoubleSpinBox * myViewMagnificationSpinBox
Definition: buoyancyEditingDialog.h:89
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
QLabel * myWindSpeedLabel
Definition: buoyancyEditingDialog.h:66
virtual void setReadOnly(bool)
bool myIsDouble
Definition: buoyancyEditingDialog.h:157
Definition: buoyancyEditingDialog.h:149
DtOceanSettings(makVrv::DtDe &de, QWidget *parent, const Qt::WindowFlags &flags=Qt::Tool)
QGridLayout * myControlsLayout
Definition: buoyancyEditingDialog.h:136
makVrv::DtSliderDoubleSpinboxWidget * myWindSpeed
Definition: buoyancyEditingDialog.h:67
Will create entity facades for each realized model set and manage them all.
Definition: entityFacadeCollection.h:67
QLabel * myWindDirectionLabel
Definition: buoyancyEditingDialog.h:75
boost::function< void(bool)> SetBoolFunction
Definition: buoyancyEditingDialog.h:112
Base class to provide boost signal/slot management.
A definition of a visualizer. Visualizer definition are always members of a visualizer definition set...
Definition: DtVisualizerDefinition.h:22
virtual bool showOceanForWaterVehicles() const
QCheckBox * myShowOceanForWaterVehicles
Definition: buoyancyEditingDialog.h:91
bool myModified
Definition: buoyancyEditingDialog.h:156
QGridLayout * myControlsLayout
Definition: buoyancyEditingDialog.h:64
QLabel * myVelocityLabel
Definition: buoyancyEditingDialog.h:69
virtual void seaChoppinessChanged()
QLabel * myTimeOfDayLabel
Definition: buoyancyEditingDialog.h:84
QSlider * myTimeOfDay
Definition: buoyancyEditingDialog.h:85
Definition: buoyancyEditingDialog.h:43
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
virtual void boolChanged()
Definition: buoyancyEditingDialog.h:99
QLabel * myViewMagnificationLabel
Definition: buoyancyEditingDialog.h:88
QLabel * myLabel
Definition: buoyancyEditingDialog.h:154
virtual void onDaylightChanged()
boost::function< void(double)> SetDoubleFunction
Definition: buoyancyEditingDialog.h:111
QPushButton * myOK
Definition: buoyancyEditingDialog.h:82
QPushButton * myCancel
Definition: buoyancyEditingDialog.h:140
virtual ~DtOceanSettings()
Visualizer for kelvin wakes.
Definition: DtEntityWakeVisualizer.h:21
virtual void reject()
virtual void onDaylightSliderMoved()

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)