From be348b9c21db566b956b02fc6751c86cf367a17a Mon Sep 17 00:00:00 2001 From: Jaswant Panchumarti Date: Wed, 15 Apr 2026 14:31:56 -0400 Subject: [PATCH] feat: allow specific object updates in LocalView --- src/trame_vtklocal/widgets/vtklocal.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/trame_vtklocal/widgets/vtklocal.py b/src/trame_vtklocal/widgets/vtklocal.py index a56cff0..ff3c3da 100644 --- a/src/trame_vtklocal/widgets/vtklocal.py +++ b/src/trame_vtklocal/widgets/vtklocal.py @@ -209,11 +209,20 @@ def update_throttle(self): """ return self._update_throttle - def update(self, push_camera=False): - """Sync view by pushing updates to client""" + def update(self, push_camera=False, obj_to_update=None): + """Sync view by pushing updates to client. + + :param push_camera: If ``True``, include camera state in the update. + :param obj_to_update: Pass objects registered with :meth:`register_vtk_object` + when you only want to update a specific subset of the scene. When not provided, + the default behavior is to update the render window together with all + registered objects tracked by this view. + """ + if obj_to_update is None: + obj_to_update = [self._render_window, *self.__registered_obj] self.api.update( push_camera=push_camera, - obj_to_update=[self._render_window, *self.__registered_obj], + obj_to_update=obj_to_update, ) self.server.js_call(self.__ref, "update")