VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties 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 
18 
20 #include <matrix/vlVector.h>
21 
23 #include <QtWidgets/QWidget>
24 #include <QtGui/QPixmap>
25 
26 class QLabel;
27 class QGridLayout;
28 class QLineEdit;
29 class QDoubleValidator;
30 class QValidator;
31 class QWidget;
32 class QGroupBox;
33 class QToolButton;
34 class QValidator;
35 
36 namespace makVrf
37 {
38  class DtAltitudeSelectionWidget;
39  class DtLocationEntryWidgetLogic;
40 
46  {
47  Q_OBJECT
48 
49  public:
52  QWidget* parent, const Qt::WindowFlags& flags = 0, const CreationFlags& cflags = NormalMode);
53 
54  //DTOR
55  virtual ~DtLocationEntryWidget();
56 
58  virtual DtVector location() const;
59 
61  virtual DtVector geocentricLocation() const;
62 
64  virtual void setUseInputValidation(bool);
65  virtual bool useInputValidation() const;
66 
67  virtual void setUseHighestLOD(bool);
68  virtual bool useHighestLOD() const;
69 
71  virtual void blockSignals(bool);
72  bool signalsBlocked() const;
73 
75  virtual void setLocation(DtVector, bool resetAltitude = true);
76  virtual void setGeocentricLocation(DtVector, bool resetAltitude = true);
77  virtual void setAltitude(const DtVector& localLocation, bool resetAltitude = true);
78 
80  virtual void setCoordinateSystem(makVrv::DtCoordinateDisplay*);
81 
83  virtual void setHideAltitude(bool b);
84 
86  virtual void setHideLocationZ(bool b);
87 
89  virtual void setXYValidatorsEnabled(bool enabled);
90  virtual bool xyValidatorsEnabled();
91 
93  virtual void setXLabel(const QString&);
94  QString xLabel() const;
95 
96  virtual void setYLabel(const QString&);
97  QString yLabel() const;
98 
99  virtual void setZLabel(const QString&);
100  QString zLabel() const;
101 
103  virtual void setXValue(const QString&);
104  virtual void setYValue(const QString&);
105  virtual void setZValue(const QString&);
106 
107  virtual QString xValue() const;
108  virtual QString yValue() const;
109  virtual QString zValue() const;
110 
111  DtAltitudeSelectionWidget* altitudeWidget()
112  {
113  return myAltitude;
114  }
115 
116  virtual void setAltitudeAboveSeaLevelVisible(bool b);
117  virtual void setAltitudeAboveGroundLevelVisible(bool b);
118 
119  virtual DtGeodeticCoord geodeticLocation() const;
120 
122  virtual void setCoordinateSystem(
125  coordinateSystem() const;
126 
128  virtual void setCoordinateSystemDecimals(int decimals);
129 
135  virtual void setAltitudeSelectionEnabled(bool);
136  virtual bool altitudeSelectionEnabled() const;
137  virtual void setZEnabled(bool);
138 
140  virtual void setCurrentAltitudeTypeSelection(const DtAltitudeClampType& type);
141 
143  virtual DtAltitudeClampType currentAltitudeTypeSelection() const;
144 
146  virtual double altitudeAboveSeaLevel() const;
147 
149  virtual double altitudeAboveGroundLevel() const;
150 
152  virtual void setAltitudeAboveSeaLevel(double altitude);
153 
155  virtual void setAltitudeAboveGroundLevel(double altitude);
156 
158  virtual void setProcessMouseEvents(bool flag);
159 
161  virtual bool processMouseEvents();
162 
163  virtual void setAltitudeAboveGroundLevelSelected(bool b);
164 
165  virtual void setAltitudeAboveSeaLevelSelected(bool b);
166 
169  virtual void setClampToNearestPolygon(bool);
170 
172  virtual void setIgnoreList(const std::vector<makVrv::DtElementID>&);
173  virtual const std::vector<makVrv::DtElementID>& ignoreList() const;
174 
176  virtual DtReaderWriter* createBoundVariable(const std::string& variableName);
177 
179  virtual void setupFromBoundVariable(const DtReaderWriter* variableName);
180 
182  virtual void setupFrom(const std::vector<makVrv::DtSimEntry*>& data);
183 
184  static makVrv::DtUnicode codeVariableType()
185  {
186  return makVrv::DtUnicode::tr("Location3D");
187  }
188 
192  virtual void setHasMapFocus(bool);
193  virtual void setCanTakeMapFocus(bool);
194  virtual bool canTakeMapFocus() const;
195  virtual bool hasMapFocus() const;
197 
199  virtual void setMaintainCurrentAltitude(bool);
200  virtual bool maintainCurrentAltitude() const;
201 
203  virtual void setupBasedOnEntityType(const DtEntityType&);
204 
205  virtual void setProcessAltitudeMouseClicks(bool b);
206 
209  virtual void setSignalLocationSetOnly(bool);
210  virtual bool signalLocationSetOnly() const;
211 
212  boost::signal<void ()> signal_invalidLocation;
213  boost::signal<void ()> signal_validLocation;
214 
216  virtual bool validateLocation(bool warn = false);
217 
219  virtual void updateValidatorsForCoordinateSystem(makVrv::DtCoordinateDisplay*);
220 
221  virtual bool invalid() const;
222 
223  static std::string designerGroup()
224  {
225  return tr("VR-Forces Entity Manipulation").toUtf8().constData();
226  }
227 
228  static std::string headerFile()
229  {
230  return tr("<vrfGuiCoreQt/locationEntryWidget.h>").toUtf8().constData();
231  }
232 
233  static std::string variableName()
234  {
235  return tr("location").toUtf8().constData();
236  }
237 
238  protected:
239  virtual bool validateDMS(const std::string&) const;
240 
243  virtual void slot_receivedFocus();
244 
246  virtual bool eventFilter(QObject *obj, QEvent *ev);
247 
249  virtual void setRange(double top, double bottom);
250 
252  virtual void setDefaultValue(const std::string&);
253 
254  protected slots:
255 
257  virtual void canTakeMapFocusChanged();
258 
260  virtual void slot_onPositionChanged();
261 
263  virtual void slot_onPositionEdited();
264 
266  virtual void slot_onAltitudeAboveGroundLevelEdited(double);
267 
269  virtual void slot_onAltitudeAboveSeaLevelEdited(double);
270 
272  virtual void slot_onAltitudeSelectionTypeChanged(const DtAltitudeClampType& );
273 
274  protected:
275 
277  virtual void slot_onClampSelectionChanged(int index);
278 
279  public:
280  QWidget* myWidget;
281  QGridLayout* myGridLayout;
290  QPixmap myWarningIcon;
292 
293  protected:
305  bool myInvalid;
308  };
309 
315  {
316  Q_OBJECT
317 
318  public:
321  QWidget* parent, const Qt::WindowFlags& flags = 0, const CreationFlags& cflags = NormalMode);
322 
323  //DTOR
325 
326  static std::string designerGroup()
327  {
328  return tr("VR-Forces Entity Manipulation").toUtf8().constData();
329  }
330 
331  static std::string headerFile()
332  {
333  return tr("<vrfGuiCoreQt/locationEntryWidget.h>").toUtf8().constData();
334  }
335 
336  static std::string variableName()
337  {
338  return tr("locationWithoutAltitude").toUtf8().constData();
339  }
340  };
341 
344 }

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)