VR-Forces 4.2 Class Documentation
DtIndirectArtillerySettingsDataWidget.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 
10 #pragma once
11 
12 #include <vrvUtil/signalslib.h>
14 #include <vrfGuiCoreQt/indirectArtilleryPropertiesWidget.hpp>
16 
17 
19 #include <vrvUtil/DtUnitConverterCollection.h>
20 #include <vrvUtil/DtSignalConnectionManager.h>
21 #include <vrvUtil/DtUnicode.h>
22 #include <vrvUtil/DtVirtualBaseClass.h>
23 
24 #include <QTime>
25 
27 class DtEntityType;
28 class QString;
29 class DtString;
30 
31 
32 namespace makVrf
33 {
34  class DtIndirectArtillerySettingsDataLogic;
35 
40  {
41 
42  Q_OBJECT
43 
44  public:
45 
47  DtIndirectArtillerySettingsDataWidget(makVrv::DtDe& de, QWidget* parent);
48 
51 
52  virtual void setStartImmediate(bool);
53  virtual bool startImmediate() const;
54 
55  virtual void setStartAtTime(bool);
56  virtual bool startAtTime() const;
57 
58  virtual void setStartTimeEnabled(bool b);
59  virtual void setStartTime(int days, const QTime&);
60  virtual int startTime() const;
61 
62  virtual void setTimeBetweenSalvosEnabled(bool);
63  virtual void setTimeBetweenSalvos(const QTime&);
64  virtual int timeBetweenSalvos() const;
65 
66  virtual void setScatterTimeSpinBoxEnabled(bool);
67  virtual void setScatterTime(int);
68  virtual int scatterTime() const;
69 
70  virtual void setNumberOfSalvos(int);
71  virtual int numberOfSalvos() const;
72 
73  virtual void setRoundsPerSalvo(int);
74  virtual int roundsPerSalvo() const;
75 
76  virtual void setMunitionType(const DtEntityType&);
77  virtual DtEntityType munitionType() const;
78 
79  virtual void setAltitudeAboveTerrainUnits(makVrv::DtUnicode);
80 
81  virtual void setAltitudeAboveTerrain(double d);
82  virtual double altitudeAboveTerrain() const;
83 
84  virtual void addMunitionType(const QString& muni, const DtString& type);
85 
87  virtual void setupGui();
88 
90  virtual DtIndirectArtillerySettingsDataLogic* logic();
91 
93  boost::signal<void ()> signal_indirectArtilleryDataChanged;
94 
95  protected slots:
97  virtual void onIndirectFireDataChanged();
98 
99  protected:
100 
102  virtual void setupConnections();
103 
104  virtual DtIndirectArtillerySettingsDataLogic* createLogic();
105 
106  virtual int timeToSeconds(const QTime&) const;
107 
108  public:
109  Ui_DtIndirectArtilleryPropertiesWidgetUI myUiImpl;
110 
111  protected:
112  makVrv::DtDe& myDe;
114  };
115 
118  {
119  public:
122 
124  virtual void setupGui();
125 
127  virtual void setupFromData(const DtIfIndirectArtilleryData&);
128 
129  boost::signal<void (const DtIfIndirectArtilleryData&)> signal_indirectArtilleryDataChanged;
130 
131  protected:
132 
134  virtual void slot_onIndirctArtilleryDataChanged();
135 
137  virtual void createConnections();
138 
140  virtual void dayTimeFor(int& days, QTime& time, int seconds) const;
141  virtual QTime timeFor(int seconds) const;
142 
144  virtual void slot_displayUnitChanged(makVrv::DtUnitConverterCollection::DisplayUnitType type, int unit, int oldUnit);
145 
148  virtual void slot_displayUnitDecimalsChanged(
149  makVrv::DtUnitConverterCollection::DisplayUnitType, int, int);
150 
151  protected:
153  virtual void indirectArtilleryChanged(const DtIfIndirectArtilleryData&);
154 
156  virtual DtIfIndirectArtilleryData defaultData() const;
157 
158  protected:
160  makVrv::DtDe& myDe;
161  makVrv::DtSignalConnectionManager myConnections;
163  };
164 
166  class DT_DLL_VRFGUICOREQT DtIndirectArtillerySettingsDataWidgetCreator : public makVrv::DtVirtualBaseClass
167  {
168  public:
171 
173  static DtIndirectArtillerySettingsDataWidgetCreator& instance(makVrv::DtDe& de);
174 
176  static void registerInstance(makVrv::DtDe&, DtIndirectArtillerySettingsDataWidgetCreator*);
177 
178  virtual DtIndirectArtillerySettingsDataWidget* create(makVrv::DtDe& de, QWidget* parent);
179  };
180 }

Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)