[Bf-blender-cvs] [94e2712] blend-thumbnail: Remove RNA thumbnails API for now - we have to rethink a bit 'metadata' access for .blend file.

Bastien Montagne noreply at git.blender.org
Thu Aug 27 15:04:10 CEST 2015


Commit: 94e27120132d4e965a7a0a204ef7236132110797
Author: Bastien Montagne
Date:   Thu Aug 27 10:40:24 2015 +0200
Branches: blend-thumbnail
https://developer.blender.org/rB94e27120132d4e965a7a0a204ef7236132110797

Remove RNA thumbnails API for now - we have to rethink a bit 'metadata' access for .blend file.

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

M	source/blender/makesrna/intern/rna_main.c
M	source/blender/makesrna/intern/rna_main_api.c
M	source/blenderplayer/bad_level_call_stubs/stubs.c

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

diff --git a/source/blender/makesrna/intern/rna_main.c b/source/blender/makesrna/intern/rna_main.c
index deb1cf5..348fa3c 100644
--- a/source/blender/makesrna/intern/rna_main.c
+++ b/source/blender/makesrna/intern/rna_main.c
@@ -295,51 +295,6 @@ static void rna_Main_version_get(PointerRNA *ptr, int *value)
 	value[2] = bmain->subversionfile;
 }
 
-static void rna_Main_thumbnail_size_get(PointerRNA *ptr, int *values)
-{
-	Main *bmain = (Main *)ptr->data;
-
-	if (bmain->blen_thumb) {
-		values[0] = bmain->blen_thumb[0];
-		values[1] = bmain->blen_thumb[1];
-	}
-	else {
-		values[0] = values[1] = 0;
-	}
-}
-
-static int rna_Main_thumbnail_pixels_get_length(PointerRNA *ptr, int length[RNA_MAX_ARRAY_DIMENSION])
-{
-	Main *bmain = (Main *)ptr->data;
-
-	if (bmain->blen_thumb) {
-		length[0] = bmain->blen_thumb[0] * bmain->blen_thumb[1];
-	}
-	else {
-		length[0] = 0;
-	}
-	return length[0];
-}
-
-static void rna_Main_thumbnail_pixels_get(PointerRNA *ptr, int *values)
-{
-	Main *bmain = (Main *)ptr->data;
-
-	if (bmain->blen_thumb) {
-		memcpy(values, &bmain->blen_thumb[2], bmain->blen_thumb[0] * bmain->blen_thumb[1] * sizeof(*bmain->blen_thumb));
-	}
-}
-
-static void rna_Main_thumbnail_pixels_set(PointerRNA *ptr, const int *values)
-{
-	Main *bmain = (Main *)ptr->data;
-
-	/* We can directly override existing data in Main... */
-	if (bmain->blen_thumb) {
-		memcpy(&bmain->blen_thumb[2], values, bmain->blen_thumb[0] * bmain->blen_thumb[1] * sizeof(*bmain->blen_thumb));
-	}
-}
-
 #ifdef UNIT_TEST
 
 static PointerRNA rna_Test_test_get(PointerRNA *ptr)
@@ -442,19 +397,6 @@ void RNA_def_main(BlenderRNA *brna)
 	RNA_def_property_clear_flag(prop, PROP_EDITABLE);
 	RNA_def_property_flag(prop, PROP_THICK_WRAP);
 
-	prop = RNA_def_int_vector(srna, "thumbnail_size", 2, NULL, 0, 0, "Thumbnail Size",
-	                          "Width and height in pixels (constants)", 0, 0);
-	RNA_def_property_subtype(prop, PROP_PIXEL);
-	RNA_def_property_clear_flag(prop, PROP_EDITABLE);
-	RNA_def_property_int_funcs(prop, "rna_Main_thumbnail_size_get", NULL, NULL);
-
-	prop = RNA_def_property(srna, "thumbnail_pixels", PROP_INT, PROP_NONE);
-	RNA_def_property_flag(prop, PROP_DYNAMIC);
-	RNA_def_property_multi_array(prop, 1, NULL);
-	RNA_def_property_ui_text(prop, "Thumbnail Pixels", "Thumbnail pixels, as bytes (always RGBA 32bits)");
-	RNA_def_property_dynamic_array_funcs(prop, "rna_Main_thumbnail_pixels_get_length");
-	RNA_def_property_int_funcs(prop, "rna_Main_thumbnail_pixels_get", "rna_Main_thumbnail_pixels_set", NULL);
-
 	for (i = 0; lists[i].name; i++) {
 		prop = RNA_def_property(srna, lists[i].identifier, PROP_COLLECTION, PROP_NONE);
 		RNA_def_property_struct_type(prop, lists[i].type);
diff --git a/source/blender/makesrna/intern/rna_main_api.c b/source/blender/makesrna/intern/rna_main_api.c
index 069fb89..9ccff3e 100644
--- a/source/blender/makesrna/intern/rna_main_api.c
+++ b/source/blender/makesrna/intern/rna_main_api.c
@@ -106,56 +106,13 @@
 #include "DNA_gpencil_types.h"
 
 #include "ED_screen.h"
-#include "ED_view3d.h"
 
 #include "BLT_translation.h"
 
-#include "IMB_imbuf.h"
-#include "IMB_imbuf_types.h"
-#include "IMB_thumbs.h"
-
 #ifdef WITH_PYTHON
 #  include "BPY_extern.h"
 #endif
 
-static void rna_Main_thumbnail_generate(Main *bmain, Scene *sce)
-{
-	MEM_SAFE_FREE(bmain->blen_thumb);
-
-	if (sce && sce->camera) {
-		/* Simplified version of blend_file_thumb() in wm_files.c */
-		char err_out[256] = "unknown";
-
-		const float aspect = (sce->r.xsch * sce->r.xasp) / (sce->r.ysch * sce->r.yasp);
-		ImBuf *ibuf = ED_view3d_draw_offscreen_imbuf_simple(
-		                  sce, sce->camera, BLEN_THUMB_SIZE * 2, BLEN_THUMB_SIZE * 2,
-		                  IB_rect, OB_SOLID, false, false, false, R_ALPHAPREMUL, NULL, err_out);
-
-		if (ibuf) {
-			/* dirty oversampling */
-			IMB_scaleImBuf(ibuf, BLEN_THUMB_SIZE, BLEN_THUMB_SIZE);
-
-			/* add pretty overlay */
-			IMB_thumb_overlay_blend(ibuf->rect, ibuf->x, ibuf->y, aspect);
-
-			bmain->blen_thumb = BKE_main_thumbnail_from_imbuf(NULL, ibuf);
-
-			IMB_freeImBuf(ibuf);
-		}
-		else {
-			BKE_main_thumbnail_create(bmain);
-		}
-	}
-	else {
-		BKE_main_thumbnail_create(bmain);
-	}
-}
-
-static void rna_Main_thumbnail_delete(Main *bmain)
-{
-	MEM_SAFE_FREE(bmain->blen_thumb);
-}
-
 static Camera *rna_Main_cameras_new(Main *bmain, const char *name)
 {
 	ID *id = BKE_camera_add(bmain, name);
@@ -852,21 +809,12 @@ static int rna_Main_linestyle_is_updated_get(PointerRNA *ptr) { return DAG_id_ty
 
 #else
 
-void RNA_api_main(StructRNA *srna)
+void RNA_api_main(StructRNA *UNUSED(srna))
 {
+#if 0
 	FunctionRNA *func;
+	PropertyRNA *parm;
 
-	RNA_def_struct_sdna(srna, "Main");
-
-	func = RNA_def_function(srna, "thumbnail_generate", "rna_Main_thumbnail_generate");
-	RNA_def_function_ui_description(func, "Generate a thumbnail for this Main");
-	RNA_def_pointer(func, "scene", "Scene", "",
-	                "Scene to generate preview from (if None or has no camera, black preview is generated)");
-
-	func = RNA_def_function(srna, "thumbnail_delete", "rna_Main_thumbnail_delete");
-	RNA_def_function_ui_description(func, "Delete the thumbnail of this Main");
-
-#if 0
 	/* maybe we want to add functions in 'bpy.data' still?
 	 * for now they are all in collections bpy.data.images.new(...) */
 	func = RNA_def_function(srna, "add_image", "rna_Main_add_image");
diff --git a/source/blenderplayer/bad_level_call_stubs/stubs.c b/source/blenderplayer/bad_level_call_stubs/stubs.c
index c39f736..5e5e29a 100644
--- a/source/blenderplayer/bad_level_call_stubs/stubs.c
+++ b/source/blenderplayer/bad_level_call_stubs/stubs.c
@@ -451,10 +451,6 @@ void ED_view3D_background_image_clear(struct View3D *v3d) RET_NONE
 void ED_view3d_update_viewmat(struct Scene *scene, struct View3D *v3d, struct ARegion *ar, float viewmat[4][4], float winmat[4][4]) RET_NONE
 float ED_view3d_grid_scale(struct Scene *scene, struct View3D *v3d, const char **grid_unit) RET_ZERO
 void ED_view3d_shade_update(struct Main *bmain, struct Scene *scene, struct View3D *v3d, struct ScrArea *sa) RET_NONE
-struct ImBuf *ED_view3d_draw_offscreen_imbuf_simple(
-        struct Scene *scene, struct Object *camera, int width, int height, unsigned int flag, int drawtype,
-        bool use_solid_tex, bool use_gpencil, bool draw_background, int alpha_mode,
-        const char *viewname, char err_out[256]) RET_NULL
 void ED_node_shader_default(const struct bContext *C, struct ID *id) RET_NONE
 void ED_screen_animation_timer_update(struct bScreen *screen, int redraws, int refresh) RET_NONE
 struct bScreen *ED_screen_animation_playing(const struct wmWindowManager *wm) RET_NULL




More information about the Bf-blender-cvs mailing list