Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntonioya <blendergit@gmail.com>2018-08-16 12:24:28 +0300
committerAntonioya <blendergit@gmail.com>2018-08-16 12:24:45 +0300
commit59670e999a436a05858495ef448f34447584856a (patch)
treef2922200651f094ac11cd2109e8812e326bcc2da /release/scripts/startup
parent02e9dba07be7d912eefb30362512a93c91fe6296 (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.py44
-rw-r--r--release/scripts/startup/bl_ui/properties_material_gpencil.py12
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,