Revision: 27866
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=27866
Author:   blendix
Date:     2010-03-30 14:15:16 +0200 (Tue, 30 Mar 2010)

Log Message:
-----------
* Multiply for panorama cameras
* Some cases of struct name being set where it shouldnt have been.
* Spelling: wich --> which
* Copy and initialize uv modifier scale, remove unneeded enum.
* Ability to pin any object into the context.
* Update uv window while transforming (useful when used with UVProject modifier)
* Patch by Wahooney, so new template's are internal text and dont get saved over
  by mistake.
* Fix for https://bugzilla.redhat.com/show_bug.cgi?id=572186
  Bug 572186 - [abrt] crash in blender-2.49b-5.fc12: Process
  /usr/bin/blender.bin was killed by signal 6 (SIGABRT). Original fix submitted
  by Jochen Schmitt.
* [#21816] bpy.data.add_image has stopped working on Windows. moved to
  bpy.data.images.load(), missed this call.

(commits 
27726,27825,27828,27831,27832,27833,27834,27836,27837,27838,27839,27858 by 
Campbell from render25 branch)

Modified Paths:
--------------
    trunk/blender/release/plugins/sequence/blur.c
    trunk/blender/release/scripts/io/import_scene_obj.py
    trunk/blender/release/scripts/modules/bpy_types.py
    trunk/blender/release/scripts/ui/properties_data_modifier.py
    trunk/blender/release/scripts/ui/properties_object.py
    trunk/blender/release/scripts/ui/space_text.py
    trunk/blender/source/blender/blenkernel/BKE_library.h
    trunk/blender/source/blender/blenkernel/intern/library.c
    trunk/blender/source/blender/blenkernel/intern/modifier.c
    trunk/blender/source/blender/blenlib/intern/storage.c
    trunk/blender/source/blender/blenloader/intern/readfile.c
    trunk/blender/source/blender/editors/interface/interface.c
    trunk/blender/source/blender/editors/interface/interface_templates.c
    trunk/blender/source/blender/editors/object/object_hook.c
    trunk/blender/source/blender/editors/space_buttons/buttons_context.c
    trunk/blender/source/blender/editors/space_buttons/buttons_intern.h
    trunk/blender/source/blender/editors/space_file/filelist.c
    trunk/blender/source/blender/editors/space_image/space_image.c
    trunk/blender/source/blender/editors/space_text/text_ops.c
    trunk/blender/source/blender/makesdna/DNA_modifier_types.h
    trunk/blender/source/blender/makesrna/intern/rna_modifier.c
    trunk/blender/source/blender/makesrna/intern/rna_scene.c
    trunk/blender/source/blender/makesrna/intern/rna_space.c
    trunk/blender/source/blender/render/intern/raytrace/rayobject.cpp

Modified: trunk/blender/release/plugins/sequence/blur.c
===================================================================
--- trunk/blender/release/plugins/sequence/blur.c       2010-03-30 12:01:17 UTC 
(rev 27865)
+++ trunk/blender/release/plugins/sequence/blur.c       2010-03-30 12:15:16 UTC 
(rev 27866)
@@ -160,7 +160,7 @@
        char *irect, *prect, *mrect;
        float *irectf, *prectf, *mrectf;
        
-       /* wich buffers ? */
+       /* which buffers ? */
                                
        if(fac>7.0) fac= 7.0;
        if(fac<=1.0) return;

Modified: trunk/blender/release/scripts/io/import_scene_obj.py
===================================================================
--- trunk/blender/release/scripts/io/import_scene_obj.py        2010-03-30 
12:01:17 UTC (rev 27865)
+++ trunk/blender/release/scripts/io/import_scene_obj.py        2010-03-30 
12:15:16 UTC (rev 27866)
@@ -322,7 +322,7 @@
 
     for path in variants:
         if os.path.exists(path):
-            return bpy.data.add_image(path)
+            return bpy.data.images.load(path)
         else:
             print(path, "doesn't exist")
 

Modified: trunk/blender/release/scripts/modules/bpy_types.py
===================================================================
--- trunk/blender/release/scripts/modules/bpy_types.py  2010-03-30 12:01:17 UTC 
(rev 27865)
+++ trunk/blender/release/scripts/modules/bpy_types.py  2010-03-30 12:15:16 UTC 
(rev 27866)
@@ -490,7 +490,7 @@
 class Menu(StructRNA, _GenericUI):
     __slots__ = ()
 
-    def path_menu(self, searchpaths, operator):
+    def path_menu(self, searchpaths, operator, props_default={}):
         layout = self.layout
         # hard coded to set the operators 'path' to the filename.
 
@@ -511,8 +511,13 @@
             if f.startswith("."):
                 continue
 
-            layout.operator(operator, text=bpy.utils.display_name(f)).path = 
path
+            props = layout.operator(operator, text=bpy.utils.display_name(f))
 
+            for attr, value in props_default.items():
+                setattr(props, attr, value)
+
+            props.path = path
+
     def draw_preset(self, context):
         """Define these on the subclass
          - preset_operator

Modified: trunk/blender/release/scripts/ui/properties_data_modifier.py
===================================================================
--- trunk/blender/release/scripts/ui/properties_data_modifier.py        
2010-03-30 12:01:17 UTC (rev 27865)
+++ trunk/blender/release/scripts/ui/properties_data_modifier.py        
2010-03-30 12:15:16 UTC (rev 27866)
@@ -689,10 +689,13 @@
             if wide_ui:
                 col = split.column()
             sub = col.column(align=True)
-            sub.label(text="Aspect Ratio:")
-            sub.prop(md, "horizontal_aspect_ratio", text="Horizontal")
-            sub.prop(md, "vertical_aspect_ratio", text="Vertical")
+            sub.prop(md, "aspect_x", text="Aspect X")
+            sub.prop(md, "aspect_y", text="Aspect Y")
 
+            sub = col.column(align=True)
+            sub.prop(md, "scale_x", text="Scale X")
+            sub.prop(md, "scale_y", text="Scale Y")
+
     def WAVE(self, layout, ob, md, wide_ui):
         split = layout.split()
 

Modified: trunk/blender/release/scripts/ui/properties_object.py
===================================================================
--- trunk/blender/release/scripts/ui/properties_object.py       2010-03-30 
12:01:17 UTC (rev 27865)
+++ trunk/blender/release/scripts/ui/properties_object.py       2010-03-30 
12:15:16 UTC (rev 27866)
@@ -35,12 +35,15 @@
 
     def draw(self, context):
         layout = self.layout
-
+        space = context.space_data
         ob = context.object
 
         row = layout.row()
         row.label(text="", icon='OBJECT_DATA')
-        row.prop(ob, "name", text="")
+        if space.use_pin_id:
+            row.template_ID(space, "pin_id")
+        else:
+            row.prop(ob, "name", text="")
 
 
 class OBJECT_PT_custom_props(ObjectButtonsPanel, PropertyPanel):

Modified: trunk/blender/release/scripts/ui/space_text.py
===================================================================
--- trunk/blender/release/scripts/ui/space_text.py      2010-03-30 12:01:17 UTC 
(rev 27865)
+++ trunk/blender/release/scripts/ui/space_text.py      2010-03-30 12:15:16 UTC 
(rev 27866)
@@ -177,7 +177,7 @@
     bl_label = "Script Templates"
 
     def draw(self, context):
-        self.path_menu(bpy.utils.script_paths("templates"), "text.open")
+        self.path_menu(bpy.utils.script_paths("templates"), "text.open", 
{"internal": True})
 
 
 class TEXT_MT_edit_view(bpy.types.Menu):

Modified: trunk/blender/source/blender/blenkernel/BKE_library.h
===================================================================
--- trunk/blender/source/blender/blenkernel/BKE_library.h       2010-03-30 
12:01:17 UTC (rev 27865)
+++ trunk/blender/source/blender/blenkernel/BKE_library.h       2010-03-30 
12:15:16 UTC (rev 27866)
@@ -53,7 +53,7 @@
 
 int new_id(struct ListBase *lb, struct ID *id, const char *name);
 
-struct ListBase *wich_libbase(struct Main *mainlib, short type);
+struct ListBase *which_libbase(struct Main *mainlib, short type);
 
 #define MAX_LIBARRAY   40
 int set_listbasepointers(struct Main *main, struct ListBase **lb);

Modified: trunk/blender/source/blender/blenkernel/intern/library.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/library.c    2010-03-30 
12:01:17 UTC (rev 27865)
+++ trunk/blender/source/blender/blenkernel/intern/library.c    2010-03-30 
12:15:16 UTC (rev 27866)
@@ -347,7 +347,7 @@
        if(id->us == 0) {
                if(test) return 1;
 
-               lb= wich_libbase(mainlib, GS(id->name));
+               lb= which_libbase(mainlib, GS(id->name));
                free_libblock(lb, id);
 
                return 1;
@@ -356,7 +356,7 @@
        return 0;
 }
 
-ListBase *wich_libbase(Main *mainlib, short type)
+ListBase *which_libbase(Main *mainlib, short type)
 {
        switch( type ) {
                case ID_SCE:
@@ -658,7 +658,7 @@
        
        id= rt;
 
-       lb= wich_libbase(G.main, GS(id->name));
+       lb= which_libbase(G.main, GS(id->name));
        idn= alloc_libblock(lb, GS(id->name), id->name+2);
        
        if(idn==NULL) {
@@ -867,7 +867,7 @@
 
 ID *find_id(char *type, char *name)            /* type: "OB" or "MA" etc */
 {
-       ListBase *lb= wich_libbase(G.main, GS(type));
+       ListBase *lb= which_libbase(G.main, GS(type));
        return BLI_findstring(lb, name, offsetof(ID, name) + 2);
 }
 
@@ -1175,7 +1175,7 @@
        if(id->lib) return 0;
 
        /* if no libdata given, look up based on ID */
-       if(lb==NULL) lb= wich_libbase(G.main, GS(id->name));
+       if(lb==NULL) lb= which_libbase(G.main, GS(id->name));
 
        /* if no name given, use name of current ID
         * else make a copy (tname args can be const) */
@@ -1348,7 +1348,7 @@
        ID *idtest;
        
 
-       lb= wich_libbase(G.main, GS(name-2) );
+       lb= which_libbase(G.main, GS(name-2) );
        if(lb==0) return;
        
        /* search for id */
@@ -1383,7 +1383,7 @@
        ListBase *lb;
 
        strncpy(id->name+2, name, 21);
-       lb= wich_libbase(G.main, GS(id->name) );
+       lb= which_libbase(G.main, GS(id->name) );
        
        new_id(lb, id, name);                           
 }

Modified: trunk/blender/source/blender/blenkernel/intern/modifier.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/modifier.c   2010-03-30 
12:01:17 UTC (rev 27865)
+++ trunk/blender/source/blender/blenkernel/intern/modifier.c   2010-03-30 
12:15:16 UTC (rev 27866)
@@ -3606,6 +3606,7 @@
        umd->flags = 0;
        umd->num_projectors = 1;
        umd->aspectx = umd->aspecty = 1.0f;
+       umd->scalex = umd->scaley = 1.0f;
 }
 
 static void uvprojectModifier_copyData(ModifierData *md, ModifierData *target)
@@ -3621,6 +3622,8 @@
        tumd->num_projectors = umd->num_projectors;
        tumd->aspectx = umd->aspectx;
        tumd->aspecty = umd->aspecty;
+       tumd->scalex = umd->scalex;
+       tumd->scaley = umd->scaley;
 }
 
 static CustomDataMask uvprojectModifier_requiredDataMask(Object *ob, 
ModifierData *md)
@@ -3692,6 +3695,8 @@
        char uvname[32];
        float aspx= umd->aspectx ? umd->aspectx : 1.0f;
        float aspy= umd->aspecty ? umd->aspecty : 1.0f;
+       float scax= umd->scalex ? umd->scalex : 1.0f;
+       float scay= umd->scaley ? umd->scaley : 1.0f;
        int free_uci= 0;
        
        aspect = aspx / aspy;
@@ -3829,6 +3834,22 @@
                                                
project_from_camera(tface->uv[2], coords[mf->v3], projectors[0].uci);
                                                if(mf->v3)
                                                        
project_from_camera(tface->uv[3], coords[mf->v4], projectors[0].uci);
+                                               
+                                               if(scax != 1.0f) {
+                                                       tface->uv[0][0] = 
((tface->uv[0][0] - 0.5f) * scax) + 0.5f;
+                                                       tface->uv[1][0] = 
((tface->uv[1][0] - 0.5f) * scax) + 0.5f;
+                                                       tface->uv[2][0] = 
((tface->uv[2][0] - 0.5f) * scax) + 0.5f;
+                                                       if(mf->v3)
+                                                               tface->uv[3][0] 
= ((tface->uv[3][0] - 0.5f) * scax) + 0.5f;
+                                               }
+                                               
+                                               if(scay != 1.0f) {
+                                                       tface->uv[0][1] = 
((tface->uv[0][1] - 0.5f) * scay) + 0.5f;
+                                                       tface->uv[1][1] = 
((tface->uv[1][1] - 0.5f) * scay) + 0.5f;
+                                                       tface->uv[2][1] = 
((tface->uv[2][1] - 0.5f) * scay) + 0.5f;
+                                                       if(mf->v3)
+                                                               tface->uv[3][1] 
= ((tface->uv[3][1] - 0.5f) * scay) + 0.5f;
+                                               }
                                        }
                                        else {
                                                /* apply transformed coords as 
UVs */
@@ -6489,7 +6510,7 @@
                                                                ed_loop_flip= 1;
                                                        }
                                                        else {
-                                                               /* not so 
simple to work out wich edge is higher */
+                                                               /* not so 
simple to work out which edge is higher */
                                                                
sub_v3_v3v3(tmp_vec1, tmpf1, vc_tmp->co);
                                                                
sub_v3_v3v3(tmp_vec1, tmpf2, vc_tmp->co);
                                                                
normalize_v3(tmp_vec1);

Modified: trunk/blender/source/blender/blenlib/intern/storage.c
===================================================================
--- trunk/blender/source/blender/blenlib/intern/storage.c       2010-03-30 
12:01:17 UTC (rev 27865)
+++ trunk/blender/source/blender/blenlib/intern/storage.c       2010-03-30 
12:15:16 UTC (rev 27866)
@@ -293,10 +293,8 @@
        struct direntry * file;
        struct tm *tm;
        time_t zero= 0;
-
-       file = &files[0];
        
-       for(num=0;num<actnum;num++){
+       for(num=0, file= files; num<actnum; num++, file++){
 #ifdef WIN32
                mode = 0;
                strcpy(file->mode1, types[0]);
@@ -325,43 +323,43 @@
 #endif
 
 #ifdef WIN32
-               strcpy(files[num].owner,"user");
+               strcpy(file->owner,"user");
 #else
                {
                        struct passwd *pwuser;
-                       pwuser = getpwuid(files[num].s.st_uid);
+                       pwuser = getpwuid(file->s.st_uid);
                        if ( pwuser ) {
-                       strcpy(files[num].owner, pwuser->pw_name);
+                               BLI_strncpy(file->owner, pwuser->pw_name, 
sizeof(file->owner));
                        } else {
-                               sprintf(files[num].owner, "%d", 
files[num].s.st_uid);
+                               snprintf(file->owner, sizeof(file->owner), 
"%d", file->s.st_uid);
                        }
                }
 #endif
 
-               tm= localtime(&files[num].s.st_mtime);

@@ Diff output truncated at 10240 characters. @@

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to