1111from ._initialization_params import init_params_dict , init_key_aliases
1212from ._method_types import deferred_methods
1313from .integrations import _detect_render_type , _get_viewer_image , _get_viewer_point_sets
14- from .integrations .environment import IN_JUPYTERLITE
14+ from .integrations .environment import ENVIRONMENT , Env
1515from .render_types import RenderType
1616from .viewer_config import ITK_VIEWER_SRC , PYDATA_SPHINX_HREF , MUI_HREF
1717
@@ -36,7 +36,7 @@ def __init__(
3636 self .init_data = {}
3737 self .img = display (HTML (f'<div />' ), display_id = str (uuid .uuid4 ()))
3838 self .wid = None
39- if not IN_JUPYTERLITE :
39+ if ENVIRONMENT is not Env . JUPYTERLITE :
4040 self .viewer_event = threading .Event ()
4141 self .data_event = threading .Event ()
4242
@@ -100,11 +100,10 @@ async def run(self, ctx):
100100 config = config ,
101101 )
102102 _viewer_count += 1
103- if not IN_JUPYTERLITE :
103+ if ENVIRONMENT is not Env . JUPYTERLITE :
104104 itk_viewer .registerEventListener (
105105 'renderedImageAssigned' , self .set_event
106106 )
107- if not IN_JUPYTERLITE :
108107 # Once the viewer has been created any queued requests can be run
109108 asyncio .get_running_loop ().call_soon_threadsafe (self .viewer_event .set )
110109
@@ -162,7 +161,7 @@ def __init__(
162161 self .viewer_rpc = ViewerRPC (
163162 ui_collapsed = ui_collapsed , rotate = rotate , ui = ui , ** add_data_kwargs
164163 )
165- if not IN_JUPYTERLITE :
164+ if ENVIRONMENT is not Env . JUPYTERLITE :
166165 self .bg_jobs = bg .BackgroundJobManager ()
167166 self .queue = queue .Queue ()
168167 self .deferred_queue = queue .Queue ()
@@ -173,6 +172,10 @@ def __init__(
173172 def loop (self ):
174173 return asyncio .get_running_loop ()
175174
175+ @property
176+ def has_viewer (self ):
177+ return hasattr (self .viewer_rpc , 'itk_viewer' )
178+
176179 async def run_queued_requests (self ):
177180 def _run_queued_requests (queue ):
178181 method_name , args , kwargs = queue .get ()
@@ -195,7 +198,7 @@ def queue_worker(self):
195198 loop .run_until_complete (task )
196199
197200 def queue_request (self , method , * args , ** kwargs ):
198- if IN_JUPYTERLITE or hasattr ( self .viewer_rpc , 'itk_viewer' ) :
201+ if ENVIRONMENT is Env . JUPYTERLITE or self .has_viewer :
199202 fn = getattr (self .viewer_rpc .itk_viewer , method )
200203 fn (* args , ** kwargs )
201204 elif method in deferred_methods ():
0 commit comments