rna/py-api fix.
authorBrecht Van Lommel <brechtvanlommel@pandora.be>
Tue, 23 Mar 2010 15:25:33 +0000 (15:25 +0000)
committerBrecht Van Lommel <brechtvanlommel@pandora.be>
Tue, 23 Mar 2010 15:25:33 +0000 (15:25 +0000)
C functions and python used different argument order, this relied on mapping non-keyword arguments to 'REQUIRED' arguments but meant that you could not have an optional, non-keyword argument.

next commit will make order of arguments consistant (currently only changed order that rna wrapped).
(commit 27674 by Campbell from render25 branch)

24 files changed:
release/scripts/ui/space_info.py
source/blender/editors/armature/editarmature.c
source/blender/editors/curve/editcurve.c
source/blender/editors/gpencil/gpencil_buttons.c
source/blender/editors/include/UI_interface.h
source/blender/editors/interface/interface_handlers.c
source/blender/editors/interface/interface_layout.c
source/blender/editors/interface/interface_templates.c
source/blender/editors/object/object_relations.c
source/blender/editors/sound/sound_ops.c
source/blender/editors/space_graph/graph_buttons.c
source/blender/editors/space_graph/graph_edit.c
source/blender/editors/space_image/image_header.c
source/blender/editors/space_image/image_ops.c
source/blender/editors/space_nla/nla_edit.c
source/blender/editors/space_node/drawnode.c
source/blender/editors/space_text/text_header.c
source/blender/editors/space_text/text_ops.c
source/blender/editors/space_view3d/view3d_select.c
source/blender/editors/space_view3d/view3d_toolbar.c
source/blender/makesrna/intern/rna_ui_api.c
source/blender/python/intern/bpy_rna.c
source/blender/windowmanager/intern/wm_operators.c
source/blenderplayer/bad_level_call_stubs/stubs.c

index d8b18b57cf900bb29dabf3a09a18a1d53a57a7bd..f8f8f5cefe36db339b77cf36c1864958640cc2d4 100644 (file)
@@ -221,7 +221,7 @@ class INFO_MT_add(bpy.types.Menu):
 
         layout.operator_menu_enum("object.curve_add", "type", text="Curve", icon='OUTLINER_OB_CURVE')
         layout.operator_menu_enum("object.surface_add", "type", text="Surface", icon='OUTLINER_OB_SURFACE')
-        layout.operator_menu_enum("object.metaball_add", "type", 'META', text="Metaball", icon='OUTLINER_OB_META')
+        layout.operator_menu_enum("object.metaball_add", "type", text="Metaball", icon='OUTLINER_OB_META')
         layout.operator("object.text_add", text="Text", icon='OUTLINER_OB_FONT')
         layout.separator()
 
@@ -233,10 +233,10 @@ class INFO_MT_add(bpy.types.Menu):
 
         layout.operator("object.camera_add", text="Camera", icon='OUTLINER_OB_CAMERA')
         layout.operator_context = 'EXEC_SCREEN'
-        layout.operator_menu_enum("object.lamp_add", "type", 'LAMP', text="Lamp", icon='OUTLINER_OB_LAMP')
+        layout.operator_menu_enum("object.lamp_add", "type", text="Lamp", icon='OUTLINER_OB_LAMP')
         layout.separator()
 
-        layout.operator_menu_enum("object.effector_add", "type", 'EMPTY', text="Force Field", icon='OUTLINER_OB_EMPTY')
+        layout.operator_menu_enum("object.effector_add", "type", text="Force Field", icon='OUTLINER_OB_EMPTY')
         layout.separator()
 
         if(len(bpy.data.groups) > 10):
index e19da91b2a2d8f39d18f4df4cfe585ca1ee920ee..f3b5e49a3ef554103ba5b9dce083104882d32056 100644 (file)
@@ -3944,11 +3944,11 @@ static int armature_parent_set_invoke(bContext *C, wmOperator *op, wmEvent *even
        }
        CTX_DATA_END;
 
-       uiItemEnumO(layout, NULL, 0, "ARMATURE_OT_parent_set", "type", ARM_PAR_CONNECT);
+       uiItemEnumO(layout, "ARMATURE_OT_parent_set", NULL, 0, "type", ARM_PAR_CONNECT);
        
        /* ob becomes parent, make the associated menus */
        if (allchildbones)
-               uiItemEnumO(layout, NULL, 0, "ARMATURE_OT_parent_set", "type", ARM_PAR_OFFSET); 
+               uiItemEnumO(layout, "ARMATURE_OT_parent_set", NULL, 0, "type", ARM_PAR_OFFSET); 
                
        uiPupMenuEnd(C, pup);
        
index 0e3bd2f1051a7b04659270127dc2a111a8f6fdef..2fc3364b86c946af39d7296a2efd3bd735bf6e98 100644 (file)
@@ -4565,8 +4565,8 @@ static int delete_invoke(bContext *C, wmOperator *op, wmEvent *event)
        if(obedit->type==OB_SURF) {
                pup= uiPupMenuBegin(C, "Delete", 0);
                layout= uiPupMenuLayout(pup);
-               uiItemEnumO(layout, NULL, 0, op->type->idname, "type", 0);
-               uiItemEnumO(layout, NULL, 0, op->type->idname, "type", 2);
+               uiItemEnumO(layout, op->type->idname, NULL, 0, "type", 0);
+               uiItemEnumO(layout, op->type->idname, NULL, 0, "type", 2);
                uiPupMenuEnd(C, pup);
        }
        else {
index 98746122538abcfa87ae3121aef3ea598ff082ca..58559029bef728fa4db603fd6ec941b6102e85e7 100644 (file)
@@ -257,11 +257,11 @@ static void draw_gpencil_panel (bContext *C, uiLayout *layout, bGPdata *gpd, Poi
                
                /* 'stick to view' option */
                row= uiLayoutRow(col, 1);
-               uiItemEnumR_string(row, NULL, 0, &gpd_ptr, "draw_mode", "VIEW");
-               uiItemEnumR_string(row, NULL, 0, &gpd_ptr, "draw_mode", "CURSOR");
+               uiItemEnumR_string(row, &gpd_ptr, "draw_mode", "VIEW", NULL, 0);
+               uiItemEnumR_string(row, &gpd_ptr, "draw_mode", "CURSOR", NULL, 0);
                row= uiLayoutRow(col, 1);
-               uiItemEnumR_string(row, NULL, 0, &gpd_ptr, "draw_mode", "SURFACE");
-               uiItemEnumR_string(row, NULL, 0, &gpd_ptr, "draw_mode", "STROKE");
+               uiItemEnumR_string(row, &gpd_ptr, "draw_mode", "SURFACE", NULL, 0);
+               uiItemEnumR_string(row, &gpd_ptr, "draw_mode", "STROKE", NULL, 0);
                
                row= uiLayoutRow(col, 0);
                uiLayoutSetActive(row, (gpd->flag & (GP_DATA_DEPTH_STROKE|GP_DATA_DEPTH_VIEW)) ? 1:0);
index b3e818a8780df3125155fa21c6980a1a29eef48a..fea9e1368c29f39812d85b1cd0cd8081348ddbab 100644 (file)
@@ -693,32 +693,32 @@ void uiTemplateList(uiLayout *layout, struct bContext *C, struct PointerRNA *ptr
 
 /* items */
 void uiItemO(uiLayout *layout, char *name, int icon, char *opname);
-void uiItemEnumO(uiLayout *layout, char *name, int icon, char *opname, char *propname, int value);
+void uiItemEnumO(uiLayout *layout, char *opname, char *name, int icon, char *propname, int value);
 void uiItemEnumO_string(uiLayout *layout, char *name, int icon, char *opname, char *propname, char *value);
 void uiItemsEnumO(uiLayout *layout, char *opname, char *propname);
 void uiItemBooleanO(uiLayout *layout, char *name, int icon, char *opname, char *propname, int value);
 void uiItemIntO(uiLayout *layout, char *name, int icon, char *opname, char *propname, int value);
 void uiItemFloatO(uiLayout *layout, char *name, int icon, char *opname, char *propname, float value);
 void uiItemStringO(uiLayout *layout, char *name, int icon, char *opname, char *propname, char *value);
-PointerRNA uiItemFullO(uiLayout *layout, char *name, int icon, char *idname, struct IDProperty *properties, int context, int flag);
+PointerRNA uiItemFullO(uiLayout *layout, char *idname, char *name, int icon, struct IDProperty *properties, int context, int flag);
 
 void uiItemR(uiLayout *layout, char *name, int icon, struct PointerRNA *ptr, char *propname, int flag);
 void uiItemFullR(uiLayout *layout, char *name, int icon, struct PointerRNA *ptr, struct PropertyRNA *prop, int index, int value, int flag);
 void uiItemEnumR(uiLayout *layout, char *name, int icon, struct PointerRNA *ptr, char *propname, int value);
-void uiItemEnumR_string(uiLayout *layout, char *name, int icon, struct PointerRNA *ptr, char *propname, char *value);
+void uiItemEnumR_string(uiLayout *layout, struct PointerRNA *ptr, char *propname, char *value, char *name, int icon);
 void uiItemsEnumR(uiLayout *layout, struct PointerRNA *ptr, char *propname);
-void uiItemPointerR(uiLayout *layout, char *name, int icon, struct PointerRNA *ptr, char *propname, struct PointerRNA *searchptr, char *searchpropname);
+void uiItemPointerR(uiLayout *layout, struct PointerRNA *ptr, char *propname, struct PointerRNA *searchptr, char *searchpropname, char *name, int icon);
 void uiItemsFullEnumO(uiLayout *layout, char *opname, char *propname, struct IDProperty *properties, int context, int flag);
 
 void uiItemL(uiLayout *layout, char *name, int icon); /* label */
 void uiItemLDrag(uiLayout *layout, struct PointerRNA *ptr, char *name, int icon); /* label icon for dragging */
-void uiItemM(uiLayout *layout, struct bContext *C, char *name, int icon, char *menuname); /* menu */
+void uiItemM(uiLayout *layout, struct bContext *C, char *menuname, char *name, int icon); /* menu */
 void uiItemV(uiLayout *layout, char *name, int icon, int argval); /* value */
 void uiItemS(uiLayout *layout); /* separator */
 
 void uiItemMenuF(uiLayout *layout, char *name, int icon, uiMenuCreateFunc func, void *arg);
-void uiItemMenuEnumO(uiLayout *layout, char *name, int icon, char *opname, char *propname);
-void uiItemMenuEnumR(uiLayout *layout, char *name, int icon, struct PointerRNA *ptr, char *propname);
+void uiItemMenuEnumO(uiLayout *layout, char *opname, char *propname, char *name, int icon);
+void uiItemMenuEnumR(uiLayout *layout, struct PointerRNA *ptr, char *propname, char *name, int icon);
 
 /* UI Operators */
 void UI_buttons_operatortypes(void);
index d4f29a70892a9720ce917d1473adb80aa86782df..ec6557e8730679d9acb06f286e512237342cb556 100644 (file)
@@ -3948,28 +3948,28 @@ static int ui_but_menu(bContext *C, uiBut *but)
 
                        WM_operator_properties_create(&ptr_props, "WM_OT_doc_view");
                        RNA_string_set(&ptr_props, "doc_id", buf);
-                       uiItemFullO(layout, "View Docs", 0, "WM_OT_doc_view", ptr_props.data, WM_OP_EXEC_DEFAULT, 0);
+                       uiItemFullO(layout, "WM_OT_doc_view", "View Docs", 0, ptr_props.data, WM_OP_EXEC_DEFAULT, 0);
 
 
                        WM_operator_properties_create(&ptr_props, "WM_OT_doc_edit");
                        RNA_string_set(&ptr_props, "doc_id", buf);
                        RNA_string_set(&ptr_props, "doc_new", RNA_property_description(but->rnaprop));
 
-                       uiItemFullO(layout, "Submit Description", 0, "WM_OT_doc_edit", ptr_props.data, WM_OP_INVOKE_DEFAULT, 0);
+                       uiItemFullO(layout, "WM_OT_doc_edit", "Submit Description", 0, ptr_props.data, WM_OP_INVOKE_DEFAULT, 0);
                }
                else if (but->optype) {
                        WM_operator_py_idname(buf, but->optype->idname);
 
                        WM_operator_properties_create(&ptr_props, "WM_OT_doc_view");
                        RNA_string_set(&ptr_props, "doc_id", buf);
-                       uiItemFullO(layout, "View Docs", 0, "WM_OT_doc_view", ptr_props.data, WM_OP_EXEC_DEFAULT, 0);
+                       uiItemFullO(layout, "WM_OT_doc_view", "View Docs", 0, ptr_props.data, WM_OP_EXEC_DEFAULT, 0);
 
 
                        WM_operator_properties_create(&ptr_props, "WM_OT_doc_edit");
                        RNA_string_set(&ptr_props, "doc_id", buf);
                        RNA_string_set(&ptr_props, "doc_new", but->optype->description);
 
-                       uiItemFullO(layout, "Submit Description", 0, "WM_OT_doc_edit", ptr_props.data, WM_OP_INVOKE_DEFAULT, 0);
+                       uiItemFullO(layout, "WM_OT_doc_edit", "Submit Description", 0, ptr_props.data, WM_OP_INVOKE_DEFAULT, 0);
                }
        }
 
index ab199436a55cf1960de88f54cf9264d541120c12..aee1f543607a3f12ec836b9dba609f3cbd204388 100644 (file)
@@ -592,7 +592,7 @@ static void ui_item_disabled(uiLayout *layout, char *name)
 }
 
 /* operator items */
-PointerRNA uiItemFullO(uiLayout *layout, char *name, int icon, char *idname, IDProperty *properties, int context, int flag)
+PointerRNA uiItemFullO(uiLayout *layout, char *idname, char *name, int icon, IDProperty *properties, int context, int flag)
 {
        uiBlock *block= layout->root->block;
        wmOperatorType *ot= WM_operatortype_find(idname, 0);
@@ -673,7 +673,7 @@ static char *ui_menu_enumpropname(uiLayout *layout, char *opname, char *propname
        return "";
 }
 
-void uiItemEnumO(uiLayout *layout, char *name, int icon, char *opname, char *propname, int value)
+void uiItemEnumO(uiLayout *layout, char *opname, char *name, int icon, char *propname, int value)
 {
        PointerRNA ptr;
 
@@ -683,7 +683,7 @@ void uiItemEnumO(uiLayout *layout, char *name, int icon, char *opname, char *pro
        if(!name)
                name= ui_menu_enumpropname(layout, opname, propname, value);
 
-       uiItemFullO(layout, name, icon, opname, ptr.data, layout->root->opcontext, 0);
+       uiItemFullO(layout, opname, name, icon, ptr.data, layout->root->opcontext, 0);
 }
 
 void uiItemsFullEnumO(uiLayout *layout, char *opname, char *propname, IDProperty *properties, int context, int flag)
@@ -723,10 +723,10 @@ void uiItemsFullEnumO(uiLayout *layout, char *opname, char *propname, IDProperty
                                        ptr.data= IDP_CopyProperty(properties);
                                        RNA_enum_set(&ptr, propname, item[i].value);
 
-                                       uiItemFullO(column, (char*)item[i].name, item[i].icon, opname, ptr.data, context, flag);
+                                       uiItemFullO(column, opname, (char*)item[i].name, item[i].icon, ptr.data, context, flag);
                                }
                                else
-                                       uiItemEnumO(column, (char*)item[i].name, item[i].icon, opname, propname, item[i].value);
+                                       uiItemEnumO(column, opname, (char*)item[i].name, item[i].icon, propname, item[i].value);
                        }
                        else {
                                if(item[i].name) {
@@ -790,7 +790,7 @@ void uiItemEnumO_string(uiLayout *layout, char *name, int icon, char *opname, ch
        if(!name)
                name= ui_menu_enumpropname(layout, opname, propname, value);
 
-       uiItemFullO(layout, name, icon, opname, ptr.data, layout->root->opcontext, 0);
+       uiItemFullO(layout, opname, name, icon, ptr.data, layout->root->opcontext, 0);
 }
 
 void uiItemBooleanO(uiLayout *layout, char *name, int icon, char *opname, char *propname, int value)
@@ -800,7 +800,7 @@ void uiItemBooleanO(uiLayout *layout, char *name, int icon, char *opname, char *
        WM_operator_properties_create(&ptr, opname);
        RNA_boolean_set(&ptr, propname, value);
 
-       uiItemFullO(layout, name, icon, opname, ptr.data, layout->root->opcontext, 0);
+       uiItemFullO(layout, opname, name, icon, ptr.data, layout->root->opcontext, 0);
 }
 
 void uiItemIntO(uiLayout *layout, char *name, int icon, char *opname, char *propname, int value)
@@ -810,7 +810,7 @@ void uiItemIntO(uiLayout *layout, char *name, int icon, char *opname, char *prop
        WM_operator_properties_create(&ptr, opname);
        RNA_int_set(&ptr, propname, value);
 
-       uiItemFullO(layout, name, icon, opname, ptr.data, layout->root->opcontext, 0);
+       uiItemFullO(layout, opname, name, icon, ptr.data, layout->root->opcontext, 0);
 }
 
 void uiItemFloatO(uiLayout *layout, char *name, int icon, char *opname, char *propname, float value)
@@ -820,7 +820,7 @@ void uiItemFloatO(uiLayout *layout, char *name, int icon, char *opname, char *pr
        WM_operator_properties_create(&ptr, opname);
        RNA_float_set(&ptr, propname, value);
 
-       uiItemFullO(layout, name, icon, opname, ptr.data, layout->root->opcontext, 0);
+       uiItemFullO(layout, opname, name, icon, ptr.data, layout->root->opcontext, 0);
 }
 
 void uiItemStringO(uiLayout *layout, char *name, int icon, char *opname, char *propname, char *value)
@@ -830,12 +830,12 @@ void uiItemStringO(uiLayout *layout, char *name, int icon, char *opname, char *p
        WM_operator_properties_create(&ptr, opname);
        RNA_string_set(&ptr, propname, value);
 
-       uiItemFullO(layout, name, icon, opname, ptr.data, layout->root->opcontext, 0);
+       uiItemFullO(layout, opname, name, icon, ptr.data, layout->root->opcontext, 0);
 }
 
 void uiItemO(uiLayout *layout, char *name, int icon, char *opname)
 {
-       uiItemFullO(layout, name, icon, opname, NULL, layout->root->opcontext, 0);
+       uiItemFullO(layout, opname, name, icon, NULL, layout->root->opcontext, 0);
 }
 
 /* RNA property items */
@@ -993,7 +993,7 @@ void uiItemEnumR(uiLayout *layout, char *name, int icon, struct PointerRNA *ptr,
        uiItemFullR(layout, name, icon, ptr, prop, RNA_ENUM_VALUE, value, 0);
 }
 
-void uiItemEnumR_string(uiLayout *layout, char *name, int icon, struct PointerRNA *ptr, char *propname, char *value)
+void uiItemEnumR_string(uiLayout *layout, struct PointerRNA *ptr, char *propname, char *value, char *name, int icon)
 {
        PropertyRNA *prop= RNA_struct_find_property(ptr, propname);
        EnumPropertyItem *item;
@@ -1191,7 +1191,7 @@ void ui_but_add_search(uiBut *but, PointerRNA *ptr, PropertyRNA *prop, PointerRN
        }
 }
 
-void uiItemPointerR(uiLayout *layout, char *name, int icon, struct PointerRNA *ptr, char *propname, struct PointerRNA *searchptr, char *searchpropname)
+void uiItemPointerR(uiLayout *layout, struct PointerRNA *ptr, char *propname, struct PointerRNA *searchptr, char *searchpropname, char *name, int icon)
 {
        PropertyRNA *prop, *searchprop;
        PropertyType type;
@@ -1293,7 +1293,7 @@ static void ui_item_menu(uiLayout *layout, char *name, int icon, uiMenuCreateFun
                but->type= MENU;
 }
 
-void uiItemM(uiLayout *layout, bContext *C, char *name, int icon, char *menuname)
+void uiItemM(uiLayout *layout, bContext *C, char *menuname, char *name, int icon)
 {
        MenuType *mt;
 
@@ -1411,7 +1411,7 @@ static void menu_item_enum_opname_menu(bContext *C, uiLayout *layout, void *arg)
        uiItemsEnumO(layout, lvl->opname, lvl->propname);
 }
 
-void uiItemMenuEnumO(uiLayout *layout, char *name, int icon, char *opname, char *propname)
+void uiItemMenuEnumO(uiLayout *layout, char *opname, char *propname, char *name, int icon)
 {
        wmOperatorType *ot= WM_operatortype_find(opname, 0);
        MenuItemLevel *lvl;
@@ -1442,7 +1442,7 @@ static void menu_item_enum_rna_menu(bContext *C, uiLayout *layout, void *arg)
        uiItemsEnumR(layout, &lvl->rnapoin, lvl->propname);
 }
 
-void uiItemMenuEnumR(uiLayout *layout, char *name, int icon, struct PointerRNA *ptr, char *propname)
+void uiItemMenuEnumR(uiLayout *layout, struct PointerRNA *ptr, char *propname, char *name, int icon)
 {
        MenuItemLevel *lvl;
        PropertyRNA *prop;
index bd55f2c2244f55b7d9253aa23222ee05a491cf39..5beb1dc7548c1f4921da96b1240f6ff0182829a8 100644 (file)
@@ -815,10 +815,10 @@ static uiLayout *draw_modifier(uiLayout *layout, Scene *scene, Object *ob, Modif
                                }
                        }
                        else {
-                               uiItemEnumO(row, "Apply", 0, "OBJECT_OT_modifier_apply", "apply_as", MODIFIER_APPLY_DATA);
+                               uiItemEnumO(row, "OBJECT_OT_modifier_apply", "Apply", 0, "apply_as", MODIFIER_APPLY_DATA);
                                
                                if (modifier_sameTopology(md))
-                                       uiItemEnumO(row, "Apply as Shape", 0, "OBJECT_OT_modifier_apply", "apply_as", MODIFIER_APPLY_SHAPE);
+                                       uiItemEnumO(row, "OBJECT_OT_modifier_apply", "Apply as Shape", 0, "apply_as", MODIFIER_APPLY_SHAPE);
                        }
                        
                        uiBlockClearButLock(block);
index 06075c4ff351dfbc33df47bbf0dcf0d89c1342f4..e89bde00ce73d4429647ab28062c51919ec472e7 100644 (file)
@@ -279,7 +279,7 @@ static int make_proxy_invoke (bContext *C, wmOperator *op, wmEvent *evt)
                PointerRNA props_ptr;
                
                /* create operator menu item with relevant properties filled in */
-               props_ptr= uiItemFullO(layout, op->type->name, 0, op->idname, NULL, WM_OP_EXEC_REGION_WIN, UI_ITEM_O_RETURN_PROPS);
+               props_ptr= uiItemFullO(layout, op->idname, op->type->name, 0, NULL, WM_OP_EXEC_REGION_WIN, UI_ITEM_O_RETURN_PROPS);
                
                /* present the menu and be done... */
                uiPupMenuEnd(C, pup);
@@ -672,23 +672,23 @@ static int parent_set_invoke(bContext *C, wmOperator *op, wmEvent *event)
        uiLayout *layout= uiPupMenuLayout(pup);
        
        uiLayoutSetOperatorContext(layout, WM_OP_EXEC_DEFAULT);
-       uiItemEnumO(layout, NULL, 0, "OBJECT_OT_parent_set", "type", PAR_OBJECT);
+       uiItemEnumO(layout, "OBJECT_OT_parent_set", NULL, 0, "type", PAR_OBJECT);
        
        /* ob becomes parent, make the associated menus */
        if(ob->type==OB_ARMATURE) {
-               uiItemEnumO(layout, NULL, 0, "OBJECT_OT_parent_set", "type", PAR_ARMATURE);
-               uiItemEnumO(layout, NULL, 0, "OBJECT_OT_parent_set", "type", PAR_ARMATURE_NAME);
-               uiItemEnumO(layout, NULL, 0, "OBJECT_OT_parent_set", "type", PAR_ARMATURE_ENVELOPE);
-               uiItemEnumO(layout, NULL, 0, "OBJECT_OT_parent_set", "type", PAR_ARMATURE_AUTO);
-               uiItemEnumO(layout, NULL, 0, "OBJECT_OT_parent_set", "type", PAR_BONE);
+               uiItemEnumO(layout, "OBJECT_OT_parent_set", NULL, 0, "type", PAR_ARMATURE);
+               uiItemEnumO(layout, "OBJECT_OT_parent_set", NULL, 0, "type", PAR_ARMATURE_NAME);
+               uiItemEnumO(layout, "OBJECT_OT_parent_set", NULL, 0, "type", PAR_ARMATURE_ENVELOPE);
+               uiItemEnumO(layout, "OBJECT_OT_parent_set", NULL, 0, "type", PAR_ARMATURE_AUTO);
+               uiItemEnumO(layout, "OBJECT_OT_parent_set", NULL, 0, "type", PAR_BONE);
        }
        else if(ob->type==OB_CURVE) {
-               uiItemEnumO(layout, NULL, 0, "OBJECT_OT_parent_set", "type", PAR_CURVE);
-               uiItemEnumO(layout, NULL, 0, "OBJECT_OT_parent_set", "type", PAR_FOLLOW);
-               uiItemEnumO(layout, NULL, 0, "OBJECT_OT_parent_set", "type", PAR_PATH_CONST);
+               uiItemEnumO(layout, "OBJECT_OT_parent_set", NULL, 0, "type", PAR_CURVE);
+               uiItemEnumO(layout, "OBJECT_OT_parent_set", NULL, 0, "type", PAR_FOLLOW);
+               uiItemEnumO(layout, "OBJECT_OT_parent_set", NULL, 0, "type", PAR_PATH_CONST);
        }
        else if(ob->type == OB_LATTICE) {
-               uiItemEnumO(layout, NULL, 0, "OBJECT_OT_parent_set", "type", PAR_LATTICE);
+               uiItemEnumO(layout, "OBJECT_OT_parent_set", NULL, 0, "type", PAR_LATTICE);
        }
        
        uiPupMenuEnd(C, pup);
index 4edc85a44924b4761b0b4e8f09bc030243f64dcb..376db0d3d5822488e11985f5079287c919efc122 100644 (file)
@@ -179,23 +179,23 @@ static void unpack_menu(bContext *C, char *opname, char *abs_name, char *folder,
        pup= uiPupMenuBegin(C, "Unpack file", 0);
        layout= uiPupMenuLayout(pup);
 
-       uiItemEnumO(layout, "Remove Pack", 0, opname, "method", PF_REMOVE);
+       uiItemEnumO(layout, opname, "Remove Pack", 0, "method", PF_REMOVE);
 
        if(strcmp(abs_name, local_name)) {
                switch(checkPackedFile(local_name, pf)) {
                        case PF_NOFILE:
                                sprintf(line, "Create %s", local_name);
-                               uiItemEnumO(layout, line, 0, opname, "method", PF_WRITE_LOCAL);
+                               uiItemEnumO(layout, opname, line, 0, "method", PF_WRITE_LOCAL);
                                break;
                        case PF_EQUAL:
                                sprintf(line, "Use %s (identical)", local_name);
-                               uiItemEnumO(layout, line, 0, opname, "method", PF_USE_LOCAL);
+                               uiItemEnumO(layout, opname, line, 0, "method", PF_USE_LOCAL);
                                break;
                        case PF_DIFFERS:
                                sprintf(line, "Use %s (differs)", local_name);
-                               uiItemEnumO(layout, line, 0, opname, "method", PF_USE_LOCAL);
+                               uiItemEnumO(layout, opname, line, 0, "method", PF_USE_LOCAL);
                                sprintf(line, "Overwrite %s", local_name);
-                               uiItemEnumO(layout, line, 0, opname, "method", PF_WRITE_LOCAL);
+                               uiItemEnumO(layout, opname, line, 0, "method", PF_WRITE_LOCAL);
                                break;
                }
        }
@@ -203,17 +203,17 @@ static void unpack_menu(bContext *C, char *opname, char *abs_name, char *folder,
        switch(checkPackedFile(abs_name, pf)) {
                case PF_NOFILE:
                        sprintf(line, "Create %s", abs_name);
-                       uiItemEnumO(layout, line, 0, opname, "method", PF_WRITE_ORIGINAL);
+                       uiItemEnumO(layout, opname, line, 0, "method", PF_WRITE_ORIGINAL);
                        break;
                case PF_EQUAL:
                        sprintf(line, "Use %s (identical)", abs_name);
-                       uiItemEnumO(layout, line, 0, opname, "method", PF_USE_ORIGINAL);
+                       uiItemEnumO(layout, opname, line, 0, "method", PF_USE_ORIGINAL);
                        break;
                case PF_DIFFERS:
                        sprintf(line, "Use %s (differs)", local_name);
-                       uiItemEnumO(layout, line, 0, opname, "method", PF_USE_ORIGINAL);
+                       uiItemEnumO(layout, opname, line, 0, "method", PF_USE_ORIGINAL);
                        sprintf(line, "Overwrite %s", local_name);
-                       uiItemEnumO(layout, line, 0, opname, "method", PF_WRITE_ORIGINAL);
+                       uiItemEnumO(layout, opname, line, 0, "method", PF_WRITE_ORIGINAL);
                        break;
        }
 
index ed5de2474874d6757bed0b4289f2fed5a2607ef3..c7b98973bbafe62a989f7a83b27d1dddfdb205f7 100644 (file)
@@ -157,10 +157,10 @@ static void graph_panel_view(const bContext *C, Panel *pa)
                uiLayoutSetActive(subcol, RNA_boolean_get(&spaceptr, "show_cursor")); 
                        row= uiLayoutSplit(subcol, 0.7, 1);
                                uiItemR(row, "Cursor X", 0, &sceneptr, "current_frame", 0);
-                               uiItemEnumO(row, "To Keys", 0, "GRAPH_OT_snap", "type", GRAPHKEYS_SNAP_CFRA);
+                               uiItemEnumO(row, "GRAPH_OT_snap", "To Keys", 0, "type", GRAPHKEYS_SNAP_CFRA);
                        row= uiLayoutSplit(subcol, 0.7, 1);
                                uiItemR(row, "Cursor Y", 0, &spaceptr, "cursor_value", 0);
-                               uiItemEnumO(row, "To Keys", 0, "GRAPH_OT_snap", "type", GRAPHKEYS_SNAP_VALUE);
+                               uiItemEnumO(row, "GRAPH_OT_snap", "To Keys", 0, "type", GRAPHKEYS_SNAP_VALUE);
 }
 
 /* ******************* active F-Curve ************** */
@@ -349,7 +349,7 @@ static void graph_panel_driverVar__rotDiff(const bContext *C, uiLayout *layout,
                        PointerRNA tar_ptr;
                        
                        RNA_pointer_create(dtar->id, &RNA_Pose, ob1->pose, &tar_ptr);
-                       uiItemPointerR(col, "", ICON_BONE_DATA, &dtar_ptr, "bone_target", &tar_ptr, "bones");
+                       uiItemPointerR(col, &dtar_ptr, "bone_target", &tar_ptr, "bones", "", ICON_BONE_DATA);
                }
        
        col= uiLayoutColumn(layout, 1);
@@ -359,7 +359,7 @@ static void graph_panel_driverVar__rotDiff(const bContext *C, uiLayout *layout,
                        PointerRNA tar_ptr;
                        
                        RNA_pointer_create(dtar2->id, &RNA_Pose, ob2->pose, &tar_ptr);
-                       uiItemPointerR(col, "", ICON_BONE_DATA, &dtar2_ptr, "bone_target", &tar_ptr, "bones");
+                       uiItemPointerR(col, &dtar2_ptr, "bone_target", &tar_ptr, "bones", "", ICON_BONE_DATA);
                }
 }
 
@@ -385,7 +385,7 @@ static void graph_panel_driverVar__locDiff(const bContext *C, uiLayout *layout,
                        PointerRNA tar_ptr;
                        
                        RNA_pointer_create(dtar->id, &RNA_Pose, ob1->pose, &tar_ptr);
-                       uiItemPointerR(col, "", ICON_BONE_DATA, &dtar_ptr, "bone_target", &tar_ptr, "bones");
+                       uiItemPointerR(col, &dtar_ptr, "bone_target", &tar_ptr, "bones", "", ICON_BONE_DATA);
                }
                
                uiItemR(col, NULL, 0, &dtar_ptr, "use_local_space_transforms", 0);
@@ -397,7 +397,7 @@ static void graph_panel_driverVar__locDiff(const bContext *C, uiLayout *layout,
                        PointerRNA tar_ptr;
                        
                        RNA_pointer_create(dtar2->id, &RNA_Pose, ob2->pose, &tar_ptr);
-                       uiItemPointerR(col, "", ICON_BONE_DATA, &dtar2_ptr, "bone_target", &tar_ptr, "bones");
+                       uiItemPointerR(col, &dtar2_ptr, "bone_target", &tar_ptr, "bones", "", ICON_BONE_DATA);
                }
                
                uiItemR(col, NULL, 0, &dtar2_ptr, "use_local_space_transforms", 0);
@@ -422,7 +422,7 @@ static void graph_panel_driverVar__transChan(const bContext *C, uiLayout *layout
                        PointerRNA tar_ptr;
                        
                        RNA_pointer_create(dtar->id, &RNA_Pose, ob->pose, &tar_ptr);
-                       uiItemPointerR(col, "", ICON_BONE_DATA, &dtar_ptr, "bone_target", &tar_ptr, "bones");
+                       uiItemPointerR(col, &dtar_ptr, "bone_target", &tar_ptr, "bones", "", ICON_BONE_DATA);
                }
                
                row= uiLayoutRow(layout, 1);
index 943f31f111bdba7f75b84e3a4d86a9f0a4595896..fe7168240f8b4863aa920fc33825c4935fbc60a1 100644 (file)
@@ -1920,7 +1920,7 @@ static int graph_fmodifier_add_invoke (bContext *C, wmOperator *op, wmEvent *eve
                        continue;
                
                /* create operator menu item with relevant properties filled in */
-               props_ptr= uiItemFullO(layout, fmi->name, 0, "GRAPH_OT_fmodifier_add", NULL, WM_OP_EXEC_REGION_WIN, UI_ITEM_O_RETURN_PROPS);
+               props_ptr= uiItemFullO(layout, "GRAPH_OT_fmodifier_add", fmi->name, 0, NULL, WM_OP_EXEC_REGION_WIN, UI_ITEM_O_RETURN_PROPS);
                        /* the only thing that gets set from the menu is the type of F-Modifier to add */
                RNA_enum_set(&props_ptr, "type", i);
                        /* the following properties are just repeats of existing ones... */
index 8a0e9878572e9deef463426c426559529c71cd79..25208b61c28fd9e4c126eed8ef78aa110ec3ad69 100644 (file)
@@ -74,10 +74,10 @@ static int toolbox_invoke(bContext *C, wmOperator *op, wmEvent *event)
        pup= uiPupMenuBegin(C, "Toolbox", 0);
        layout= uiPupMenuLayout(pup);
 
-       uiItemM(layout, C, NULL, 0, "IMAGE_MT_view");
-       if(show_uvedit) uiItemM(layout, C, NULL, 0, "IMAGE_MT_select");
-       uiItemM(layout, C, NULL, 0, "IMAGE_MT_image");
-       if(show_uvedit) uiItemM(layout, C, NULL, 0, "IMAGE_MT_uvs");
+       uiItemM(layout, C, "IMAGE_MT_view", NULL, 0);
+       if(show_uvedit) uiItemM(layout, C, "IMAGE_MT_select", NULL, 0);
+       uiItemM(layout, C, "IMAGE_MT_image", NULL, 0);
+       if(show_uvedit) uiItemM(layout, C, "IMAGE_MT_uvs", NULL, 0);
 
        uiPupMenuEnd(C, pup);
 
index 68ba83b40001a76b55ddced09402f8c57baffb11..671bbe5f8cde2619f2fdf79210e0522bc5b8b704 100644 (file)
@@ -1326,23 +1326,23 @@ void unpack_menu(bContext *C, char *opname, char *abs_name, char *folder, Packed
        pup= uiPupMenuBegin(C, "Unpack file", 0);
        layout= uiPupMenuLayout(pup);
 
-       uiItemEnumO(layout, "Remove Pack", 0, opname, "method", PF_REMOVE);
+       uiItemEnumO(layout, opname, "Remove Pack", 0, "method", PF_REMOVE);
 
        if(strcmp(abs_name, local_name)) {
                switch(checkPackedFile(local_name, pf)) {
                        case PF_NOFILE:
                                sprintf(line, "Create %s", local_name);
-                               uiItemEnumO(layout, line, 0, opname, "method", PF_WRITE_LOCAL);
+                               uiItemEnumO(layout, opname, line, 0, "method", PF_WRITE_LOCAL);
                                break;
                        case PF_EQUAL:
                                sprintf(line, "Use %s (identical)", local_name);
-                               uiItemEnumO(layout, line, 0, opname, "method", PF_USE_LOCAL);
+                               uiItemEnumO(layout, opname, line, 0, "method", PF_USE_LOCAL);
                                break;
                        case PF_DIFFERS:
                                sprintf(line, "Use %s (differs)", local_name);
-                               uiItemEnumO(layout, line, 0, opname, "method", PF_USE_LOCAL);
+                               uiItemEnumO(layout, opname, line, 0, "method", PF_USE_LOCAL);
                                sprintf(line, "Overwrite %s", local_name);
-                               uiItemEnumO(layout, line, 0, opname, "method", PF_WRITE_LOCAL);
+                               uiItemEnumO(layout, opname, line, 0, "method", PF_WRITE_LOCAL);
                                break;
                }
        }
@@ -1350,17 +1350,17 @@ void unpack_menu(bContext *C, char *opname, char *abs_name, char *folder, Packed
        switch(checkPackedFile(abs_name, pf)) {
                case PF_NOFILE:
                        sprintf(line, "Create %s", abs_name);
-                       uiItemEnumO(layout, line, 0, opname, "method", PF_WRITE_ORIGINAL);
+                       uiItemEnumO(layout, opname, line, 0, "method", PF_WRITE_ORIGINAL);
                        break;
                case PF_EQUAL:
                        sprintf(line, "Use %s (identical)", abs_name);
-                       uiItemEnumO(layout, line, 0, opname, "method", PF_USE_ORIGINAL);
+                       uiItemEnumO(layout, opname, line, 0, "method", PF_USE_ORIGINAL);
                        break;
                case PF_DIFFERS:
                        sprintf(line, "Use %s (differs)", local_name);
-                       uiItemEnumO(layout, line, 0, opname, "method", PF_USE_ORIGINAL);
+                       uiItemEnumO(layout, opname, line, 0, "method", PF_USE_ORIGINAL);
                        sprintf(line, "Overwrite %s", local_name);
-                       uiItemEnumO(layout, line, 0, opname, "method", PF_WRITE_ORIGINAL);
+                       uiItemEnumO(layout, opname, line, 0, "method", PF_WRITE_ORIGINAL);
                        break;
        }
 
index 4fd62ea20d044f205ef89701aaeb3cd2c6c7d780..5eac0a624a90c82fb86f48b8d293621e4c70868b 100644 (file)
@@ -1566,7 +1566,7 @@ static int nla_fmodifier_add_invoke (bContext *C, wmOperator *op, wmEvent *event
                        continue;
                
                /* add entry to add this type of modifier */
-               uiItemEnumO(layout, fmi->name, 0, "NLA_OT_fmodifier_add", "type", i);
+               uiItemEnumO(layout, "NLA_OT_fmodifier_add", fmi->name, 0, "type", i);
        }
        uiItemS(layout);
        
index 04b9d86f8cc7bc7a55ff7e4a3dfe6d171949eeb3..75328bfdc7abcddf852649b96e9a644a6d7ebead 100644 (file)
@@ -512,7 +512,7 @@ static void node_composit_buts_renderlayers(uiLayout *layout, bContext *C, Point
        WM_operator_properties_create(&op_ptr, "RENDER_OT_render");
        RNA_string_set(&op_ptr, "layer", layer_name);
        RNA_string_set(&op_ptr, "scene", scene_name);
-       uiItemFullO(row, "", ICON_RENDER_STILL, "RENDER_OT_render", op_ptr.data, WM_OP_INVOKE_DEFAULT, 0);
+       uiItemFullO(row, "RENDER_OT_render", "", ICON_RENDER_STILL, op_ptr.data, WM_OP_INVOKE_DEFAULT, 0);
 
 }
 
index 04f9dd8ac3b83755c3ea8838e3703f9836c2802b..3b1c882ff2fa41bcf8bee8c80451db0bb5aec351 100644 (file)
@@ -203,10 +203,10 @@ void TEXT_OT_properties(wmOperatorType *ot)
        uiPopupMenu *pup;
 
        pup= uiPupMenuBegin(C, "Text", 0);
-       uiItemEnumO(layout, "Top of File", 0, "TEXT_OT_move", "type", FILE_TOP);
-       uiItemEnumO(layout, "Bottom of File", 0, "TEXT_OT_move", "type", FILE_BOTTOM);
-       uiItemEnumO(layout, "Page Up", 0, "TEXT_OT_move", "type", PREV_PAGE);
-       uiItemEnumO(layout,  "Page Down", 0, "TEXT_OT_move", "type", NEXT_PAGE);
+       uiItemEnumO(layout, "TEXT_OT_move", "Top of File", 0, "type", FILE_TOP);
+       uiItemEnumO(layout, "TEXT_OT_move", "Bottom of File", 0, "type", FILE_BOTTOM);
+       uiItemEnumO(layout, "TEXT_OT_move", "Page Up", 0, "type", PREV_PAGE);
+       uiItemEnumO(layout, "TEXT_OT_move", "Page Down", 0, "type", NEXT_PAGE);
        uiPupMenuEnd(C, pup);
 }
 #endif
index 4554b6eaabe44cefea5cab1380d1a86f4144f61d..0f3b54a7b4bf3b3ba83ee27cdf67562146017d0f 100644 (file)
@@ -2608,25 +2608,25 @@ static int resolve_conflict_invoke(bContext *C, wmOperator *op, wmEvent *event)
                                /* modified locally and externally, ahhh. offer more possibilites. */
                                pup= uiPupMenuBegin(C, "File Modified Outside and Inside Blender", 0);
                                layout= uiPupMenuLayout(pup);
-                               uiItemEnumO(layout, "Reload from disk (ignore local changes)", 0, op->type->idname, "resolution", RESOLVE_RELOAD);
-                               uiItemEnumO(layout, "Save to disk (ignore outside changes)", 0, op->type->idname, "resolution", RESOLVE_SAVE);
-                               uiItemEnumO(layout, "Make text internal (separate copy)", 0, op->type->idname, "resolution", RESOLVE_MAKE_INTERNAL);
+                               uiItemEnumO(layout, op->type->idname, "Reload from disk (ignore local changes)", 0, "resolution", RESOLVE_RELOAD);
+                               uiItemEnumO(layout, op->type->idname, "Save to disk (ignore outside changes)", 0, "resolution", RESOLVE_SAVE);
+                               uiItemEnumO(layout, op->type->idname, "Make text internal (separate copy)", 0, "resolution", RESOLVE_MAKE_INTERNAL);
                                uiPupMenuEnd(C, pup);
                        }
                        else {
                                pup= uiPupMenuBegin(C, "File Modified Outside Blender", 0);
                                layout= uiPupMenuLayout(pup);
-                               uiItemEnumO(layout, "Reload from disk", 0, op->type->idname, "resolution", RESOLVE_RELOAD);
-                               uiItemEnumO(layout, "Make text internal (separate copy)", 0, op->type->idname, "resolution", RESOLVE_MAKE_INTERNAL);
-                               uiItemEnumO(layout, "Ignore", 0, op->type->idname, "resolution", RESOLVE_IGNORE);
+                               uiItemEnumO(layout, op->type->idname, "Reload from disk", 0, "resolution", RESOLVE_RELOAD);
+                               uiItemEnumO(layout, op->type->idname, "Make text internal (separate copy)", 0, "resolution", RESOLVE_MAKE_INTERNAL);
+                               uiItemEnumO(layout, op->type->idname, "Ignore", 0, "resolution", RESOLVE_IGNORE);
                                uiPupMenuEnd(C, pup);
                        }
                        break;
                case 2:
                        pup= uiPupMenuBegin(C, "File Deleted Outside Blender", 0);
                        layout= uiPupMenuLayout(pup);
-                       uiItemEnumO(layout, "Make text internal", 0, op->type->idname, "resolution", RESOLVE_MAKE_INTERNAL);
-                       uiItemEnumO(layout, "Recreate file", 0, op->type->idname, "resolution", RESOLVE_SAVE);
+                       uiItemEnumO(layout, op->type->idname, "Make text internal", 0, "resolution", RESOLVE_MAKE_INTERNAL);
+                       uiItemEnumO(layout, op->type->idname, "Recreate file", 0, "resolution", RESOLVE_SAVE);
                        uiPupMenuEnd(C, pup);
                        break;
        }
index 851ed793d3c403149849c9a6173230c2012cdf1f..d0c69c9a4cbb77619ed23a77227296cb7c2bf214 100644 (file)
@@ -926,7 +926,7 @@ static Base *mouse_select_menu(bContext *C, ViewContext *vc, unsigned int *buffe
                                WM_operator_properties_create(&ptr, "OBJECT_OT_select_name");
                                RNA_string_set(&ptr, "name", name);
                                RNA_boolean_set(&ptr, "extend", extend);
-                               uiItemFullO(column, name, uiIconFromID((ID *)ob), "OBJECT_OT_select_name", ptr.data, WM_OP_EXEC_DEFAULT, 0);
+                               uiItemFullO(column, "OBJECT_OT_select_name", name, uiIconFromID((ID *)ob), ptr.data, WM_OP_EXEC_DEFAULT, 0);
                        }
 
                        node= node->next;
index c9aacf0e9580ec7c50c38e015373ee302b38d1c9..ac6d61fce18d1dca611d3219db31ad4873e74de8 100644 (file)
@@ -256,7 +256,7 @@ static void view3d_panel_tool_shelf(const bContext *C, Panel *pa)
                for(ct= st->toolshelf.first; ct; ct= ct->next) {
                        if(0==strncmp(context, ct->context, OP_MAX_TYPENAME)) {
                                col= uiLayoutColumn(pa->layout, 1);
-                               uiItemFullO(col, NULL, 0, ct->opname, NULL, WM_OP_INVOKE_REGION_WIN, 0);
+                               uiItemFullO(col, ct->opname, NULL, 0, NULL, WM_OP_INVOKE_REGION_WIN, 0);
                        }
                }
        }
index 6415f04a39f279cc1fc319528b076d30cedda8c5..0b814b38c5b5f17e05904232750f7460bd386911 100644 (file)
@@ -37,7 +37,7 @@
 
 #ifdef RNA_RUNTIME
 
-static void rna_uiItemR(uiLayout *layout, char *name, int icon, PointerRNA *ptr, char *propname, int expand, int slider, int toggle, int icon_only, int event, int full_event, int no_bg, int index)
+static void rna_uiItemR(uiLayout *layout, PointerRNA *ptr, char *propname, char *name, int icon, int expand, int slider, int toggle, int icon_only, int event, int full_event, int no_bg, int index)
 {
        PropertyRNA *prop= RNA_struct_find_property(ptr, propname);
        int flag= 0;
@@ -58,9 +58,9 @@ static void rna_uiItemR(uiLayout *layout, char *name, int icon, PointerRNA *ptr,
        uiItemFullR(layout, name, icon, ptr, prop, index, 0, flag);
 }
 
-static PointerRNA rna_uiItemO(uiLayout *layout, char *name, int icon, char *opname)
+static PointerRNA rna_uiItemO(uiLayout *layout, char *opname, char *name, int icon)
 {
-       return uiItemFullO(layout, name, icon, opname, NULL, uiLayoutGetOperatorContext(layout), UI_ITEM_O_RETURN_PROPS);
+       return uiItemFullO(layout, opname, name, icon, NULL, uiLayoutGetOperatorContext(layout), UI_ITEM_O_RETURN_PROPS);
 }
 
 #else
@@ -83,13 +83,17 @@ static void api_ui_item_common(FunctionRNA *func)
 
 }
 
-static void api_ui_item_op_common(FunctionRNA *func)
+static void api_ui_item_op(FunctionRNA *func)
 {
        PropertyRNA *parm;
+       parm= RNA_def_string(func, "operator", "", 0, "", "Identifier of the operator.");
+       RNA_def_property_flag(parm, PROP_REQUIRED);     
+}
 
+static void api_ui_item_op_common(FunctionRNA *func)
+{
+       api_ui_item_op(func);
        api_ui_item_common(func);
-       parm= RNA_def_string(func, "operator", "", 0, "", "Identifier of the operator.");
-       RNA_def_property_flag(parm, PROP_REQUIRED);
 }
 
 static void api_ui_item_rna_common(FunctionRNA *func)
@@ -150,8 +154,8 @@ void RNA_api_ui_layout(StructRNA *srna)
 
        /* items */
        func= RNA_def_function(srna, "prop", "rna_uiItemR");
-       api_ui_item_common(func);
        api_ui_item_rna_common(func);
+       api_ui_item_common(func);
        RNA_def_boolean(func, "expand", 0, "", "Expand button to show more detail.");
        RNA_def_boolean(func, "slider", 0, "", "Use slider widget for numeric values.");
        RNA_def_boolean(func, "toggle", 0, "", "Use toggle widget for boolean values.");
@@ -165,22 +169,22 @@ void RNA_api_ui_layout(StructRNA *srna)
        api_ui_item_rna_common(func);
 
        func= RNA_def_function(srna, "prop_menu_enum", "uiItemMenuEnumR");
-       api_ui_item_common(func);
        api_ui_item_rna_common(func);
+       api_ui_item_common(func);
 
        func= RNA_def_function(srna, "prop_enum", "uiItemEnumR_string");
-       api_ui_item_common(func);
        api_ui_item_rna_common(func);
        parm= RNA_def_string(func, "value", "", 0, "", "Enum property value.");
        RNA_def_property_flag(parm, PROP_REQUIRED);
+       api_ui_item_common(func);
 
        func= RNA_def_function(srna, "prop_object", "uiItemPointerR");
-       api_ui_item_common(func);
        api_ui_item_rna_common(func);
        parm= RNA_def_pointer(func, "search_data", "AnyType", "", "Data from which to take collection to search in.");
        RNA_def_property_flag(parm, PROP_REQUIRED|PROP_RNAPTR|PROP_NEVER_NULL);
        parm= RNA_def_string(func, "search_property", "", 0, "", "Identifier of search collection property.");
        RNA_def_property_flag(parm, PROP_REQUIRED);
+       api_ui_item_common(func);
 
        func= RNA_def_function(srna, "operator", "rna_uiItemO");
        api_ui_item_op_common(func);
@@ -202,9 +206,10 @@ void RNA_api_ui_layout(StructRNA *srna)
        RNA_def_property_flag(parm, PROP_REQUIRED);
 
        func= RNA_def_function(srna, "operator_menu_enum", "uiItemMenuEnumO");
-       api_ui_item_op_common(func);
+       api_ui_item_op(func); /* cant use api_ui_item_op_common because property must come right after */
        parm= RNA_def_string(func, "property", "", 0, "", "Identifier of property in operator.");
        RNA_def_property_flag(parm, PROP_REQUIRED);
+       api_ui_item_common(func);
 
 /*     func= RNA_def_function(srna, "operator_boolean", "uiItemBooleanO");
        api_ui_item_op_common(func);
@@ -239,8 +244,8 @@ void RNA_api_ui_layout(StructRNA *srna)
 
        func= RNA_def_function(srna, "menu", "uiItemM");
        RNA_def_function_flag(func, FUNC_USE_CONTEXT);
-       api_ui_item_common(func);
        parm= RNA_def_string(func, "menu", "", 0, "", "Identifier of the menu.");
+       api_ui_item_common(func);
        RNA_def_property_flag(parm, PROP_REQUIRED);
 
        func= RNA_def_function(srna, "separator", "uiItemS");
index 3f4f707a9bdb628bbf1234e889466b1b6b1a2166..4792d284ca74f851630ebad81696afd1568b4c49 100644 (file)
@@ -3004,7 +3004,7 @@ static PyObject * pyrna_func_call(PyObject *self, PyObject *args, PyObject *kw)
                parm_id= RNA_property_identifier(parm);
                item= NULL;
 
-               if ((i < pyargs_len) && (flag & PROP_REQUIRED)) {
+               if (i < pyargs_len) {
                        item= PyTuple_GET_ITEM(args, i);
                        i++;
 
@@ -3049,14 +3049,6 @@ static PyObject * pyrna_func_call(PyObject *self, PyObject *args, PyObject *kw)
        
        RNA_parameter_list_end(&iter);
 
-    /* TODO: arg passing is currently messed up with keyword and args,
-        * needs reworking however this should stop annoying problems
-     * where args are ignored (for now) */
-    if(i != pyargs_len) {
-               PyErr_Format(PyExc_TypeError, "%.200s.%.200s(): congratulations, you found a bug in blender. argument %d needs to be a keyword argument until its fixed", RNA_struct_identifier(self_ptr->type), RNA_function_identifier(self_func), i+1);
-               err= -1;
-       }
-
        /* Check if we gave args that dont exist in the function
         * printing the error is slow but it should only happen when developing.
         * the if below is quick, checking if it passed less keyword args then we gave.
index b48f28c075e3c06ec92d40e23a2634ee4a4dae45..d74f3a3d6e74e22caf2e290927ccd3d9d72cdf44 100644 (file)
@@ -759,7 +759,7 @@ int WM_operator_confirm_message(bContext *C, wmOperator *op, char *message)
 
        pup= uiPupMenuBegin(C, "OK?", ICON_QUESTION);
        layout= uiPupMenuLayout(pup);
-       uiItemFullO(layout, message, 0, op->type->idname, properties, WM_OP_EXEC_REGION_WIN, 0);
+       uiItemFullO(layout, op->type->idname, message, 0, properties, WM_OP_EXEC_REGION_WIN, 0);
        uiPupMenuEnd(C, pup);
        
        return OPERATOR_CANCELLED;
index 4f9218cc8875e77327ddc3d381b67b5915eabbdd..edc290c6abd005dc3569bdf140d4ed5ba8abb173 100644 (file)
@@ -238,25 +238,25 @@ void load_editMesh(struct Scene *scene, struct Object *ob){}
 
 void uiItemR(struct uiLayout *layout, char *name, int icon, struct PointerRNA *ptr, char *propname, int flag){}
 
-PointerRNA uiItemFullO(struct uiLayout *layout, char *name, int icon, char *idname, struct IDProperty *properties, int context, int flag){PointerRNA a; return a;}
+PointerRNA uiItemFullO(struct uiLayout *layout, char *idname, char *name, int icon, struct IDProperty *properties, int context, int flag){PointerRNA a; return a;}
 struct uiLayout *uiLayoutRow(struct uiLayout *layout, int align){return (struct uiLayout *) NULL;}
 struct uiLayout *uiLayoutColumn(struct uiLayout *layout, int align){return (struct uiLayout *) NULL;}
 struct uiLayout *uiLayoutColumnFlow(struct uiLayout *layout, int number, int align){return (struct uiLayout *) NULL;}
 struct uiLayout *uiLayoutBox(struct uiLayout *layout){return (struct uiLayout *) NULL;}
 struct uiLayout *uiLayoutSplit(struct uiLayout *layout, float percentage, int align){return (struct uiLayout *) NULL;}
 void uiItemsEnumR(struct uiLayout *layout, struct PointerRNA *ptr, char *propname){}
-void uiItemMenuEnumR(struct uiLayout *layout, char *name, int icon, struct PointerRNA *ptr, char *propname){}
-void uiItemEnumR_string(struct uiLayout *layout, char *name, int icon, struct PointerRNA *ptr, char *propname, char *value){}
-void uiItemPointerR(struct uiLayout *layout, char *name, int icon, struct PointerRNA *ptr, char *propname, struct PointerRNA *searchptr, char *searchpropname){}
+void uiItemMenuEnumR(struct uiLayout *layout, struct PointerRNA *ptr, char *propname, char *name, int icon){}
+void uiItemEnumR_string(struct uiLayout *layout, struct PointerRNA *ptr, char *propname, char *value, char *name, int icon){}
+void uiItemPointerR(struct uiLayout *layout, struct PointerRNA *ptr, char *propname, struct PointerRNA *searchptr, char *searchpropname, char *name, int icon){}
 void uiItemsEnumO(struct uiLayout *layout, char *opname, char *propname){}
 void uiItemEnumO_string(struct uiLayout *layout, char *name, int icon, char *opname, char *propname, char *value_str){}
-void uiItemMenuEnumO(struct uiLayout *layout, char *name, int icon, char *opname, char *propname){}
+void uiItemMenuEnumO(struct uiLayout *layout, char *opname, char *propname, char *name, int icon){}
 void uiItemBooleanO(struct uiLayout *layout, char *name, int icon, char *opname, char *propname, int value){}
 void uiItemIntO(struct uiLayout *layout, char *name, int icon, char *opname, char *propname, int value){}
 void uiItemFloatO(struct uiLayout *layout, char *name, int icon, char *opname, char *propname, float value){}
 void uiItemStringO(struct uiLayout *layout, char *name, int icon, char *opname, char *propname, char *value){}
 void uiItemL(struct uiLayout *layout, char *name, int icon){}
-void uiItemM(struct uiLayout *layout, struct bContext *C, char *name, int icon, char *menuname){}
+void uiItemM(struct uiLayout *layout, struct bContext *C, char *menuname, char *name, int icon){}
 void uiItemS(struct uiLayout *layout){}
 void uiItemFullR(struct uiLayout *layout, char *name, int icon, struct PointerRNA *ptr, struct PropertyRNA *prop, int index, int value, int flag){}
 void uiLayoutSetContextPointer(struct uiLayout *layout, char *name, struct PointerRNA *ptr){}