[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