diff Platforms/Wasm/Defaults.cpp @ 253:8ff70c04c6df am-2

IObservable/IObserver now working in WASM too
author am@osimis.io
date Tue, 03 Jul 2018 10:48:47 +0200
parents 092db46c6291
children 65562a28fe05
line wrap: on
line diff
--- a/Platforms/Wasm/Defaults.cpp	Tue Jul 03 10:26:56 2018 +0200
+++ b/Platforms/Wasm/Defaults.cpp	Tue Jul 03 10:48:47 2018 +0200
@@ -16,11 +16,11 @@
 static std::unique_ptr<OrthancStone::IBasicApplication> application;
 static std::unique_ptr<OrthancStone::BasicApplicationContext> context;
 static OrthancStone::StartupParametersBuilder startupParametersBuilder;
+static OrthancStone::MessageBroker broker;
 
 static OrthancStone::ChangeObserver changeObserver_;
 static OrthancStone::StatusBar statusBar_;
 
-
 static std::list<std::shared_ptr<OrthancStone::WidgetViewport>> viewports_;
 
 std::shared_ptr<OrthancStone::WidgetViewport> FindViewportSharedPtr(ViewportHandle viewport) {
@@ -66,7 +66,7 @@
 
     printf("CreateWasmApplication\n");
 
-    application.reset(CreateUserApplication());
+    application.reset(CreateUserApplication(broker));
 
     startupParametersBuilder.Clear();
   }
@@ -86,6 +86,7 @@
     application->DeclareStartupOptions(options);
     startupParametersBuilder.GetStartupParameters(parameters, options);
 
+    WasmWebService::SetBroker(broker);
     context.reset(new OrthancStone::BasicApplicationContext(OrthancStone::WasmWebService::GetInstance()));
     application->Initialize(context.get(), statusBar_, parameters);
     application->InitializeWasm();