VR-Forces 4.0.4 Class Documentation
include/terrainEventHandler/terrainAppEventController.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2003 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: terrainAppEventController.h,v $ $Revision: 1.21 $ $State: Exp $
00007 *******************************************************************************/
00008 
00011 
00012 #ifndef TERRAINAPPEVENTCONTROLLER_H_
00013 #define TERRAINAPPEVENTCONTROLLER_H_
00014 
00015 #include "tmEventHandler/tmAppEventController.h"
00016 
00017 class DtTerrainDatabase;
00018 class DtTdbManager;
00019 class DtTerrainFactory;
00020 class DtTerrainWindow;
00021 class DtTerrainDbFactory;
00022 class DtTerrainReaderFactory;
00023 class DtTdbMetafileFactory;
00024 class DtPaperMapFactory;
00025 class DtVectorDataFactory;
00026 class DtPaperMapDatabase;
00027 class DtTerrainWriterFactory;
00028 class DtFilename;
00029 class DtPaperMapDatabase;
00030 class DtExtent;
00031 
00032 #include "terrainEventHandler/terrainEventHandlerDefines.h"
00033 class DT_DLL_terrainEventHandler DtTerrainAppEventController : public DtTMAppEventController
00034 {
00035    Q_OBJECT
00036    
00037 public:   
00038 
00040    DtTerrainAppEventController();
00041    
00043    virtual ~DtTerrainAppEventController();
00044 
00046    virtual DtTdbManager* tdbManager() const;
00047 
00048    virtual const DtTerrainDatabase* terrainDatabase() const;
00049    virtual DtTerrainDatabase* terrainDatabase();
00050 
00051    virtual const DtPaperMapDatabase* paperMapDatabase() const;
00052    virtual DtPaperMapDatabase* paperMapDatabase();
00053 
00054    virtual void setDatabaseDirty(bool b);
00055    virtual bool databaseDirty() const;
00056    
00058    virtual void closeDatabase();
00059 
00061    virtual void databaseSaved(const QString& name);
00062 
00065    static void terrainModified(DtTerrainDatabase* terrain,
00066       const DtExtent& changedVolume, void* usrData);
00067    virtual void processTerrainModified(DtTerrainDatabase* terrain,
00068       const DtExtent& changedVolume);
00069 
00072    virtual void preloadDatabase(DtFilename& name);
00073 
00076    virtual void createDatabaseFromExtent(const DtExtent& extent);
00079    DtTerrainDbFactory* terrainDatabaseFactory();
00080 
00081 signals:
00082 
00083    void terrainDatabaseSet(const DtTerrainDatabase* t);
00084    void paperMapLoaded(const DtPaperMapDatabase* p);
00085    void terrainDatabaseModified(DtTerrainDatabase* t,
00086       const DtExtent& extent);
00087 
00089    void databaseDirty(bool);
00090    void databaseWasSaved(const QString&);
00091 
00092 public slots:
00093 
00097    virtual bool processFileOpenDatabase();
00098    virtual void processFileCloseDatabase(bool askConvert = true);
00099    virtual void processFileSaveDatabase();
00100    virtual void processFileSaveAsDatabase();
00101 
00102    virtual int processDirtyDatabase();
00103    virtual void processTerrainDatabaseInformation();
00104 
00106    virtual bool openDatabase(QString database);
00107 
00109    virtual void processToggleViewPolygons(bool toggle);
00110 
00112    virtual void processToggleViewFeatures(bool);
00113 
00115    virtual void processToggleViewWireframe(bool toggle);
00116 
00118    virtual void processToggleViewContourLines(bool toggle);
00119 
00121    virtual void processToggleViewTerrainShading(bool toggle);
00122 
00124    virtual void processToggleViewPaperMaps(bool toggle);
00125 
00127    virtual void processToggleColorPolygonsUsingSoilType(bool toggle);
00128 
00129 public:
00130    static DtEventController* create();
00131 
00132 protected:
00134    virtual void initFactories();
00135 
00139    virtual void completeDatabaseOpen();
00140 
00141    virtual void aboutToQuit();
00142 
00150    virtual void checkConvertDatabase();
00151 
00154    virtual bool shouldAskDatabaseSave() const;
00155 
00156 protected:
00157 
00159    DtTerrainDbFactory      * myTerrainDbFactory;
00160    DtTerrainReaderFactory  * myTerrainReaderFactory;
00161    DtTerrainWriterFactory  * myTerrainWriterFactory;
00162    DtTdbMetafileFactory    * myMetafileFactory;
00163    DtPaperMapFactory       * myPaperMapFactory;
00164    DtVectorDataFactory     * myVectorDataFactory;
00165 
00166    DtTdbManager      * myTdbManager;
00167 
00168    bool myDatabaseDirty;
00169 
00171    bool myDBConverted;
00172 
00174    bool myConvertingDatabase;
00175 };
00176 
00177 #endif //TERRAINAPPEVENTCONTROLLER_H_
00178 

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)