[Bf-blender-cvs] [4a77a52] hair_immediate_fixes: New image file icons for hair brush tools and an according tool enum in the Brush RNA.

Lukas Tönne noreply at git.blender.org
Mon Dec 1 20:26:24 CET 2014


Commit: 4a77a52784dfe011d04f43e36e82a588fbfdfd2c
Author: Lukas Tönne
Date:   Mon Dec 1 19:19:45 2014 +0100
Branches: hair_immediate_fixes
https://developer.blender.org/rB4a77a52784dfe011d04f43e36e82a588fbfdfd2c

New image file icons for hair brush tools and an according tool enum in
the Brush RNA.

===================================================================

A	release/datafiles/brushicons/hairadd.png
A	release/datafiles/brushicons/haircomb.png
A	release/datafiles/brushicons/haircut.png
A	release/datafiles/brushicons/hairlength.png
A	release/datafiles/brushicons/hairpuff.png
A	release/datafiles/brushicons/hairsmooth.png
A	release/datafiles/brushicons/hairweight.png
M	source/blender/editors/datafiles/CMakeLists.txt
M	source/blender/editors/datafiles/SConscript
M	source/blender/editors/include/ED_datafiles.h
M	source/blender/editors/include/UI_icons.h
M	source/blender/editors/interface/interface_icons.c
M	source/blender/makesdna/DNA_brush_types.h
M	source/blender/makesrna/RNA_enum_types.h
M	source/blender/makesrna/intern/rna_brush.c

===================================================================

diff --git a/release/datafiles/brushicons/hairadd.png b/release/datafiles/brushicons/hairadd.png
new file mode 100644
index 0000000..074111a
Binary files /dev/null and b/release/datafiles/brushicons/hairadd.png differ
diff --git a/release/datafiles/brushicons/haircomb.png b/release/datafiles/brushicons/haircomb.png
new file mode 100644
index 0000000..074111a
Binary files /dev/null and b/release/datafiles/brushicons/haircomb.png differ
diff --git a/release/datafiles/brushicons/haircut.png b/release/datafiles/brushicons/haircut.png
new file mode 100644
index 0000000..074111a
Binary files /dev/null and b/release/datafiles/brushicons/haircut.png differ
diff --git a/release/datafiles/brushicons/hairlength.png b/release/datafiles/brushicons/hairlength.png
new file mode 100644
index 0000000..074111a
Binary files /dev/null and b/release/datafiles/brushicons/hairlength.png differ
diff --git a/release/datafiles/brushicons/hairpuff.png b/release/datafiles/brushicons/hairpuff.png
new file mode 100644
index 0000000..074111a
Binary files /dev/null and b/release/datafiles/brushicons/hairpuff.png differ
diff --git a/release/datafiles/brushicons/hairsmooth.png b/release/datafiles/brushicons/hairsmooth.png
new file mode 100644
index 0000000..074111a
Binary files /dev/null and b/release/datafiles/brushicons/hairsmooth.png differ
diff --git a/release/datafiles/brushicons/hairweight.png b/release/datafiles/brushicons/hairweight.png
new file mode 100644
index 0000000..074111a
Binary files /dev/null and b/release/datafiles/brushicons/hairweight.png differ
diff --git a/source/blender/editors/datafiles/CMakeLists.txt b/source/blender/editors/datafiles/CMakeLists.txt
index 2a84ca7..2ac800e 100644
--- a/source/blender/editors/datafiles/CMakeLists.txt
+++ b/source/blender/editors/datafiles/CMakeLists.txt
@@ -78,6 +78,13 @@ if(WITH_BLENDER)
 		data_to_c_simple(../../../../release/datafiles/brushicons/fill.png SRC)
 		data_to_c_simple(../../../../release/datafiles/brushicons/flatten.png SRC)
 		data_to_c_simple(../../../../release/datafiles/brushicons/grab.png SRC)
+		data_to_c_simple(../../../../release/datafiles/brushicons/hairadd.png SRC)
+		data_to_c_simple(../../../../release/datafiles/brushicons/haircomb.png SRC)
+		data_to_c_simple(../../../../release/datafiles/brushicons/haircut.png SRC)
+		data_to_c_simple(../../../../release/datafiles/brushicons/hairlength.png SRC)
+		data_to_c_simple(../../../../release/datafiles/brushicons/hairpuff.png SRC)
+		data_to_c_simple(../../../../release/datafiles/brushicons/hairsmooth.png SRC)
+		data_to_c_simple(../../../../release/datafiles/brushicons/hairweight.png SRC)
 		data_to_c_simple(../../../../release/datafiles/brushicons/inflate.png SRC)
 		data_to_c_simple(../../../../release/datafiles/brushicons/layer.png SRC)
 		data_to_c_simple(../../../../release/datafiles/brushicons/lighten.png SRC)
diff --git a/source/blender/editors/datafiles/SConscript b/source/blender/editors/datafiles/SConscript
index 6bc8f21..e16d99e 100644
--- a/source/blender/editors/datafiles/SConscript
+++ b/source/blender/editors/datafiles/SConscript
@@ -62,6 +62,13 @@ sources.extend((
     os.path.join(env['DATA_SOURCES'], "fill.png.c"),
     os.path.join(env['DATA_SOURCES'], "flatten.png.c"),
     os.path.join(env['DATA_SOURCES'], "grab.png.c"),
+    os.path.join(env['DATA_SOURCES'], "hairadd.png.c"),
+    os.path.join(env['DATA_SOURCES'], "haircomb.png.c"),
+    os.path.join(env['DATA_SOURCES'], "haircut.png.c"),
+    os.path.join(env['DATA_SOURCES'], "hairlength.png.c"),
+    os.path.join(env['DATA_SOURCES'], "hairpuff.png.c"),
+    os.path.join(env['DATA_SOURCES'], "hairsmooth.png.c"),
+    os.path.join(env['DATA_SOURCES'], "hairweight.png.c"),
     os.path.join(env['DATA_SOURCES'], "inflate.png.c"),
     os.path.join(env['DATA_SOURCES'], "layer.png.c"),
     os.path.join(env['DATA_SOURCES'], "lighten.png.c"),
diff --git a/source/blender/editors/include/ED_datafiles.h b/source/blender/editors/include/ED_datafiles.h
index 661ab58..5e2c6bb 100644
--- a/source/blender/editors/include/ED_datafiles.h
+++ b/source/blender/editors/include/ED_datafiles.h
@@ -165,6 +165,27 @@ extern char datatoc_twist_png[];
 extern int datatoc_vertexdraw_png_size;
 extern char datatoc_vertexdraw_png[];
 
+extern int datatoc_haircomb_png_size;
+extern char datatoc_haircomb_png[];
+
+extern int datatoc_haircut_png_size;
+extern char datatoc_haircut_png[];
+
+extern int datatoc_hairlength_png_size;
+extern char datatoc_hairlength_png[];
+
+extern int datatoc_hairpuff_png_size;
+extern char datatoc_hairpuff_png[];
+
+extern int datatoc_hairadd_png_size;
+extern char datatoc_hairadd_png[];
+
+extern int datatoc_hairsmooth_png_size;
+extern char datatoc_hairsmooth_png[];
+
+extern int datatoc_hairweight_png_size;
+extern char datatoc_hairweight_png[];
+
 /* Matcap files */
 
 extern int datatoc_mc01_jpg_size;
diff --git a/source/blender/editors/include/UI_icons.h b/source/blender/editors/include/UI_icons.h
index 618fa44..e42b94d 100644
--- a/source/blender/editors/include/UI_icons.h
+++ b/source/blender/editors/include/UI_icons.h
@@ -979,6 +979,13 @@ DEF_ICON(BRUSH_TEXMASK)
 DEF_ICON(BRUSH_THUMB)
 DEF_ICON(BRUSH_ROTATE)
 DEF_ICON(BRUSH_VERTEXDRAW)
+DEF_ICON(BRUSH_HAIR_COMB)
+DEF_ICON(BRUSH_HAIR_CUT)
+DEF_ICON(BRUSH_HAIR_LENGTH)
+DEF_ICON(BRUSH_HAIR_PUFF)
+DEF_ICON(BRUSH_HAIR_ADD)
+DEF_ICON(BRUSH_HAIR_SMOOTH)
+DEF_ICON(BRUSH_HAIR_WEIGHT)
 
 	/* Matcaps */
 DEF_ICON(MATCAP_01)
diff --git a/source/blender/editors/interface/interface_icons.c b/source/blender/editors/interface/interface_icons.c
index 517b8b6..47575a6 100644
--- a/source/blender/editors/interface/interface_icons.c
+++ b/source/blender/editors/interface/interface_icons.c
@@ -514,6 +514,13 @@ static void init_brush_icons(void)
 	INIT_BRUSH_ICON(ICON_BRUSH_THUMB, thumb);
 	INIT_BRUSH_ICON(ICON_BRUSH_ROTATE, twist);
 	INIT_BRUSH_ICON(ICON_BRUSH_VERTEXDRAW, vertexdraw);
+	INIT_BRUSH_ICON(ICON_BRUSH_HAIR_COMB, haircomb);
+	INIT_BRUSH_ICON(ICON_BRUSH_HAIR_CUT, haircut);
+	INIT_BRUSH_ICON(ICON_BRUSH_HAIR_LENGTH, hairlength);
+	INIT_BRUSH_ICON(ICON_BRUSH_HAIR_PUFF, hairpuff);
+	INIT_BRUSH_ICON(ICON_BRUSH_HAIR_ADD, hairadd);
+	INIT_BRUSH_ICON(ICON_BRUSH_HAIR_SMOOTH, hairsmooth);
+	INIT_BRUSH_ICON(ICON_BRUSH_HAIR_WEIGHT, hairweight);
 
 #undef INIT_BRUSH_ICON
 }
diff --git a/source/blender/makesdna/DNA_brush_types.h b/source/blender/makesdna/DNA_brush_types.h
index b14861f..cc25d42 100644
--- a/source/blender/makesdna/DNA_brush_types.h
+++ b/source/blender/makesdna/DNA_brush_types.h
@@ -270,6 +270,16 @@ typedef enum BrushImagePaintTool {
 	PAINT_TOOL_MASK = 5
 } BrushImagePaintTool;
 
+typedef enum BrushHairTool {
+	HAIR_TOOL_COMB      = 1,
+	HAIR_TOOL_CUT       = 2,
+	HAIR_TOOL_LENGTH    = 3,
+	HAIR_TOOL_PUFF      = 4,
+	HAIR_TOOL_ADD       = 5,
+	HAIR_TOOL_SMOOTH    = 6,
+	HAIR_TOOL_WEIGHT    = 7,
+} BrushHairTool;
+
 /* direction that the brush displaces along */
 enum {
 	SCULPT_DISP_DIR_AREA = 0,
diff --git a/source/blender/makesrna/RNA_enum_types.h b/source/blender/makesrna/RNA_enum_types.h
index 3d4ed0d..0ba3a78 100644
--- a/source/blender/makesrna/RNA_enum_types.h
+++ b/source/blender/makesrna/RNA_enum_types.h
@@ -102,6 +102,7 @@ extern EnumPropertyItem operator_return_items[];
 extern EnumPropertyItem brush_sculpt_tool_items[];
 extern EnumPropertyItem brush_vertex_tool_items[];
 extern EnumPropertyItem brush_image_tool_items[];
+extern EnumPropertyItem brush_hair_tool_items[];
 
 extern EnumPropertyItem symmetrize_direction_items[];
 
diff --git a/source/blender/makesrna/intern/rna_brush.c b/source/blender/makesrna/intern/rna_brush.c
index bbc2e05..1a797a6 100644
--- a/source/blender/makesrna/intern/rna_brush.c
+++ b/source/blender/makesrna/intern/rna_brush.c
@@ -107,6 +107,17 @@ EnumPropertyItem brush_image_tool_items[] = {
 	{0, NULL, 0, NULL, NULL}
 };
 
+EnumPropertyItem brush_hair_tool_items[] = {
+	{HAIR_TOOL_COMB, "COMB", ICON_BRUSH_TEXDRAW, "Draw", ""},
+	{HAIR_TOOL_CUT, "CUT", ICON_BRUSH_SOFTEN, "Soften", ""},
+	{HAIR_TOOL_LENGTH, "LENGTH", ICON_BRUSH_SMEAR, "Smear", ""},
+	{HAIR_TOOL_PUFF, "PUFF", ICON_BRUSH_CLONE, "Clone", ""},
+	{HAIR_TOOL_ADD, "ADD", ICON_BRUSH_TEXFILL, "Fill", ""},
+	{HAIR_TOOL_SMOOTH, "SMOOTH", ICON_BRUSH_TEXFILL, "Fill", ""},
+	{HAIR_TOOL_WEIGHT, "WEIGHT", ICON_BRUSH_TEXMASK, "Mask", ""},
+	{0, NULL, 0, NULL, NULL}
+};
+
 #ifdef RNA_RUNTIME
 
 #include "MEM_guardedalloc.h"
@@ -398,6 +409,13 @@ static void rna_Brush_imagepaint_tool_update(Main *bmain, Scene *scene, PointerR
 	rna_Brush_update(bmain, scene, ptr);
 }
 
+static void rna_Brush_hair_tool_update(Main *bmain, Scene *scene, PointerRNA *ptr)
+{
+	Brush *br = (Brush *)ptr->data;
+	rna_Brush_reset_icon(br, "hair");
+	rna_Brush_update(bmain, scene, ptr);
+}
+
 static void rna_Brush_stroke_update(Main *bmain, Scene *scene, PointerRNA *ptr)
 {
 	WM_main_add_notifier(NC_SCENE | ND_TOOLSETTINGS, scene);
@@ -867,6 +885,12 @@ static void rna_def_brush(BlenderRNA *brna)
 	RNA_def_property_ui_text(prop, "Image Paint Tool", "");
 	RNA_def_property_update(prop, NC_SPACE | ND_SPACE_IMAGE, "rna_Brush_imagepaint_tool_update");
 
+	prop = RNA_def_property(srna, "hair_tool", PROP_ENUM, PROP_NONE);
+	RNA_def_property_enum_sdna(prop, NULL, "hair_tool");
+	RNA_def_property_enum_items(prop, brush_hair_tool_items);
+	RNA_def_property_ui_text(prop, "Hair Tool", "");
+	RNA_def_property_update(prop, 0, "rna_Brush_hair_tool_update");
+
 	prop = RNA_def_property(srna, "direction", PROP_ENUM, PROP_NONE);
 	RNA_def_property_enum_bitflag_sdna(prop, NULL, "flag");
 	RNA_def_property_enum_items(prop, prop_direction_items);




More information about the Bf-blender-cvs mailing list