Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephen Leger <stephen@3dservices.ch>2020-11-28 22:34:17 +0300
committerStephen Leger <stephen@3dservices.ch>2020-11-28 22:34:17 +0300
commit8ca8233069579b253dcfb881200321b99e1b612c (patch)
tree22dab95df32c704e7c996fc5355c3b135a46fc6a /archipack
parent483cdf6e916279dedb674dfdffd4cac360dc0a62 (diff)
Archipack bugfix: manipulators auto hide
Diffstat (limited to 'archipack')
-rw-r--r--archipack/archipack_manipulator.py9
-rw-r--r--archipack/archipack_snap.py6
-rw-r--r--archipack/archipack_wall2.py2
3 files changed, 12 insertions, 5 deletions
diff --git a/archipack/archipack_manipulator.py b/archipack/archipack_manipulator.py
index fb454f69..f1d91cad 100644
--- a/archipack/archipack_manipulator.py
+++ b/archipack/archipack_manipulator.py
@@ -112,6 +112,12 @@ class ArchipackActiveManip:
# reference to object manipulable instance
self.manipulable = None
+ def is_snapping(self, ctx):
+ """
+ Check if snap is active
+ """
+ return ctx.active_object and ctx.active_object.name.startswith("Archipack_")
+
@property
def dirty(self):
"""
@@ -122,7 +128,8 @@ class ArchipackActiveManip:
return (
self.manipulable is None or
o is None or
- not o.select_get()
+ # The object is not selected and snap is not active
+ not (self.is_snapping(bpy.context) or o.select_get())
)
def exit(self):
diff --git a/archipack/archipack_snap.py b/archipack/archipack_snap.py
index 346b64dd..9d50add7 100644
--- a/archipack/archipack_snap.py
+++ b/archipack/archipack_snap.py
@@ -228,13 +228,13 @@ class ArchipackSnapBase():
"""
helper = bpy.data.objects.get('Archipack_snap_helper')
if helper is not None:
- print("helper found")
+ # print("helper found")
if context.scene.objects.get('Archipack_snap_helper') is None:
- print("link helper")
+ # print("link helper")
# self.link_object_to_scene(context, helper)
context.scene.collection.objects.link(helper)
else:
- print("create helper")
+ # print("create helper")
m = bpy.data.meshes.new("Archipack_snap_helper")
m.vertices.add(count=1)
helper = bpy.data.objects.new("Archipack_snap_helper", m)
diff --git a/archipack/archipack_wall2.py b/archipack/archipack_wall2.py
index 53375992..4469bc9a 100644
--- a/archipack/archipack_wall2.py
+++ b/archipack/archipack_wall2.py
@@ -2257,7 +2257,7 @@ class ARCHIPACK_OT_wall2_draw(ArchipackDrawTool, Operator):
d.t_part = self.parent
if bpy.ops.archipack.manipulate.poll():
- bpy.ops.archipack.manipulate('INVOKE_DEFAULT')
+ bpy.ops.archipack.manipulate('INVOKE_DEFAULT', object_name=o.name)
return {'FINISHED'}