Revision: 18516 http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18516 Author: blendix Date: 2009-01-15 05:22:23 +0100 (Thu, 15 Jan 2009)
Log Message: ----------- RNA * Work around bScreen/Screen DNA name patching, so bScreen does not require manual callbacks to be written for properties. * Added SpaceLink and SpaceImage RNA. * Fix issue initializing ID property arrays with default values. DNA * Some DNA changes for space image. * And a fix for corrupt clone image pointer in reading brushes. Modified Paths: -------------- branches/blender2.5/blender/source/blender/blenloader/intern/readfile.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/RNA_access.h branches/blender2.5/blender/source/blender/makesrna/intern/CMakeLists.txt branches/blender2.5/blender/source/blender/makesrna/intern/makesrna.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_access.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_internal.h branches/blender2.5/blender/source/blender/makesrna/intern/rna_material.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_scene.c branches/blender2.5/blender/source/blender/makesrna/intern/rna_screen.c Added Paths: ----------- branches/blender2.5/blender/source/blender/makesrna/intern/rna_space.c Modified: branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c =================================================================== --- branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c 2009-01-15 04:13:38 UTC (rev 18515) +++ branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c 2009-01-15 04:22:23 UTC (rev 18516) @@ -1490,6 +1490,8 @@ if(mtex) mtex->tex= newlibadr_us(fd, brush->id.lib, mtex->tex); } + + brush->clone.image= newlibadr_us(fd, brush->id.lib, brush->clone.image); } } } @@ -5237,6 +5239,7 @@ break; } } + /* main region */ ar= MEM_callocN(sizeof(ARegion), "area region from do_versions"); Modified: branches/blender2.5/blender/source/blender/makesdna/DNA_scene_types.h =================================================================== --- branches/blender2.5/blender/source/blender/makesdna/DNA_scene_types.h 2009-01-15 04:13:38 UTC (rev 18515) +++ branches/blender2.5/blender/source/blender/makesdna/DNA_scene_types.h 2009-01-15 04:22:23 UTC (rev 18516) @@ -431,6 +431,8 @@ short uvcalc_mapdir; short uvcalc_mapalign; short uvcalc_flag; + short uv_flag, uv_selectmode; + short uv_pad[2]; /* Auto-IK */ short autoik_chainlen; @@ -838,6 +840,16 @@ #define UVCALC_NO_ASPECT_CORRECT 2 /* would call this UVCALC_ASPECT_CORRECT, except it should be default with old file */ #define UVCALC_TRANSFORM_CORRECT 4 /* adjust UV's while transforming to avoid distortion */ +/* toolsettings->uv_flag */ +#define UV_SYNC_SELECTION 1 +#define UV_SHOW_SAME_IMAGE 2 + +/* toolsettings->uv_selectmode */ +#define UV_SELECT_VERTEX 0 +#define UV_SELECT_EDGE 1 /* not implemented */ +#define UV_SELECT_FACE 2 +#define UV_SELECT_ISLAND 3 + /* toolsettings->edge_mode */ #define EDGE_MODE_SELECT 0 #define EDGE_MODE_TAG_SEAM 1 Modified: branches/blender2.5/blender/source/blender/makesdna/DNA_space_types.h =================================================================== --- branches/blender2.5/blender/source/blender/makesdna/DNA_space_types.h 2009-01-15 04:13:38 UTC (rev 18515) +++ branches/blender2.5/blender/source/blender/makesdna/DNA_space_types.h 2009-01-15 04:22:23 UTC (rev 18516) @@ -222,30 +222,26 @@ SpaceLink *next, *prev; ListBase regionbase; /* storage of regions for inactive spaces */ int spacetype; - float blockscale; + float blockscale; short blockhandler[8]; - - View2D v2d; /* depricated, copied to region */ struct Image *image; struct ImageUser iuser; struct CurveMapping *cumap; - short mode, menunr; - short imanr; + short menunr, imanr, pad2; short curtile; /* the currently active tile of the image when tile is enabled, is kept in sync with the active faces tile */ int flag; - short selectmode; short imtypenr, lock; - short pin; - float zoom; + short pin, pad3; char dt_uv; /* UV draw type */ char sticky; /* sticky selection type */ char dt_uvstretch; - char pad[5]; + char pad; float xof, yof; /* user defined offset, image is centered */ + float zoom, pad4; /* user defined zoom level */ float centx, centy; /* storage for offset while render drawing */ struct bGPdata *gpd; /* grease pencil data */ @@ -544,10 +540,6 @@ #define MOVIEFILE_ICON 1024 /* movie file that preview can't load */ #define FOLDERFILE 2048 /* represents folders for filtering */ -/* SpaceImage->mode */ -#define SI_TEXTURE 0 -#define SI_SHOW 1 - /* SpaceImage->dt_uv */ #define SI_UVDT_OUTLINE 0 #define SI_UVDT_DASH 1 @@ -565,12 +557,6 @@ #define SI_STICKY_DISABLE 1 #define SI_STICKY_VERTEX 2 -/* SpaceImage->selectmode */ -#define SI_SELECT_VERTEX 0 -#define SI_SELECT_EDGE 1 /* not implemented */ -#define SI_SELECT_FACE 2 -#define SI_SELECT_ISLAND 3 - /* SpaceImage->flag */ #define SI_BE_SQUARE 1<<0 #define SI_EDITTILE 1<<1 @@ -590,8 +576,8 @@ /* next two for render window dislay */ #define SI_PREVSPACE 1<<15 #define SI_FULLWINDOW 1<<16 -#define SI_SYNC_UVSEL 1<<17 -#define SI_LOCAL_UV 1<<18 +#define SI_DEPRECATED4 1<<17 +#define SI_DEPRECATED5 1<<18 /* this means that the image is drawn until it reaches the view edge, * in the image view, its unrelated to the 'tile' mode for texface */ #define SI_DRAW_TILE 1<<19 Modified: branches/blender2.5/blender/source/blender/makesrna/RNA_access.h =================================================================== --- branches/blender2.5/blender/source/blender/makesrna/RNA_access.h 2009-01-15 04:13:38 UTC (rev 18515) +++ branches/blender2.5/blender/source/blender/makesrna/RNA_access.h 2009-01-15 04:22:23 UTC (rev 18516) @@ -218,6 +218,9 @@ extern StructRNA RNA_SoftbodyModifier; extern StructRNA RNA_Sound; extern StructRNA RNA_SoundSequence; +extern StructRNA RNA_Space; +extern StructRNA RNA_SpaceImageEditor; +extern StructRNA RNA_SpaceUVEditor; extern StructRNA RNA_SpeedControlSequence; extern StructRNA RNA_SpotLamp; extern StructRNA RNA_StringProperty; Modified: branches/blender2.5/blender/source/blender/makesrna/intern/CMakeLists.txt =================================================================== --- branches/blender2.5/blender/source/blender/makesrna/intern/CMakeLists.txt 2009-01-15 04:13:38 UTC (rev 18515) +++ branches/blender2.5/blender/source/blender/makesrna/intern/CMakeLists.txt 2009-01-15 04:22:23 UTC (rev 18516) @@ -63,6 +63,7 @@ rna_sensor.c rna_sequence.c rna_sound.c + rna_space.c rna_text.c rna_texture.c rna_userdef.c @@ -109,6 +110,7 @@ rna_sensor_gen.c rna_sequence_gen.c rna_sound_gen.c + rna_space_gen.c rna_text_gen.c rna_texture_gen.c rna_userdef_gen.c Modified: branches/blender2.5/blender/source/blender/makesrna/intern/makesrna.c =================================================================== --- branches/blender2.5/blender/source/blender/makesrna/intern/makesrna.c 2009-01-15 04:13:38 UTC (rev 18515) +++ branches/blender2.5/blender/source/blender/makesrna/intern/makesrna.c 2009-01-15 04:22:23 UTC (rev 18516) @@ -579,7 +579,14 @@ PropertyDefRNA *dp; for(ds=DefRNA.structs.first; ds; ds=ds->next) { + /* DNA name for Screen is patched in 2.5, we do the reverse here .. */ + if(ds->dnaname && strcmp(ds->dnaname, "Screen") == 0) + ds->dnaname= "bScreen"; + for(dp=ds->properties.first; dp; dp=dp->next) { + if(dp->dnastructname && strcmp(dp->dnastructname, "Screen") == 0) + dp->dnastructname= "bScreen"; + if(dp->dnatype) { if(dp->prop->type == PROP_POINTER) { PointerPropertyRNA *pprop= (PointerPropertyRNA*)dp->prop; @@ -946,6 +953,7 @@ {"rna_scriptlink.c", RNA_def_scriptlink}, {"rna_sensor.c", RNA_def_sensor}, {"rna_sequence.c", RNA_def_sequence}, + {"rna_space.c", RNA_def_space}, {"rna_text.c", RNA_def_text}, {"rna_sound.c", RNA_def_sound}, {"rna_userdef.c", RNA_def_userdef}, Modified: branches/blender2.5/blender/source/blender/makesrna/intern/rna_access.c =================================================================== --- branches/blender2.5/blender/source/blender/makesrna/intern/rna_access.c 2009-01-15 04:13:38 UTC (rev 18515) +++ branches/blender2.5/blender/source/blender/makesrna/intern/rna_access.c 2009-01-15 04:22:23 UTC (rev 18516) @@ -580,8 +580,10 @@ return ((int*)IDP_Array(idprop))[index]; else if(bprop->getarray) return bprop->getarray(ptr, index); + else if(bprop->defaultarray) + return bprop->defaultarray[index]; else - return bprop->defaultarray[index]; + return 0; } void RNA_property_boolean_set_array(PointerRNA *ptr, PropertyRNA *prop, int index, int value) @@ -604,7 +606,10 @@ if(group) { idprop= IDP_New(IDP_ARRAY, val, (char*)prop->identifier); IDP_AddToGroup(group, idprop); - memcpy(idprop->data.pointer, bprop->defaultarray, sizeof(int)*prop->arraylength); + if(bprop->defaultarray) + memcpy(idprop->data.pointer, bprop->defaultarray, sizeof(int)*prop->arraylength); + else + memset(idprop->data.pointer, 0, sizeof(int)*prop->arraylength); ((int*)idprop->data.pointer)[index]= value; } } @@ -653,8 +658,10 @@ return ((int*)IDP_Array(idprop))[index]; else if(iprop->getarray) return iprop->getarray(ptr, index); + else if(iprop->defaultarray) + return iprop->defaultarray[index]; else - return iprop->defaultarray[index]; + return 0.0f; } void RNA_property_int_set_array(PointerRNA *ptr, PropertyRNA *prop, int index, int value) @@ -677,7 +684,10 @@ if(group) { idprop= IDP_New(IDP_ARRAY, val, (char*)prop->identifier); IDP_AddToGroup(group, idprop); - memcpy(idprop->data.pointer, iprop->defaultarray, sizeof(int)*prop->arraylength); + if(iprop->defaultarray) + memcpy(idprop->data.pointer, iprop->defaultarray, sizeof(int)*prop->arraylength); + else + memset(idprop->data.pointer, 0, sizeof(int)*prop->arraylength); ((int*)idprop->data.pointer)[index]= value; } } @@ -739,8 +749,10 @@ } else if(fprop->getarray) return fprop->getarray(ptr, index); + else if(fprop->defaultarray) + return fprop->defaultarray[index]; else - return fprop->defaultarray[index]; + return 0.0f; } void RNA_property_float_set_array(PointerRNA *ptr, PropertyRNA *prop, int index, float value) @@ -768,7 +780,10 @@ if(group) { idprop= IDP_New(IDP_ARRAY, val, (char*)prop->identifier); IDP_AddToGroup(group, idprop); - memcpy(idprop->data.pointer, fprop->defaultarray, sizeof(float)*prop->arraylength); + if(fprop->defaultarray) + memcpy(idprop->data.pointer, fprop->defaultarray, sizeof(float)*prop->arraylength); + else + memset(idprop->data.pointer, 0, sizeof(float)*prop->arraylength); ((float*)IDP_Array(idprop))[index]= value; } } Modified: branches/blender2.5/blender/source/blender/makesrna/intern/rna_internal.h =================================================================== --- branches/blender2.5/blender/source/blender/makesrna/intern/rna_internal.h 2009-01-15 04:13:38 UTC (rev 18515) +++ branches/blender2.5/blender/source/blender/makesrna/intern/rna_internal.h 2009-01-15 04:22:23 UTC (rev 18516) @@ -132,6 +132,7 @@ void RNA_def_scriptlink(struct BlenderRNA *brna); void RNA_def_sensor(struct BlenderRNA *brna); void RNA_def_sequence(struct BlenderRNA *brna); +void RNA_def_space(struct BlenderRNA *brna); void RNA_def_text(struct BlenderRNA *brna); void RNA_def_texture(struct BlenderRNA *brna); void RNA_def_sound(struct BlenderRNA *brna); Modified: branches/blender2.5/blender/source/blender/makesrna/intern/rna_material.c @@ Diff output truncated at 10240 characters. @@ _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org http://lists.blender.org/mailman/listinfo/bf-blender-cvs