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:
Diffstat (limited to 'uv_magic_uv/ui/view3d_uv_manipulation.py')
-rw-r--r--uv_magic_uv/ui/view3d_uv_manipulation.py160
1 files changed, 34 insertions, 126 deletions
diff --git a/uv_magic_uv/ui/view3d_uv_manipulation.py b/uv_magic_uv/ui/view3d_uv_manipulation.py
index 1e9b7d7e..365a0dc8 100644
--- a/uv_magic_uv/ui/view3d_uv_manipulation.py
+++ b/uv_magic_uv/ui/view3d_uv_manipulation.py
@@ -20,28 +20,31 @@
__author__ = "Nutti <nutti.metro@gmail.com>"
__status__ = "production"
-__version__ = "5.1"
-__date__ = "24 Feb 2018"
+__version__ = "5.2"
+__date__ = "17 Nov 2018"
import bpy
-from ..op import flip_rotate_uv
-from ..op import mirror_uv
-from ..op import move_uv
-from ..op import preserve_uv_aspect
-from ..op import texture_lock
-from ..op import texture_wrap
-from ..op import uv_sculpt
-from ..op import world_scale_uv
+from ..op import (
+ flip_rotate_uv,
+ mirror_uv,
+ move_uv,
+)
+from ..utils.bl_class_registry import BlClassRegistry
+__all__ = [
+ 'MUV_PT_View3D_UVManipulation',
+]
-class OBJECT_PT_MUV_UVManip(bpy.types.Panel):
+
+@BlClassRegistry()
+class MUV_PT_View3D_UVManipulation(bpy.types.Panel):
"""
Panel class: UV Manipulation on Property Panel on View3D
"""
bl_space_type = 'VIEW_3D'
- bl_region_type = 'TOOLS'
+ bl_region_type = 'UI'
bl_label = "UV Manipulation"
bl_category = "Magic UV"
bl_context = 'mesh_edit'
@@ -49,132 +52,37 @@ class OBJECT_PT_MUV_UVManip(bpy.types.Panel):
def draw_header(self, _):
layout = self.layout
- layout.label(text="", icon='IMAGE_COL')
+ layout.label(text="", icon='IMAGE')
def draw(self, context):
sc = context.scene
- props = sc.muv_props
layout = self.layout
box = layout.box()
- box.prop(sc, "muv_fliprot_enabled", text="Flip/Rotate UV")
- if sc.muv_fliprot_enabled:
+ box.prop(sc, "muv_flip_rotate_uv_enabled", text="Flip/Rotate UV")
+ if sc.muv_flip_rotate_uv_enabled:
row = box.row()
- ops = row.operator(flip_rotate_uv.MUV_FlipRot.bl_idname,
+ ops = row.operator(flip_rotate_uv.MUV_OT_FlipRotate.bl_idname,
text="Flip/Rotate")
- ops.seams = sc.muv_fliprot_seams
- row.prop(sc, "muv_fliprot_seams", text="Seams")
+ ops.seams = sc.muv_flip_rotate_uv_seams
+ row.prop(sc, "muv_flip_rotate_uv_seams", text="Seams")
box = layout.box()
- box.prop(sc, "muv_mirroruv_enabled", text="Mirror UV")
- if sc.muv_mirroruv_enabled:
+ box.prop(sc, "muv_mirror_uv_enabled", text="Mirror UV")
+ if sc.muv_mirror_uv_enabled:
row = box.row()
- ops = row.operator(mirror_uv.MUV_MirrorUV.bl_idname, text="Mirror")
- ops.axis = sc.muv_mirroruv_axis
- row.prop(sc, "muv_mirroruv_axis", text="")
+ ops = row.operator(mirror_uv.MUV_OT_MirrorUV.bl_idname,
+ text="Mirror")
+ ops.axis = sc.muv_mirror_uv_axis
+ row.prop(sc, "muv_mirror_uv_axis", text="")
box = layout.box()
- box.prop(sc, "muv_mvuv_enabled", text="Move UV")
- if sc.muv_mvuv_enabled:
+ box.prop(sc, "muv_move_uv_enabled", text="Move UV")
+ if sc.muv_move_uv_enabled:
col = box.column()
- col.operator(move_uv.MUV_MVUV.bl_idname, icon='PLAY', text="Start")
- if props.mvuv.running:
- col.enabled = False
- else:
- col.enabled = True
-
- box = layout.box()
- box.prop(sc, "muv_wsuv_enabled", text="World Scale UV")
- if sc.muv_wsuv_enabled:
- row = box.row(align=True)
- row.operator(world_scale_uv.MUV_WSUVMeasure.bl_idname,
- text="Measure")
- ops = row.operator(world_scale_uv.MUV_WSUVApply.bl_idname,
- text="Apply")
- ops.origin = sc.muv_wsuv_origin
- box.label("Source:")
- sp = box.split(percentage=0.7)
- col = sp.column(align=True)
- col.prop(sc, "muv_wsuv_src_mesh_area", text="Mesh Area")
- col.prop(sc, "muv_wsuv_src_uv_area", text="UV Area")
- col.prop(sc, "muv_wsuv_src_density", text="Density")
- col.enabled = False
- sp = sp.split(percentage=1.0)
- col = sp.column(align=True)
- col.label("cm x cm")
- col.label("px x px")
- col.label("px/cm")
- col.enabled = False
- sp = box.split(percentage=0.3)
- sp.label("Mode:")
- sp = sp.split(percentage=1.0)
- col = sp.column()
- col.prop(sc, "muv_wsuv_mode", text="")
- if sc.muv_wsuv_mode == 'USER':
- col.prop(sc, "muv_wsuv_tgt_density", text="Density")
- if sc.muv_wsuv_mode == 'SCALING':
- col.prop(sc, "muv_wsuv_scaling_factor", text="Scaling Factor")
- box.prop(sc, "muv_wsuv_origin", text="Origin")
-
- box = layout.box()
- box.prop(sc, "muv_preserve_uv_enabled", text="Preserve UV Aspect")
- if sc.muv_preserve_uv_enabled:
- row = box.row()
- ops = row.operator(
- preserve_uv_aspect.MUV_PreserveUVAspect.bl_idname,
- text="Change Image")
- ops.dest_img_name = sc.muv_preserve_uv_tex_image
- ops.origin = sc.muv_preserve_uv_origin
- row.prop(sc, "muv_preserve_uv_tex_image", text="")
- box.prop(sc, "muv_preserve_uv_origin", text="Origin")
-
- box = layout.box()
- box.prop(sc, "muv_texlock_enabled", text="Texture Lock")
- if sc.muv_texlock_enabled:
- row = box.row(align=True)
- col = row.column(align=True)
- col.label("Normal Mode:")
- col = row.column(align=True)
- col.operator(texture_lock.MUV_TexLockStart.bl_idname, text="Lock")
- ops = col.operator(texture_lock.MUV_TexLockStop.bl_idname,
- text="Unlock")
- ops.connect = sc.muv_texlock_connect
- col.prop(sc, "muv_texlock_connect", text="Connect")
-
- row = box.row(align=True)
- row.label("Interactive Mode:")
- if not props.texlock.intr_running:
- row.operator(texture_lock.MUV_TexLockIntrStart.bl_idname,
- icon='PLAY', text="Start")
- else:
- row.operator(texture_lock.MUV_TexLockIntrStop.bl_idname,
- icon="PAUSE", text="Stop")
-
- box = layout.box()
- box.prop(sc, "muv_texwrap_enabled", text="Texture Wrap")
- if sc.muv_texwrap_enabled:
- row = box.row(align=True)
- row.operator(texture_wrap.MUV_TexWrapRefer.bl_idname, text="Refer")
- row.operator(texture_wrap.MUV_TexWrapSet.bl_idname, text="Set")
- box.prop(sc, "muv_texwrap_set_and_refer")
- box.prop(sc, "muv_texwrap_selseq")
-
- box = layout.box()
- box.prop(sc, "muv_uvsculpt_enabled", text="UV Sculpt")
- if sc.muv_uvsculpt_enabled:
- if not props.uvsculpt.running:
- box.operator(uv_sculpt.MUV_UVSculptOps.bl_idname,
- icon='PLAY', text="Start")
+ if not move_uv.MUV_OT_MoveUV.is_running(context):
+ col.operator(move_uv.MUV_OT_MoveUV.bl_idname, icon='PLAY',
+ text="Start")
else:
- box.operator(uv_sculpt.MUV_UVSculptOps.bl_idname,
- icon='PAUSE', text="Stop")
- col = box.column()
- col.label("Brush:")
- col.prop(sc, "muv_uvsculpt_radius")
- col.prop(sc, "muv_uvsculpt_strength")
- box.prop(sc, "muv_uvsculpt_tools")
- if sc.muv_uvsculpt_tools == 'PINCH':
- box.prop(sc, "muv_uvsculpt_pinch_invert")
- elif sc.muv_uvsculpt_tools == 'RELAX':
- box.prop(sc, "muv_uvsculpt_relax_method")
- box.prop(sc, "muv_uvsculpt_show_brush")
+ col.operator(move_uv.MUV_OT_MoveUV.bl_idname, icon='PAUSE',
+ text="Stop")