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);
67 virtual
DtVector geocentricLocation() const;
70 virtual
void setUseInputValidation(
bool);
71 virtual
bool useInputValidation() const;
73 virtual
void setUseHighestLOD(
bool);
74 virtual
bool useHighestLOD() const;
77 virtual
void blockSignals(
bool);
78 bool signalsBlocked() const;
81 virtual
void setLocation(
DtVector,
bool resetAltitude = true);
82 virtual
void setGeocentricLocation(DtVector,
bool resetAltitude = true);
83 virtual
void setAltitude(const DtVector& localLocation,
bool resetAltitude = true);
86 virtual
void setCoordinateSystem(makVrv::DtCoordinateDisplay*);
89 virtual
void setHideAltitude(
bool b);
92 virtual
void setHideLocationZ(
bool b);
95 virtual
void setXYValidatorsEnabled(
bool enabled);
96 virtual
bool xyValidatorsEnabled() const;
98 virtual
void setAdvancedKeyboardHandling(
bool);
99 virtual
bool advancedKeyboardHandling() const;
101 virtual
void updateLocationLabel();
105 virtual
void setCompactMode(
bool);
106 bool compactMode()
const {
return !fixedDisplay(); };
107 virtual bool expanded()
const;
109 virtual void setFixedDisplay(
bool);
110 virtual bool fixedDisplay()
const;
112 virtual void setInitiallyExpand(
bool);
113 virtual bool initiallyExpand()
const;
116 virtual void setXLabel(
const QString&);
117 QString xLabel()
const;
119 virtual void setYLabel(
const QString&);
120 QString yLabel()
const;
122 virtual void setZLabel(
const QString&);
123 QString zLabel()
const;
126 virtual void setChangeWithDisplaySettings(
bool);
129 virtual void setXValue(
const QString&);
130 virtual void setYValue(
const QString&);
131 virtual void setZValue(
const QString&);
132 virtual void clearZValue();
134 virtual QString xValue()
const;
135 virtual QString yValue()
const;
136 virtual QString zValue()
const;
143 virtual const std::set<makVrv::DtUniqueID>& selection()
const override;
145 virtual void setAltitudeAboveSeaLevelVisible(
bool b);
146 virtual void setAltitudeAboveGroundLevelVisible(
bool b);
151 virtual void setLostMapFocus(
bool);
154 virtual void giveMapFocusTo();
157 virtual void takeMapFocusFrom();
159 virtual DtGeodeticCoord geodeticLocation()
const;
162 virtual void setCoordinateSystem(
165 coordinateSystem()
const;
168 virtual void setCoordinateSystemDecimals(
int decimals);
175 virtual void setAltitudeSelectionEnabled(
bool);
176 virtual bool altitudeSelectionEnabled()
const;
177 virtual void setZEnabled(
bool);
178 virtual void changeAltitudeEnabledSettings(
bool);
187 virtual double altitudeAboveSeaLevel()
const;
190 virtual double altitudeAboveGroundLevel()
const;
193 virtual void setAltitudeAboveSeaLevel(
double altitude);
196 virtual void setAltitudeAboveGroundLevel(
double altitude);
199 virtual void setProcessMouseEvents(
bool flag);
202 virtual bool processMouseEvents();
204 virtual void setAltitudeAboveGroundLevelSelected(
bool b);
206 virtual void setAltitudeAboveSeaLevelSelected(
bool b);
210 virtual void setClampToNearestPolygon(
bool);
211 virtual void setShowSelectedLook(
bool);
214 return myShowSelectedLook;
218 virtual void setIgnoreList(
const std::vector<makVrv::DtElementID>&);
219 virtual const std::vector<makVrv::DtElementID>& ignoreList()
const;
222 virtual DtReaderWriter* createBoundVariable(
const std::string& variableName);
225 virtual void setupFromBoundVariable(
const DtReaderWriter* variableName);
228 virtual void setupFrom(
const std::vector<makVrv::DtSimEntry*>& data);
238 virtual bool canTakeMapFocus()
const;
239 virtual bool hasMapFocus()
const;
243 virtual void setMaintainCurrentAltitude(
bool);
244 virtual bool maintainCurrentAltitude()
const;
247 virtual void setupBasedOnEntityType(
const DtEntityType&);
249 virtual void setProcessAltitudeMouseClicks(
bool b);
253 virtual void setSignalLocationSetOnly(
bool);
254 virtual bool signalLocationSetOnly()
const;
260 virtual bool validateLocation(
bool warn =
false);
262 virtual void setInvalid(
bool);
263 virtual bool invalid()
const;
269 virtual void setUseLabelForLocationEntry(
bool);
270 virtual bool useLabelForLocationEntry()
const;
274 return tr(
"VR-Forces Entity Manipulation").toUtf8().constData();
279 return tr(
"<vrfGuiDataEntryWidgets/locationEntryWidget.h>").toUtf8().constData();
284 return tr(
"location").toUtf8().constData();
291 virtual void setDefaultValue(
const std::string&);
293 virtual QSize minimumSizeHint()
const;
295 virtual void setVariableData(
const QString&);
297 virtual void setSelection(
const std::set<makVrv::DtUniqueID>& set)
override;
298 virtual void setSelection(
const std::vector<makVrv::DtSimEntry*>& data)
override;
301 virtual void showAllItems();
306 virtual void updateLocationLook();
309 virtual bool validateDMS(
const std::string&,
bool northSouth)
const;
312 virtual bool validateDDM(
const std::string&,
bool northSouth)
const;
316 virtual void slot_receivedFocus();
319 virtual void setRange(
double top,
double bottom);
322 virtual void expand();
323 virtual void collapse();
324 virtual void setHasMapFocus(
bool);
325 virtual void setCanTakeMapFocus(
bool);
328 void expansionStateChanged(
bool expanded);
333 virtual void canTakeMapFocusChanged();
336 virtual void slot_onPositionChanged();
339 virtual void slot_onPositionEdited(
bool complete);
342 virtual void slot_onAltitudeAboveGroundLevelEdited(
double);
345 virtual void slot_onAltitudeAboveSeaLevelEdited(
double);
350 virtual void setupSelectionIcon();
355 virtual void slot_onClampSelectionChanged(
int index);
356 virtual void dataEntryWidgetChanged();
358 virtual void selectionChanged(
const std::set<makVrv::DtUniqueID>&);
361 virtual void changeEvent(
QEvent*)
override;
379 bool myShowSelectedLook =
true;
395 bool myInitiallyExpand =
false;
398 std::map<int, DtLocationCSEntryCreatorInterface*>
myCreators;
412 virtual void setReadOnly(
bool b)
override;
429 QWidget* parent,
const Qt::WindowFlags& flags = 0,
const CreationFlags& cflags = NormalMode);
436 return tr(
"VR-Forces Entity Manipulation").toUtf8().constData();
441 return tr(
"<vrfGuiDataEntryWidgets/locationEntryWidget.h>").toUtf8().constData();
446 return tr(
"locationWithoutAltitude").toUtf8().constData();
449 virtual void setCompactMode(
bool b);
452 virtual void updateLocationLabel()
override;
SelectionStatus
Definition: mapFocusHandler.h:30
static std::string variableName()
Definition: locationEntryWidget.h:282
bool showSelectedLook() const
Definition: locationEntryWidget.h:212
bool myAltitudeSelectionEnabled
Definition: locationEntryWidget.h:382
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:401
boost::signals2::signal< void()> signal_invalidLocation
Definition: locationEntryWidget.h:256
static std::string headerFile()
Definition: locationEntryWidget.h:439
QVBoxLayout * myMainLayout
Definition: locationEntryWidget.h:366
Definition: locationCSEntryInterface.h:95
Abstract interface class for all coordinate system displays.
Definition: DtCoordinateDisplay.h:24
bool myUseInputValidation
Definition: locationEntryWidget.h:389
CursorOver
Definition: mapFocusHandler.h:37
bool myUseLabelForLocationEntry
Definition: locationEntryWidget.h:394
static std::string variableName()
Definition: locationEntryWidget.h:444
static makVrv::DtUnicode codeVariableType()
Definition: locationEntryWidget.h:230
Definition: locationCSEntryInterface.h:24
bool myAdvancedKeyboardHandling
Definition: locationEntryWidget.h:385
QWidget * myWidget
Definition: locationEntryWidget.h:368
Definition: readerWriter.h:85
QWidget * myCompactLineWidget
Definition: locationEntryWidget.h:373
bool myInvalid
Definition: locationEntryWidget.h:390
DtLocationEntryWidgetLogic * myLogic
Definition: locationEntryWidget.h:378
DtAltitudeSelectionWidget * myAltitude
Definition: locationEntryWidget.h:364
CoordSys
Enumeration of the different coordinate system types.
Definition: DtDisplayUnitsSettingsRecord.h:30
QToolButton * myCanTakeMapFocus
Definition: locationEntryWidget.h:365
boost::signals2::signal< void()> signal_validLocation
Definition: locationEntryWidget.h:257
bool myHideZLocation
Definition: locationEntryWidget.h:386
QVBoxLayout * myLocationFrameLayout
Definition: locationEntryWidget.h:370
bool myBoundIsZero
Definition: locationEntryWidget.h:384
Definition: asyncJobServer.h:37
bool myLockAltitude
Definition: locationEntryWidget.h:381
DtLocationCSEntryInterface * myDataEntryWidget
Definition: locationEntryWidget.h:367
QPixmap mySelectionIcon
Definition: locationEntryWidget.h:377
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:272
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:372
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:27
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
DtTaskSetVariableWidgetCreator< DtLocationEntryWithoutAltitudeWidget > DtLocationEntryWithoutAltitudeWidgetCreator
Definition: locationEntryWidget.h:456
DtTaskSetVariableWidgetCreator< DtLocationEntryWidget > DtLocationEntryWidgetCreator
Definition: locationEntryWidget.h:455
DtAltitudeSelectionWidget * altitudeWidget()
Definition: locationEntryWidget.h:138
Base class to provide boost signal/slot management.
static std::string headerFile()
Definition: locationEntryWidget.h:277
bool myTakeMapFocusEnabled
Definition: locationEntryWidget.h:393
std::map< int, DtLocationCSEntryCreatorInterface * > myCreators
Override factory creators with these. If the one being set is currently displayed, replace.
Definition: locationEntryWidget.h:398
QFrame * myLocationFrame
Definition: locationEntryWidget.h:369
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:72
Definition: locationEntryWidget.h:47
QCheckBox * myInitiallyExpand
Definition: locationEntryWidget.h:415
makVrv::DtCoordinateDisplay * myCoordinateSystem
Definition: locationEntryWidget.h:388
static std::string designerGroup()
Definition: locationEntryWidget.h:434
Specialized version of location entry widget used for scripted tasks that will create a location entr...
Definition: locationEntryWidget.h:422
DtVector myOriginalLocation
Definition: locationEntryWidget.h:383
bool myBlockSignals
Definition: locationEntryWidget.h:391
QToolButton * myExpandCollapseButton
Definition: locationEntryWidget.h:371
bool myProcessMouseEvents
Definition: locationEntryWidget.h:380
DtAltitudeClampType
Definition: vrfObjectFacadeInterface.h:44
QHBoxLayout * myCompactLineWidgetLayout
Definition: locationEntryWidget.h:374
makVrv::DtSignalConnectionManager myConnections
Definition: locationEntryWidget.h:392