13 #if !defined(Q_MOC_RUN)
20 #include <boost/signals2.hpp>
23 #include <matrix/vlVector.h>
26 #include <QtWidgets/QWidget>
27 #include <QtGui/QPixmap>
39 class DtAltitudeSelectionWidget;
40 class DtLocationEntryWidgetLogic;
41 class DtLocationCSEntryInterface;
42 class DtLocationCSEntryCreatorInterface;
52 Q_PROPERTY(
bool fixeddisplay READ fixedDisplay WRITE setFixedDisplay)
53 Q_PROPERTY(
bool initiallyExpand READ initiallyExpand WRITE setInitiallyExpand)
58 QWidget* parent, const Qt::WindowFlags& flags = 0, const
CreationFlags& cflags = NormalMode);
64 virtual DtVector location() const override;
67 virtual DtVector geocentricLocation() const;
70 virtual
void setUseInputValidation(
bool);
71 virtual
bool useInputValidation() const;
73 virtual QString generatedDescription() const override;
75 virtual
void setUseHighestLOD(
bool);
76 virtual
bool useHighestLOD() const;
79 virtual
void blockSignals(
bool);
80 bool signalsBlocked() const;
83 virtual
void setLocation(DtVector,
bool resetAltitude = true) override;
84 virtual
void setGeocentricLocation(DtVector,
bool resetAltitude = true);
85 virtual
void setAltitude(const DtVector& localLocation,
bool resetAltitude = true) override;
88 virtual
void setCoordinateSystem(makVrv::DtCoordinateDisplay*) override;
91 virtual
void setHideAltitude(
bool b);
94 virtual
void setHideLocationZ(
bool b) override;
97 virtual
void setXYValidatorsEnabled(
bool enabled) override;
98 virtual
bool xyValidatorsEnabled() const override;
100 virtual
void setAdvancedKeyboardHandling(
bool);
101 virtual
bool advancedKeyboardHandling() const;
103 virtual
void updateLocationLabel();
107 virtual
void setCompactMode(
bool);
108 bool compactMode()
const {
return !fixedDisplay(); };
109 virtual bool expanded()
const;
111 virtual void setFixedDisplay(
bool);
112 virtual bool fixedDisplay()
const;
114 virtual void setInitiallyExpand(
bool);
115 virtual bool initiallyExpand()
const;
118 virtual void setXLabel(
const QString&)
override;
119 QString xLabel()
const;
121 virtual void setYLabel(
const QString&)
override;
122 QString yLabel()
const;
124 virtual void setZLabel(
const QString&)
override;
125 QString zLabel()
const;
128 virtual void setChangeWithDisplaySettings(
bool);
131 virtual void setXValue(
const QString&)
override;
132 virtual void setYValue(
const QString&)
override;
133 virtual void setZValue(
const QString&)
override;
134 virtual void clearZValue();
136 virtual QString xValue()
const override;
137 virtual QString yValue()
const override;
138 virtual QString zValue()
const override;
145 virtual const std::set<makVrv::DtUniqueID>& selection()
const override;
147 virtual void setAltitudeAboveSeaLevelVisible(
bool b);
148 virtual void setAltitudeAboveGroundLevelVisible(
bool b);
153 virtual void setLostMapFocus(
bool);
156 virtual void giveMapFocusTo();
159 virtual void takeMapFocusFrom();
161 virtual DtGeodeticCoord geodeticLocation()
const override;
166 coordinateSystem()
const;
169 virtual void setCoordinateSystemDecimals(
int decimals)
override;
176 virtual void setAltitudeSelectionEnabled(
bool)
override;
177 virtual bool altitudeSelectionEnabled()
const override;
178 virtual void setZEnabled(
bool)
override;
179 virtual void changeAltitudeEnabledSettings(
bool)
override;
188 virtual double altitudeAboveSeaLevel()
const override;
191 virtual double altitudeAboveGroundLevel()
const override;
194 virtual void setAltitudeAboveSeaLevel(
double altitude)
override;
197 virtual void setAltitudeAboveGroundLevel(
double altitude);
200 virtual void setProcessMouseEvents(
bool flag);
203 virtual bool processMouseEvents();
205 virtual void setAltitudeAboveGroundLevelSelected(
bool b);
207 virtual void setAltitudeAboveSeaLevelSelected(
bool b);
211 virtual void setClampToNearestPolygon(
bool);
212 virtual void setShowSelectedLook(
bool);
215 return myShowSelectedLook;
219 virtual void setIgnoreList(
const std::vector<makVrv::DtElementID>&);
220 virtual const std::vector<makVrv::DtElementID>& ignoreList()
const;
223 virtual DtReaderWriter* createBoundVariable(
const std::string& variableName)
override;
226 virtual void setupFromBoundVariable(
const DtReaderWriter* variableName)
override;
229 virtual void setupFrom(
const std::set<makVrv::DtUniqueID>& data)
override;
239 virtual bool canTakeMapFocus()
const override;
240 virtual bool hasMapFocus()
const override;
244 virtual void setMaintainCurrentAltitude(
bool);
245 virtual bool maintainCurrentAltitude()
const;
248 virtual void setupBasedOnEntityType(
const DtEntityType&);
250 virtual void setProcessAltitudeMouseClicks(
bool b);
254 virtual void setSignalLocationSetOnly(
bool);
255 virtual bool signalLocationSetOnly()
const;
261 virtual bool validateLocation(
bool warn =
false);
263 virtual void setInvalid(
bool);
264 virtual bool invalid()
const override;
270 virtual void setUseLabelForLocationEntry(
bool);
271 virtual bool useLabelForLocationEntry()
const;
275 return tr(
"VR-Forces Entity Manipulation").toUtf8().constData();
280 return tr(
"<vrfGuiDataEntryWidgets/locationEntryWidget.h>").toUtf8().constData();
285 return tr(
"location").toUtf8().constData();
293 virtual void setDefaultValue(
const std::string&)
override;
295 virtual QSize minimumSizeHint()
const override;
297 virtual void setVariableData(
const QString&)
override;
299 virtual void setSelection(
const std::set<makVrv::DtUniqueID>& set)
override;
302 virtual void showAllItems();
307 virtual void updateLocationLook();
310 virtual bool validateDMS(
const std::string&,
bool northSouth)
const;
313 virtual bool validateDDM(
const std::string&,
bool northSouth)
const;
317 virtual void slot_receivedFocus();
320 virtual void setRange(
double top,
double bottom)
override;
323 virtual void expand();
324 virtual void collapse();
325 virtual void setHasMapFocus(
bool)
override;
326 virtual void setCanTakeMapFocus(
bool)
override;
329 void expansionStateChanged(
bool expanded);
334 virtual void canTakeMapFocusChanged();
337 virtual void slot_onPositionChanged();
340 virtual void slot_onPositionEdited(
bool complete);
343 virtual void slot_onAltitudeAboveGroundLevelEdited(
double);
346 virtual void slot_onAltitudeAboveSeaLevelEdited(
double);
351 virtual void setupSelectionIcon();
356 virtual void slot_onClampSelectionChanged(
int index);
357 virtual void dataEntryWidgetChanged();
359 virtual void selectionChanged(
const std::set<makVrv::DtUniqueID>&)
override;
362 virtual void changeEvent(
QEvent*)
override;
380 bool myShowSelectedLook =
true;
396 bool myInitiallyExpand =
false;
399 std::map<int, DtLocationCSEntryCreatorInterface*>
myCreators;
413 virtual void setReadOnly(
bool b)
override;
430 QWidget* parent,
const Qt::WindowFlags& flags = 0,
const CreationFlags& cflags = NormalMode);
437 return tr(
"VR-Forces Entity Manipulation").toUtf8().constData();
442 return tr(
"<vrfGuiDataEntryWidgets/locationEntryWidget.h>").toUtf8().constData();
447 return tr(
"locationWithoutAltitude").toUtf8().constData();
450 virtual void setCompactMode(
bool b)
override;
453 virtual void updateLocationLabel()
override;
SelectionStatus
Definition: mapFocusHandler.h:34
static std::string variableName()
Definition: locationEntryWidget.h:283
bool showSelectedLook() const
Definition: locationEntryWidget.h:213
bool myAltitudeSelectionEnabled
Definition: locationEntryWidget.h:383
Definition: locationEntryWidgetInterface.h:33
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
Definition: locationEntryWidget.h:402
boost::signals2::signal< void()> signal_invalidLocation
Definition: locationEntryWidget.h:257
static std::string headerFile()
Definition: locationEntryWidget.h:440
QVBoxLayout * myMainLayout
Definition: locationEntryWidget.h:367
Definition: locationCSEntryInterface.h:95
Abstract interface class for all coordinate system displays.
Definition: DtCoordinateDisplay.h:24
bool myUseInputValidation
Definition: locationEntryWidget.h:390
CursorOver
Definition: mapFocusHandler.h:41
bool myUseLabelForLocationEntry
Definition: locationEntryWidget.h:395
static std::string variableName()
Definition: locationEntryWidget.h:445
static makVrv::DtUnicode codeVariableType()
Definition: locationEntryWidget.h:231
Definition: locationCSEntryInterface.h:24
bool myAdvancedKeyboardHandling
Definition: locationEntryWidget.h:386
QWidget * myWidget
Definition: locationEntryWidget.h:369
Definition: readerWriter.h:85
QWidget * myCompactLineWidget
Definition: locationEntryWidget.h:374
bool myInvalid
Definition: locationEntryWidget.h:391
DtLocationEntryWidgetLogic * myLogic
Definition: locationEntryWidget.h:379
DtAltitudeSelectionWidget * myAltitude
Definition: locationEntryWidget.h:365
CoordSys
Enumeration of the different coordinate system types.
Definition: DtDisplayUnitsSettingsRecord.h:30
QToolButton * myCanTakeMapFocus
Definition: locationEntryWidget.h:366
boost::signals2::signal< void()> signal_validLocation
Definition: locationEntryWidget.h:258
bool myHideZLocation
Definition: locationEntryWidget.h:387
QVBoxLayout * myLocationFrameLayout
Definition: locationEntryWidget.h:371
bool myBoundIsZero
Definition: locationEntryWidget.h:385
Definition: asyncJobServer.h:37
bool myLockAltitude
Definition: locationEntryWidget.h:382
DtLocationCSEntryInterface * myDataEntryWidget
Definition: locationEntryWidget.h:368
QPixmap mySelectionIcon
Definition: locationEntryWidget.h:378
static DtUnicode tr(const char *ascii)
Ascii translation function, used to be compatible with Qt's translation tools. This will simply call ...
Definition: DtUnicode.h:92
static std::string designerGroup()
Definition: locationEntryWidget.h:273
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Private to this class.
Definition: locationEntryWidgetLogic.h:30
QLabel * myLocationLabel
Definition: locationEntryWidget.h:373
A class for keeping track of meta data for variables of scripted tasks. The information is currently ...
Definition: scriptedTaskVariable.h:34
#define DT_DLL_VRFGUIDATAENTRYWIDGETS
Definition: vrfGuiDataEntryWidgets.h:22
Qt implementation of the cursor class. Will keep track of the Qt cursor.
Definition: DtQtCursor.h:24
Base class that must be implemented by items that wish to be part of a map focus handler chain...
Definition: mapFocusHandler.h:31
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
DtTaskSetVariableWidgetCreator< DtLocationEntryWithoutAltitudeWidget > DtLocationEntryWithoutAltitudeWidgetCreator
Definition: locationEntryWidget.h:457
DtTaskSetVariableWidgetCreator< DtLocationEntryWidget > DtLocationEntryWidgetCreator
Definition: locationEntryWidget.h:456
DtAltitudeSelectionWidget * altitudeWidget()
Definition: locationEntryWidget.h:140
Base class to provide boost signal/slot management.
static std::string headerFile()
Definition: locationEntryWidget.h:278
bool myTakeMapFocusEnabled
Definition: locationEntryWidget.h:394
std::map< int, DtLocationCSEntryCreatorInterface * > myCreators
Override factory creators with these. If the one being set is currently displayed, replace.
Definition: locationEntryWidget.h:399
QFrame * myLocationFrame
Definition: locationEntryWidget.h:370
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
Definition: locationEntryWidget.h:47
QCheckBox * myInitiallyExpand
Definition: locationEntryWidget.h:416
makVrv::DtCoordinateDisplay * myCoordinateSystem
Definition: locationEntryWidget.h:389
static std::string designerGroup()
Definition: locationEntryWidget.h:435
Specialized version of location entry widget used for scripted tasks that will create a location entr...
Definition: locationEntryWidget.h:423
DtVector myOriginalLocation
Definition: locationEntryWidget.h:384
bool myBlockSignals
Definition: locationEntryWidget.h:392
QToolButton * myExpandCollapseButton
Definition: locationEntryWidget.h:372
bool myProcessMouseEvents
Definition: locationEntryWidget.h:381
DtAltitudeClampType
Definition: vrfObjectFacadeInterface.h:43
QHBoxLayout * myCompactLineWidgetLayout
Definition: locationEntryWidget.h:375
makVrv::DtSignalConnectionManager myConnections
Definition: locationEntryWidget.h:393