![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2011 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 00008 00010 00011 #pragma once 00012 00013 #include <vrfGuiCoreQt/vrfGuiCoreQt.h> 00014 #include <vrfGuiCoreQt/DtAltitudeSelectionWidgetInterface.h> 00015 00017 #include <vrvCore/DtInputDriverSignaler.h> 00018 #include <vrvCore/DtSharedDisplayUnitsSettings.h> 00019 00021 #include <matrix/vlVector.h> 00022 00023 namespace makVrv 00024 { 00025 class DtDe; 00026 } 00027 00028 namespace makVrf 00029 { 00030 class DtLocationEntryWidgetInterface; 00031 class DtLocationEntryEventProcessor; 00032 00033 class DT_DLL_VRFGUICOREQT DtLocationEntryWidgetLogic 00034 { 00035 public: 00040 DtLocationEntryWidgetLogic(bool preferAltitudeSelection, 00041 makVrv::DtDe& de, DtLocationEntryWidgetInterface*); 00042 00043 //DTOR 00044 virtual ~DtLocationEntryWidgetLogic(); 00045 00047 virtual void enableEventProcessor(bool flag); 00048 00049 public: 00050 virtual void slot_onPositionChanged(); 00051 00052 virtual void slot_onPositionEdited(); 00053 00054 virtual void slot_onAltitudeAboveGroundLevelEdited(double); 00055 00056 virtual void slot_onAltitudeAboveSeaLevelEdited(double); 00057 00058 virtual void slot_onAltitudeSelectionTypeChanged(const DtAltitudeClampType& type); 00059 00060 virtual void slot_onClampSelectionChanged(int); 00061 00062 virtual void slot_onCoordinateSystemChanged( 00063 makVrv::DtSharedDisplayUnitsSettings::CoordSys); 00064 00067 virtual void slot_onCoordinateSystemDecimalsChanged( 00068 makVrv::DtSharedDisplayUnitsSettings::CoordSys, int newValue, 00069 int oldValue); 00070 00071 virtual void slot_onUnitChanged(int attribute, int from); 00072 00074 virtual DtVector location() const; 00075 00077 virtual DtVector geocentricLocation() const; 00078 00084 virtual void setCoordinateSystem( 00085 const makVrv::DtSharedDisplayUnitsSettings::CoordSys& system); 00086 00087 const makVrv::DtSharedDisplayUnitsSettings::CoordSys& 00088 coordinateSystem() const 00089 { 00090 return myCoordSys; 00091 } 00092 00095 virtual void setLocation(const DtVector& local, bool resetAltitude = true); 00096 virtual void setGeocentricLocation(const DtVector& local, bool resetAltitude = true); 00097 00098 virtual void setDatabaseLocation(double x, double y, double z); 00099 00100 virtual void setupLabels(); 00101 00102 protected: 00103 00104 virtual void initialize(); 00105 00106 protected: 00107 makVrv::DtDe& myDe; 00108 00109 DtLocationEntryWidgetInterface* myInterface; 00110 makVrv::DtSharedDisplayUnitsSettings::DistanceUnits myDistanceUnits; 00111 makVrv::DtSharedDisplayUnitsSettings::DistanceUnits myAltitudeUnits; 00112 makVrv::DtSharedDisplayUnitsSettings::CoordSys myCoordSys; 00113 DtLocationEntryEventProcessor* myLocationEntryEventProcessor; 00114 bool myPreferAltitudeSelection; 00115 }; 00116 }