diff options
author | Antonioya <blendergit@gmail.com> | 2018-08-16 12:24:28 +0300 |
---|---|---|
committer | Antonioya <blendergit@gmail.com> | 2018-08-16 12:24:45 +0300 |
commit | 59670e999a436a05858495ef448f34447584856a (patch) | |
tree | f2922200651f094ac11cd2109e8812e326bcc2da /release/scripts/startup | |
parent | 02e9dba07be7d912eefb30362512a93c91fe6296 (diff) |
GP: Add new presets for materials
This allow create prests without import materials and include a requested predefined settings for Stroke only, Fill only and Stroke and Fill.
Diffstat (limited to 'release/scripts/startup')
-rw-r--r-- | release/scripts/startup/bl_operators/presets.py | 44 | ||||
-rw-r--r-- | release/scripts/startup/bl_ui/properties_material_gpencil.py | 12 |
2 files changed, 56 insertions, 0 deletions
diff --git a/release/scripts/startup/bl_operators/presets.py b/release/scripts/startup/bl_operators/presets.py index 0fe45f8fee3..59697db0ae3 100644 --- a/release/scripts/startup/bl_operators/presets.py +++ b/release/scripts/startup/bl_operators/presets.py @@ -706,6 +706,49 @@ class AddPresetGpencilBrush(AddPresetBase, Operator): preset_subdir = "gpencil_brush" +class AddPresetGpencilMaterial(AddPresetBase, Operator): + """Add or remove grease pencil material preset""" + bl_idname = "scene.gpencil_material_preset_add" + bl_label = "Add Grease Pencil Material Preset" + preset_menu = "MATERIAL_PT_gpencil_material_presets" + + preset_defines = [ + "material = bpy.context.object.active_material", + "gpcolor = material.grease_pencil" + ] + + preset_values = [ + "gpcolor.mode", + "gpcolor.stroke_style", + "gpcolor.color", + "gpcolor.stroke_image", + "gpcolor.pixel_size", + "gpcolor.use_stroke_pattern", + "gpcolor.fill_style", + "gpcolor.fill_color", + "gpcolor.fill_image", + "gpcolor.gradient_type", + "gpcolor.mix_color", + "gpcolor.mix_factor", + "gpcolor.flip", + "gpcolor.pattern_shift", + "gpcolor.pattern_scale", + "gpcolor.pattern_radius", + "gpcolor.pattern_angle", + "gpcolor.pattern_gridsize", + "gpcolor.use_fill_pattern", + "gpcolor.texture_offset", + "gpcolor.texture_scale", + "gpcolor.texture_angle", + "gpcolor.texture_opacity", + "gpcolor.texture_clamp", + "gpcolor.texture_mix", + "gpcolor.mix_factor", + ] + + preset_subdir = "gpencil_material" + + classes = ( AddPresetCamera, AddPresetCloth, @@ -723,6 +766,7 @@ classes = ( AddPresetTrackingTrackColor, AddPresetUnitsLength, AddPresetGpencilBrush, + AddPresetGpencilMaterial, ExecutePreset, WM_MT_operator_presets, ) diff --git a/release/scripts/startup/bl_ui/properties_material_gpencil.py b/release/scripts/startup/bl_ui/properties_material_gpencil.py index d83639a361c..cabd6e5677a 100644 --- a/release/scripts/startup/bl_ui/properties_material_gpencil.py +++ b/release/scripts/startup/bl_ui/properties_material_gpencil.py @@ -20,6 +20,7 @@ import bpy from bpy.types import Menu, Panel, UIList from rna_prop_ui import PropertyPanel +from bl_operators.presets import PresetMenu class GPENCIL_MT_color_specials(Menu): @@ -165,6 +166,9 @@ class MATERIAL_PT_gpencil_surface(GPMaterialButtonsPanel, Panel): return ob and ob.type == 'GPENCIL' + def draw_header_preset(self, context): + MATERIAL_PT_gpencil_material_presets.draw_panel_header(self.layout) + @staticmethod def draw(self, context): layout = self.layout @@ -302,12 +306,20 @@ class MATERIAL_PT_gpencil_options(GPMaterialButtonsPanel, Panel): gpcolor = ma.grease_pencil layout.prop(gpcolor, "pass_index") +class MATERIAL_PT_gpencil_material_presets(PresetMenu): + """Material settings""" + bl_label = "Material Presets" + preset_subdir = "gpencil_material" + preset_operator = "script.execute_preset" + preset_add_operator = "scene.gpencil_material_preset_add" + classes = ( GPENCIL_UL_matslots, GPENCIL_MT_color_specials, MATERIAL_PT_gpencil_slots, MATERIAL_PT_gpencil_preview, + MATERIAL_PT_gpencil_material_presets, MATERIAL_PT_gpencil_surface, MATERIAL_PT_gpencil_strokecolor, MATERIAL_PT_gpencil_fillcolor, |