feat: connexion state reporting from operator
This commit is contained in:
Submodule libs/replication updated: 203cb797c0...c90f4ce33d
28
operators.py
28
operators.py
@ -79,15 +79,15 @@ class SessionStartOperator(bpy.types.Operator):
|
|||||||
supported_bl_types.append(_type.bl_id)
|
supported_bl_types.append(_type.bl_id)
|
||||||
|
|
||||||
bpy_factory.register_type(
|
bpy_factory.register_type(
|
||||||
_type.bl_class,
|
_type.bl_class,
|
||||||
_type.bl_rep_class,
|
_type.bl_rep_class,
|
||||||
timer=_type.bl_delay_refresh,
|
timer=_type.bl_delay_refresh,
|
||||||
automatic=True)
|
automatic=True)
|
||||||
|
|
||||||
if _type.bl_delay_apply > 0:
|
if _type.bl_delay_apply > 0:
|
||||||
delayables.append(delayable.ApplyTimer(
|
delayables.append(delayable.ApplyTimer(
|
||||||
timout=_type.bl_delay_apply,
|
timout=_type.bl_delay_apply,
|
||||||
target_type=_type.bl_rep_class))
|
target_type=_type.bl_rep_class))
|
||||||
|
|
||||||
client = Session(factory=bpy_factory)
|
client = Session(factory=bpy_factory)
|
||||||
|
|
||||||
@ -98,8 +98,6 @@ class SessionStartOperator(bpy.types.Operator):
|
|||||||
port=settings.port
|
port=settings.port
|
||||||
)
|
)
|
||||||
settings.is_admin = True
|
settings.is_admin = True
|
||||||
if settings.init_scene:
|
|
||||||
init_supported_datablocks(supported_bl_types)
|
|
||||||
else:
|
else:
|
||||||
client.connect(
|
client.connect(
|
||||||
id=settings.username,
|
id=settings.username,
|
||||||
@ -107,6 +105,15 @@ class SessionStartOperator(bpy.types.Operator):
|
|||||||
port=settings.port
|
port=settings.port
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if client.state == 0:
|
||||||
|
self.report(
|
||||||
|
{'ERROR'},
|
||||||
|
"A session is already hosted on this address")
|
||||||
|
return {"CANCELLED"}
|
||||||
|
|
||||||
|
if settings.init_scene and settings.is_admin:
|
||||||
|
init_supported_datablocks(supported_bl_types)
|
||||||
|
|
||||||
usr = presence.User(
|
usr = presence.User(
|
||||||
username=settings.username,
|
username=settings.username,
|
||||||
color=(settings.client_color.r,
|
color=(settings.client_color.r,
|
||||||
@ -128,7 +135,9 @@ class SessionStartOperator(bpy.types.Operator):
|
|||||||
|
|
||||||
for d in delayables:
|
for d in delayables:
|
||||||
d.register()
|
d.register()
|
||||||
|
self.report(
|
||||||
|
{'INFO'},
|
||||||
|
"connexion on tcp://{}:{}".format(settings.ip,settings.port))
|
||||||
return {"FINISHED"}
|
return {"FINISHED"}
|
||||||
|
|
||||||
|
|
||||||
@ -155,7 +164,6 @@ class SessionStopOperator(bpy.types.Operator):
|
|||||||
|
|
||||||
presence.renderer.stop()
|
presence.renderer.stop()
|
||||||
|
|
||||||
|
|
||||||
return {"FINISHED"}
|
return {"FINISHED"}
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user