![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2012 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 00008 00009 #pragma once 00010 00011 #include <vrfGuiCoreQt/vrfGuiCoreQt.h> 00012 #include <vrfGuiCoreQt/DtBaseTaskSetDialogInterface.h> 00013 00015 #include <vrvUtil/DtUnitConverterCollection.h> 00016 00017 class QLineEdit; 00018 class QLabel; 00019 class QHBoxLayout; 00020 class QDoubleValidator; 00021 class QGridLayout; 00022 00023 namespace makVrf 00024 { 00027 class DT_DLL_VRFGUICOREQT DtTaskFlyHeadingAndAltitudeDialog : public DtBaseTaskSetDialogInterface 00028 { 00029 Q_OBJECT 00030 public: 00031 //CTOR 00032 DtTaskFlyHeadingAndAltitudeDialog(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0); 00033 00034 //DTOR 00035 virtual ~DtTaskFlyHeadingAndAltitudeDialog(); 00036 00038 virtual double heading() const; 00040 virtual void setHeading(double); 00042 virtual void setHeadingLabel(QString label); 00045 virtual void setHeadingDecimalPlaces(int decimalPlaces); 00046 00047 virtual double turnRate() const; 00048 virtual void setTurnRate(double); 00049 virtual void setTurnRateLabel(QString label); 00050 virtual void setTurnRateDecimalPlaces(int decimalPlaces); 00051 00053 virtual double altitude() const; 00055 virtual void setAltitude(double); 00057 virtual void setAltitudeLabel(QString label); 00058 virtual void setAltitudeDecimalPlaces(int decimalPlaces); 00059 00060 virtual double climbDescendRate() const; 00061 virtual void setClimbDescendRate(double d); 00062 virtual void setClimbDescendRateLabel(QString label); 00063 virtual void setClimbDescendRateDecimalPlaces(int decimalPlaces); 00064 00065 protected: 00066 virtual QWidget* contents(const std::vector<makVrv::DtSimEntry*>& data); 00067 00068 virtual void sendRequest(); 00069 00070 protected: 00072 virtual void setupGui(const std::vector<makVrv::DtSimEntry*>& data); 00073 00077 virtual void slot_onUnitChanged(int attribute, int newVal, int oldVal); 00078 00081 virtual void slot_displayUnitDecimalsChanged( 00082 makVrv::DtUnitConverterCollection::DisplayUnitType, int, int); 00083 00086 virtual void refreshLabels(); 00087 00092 00093 virtual double climbRateNativeToDisplay(double nativeVal); 00094 virtual double climbRateDisplayToNative(double displayVal); 00096 00098 virtual void setupStatement(const DtSimStatement*); 00099 00100 public: 00101 QWidget* myCanvas; 00102 QGridLayout* myContentLayout; 00103 QLineEdit* myHeading; 00104 QLabel* myHeadingLabel; 00105 QDoubleValidator* myHeadingValidator; 00106 QDoubleValidator* myAltitudeValidator; 00107 QLineEdit* myTurnRate; 00108 QLabel* myTurnRateLabel; 00109 QLineEdit* myAltitude; 00110 QLabel* myAltitudeLabel; 00111 QLineEdit* myClimbDescendRate; 00112 QLabel* myClimbDescendRateLabel; 00113 }; 00114 00117 class DT_DLL_VRFGUICOREQT DtTaskFlyHeadingAndAltitudeDialogCreator : public DtVrfTaskSetDialogCreator 00118 { 00119 public: 00120 virtual DtTaskSetDialogInterface* create(makVrv::DtDe&, QWidget* parent); 00121 virtual bool supportsType(int, const DtSimStatement*) const; 00122 }; 00123 }