[Bf-blender-cvs] [deb6f73] master: Move do-versions functions for 2.70

Campbell Barton noreply at git.blender.org
Wed Mar 5 18:42:22 CET 2014


Commit: deb6f733a6aed0c578e1ee01e4d0d41563574bc7
Author: Campbell Barton
Date:   Thu Mar 6 04:33:15 2014 +1100
https://developer.blender.org/rBdeb6f733a6aed0c578e1ee01e4d0d41563574bc7

Move do-versions functions for 2.70

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

M	source/blender/blenloader/CMakeLists.txt
M	source/blender/blenloader/intern/readfile.c
M	source/blender/blenloader/intern/readfile.h
M	source/blender/blenloader/intern/versioning_260.c
A	source/blender/blenloader/intern/versioning_270.c

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

diff --git a/source/blender/blenloader/CMakeLists.txt b/source/blender/blenloader/CMakeLists.txt
index ba87a43..7f557d3 100644
--- a/source/blender/blenloader/CMakeLists.txt
+++ b/source/blender/blenloader/CMakeLists.txt
@@ -47,6 +47,7 @@ set(SRC
 	intern/undofile.c
 	intern/versioning_250.c
 	intern/versioning_260.c
+	intern/versioning_270.c
 	intern/versioning_defaults.c
 	intern/versioning_legacy.c
 	intern/writefile.c
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index 61df546..6c1aa01 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -7445,6 +7445,7 @@ static void do_versions(FileData *fd, Library *lib, Main *main)
 	blo_do_versions_pre250(fd, lib, main);
 	blo_do_versions_250(fd, lib, main);
 	blo_do_versions_260(fd, lib, main);
+	blo_do_versions_270(fd, lib, main);
 
 	/* WATCH IT!!!: pointers from libdata have not been converted yet here! */
 	/* WATCH IT 2!: Userdef struct init see do_versions_userdef() above! */
diff --git a/source/blender/blenloader/intern/readfile.h b/source/blender/blenloader/intern/readfile.h
index fe22499..d56f58d 100644
--- a/source/blender/blenloader/intern/readfile.h
+++ b/source/blender/blenloader/intern/readfile.h
@@ -161,6 +161,7 @@ void blo_do_versions_key_uidgen(struct Key *key);
 void blo_do_versions_pre250(struct FileData *fd, struct Library *lib, struct Main *main);
 void blo_do_versions_250(struct FileData *fd, struct Library *lib, struct Main *main);
 void blo_do_versions_260(struct FileData *fd, struct Library *lib, struct Main *main);
+void blo_do_versions_270(struct FileData *fd, struct Library *lib, struct Main *main);
 
 #endif
 
diff --git a/source/blender/blenloader/intern/versioning_260.c b/source/blender/blenloader/intern/versioning_260.c
index a743847..43da85c 100644
--- a/source/blender/blenloader/intern/versioning_260.c
+++ b/source/blender/blenloader/intern/versioning_260.c
@@ -2706,59 +2706,4 @@ void blo_do_versions_260(FileData *fd, Library *UNUSED(lib), Main *main)
 			}
 		}
 	}
-
-	if (!DNA_struct_elem_find(fd->filesdna, "BevelModifierData", "float", "profile")) {
-		Object *ob;
-
-		for (ob = main->object.first; ob; ob = ob->id.next) {
-			ModifierData *md;
-			for (md = ob->modifiers.first; md; md = md->next) {
-				if (md->type == eModifierType_Bevel) {
-					BevelModifierData *bmd = (BevelModifierData *)md;
-					bmd->profile = 0.5f;
-					bmd->val_flags = MOD_BEVEL_AMT_OFFSET;
-				}
-			}
-		}
-	}
-
-	{
-		/* nodes don't use fixed node->id any more, clean up */
-		FOREACH_NODETREE(main, ntree, id) {
-			if (ntree->type == NTREE_COMPOSIT) {
-				bNode *node;
-				for (node = ntree->nodes.first; node; node = node->next) {
-					if (ELEM(node->type, CMP_NODE_COMPOSITE, CMP_NODE_OUTPUT_FILE)) {
-						node->id = NULL;
-					}
-				}
-			}
-		} FOREACH_NODETREE_END
-
-		{
-			bScreen *screen;
-
-			for (screen = main->screen.first; screen; screen = screen->id.next) {
-				ScrArea *area;
-				for (area = screen->areabase.first; area; area = area->next) {
-					SpaceLink *space_link;
-					for (space_link = area->spacedata.first; space_link; space_link = space_link->next) {
-						if (space_link->spacetype == SPACE_CLIP) {
-							SpaceClip *space_clip = (SpaceClip *) space_link;
-							if (space_clip->mode != SC_MODE_MASKEDIT) {
-								space_clip->mode = SC_MODE_TRACKING;
-							}
-						}
-					}
-				}
-			}
-		}
-	}
-
-	if (!DNA_struct_elem_find(fd->filesdna, "MovieTrackingSettings", "float", "default_weight")) {
-		MovieClip *clip;
-		for (clip = main->movieclip.first; clip; clip = clip->id.next) {
-			clip->tracking.settings.default_weight = 1.0f;
-		}
-	}
 }
diff --git a/source/blender/blenloader/intern/versioning_270.c b/source/blender/blenloader/intern/versioning_270.c
new file mode 100644
index 0000000..d11e434
--- /dev/null
+++ b/source/blender/blenloader/intern/versioning_270.c
@@ -0,0 +1,109 @@
+/*
+ * ***** BEGIN GPL LICENSE BLOCK *****
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * Contributor(s): Blender Foundation
+ *
+ * ***** END GPL LICENSE BLOCK *****
+ *
+ */
+
+/** \file blender/blenloader/intern/versioning_270.c
+ *  \ingroup blenloader
+ */
+
+#include "BLI_utildefines.h"
+#include "BLI_compiler_attrs.h"
+
+/* allow readfile to use deprecated functionality */
+#define DNA_DEPRECATED_ALLOW
+
+#include "DNA_sdna_types.h"
+#include "DNA_space_types.h"
+#include "DNA_screen_types.h"
+#include "DNA_object_types.h"
+#include "DNA_modifier_types.h"
+#include "DNA_sdna_types.h"
+
+#include "DNA_genfile.h"
+
+
+#include "BKE_main.h"
+#include "BKE_node.h"
+
+#include "BLO_readfile.h"
+
+#include "readfile.h"
+
+
+void blo_do_versions_270(FileData *fd, Library *UNUSED(lib), Main *main)
+{
+	if (!MAIN_VERSION_ATLEAST(main, 270, 0)) {
+
+		if (!DNA_struct_elem_find(fd->filesdna, "BevelModifierData", "float", "profile")) {
+			Object *ob;
+
+			for (ob = main->object.first; ob; ob = ob->id.next) {
+				ModifierData *md;
+				for (md = ob->modifiers.first; md; md = md->next) {
+					if (md->type == eModifierType_Bevel) {
+						BevelModifierData *bmd = (BevelModifierData *)md;
+						bmd->profile = 0.5f;
+						bmd->val_flags = MOD_BEVEL_AMT_OFFSET;
+					}
+				}
+			}
+		}
+
+		/* nodes don't use fixed node->id any more, clean up */
+		FOREACH_NODETREE(main, ntree, id) {
+			if (ntree->type == NTREE_COMPOSIT) {
+				bNode *node;
+				for (node = ntree->nodes.first; node; node = node->next) {
+					if (ELEM(node->type, CMP_NODE_COMPOSITE, CMP_NODE_OUTPUT_FILE)) {
+						node->id = NULL;
+					}
+				}
+			}
+		} FOREACH_NODETREE_END
+
+		{
+			bScreen *screen;
+
+			for (screen = main->screen.first; screen; screen = screen->id.next) {
+				ScrArea *area;
+				for (area = screen->areabase.first; area; area = area->next) {
+					SpaceLink *space_link;
+					for (space_link = area->spacedata.first; space_link; space_link = space_link->next) {
+						if (space_link->spacetype == SPACE_CLIP) {
+							SpaceClip *space_clip = (SpaceClip *) space_link;
+							if (space_clip->mode != SC_MODE_MASKEDIT) {
+								space_clip->mode = SC_MODE_TRACKING;
+							}
+						}
+					}
+				}
+			}
+		}
+
+		if (!DNA_struct_elem_find(fd->filesdna, "MovieTrackingSettings", "float", "default_weight")) {
+			MovieClip *clip;
+			for (clip = main->movieclip.first; clip; clip = clip->id.next) {
+				clip->tracking.settings.default_weight = 1.0f;
+			}
+		}
+	}
+}




More information about the Bf-blender-cvs mailing list