-// Copyright (C) 2014-2022 CEA/DEN, EDF R&D
+// Copyright (C) 2014-2023 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
#include <ModelAPI_Feature.h>
#include <ModelAPI_Plugin.h>
#include <Model_Data.h>
-#include <Model_Document.h>
#include <Model_Objects.h>
#include <Model_Application.h>
#include <Model_Events.h>
bool Model_Session::load(const char* theFileName)
{
+ myIsLoading = true;
bool aRes = ROOT_DOC->load(theFileName, "root", ROOT_DOC);
+ myIsLoading = false;
return aRes;
}
void Model_Session::closeAll()
{
Model_Application::getApplication()->deleteAllDocuments();
- static const Events_ID aDocChangeEvent = Events_Loop::eventByName(EVENT_DOCUMENT_CHANGED);
+ static const Events_ID aDocsCloseEvent = Events_Loop::eventByName(EVENT_DOCUMENTS_CLOSED);
myCurrentDoc = NULL;
- static std::shared_ptr<Events_Message> aMsg(new Events_Message(aDocChangeEvent));
+ static std::shared_ptr<Events_Message> aMsg(new Events_Message(aDocsCloseEvent));
Events_Loop::loop()->send(aMsg);
- Events_Loop::loop()->flush(aDocChangeEvent);
+ Events_Loop::loop()->flush(aDocsCloseEvent);
}
void Model_Session::startOperation(const std::string& theId, const bool theAttachedToNested)
return ROOT_DOC->redoList();
}
+void Model_Session::clearUndoRedo()
+{
+ return ROOT_DOC->clearUndoRedo();
+}
+
bool Model_Session::checkLicense(const std::string& thePluginName)
{
return getPlugin(thePluginName);
{
myPluginsInfoLoaded = false;
myCheckTransactions = true;
+ myIsLoading = false;
ModelAPI_Session::setSession(std::shared_ptr<ModelAPI_Session>(this));
// register the configuration reading listener
Events_Loop* aLoop = Events_Loop::loop();
}
}
}
+
+#ifdef TINSPECTOR
+Handle(TDocStd_Application) Model_Session::application()
+{
+ return Model_Application::getApplication();
+}
+#endif