VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
entityControlPanelWidget.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #if !defined(Q_MOC_RUN)
17 #endif
18 #include <boost/signals2.hpp>
19 
21 #include <QtWidgets/QWidget>
22 #include <vrfutil/rwAirSpeedType.h>
23 
24 class QGroupBox;
25 class QValidator;
26 class QHBoxLayout;
27 class QLabel;
28 class QComboBox;
29 
30 namespace makVrv
31 {
32  class DtDe;
33 }
34 
35 namespace makVrf
36 {
37  class DtEntityControlPanelWidgetLogic;
38  class DtEntityAttributeSliderWithEditor;
39  class DtEntityAttributeSliderWithEditorAirSpeed;
40  class DtEntityHeadingDial;
41 
43 
46  {
47  Q_OBJECT
48 
49  public:
52  QWidget* parent, const Qt::WindowFlags& flags = 0);
53 
54  //DTOR
55  virtual ~DtEntityControlPanelWidget() override;
56 
58  virtual void blockSignals(bool);
59  bool signalsBlocked() const;
60 
61  virtual void clear() override;
62  virtual void init(makVrv::DtUniqueID) override;
63  virtual void updateOnDataChanged() override;
64 
65  virtual void setAltitudeRange(double minAlt, double maxAlt) override;
66  virtual void setAltitudeDecimals(int) override;
67 
68  virtual void setSpeedRange(double minSpeed, double maxSpeed) override;
69  virtual void setSpeedDecimals(int) override;
70 
71  virtual void setAltitudeEnabled(bool enabled) override;
72 
73  virtual void setAirSpeedTypeEnabled(bool enabled) override;
74 
75  virtual void setActualHeading(double heading) override;
76  virtual void setActualAltitude(double altitude) override;
77  virtual void setActualSpeed(double speed) override;
78 
79  virtual void setEntityIcon(const QPixmap& icon) override;
80 
81  virtual void setTerrainHeight(double height) override;
82 
83  virtual void setRequestedHeading(double heading) override;
84  virtual void setRequestedAltitude(double altitude) override;
85  virtual void setRequestedSpeed(double speed) override;
86 
87  virtual void setMarkingText(const QString& marking) override;
88  virtual void setPaletteName(const QString& paletteName) override;
89 
90  virtual void setEnableControl(bool enable) override;
91  virtual void setDisplayActualData(bool display) override;
92 
93  virtual double actualHeading() const override;
94  virtual double actualAltitude() const override;
95  virtual double actualSpeed() const override;
96 
97  virtual double requestedHeading() const override;
98  virtual double requestedAltitude() const override;
99  virtual double requestedSpeed() const override;
100  virtual bool speedSliderActive() const override;
101  virtual bool headingSliderActive() const override;
102  virtual bool altitudeSliderActive() const override;
103 
104  virtual double terrainHeight() const override;
105 
106  virtual double minimumAlt() const override;
107  virtual double maximumAlt() const override;
108 
109  virtual double minimumSpeed() const override;
110  virtual double maximumSpeed() const override;
111 
112  virtual bool isMagneticNorth() const override;
113  virtual void setMagneticNorth(bool unit) override;
114 
115  virtual void refreshHasPlanWarningLabel(bool hasPlan) override;
116 
117  virtual void refreshDisplayUnitsLabels(const QString& altUnit, const QString& speedUnit) override;
118 
119  virtual void setAltitudeSliderTitle(const QString& title) override;
120 
121  virtual void slot_requestedHeadingChanged(double value, bool singleClick) override;
122  virtual void slot_requestedAltitudeChanged(double value, bool singleClick) override;
123  virtual void slot_requestedSpeedChanged(double value, bool singleClick) override;
124  virtual void slot_turnDirectionChanged(int turnDirection) override;
125  virtual void slot_airSpeedTypeChanged(int type) override;
126  virtual void slot_northTypeChanged(bool isMagnetic) override;
127 
128  boost::signals2::signal<void(DtEntityControlPanelWidget*)> signal_aboutToBeClosed;
129 
130  protected:
131  virtual void initLogic();
132  virtual void closeEvent(QCloseEvent*) override;
133 
134  protected:
135 
141 
145 
148 
151 
152  QString myMarkingText;
153 
154 
155  };
156 }
QLabel * myHasPlanWarningLabel
Definition: entityControlPanelWidget.h:142
QWidget * myHasPlanLayoutPlaceHolder
Definition: entityControlPanelWidget.h:144
A widget that enable editing an attribute via a DtEntityAttributeSlider or a QLineEdit associated wit...
Definition: entityAttributeSliderWithEditorAirSpeed.h:18
DtEntityControlPanelWidgetLogic * myLogic
Definition: entityControlPanelWidget.h:146
Definition: entityHeadingDial.h:28
makVrv::DtDe & myDe
Definition: entityControlPanelWidget.h:147
boost::signals2::signal< void(DtEntityControlPanelWidget *)> signal_aboutToBeClosed
Definition: entityControlPanelWidget.h:128
DtEntityHeadingDial * myHeadingDial
Definition: entityControlPanelWidget.h:136
QLabel * myPaletteNameLabel
Definition: entityControlPanelWidget.h:140
DtEntityAttributeSliderWithEditorAirSpeed * mySpeedSlider
Definition: entityControlPanelWidget.h:138
An entry widget that controls heading, altitude and speed of selected entities.
Definition: entityControlPanelWidget.h:44
makVrv::DtSignalConnectionManager myConnections
Definition: entityControlPanelWidget.h:150
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
bool myBlockSignals
Definition: entityControlPanelWidget.h:149
#define DT_DLL_VRFGUICOMMONQT
Definition: vrfGuiCommonQt.h:20
Logic of the entity control panel widget: tasks executions, handling selection change, handling data updates and so on.
Definition: entityControlPanelWidgetLogic.h:40
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
QString myMarkingText
Definition: entityControlPanelWidget.h:152
This interface defines the required functions for the entity control panel widget.
Definition: entityControlPanelWidgetInterface.h:38
Base class to provide boost signal/slot management.
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
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:76
QLabel * myMarkingTextLabel
Definition: entityControlPanelWidget.h:139
QLabel * myHasPlanWarningIconLabel
Definition: entityControlPanelWidget.h:143
A widget that enable editing an attribute via a DtEntityAttributeSlider or a QLineEdit A unit label c...
Definition: entityAttributeSliderWithEditor.h:24
DtEntityAttributeSliderWithEditor * myAltitudeSlider
Definition: entityControlPanelWidget.h:137

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)