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

Reply via email to