![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2008 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtVrfSaveScenarioHandler.h,v $ $Revision: 1.1 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00011 00013 00014 #pragma once 00015 00016 #include <vrfGuiCoreQt/vrfGuiCoreQt.h> 00017 00018 #include <vrvUtil/DtVirtualBaseClass.h> 00019 #include <vrvUtil/signalslib.h> 00020 #include <vrvCore/DtDe.h> 00021 00022 #include <boost/signal.hpp> 00023 00024 #include <QtCore/QString> 00025 00026 class DtScenario; 00027 00028 namespace makVrf 00029 { 00031 class DT_DLL_VRFGUICOREQT DtVrfSaveScenarioHandler : public makVrv::DtVirtualBaseClass 00032 { 00033 public: 00034 DtVrfSaveScenarioHandler(makVrv::DtDe&); 00035 virtual ~DtVrfSaveScenarioHandler(); 00036 00038 static DtVrfSaveScenarioHandler& instance(makVrv::DtDe& de); 00039 00040 virtual bool saveScenarioAs(); 00041 00044 virtual bool saveScenario(bool forceOverwrite = false); 00045 00046 virtual void setScenario(const DtScenario*); 00047 00050 virtual bool saveScenario(const QString& s, bool setAsSaved = true); 00051 virtual QString makeRelativeTo(QString origFile, QString path) const; 00052 00053 virtual void checkpointScenario(const QString& baseFilename, bool forceOverwrite = false); 00054 virtual QString checkpointIdentifier(const QString& filename) const; 00055 virtual QString getTimeString(double time) const; 00056 00057 const DtScenario* scenario() const 00058 { 00059 return myScenario; 00060 } 00061 00062 DtFilename savedFilename() const; 00063 00066 boost::signal<void (DtScenario*)> signal_scenarioAboutToBeSaved; 00067 00068 protected: 00069 virtual QString createFilterList() const; 00070 virtual QString startingDirectory() const; 00071 00072 virtual QString relativePath() const; 00073 virtual QString dataFolder() const; 00074 00075 static bool preserveMappings(void*); 00076 virtual bool processPreserveMappings(); 00077 00078 protected: 00080 virtual bool saveSelectionGroups(const QString& scenarioName, QString& selectionGroups) const; 00081 virtual bool saveOverlays(const QString& scenarioName, QString& overlayName) const; 00082 00084 virtual bool saveGuiSettings(const QString& scenarioname, QString& guiSettingsName) const; 00085 00086 protected: 00087 makVrv::DtDe& myDe; 00088 QString myStartingDirectory; 00089 DtScenario* myScenario; 00090 double myLastSavedSimTime; 00091 }; 00092 }