#include <ModelAPI_Events.h>
+#ifdef DFBROWSER
+#include <DFBrowserAPI_Communicator.hxx>
+
+static bool FirstCall = true;
+#endif
+
IMPLEMENT_STANDARD_HANDLE(Model_Application, TDocStd_Application)
IMPLEMENT_STANDARD_RTTIEXT(Model_Application, TDocStd_Application)
-using namespace std;
-
static Handle_Model_Application TheApplication = new Model_Application;
//=======================================================================
Handle(Model_Application) Model_Application::getApplication()
{
+#ifdef DFBROWSER
+ if (FirstCall) {
+ DFBrowserAPI_Communicator* aCommunicator =
+ DFBrowserAPI_Communicator::loadPluginLibrary("DFBrowser.dll");
+ aCommunicator->setApplication(TheApplication);
+ FirstCall = false;
+ }
+#endif
return TheApplication;
}
{
std::map<int, std::shared_ptr<Model_Document> >::iterator aDoc = myDocs.begin();
for(; aDoc != myDocs.end(); aDoc++) {
- if (!aDoc->second->isOpened()) // here is main document was closed before subs and closed subs
+ if (aDoc->second->isOpened()) // here is main document was closed before subs and closed subs
aDoc->second->close(true);
}
myDocs.clear();
int Model_Application::generateDocumentId()
{
- int aResult = myDocs.size();
- for(; myDocs.find(aResult) != myDocs.end(); aResult++); // count until the result id is unique
+ int aResult = int(myDocs.size());
+ for(; myDocs.find(aResult) != myDocs.end(); aResult++) {} // count until the result id is unique
return aResult;
}