# HG changeset patch
# User Sebastien Jodogne <s.jodogne@gmail.com>
# Date 1657894643 -7200
# Node ID d459477804bff2633d90da4d0a4efe0b17a96f49
# Parent  31fd7aba48ca32efd0790352dd95ba4316fe7ac8
added SetFrame() in Stone Web viewer

diff -r 31fd7aba48ca -r d459477804bf Applications/StoneWebViewer/WebAssembly/StoneWebViewer.cpp
--- a/Applications/StoneWebViewer/WebAssembly/StoneWebViewer.cpp	Fri Jul 15 14:35:05 2022 +0200
+++ b/Applications/StoneWebViewer/WebAssembly/StoneWebViewer.cpp	Fri Jul 15 16:17:23 2022 +0200
@@ -2860,6 +2860,18 @@
   }
 
 
+  void SetFrame(unsigned int frameNumber)
+  {
+    if (cursor_.get() != NULL &&
+        frameNumber < cursor_->GetFramesCount() &&
+        frameNumber != cursor_->GetCurrentIndex())
+    {
+      cursor_->SetCurrentIndex(frameNumber);
+      Redraw();
+    }
+  }
+
+
   void GoToFirstFrame()
   {
     if (cursor_.get() != NULL &&
@@ -4008,6 +4020,21 @@
 
 
   EMSCRIPTEN_KEEPALIVE
+  void SetFrame(const char* canvas,
+                int frameNumber)
+  {
+    try
+    {
+      if (frameNumber >= 0)
+      {
+        GetViewport(canvas)->SetFrame(static_cast<unsigned int>(frameNumber));
+      }
+    }
+    EXTERN_CATCH_EXCEPTIONS;
+  }
+
+
+  EMSCRIPTEN_KEEPALIVE
   void GoToFirstFrame(const char* canvas)
   {
     try