12 #ifndef TERRAINAPPEVENTCONTROLLER_H_
13 #define TERRAINAPPEVENTCONTROLLER_H_
17 class DtTerrainDatabase;
21 class DtTerrainDbFactory;
22 class DtTerrainReaderFactory;
23 class DtTdbMetafileFactory;
25 class DtVectorDataFactory;
26 class DtPaperMapDatabase;
27 class DtTerrainWriterFactory;
29 class DtPaperMapDatabase;
46 virtual DtTdbManager* tdbManager()
const;
54 virtual void setDatabaseDirty(
bool b);
55 virtual bool databaseDirty()
const;
61 virtual void databaseSaved(
const QString& name);
65 static void terrainModified(DtTerrainDatabase* terrain,
66 const DtExtent& changedVolume,
void* usrData);
67 virtual void processTerrainModified(DtTerrainDatabase* terrain,
68 const DtExtent& changedVolume);
72 virtual void preloadDatabase(DtFilename& name);
76 virtual void createDatabaseFromExtent(
const DtExtent& extent);
79 DtTerrainDbFactory* terrainDatabaseFactory();
83 void terrainDatabaseSet(
const DtTerrainDatabase* t);
84 void paperMapLoaded(
const DtPaperMapDatabase* p);
85 void terrainDatabaseModified(DtTerrainDatabase* t,
86 const DtExtent& extent);
89 void databaseDirty(
bool);
90 void databaseWasSaved(
const QString&);
97 virtual bool processFileOpenDatabase();
98 virtual void processFileCloseDatabase(
bool askConvert =
true);
99 virtual void processFileSaveDatabase();
100 virtual void processFileSaveAsDatabase();
102 virtual int processDirtyDatabase();
103 virtual void processTerrainDatabaseInformation();
109 virtual void processToggleViewPolygons(
bool toggle);
112 virtual void processToggleViewFeatures(
bool);
115 virtual void processToggleViewWireframe(
bool toggle);
118 virtual void processToggleViewContourLines(
bool toggle);
121 virtual void processToggleViewTerrainShading(
bool toggle);
124 virtual void processToggleViewPaperMaps(
bool toggle);
127 virtual void processToggleColorPolygonsUsingSoilType(
bool toggle);
134 virtual void initFactories();
139 virtual void completeDatabaseOpen();
150 virtual void checkConvertDatabase();
154 virtual bool shouldAskDatabaseSave()
const;
177 #endif //TERRAINAPPEVENTCONTROLLER_H_