[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18550] branches/blender2.5/blender/source /blender/makesrna: RNA: made naming of animateable flags for properties more clear.

2009-01-17 Thread Brecht Van Lommel
Revision: 18550
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=revroot=bf-blenderrevision=18550
Author:   blendix
Date: 2009-01-17 14:54:56 +0100 (Sat, 17 Jan 2009)

Log Message:
---
RNA: made naming of animateable flags for properties more clear.

Modified Paths:
--
branches/blender2.5/blender/source/blender/makesrna/RNA_access.h
branches/blender2.5/blender/source/blender/makesrna/RNA_types.h
branches/blender2.5/blender/source/blender/makesrna/intern/rna_access.c
branches/blender2.5/blender/source/blender/makesrna/intern/rna_define.c
branches/blender2.5/blender/source/blender/makesrna/intern/rna_scene.c

Modified: branches/blender2.5/blender/source/blender/makesrna/RNA_access.h
===
--- branches/blender2.5/blender/source/blender/makesrna/RNA_access.h
2009-01-17 05:36:58 UTC (rev 18549)
+++ branches/blender2.5/blender/source/blender/makesrna/RNA_access.h
2009-01-17 13:54:56 UTC (rev 18550)
@@ -327,12 +327,12 @@
 int RNA_property_enum_value(PointerRNA *ptr, PropertyRNA *prop, const char 
*identifier, int *value);
 int RNA_property_enum_identifier(PointerRNA *ptr, PropertyRNA *prop, const int 
value, const char **identifier);
 
-
 const char *RNA_property_ui_name(PointerRNA *ptr, PropertyRNA *prop);
 const char *RNA_property_ui_description(PointerRNA *ptr, PropertyRNA *prop);
 
 int RNA_property_editable(PointerRNA *ptr, PropertyRNA *prop);
-int RNA_property_evaluated(PointerRNA *ptr, PropertyRNA *prop);
+int RNA_property_animateable(PointerRNA *ptr, PropertyRNA *prop);
+int RNA_property_animated(PointerRNA *ptr, PropertyRNA *prop);
 
 void RNA_property_update(struct bContext *C, PointerRNA *ptr, PropertyRNA 
*prop);
 

Modified: branches/blender2.5/blender/source/blender/makesrna/RNA_types.h
===
--- branches/blender2.5/blender/source/blender/makesrna/RNA_types.h 
2009-01-17 05:36:58 UTC (rev 18549)
+++ branches/blender2.5/blender/source/blender/makesrna/RNA_types.h 
2009-01-17 13:54:56 UTC (rev 18550)
@@ -72,18 +72,15 @@
 
 typedef enum PropertyFlag {
/* editable means the property is editable in the user
-* interface, evaluated means that the property is set
-* as part of an evaluation. these can change at runtime
-* the property flag contains the default. editable is
-* enabled by default except for collections. */
+* interface, properties are editable by default except
+* for pointers and collections. */
PROP_NOT_EDITABLE = 1,
-   PROP_EVALUATED = 2,
 
-   /* driveable means the property can be driven by some
+   /* animateable means the property can be driven by some
 * other input, be it animation curves, expressions, ..
-* in other words making the property evaluated.
-* enable by default except for pointers and collections. */
-   PROP_NOT_DRIVEABLE = 4,
+* properties are animateable by default except for pointers
+* and collections */
+   PROP_NOT_ANIMATEABLE = 2,
 
 #if 0
/* for pointers and collections, means that the struct

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-17 05:36:58 UTC (rev 18549)
+++ branches/blender2.5/blender/source/blender/makesrna/intern/rna_access.c 
2009-01-17 13:54:56 UTC (rev 18550)
@@ -511,20 +511,30 @@
return !(flag  PROP_NOT_EDITABLE);
 }
 
-int RNA_property_evaluated(PointerRNA *ptr, PropertyRNA *prop)
+int RNA_property_animateable(PointerRNA *ptr, PropertyRNA *prop)
 {
int flag;
 
rna_idproperty_check(prop, ptr);
 
+   if(prop-flag  PROP_NOT_ANIMATEABLE)
+   return 0;
+
if(prop-editable)
flag= prop-editable(ptr);
else
flag= prop-flag;
 
-   return (flag  PROP_EVALUATED);
+   return !(flag  PROP_NOT_EDITABLE);
 }
 
+int RNA_property_animated(PointerRNA *ptr, PropertyRNA *prop)
+{
+   /* would need to ask animation system */
+
+   return 0;
+}
+
 void RNA_property_update(struct bContext *C, PointerRNA *ptr, PropertyRNA 
*prop)
 {
rna_idproperty_check(prop, ptr);

Modified: 
branches/blender2.5/blender/source/blender/makesrna/intern/rna_define.c
===
--- branches/blender2.5/blender/source/blender/makesrna/intern/rna_define.c 
2009-01-17 05:36:58 UTC (rev 18549)
+++ branches/blender2.5/blender/source/blender/makesrna/intern/rna_define.c 
2009-01-17 13:54:56 UTC (rev 18550)
@@ -668,7 +668,7 @@
prop-description= ;
 
if(type == PROP_COLLECTION || type == PROP_POINTER)
-   prop-flag= PROP_NOT_EDITABLE|PROP_NOT_DRIVEABLE;
+  

[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18551] branches/blender2.5/blender/source /blender: 2.5

2009-01-17 Thread Ton Roosendaal
Revision: 18551
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=revroot=bf-blenderrevision=18551
Author:   ton
Date: 2009-01-17 15:56:12 +0100 (Sat, 17 Jan 2009)

Log Message:
---
2.5

Cleanup warnings from Joshua's commit (mostly unused variables,
but also used functions that were not prototyped).

Two bugfixes; passing on ob-adt instead of ob-adt

But; the DNA system is now messed up, with two structs using
the same ID (nAction and bAction), that goes horrible wrong!

Modified Paths:
--
branches/blender2.5/blender/source/blender/blenkernel/BKE_ipo.h
branches/blender2.5/blender/source/blender/blenkernel/intern/action.c
branches/blender2.5/blender/source/blender/blenkernel/intern/depsgraph.c
branches/blender2.5/blender/source/blender/blenkernel/intern/object.c
branches/blender2.5/blender/source/blender/blenkernel/intern/particle.c

branches/blender2.5/blender/source/blender/blenkernel/intern/particle_system.c
branches/blender2.5/blender/source/blender/blenlib/BLI_dynamiclist.h
branches/blender2.5/blender/source/blender/blenlib/intern/fileops.c
branches/blender2.5/blender/source/blender/editors/armature/poselib.c
branches/blender2.5/blender/source/blender/editors/armature/poseobject.c

branches/blender2.5/blender/source/blender/editors/space_action/action_edit.c
branches/blender2.5/blender/source/blender/editors/space_ipo/ipo_draw.c

branches/blender2.5/blender/source/blender/editors/space_view3d/drawarmature.c

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_ipo.h
===
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_ipo.h 
2009-01-17 13:54:56 UTC (rev 18550)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_ipo.h 
2009-01-17 14:56:12 UTC (rev 18551)
@@ -35,6 +35,12 @@
 extern C {
 #endif
 
+   
+/*  IPO-Curve (Bezier) Calculations -- */
+
+void correct_bezpart(float *v1, float *v2, float *v3, float *v4);
+   
+   
 #if 0 // XXX old animation system
 
 typedef struct CfraElem {

Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/action.c
===
--- branches/blender2.5/blender/source/blender/blenkernel/intern/action.c   
2009-01-17 13:54:56 UTC (rev 18550)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/action.c   
2009-01-17 14:56:12 UTC (rev 18551)
@@ -95,7 +95,7 @@
 // does copy_fcurve...
 void make_local_action(nAction *act)
 {
-   Object *ob;
+   // Object *ob;
nAction *actn;
int local=0, lib=0;

@@ -149,15 +149,15 @@
 
 void free_action (nAction *act)
 {
-   FCurve *fcu, *fcn;
+   FCurve *fcu;

/* sanity check */
if (act == NULL)
return;

/* Free F-Curves */
-   for (fcu= act-curves.first; fcu; fcu= fcn) {
-   fcn= fcu-next;
+   while ((fcu= act-curves.first)) {
+   BLI_remlink(act-curves, fcu);
free_fcurve(fcu);
}

@@ -174,7 +174,7 @@
 {
nAction *dst = NULL;
//bActionChannel *dchan, *schan;
-   bActionGroup *dgrp, *sgrp;
+   // bActionGroup *dgrp, *sgrp;

if (!src) return NULL;

@@ -573,7 +573,7 @@
 /* Calculate the extents of given action */
 void calc_action_range(const bAction *act, float *start, float *end, int 
incl_hidden)
 {
-   FCurve *fcu;
+   // FCurve *fcu;
float min=9.0f, max=-9.0f;
int foundvert=0;
 

Modified: 
branches/blender2.5/blender/source/blender/blenkernel/intern/depsgraph.c
===
--- branches/blender2.5/blender/source/blender/blenkernel/intern/depsgraph.c
2009-01-17 13:54:56 UTC (rev 18550)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/depsgraph.c
2009-01-17 14:56:12 UTC (rev 18551)
@@ -1953,9 +1953,9 @@
return 0;
 }
 
+#if 0 // XXX old animation system
 static int exists_channel(Object *ob, char *name)
 {
-#if 0 // XXX old animation system
bActionStrip *strip;

if(ob-action)
@@ -1965,16 +1965,18 @@
for (strip=ob-nlastrips.first; strip; strip=strip-next)
if(get_action_channel(strip-act, name))
return 1;
-#endif // XXX old animation system
 
return 0;
 }
+#endif // XXX old animation system
 
 
 static short animdata_use_time(AnimData *adt)
 {
NlaTrack *nlt;

+   if(adt==NULL) return 0;
+   
/* check action - only if assigned, and it has anim curves */
if (adt-action  adt-action-curves.first)
return 1;
@@ -2038,7 +2040,7 @@
}
}
 #endif // XXX old animation system
-   if(animdata_use_time(ob-adt)) ob-recalc |= OB_RECALC;
+   

[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18552] branches/blender2.5/blender/source /blender/makesrna/intern/makesrna.c: RNA: warning fix for mac gcc.

2009-01-17 Thread Brecht Van Lommel
Revision: 18552
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=revroot=bf-blenderrevision=18552
Author:   blendix
Date: 2009-01-17 16:28:34 +0100 (Sat, 17 Jan 2009)

Log Message:
---
RNA: warning fix for mac gcc.

Modified Paths:
--
branches/blender2.5/blender/source/blender/makesrna/intern/makesrna.c

Modified: branches/blender2.5/blender/source/blender/makesrna/intern/makesrna.c
===
--- branches/blender2.5/blender/source/blender/makesrna/intern/makesrna.c   
2009-01-17 14:56:12 UTC (rev 18551)
+++ branches/blender2.5/blender/source/blender/makesrna/intern/makesrna.c   
2009-01-17 15:28:34 UTC (rev 18552)
@@ -176,6 +176,26 @@
return 0;
 }
 
+static const char *rna_function_string(void *func)
+{
+   return (func)? (const char*)func: NULL;
+}
+
+static void rna_float_print(FILE *f, float num)
+{
+   if(num == -FLT_MAX) fprintf(f, -FLT_MAX);
+   else if(num == FLT_MAX) fprintf(f, FLT_MAX);
+   else if((int)num == num) fprintf(f, %.1ff, num);
+   else fprintf(f, %.10ff, num);
+}
+
+static void rna_int_print(FILE *f, int num)
+{
+   if(num == INT_MIN) fprintf(f, INT_MIN);
+   else if(num == INT_MAX) fprintf(f, INT_MAX);
+   else fprintf(f, %d, num);
+}
+
 static char *rna_def_property_get_func(FILE *f, StructRNA *srna, PropertyRNA 
*prop, PropertyDefRNA *dp)
 {
char *func;
@@ -219,8 +239,11 @@
fprintf(f, return 
(%s)%s((data-%s)[index]);\n, rna_type_type(prop), (dp-booleannegative)? 
!: , dp-dnaname);
}
else {
-   if(prop-type == PROP_BOOLEAN  
dp-booleanbit)
-   fprintf(f, return 
(%s(data-%s[index]  %d) != 0);\n, (dp-booleannegative)? !: , 
dp-dnaname, dp-booleanbit);
+   if(prop-type == PROP_BOOLEAN  
dp-booleanbit) {
+   fprintf(f, return 
(%s(data-%s[index]  , (dp-booleannegative)? !: , dp-dnaname);
+   rna_int_print(f, 
dp-booleanbit);
+   fprintf(f, ) != 0);\n);
+   }
else if(rna_color_quantize(prop, dp))
fprintf(f, return 
(%s)(data-%s[index]/255.0f);\n, rna_type_type(prop), dp-dnaname);
else
@@ -232,10 +255,16 @@
fprintf(f, static %s %s(PointerRNA *ptr)\n, 
rna_type_type(prop), func);
fprintf(f, {\n);
rna_print_data_get(f, dp);
-   if(prop-type == PROP_BOOLEAN  dp-booleanbit)
-   fprintf(f, return (%s((data-%s)  
%d) != 0);\n, (dp-booleannegative)? !: , dp-dnaname, dp-booleanbit);
-   else if(prop-type == PROP_ENUM  
dp-enumbitflags)
-   fprintf(f, return ((data-%s)  
%d);\n, dp-dnaname, rna_enum_bitmask(prop));
+   if(prop-type == PROP_BOOLEAN  
dp-booleanbit) {
+   fprintf(f, return (%s((data-%s)  
, (dp-booleannegative)? !: , dp-dnaname);
+   rna_int_print(f, dp-booleanbit);
+   fprintf(f, ) != 0);\n);
+   }
+   else if(prop-type == PROP_ENUM  
dp-enumbitflags) {
+   fprintf(f, return ((data-%s)  , 
dp-dnaname);
+   rna_int_print(f, 
rna_enum_bitmask(prop));
+   fprintf(f, );\n);
+   }
else if(prop-type == PROP_POINTER  
dp-dnapointerlevel == 0)
fprintf(f, return 
(%s)(data-%s);\n, rna_type_type(prop), dp-dnaname);
else
@@ -248,26 +277,6 @@
return func;
 }
 
-static const char *rna_function_string(void *func)
-{
-   return (func)? (const char*)func: NULL;
-}
-
-static void rna_float_print(FILE *f, float num)
-{
-   if(num == -FLT_MAX) fprintf(f, -FLT_MAX);
-   else if(num == FLT_MAX) fprintf(f, FLT_MAX);
-   else if((int)num == num) fprintf(f, %.1ff, num);
-   else fprintf(f, %.10ff, num);
-}
-
-static void rna_int_print(FILE *f, int num)
-{
-   if(num == INT_MIN) fprintf(f, INT_MIN);
-   else if(num == INT_MAX) fprintf(f, INT_MAX);
-   else fprintf(f, %d, num);
-}
-
 static void rna_clamp_value(FILE *f, PropertyRNA *prop)
 {
if(prop-type == PROP_INT) {
@@ -334,8 +343,12 @@

[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18553] branches/blender2.5/blender/source /blender/editors/mesh: 2.5

2009-01-17 Thread Ton Roosendaal
Revision: 18553
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=revroot=bf-blenderrevision=18553
Author:   ton
Date: 2009-01-17 17:11:12 +0100 (Sat, 17 Jan 2009)

Log Message:
---
2.5

Made 'select linked' in mesh editmode work (LKEY).
Also added counterpart work with boolean (SHIFT+L).

Brecht: thanks for easier rna property defs :)

Modified Paths:
--
branches/blender2.5/blender/source/blender/editors/mesh/editmesh_mods.c
branches/blender2.5/blender/source/blender/editors/mesh/mesh_ops.c

Modified: 
branches/blender2.5/blender/source/blender/editors/mesh/editmesh_mods.c
===
--- branches/blender2.5/blender/source/blender/editors/mesh/editmesh_mods.c 
2009-01-17 15:28:34 UTC (rev 18552)
+++ branches/blender2.5/blender/source/blender/editors/mesh/editmesh_mods.c 
2009-01-17 16:11:12 UTC (rev 18553)
@@ -2167,30 +2167,36 @@
/* api callbacks */
ot-exec= selectconnected_mesh_all_exec;
ot-poll= ED_operator_editmesh;
+
 }
 
+/* *** select connected * */
+
 // XXX should we use CTX_scene(C)-selectmode  SCE_SELECT_FACE like it was in 
the past ? calls selectconnected_delimit_mesh if true
-void selectconnected_mesh(bContext *C)
+static int selectconnected_mesh_invoke(bContext *C, wmOperator *op, wmEvent 
*event)
 {
+   Object *obedit= CTX_data_edit_object(C);
ViewContext vc;
EditVert *eve, *v1, *v2;
EditEdge *eed;
EditFace *efa;
-   short done=1, sel, toggle=0;
-   int shift= 0; // XXX
-   
+   short done=1, toggle=0;
+   int sel= !RNA_boolean_get(op-ptr, deselect);
+   
+   /* unified_finednearest needs ogl */
+   view3d_operator_needs_opengl(C);
+   
/* setup view context for argument to callbacks */
em_setup_viewcontext(C, vc);

-   if(vc.em-edges.first==0) return;
+   if(vc.em-edges.first==0) return OPERATOR_CANCELLED;

+   vc.mval[0]= event-x - vc.ar-winrct.xmin;
+   vc.mval[1]= event-y - vc.ar-winrct.ymin;
+   
if( unified_findnearest(vc, eve, eed, efa)==0 ) {
-   /* error(Nothing indicated ); */ /* this is mostly annoying, 
eps with occluded geometry */
-   return;
+   return OPERATOR_CANCELLED;
}
-   
-   sel= 1;
-   if(shift) sel=0;
 
/* clear test flags */
for(v1= vc.em-verts.first; v1; v1= v1-next) v1-f1= 0;
@@ -2243,14 +2249,6 @@

BIF_undo_push(Select Linked);

-}
-
-static int selectconnected_mesh_exec(bContext *C, wmOperator *op)
-{
-   Object *obedit= CTX_data_edit_object(C);
-   
-   selectconnected_mesh(C);
-   
WM_event_add_notifier(C, NC_OBJECT|ND_GEOM_SELECT, obedit);
return OPERATOR_FINISHED;   
 }
@@ -2262,10 +2260,14 @@
ot-idname= MESH_OT_selectconnected_mesh;

/* api callbacks */
-   ot-exec= selectconnected_mesh_exec;
+   ot-invoke= selectconnected_mesh_invoke;
ot-poll= ED_operator_editmesh;
+
+   RNA_def_boolean(ot-srna, deselect, 0, Deselect, );
 }
 
+/* * */
+
 /* for use with selectconnected_delimit_mesh only! */
 #define is_edge_delimit_ok(eed) ((eed-tmp.l == 1)  (eed-seam==0))
 #define is_face_tag(efa) is_edge_delimit_ok(efa-e1) || 
is_edge_delimit_ok(efa-e2) || is_edge_delimit_ok(efa-e3) || (efa-v4  
is_edge_delimit_ok(efa-e4))

Modified: branches/blender2.5/blender/source/blender/editors/mesh/mesh_ops.c
===
--- branches/blender2.5/blender/source/blender/editors/mesh/mesh_ops.c  
2009-01-17 15:28:34 UTC (rev 18552)
+++ branches/blender2.5/blender/source/blender/editors/mesh/mesh_ops.c  
2009-01-17 16:11:12 UTC (rev 18553)
@@ -104,8 +104,11 @@
WM_keymap_add_item(keymap, MESH_OT_select_less, PADMINUS, KM_PRESS, 
KM_CTRL, 0);
WM_keymap_add_item(keymap, MESH_OT_selectswap_mesh, IKEY, KM_PRESS, 
KM_CTRL, 0);
WM_keymap_add_item(keymap, MESH_OT_select_non_manifold, MKEY, 
KM_PRESS, (KM_CTRL|KM_SHIFT|KM_ALT), 0);
+   
WM_keymap_add_item(keymap, MESH_OT_selectconnected_mesh_all, LKEY, 
KM_PRESS, KM_CTRL, 0);
WM_keymap_add_item(keymap, MESH_OT_selectconnected_mesh, LKEY, 
KM_PRESS, 0, 0);
+   RNA_boolean_set(WM_keymap_add_item(keymap, 
MESH_OT_selectconnected_mesh, LKEY, KM_PRESS, KM_SHIFT, 0)-ptr, deselect, 
1);
+   
RNA_float_set(WM_keymap_add_item(keymap, 
MESH_OT_select_linked_flat_faces, FKEY, KM_PRESS, (KM_CTRL|KM_SHIFT|KM_ALT), 
0)-ptr,sharpness,135.0);
RNA_float_set(WM_keymap_add_item(keymap, MESH_OT_select_sharp_edges, 
SKEY, KM_PRESS, (KM_CTRL|KM_SHIFT|KM_ALT), 0)-ptr,sharpness,135.0);  
 



___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org

[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18554] branches/blender2.5/blender/source /blender: Make sculpt data more like vpaint/weightpaint.

2009-01-17 Thread Nicholas Bishop
Revision: 18554
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=revroot=bf-blenderrevision=18554
Author:   nicholasbishop
Date: 2009-01-17 17:58:05 +0100 (Sat, 17 Jan 2009)

Log Message:
---
Make sculpt data more like vpaint/weightpaint. SculptData is now in 
scene-toolsettings, moved the RNA to reflect that too.

Modified Paths:
--
branches/blender2.5/blender/source/blender/blenkernel/BKE_scene.h
branches/blender2.5/blender/source/blender/blenkernel/BKE_sculpt.h
branches/blender2.5/blender/source/blender/blenkernel/intern/scene.c
branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c
branches/blender2.5/blender/source/blender/blenloader/intern/writefile.c
branches/blender2.5/blender/source/blender/editors/sculpt/sculpt.c
branches/blender2.5/blender/source/blender/editors/sculpt/sculpt_intern.h
branches/blender2.5/blender/source/blender/editors/sculpt/stroke.c

branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_header.c
branches/blender2.5/blender/source/blender/makesdna/DNA_scene_types.h
branches/blender2.5/blender/source/blender/makesrna/RNA_access.h
branches/blender2.5/blender/source/blender/makesrna/intern/rna_scene.c

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_scene.h
===
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_scene.h   
2009-01-17 16:11:12 UTC (rev 18553)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_scene.h   
2009-01-17 16:58:05 UTC (rev 18554)
@@ -37,7 +37,6 @@
 struct Base;
 struct AviCodecData;
 struct QuicktimeCodecData;
-struct SculptData;
 struct RenderData;
 
 /* note; doesn't work when scene is empty */

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_sculpt.h
===
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_sculpt.h  
2009-01-17 16:11:12 UTC (rev 18553)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_sculpt.h  
2009-01-17 16:58:05 UTC (rev 18554)
@@ -33,7 +33,7 @@
 struct NumInput;
 struct RadialControl;
 struct Scene;
-struct SculptData;
+struct Sculpt;
 struct SculptSession;
 struct StrokeCache;
 
@@ -65,10 +65,7 @@
struct StrokeCache *cache;
 } SculptSession;
 
-void sculptdata_init(struct Scene *sce);
-void sculptdata_free(struct Scene *sce);
-void sculptsession_free(struct Scene *sce);
+void sculptsession_free(struct Sculpt *sculpt);
 void sculpt_vertexusers_free(struct SculptSession *ss);
-void sculpt_reset_curve(struct SculptData *sd);
 
 #endif

Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/scene.c
===
--- branches/blender2.5/blender/source/blender/blenkernel/intern/scene.c
2009-01-17 16:11:12 UTC (rev 18553)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/scene.c
2009-01-17 16:58:05 UTC (rev 18554)
@@ -174,6 +174,10 @@
MEM_freeN(sce-toolsettings-vpaint);
if(sce-toolsettings-wpaint)
MEM_freeN(sce-toolsettings-wpaint);
+   if(sce-toolsettings-sculpt) {
+   sculptsession_free(sce-toolsettings-sculpt);
+   MEM_freeN(sce-toolsettings-sculpt);
+   }

MEM_freeN(sce-toolsettings);
sce-toolsettings = NULL;   
@@ -188,8 +192,6 @@
ntreeFreeTree(sce-nodetree);
MEM_freeN(sce-nodetree);
}
-
-   sculptdata_free(sce);
 }
 
 Scene *add_scene(char *name)
@@ -304,8 +306,6 @@
BLI_init_rctf(sce-r.safety, 0.1f, 0.9f, 0.1f, 0.9f);
sce-r.osa= 8;
 
-   sculptdata_init(sce);
-
/* note; in header_info.c the scene copy happens..., if you add more to 
renderdata it has to be checked there */
scene_add_render_layer(sce);

@@ -653,60 +653,6 @@
srl-passflag= SCE_PASS_COMBINED|SCE_PASS_Z;
 }
 
-/* Initialize 'permanent' sculpt data that is saved with file kept after
-   switching out of sculptmode. */
-void sculptdata_init(Scene *sce)
-{
-   SculptData *sd;
-
-   if(!sce)
-   return;
-
-   sd= sce-sculptdata;
-
-   memset(sd, 0, sizeof(SculptData));
-
-   /* XXX: create preset brushes here
-   sd-drawbrush.size = sd-smoothbrush.size = sd-pinchbrush.size =
-   sd-inflatebrush.size = sd-grabbrush.size =
-   sd-layerbrush.size = sd-flattenbrush.size = 50;
-   sd-drawbrush.strength = sd-smoothbrush.strength =
-   sd-pinchbrush.strength = sd-inflatebrush.strength =
-   sd-grabbrush.strength = sd-layerbrush.strength =
-   sd-flattenbrush.strength = 25;
-   sd-drawbrush.dir = sd-pinchbrush.dir = sd-inflatebrush.dir = 
sd-layerbrush.dir= 1;
-   

[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18555] branches/blender2.5/blender/source /blender: 2.5

2009-01-17 Thread Ton Roosendaal
Revision: 18555
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=revroot=bf-blenderrevision=18555
Author:   ton
Date: 2009-01-17 19:35:33 +0100 (Sat, 17 Jan 2009)

Log Message:
---
2.5

- Added shift+d duplicate for object and editmode mesh.
  Note it uses WM_operator_name_call(), which is fine now,
  but in future might put again 2 undo's and operators on
  the stack. 
  Will have to spend some time on how Macros will work!

- added itterator CTX_selected_editable_objects()
  (named it first edible but that was too funny!)
  Also cleaned object_edit.c to use this correctly.

- added CTX_wm_view3d(), especially for hybrid tools
  that *can* use view3d, but don't have to.
  
- moved debug -d print for operators to the real invoke call

Modified Paths:
--
branches/blender2.5/blender/source/blender/blenkernel/BKE_context.h
branches/blender2.5/blender/source/blender/blenkernel/intern/context.c
branches/blender2.5/blender/source/blender/editors/include/ED_object.h
branches/blender2.5/blender/source/blender/editors/mesh/mesh_ops.c
branches/blender2.5/blender/source/blender/editors/object/object_edit.c
branches/blender2.5/blender/source/blender/editors/object/object_intern.h
branches/blender2.5/blender/source/blender/editors/object/object_ops.c

branches/blender2.5/blender/source/blender/editors/space_view3d/space_view3d.c

branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_edit.c

branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_select.c

branches/blender2.5/blender/source/blender/windowmanager/intern/wm_event_system.c

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_context.h
===
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_context.h 
2009-01-17 16:58:05 UTC (rev 18554)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_context.h 
2009-01-17 18:35:33 UTC (rev 18555)
@@ -95,6 +95,7 @@
 struct bScreen *CTX_wm_screen(const bContext *C);
 struct ScrArea *CTX_wm_area(const bContext *C);
 struct SpaceLink *CTX_wm_space_data(const bContext *C);
+struct View3D *CTX_wm_view3d(const bContext *C);
 struct ARegion *CTX_wm_region(const bContext *C);
 void *CTX_wm_region_data(const bContext *C);
 struct uiBlock *CTX_wm_ui_block(const bContext *C);
@@ -141,6 +142,9 @@
 void CTX_data_main_set(bContext *C, struct Main *bmain);
 void CTX_data_scene_set(bContext *C, struct Scene *bmain);
 
+int CTX_data_selected_editable_objects(const bContext *C, ListBase *list);
+int CTX_data_selected_editable_bases(const bContext *C, ListBase *list);
+
 int CTX_data_selected_objects(const bContext *C, ListBase *list);
 int CTX_data_selected_bases(const bContext *C, ListBase *list);
 

Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/context.c
===
--- branches/blender2.5/blender/source/blender/blenkernel/intern/context.c  
2009-01-17 16:58:05 UTC (rev 18554)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/context.c  
2009-01-17 18:35:33 UTC (rev 18555)
@@ -31,6 +31,7 @@
 #include DNA_scene_types.h
 #include DNA_screen_types.h
 #include DNA_space_types.h
+#include DNA_view3d_types.h
 #include DNA_windowmanager_types.h
 
 #include RNA_access.h
@@ -163,6 +164,14 @@
return (C-wm.area)? C-wm.area-spacedata.first: NULL;
 }
 
+View3D *CTX_wm_view3d(const bContext *C)
+{
+   if(C-wm.area  C-wm.area-spacetype==SPACE_VIEW3D)
+   return C-wm.area-spacedata.first;
+   return NULL;
+}
+
+
 ARegion *CTX_wm_region(const bContext *C)
 {
return C-wm.region;
@@ -367,6 +376,16 @@
return ctx_data_collection_get(C, CTX_data_selected_nodes, list);
 }
 
+int CTX_data_selected_editable_objects(const bContext *C, ListBase *list)
+{
+   return ctx_data_collection_get(C, CTX_data_selected_editable_objects, 
list);
+}
+
+int CTX_data_selected_editable_bases(const bContext *C, ListBase *list)
+{
+   return ctx_data_collection_get(C, CTX_data_selected_editable_bases, 
list);
+}
+
 int CTX_data_selected_objects(const bContext *C, ListBase *list)
 {
return ctx_data_collection_get(C, CTX_data_selected_objects, list);

Modified: branches/blender2.5/blender/source/blender/editors/include/ED_object.h
===
--- branches/blender2.5/blender/source/blender/editors/include/ED_object.h  
2009-01-17 16:58:05 UTC (rev 18554)
+++ branches/blender2.5/blender/source/blender/editors/include/ED_object.h  
2009-01-17 18:35:33 UTC (rev 18555)
@@ -64,7 +64,6 @@
 
 /* cleanup */
 int object_data_is_libdata(struct Object *ob);
-int object_is_libdata(struct Object *ob);
 
 /* constraints */
 struct bConstraint *add_new_constraint (short type);

Modified: branches/blender2.5/blender/source/blender/editors/mesh/mesh_ops.c

[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18556] branches/blender2.5/blender/source /blender: 2.5: uv editor

2009-01-17 Thread Brecht Van Lommel
Revision: 18556
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=revroot=bf-blenderrevision=18556
Author:   blendix
Date: 2009-01-17 23:14:08 +0100 (Sat, 17 Jan 2009)

Log Message:
---
2.5: uv editor
- mouse select, loop select, select linked, unlink selection operators.
- added edge selection mode.
- fix 2.45 bug with unitialized theme colors, which caused the active face
  and face centers to be not drawn.

Modified Paths:
--
branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c
branches/blender2.5/blender/source/blender/editors/interface/resources.c

branches/blender2.5/blender/source/blender/editors/space_image/image_header.c
branches/blender2.5/blender/source/blender/editors/space_image/space_image.c
branches/blender2.5/blender/source/blender/editors/uvedit/uvedit_draw.c
branches/blender2.5/blender/source/blender/editors/uvedit/uvedit_intern.h
branches/blender2.5/blender/source/blender/editors/uvedit/uvedit_ops.c
branches/blender2.5/blender/source/blender/makesdna/DNA_scene_types.h
branches/blender2.5/blender/source/blender/windowmanager/intern/wm_files.c

Modified: 
branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c
===
--- branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c 
2009-01-17 18:35:33 UTC (rev 18555)
+++ branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c 
2009-01-17 22:14:08 UTC (rev 18556)
@@ -8492,8 +8492,12 @@
do_versions_windowmanager_2_50(screen);

/* struct audio data moved to renderdata */
-   for(scene= main-scene.first; scene; scene= scene-id.next)
+   for(scene= main-scene.first; scene; scene= scene-id.next) {
scene-r.audio = scene-audio;
+
+   if(!scene-toolsettings-uv_selectmode)
+   scene-toolsettings-uv_selectmode= 
UV_SELECT_VERTEX;
+   }

/* shader, composit and texture node trees have id.name empty, 
put something in
 * to have them show in RNA viewer and accessible otherwise.
@@ -8501,7 +8505,8 @@
for(ma= main-mat.first; ma; ma= ma-id.next) {
if(ma-nodetree  strlen(ma-nodetree-id.name)==0)
strcpy(ma-nodetree-id.name, NTShader 
Nodetree);
-   }
+   }
+
/* and composit trees */
for(sce= main-scene.first; sce; sce= sce-id.next) {
if(sce-nodetree  strlen(sce-nodetree-id.name)==0)

Modified: 
branches/blender2.5/blender/source/blender/editors/interface/resources.c
===
--- branches/blender2.5/blender/source/blender/editors/interface/resources.c
2009-01-17 18:35:33 UTC (rev 18555)
+++ branches/blender2.5/blender/source/blender/editors/interface/resources.c
2009-01-17 22:14:08 UTC (rev 18556)
@@ -511,8 +511,10 @@
SETCOL(btheme-tima.vertex, 0xff, 0x70, 0xff, 255);
SETCOL(btheme-tima.vertex_select, 0xff, 0xff, 0x70, 255);
btheme-tima.vertex_size= 2;
+   btheme-tima.facedot_size= 2;
SETCOL(btheme-tima.face,   0, 50, 150, 40);
SETCOL(btheme-tima.face_select, 200, 100, 200, 80);
+   SETCOL(btheme-tima.editmesh_active, 255, 255, 255, 128);
 
/* space imageselect */
btheme-timasel= btheme-tv3d;

Modified: 
branches/blender2.5/blender/source/blender/editors/space_image/image_header.c
===
--- 
branches/blender2.5/blender/source/blender/editors/space_image/image_header.c   
2009-01-17 18:35:33 UTC (rev 18555)
+++ 
branches/blender2.5/blender/source/blender/editors/space_image/image_header.c   
2009-01-17 22:14:08 UTC (rev 18556)
@@ -223,12 +223,6 @@
case 8: /* Border Select Pinned */
borderselect_sima(UV_SELECT_PINNED);
break;
-   case 2: /* Unlink Selection */
-   unlink_selection();
-   break;
-   case 3: /* Linked UVs */
-   select_linked_tface_uv(2);
-   break;
case 7: /* Pinned UVs */
select_pinned_tface_uv();
break;
@@ -1207,9 +1201,11 @@
uiBlockBeginAlign(block);

uiDefIconButBitS(block, TOG, SCE_SELECT_VERTEX, B_REDR, 
ICON_VERTEXSEL,
-   xco,yco,XIC,YIC, scene-selectmode, 1.0, 0.0, 
0, 0, Vertex select mode (Ctrl Tab 1));
+   xco,yco,XIC,YIC, scene-selectmode, 1.0, 0.0, 
0, 0, Vertex select mode);
+   uiDefIconButBitS(block, TOG, SCE_SELECT_EDGE, B_REDR, 
ICON_EDGESEL,
+   

[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18557] branches/blender2.5/blender/source /blender/editors: 2.5

2009-01-17 Thread Michael Fox
Revision: 18557
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=revroot=bf-blenderrevision=18557
Author:   mfoxdogg
Date: 2009-01-18 02:26:20 +0100 (Sun, 18 Jan 2009)

Log Message:
---
 2.5
**
-ported some of the Object mode select menu to use uiDefMenuButO
- select random/layer still uses the hard coded value as no sutible 
popup exists
- select by type suffers from random crashes, somthing to do with 
Context
- need some way of doing sub menu's using the operator's invoke
- the old menu is just #if'ed out
- and did a little hous cleaning aswel

- added some undo pushes to the select operators

Modified Paths:
--
branches/blender2.5/blender/source/blender/editors/object/object_edit.c

branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_header.c

branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_select.c

Modified: 
branches/blender2.5/blender/source/blender/editors/object/object_edit.c
===
--- branches/blender2.5/blender/source/blender/editors/object/object_edit.c 
2009-01-17 22:14:08 UTC (rev 18556)
+++ branches/blender2.5/blender/source/blender/editors/object/object_edit.c 
2009-01-18 01:26:20 UTC (rev 18557)
@@ -1157,6 +1157,7 @@
CTX_DATA_END;

/* undo? */
+   ED_undo_push(C,Select By Type);
WM_event_add_notifier(C, NC_SCENE|ND_OB_SELECT, CTX_data_scene(C));

return OPERATOR_FINISHED;
@@ -1337,6 +1338,7 @@
CTX_DATA_END;

/* undo? */
+   ED_undo_push(C,Select By Layer);
WM_event_add_notifier(C, NC_SCENE|ND_OB_SELECT, CTX_data_scene(C));

return OPERATOR_FINISHED;
@@ -1368,6 +1370,7 @@
CTX_DATA_END;

/* undo? */
+   ED_undo_push(C,Selection Invert);
WM_event_add_notifier(C, NC_SCENE|ND_OB_SELECT, CTX_data_scene(C));

return OPERATOR_FINISHED;
@@ -1411,6 +1414,7 @@

/* undo? */
WM_event_add_notifier(C, NC_SCENE|ND_OB_SELECT, CTX_data_scene(C));
+   ED_undo_push(C,(De)Select All);

return OPERATOR_FINISHED;
 }
@@ -1443,6 +1447,7 @@
CTX_DATA_END;

/* undo? */
+   ED_undo_push(C,Select Random);
WM_event_add_notifier(C, NC_SCENE|ND_OB_SELECT, CTX_data_scene(C));

return OPERATOR_FINISHED;
@@ -2760,7 +2765,7 @@
 if (tot_change) {
ED_anim_dag_flush_update(C);
allqueue(REDRAWVIEW3D, 0);
-   BIF_undo_push(Do Center); 
+   ED_undo_push(C,Do Center);
}

/* Warn if any errors occured */

Modified: 
branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_header.c
===
--- 
branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_header.c 
2009-01-17 22:14:08 UTC (rev 18556)
+++ 
branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_header.c 
2009-01-18 01:26:20 UTC (rev 18557)
@@ -900,34 +900,14 @@
return block;
 }
 
-void do_view3d_select_objectmenu(bContext *C, void *arg, int event)
-{
-#if 0
-   switch(event) {
-   
-   case 0: /* border select */
-   borderselect();
-   break;
-   case 1: /* Select/Deselect All */
-   deselectall();
-   break;
-   case 2: /* inverse */
-   selectswap();
-   break;
-   case 3: /* random */
-   selectrandom();
-   break;
-   }
-   allqueue(REDRAWVIEW3D, 0);
-#endif
-}
-
 static uiBlock *view3d_select_objectmenu(bContext *C, uiMenuBlockHandle 
*handle, void *arg_unused)
 {
uiBlock *block;
short yco= 0, menuwidth=120;

block= uiBeginBlock(C, handle-region, view3d_select_objectmenu, 
UI_EMBOSSP, UI_HELV);
+   
+#if 0
uiBlockSetButmFunc(block, do_view3d_select_objectmenu, NULL);

uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, Border Select|B,
0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 1, 0, );
@@ -945,7 +925,18 @@

uiDefIconTextBlockBut(block, view3d_select_object_linkedmenu, NULL, 
ICON_RIGHTARROW_THIN, Linked, 0, yco-=20, 120, 19, );
uiDefIconTextBlockBut(block, view3d_select_object_groupedmenu, NULL, 
ICON_RIGHTARROW_THIN, Grouped, 0, yco-=20, 120, 19, );
+#endif
+   uiDefMenuButO(block, VIEW3D_OT_borderselect, Border Select);
+   
+   uiDefMenuSep(block);
+   
+   uiDefMenuButO(block, OBJECT_OT_de_select_all, Select/Deselect All);
+   uiDefMenuButO(block, OBJECT_OT_select_invert, Inverse);
+   uiDefMenuButO(block, OBJECT_OT_select_random, Random);
+   uiDefMenuButO(block, OBJECT_OT_select_by_layer, Select All by 
Layer);
+   uiDefMenuButO(block, OBJECT_OT_select_by_type, 

[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18558] branches/blender2.5/blender/source /blender: Made modal operators print their operator string after executing

2009-01-17 Thread Campbell Barton
Revision: 18558
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=revroot=bf-blenderrevision=18558
Author:   campbellbarton
Date: 2009-01-18 08:35:44 +0100 (Sun, 18 Jan 2009)

Log Message:
---
Made modal operators print their operator string after executing
(when in debug -d mode only)

copy  paste duplicate and transform operations can now be copied from user 
input and pasted into ./test.py and run with the Pkey (fixed some minor bugs 
preventing this)

Would be nice if the mode setting used a proper RNA Enum rather then an int. 

# example, duplicate and transform
bpyoperator.OBJECT_OT_add_duplicate(mode=1)
bpyoperator.TFM_OT_transform(mode=1, options=0, values=(-1.23989, 0.570745, 0, 
0), constraint_orientation=0, constraint_mode=0, constraint_matrix=(0, 0, 0, 0, 
0, 0, 0, 0, 0))

Modified Paths:
--
branches/blender2.5/blender/source/blender/makesrna/intern/rna_access.c

branches/blender2.5/blender/source/blender/windowmanager/intern/wm_event_system.c

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-18 01:26:20 UTC (rev 18557)
+++ branches/blender2.5/blender/source/blender/makesrna/intern/rna_access.c 
2009-01-18 07:35:44 UTC (rev 18558)
@@ -1939,7 +1939,7 @@
else {
BLI_dynstr_append(dynstr, ();
for(i=0; ilen; i++) {
-   BLI_dynstr_appendf(dynstr, i?%s, :%s, 
RNA_property_boolean_get_array(ptr, prop, i) ? True : False);
+   BLI_dynstr_appendf(dynstr, i?, %s:%s, 
RNA_property_boolean_get_array(ptr, prop, i) ? True : False);
}
BLI_dynstr_append(dynstr, ));
}
@@ -1951,19 +1951,19 @@
else {
BLI_dynstr_append(dynstr, ();
for(i=0; ilen; i++) {
-   BLI_dynstr_appendf(dynstr, i?%d, :%d, 
RNA_property_int_get_array(ptr, prop, i));
+   BLI_dynstr_appendf(dynstr, i?, %d:%d, 
RNA_property_int_get_array(ptr, prop, i));
}
BLI_dynstr_append(dynstr, ));
}
break;
case PROP_FLOAT:
if (len==0) {
-   BLI_dynstr_appendf(dynstr, %f, 
RNA_property_float_get(ptr, prop));
+   BLI_dynstr_appendf(dynstr, %g, 
RNA_property_float_get(ptr, prop));
}
else {
BLI_dynstr_append(dynstr, ();
for(i=0; ilen; i++) {
-   BLI_dynstr_appendf(dynstr, i?%f, :%f, 
RNA_property_float_get_array(ptr, prop, i));
+   BLI_dynstr_appendf(dynstr, i?, %g:%g, 
RNA_property_float_get_array(ptr, prop, i));
}
BLI_dynstr_append(dynstr, ));
}

Modified: 
branches/blender2.5/blender/source/blender/windowmanager/intern/wm_event_system.c
===
--- 
branches/blender2.5/blender/source/blender/windowmanager/intern/wm_event_system.c
   2009-01-18 01:26:20 UTC (rev 18557)
+++ 
branches/blender2.5/blender/source/blender/windowmanager/intern/wm_event_system.c
   2009-01-18 07:35:44 UTC (rev 18558)
@@ -448,7 +448,7 @@
if(ot-poll==NULL || ot-poll(C)) {
wmOperator *op= MEM_callocN(sizeof(wmOperator), ot-idname);
/* XXX operatortype names are static still. for debug */
 
-   if((G.f  G_DEBUG)  event-type!=MOUSEMOVE)
+   if((G.f  G_DEBUG)  event  event-type!=MOUSEMOVE)
printf(handle evt %d win %d op %s\n, 
event?event-type:0, CTX_wm_screen(C)-subwinactive, ot-idname); 

/* XXX adding new operator could be function, only happens here 
now */
@@ -482,12 +482,14 @@
else
printf(invalid operator call %s\n, ot-idname); /* 
debug, important to leave a while, should never happen */
 
-   if(G.f  G_DEBUG)
-   WM_operator_print(op);
-
-   if(!(retval  OPERATOR_RUNNING_MODAL))
+   if(!(retval  OPERATOR_RUNNING_MODAL)) {
if(reports==NULL  op-reports-list.first) /* only 
show the report if the report list was not given in the function */
uiPupmenuReports(C, op-reports);
+   
+   if (retval  OPERATOR_FINISHED) /* todo - this may conflict 
with the other WM_operator_print, if theres ever 2 prints for 1 action will may 
need to add modal check here */
+   if(G.f  G_DEBUG)
+   WM_operator_print(op);
+   }