[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [21096] branches/blender2.5/blender/source /blender: 2.5: Tool Settings

Brecht Van Lommel brecht at blender.org
Tue Jun 23 02:41:55 CEST 2009


Revision: 21096
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=21096
Author:   blendix
Date:     2009-06-23 02:41:55 +0200 (Tue, 23 Jun 2009)

Log Message:
-----------
2.5: Tool Settings

* Moved proportional edit, snap, autokey mode, and a few others
  from Scene to ToolSettings.
* RNA wrapped properties in ToolSettings for the UV editor:
  proportional edit, snap settings, selection modes.

Modified Paths:
--------------
    branches/blender2.5/blender/source/blender/blenkernel/intern/scene.c
    branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c
    branches/blender2.5/blender/source/blender/editors/armature/editarmature_sketch.c
    branches/blender2.5/blender/source/blender/editors/include/ED_keyframing.h
    branches/blender2.5/blender/source/blender/editors/include/UI_icons.h
    branches/blender2.5/blender/source/blender/editors/mesh/editmesh.c
    branches/blender2.5/blender/source/blender/editors/mesh/editmesh_mods.c
    branches/blender2.5/blender/source/blender/editors/object/object_edit.c
    branches/blender2.5/blender/source/blender/editors/physics/editparticle.c
    branches/blender2.5/blender/source/blender/editors/space_image/image_header.c
    branches/blender2.5/blender/source/blender/editors/space_time/time_header.c
    branches/blender2.5/blender/source/blender/editors/space_view3d/drawobject.c
    branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_buttons.c
    branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_header.c
    branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_select.c
    branches/blender2.5/blender/source/blender/editors/transform/transform.c
    branches/blender2.5/blender/source/blender/editors/transform/transform.h
    branches/blender2.5/blender/source/blender/editors/transform/transform_conversions.c
    branches/blender2.5/blender/source/blender/editors/transform/transform_generics.c
    branches/blender2.5/blender/source/blender/editors/transform/transform_snap.c
    branches/blender2.5/blender/source/blender/editors/uvedit/uvedit_draw.c
    branches/blender2.5/blender/source/blender/editors/uvedit/uvedit_ops.c
    branches/blender2.5/blender/source/blender/makesdna/DNA_scene_types.h
    branches/blender2.5/blender/source/blender/makesdna/DNA_space_types.h
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_scene.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_wm.c

Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/scene.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/scene.c	2009-06-23 00:19:10 UTC (rev 21095)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/scene.c	2009-06-23 00:41:55 UTC (rev 21096)
@@ -203,9 +203,6 @@
 
 	sce= alloc_libblock(&G.main->scene, ID_SCE, name);
 	sce->lay= 1;
-	sce->selectmode= SCE_SELECT_VERTEX;
-	sce->editbutsize= 0.1;
-	sce->autokey_mode= U.autokey_mode;
 	
 	sce->r.mode= R_GAMMA;
 	sce->r.cfra= 1;
@@ -275,6 +272,10 @@
 	sce->toolsettings->select_thresh= 0.01f;
 	sce->toolsettings->jointrilimit = 0.8f;
 
+	sce->toolsettings->selectmode= SCE_SELECT_VERTEX;
+	sce->toolsettings->normalsize= 0.1;
+	sce->toolsettings->autokey_mode= U.autokey_mode;
+
 	sce->toolsettings->skgen_resolution = 100;
 	sce->toolsettings->skgen_threshold_internal 	= 0.01f;
 	sce->toolsettings->skgen_threshold_external 	= 0.01f;

Modified: branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c	2009-06-23 00:19:10 UTC (rev 21095)
+++ branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c	2009-06-23 00:41:55 UTC (rev 21096)
@@ -7102,22 +7102,14 @@
 	
 
 	if(main->versionfile <= 234) {
-		Scene *sce;
 		World *wo;
 		bScreen *sc;
-		int set_zbuf_sel=0;
 		
 		// force sumo engine to be active
 		for (wo = main->world.first; wo; wo= wo->id.next) {
 			if(wo->physicsEngine==0) wo->physicsEngine = 2;
 		}
 		
-		for (sce= main->scene.first; sce; sce= sce->id.next) {
-			if(sce->selectmode==0) {
-				sce->selectmode= SCE_SELECT_VERTEX;
-				set_zbuf_sel= 1;
-			}
-		}
 		for (sc= main->screen.first; sc; sc= sc->id.next) {
 			ScrArea *sa;
 			for (sa= sc->areabase.first; sa; sa= sa->next) {
@@ -7125,7 +7117,7 @@
 				for (sl= sa->spacedata.first; sl; sl= sl->next) {
 					if(sl->spacetype==SPACE_VIEW3D) {
 						View3D *v3d= (View3D *)sl;
-						if(set_zbuf_sel) v3d->flag |= V3D_ZBUF_SELECT;
+						v3d->flag |= V3D_ZBUF_SELECT;
 					}
 					else if(sl->spacetype==SPACE_TEXT) {
 						SpaceText *st= (SpaceText *)sl;
@@ -7160,16 +7152,10 @@
 	}
 	if(main->versionfile <= 236) {
 		Object *ob;
-		Scene *sce= main->scene.first;
 		Camera *cam= main->camera.first;
 		Material *ma;
 		bScreen *sc;
 
-		while(sce) {
-			if(sce->editbutsize==0.0) sce->editbutsize= 0.1f;
-			
-			sce= sce->id.next;
-		}
 		while(cam) {
 			if(cam->ortho_scale==0.0) {
 				cam->ortho_scale= 256.0f/cam->lens;
@@ -8795,15 +8781,6 @@
 			}
 		}
 	}
-	/* autokey mode settings now used from scene, but need to be initialised off userprefs */
-	if (main->versionfile < 247 || (main->versionfile == 247 && main->subversionfile < 8)) {
-		Scene *sce;
-		
-		for (sce= main->scene.first; sce; sce= sce->id.next) {
-			if (sce->autokey_mode == 0)
-				sce->autokey_mode= U.autokey_mode;
-		}
-	}
 
 	if (main->versionfile < 247 || (main->versionfile == 247 && main->subversionfile < 9)) {
 		Lamp *la= main->lamp.first;
@@ -8996,6 +8973,34 @@
 	
 	}
 
+	if (main->versionfile < 249 && main->subversionfile < 2) {
+		Scene *sce= main->scene.first;
+		Sequence *seq;
+		Editing *ed;
+		
+		while(sce) {
+			ed= sce->ed;
+			if(ed) {
+				SEQP_BEGIN(ed, seq) {
+					if (seq->strip && seq->strip->proxy){
+						if (sce->r.size != 100.0) {
+							seq->strip->proxy->size
+								= sce->r.size;
+						} else {
+							seq->strip->proxy->size
+								= 25.0;
+						}
+						seq->strip->proxy->quality =90;
+					}
+				}
+				SEQ_END
+			}
+			
+			sce= sce->id.next;
+		}
+
+	}
+
 	if (main->versionfile < 250) {
 		bScreen *screen;
 		Scene *scene;
@@ -9081,6 +9086,8 @@
 	{
 		Object *ob;
 		Material *ma;
+		Scene *sce;
+		ToolSettings *ts;
 		int i;
 
 		for(ob = main->object.first; ob; ob = ob->id.next) {
@@ -9153,37 +9160,17 @@
 				ma->mode &= ~MA_HALO;
 			}
 		}
-	}
-	
-	if (main->versionfile < 249 && main->subversionfile < 2) {
-		Scene *sce= main->scene.first;
-		Sequence *seq;
-		Editing *ed;
-		
-		while(sce) {
-			ed= sce->ed;
-			if(ed) {
-				SEQP_BEGIN(ed, seq) {
-					if (seq->strip && seq->strip->proxy){
-						if (sce->r.size != 100.0) {
-							seq->strip->proxy->size
-								= sce->r.size;
-						} else {
-							seq->strip->proxy->size
-								= 25.0;
-						}
-						seq->strip->proxy->quality =90;
-					}
-				}
-				SEQ_END
+
+		for(sce = main->scene.first; sce; sce = sce->id.next) {
+			ts= sce->toolsettings;
+			if(ts->normalsize == 0.0) {
+				ts->normalsize= 0.1f;
+				ts->selectmode= SCE_SELECT_VERTEX;
+				ts->autokey_mode= U.autokey_mode;
 			}
-			
-			sce= sce->id.next;
 		}
-
 	}
 
-
 	/* WATCH IT!!!: pointers from libdata have not been converted yet here! */
 	/* WATCH IT 2!: Userdef struct init has to be in src/usiblender.c! */
 

Modified: branches/blender2.5/blender/source/blender/editors/armature/editarmature_sketch.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/armature/editarmature_sketch.c	2009-06-23 00:19:10 UTC (rev 21095)
+++ branches/blender2.5/blender/source/blender/editors/armature/editarmature_sketch.c	2009-06-23 00:41:55 UTC (rev 21096)
@@ -243,6 +243,7 @@
 {
 	Object *obedit = CTX_data_edit_object(C);
 	Scene *scene = CTX_data_scene(C);
+	ToolSettings *ts = CTX_data_tool_settings(C);
 	Base *base;
 	int index = 0;
 
@@ -263,7 +264,7 @@
 			index++;
 			BLI_ghash_insert(TEMPLATES_HASH, SET_INT_IN_POINTER(index), ob);
 			
-			if (ob == scene->toolsettings->skgen_template)
+			if (ob == ts->skgen_template)
 			{
 				TEMPLATES_CURRENT = index;
 			}
@@ -305,8 +306,9 @@
 
 int   BIF_currentTemplate(bContext *C)
 {
-	Scene *scene = CTX_data_scene(C);
-	if (TEMPLATES_CURRENT == 0 && scene->toolsettings->skgen_template != NULL)
+	ToolSettings *ts = CTX_data_tool_settings(C);
+
+	if (TEMPLATES_CURRENT == 0 && ts->skgen_template != NULL)
 	{
 		GHashIterator ghi;
 		BLI_ghashIterator_init(&ghi, TEMPLATES_HASH);
@@ -316,7 +318,7 @@
 			Object *ob = BLI_ghashIterator_getValue(&ghi);
 			int key = GET_INT_FROM_POINTER(BLI_ghashIterator_getKey(&ghi));
 			
-			if (ob == scene->toolsettings->skgen_template)
+			if (ob == ts->skgen_template)
 			{
 				TEMPLATES_CURRENT = key;
 				break;
@@ -360,8 +362,8 @@
 
 int BIF_nbJointsTemplate(bContext *C)
 {
-	Scene *scene = CTX_data_scene(C);
-	RigGraph *rg = sk_makeTemplateGraph(C, scene->toolsettings->skgen_template);
+	ToolSettings *ts = CTX_data_tool_settings(C);
+	RigGraph *rg = sk_makeTemplateGraph(C, ts->skgen_template);
 	
 	if (rg)
 	{
@@ -375,7 +377,7 @@
 
 char * BIF_nameBoneTemplate(bContext *C)
 {
-	Scene *scene = CTX_data_scene(C);
+	ToolSettings *ts = CTX_data_tool_settings(C);
 	SK_Sketch *stk = GLOBAL_sketch;
 	RigGraph *rg;
 	int index = 0;
@@ -385,7 +387,7 @@
 		index = stk->active_stroke->nb_points;
 	}
 	
-	rg = sk_makeTemplateGraph(C, scene->toolsettings->skgen_template);
+	rg = sk_makeTemplateGraph(C, ts->skgen_template);
 	
 	if (rg == NULL)
 	{
@@ -418,14 +420,14 @@
 
 void  BIF_setTemplate(bContext *C, int index)
 {
-	Scene *scene = CTX_data_scene(C);
+	ToolSettings *ts = CTX_data_tool_settings(C);
 	if (index > 0)
 	{
-		scene->toolsettings->skgen_template = BLI_ghash_lookup(TEMPLATES_HASH, SET_INT_IN_POINTER(index));
+		ts->skgen_template = BLI_ghash_lookup(TEMPLATES_HASH, SET_INT_IN_POINTER(index));
 	}
 	else
 	{
-		scene->toolsettings->skgen_template = NULL;
+		ts->skgen_template = NULL;
 		
 		if (TEMPLATE_RIGG != NULL)
 		{
@@ -439,19 +441,19 @@
 
 void sk_autoname(bContext *C, ReebArc *arc)
 {
-	Scene *scene = CTX_data_scene(C);
-	if (scene->toolsettings->skgen_retarget_options & SK_RETARGET_AUTONAME)
+	ToolSettings *ts = CTX_data_tool_settings(C);
+	if (ts->skgen_retarget_options & SK_RETARGET_AUTONAME)
 	{
 		if (arc == NULL)
 		{
-			char *num = scene->toolsettings->skgen_num_string;
+			char *num = ts->skgen_num_string;
 			int i = atoi(num);
 			i++;
 			BLI_snprintf(num, 8, "%i", i);
 		}
 		else
 		{
-			char *side = scene->toolsettings->skgen_side_string;
+			char *side = ts->skgen_side_string;
 			int valid = 0;
 			int caps = 0;
 			
@@ -525,7 +527,7 @@
 
 void sk_retargetStroke(bContext *C, SK_Stroke *stk)
 {
-	Scene *scene = CTX_data_scene(C);
+	ToolSettings *ts = CTX_data_tool_settings(C);
 	Object *obedit = CTX_data_edit_object(C);
 	float imat[4][4];
 	float tmat[3][3];
@@ -541,7 +543,7 @@
 	
 	sk_autoname(C, arc);
 	
-	rg = sk_makeTemplateGraph(C, scene->toolsettings->skgen_template);
+	rg = sk_makeTemplateGraph(C, ts->skgen_template);
 
 	BIF_retargetArc(C, arc, rg);
 	
@@ -1408,10 +1410,10 @@
 
 void sk_endStroke(bContext *C, SK_Sketch *sketch)
 {
-	Scene *scene = CTX_data_scene(C);
+	ToolSettings *ts = CTX_data_tool_settings(C);
 	sk_shrinkStrokeBuffer(sketch->active_stroke);
 
-	if (scene->toolsettings->bone_sketching & BONE_SKETCHING_ADJUST)
+	if (ts->bone_sketching & BONE_SKETCHING_ADJUST)
 	{
 		sk_endOverdraw(sketch);
 	}
@@ -1521,10 +1523,10 @@
 
 int sk_getStrokeSnapPoint(bContext *C, SK_Point *pt, SK_Sketch *sketch, SK_Stroke *stk, SK_DrawData *dd)
 {
-	Scene *scene = CTX_data_scene(C);
+	ToolSettings *ts = CTX_data_tool_settings(C);
 	int point_added = 0;
 
-	if (scene->snap_mode == SCE_SNAP_MODE_VOLUME)
+	if (ts->snap_mode == SCE_SNAP_MODE_VOLUME)
 	{
 		ListBase depth_peels;
 		DepthPeel *p1, *p2;
@@ -1557,7 +1559,7 @@
 				p1->flag = 1;
 	
 				/* if peeling objects, take the first and last from each object */			
-				if (scene->snap_flag & SCE_SNAP_PEEL_OBJECT)
+				if (ts->snap_flag & SCE_SNAP_PEEL_OBJECT)
 				{
 					DepthPeel *peel;
 					for (peel = p1->next; peel; peel = peel->next)
@@ -1627,7 +1629,7 @@
 		int dist = SNAP_MIN_DISTANCE; // Use a user defined value here
 
 		/* snap to strokes */
-		// if (scene->snap_mode == SCE_SNAP_MODE_VERTEX) /* snap all the time to strokes */
+		// if (ts->snap_mode == SCE_SNAP_MODE_VERTEX) /* snap all the time to strokes */
 		for (snap_stk = sketch->strokes.first; snap_stk; snap_stk = snap_stk->next)
 		{
 			SK_Point *spt = NULL;
@@ -1713,7 +1715,7 @@
 
 void sk_addStrokePoint(bContext *C, SK_Sketch *sketch, SK_Stroke *stk, SK_DrawData *dd, short snap)
 {
-	Scene *scene = CTX_data_scene(C);
+	ToolSettings *ts = CTX_data_tool_settings(C);
 	int point_added = 0;
 	
 	if (snap)
@@ -1726,7 +1728,7 @@
 		point_added = sk_addStrokeDrawPoint(C, sketch, stk, dd);
 	}
 	
-	if (stk == sketch->active_stroke && scene->toolsettings->bone_sketching & BONE_SKETCHING_ADJUST)

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list