[Bf-extensions-cvs] [2d8edd6d] master: Fix T76049: Errors after adding a Gear or Worm (extra objects)
Vladimir Spivakcwolf3d
noreply at git.blender.org
Sun May 3 18:56:32 CEST 2020
Commit: 2d8edd6dedc8dae2f5ac9afa2cbb867373c476ed
Author: Vladimir Spivak(cwolf3d)
Date: Sun May 3 19:55:52 2020 +0300
Branches: master
https://developer.blender.org/rBA2d8edd6dedc8dae2f5ac9afa2cbb867373c476ed
Fix T76049: Errors after adding a Gear or Worm (extra objects)
===================================================================
M add_mesh_extra_objects/Wallfactory.py
M add_mesh_extra_objects/__init__.py
M add_mesh_extra_objects/add_mesh_beam_builder.py
M add_mesh_extra_objects/add_mesh_gears.py
M add_mesh_extra_objects/add_mesh_gemstones.py
M add_mesh_extra_objects/add_mesh_honeycomb.py
M add_mesh_extra_objects/add_mesh_pipe_joint.py
M add_mesh_extra_objects/add_mesh_pyramid.py
M add_mesh_extra_objects/add_mesh_rocks/rockgen.py
M add_mesh_extra_objects/add_mesh_round_brilliant.py
M add_mesh_extra_objects/add_mesh_round_cube.py
M add_mesh_extra_objects/add_mesh_star.py
M add_mesh_extra_objects/add_mesh_supertoroid.py
M add_mesh_extra_objects/add_mesh_teapot.py
M add_mesh_extra_objects/add_mesh_torusknot.py
M add_mesh_extra_objects/add_mesh_twisted_torus.py
===================================================================
diff --git a/add_mesh_extra_objects/Wallfactory.py b/add_mesh_extra_objects/Wallfactory.py
index a4e87574..ede91fc3 100644
--- a/add_mesh_extra_objects/Wallfactory.py
+++ b/add_mesh_extra_objects/Wallfactory.py
@@ -665,6 +665,10 @@ class add_mesh_wallb(Operator, object_utils.AddObjectHelper):
if not self.ConstructTog:
return {'FINISHED'}
+ # turn off 'Enter Edit Mode'
+ use_enter_edit_mode = bpy.context.preferences.edit.use_enter_edit_mode
+ bpy.context.preferences.edit.use_enter_edit_mode = False
+
# enter the settings for the wall dimensions (area)
# start can't be zero - min/max don't matter [if max less than end] but zero don't workie.
# start can't exceed end.
@@ -917,6 +921,12 @@ class add_mesh_wallb(Operator, object_utils.AddObjectHelper):
context.active_object.name = name_active_object
bpy.ops.object.mode_set(mode='EDIT')
+ if use_enter_edit_mode:
+ bpy.ops.object.mode_set(mode = 'EDIT')
+
+ # restore pre operator state
+ bpy.context.preferences.edit.use_enter_edit_mode = use_enter_edit_mode
+
return {'FINISHED'}
def WallParameters():
diff --git a/add_mesh_extra_objects/__init__.py b/add_mesh_extra_objects/__init__.py
index 4f00c450..14bde07d 100644
--- a/add_mesh_extra_objects/__init__.py
+++ b/add_mesh_extra_objects/__init__.py
@@ -249,6 +249,9 @@ def Extras_contex_menu(self, context):
obj = context.object
layout = self.layout
+ if obj == None:
+ return
+
if 'Gear' in obj.data.keys():
props = layout.operator("mesh.primitive_gear", text="Change Gear")
props.change = True
diff --git a/add_mesh_extra_objects/add_mesh_beam_builder.py b/add_mesh_extra_objects/add_mesh_beam_builder.py
index ceda4ffc..38944c58 100644
--- a/add_mesh_extra_objects/add_mesh_beam_builder.py
+++ b/add_mesh_extra_objects/add_mesh_beam_builder.py
@@ -730,11 +730,6 @@ class addBeam(Operator, object_utils.AddObjectHelper):
default=0,
description="Angle beam edges"
)
- Cursor: BoolProperty(
- name="Use 3D Cursor",
- default=False,
- description="Draw the beam where the 3D Cursor is"
- )
def draw(self, context):
layout = self.layout
@@ -742,7 +737,6 @@ class addBeam(Operator, object_utils.AddObjectHelper):
box = layout.box()
split = box.split(factor=0.85, align=True)
split.prop(self, "Type", text="")
- split.prop(self, "Cursor", text="")
box.prop(self, "beamZ")
box.prop(self, "beamX")
@@ -760,6 +754,10 @@ class addBeam(Operator, object_utils.AddObjectHelper):
box.prop(self, 'rotation', expand=True)
def execute(self, context):
+ # turn off 'Enter Edit Mode'
+ use_enter_edit_mode = bpy.context.preferences.edit.use_enter_edit_mode
+ bpy.context.preferences.edit.use_enter_edit_mode = False
+
if bpy.context.mode == "OBJECT":
if context.selected_objects != [] and context.active_object and \
@@ -781,21 +779,11 @@ class addBeam(Operator, object_utils.AddObjectHelper):
bpy.ops.transform.rotate(value=1.570796, constraint_axis=[False, True, False])
bpy.ops.object.transform_apply(location=False, rotation=True, scale=False)
- if self.Cursor:
- if beamObj.select_get() is True:
- # we also have to check if we're considered to be in 3D View (view3d)
- if bpy.ops.view3d.snap_selected_to_cursor.poll():
- bpy.ops.view3d.snap_selected_to_cursor()
- else:
- self.Cursor = False
-
obj.data["Beam"] = True
obj.data["change"] = False
for prm in BeamParameters():
obj.data[prm] = getattr(self, prm)
- return {'FINISHED'}
-
if bpy.context.mode == "EDIT_MESH":
active_object = context.active_object
name_active_object = active_object.name
@@ -808,6 +796,12 @@ class addBeam(Operator, object_utils.AddObjectHelper):
context.active_object.name = name_active_object
bpy.ops.object.mode_set(mode='EDIT')
+ if use_enter_edit_mode:
+ bpy.ops.object.mode_set(mode = 'EDIT')
+
+ # restore pre operator state
+ bpy.context.preferences.edit.use_enter_edit_mode = use_enter_edit_mode
+
return {'FINISHED'}
def BeamParameters():
@@ -818,6 +812,5 @@ def BeamParameters():
"beamY",
"beamW",
"edgeA",
- "Cursor",
]
return BeamParameters
diff --git a/add_mesh_extra_objects/add_mesh_gears.py b/add_mesh_extra_objects/add_mesh_gears.py
index 44128330..9170952a 100644
--- a/add_mesh_extra_objects/add_mesh_gears.py
+++ b/add_mesh_extra_objects/add_mesh_gears.py
@@ -683,6 +683,9 @@ class AddGear(Operator, object_utils.AddObjectHelper):
return context.scene is not None
def execute(self, context):
+ # turn off 'Enter Edit Mode'
+ use_enter_edit_mode = bpy.context.preferences.edit.use_enter_edit_mode
+ bpy.context.preferences.edit.use_enter_edit_mode = False
if bpy.context.mode == "OBJECT":
if context.selected_objects != [] and context.active_object and \
@@ -738,6 +741,12 @@ class AddGear(Operator, object_utils.AddObjectHelper):
context.active_object.name = name_active_object
bpy.ops.object.mode_set(mode='EDIT')
+ if use_enter_edit_mode:
+ bpy.ops.object.mode_set(mode = 'EDIT')
+
+ # restore pre operator state
+ bpy.context.preferences.edit.use_enter_edit_mode = use_enter_edit_mode
+
return {'FINISHED'}
def invoke(self, context, event):
@@ -894,6 +903,9 @@ class AddWormGear(Operator, object_utils.AddObjectHelper):
box.prop(self, 'rotation', expand=True)
def execute(self, context):
+ # turn off 'Enter Edit Mode'
+ use_enter_edit_mode = bpy.context.preferences.edit.use_enter_edit_mode
+ bpy.context.preferences.edit.use_enter_edit_mode = False
if bpy.context.mode == "OBJECT":
if context.selected_objects != [] and context.active_object and \
@@ -950,6 +962,12 @@ class AddWormGear(Operator, object_utils.AddObjectHelper):
context.active_object.name = name_active_object
bpy.ops.object.mode_set(mode='EDIT')
+ if use_enter_edit_mode:
+ bpy.ops.object.mode_set(mode = 'EDIT')
+
+ # restore pre operator state
+ bpy.context.preferences.edit.use_enter_edit_mode = use_enter_edit_mode
+
return {'FINISHED'}
def WormGearParameters():
diff --git a/add_mesh_extra_objects/add_mesh_gemstones.py b/add_mesh_extra_objects/add_mesh_gemstones.py
index 5829794b..c47e4131 100644
--- a/add_mesh_extra_objects/add_mesh_gemstones.py
+++ b/add_mesh_extra_objects/add_mesh_gemstones.py
@@ -278,6 +278,9 @@ class AddDiamond(Operator, object_utils.AddObjectHelper):
box.prop(self, 'rotation', expand=True)
def execute(self, context):
+ # turn off 'Enter Edit Mode'
+ use_enter_edit_mode = bpy.context.preferences.edit.use_enter_edit_mode
+ bpy.context.preferences.edit.use_enter_edit_mode = False
if bpy.context.mode == "OBJECT":
if context.selected_objects != [] and context.active_object and \
@@ -333,6 +336,12 @@ class AddDiamond(Operator, object_utils.AddObjectHelper):
context.active_object.name = name_active_object
bpy.ops.object.mode_set(mode='EDIT')
+ if use_enter_edit_mode:
+ bpy.ops.object.mode_set(mode = 'EDIT')
+
+ # restore pre operator state
+ bpy.context.preferences.edit.use_enter_edit_mode = use_enter_edit_mode
+
return {'FINISHED'}
def DiamondParameters():
@@ -417,6 +426,9 @@ class AddGem(Operator, object_utils.AddObjectHelper):
box.prop(self, 'rotation', expand=True)
def execute(self, context):
+ # turn off 'Enter Edit Mode'
+ use_enter_edit_mode = bpy.context.preferences.edit.use_enter_edit_mode
+ bpy.context.preferences.edit.use_enter_edit_mode = False
if bpy.context.mode == "OBJECT":
if context.selected_objects != [] and context.active_object and \
@@ -472,6 +484,12 @@ class AddGem(Operator, object_utils.AddObjectHelper):
context.active_object.name = name_active_object
bpy.ops.object.mode_set(mode='EDIT')
+ if use_enter_edit_mode:
+ bpy.ops.object.mode_set(mode = 'EDIT')
+
+ # restore pre operator state
+ bpy.context.preferences.edit.use_enter_edit_mode = use_enter_edit_mode
+
return {'FINISHED'}
def GemParameters():
diff --git a/add_mesh_extra_objects/add_mesh_honeycomb.py b/add_mesh_extra_objects/add_mesh_honeycomb.py
index ef7d34db..73dea1d6 100644
--- a/add_mesh_extra_objects/add_mesh_honeycomb.py
+++ b/add_mesh_extra_objects/add_mesh_honeycomb.py
@@ -272,6 +272,10 @@ class add_mesh_honeycomb(bpy.types.Operator, object_utils.AddObjectHelper):
return context.scene is not None
def execute(self, context):
+ # turn off 'Enter Edit Mode'
+ use_enter_edit_mode = bpy.context.preferences.edit.use_enter_edit_mode
+ bpy.context.preferences.edit.use_enter_edit_mode = False
+
if bpy.context.mode == "OBJECT":
if context.selected_objects != [] and context.active_object and \
('HoneyComb' in context.active_object.data.keys()) and (self.change == True):
@@ -314,6 +318,12 @@ class add_mesh_honeycomb(bpy.types.Operator, object_utils.AddObjectHelper):
context.active_object.name = name_active_object
bpy.ops.object.mode_set(mode='EDIT')
+ if use_enter_edit_mode:
+ bpy.ops.object.mode_set(mode = 'EDIT')
+
+ # restore pre operator state
+ bpy.context.preferences.edit.use_enter_edit_mode = use_enter_edit_mode
+
return {'FINISHED'}
def HoneyCombParameters():
diff --git a/add_mesh_extra_objects/add_m
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-extensions-cvs
mailing list