Commit: f1470f8a209057bec01a092be8c1b044c83bb2af Author: Joshua Leung Date: Thu Jun 28 16:53:11 2018 +1200 Branches: greasepencil-object https://developer.blender.org/rBf1470f8a209057bec01a092be8c1b044c83bb2af
Cleanup: Move GP-Object specific UI panels to the appropriate file =================================================================== M release/scripts/startup/bl_ui/properties_data_gpencil.py M release/scripts/startup/bl_ui/properties_grease_pencil_common.py =================================================================== diff --git a/release/scripts/startup/bl_ui/properties_data_gpencil.py b/release/scripts/startup/bl_ui/properties_data_gpencil.py index af7005b0a6c..ecef591a46f 100644 --- a/release/scripts/startup/bl_ui/properties_data_gpencil.py +++ b/release/scripts/startup/bl_ui/properties_data_gpencil.py @@ -67,6 +67,64 @@ class DATA_PT_gpencil(DataButtonsPanel, Panel): layout.template_ID(gpd_owner, "data", new="gpencil.data_add", unlink="gpencil.data_unlink") +class GPENCIL_UL_layer(UIList): + def draw_item(self, context, layout, data, item, icon, active_data, active_propname, index): + # assert(isinstance(item, bpy.types.GPencilLayer) + gpl = item + gpd = context.gpencil_data + + if self.layout_type in {'DEFAULT', 'COMPACT'}: + if gpl.lock: + layout.active = False + + row = layout.row(align=True) + if gpl.is_parented: + icon = 'BONE_DATA' + else: + icon = 'BLANK1' + + row.label(text="", icon=icon) + row.prop(gpl, "info", text="", emboss=False) + + row = layout.row(align=True) + row.prop(gpl, "lock", text="", emboss=False) + row.prop(gpl, "hide", text="", emboss=False) + row.prop(gpl, "unlock_color", text="", emboss=False) + if gpl.use_onion_skinning is False: + icon = 'GHOST_DISABLED' + else: + icon = 'GHOST_ENABLED' + subrow = row.row(align=True) + subrow.prop(gpl, "use_onion_skinning", text="", icon=icon, emboss=False) + subrow.active = gpd.use_onion_skinning + elif self.layout_type == 'GRID': + layout.alignment = 'CENTER' + layout.label(text="", icon_value=icon) + + +class GPENCIL_MT_layer_specials(Menu): + bl_label = "Layer" + + def draw(self, context): + layout = self.layout + + layout.operator("gpencil.layer_duplicate", icon='COPY_ID') # XXX: needs a dedicated icon + + layout.separator() + + layout.operator("gpencil.reveal", icon='RESTRICT_VIEW_OFF', text="Show All") + layout.operator("gpencil.hide", icon='RESTRICT_VIEW_ON', text="Hide Others").unselected = True + + layout.separator() + + layout.operator("gpencil.lock_all", icon='LOCKED', text="Lock All") + layout.operator("gpencil.unlock_all", icon='UNLOCKED', text="UnLock All") + + layout.separator() + + layout.operator("gpencil.layer_merge", icon='NLA', text="Merge Down") + + class DATA_PT_gpencil_datapanel(Panel): bl_space_type = 'PROPERTIES' bl_region_type = 'WINDOW' @@ -333,8 +391,10 @@ classes = ( DATA_PT_gpencil_display, DATA_PT_custom_props_gpencil, + GPENCIL_UL_layer, GPENCIL_UL_vgroups, + GPENCIL_MT_layer_specials, GPENCIL_MT_gpencil_vertex_group, ) diff --git a/release/scripts/startup/bl_ui/properties_grease_pencil_common.py b/release/scripts/startup/bl_ui/properties_grease_pencil_common.py index e5985af1c64..a3b7b428168 100644 --- a/release/scripts/startup/bl_ui/properties_grease_pencil_common.py +++ b/release/scripts/startup/bl_ui/properties_grease_pencil_common.py @@ -702,64 +702,6 @@ class GPENCIL_MT_gpencil_draw_delete(Menu): layout.operator("gpencil.active_frames_delete_all", text="Delete Frame") -class GPENCIL_UL_layer(UIList): - def draw_item(self, context, layout, data, item, icon, active_data, active_propname, index): - # assert(isinstance(item, bpy.types.GPencilLayer) - gpl = item - gpd = context.gpencil_data - - if self.layout_type in {'DEFAULT', 'COMPACT'}: - if gpl.lock: - layout.active = False - - row = layout.row(align=True) - if gpl.is_parented: - icon = 'BONE_DATA' - else: - icon = 'BLANK1' - - row.label(text="", icon=icon) - row.prop(gpl, "info", text="", emboss=False) - - row = layout.row(align=True) - row.prop(gpl, "lock", text="", emboss=False) - row.prop(gpl, "hide", text="", emboss=False) - row.prop(gpl, "unlock_color", text="", emboss=False) - if gpl.use_onion_skinning is False: - icon = 'GHOST_DISABLED' - else: - icon = 'GHOST_ENABLED' - subrow = row.row(align=True) - subrow.prop(gpl, "use_onion_skinning", text="", icon=icon, emboss=False) - subrow.active = gpd.use_onion_skinning - elif self.layout_type == 'GRID': - layout.alignment = 'CENTER' - layout.label(text="", icon_value=icon) - - -class GPENCIL_MT_layer_specials(Menu): - bl_label = "Layer" - - def draw(self, context): - layout = self.layout - - layout.operator("gpencil.layer_duplicate", icon='COPY_ID') # XXX: needs a dedicated icon - - layout.separator() - - layout.operator("gpencil.reveal", icon='RESTRICT_VIEW_OFF', text="Show All") - layout.operator("gpencil.hide", icon='RESTRICT_VIEW_ON', text="Hide Others").unselected = True - - layout.separator() - - layout.operator("gpencil.lock_all", icon='LOCKED', text="Lock All") - layout.operator("gpencil.unlock_all", icon='UNLOCKED', text="UnLock All") - - layout.separator() - - layout.operator("gpencil.layer_merge", icon='NLA', text="Merge Down") - - class GreasePencilDataPanel: bl_label = "Annotations" bl_region_type = 'UI' @@ -940,8 +882,6 @@ classes = ( GPENCIL_MT_gpencil_sculpt_specials, GPENCIL_MT_gpencil_draw_specials, GPENCIL_MT_gpencil_draw_delete, - GPENCIL_UL_layer, - GPENCIL_MT_layer_specials, ) if __name__ == "__main__": # only for live edit. _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs