![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2008 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtTaskLaunchSmokeDialog.h,v $ $Revision: 1.2 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00011 00013 00014 #pragma once 00015 00016 #include <vrfGuiCoreQt/vrfGuiCoreQt.h> 00017 #include <vrfGuiCoreQt/DtBaseTaskSetDialogInterface.h> 00018 00020 #include <vrvUtil/DtUnitConverterCollection.h> 00021 00022 class QLabel; 00023 class QGridLayout; 00024 class QLineEdit; 00025 class QRadioButton; 00026 class QDoubleValidator; 00027 00028 namespace makVrf 00029 { 00030 class DT_DLL_VRFGUICOREQT DtTaskLaunchSmokeDialog : public DtBaseTaskSetDialogInterface 00031 { 00032 Q_OBJECT 00033 00034 public: 00035 //CTOR 00036 DtTaskLaunchSmokeDialog(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0); 00037 00038 //DTOR 00039 virtual ~DtTaskLaunchSmokeDialog(); 00040 00042 virtual bool atNearestTarget() const; 00043 00045 virtual void setAtNearestTarget(bool); 00046 00048 virtual double heading() const; 00049 00051 virtual void setHeading(double); 00052 00054 virtual void setHeadingLabel(QString label); 00055 00058 virtual void setHeadingDecimalPlaces(int decimalPlaces); 00059 00060 protected: 00061 virtual QWidget* contents(const std::vector<makVrv::DtSimEntry*>& data); 00062 00063 virtual void setupStatement(const DtSimStatement* stmt); 00064 00065 protected: 00067 virtual void setupGui(const std::vector<makVrv::DtSimEntry*>& data); 00068 00072 virtual void slot_onUnitChanged(int attribute, int newVal, int oldVal); 00073 00076 virtual void slot_displayUnitDecimalsChanged( 00077 makVrv::DtUnitConverterCollection::DisplayUnitType, int, int); 00078 00081 virtual void refreshLabels(); 00082 00083 virtual void sendRequest(); 00084 00085 protected slots: 00086 virtual void onTargetTypeChanged(); 00087 00088 public: 00089 QWidget* myCanvas; 00090 QVBoxLayout* myMainLayout; 00091 QGridLayout* myGridLayout; 00092 00093 QRadioButton* myAtNearestTargetButton; 00094 QRadioButton* myTowardHeadingButton; 00095 QLineEdit* myHeading; 00096 QDoubleValidator* myValidator; 00097 }; 00098 00099 class DT_DLL_VRFGUICOREQT DtTaskLaunchSmokeDialogCreator : public DtVrfTaskSetDialogCreator 00100 { 00101 public: 00102 virtual DtTaskSetDialogInterface* create(makVrv::DtDe&, QWidget* parent); 00103 virtual bool supportsType(int, const DtSimStatement*) const; 00104 }; 00105 }