[Bf-blender-cvs] [fb883b3] GPencil_EditStrokes: DNA support for tagging individual stroke points as being selected

Joshua Leung noreply at git.blender.org
Fri Oct 10 12:25:58 CEST 2014


Commit: fb883b3262d95ce6ef0f25a2dd3eebc9ed5f7d59
Author: Joshua Leung
Date:   Tue Sep 30 01:55:12 2014 +1300
Branches: GPencil_EditStrokes
https://developer.blender.org/rBfb883b3262d95ce6ef0f25a2dd3eebc9ed5f7d59

DNA support for tagging individual stroke points as being selected

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

M	source/blender/makesdna/DNA_gpencil_types.h
M	source/blender/makesrna/intern/rna_gpencil.c

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

diff --git a/source/blender/makesdna/DNA_gpencil_types.h b/source/blender/makesdna/DNA_gpencil_types.h
index 2ffe593..dab1e93 100644
--- a/source/blender/makesdna/DNA_gpencil_types.h
+++ b/source/blender/makesdna/DNA_gpencil_types.h
@@ -42,8 +42,15 @@ typedef struct bGPDspoint {
 	float x, y, z;			/* co-ordinates of point (usually 2d, but can be 3d as well) */
 	float pressure;			/* pressure of input device (from 0 to 1) at this point */
 	float time;				/* seconds since start of stroke */
+	int flag;				/* additional options (NOTE: can shrink this field down later if needed) */
 } bGPDspoint;
 
+/* bGPDspoint->flag */
+typedef enum eGPDspoint_Flag {
+	/* stroke point is selected (for editing) */
+	GP_SPOINT_SELECT	= (1 << 0)
+} eGPSPoint_Flag;
+
 /* Grease-Pencil Annotations - 'Stroke'
  * 	-> A stroke represents a (simplified version) of the curve
  *	   drawn by the user in one 'mousedown'->'mouseup' operation
diff --git a/source/blender/makesrna/intern/rna_gpencil.c b/source/blender/makesrna/intern/rna_gpencil.c
index 39d37b8..b1a7d1e 100644
--- a/source/blender/makesrna/intern/rna_gpencil.c
+++ b/source/blender/makesrna/intern/rna_gpencil.c
@@ -289,6 +289,11 @@ static void rna_def_gpencil_stroke_point(BlenderRNA *brna)
 	RNA_def_property_range(prop, 0.0f, 1.0f);
 	RNA_def_property_ui_text(prop, "Pressure", "Pressure of tablet at point when drawing it");
 	RNA_def_property_update(prop, NC_GPENCIL | ND_DATA, "rna_GPencil_update");
+	
+	prop = RNA_def_property(srna, "select", PROP_BOOLEAN, PROP_NONE);
+	RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_SPOINT_SELECT);
+	RNA_def_property_ui_text(prop, "Select", "Point is selected for viewport editing");
+	RNA_def_property_update(prop, NC_GPENCIL | ND_DATA, "rna_GPencil_update");
 }
 
 static void rna_def_gpencil_stroke_points_api(BlenderRNA *brna, PropertyRNA *cprop)




More information about the Bf-blender-cvs mailing list