VR-Forces 4.3 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
locationEntryWidget.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 
17 
19 #include <matrix/vlVector.h>
20 
22 #include <QtGui/QWidget>
23 #include <QtGui/QPixmap>
24 
25 class QLabel;
26 class QGridLayout;
27 class QLineEdit;
28 class QDoubleValidator;
29 class QWidget;
30 class QGroupBox;
31 class QToolButton;
32 
33 namespace makVrf
34 {
35  class DtAltitudeSelectionWidget;
36  class DtLocationEntryWidgetLogic;
37 
43  {
44  Q_OBJECT
45 
46  public:
49  QWidget* parent, const Qt::WindowFlags& flags = 0);
50 
51  //DTOR
52  virtual ~DtLocationEntryWidget();
53 
55  virtual DtVector location() const;
56 
58  virtual DtVector geocentricLocation() const;
59 
61  virtual void setUseInputValidation(bool);
62  virtual bool useInputValidation() const;
63 
65  virtual void setLocation(DtVector, bool resetAltitude = true);
66  virtual void setGeocentricLocation(DtVector, bool resetAltitude = true);
67  virtual void setAltitude(const DtVector& localLocation, bool resetAltitude = true);
68 
70  virtual void setCoordinateSystem(makVrv::DtCoordinateDisplay*);
71 
73  virtual void setHideAltitude(bool b);
74 
76  virtual void setHideLocationZ(bool b);
77 
79  virtual void setXYValidatorsEnabled(bool enabled);
80  virtual bool xyValidatorsEnabled();
81 
83  virtual void setXLabel(const QString&);
84  QString xLabel() const;
85 
86  virtual void setYLabel(const QString&);
87  QString yLabel() const;
88 
89  virtual void setZLabel(const QString&);
90  QString zLabel() const;
91 
93  virtual void setXValue(const QString&);
94  virtual void setYValue(const QString&);
95  virtual void setZValue(const QString&);
96 
97  virtual QString xValue() const;
98  virtual QString yValue() const;
99  virtual QString zValue() const;
100 
101  virtual void setAltitudeAboveSeaLevelVisible(bool b);
102  virtual void setAltitudeAboveGroundLevelVisible(bool b);
103 
104  virtual DtGeodeticCoord geodeticLocation() const;
105 
107  virtual void setCoordinateSystem(
110  coordinateSystem() const;
111 
113  virtual void setCoordinateSystemDecimals(int decimals);
114 
120  virtual void setAltitudeSelectionEnabled(bool);
121  virtual bool altitudeSelectionEnabled() const;
122  virtual void setZEnabled(bool);
123 
125  virtual void setCurrentAltitudeTypeSelection(const DtAltitudeClampType& type);
126 
128  virtual DtAltitudeClampType currentAltitudeTypeSelection() const;
129 
131  virtual double altitudeAboveSeaLevel() const;
132 
134  virtual double altitudeAboveGroundLevel() const;
135 
137  virtual void setAltitudeAboveSeaLevel(double altitude);
138 
140  virtual void setAltitudeAboveGroundLevel(double altitude);
141 
143  virtual void setProcessMouseEvents(bool flag);
144 
146  virtual bool processMouseEvents();
147 
148  virtual void setAltitudeAboveGroundLevelSelected(bool b);
149 
150  virtual void setAltitudeAboveSeaLevelSelected(bool b);
151 
154  virtual void setClampToNearestPolygon(bool);
155 
157  virtual void setIgnoreList(const std::vector<makVrv::DtElementID>&);
158  virtual const std::vector<makVrv::DtElementID>& ignoreList() const;
159 
161  virtual DtReaderWriter* createBoundVariable(const std::string& variableName);
162 
164  virtual void setupFromBoundVariable(const DtReaderWriter* variableName);
165 
167  virtual void setupFrom(const std::vector<makVrv::DtSimEntry*>& data);
168 
169  static makVrv::DtUnicode codeVariableType()
170  {
171  return makVrv::DtUnicode::tr("Location3D");
172  }
173 
177  virtual void setHasMapFocus(bool);
178  virtual void setCanTakeMapFocus(bool);
179  virtual bool canTakeMapFocus() const;
180  virtual bool hasMapFocus() const;
182 
184  virtual void setMaintainCurrentAltitude(bool);
185  virtual bool maintainCurrentAltitude() const;
186 
188  virtual void setupBasedOnEntityType(const DtEntityType&);
189 
190  virtual void setProcessAltitudeMouseClicks(bool b);
191 
194  virtual void setSignalLocationSetOnly(bool);
195  virtual bool signalLocationSetOnly() const;
196 
197  boost::signal<void ()> signal_invalidLocation;
198  boost::signal<void ()> signal_validLocation;
199 
201  virtual bool validateLocation(bool warn = false);
202 
204  virtual void updateValidatorsForCoordinateSystem(makVrv::DtCoordinateDisplay*);
205 
206  virtual bool invalid() const;
207 
208  protected:
209  virtual bool validateDMS(const std::string&) const;
210 
213  virtual void slot_receivedFocus();
214 
216  virtual bool eventFilter(QObject *obj, QEvent *ev);
217 
219  virtual void setRange(double top, double bottom);
220 
222  virtual void setDefaultValue(const std::string&);
223 
226  virtual void setVariableData(const std::string&);
227 
228  protected slots:
229 
231  virtual void canTakeMapFocusChanged();
232 
234  virtual void slot_onPositionChanged();
235 
237  virtual void slot_onPositionEdited();
238 
240  virtual void slot_onAltitudeAboveGroundLevelEdited(double);
241 
243  virtual void slot_onAltitudeAboveSeaLevelEdited(double);
244 
246  virtual void slot_onAltitudeSelectionTypeChanged(const DtAltitudeClampType& );
247 
248  protected:
249 
251  virtual void slot_onClampSelectionChanged(int index);
252 
253  public:
255  QGridLayout* myGridLayout;
264  QPixmap myWarningIcon;
266 
267  protected:
268  QDoubleValidator* myValidator;
269  QDoubleValidator* myLatValidator;
270  QDoubleValidator* myLonValidator;
271  QDoubleValidator* myXValidator;
272  QDoubleValidator* myYValidator;
281  bool myInvalid;
282  };
283 
289  {
290  public:
293  QWidget* parent, const Qt::WindowFlags& flags = 0);
294 
295  //DTOR
297  };
298 
301 }

Document ID: Generated on Wed Mar 11 21:20:57 EDT 2015 from SVN revision 150940
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)