diff options
Diffstat (limited to 'uv_magic_uv/ui/VIEW3D_MT_uv_map.py')
-rw-r--r-- | uv_magic_uv/ui/VIEW3D_MT_uv_map.py | 183 |
1 files changed, 29 insertions, 154 deletions
diff --git a/uv_magic_uv/ui/VIEW3D_MT_uv_map.py b/uv_magic_uv/ui/VIEW3D_MT_uv_map.py index bb59c12c..c5698504 100644 --- a/uv_magic_uv/ui/VIEW3D_MT_uv_map.py +++ b/uv_magic_uv/ui/VIEW3D_MT_uv_map.py @@ -23,30 +23,24 @@ __status__ = "production" __version__ = "5.2" __date__ = "17 Nov 2018" -import bpy -from ..op import copy_paste_uv -from ..op import transfer_uv -from ..op import texture_lock -from ..op import world_scale_uv -from ..op import uvw -from ..op import texture_projection -from ..op import texture_wrap -from ..op import preserve_uv_aspect +import bpy.utils +from ..op import ( + copy_paste_uv, + transfer_uv, + uvw, +) +from ..utils.bl_class_registry import BlClassRegistry __all__ = [ - 'MenuCopyPasteUV', - 'MenuTransferUV', - 'MenuTextureLock', - 'MenuWorldScaleUV', - 'MenuTextureWrap', - 'MenuUVW', - 'MenuTextureProjection', - 'MenuPreserveUVAspect', + 'MUV_MT_CopyPasteUV', + 'MUV_MT_TransferUV', + 'MUV_MT_UVW', ] -class MenuCopyPasteUV(bpy.types.Menu): +@BlClassRegistry() +class MUV_MT_CopyPasteUV(bpy.types.Menu): """ Menu class: Master menu of Copy/Paste UV coordinate """ @@ -58,20 +52,23 @@ class MenuCopyPasteUV(bpy.types.Menu): def draw(self, _): layout = self.layout - layout.label("Default") - layout.menu(copy_paste_uv.MenuCopyUV.bl_idname, text="Copy") - layout.menu(copy_paste_uv.MenuPasteUV.bl_idname, text="Paste") + layout.label(text="Default") + layout.menu(copy_paste_uv.MUV_MT_CopyPasteUV_CopyUV.bl_idname, + text="Copy") + layout.menu(copy_paste_uv.MUV_MT_CopyPasteUV_PasteUV.bl_idname, + text="Paste") layout.separator() - layout.label("Selection Sequence") - layout.menu(copy_paste_uv.MenuSelSeqCopyUV.bl_idname, + layout.label(text="Selection Sequence") + layout.menu(copy_paste_uv.MUV_MT_CopyPasteUV_SelSeqCopyUV.bl_idname, text="Copy") - layout.menu(copy_paste_uv.MenuSelSeqPasteUV.bl_idname, + layout.menu(copy_paste_uv.MUV_MT_CopyPasteUV_SelSeqPasteUV.bl_idname, text="Paste") -class MenuTransferUV(bpy.types.Menu): +@BlClassRegistry() +class MUV_MT_TransferUV(bpy.types.Menu): """ Menu class: Master menu of Transfer UV coordinate """ @@ -84,99 +81,16 @@ class MenuTransferUV(bpy.types.Menu): layout = self.layout sc = context.scene - layout.operator(transfer_uv.OperatorCopyUV.bl_idname, text="Copy") - ops = layout.operator(transfer_uv.OperatorPasteUV.bl_idname, + layout.operator(transfer_uv.MUV_OT_TransferUV_CopyUV.bl_idname, + text="Copy") + ops = layout.operator(transfer_uv.MUV_OT_TransferUV_PasteUV.bl_idname, text="Paste") ops.invert_normals = sc.muv_transfer_uv_invert_normals ops.copy_seams = sc.muv_transfer_uv_copy_seams -class MenuTextureLock(bpy.types.Menu): - """ - Menu class: Master menu of Texture Lock - """ - - bl_idname = "uv.muv_texture_lock_menu" - bl_label = "Texture Lock" - bl_description = "Lock texture when vertices of mesh (Preserve UV)" - - def draw(self, context): - layout = self.layout - sc = context.scene - - layout.label("Normal Mode") - layout.operator(texture_lock.OperatorLock.bl_idname, - text="Lock" - if not texture_lock.OperatorLock.is_ready(context) - else "ReLock") - ops = layout.operator(texture_lock.OperatorUnlock.bl_idname, - text="Unlock") - ops.connect = sc.muv_texture_lock_connect - - layout.separator() - - layout.label("Interactive Mode") - layout.prop(sc, "muv_texture_lock_lock", text="Lock") - - -class MenuWorldScaleUV(bpy.types.Menu): - """ - Menu class: Master menu of world scale UV - """ - - bl_idname = "uv.muv_world_scale_uv_menu" - bl_label = "World Scale UV" - bl_description = "" - - def draw(self, context): - layout = self.layout - sc = context.scene - - layout.operator(world_scale_uv.OperatorMeasure.bl_idname, - text="Measure") - - layout.operator(world_scale_uv.OperatorApplyManual.bl_idname, - text="Apply (Manual)") - - ops = layout.operator( - world_scale_uv.OperatorApplyScalingDensity.bl_idname, - text="Apply (Same Desity)") - ops.src_density = sc.muv_world_scale_uv_src_density - ops.same_density = True - - ops = layout.operator( - world_scale_uv.OperatorApplyScalingDensity.bl_idname, - text="Apply (Scaling Desity)") - ops.src_density = sc.muv_world_scale_uv_src_density - ops.same_density = False - ops.tgt_scaling_factor = sc.muv_world_scale_uv_tgt_scaling_factor - - ops = layout.operator( - world_scale_uv.OperatorApplyProportionalToMesh.bl_idname, - text="Apply (Proportional to Mesh)") - ops.src_density = sc.muv_world_scale_uv_src_density - ops.src_uv_area = sc.muv_world_scale_uv_src_uv_area - ops.src_mesh_area = sc.muv_world_scale_uv_src_mesh_area - ops.origin = sc.muv_world_scale_uv_origin - - -class MenuTextureWrap(bpy.types.Menu): - """ - Menu class: Master menu of Texture Wrap - """ - - bl_idname = "uv.muv_texture_wrap_menu" - bl_label = "Texture Wrap" - bl_description = "" - - def draw(self, _): - layout = self.layout - - layout.operator(texture_wrap.OperatorRefer.bl_idname, text="Refer") - layout.operator(texture_wrap.OperatorSet.bl_idname, text="Set") - - -class MenuUVW(bpy.types.Menu): +@BlClassRegistry() +class MUV_MT_UVW(bpy.types.Menu): """ Menu class: Master menu of UVW """ @@ -189,48 +103,9 @@ class MenuUVW(bpy.types.Menu): layout = self.layout sc = context.scene - ops = layout.operator(uvw.OperatorBoxMap.bl_idname, text="Box") + ops = layout.operator(uvw.MUV_OT_UVW_BoxMap.bl_idname, text="Box") ops.assign_uvmap = sc.muv_uvw_assign_uvmap - ops = layout.operator(uvw.OperatorBestPlanerMap.bl_idname, + ops = layout.operator(uvw.MUV_OT_UVW_BestPlanerMap.bl_idname, text="Best Planner") ops.assign_uvmap = sc.muv_uvw_assign_uvmap - - -class MenuTextureProjection(bpy.types.Menu): - """ - Menu class: Master menu of Texture Projection - """ - - bl_idname = "uv.muv_texture_projection_menu" - bl_label = "Texture Projection" - bl_description = "" - - def draw(self, context): - layout = self.layout - sc = context.scene - - layout.prop(sc, "muv_texture_projection_enable", - text="Texture Projection") - layout.operator(texture_projection.OperatorProject.bl_idname, - text="Project") - - -class MenuPreserveUVAspect(bpy.types.Menu): - """ - Menu class: Master menu of Preserve UV Aspect - """ - - bl_idname = "uv.muv_preserve_uv_aspect_menu" - bl_label = "Preserve UV Aspect" - bl_description = "" - - def draw(self, context): - layout = self.layout - sc = context.scene - - for key in bpy.data.images.keys(): - ops = layout.operator( - preserve_uv_aspect.Operator.bl_idname, text=key) - ops.dest_img_name = key - ops.origin = sc.muv_preserve_uv_aspect_origin |