From 94ada3df8f686ebe230c632ccbe39569457eea31 Mon Sep 17 00:00:00 2001 From: Kalle-Samuli Riihikoski Date: Sun, 11 Oct 2020 00:57:32 +0300 Subject: io_coat3D: New try of liveupdate system --- io_coat3D/__init__.py | 39 ++++++++++++++++++++++++++++++++++----- 1 file changed, 34 insertions(+), 5 deletions(-) diff --git a/io_coat3D/__init__.py b/io_coat3D/__init__.py index 3882fd89..bbf2efb6 100644 --- a/io_coat3D/__init__.py +++ b/io_coat3D/__init__.py @@ -65,6 +65,39 @@ bpy.coat3D['status'] = 0 initial_settings = True global_exchange_folder = '' +liveUpdate = True +mTime = 0 + + +@persistent +def every_3_seconds(): + + global global_exchange_folder + global initial_settings + global liveUpdate + global mTime + + if(initial_settings): + global_exchange_folder = set_exchange_folder() + initial_settings = False + + Export_folder = global_exchange_folder + Export_folder += ('%sexport.txt' % (os.sep)) + + if (os.path.isfile(Export_folder) and mTime != os.path.getmtime(Export_folder)): + + for objekti in bpy.data.objects: + if(objekti.coat3D.applink_mesh): + tex.updatetextures(objekti) + + mTime = os.path.getmtime(Export_folder) + + return 3.0 + +@persistent +def load_handler(dummy): + bpy.app.timers.register(every_3_seconds) + def removeFile(exportfile): @@ -339,8 +372,6 @@ class SCENE_OT_getback(bpy.types.Operator): workflow1(ExportFolder) removeFile(Export_folder) removeFile(Blender_folder) - - elif os.path.isfile(Blender_folder): @@ -348,12 +379,9 @@ class SCENE_OT_getback(bpy.types.Operator): DeleteExtra3DC() workflow2(BlenderFolder) removeFile(Blender_folder) - - return {'FINISHED'} - class SCENE_OT_folder(bpy.types.Operator): bl_idname = "update_exchange_folder.pilgway_3d_coat" bl_label = "Export your custom property" @@ -2072,6 +2100,7 @@ def register(): bpy.types.Scene.coat3D = PointerProperty(type=SceneCoat3D) bpy.types.Mesh.coat3D = PointerProperty(type=MeshCoat3D) bpy.types.Material.coat3D = PointerProperty(type=MaterialCoat3D) + bpy.app.handlers.load_post.append(load_handler) kc = bpy.context.window_manager.keyconfigs.addon -- cgit v1.2.3