Mercurial > hg > orthanc-stone
comparison Applications/Samples/SimpleViewer/Wasm/simple-viewer.ts @ 508:7105a0bad250 bgo-commands-codegen
- Added HandleSerializedMessage to IStoneApplication (empty impl)
- Split UpdateWebApplication with "WithString" and "WithSerializedMessage" variants
- Due to the modules in TS, globals are now unallowed and the callbacks from C++ to JS are stored in the "window" instance
- Split UpdateStoneApplicationStatusFromCpp with "WithString" and "WithSerializedMessage" variants
- Split NotifyStatusUpdateFromCppToWeb with "WithString" and "WithSerializedMessage" variants
- SendMessageToStoneApplication (C++ global) has been split into SendSerializedMessageToStoneApplication and SendCommandToStoneApplication
- In WasmPlatformApplicationAdapter: HandleMessageFromWeb becomes HandleCommandFromWeb
- In WasmPlatformApplicationAdapter: added HandleSerializedMessageFromWeb
- stonegentool now handles the "json" primitive type (used, a.o., in the VSOL "EditInstance" message)
- Fixed indentation and added json serialization overloads in the stonegentool templates
- Added test of the json primitive type to testWasmIntegrated (in Resources/CodeGeneration)
- Adapted testWasmIntegrated (in Resources/CodeGeneration) to the changes above
author | Benjamin Golinvaux <bgo@osimis.io> |
---|---|
date | Wed, 06 Mar 2019 10:14:59 +0100 |
parents | 5055031f4a06 |
children | 97a16b694321 |
comparison
equal
deleted
inserted
replaced
507:ce49eae4c887 | 508:7105a0bad250 |
---|---|
57 | 57 |
58 var ui = new SimpleViewerUI(); | 58 var ui = new SimpleViewerUI(); |
59 | 59 |
60 // this method is called "from the C++ code" when the StoneApplication is updated. | 60 // this method is called "from the C++ code" when the StoneApplication is updated. |
61 // it can be used to update the UI of the application | 61 // it can be used to update the UI of the application |
62 function UpdateWebApplication(statusUpdateMessageString: string) { | 62 function UpdateWebApplicationWithString(statusUpdateMessageString: string) { |
63 console.log("updating web application: ", statusUpdateMessageString); | 63 console.log("updating web application with string: ", statusUpdateMessageString); |
64 let statusUpdateMessage = JSON.parse(statusUpdateMessageString); | 64 let statusUpdateMessage = JSON.parse(statusUpdateMessageString); |
65 | 65 |
66 if ("event" in statusUpdateMessage) { | 66 if ("event" in statusUpdateMessage) { |
67 let eventName = statusUpdateMessage["event"]; | 67 let eventName = statusUpdateMessage["event"]; |
68 if (eventName == "appStatusUpdated") { | 68 if (eventName == "appStatusUpdated") { |
69 ui.onAppStatusUpdated(statusUpdateMessage["data"]); | 69 ui.onAppStatusUpdated(statusUpdateMessage["data"]); |
70 } | 70 } |
71 } | 71 } |
72 } | 72 } |
73 | |
74 function UpdateWebApplicationWithSerializedMessage(statusUpdateMessageString: string) { | |
75 console.log("updating web application with serialized message: ", statusUpdateMessageString); | |
76 console.log("<not supported in the simple viewer!>"); | |
77 } | |
78 | |
79 // make it available to other js scripts in the application | |
80 (<any> window).UpdateWebApplicationWithString = UpdateWebApplicationWithString; | |
81 (<any> window).UpdateWebApplicationWithSerializedMessage = UpdateWebApplicationWithSerializedMessage; |