VR-Forces 4.8 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 
13 #if !defined(Q_MOC_RUN)
19 #endif
20 #include <boost/signals2.hpp>
21 
23 #include <matrix/vlVector.h>
24 
26 #include <QtWidgets/QWidget>
27 #include <QtGui/QPixmap>
28 
29 class QGroupBox;
30 class QToolButton;
31 class QValidator;
32 class QVBoxLayout;
33 
34 namespace makVrf
35 {
36  class DtAltitudeSelectionWidget;
37  class DtLocationEntryWidgetLogic;
38  class DtLocationCSEntryInterface;
39  class DtLocationCSEntryCreatorInterface;
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() const;
91 
92  virtual void setAdvancedKeyboardHandling(bool);
93  virtual bool advancedKeyboardHandling() const;
94 
96  virtual void setXLabel(const QString&);
97  QString xLabel() const;
98 
99  virtual void setYLabel(const QString&);
100  QString yLabel() const;
101 
102  virtual void setZLabel(const QString&);
103  QString zLabel() const;
104 
106  virtual void setXValue(const QString&);
107  virtual void setYValue(const QString&);
108  virtual void setZValue(const QString&);
109 
110  virtual QString xValue() const;
111  virtual QString yValue() const;
112  virtual QString zValue() const;
113 
115  {
116  return myAltitude;
117  }
118 
119  virtual void setAltitudeAboveSeaLevelVisible(bool b);
120  virtual void setAltitudeAboveGroundLevelVisible(bool b);
121 
122  virtual void setCreator(int, DtLocationCSEntryCreatorInterface*);
123  virtual DtGeodeticCoord geodeticLocation() const;
124 
126  virtual void setCoordinateSystem(
129  coordinateSystem() const;
130 
132  virtual void setCoordinateSystemDecimals(int decimals);
133 
139  virtual void setAltitudeSelectionEnabled(bool);
140  virtual bool altitudeSelectionEnabled() const;
141  virtual void setZEnabled(bool);
142  virtual void changeAltitudeEnabledSettings(bool);
143 
145  virtual void setCurrentAltitudeTypeSelection(const DtAltitudeClampType& type);
146 
148  virtual DtAltitudeClampType currentAltitudeTypeSelection() const;
149 
151  virtual double altitudeAboveSeaLevel() const;
152 
154  virtual double altitudeAboveGroundLevel() const;
155 
157  virtual void setAltitudeAboveSeaLevel(double altitude);
158 
160  virtual void setAltitudeAboveGroundLevel(double altitude);
161 
163  virtual void setProcessMouseEvents(bool flag);
164 
166  virtual bool processMouseEvents();
167 
168  virtual void setAltitudeAboveGroundLevelSelected(bool b);
169 
170  virtual void setAltitudeAboveSeaLevelSelected(bool b);
171 
174  virtual void setClampToNearestPolygon(bool);
175 
177  virtual void setIgnoreList(const std::vector<makVrv::DtElementID>&);
178  virtual const std::vector<makVrv::DtElementID>& ignoreList() const;
179 
181  virtual DtReaderWriter* createBoundVariable(const std::string& variableName);
182 
184  virtual void setupFromBoundVariable(const DtReaderWriter* variableName);
185 
187  virtual void setupFrom(const std::vector<makVrv::DtSimEntry*>& data);
188 
190  {
191  return makVrv::DtUnicode::tr("Location3D");
192  }
193 
197  virtual void setHasMapFocus(bool);
198  virtual void setCanTakeMapFocus(bool);
199  virtual bool canTakeMapFocus() const;
200  virtual bool hasMapFocus() const;
202 
204  virtual void setMaintainCurrentAltitude(bool);
205  virtual bool maintainCurrentAltitude() const;
206 
208  virtual void setupBasedOnEntityType(const DtEntityType&);
209 
210  virtual void setProcessAltitudeMouseClicks(bool b);
211 
214  virtual void setSignalLocationSetOnly(bool);
215  virtual bool signalLocationSetOnly() const;
216 
217  boost::signals2::signal<void ()> signal_invalidLocation;
218  boost::signals2::signal<void ()> signal_validLocation;
219 
221  virtual bool validateLocation(bool warn = false);
222 
223  virtual void setInvalid(bool);
224  virtual bool invalid() const;
225 
226  static std::string designerGroup()
227  {
228  return tr("VR-Forces Entity Manipulation").toUtf8().constData();
229  }
230 
231  static std::string headerFile()
232  {
233  return tr("<vrfGuiDataEntryWidgets/locationEntryWidget.h>").toUtf8().constData();
234  }
235 
236  static std::string variableName()
237  {
238  return tr("location").toUtf8().constData();
239  }
240 
241  protected:
242  virtual bool validateDMS(const std::string&) const;
243 
246  virtual void slot_receivedFocus();
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(bool complete);
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  virtual void dataEntryWidgetChanged();
279 
280  public:
283  QVBoxLayout* myMainLayout;
285  QWidget* myWidget;
286 
287  protected:
296 
299  bool myInvalid;
303 
305  std::map<int, DtLocationCSEntryCreatorInterface*> myCreators;
306  };
307 
313  {
314  Q_OBJECT
315 
316  public:
319  QWidget* parent, const Qt::WindowFlags& flags = 0, const CreationFlags& cflags = NormalMode);
320 
321  //DTOR
323 
324  static std::string designerGroup()
325  {
326  return tr("VR-Forces Entity Manipulation").toUtf8().constData();
327  }
328 
329  static std::string headerFile()
330  {
331  return tr("<vrfGuiDataEntryWidgets/locationEntryWidget.h>").toUtf8().constData();
332  }
333 
334  static std::string variableName()
335  {
336  return tr("locationWithoutAltitude").toUtf8().constData();
337  }
338  };
339 
342 }
static std::string variableName()
Definition: locationEntryWidget.h:236
bool myAltitudeSelectionEnabled
Definition: locationEntryWidget.h:291
Definition: locationEntryWidgetInterface.h:33
A unicode string.
Definition: DtUnicode.h:33
boost::signals2::signal< void()> signal_invalidLocation
Definition: locationEntryWidget.h:217
static std::string headerFile()
Definition: locationEntryWidget.h:329
QVBoxLayout * myMainLayout
Definition: locationEntryWidget.h:283
CreationFlags
Definition: taskSetVariableWidget.h:115
Definition: locationCSEntryInterface.h:93
Abstract interface class for all coordinate system displays.
Definition: DtCoordinateDisplay.h:27
bool myUseInputValidation
Definition: locationEntryWidget.h:298
static std::string variableName()
Definition: locationEntryWidget.h:334
static makVrv::DtUnicode codeVariableType()
Definition: locationEntryWidget.h:189
Definition: locationCSEntryInterface.h:24
bool myAdvancedKeyboardHandling
Definition: locationEntryWidget.h:294
QWidget * myWidget
Definition: locationEntryWidget.h:285
Definition: readerWriter.h:85
Definition: altitudeSelectionWidget.h:44
bool myInvalid
Definition: locationEntryWidget.h:299
DtLocationEntryWidgetLogic * myLogic
Definition: locationEntryWidget.h:288
DtAltitudeSelectionWidget * myAltitude
Definition: locationEntryWidget.h:281
CoordSys
Enumeration of the different coordinate system types.
Definition: DtDisplayUnitsSettingsRecord.h:30
QToolButton * myCanTakeMapFocus
Definition: locationEntryWidget.h:282
boost::signals2::signal< void()> signal_validLocation
Definition: locationEntryWidget.h:218
bool myHideZLocation
Definition: locationEntryWidget.h:295
bool myBoundIsZero
Definition: locationEntryWidget.h:293
Definition: asyncJobServer.h:37
bool myLockAltitude
Definition: locationEntryWidget.h:290
DtLocationCSEntryInterface * myDataEntryWidget
Definition: locationEntryWidget.h:284
Basic implementation that has a label at the top.
Definition: taskSetVariableWidget.h:215
static DtUnicode tr(const char *ascii)
Ascii translation function, used to be compatible with Qt&#39;s translation tools.
Definition: DtUnicode.h:92
Definition: taskSetVariableWidget.h:393
static std::string designerGroup()
Definition: locationEntryWidget.h:226
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:24
Private to this class.
Definition: locationEntryWidgetLogic.h:30
#define DT_DLL_VRFGUIDATAENTRYWIDGETS
Definition: vrfGuiDataEntryWidgets.h:23
DtTaskSetVariableWidgetCreator< DtLocationEntryWithoutAltitudeWidget > DtLocationEntryWithoutAltitudeWidgetCreator
Definition: locationEntryWidget.h:341
DtTaskSetVariableWidgetCreator< DtLocationEntryWidget > DtLocationEntryWidgetCreator
Definition: locationEntryWidget.h:340
DtAltitudeSelectionWidget * altitudeWidget()
Definition: locationEntryWidget.h:114
Base class to provide boost signal/slot management.
static std::string headerFile()
Definition: locationEntryWidget.h:231
bool myTakeMapFocusEnabled
Definition: locationEntryWidget.h:302
std::map< int, DtLocationCSEntryCreatorInterface * > myCreators
Override factory creators with these. If the one being set is currently displayed, replace.
Definition: locationEntryWidget.h:305
Base class that must be implemented by items that wish to be part of a map focus handler chain...
Definition: mapFocusHandlerManager.h:28
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
Definition: locationEntryWidget.h:44
makVrv::DtCoordinateDisplay * myCoordinateSystem
Definition: locationEntryWidget.h:297
static std::string designerGroup()
Definition: locationEntryWidget.h:324
Specialized version of location entry widget used for scripted tasks that will create a location entr...
Definition: locationEntryWidget.h:312
DtVector myOriginalLocation
Definition: locationEntryWidget.h:292
bool myBlockSignals
Definition: locationEntryWidget.h:300
bool myProcessMouseEvents
Definition: locationEntryWidget.h:289
DtAltitudeClampType
Definition: vrfObjectFacadeInterface.h:38
makVrv::DtSignalConnectionManager myConnections
Definition: locationEntryWidget.h:301

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)