NLA SoC: Merge from 2.5
authorJoshua Leung <aligorith@gmail.com>
Fri, 3 Jul 2009 01:57:38 +0000 (01:57 +0000)
committerJoshua Leung <aligorith@gmail.com>
Fri, 3 Jul 2009 01:57:38 +0000 (01:57 +0000)
21301 to 21329

1  2 
release/ui/buttons_data_modifier.py
source/blender/editors/animation/anim_draw.c
source/blender/editors/include/UI_view2d.h
source/blender/editors/interface/view2d.c
source/blender/editors/space_graph/graph_edit.c
source/blender/editors/space_graph/graph_intern.h
source/blender/editors/space_graph/space_graph.c
source/blender/editors/space_view3d/space_view3d.c
source/blender/makesrna/RNA_access.h
source/blender/makesrna/intern/rna_internal.h
source/blender/makesrna/intern/rna_object.c

@@@ -19,66 -19,68 +19,68 @@@ class DATA_PT_modifiers(DataButtonsPane
                row.itemL();
  
                for md in ob.modifiers:
 -                      box = layout.template_modifier(md)
 +                      box = layout.template_modifier(context, md)
  
 -                      if box:
 +                      if md.expanded:
                                if md.type == 'ARMATURE':
                                        self.armature(box, ob, md)
-                               if md.type == 'ARRAY':
+                               elif md.type == 'ARRAY':
                                        self.array(box, ob, md)
-                               if md.type == 'BEVEL':
+                               elif md.type == 'BEVEL':
                                        self.bevel(box, ob, md)
-                               if md.type == 'BOOLEAN':
+                               elif md.type == 'BOOLEAN':
                                        self.boolean(box, ob, md)
-                               if md.type == 'BUILD':
+                               elif md.type == 'BUILD':
                                        self.build(box, ob, md)
-                               if md.type == 'CAST':
+                               elif md.type == 'CAST':
                                        self.cast(box, ob, md)
-                               if md.type == 'CLOTH':
+                               elif md.type == 'CLOTH':
                                        self.cloth(box, ob, md)
-                               if md.type == 'COLLISION':
+                               elif md.type == 'COLLISION':
                                        self.collision(box, ob, md)
-                               if md.type == 'CURVE':
+                               elif md.type == 'CURVE':
                                        self.curve(box, ob, md)
-                               if md.type == 'DECIMATE':
+                               elif md.type == 'DECIMATE':
                                        self.decimate(box, ob, md)
-                               if md.type == 'DISPLACE':
+                               elif md.type == 'DISPLACE':
                                        self.displace(box, ob, md)
-                               if md.type == 'EDGE_SPLIT':
+                               elif md.type == 'EDGE_SPLIT':
                                        self.edgesplit(box, ob, md)
-                               if md.type == 'EXPLODE':
+                               elif md.type == 'EXPLODE':
                                        self.explode(box, ob, md)
-                               if md.type == 'FLUID_SIMULATION':
+                               elif md.type == 'FLUID_SIMULATION':
                                        self.fluid(box, ob, md)
-                               if md.type == 'HOOK':
+                               elif md.type == 'HOOK':
                                        self.hook(box, ob, md)
-                               if md.type == 'LATTICE':
+                               elif md.type == 'LATTICE':
                                        self.lattice(box, ob, md)
-                               if md.type == 'MASK':
+                               elif md.type == 'MASK':
                                        self.mask(box, ob, md)
-                               if md.type == 'MESH_DEFORM':
+                               elif md.type == 'MESH_DEFORM':
                                        self.mesh_deform(box, ob, md)
-                               if md.type == 'MIRROR':
+                               elif md.type == 'MIRROR':
                                        self.mirror(box, ob, md)
-                               if md.type == 'MULTIRES':
+                               elif md.type == 'MULTIRES':
                                        self.multires(box, ob, md)
-                               if md.type == 'PARTICLE_INSTANCE':
+                               elif md.type == 'PARTICLE_INSTANCE':
                                        self.particleinstance(box, ob, md)
-                               if md.type == 'PARTICLE_SYSTEM':
+                               elif md.type == 'PARTICLE_SYSTEM':
                                        self.particlesystem(box, ob, md)
-                               if md.type == 'SHRINKWRAP':
+                               elif md.type == 'SHRINKWRAP':
                                        self.shrinkwrap(box, ob, md)
-                               if md.type == 'SIMPLE_DEFORM':
+                               elif md.type == 'SIMPLE_DEFORM':
                                        self.simpledeform(box, ob, md)
-                               if md.type == 'SMOOTH':
+                               elif md.type == 'SMOOTH':
                                        self.smooth(box, ob, md)
-                               if md.type == 'SOFTBODY':
+                               elif md.type == 'SOFTBODY':
                                        self.softbody(box, ob, md)
-                               if md.type == 'SUBSURF':
+                               elif md.type == 'SUBSURF':
                                        self.subsurf(box, ob, md)
-                               if md.type == 'UV_PROJECT':
+                               elif md.type == 'SURFACE':
+                                       self.surface(box, ob, md)
+                               elif md.type == 'UV_PROJECT':
                                        self.uvproject(box, ob, md)
-                               if md.type == 'WAVE':
+                               elif md.type == 'WAVE':
                                        self.wave(box, ob, md)
                                                        
        def armature(self, layout, ob, md):
                layout.itemR(md, "fit_type")
                if md.fit_type == 'FIXED_COUNT':
                        layout.itemR(md, "count")
-               if md.fit_type == 'FIT_LENGTH':
+               elif md.fit_type == 'FIT_LENGTH':
                        layout.itemR(md, "length")
-               if md.fit_type == 'FIT_CURVE':
+               elif md.fit_type == 'FIT_CURVE':
 -                      layout.itemR(md, "curve")
 +                              layout.itemR(md, "curve")
  
                layout.itemS()
                
@@@ -84,29 -82,30 +84,31 @@@ enum 
  /* ***************************************** */
  /* graph_edit.c */
  
 -void GRAPHEDIT_OT_previewrange_set(struct wmOperatorType *ot);
 -void GRAPHEDIT_OT_view_all(struct wmOperatorType *ot);
+ void get_graph_keyframe_extents (struct bAnimContext *ac, float *xmin, float *xmax, float *ymin, float *ymax);
 +void GRAPH_OT_previewrange_set(struct wmOperatorType *ot);
 +void GRAPH_OT_view_all(struct wmOperatorType *ot);
  
 -void GRAPHEDIT_OT_keyframes_click_insert(struct wmOperatorType *ot);
 +void GRAPH_OT_click_insert(struct wmOperatorType *ot);
 +void GRAPH_OT_insert_keyframe(struct wmOperatorType *ot);
  
 -void GRAPHEDIT_OT_keyframes_copy(struct wmOperatorType *ot);
 -void GRAPHEDIT_OT_keyframes_paste(struct wmOperatorType *ot);
 +void GRAPH_OT_copy(struct wmOperatorType *ot);
 +void GRAPH_OT_paste(struct wmOperatorType *ot);
  
 -void GRAPHEDIT_OT_keyframes_duplicate(struct wmOperatorType *ot);
 -void GRAPHEDIT_OT_keyframes_delete(struct wmOperatorType *ot);
 -void GRAPHEDIT_OT_keyframes_clean(struct wmOperatorType *ot);
 -void GRAPHEDIT_OT_keyframes_sample(struct wmOperatorType *ot);
 -void GRAPHEDIT_OT_keyframes_bake(struct wmOperatorType *ot);
 -void GRAPHEDIT_OT_keyframes_smooth(struct wmOperatorType *ot);
 +void GRAPH_OT_duplicate(struct wmOperatorType *ot);
 +void GRAPH_OT_delete(struct wmOperatorType *ot);
 +void GRAPH_OT_clean(struct wmOperatorType *ot);
 +void GRAPH_OT_sample(struct wmOperatorType *ot);
 +void GRAPH_OT_bake(struct wmOperatorType *ot);
 +void GRAPH_OT_smooth(struct wmOperatorType *ot);
  
 -void GRAPHEDIT_OT_keyframes_handletype(struct wmOperatorType *ot);
 -void GRAPHEDIT_OT_keyframes_interpolation_type(struct wmOperatorType *ot);
 -void GRAPHEDIT_OT_keyframes_extrapolation_type(struct wmOperatorType *ot);
 +void GRAPH_OT_handletype(struct wmOperatorType *ot);
 +void GRAPH_OT_interpolation_type(struct wmOperatorType *ot);
 +void GRAPH_OT_extrapolation_type(struct wmOperatorType *ot);
  
 -void GRAPHEDIT_OT_keyframes_cfrasnap(struct wmOperatorType *ot);
 -void GRAPHEDIT_OT_keyframes_snap(struct wmOperatorType *ot);
 -void GRAPHEDIT_OT_keyframes_mirror(struct wmOperatorType *ot);
 +void GRAPH_OT_frame_jump(struct wmOperatorType *ot);
 +void GRAPH_OT_snap(struct wmOperatorType *ot);
 +void GRAPH_OT_mirror(struct wmOperatorType *ot);
  
  /* defines for snap keyframes 
   * NOTE: keep in sync with eEditKeyframes_Snap (in ED_keyframes_edit.h)
Simple merge