VR-Forces 4.0.4 Class Documentation
include/vrfGuiCoreQt/DtAltitudeSelectionWidgetLogic.h
Go to the documentation of this file.
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 <vrfGuiCore/DtVrfObjectFacadeInterface.h>
00015 
00017 #include <makArchives/DtDisplayUnitsSettingsRecord.h>
00018 #include <vrvCore/DtInputDriverSignaler.h>
00019 #include <vrvUtil/DtSignalConnectionManager.h>
00020 #include <vrvUtil/DtUnitConverterCollection.h>
00021 
00023 #include <matrix/vlVector.h>
00024 
00025 #include <QString>
00026 
00027 namespace makVrv
00028 {
00029    class DtDe;
00030 }
00031 
00032 namespace makVrf
00033 {
00034    class DtAltitudeSelectionWidgetInterface;
00035    class DtAltitudeEventProcessor;           
00036 
00040    class DT_DLL_VRFGUICOREQT DtAltitudeSelectionWidgetLogic
00041    {
00042    public:
00043       //CTOR
00044       DtAltitudeSelectionWidgetLogic(makVrv::DtDe& de, DtAltitudeSelectionWidgetInterface*);
00045 
00046       //DTOR
00047       virtual ~DtAltitudeSelectionWidgetLogic();
00048 
00049    public:
00052       virtual void setLocation(const DtVector& local, bool resetAltitude = true);
00053 
00055       virtual void setMouseClickSupportEnabled(bool);
00056 
00058       virtual void setCoordinateSystem(
00059          const makArchives::DtDisplayUnitsSettingsRecord::CoordSys&);
00060 
00062       const makArchives::DtDisplayUnitsSettingsRecord::CoordSys& 
00063          coordinateSystem() const;         
00064 
00066       virtual void slot_onAltitudeAboveSeaLevelChanged();
00067 
00069       virtual void slot_onAltitudeAboveGroundLevelChanged();
00070 
00072       virtual void slot_onAltitudeAboveSeaLevelEdited();
00073 
00075       virtual void slot_onAltitudeAboveGroundLevelEdited();
00076 
00078       virtual void slot_onAltitudeSelectionTypeChanged();
00079 
00081       virtual void setDatabaseLocation(double x, double y, double z);
00082 
00083       virtual QString zUnitsLabel() const;
00084 
00085       virtual DtGeodeticCoord geodeticLocation() const;
00086 
00088       virtual void setClampToNearestPolygon(bool);
00089 
00091       virtual void setIgnoreList(const std::vector<makVrv::DtElementID>&);
00092       virtual const std::vector<makVrv::DtElementID>& ignoreList() const;
00093 
00094    protected:
00095 
00096       virtual void initialize();
00097 
00099       virtual double groundHeight(const DtVector& loc);
00100 
00101       virtual void refreshLabels();
00102 
00103       virtual void slot_onUnitChanged(int attribute, int from);
00104 
00107       virtual void slot_onDisplayUnitDecimalsChanged(
00108          makVrv::DtUnitConverterCollection::DisplayUnitType, int unit, 
00109          int newValue);
00110 
00111    protected:
00112       makVrv::DtDe&  myDe;
00113 
00114       DtAltitudeSelectionWidgetInterface*  myInterface;
00115       makArchives::DtDisplayUnitsSettingsRecord::CoordSys myCoordSys;
00116       DtAltitudeEventProcessor   *myAltitudeEventProcessor;
00117       DtVector myNearestPoint;
00118 
00119       makVrv::DtSignalConnectionManager myConnectionManager;
00120 
00121       DtAltitudeClampType myAltitudeSelectionType;
00122       DtVector myLastLocation;
00123       bool myInitialized;
00124 
00125       DtGeodeticCoord myGeodeticLocation;
00126       bool myClampToNearestPolygon;
00127 
00128       std::vector<makVrv::DtElementID> myIgnoreList;
00129    };
00130 }

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)