[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [21699] branches/blender2.5/blender: issues auto generating rna docs
Campbell Barton
ideasman42 at gmail.com
Sun Jul 19 16:57:20 CEST 2009
Revision: 21699
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=21699
Author: campbellbarton
Date: 2009-07-19 16:57:20 +0200 (Sun, 19 Jul 2009)
Log Message:
-----------
issues auto generating rna docs
- add a warning when an operator name is NULL, set it to a dummy name to prevent crash. POSE_OT_constraints_clear had its name commented (not sure why)
- rna_Object_parent_type_itemf wasnt checking for context being NULL, needed for docs else it crashes.
- bpy.ops.add/remove didnt show up in a dir(bpy.ops)
Modified Paths:
--------------
branches/blender2.5/blender/release/ui/bpy_ops.py
branches/blender2.5/blender/source/blender/editors/object/editconstraint.c
branches/blender2.5/blender/source/blender/makesrna/intern/rna_object.c
branches/blender2.5/blender/source/blender/windowmanager/intern/wm_operators.c
Modified: branches/blender2.5/blender/release/ui/bpy_ops.py
===================================================================
--- branches/blender2.5/blender/release/ui/bpy_ops.py 2009-07-19 13:32:02 UTC (rev 21698)
+++ branches/blender2.5/blender/release/ui/bpy_ops.py 2009-07-19 14:57:20 UTC (rev 21699)
@@ -26,8 +26,12 @@
submodules = set()
+ # add this classes functions
+ for id_name in dir(self.__class__):
+ if not id_name.startswith('__'):
+ submodules.add(id_name)
+
for id_name in op_dir():
-
id_split = id_name.split('_OT_', 1)
if len(id_split) == 2:
@@ -65,10 +69,6 @@
module_upper = self.module.upper()
for id_name in op_dir():
-
- if id_name.startswith('__'):
- continue
-
id_split = id_name.split('_OT_', 1)
if len(id_split) == 2 and module_upper == id_split[0]:
functions.add(id_split[1])
Modified: branches/blender2.5/blender/source/blender/editors/object/editconstraint.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/object/editconstraint.c 2009-07-19 13:32:02 UTC (rev 21698)
+++ branches/blender2.5/blender/source/blender/editors/object/editconstraint.c 2009-07-19 14:57:20 UTC (rev 21699)
@@ -1011,7 +1011,7 @@
void POSE_OT_constraints_clear(wmOperatorType *ot)
{
/* identifiers */
- //ot->name = "Clear Constraints";
+ ot->name = "Clear Constraints";
ot->idname= "POSE_OT_constraints_clear";
ot->description= "Clear all the constraints for the selected bones.";
Modified: branches/blender2.5/blender/source/blender/makesrna/intern/rna_object.c
===================================================================
--- branches/blender2.5/blender/source/blender/makesrna/intern/rna_object.c 2009-07-19 13:32:02 UTC (rev 21698)
+++ branches/blender2.5/blender/source/blender/makesrna/intern/rna_object.c 2009-07-19 14:57:20 UTC (rev 21699)
@@ -184,13 +184,18 @@
static EnumPropertyItem *rna_Object_parent_type_itemf(bContext *C, PointerRNA *ptr, int *free)
{
Object *ob= (Object*)ptr->data;
- Object *par= ob->parent;
EnumPropertyItem *item= NULL;
int totitem= 0;
+ if(C==NULL) {
+ return parent_type_items;
+ }
+
RNA_enum_items_add_value(&item, &totitem, parent_type_items, PAROBJECT);
- if(par) {
+ if(ob->parent) {
+ Object *par= ob->parent;
+
if(par->type == OB_CURVE)
RNA_enum_items_add_value(&item, &totitem, parent_type_items, PARCURVE);
else if(par->type == OB_LATTICE)
Modified: branches/blender2.5/blender/source/blender/windowmanager/intern/wm_operators.c
===================================================================
--- branches/blender2.5/blender/source/blender/windowmanager/intern/wm_operators.c 2009-07-19 13:32:02 UTC (rev 21698)
+++ branches/blender2.5/blender/source/blender/windowmanager/intern/wm_operators.c 2009-07-19 14:57:20 UTC (rev 21699)
@@ -130,6 +130,13 @@
ot= MEM_callocN(sizeof(wmOperatorType), "operatortype");
ot->srna= RNA_def_struct(&BLENDER_RNA, "", "OperatorProperties");
opfunc(ot);
+
+ if(ot->name==NULL) {
+ static char dummy_name[] = "Dummy Name";
+ fprintf(stderr, "ERROR: Operator %s has no name property!\n", ot->idname);
+ ot->name= dummy_name;
+ }
+
RNA_def_struct_ui_text(ot->srna, ot->name, ot->description ? ot->description:""); // XXX All ops should have a description but for now allow them not to.
RNA_def_struct_identifier(ot->srna, ot->idname);
BLI_addtail(&global_ops, ot);
More information about the Bf-blender-cvs
mailing list