![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2007 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: entityEditorAppController.h,v $ $Revision: 1.10 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00012 #ifndef DtEntityEditorAppController_H_ 00013 #define DtEntityEditorAppController_H_ 00014 00015 #include "tmEventHandler/tmAppEventController.h" 00016 #include "vrfobjparam/paramFact.h" 00017 00018 class DtSimulationModelSet; 00019 class DtSimulationModelSetLoader; 00020 class DtFilename; 00021 class DtVrfObjectParameters; 00022 class DtModelSetEntry; 00023 00024 #include "entityEditorImpl/entityEditorImplDefines.h" 00025 00026 namespace makVrv 00027 { 00028 class DtDe; 00029 class DtForceManager; 00030 } 00031 00032 class DT_DLL_entityeditorimpl DtEntityEditorAppController : public DtTMAppEventController 00033 { 00034 Q_OBJECT 00035 00036 public: 00037 00039 DtEntityEditorAppController(); 00040 00042 virtual ~DtEntityEditorAppController(); 00043 00044 public: 00045 virtual bool loadSimulationModelSet(const DtSimulationModelSet&); 00046 virtual bool saveSimulationModelSet(const DtFilename&); 00047 virtual bool isModified() const; 00048 virtual bool saveIfChanged(); 00049 00051 static void addParameterType(const char* parameter, DtSimObjectParametersCreatorFcn fcn); 00052 00053 makVrv::DtDe* de() 00054 { 00055 return myDe; 00056 } 00057 00058 makVrv::DtForceManager* forceManager(); 00059 00060 public: 00061 static DtEventController* create(); 00062 virtual bool init(); 00063 00064 DtSimulationModelSetLoader* simulationModelSetLoader() const; 00065 00066 virtual void addNewEntity(DtVrfObjectParameters*, const DtString& modelName); 00067 00068 public slots: 00069 virtual void processFileOpenEntityEditorFile(); 00070 virtual void processFileSaveEntityEditorFile(); 00071 virtual void processDeleteExisting(); 00072 virtual void processRevertExisting(); 00073 virtual void processCreateNewEntity(); 00074 virtual void processCreateFromExisting(); 00075 virtual void processEditCreateMenu(); 00076 virtual void processRevertCreateMenu(); 00077 virtual void processEditCategories(); 00078 virtual void processRevertCategories(); 00079 virtual void processFileNewSimulationModelSet(); 00080 virtual void processLoadSmsFile(const QString& file); 00081 virtual void processEditSystemFiles(); 00082 virtual void processEditForces(); 00083 virtual void processCheckSMS(); 00084 00085 protected slots: 00088 virtual void opdEditorMessage(); 00089 00090 signals: 00091 void preSimulationModelSetSave(); 00092 void simulationModelSetLoaded(); 00093 void simulationModelSetSaved(); 00094 void opdEntryAdded(DtVrfObjectParameters*, DtModelSetEntry*); 00095 00096 protected: 00097 virtual void addParameterTypes(); 00098 00101 virtual QString parseCommandLine(const QString& command, QString& commandLine, QStringList& files) const; 00102 00103 protected: 00104 DtSimulationModelSetLoader* mySimulationModelSet; 00105 static QHash<QString, DtSimObjectParametersCreatorFcn> gParameterTypesToAdd; 00106 makVrv::DtDe* myDe; 00107 }; 00108 00109 inline DtSimulationModelSetLoader* DtEntityEditorAppController::simulationModelSetLoader() const 00110 { 00111 return mySimulationModelSet; 00112 } 00113 00114 #endif //DtEntityEditorAppController_H_ 00115 00116