![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2003 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: terrainWindow.h,v $ $Revision: 1.56 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00012 #ifndef TERRAINWINDOW_H 00013 #define TERRAINWINDOW_H 00014 00015 #include "tmqt/tmWindow.h" 00016 00017 #include <QtGui/QAction> 00018 00019 class DtTdbDrawer; 00020 class DtQtDrawer; 00021 class DtMenuWidget; 00022 class DtNavigationWidget; 00023 class DtTerrainAreaMap; 00024 class DtTerrainMiniMap; 00025 class DtTerrainRubberBand; 00026 class DtTerrainFactory; 00027 class DtInfoWidget; 00028 class DtIntervisibilityModelData; 00029 class DtTerrainDatabase; 00030 class DtTdbDrawerOptions; 00031 class DtToolbarCallbackStructure; 00032 00033 #include "terrainqt/terrainqtDefines.h" 00034 class DT_DLL_terrainqt DtTerrainWindow : public DtTMWindow 00035 { 00036 Q_OBJECT 00037 00038 public: 00039 00041 DtTerrainWindow(QWidget* parent = NULL, const Qt::WindowFlags& f = 0); 00042 00044 virtual ~DtTerrainWindow(); 00045 00046 public: 00047 virtual void setTerrainSelectionMode(); 00048 virtual void setSegmentSelectionMode(); 00049 virtual void setPolygonSelectionMode(); 00050 00051 public: 00052 00054 static DtBaseWindow* create(QWidget* parent, const Qt::WindowFlags& f); 00055 static QWidget* createTerrainSelectionModeWidgetCallback(QWidget*, QToolBar* b, const DtToolbarCallbackStructure&); 00056 00057 public slots: 00058 00060 00062 virtual void setTerrainDatabase(const DtTerrainDatabase* t); 00063 00064 //New Database loaded 00065 virtual void updateFilenameInUse(const QString& s); 00066 00068 virtual void selectDatabasePoint(const DtPoint& pnt); 00069 00072 virtual void terrainDatabaseModified(DtTerrainDatabase* db, const DtExtent& extent); 00073 00074 protected slots: 00075 virtual bool setDrawerOptions(const DtTdbDrawerOptions& o); 00076 00077 protected: 00078 virtual void initFromAppSettings(); 00079 00081 virtual bool initWindowName(); 00082 00084 virtual bool initFromFactory(const DtTMFactory* f); 00085 00087 virtual bool initInfoWidget(const DtTMFactory* f); 00088 00090 virtual bool createFromFactory(const DtTMFactory* f); 00091 00093 virtual bool createInfoWidget(const DtTMFactory* f); 00094 00096 virtual QWidget* createTerrainSelectionModeWidget(QWidget* parent, QToolBar* b, const DtTMFactory* f); 00097 00099 virtual bool initToolbars(); 00100 00102 virtual bool initConnections(); 00103 00105 virtual bool initMapArea(DtTMMapArea* area, const DtTMFactory* f); 00106 00108 virtual unsigned createMapArea(const DtTMFactory *f); 00109 00111 virtual void tick(); 00112 00114 virtual bool shouldTick(); 00115 00118 virtual void initViewMenuToolbarMap(); 00119 00120 virtual void clearCurrentEvents(); 00121 virtual void postProcessOptions(); 00122 00124 virtual void initTerrainDrawingOptionsToolbar(); 00125 00127 virtual void initMainToolbar(); 00128 virtual void initNewToolbarButton(); 00129 virtual void initOpenToolbarButton(); 00130 virtual void initSaveToolbarButton(); 00131 00132 virtual void refreshOptions(); 00133 virtual bool initMapConnections(DtTMMapArea* area); 00134 00135 virtual void initToolbarFactory(); 00136 virtual void initSelectionModelToolbar(); 00137 00138 virtual void addDefaultShortcutsAndIcons(const DtTMFactory* f); 00139 00140 private: 00141 00143 DtTerrainWindow(const DtTerrainWindow& orig); 00144 00146 DtTerrainWindow& operator=(const DtTerrainWindow& rhs); 00147 00148 protected: 00149 QDockWidget* myInfoToolBar; 00150 DtInfoWidget* myInfoWidget; 00151 QToolBar* myTerrainDrawingOptionsToolBar; 00152 QToolBar* myMainToolBar; 00153 00154 QToolBar* myTerrainSelectionModeToolBar; 00155 00156 bool myFirstTick; 00157 }; 00158 00159 #endif 00160