- added GCC warning -Wstrict-prototypes
[blender.git] / source / blender / editors / space_outliner / outliner.c
index aaeab9e78434ffab0e44820a5f78d037e759fd15..f9c5661b51d833827e771c34938d41c6caaa8eda 100644 (file)
 
 /* ************* XXX **************** */
 
 
 /* ************* XXX **************** */
 
-static void error(const char *dummy, ...) {}
+static void error(const char *UNUSED(arg), ...) {}
 
 /* ********************************** */
 
 
 /* ********************************** */
 
@@ -340,7 +340,7 @@ static int treesort_alpha(const void *v1, const void *v2)
        if(comp==1) return 1;
        else if(comp==2) return -1;
        else if(comp==3) {
        if(comp==1) return 1;
        else if(comp==2) return -1;
        else if(comp==3) {
-               int comp= strcmp(x1->name, x2->name);
+               comp= strcmp(x1->name, x2->name);
                
                if( comp>0 ) return 1;
                else if( comp<0) return -1;
                
                if( comp>0 ) return 1;
                else if( comp<0) return -1;
@@ -1556,7 +1556,7 @@ static void outliner_set_flag(SpaceOops *soops, ListBase *lb, short flag, short
 /* same check needed for both object operation and restrict column button func
  * return 0 when in edit mode (cannot restrict view or select)
  * otherwise return 1 */
 /* same check needed for both object operation and restrict column button func
  * return 0 when in edit mode (cannot restrict view or select)
  * otherwise return 1 */
-static int common_restrict_check(bContext *C, Scene *scene, Object *ob)
+static int common_restrict_check(bContext *C, Object *ob)
 {
        /* Don't allow hide an object in edit mode,
         * check the bug #22153 and #21609, #23977
 {
        /* Don't allow hide an object in edit mode,
         * check the bug #22153 and #21609, #23977
@@ -1575,13 +1575,13 @@ static int common_restrict_check(bContext *C, Scene *scene, Object *ob)
        return 1;
 }
 
        return 1;
 }
 
-void object_toggle_visibility_cb(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *tsep, TreeStoreElem *tselem)
+void object_toggle_visibility_cb(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *UNUSED(tsep), TreeStoreElem *tselem)
 {
        Base *base= (Base *)te->directdata;
        Object *ob = (Object *)tselem->id;
        
        /* add check for edit mode */
 {
        Base *base= (Base *)te->directdata;
        Object *ob = (Object *)tselem->id;
        
        /* add check for edit mode */
-       if(!common_restrict_check(C, scene, ob)) return;
+       if(!common_restrict_check(C, ob)) return;
        
        if(base || (base= object_in_scene(ob, scene))) {
                if((base->object->restrictflag ^= OB_RESTRICT_VIEW)) {
        
        if(base || (base= object_in_scene(ob, scene))) {
                if((base->object->restrictflag ^= OB_RESTRICT_VIEW)) {
@@ -1590,7 +1590,7 @@ void object_toggle_visibility_cb(bContext *C, Scene *scene, TreeElement *te, Tre
        }
 }
 
        }
 }
 
-static int outliner_toggle_visibility_exec(bContext *C, wmOperator *op)
+static int outliner_toggle_visibility_exec(bContext *C, wmOperator *UNUSED(op))
 {
        SpaceOops *soops= CTX_wm_space_outliner(C);
        Scene *scene= CTX_data_scene(C);
 {
        SpaceOops *soops= CTX_wm_space_outliner(C);
        Scene *scene= CTX_data_scene(C);
@@ -1620,7 +1620,7 @@ void OUTLINER_OT_visibility_toggle(wmOperatorType *ot)
 
 /* --- */
 
 
 /* --- */
 
-static void object_toggle_selectability_cb(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *tsep, TreeStoreElem *tselem)
+static void object_toggle_selectability_cb(bContext *UNUSED(C), Scene *scene, TreeElement *te, TreeStoreElem *UNUSED(tsep), TreeStoreElem *tselem)
 {
        Base *base= (Base *)te->directdata;
        
 {
        Base *base= (Base *)te->directdata;
        
@@ -1630,7 +1630,7 @@ static void object_toggle_selectability_cb(bContext *C, Scene *scene, TreeElemen
        }
 }
 
        }
 }
 
-static int outliner_toggle_selectability_exec(bContext *C, wmOperator *op)
+static int outliner_toggle_selectability_exec(bContext *C, wmOperator *UNUSED(op))
 {
        SpaceOops *soops= CTX_wm_space_outliner(C);
        Scene *scene= CTX_data_scene(C);
 {
        SpaceOops *soops= CTX_wm_space_outliner(C);
        Scene *scene= CTX_data_scene(C);
@@ -1658,7 +1658,7 @@ void OUTLINER_OT_selectability_toggle(wmOperatorType *ot)
        ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
 }
 
        ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
 }
 
-void object_toggle_renderability_cb(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *tsep, TreeStoreElem *tselem)
+void object_toggle_renderability_cb(bContext *UNUSED(C), Scene *scene, TreeElement *te, TreeStoreElem *UNUSED(tsep), TreeStoreElem *tselem)
 {
        Base *base= (Base *)te->directdata;
        
 {
        Base *base= (Base *)te->directdata;
        
@@ -1668,7 +1668,7 @@ void object_toggle_renderability_cb(bContext *C, Scene *scene, TreeElement *te,
        }
 }
 
        }
 }
 
-static int outliner_toggle_renderability_exec(bContext *C, wmOperator *op)
+static int outliner_toggle_renderability_exec(bContext *C, wmOperator *UNUSED(op))
 {
        SpaceOops *soops= CTX_wm_space_outliner(C);
        Scene *scene= CTX_data_scene(C);
 {
        SpaceOops *soops= CTX_wm_space_outliner(C);
        Scene *scene= CTX_data_scene(C);
@@ -1697,7 +1697,7 @@ void OUTLINER_OT_renderability_toggle(wmOperatorType *ot)
 
 /* --- */
 
 
 /* --- */
 
-static int outliner_toggle_expanded_exec(bContext *C, wmOperator *op)
+static int outliner_toggle_expanded_exec(bContext *C, wmOperator *UNUSED(op))
 {
        SpaceOops *soops= CTX_wm_space_outliner(C);
        ARegion *ar= CTX_wm_region(C);
 {
        SpaceOops *soops= CTX_wm_space_outliner(C);
        ARegion *ar= CTX_wm_region(C);
@@ -1728,7 +1728,7 @@ void OUTLINER_OT_expanded_toggle(wmOperatorType *ot)
 
 /* --- */
 
 
 /* --- */
 
-static int outliner_toggle_selected_exec(bContext *C, wmOperator *op)
+static int outliner_toggle_selected_exec(bContext *C, wmOperator *UNUSED(op))
 {
        SpaceOops *soops= CTX_wm_space_outliner(C);
        ARegion *ar= CTX_wm_region(C);
 {
        SpaceOops *soops= CTX_wm_space_outliner(C);
        ARegion *ar= CTX_wm_region(C);
@@ -1820,6 +1820,8 @@ void OUTLINER_OT_show_one_level(wmOperatorType *ot)
        RNA_def_boolean(ot->srna, "open", 1, "Open", "Expand all entries one level deep.");
 }
 
        RNA_def_boolean(ot->srna, "open", 1, "Open", "Expand all entries one level deep.");
 }
 
+/* This is not used anywhere at the moment */
+#if 0
 /* return 1 when levels were opened */
 static int outliner_open_back(SpaceOops *soops, TreeElement *te)
 {
 /* return 1 when levels were opened */
 static int outliner_open_back(SpaceOops *soops, TreeElement *te)
 {
@@ -1836,8 +1838,6 @@ static int outliner_open_back(SpaceOops *soops, TreeElement *te)
        return retval;
 }
 
        return retval;
 }
 
-/* This is not used anywhere at the moment */
-#if 0
 static void outliner_open_reveal(SpaceOops *soops, ListBase *lb, TreeElement *teFind, int *found)
 {
        TreeElement *te;
 static void outliner_open_reveal(SpaceOops *soops, ListBase *lb, TreeElement *teFind, int *found)
 {
        TreeElement *te;
@@ -1863,7 +1863,7 @@ static void outliner_open_reveal(SpaceOops *soops, ListBase *lb, TreeElement *te
 #endif
 
 // XXX just use View2D ops for this?
 #endif
 
 // XXX just use View2D ops for this?
-void outliner_page_up_down(Scene *scene, ARegion *ar, SpaceOops *soops, int up)
+void outliner_page_up_down(Scene *UNUSED(scene), ARegion *ar, SpaceOops *soops, int up)
 {
        int dy= ar->v2d.mask.ymax-ar->v2d.mask.ymin;
        
 {
        int dy= ar->v2d.mask.ymax-ar->v2d.mask.ymin;
        
@@ -1931,15 +1931,14 @@ static void tree_element_set_active_object(bContext *C, Scene *scene, SpaceOops
                        scene_deselect_all(scene);
                        ED_base_object_select(base, BA_SELECT);
                }
                        scene_deselect_all(scene);
                        ED_base_object_select(base, BA_SELECT);
                }
-               if(C)
+               if(C) {
                        ED_base_object_activate(C, base); /* adds notifier */
                        ED_base_object_activate(C, base); /* adds notifier */
+                       WM_event_add_notifier(C, NC_SCENE|ND_OB_SELECT, scene);
+               }
        }
        
        if(ob!=scene->obedit) 
                ED_object_exit_editmode(C, EM_FREEDATA|EM_FREEUNDO|EM_WAITCURSOR|EM_DO_UNDO);
        }
        
        if(ob!=scene->obedit) 
                ED_object_exit_editmode(C, EM_FREEDATA|EM_FREEUNDO|EM_WAITCURSOR|EM_DO_UNDO);
-       
-       WM_event_add_notifier(C, NC_SCENE|ND_OB_ACTIVE, scene);
-
 }
 
 static int tree_element_active_material(bContext *C, Scene *scene, SpaceOops *soops, TreeElement *te, int set)
 }
 
 static int tree_element_active_material(bContext *C, Scene *scene, SpaceOops *soops, TreeElement *te, int set)
@@ -2050,12 +2049,14 @@ static int tree_element_active_texture(bContext *C, Scene *scene, SpaceOops *soo
                }
        }
        
                }
        }
        
-       WM_event_add_notifier(C, NC_TEXTURE, NULL);
+       if(set)
+               WM_event_add_notifier(C, NC_TEXTURE, NULL);
+
        return 0;
 }
 
 
        return 0;
 }
 
 
-static int tree_element_active_lamp(bContext *C, Scene *scene, SpaceOops *soops, TreeElement *te, int set)
+static int tree_element_active_lamp(bContext *UNUSED(C), Scene *scene, SpaceOops *soops, TreeElement *te, int set)
 {
        Object *ob;
        
 {
        Object *ob;
        
@@ -2203,15 +2204,15 @@ static int tree_element_active_bone(bContext *C, Scene *scene, TreeElement *te,
 
 
 /* ebones only draw in editmode armature */
 
 
 /* ebones only draw in editmode armature */
-static int tree_element_active_ebone(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *tselem, int set)
+static int tree_element_active_ebone(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *UNUSED(tselem), int set)
 {
        EditBone *ebone= te->directdata;
        
        if(set) {
                if(!(ebone->flag & BONE_HIDDEN_A)) {
                        bArmature *arm= scene->obedit->data;
 {
        EditBone *ebone= te->directdata;
        
        if(set) {
                if(!(ebone->flag & BONE_HIDDEN_A)) {
                        bArmature *arm= scene->obedit->data;
-                       if(set==2) ED_armature_deselectall(scene->obedit, 2);   // only clear active tag
-                       else ED_armature_deselectall(scene->obedit, 0); // deselect
+                       if(set==2) ED_armature_deselect_all(scene->obedit, 2);  // only clear active tag
+                       else ED_armature_deselect_all(scene->obedit, 0);        // deselect
 
                        ebone->flag |= BONE_SELECTED|BONE_ROOTSEL|BONE_TIPSEL;
                        arm->act_edbone= ebone;
 
                        ebone->flag |= BONE_SELECTED|BONE_ROOTSEL|BONE_TIPSEL;
                        arm->act_edbone= ebone;
@@ -2228,7 +2229,7 @@ static int tree_element_active_ebone(bContext *C, Scene *scene, TreeElement *te,
        return 0;
 }
 
        return 0;
 }
 
-static int tree_element_active_modifier(bContext *C, TreeElement *te, TreeStoreElem *tselem, int set)
+static int tree_element_active_modifier(bContext *C, TreeElement *UNUSED(te), TreeStoreElem *tselem, int set)
 {
        if(set) {
                Object *ob= (Object *)tselem->id;
 {
        if(set) {
                Object *ob= (Object *)tselem->id;
@@ -2241,7 +2242,7 @@ static int tree_element_active_modifier(bContext *C, TreeElement *te, TreeStoreE
        return 0;
 }
 
        return 0;
 }
 
-static int tree_element_active_psys(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *tselem, int set)
+static int tree_element_active_psys(bContext *C, Scene *UNUSED(scene), TreeElement *UNUSED(te), TreeStoreElem *tselem, int set)
 {
        if(set) {
                Object *ob= (Object *)tselem->id;
 {
        if(set) {
                Object *ob= (Object *)tselem->id;
@@ -2254,7 +2255,7 @@ static int tree_element_active_psys(bContext *C, Scene *scene, TreeElement *te,
        return 0;
 }
 
        return 0;
 }
 
-static int tree_element_active_constraint(bContext *C, TreeElement *te, TreeStoreElem *tselem, int set)
+static int tree_element_active_constraint(bContext *C, TreeElement *UNUSED(te), TreeStoreElem *tselem, int set)
 {
        if(set) {
                Object *ob= (Object *)tselem->id;
 {
        if(set) {
                Object *ob= (Object *)tselem->id;
@@ -2266,7 +2267,7 @@ static int tree_element_active_constraint(bContext *C, TreeElement *te, TreeStor
        return 0;
 }
 
        return 0;
 }
 
-static int tree_element_active_text(bContext *C, Scene *scene, SpaceOops *soops, TreeElement *te, int set)
+static int tree_element_active_text(bContext *UNUSED(C), Scene *UNUSED(scene), SpaceOops *UNUSED(soops), TreeElement *UNUSED(te), int UNUSED(set))
 {
        // XXX removed
        return 0;
 {
        // XXX removed
        return 0;
@@ -2291,7 +2292,7 @@ static int tree_element_active(bContext *C, Scene *scene, SpaceOops *soops, Tree
        return 0;
 }
 
        return 0;
 }
 
-static int tree_element_active_pose(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *tselem, int set)
+static int tree_element_active_pose(bContext *C, Scene *scene, TreeElement *UNUSED(te), TreeStoreElem *tselem, int set)
 {
        Object *ob= (Object *)tselem->id;
        Base *base= object_in_scene(ob, scene);
 {
        Object *ob= (Object *)tselem->id;
        Base *base= object_in_scene(ob, scene);
@@ -2311,7 +2312,7 @@ static int tree_element_active_pose(bContext *C, Scene *scene, TreeElement *te,
        return 0;
 }
 
        return 0;
 }
 
-static int tree_element_active_sequence(bContext *C, TreeElement *te, TreeStoreElem *tselem, int set)
+static int tree_element_active_sequence(TreeElement *te, TreeStoreElem *UNUSED(tselem), int set)
 {
        Sequence *seq= (Sequence*) te->directdata;
 
 {
        Sequence *seq= (Sequence*) te->directdata;
 
@@ -2325,7 +2326,7 @@ static int tree_element_active_sequence(bContext *C, TreeElement *te, TreeStoreE
        return(0);
 }
 
        return(0);
 }
 
-static int tree_element_active_sequence_dup(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *tselem, int set)
+static int tree_element_active_sequence_dup(Scene *scene, TreeElement *te, TreeStoreElem *UNUSED(tselem), int set)
 {
        Sequence *seq, *p;
        Editing *ed= seq_give_editing(scene, FALSE);
 {
        Sequence *seq, *p;
        Editing *ed= seq_give_editing(scene, FALSE);
@@ -2352,7 +2353,7 @@ static int tree_element_active_sequence_dup(bContext *C, Scene *scene, TreeEleme
        return(0);
 }
 
        return(0);
 }
 
-static int tree_element_active_keymap_item(bContext *C, TreeElement *te, TreeStoreElem *tselem, int set)
+static int tree_element_active_keymap_item(bContext *UNUSED(C), TreeElement *te, TreeStoreElem *UNUSED(tselem), int set)
 {
        wmKeyMapItem *kmi= te->directdata;
        
 {
        wmKeyMapItem *kmi= te->directdata;
        
@@ -2397,9 +2398,9 @@ static int tree_element_type_active(bContext *C, Scene *scene, SpaceOops *soops,
                case TSE_POSEGRP:
                        return tree_element_active_posegroup(C, scene, te, tselem, set);
                case TSE_SEQUENCE:
                case TSE_POSEGRP:
                        return tree_element_active_posegroup(C, scene, te, tselem, set);
                case TSE_SEQUENCE:
-                       return tree_element_active_sequence(C, te, tselem, set);
+                       return tree_element_active_sequence(te, tselem, set);
                case TSE_SEQUENCE_DUP:
                case TSE_SEQUENCE_DUP:
-                       return tree_element_active_sequence_dup(C, scene, te, tselem, set);
+                       return tree_element_active_sequence_dup(scene, te, tselem, set);
                case TSE_KEYMAP_ITEM:
                        return tree_element_active_keymap_item(C, te, tselem, set);
                        
                case TSE_KEYMAP_ITEM:
                        return tree_element_active_keymap_item(C, te, tselem, set);
                        
@@ -2659,7 +2660,7 @@ static int do_outliner_item_rename(bContext *C, ARegion *ar, SpaceOops *soops, T
        return 0;
 }
 
        return 0;
 }
 
-static int outliner_item_rename(bContext *C, wmOperator *op, wmEvent *event)
+static int outliner_item_rename(bContext *C, wmOperator *UNUSED(op), wmEvent *event)
 {
        ARegion *ar= CTX_wm_region(C);
        SpaceOops *soops= CTX_wm_space_outliner(C);
 {
        ARegion *ar= CTX_wm_region(C);
        SpaceOops *soops= CTX_wm_space_outliner(C);
@@ -2686,39 +2687,6 @@ void OUTLINER_OT_item_rename(wmOperatorType *ot)
        ot->poll= ED_operator_outliner_active;
 }
 
        ot->poll= ED_operator_outliner_active;
 }
 
-
-
-/* recursive helper for function below */
-static void outliner_set_coordinates_element(SpaceOops *soops, TreeElement *te, int startx, int *starty)
-{
-       TreeStoreElem *tselem= TREESTORE(te);
-       
-       /* store coord and continue, we need coordinates for elements outside view too */
-       te->xs= (float)startx;
-       te->ys= (float)(*starty);
-       *starty-= OL_H;
-       
-       if((tselem->flag & TSE_CLOSED)==0) {
-               TreeElement *ten;
-               for(ten= te->subtree.first; ten; ten= ten->next) {
-                       outliner_set_coordinates_element(soops, ten, startx+OL_X, starty);
-               }
-       }
-       
-}
-
-/* to retrieve coordinates with redrawing the entire tree */
-static void outliner_set_coordinates(ARegion *ar, SpaceOops *soops)
-{
-       TreeElement *te;
-       int starty= (int)(ar->v2d.tot.ymax)-OL_H;
-       int startx= 0;
-       
-       for(te= soops->tree.first; te; te= te->next) {
-               outliner_set_coordinates_element(soops, te, startx, &starty);
-       }
-}
-
 static TreeElement *outliner_find_id(SpaceOops *soops, ListBase *lb, ID *id)
 {
        TreeElement *te, *tes;
 static TreeElement *outliner_find_id(SpaceOops *soops, ListBase *lb, ID *id)
 {
        TreeElement *te, *tes;
@@ -2738,7 +2706,7 @@ static TreeElement *outliner_find_id(SpaceOops *soops, ListBase *lb, ID *id)
        return NULL;
 }
 
        return NULL;
 }
 
-static int outliner_show_active_exec(bContext *C, wmOperator *op)
+static int outliner_show_active_exec(bContext *C, wmOperator *UNUSED(op))
 {
        SpaceOops *so= CTX_wm_space_outliner(C);
        Scene *scene= CTX_data_scene(C);
 {
        SpaceOops *so= CTX_wm_space_outliner(C);
        Scene *scene= CTX_data_scene(C);
@@ -2788,6 +2756,66 @@ void OUTLINER_OT_show_active(wmOperatorType *ot)
        ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
 }
 
        ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
 }
 
+/* tse is not in the treestore, we use its contents to find a match */
+static TreeElement *outliner_find_tse(SpaceOops *soops, TreeStoreElem *tse)
+{
+       TreeStore *ts= soops->treestore;
+       TreeStoreElem *tselem;
+       int a;
+       
+       if(tse->id==NULL) return NULL;
+       
+       /* check if 'tse' is in treestore */
+       tselem= ts->data;
+       for(a=0; a<ts->usedelem; a++, tselem++) {
+               if((tse->type==0 && tselem->type==0) || (tselem->type==tse->type && tselem->nr==tse->nr)) {
+                       if(tselem->id==tse->id) {
+                               break;
+                       }
+               }
+       }
+       if(tselem) 
+               return outliner_find_tree_element(&soops->tree, a);
+       
+       return NULL;
+}
+
+
+/* Called to find an item based on name.
+ */
+#if 0
+
+/* recursive helper for function below */
+static void outliner_set_coordinates_element(SpaceOops *soops, TreeElement *te, int startx, int *starty)
+{
+       TreeStoreElem *tselem= TREESTORE(te);
+       
+       /* store coord and continue, we need coordinates for elements outside view too */
+       te->xs= (float)startx;
+       te->ys= (float)(*starty);
+       *starty-= OL_H;
+       
+       if((tselem->flag & TSE_CLOSED)==0) {
+               TreeElement *ten;
+               for(ten= te->subtree.first; ten; ten= ten->next) {
+                       outliner_set_coordinates_element(soops, ten, startx+OL_X, starty);
+               }
+       }
+       
+}
+
+/* to retrieve coordinates with redrawing the entire tree */
+static void outliner_set_coordinates(ARegion *ar, SpaceOops *soops)
+{
+       TreeElement *te;
+       int starty= (int)(ar->v2d.tot.ymax)-OL_H;
+       int startx= 0;
+       
+       for(te= soops->tree.first; te; te= te->next) {
+               outliner_set_coordinates_element(soops, te, startx, &starty);
+       }
+}
+
 /* find next element that has this name */
 static TreeElement *outliner_find_named(SpaceOops *soops, ListBase *lb, char *name, int flags, TreeElement *prev, int *prevFound)
 {
 /* find next element that has this name */
 static TreeElement *outliner_find_named(SpaceOops *soops, ListBase *lb, char *name, int flags, TreeElement *prev, int *prevFound)
 {
@@ -2817,34 +2845,7 @@ static TreeElement *outliner_find_named(SpaceOops *soops, ListBase *lb, char *na
        return NULL;
 }
 
        return NULL;
 }
 
-/* tse is not in the treestore, we use its contents to find a match */
-static TreeElement *outliner_find_tse(SpaceOops *soops, TreeStoreElem *tse)
-{
-       TreeStore *ts= soops->treestore;
-       TreeStoreElem *tselem;
-       int a;
-       
-       if(tse->id==NULL) return NULL;
-       
-       /* check if 'tse' is in treestore */
-       tselem= ts->data;
-       for(a=0; a<ts->usedelem; a++, tselem++) {
-               if((tse->type==0 && tselem->type==0) || (tselem->type==tse->type && tselem->nr==tse->nr)) {
-                       if(tselem->id==tse->id) {
-                               break;
-                       }
-               }
-       }
-       if(tselem) 
-               return outliner_find_tree_element(&soops->tree, a);
-       
-       return NULL;
-}
-
-
-/* Called to find an item based on name.
- */
-void outliner_find_panel(Scene *scene, ARegion *ar, SpaceOops *soops, int again, int flags) 
+static void outliner_find_panel(Scene *UNUSED(scene), ARegion *ar, SpaceOops *soops, int again, int flags) 
 {
        TreeElement *te= NULL;
        TreeElement *last_find;
 {
        TreeElement *te= NULL;
        TreeElement *last_find;
@@ -2916,6 +2917,7 @@ void outliner_find_panel(Scene *scene, ARegion *ar, SpaceOops *soops, int again,
                error("Not found: %s", name);
        }
 }
                error("Not found: %s", name);
        }
 }
+#endif
 
 /* helper function for tree_element_shwo_hierarchy() - recursively checks whether subtrees have any objects*/
 static int subtree_has_objects(SpaceOops *soops, ListBase *lb)
 
 /* helper function for tree_element_shwo_hierarchy() - recursively checks whether subtrees have any objects*/
 static int subtree_has_objects(SpaceOops *soops, ListBase *lb)
@@ -2958,7 +2960,7 @@ static void tree_element_show_hierarchy(Scene *scene, SpaceOops *soops, ListBase
 }
 
 /* show entire object level hierarchy */
 }
 
 /* show entire object level hierarchy */
-static int outliner_show_hierarchy_exec(bContext *C, wmOperator *op)
+static int outliner_show_hierarchy_exec(bContext *C, wmOperator *UNUSED(op))
 {
        SpaceOops *soops= CTX_wm_space_outliner(C);
        ARegion *ar= CTX_wm_region(C);
 {
        SpaceOops *soops= CTX_wm_space_outliner(C);
        ARegion *ar= CTX_wm_region(C);
@@ -3076,7 +3078,7 @@ static void set_operation_types(SpaceOops *soops, ListBase *lb,
        }
 }
 
        }
 }
 
-static void unlink_material_cb(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *tsep, TreeStoreElem *tselem)
+static void unlink_material_cb(bContext *UNUSED(C), Scene *UNUSED(scene), TreeElement *te, TreeStoreElem *tsep, TreeStoreElem *UNUSED(tselem))
 {
        Material **matar=NULL;
        int a, totcol=0;
 {
        Material **matar=NULL;
        int a, totcol=0;
@@ -3110,7 +3112,7 @@ static void unlink_material_cb(bContext *C, Scene *scene, TreeElement *te, TreeS
        }
 }
 
        }
 }
 
-static void unlink_texture_cb(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *tsep, TreeStoreElem *tselem)
+static void unlink_texture_cb(bContext *UNUSED(C), Scene *UNUSED(scene), TreeElement *te, TreeStoreElem *tsep, TreeStoreElem *UNUSED(tselem))
 {
        MTex **mtex= NULL;
        int a;
 {
        MTex **mtex= NULL;
        int a;
@@ -3139,7 +3141,7 @@ static void unlink_texture_cb(bContext *C, Scene *scene, TreeElement *te, TreeSt
        }
 }
 
        }
 }
 
-static void unlink_group_cb(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *tsep, TreeStoreElem *tselem)
+static void unlink_group_cb(bContext *UNUSED(C), Scene *UNUSED(scene), TreeElement *UNUSED(te), TreeStoreElem *tsep, TreeStoreElem *tselem)
 {
        Group *group= (Group *)tselem->id;
        
 {
        Group *group= (Group *)tselem->id;
        
@@ -3176,7 +3178,7 @@ static void outliner_do_libdata_operation(bContext *C, Scene *scene, SpaceOops *
 
 /* */
 
 
 /* */
 
-static void object_select_cb(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *tsep, TreeStoreElem *tselem)
+static void object_select_cb(bContext *UNUSED(C), Scene *scene, TreeElement *te, TreeStoreElem *UNUSED(tsep), TreeStoreElem *tselem)
 {
        Base *base= (Base *)te->directdata;
        
 {
        Base *base= (Base *)te->directdata;
        
@@ -3187,7 +3189,7 @@ static void object_select_cb(bContext *C, Scene *scene, TreeElement *te, TreeSto
        }
 }
 
        }
 }
 
-static void object_deselect_cb(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *tsep, TreeStoreElem *tselem)
+static void object_deselect_cb(bContext *UNUSED(C), Scene *scene, TreeElement *te, TreeStoreElem *UNUSED(tsep), TreeStoreElem *tselem)
 {
        Base *base= (Base *)te->directdata;
        
 {
        Base *base= (Base *)te->directdata;
        
@@ -3198,7 +3200,7 @@ static void object_deselect_cb(bContext *C, Scene *scene, TreeElement *te, TreeS
        }
 }
 
        }
 }
 
-static void object_delete_cb(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *tsep, TreeStoreElem *tselem)
+static void object_delete_cb(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *UNUSED(tsep), TreeStoreElem *tselem)
 {
        Base *base= (Base *)te->directdata;
        
 {
        Base *base= (Base *)te->directdata;
        
@@ -3216,7 +3218,7 @@ static void object_delete_cb(bContext *C, Scene *scene, TreeElement *te, TreeSto
 
 }
 
 
 }
 
-static void id_local_cb(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *tsep, TreeStoreElem *tselem)
+static void id_local_cb(bContext *UNUSED(C), Scene *UNUSED(scene), TreeElement *UNUSED(te), TreeStoreElem *UNUSED(tsep), TreeStoreElem *tselem)
 {
        if(tselem->id->lib && (tselem->id->flag & LIB_EXTERN)) {
                tselem->id->lib= NULL;
 {
        if(tselem->id->lib && (tselem->id->flag & LIB_EXTERN)) {
                tselem->id->lib= NULL;
@@ -3225,7 +3227,7 @@ static void id_local_cb(bContext *C, Scene *scene, TreeElement *te, TreeStoreEle
        }
 }
 
        }
 }
 
-static void group_linkobs2scene_cb(bContext *C, Scene *scene, TreeElement *te, TreeStoreElem *tsep, TreeStoreElem *tselem)
+static void group_linkobs2scene_cb(bContext *UNUSED(C), Scene *scene, TreeElement *UNUSED(te), TreeStoreElem *UNUSED(tsep), TreeStoreElem *tselem)
 {
        Group *group= (Group *)tselem->id;
        GroupObject *gob;
 {
        Group *group= (Group *)tselem->id;
        GroupObject *gob;
@@ -3278,7 +3280,7 @@ static void outliner_do_object_operation(bContext *C, Scene *scene_act, SpaceOop
 
 /* ******************************************** */
 
 
 /* ******************************************** */
 
-static void pchan_cb(int event, TreeElement *te, TreeStoreElem *tselem)
+static void pchan_cb(int event, TreeElement *te, TreeStoreElem *UNUSED(tselem))
 {
        bPoseChannel *pchan= (bPoseChannel *)te->directdata;
        
 {
        bPoseChannel *pchan= (bPoseChannel *)te->directdata;
        
@@ -3294,7 +3296,7 @@ static void pchan_cb(int event, TreeElement *te, TreeStoreElem *tselem)
                pchan->bone->flag &= ~BONE_HIDDEN_P;
 }
 
                pchan->bone->flag &= ~BONE_HIDDEN_P;
 }
 
-static void bone_cb(int event, TreeElement *te, TreeStoreElem *tselem)
+static void bone_cb(int event, TreeElement *te, TreeStoreElem *UNUSED(tselem))
 {
        Bone *bone= (Bone *)te->directdata;
        
 {
        Bone *bone= (Bone *)te->directdata;
        
@@ -3310,7 +3312,7 @@ static void bone_cb(int event, TreeElement *te, TreeStoreElem *tselem)
                bone->flag &= ~BONE_HIDDEN_P;
 }
 
                bone->flag &= ~BONE_HIDDEN_P;
 }
 
-static void ebone_cb(int event, TreeElement *te, TreeStoreElem *tselem)
+static void ebone_cb(int event, TreeElement *te, TreeStoreElem *UNUSED(tselem))
 {
        EditBone *ebone= (EditBone *)te->directdata;
        
 {
        EditBone *ebone= (EditBone *)te->directdata;
        
@@ -3326,7 +3328,7 @@ static void ebone_cb(int event, TreeElement *te, TreeStoreElem *tselem)
                ebone->flag &= ~BONE_HIDDEN_A;
 }
 
                ebone->flag &= ~BONE_HIDDEN_A;
 }
 
-static void sequence_cb(int event, TreeElement *te, TreeStoreElem *tselem)
+static void sequence_cb(int event, TreeElement *UNUSED(te), TreeStoreElem *UNUSED(tselem))
 {
 //     Sequence *seq= (Sequence*) te->directdata;
        if(event==1) {
 {
 //     Sequence *seq= (Sequence*) te->directdata;
        if(event==1) {
@@ -3353,7 +3355,7 @@ static void outliner_do_data_operation(SpaceOops *soops, int type, int event, Li
        }
 }
 
        }
 }
 
-void outliner_del(bContext *C, Scene *scene, ARegion *ar, SpaceOops *soops)
+void outliner_del(bContext *C, Scene *scene, ARegion *UNUSED(ar), SpaceOops *soops)
 {
        
        if(soops->outlinevis==SO_SEQUENCE)
 {
        
        if(soops->outlinevis==SO_SEQUENCE)
@@ -3713,7 +3715,7 @@ static int do_outliner_operation_event(bContext *C, Scene *scene, ARegion *ar, S
 }
 
 
 }
 
 
-static int outliner_operation(bContext *C, wmOperator *op, wmEvent *event)
+static int outliner_operation(bContext *C, wmOperator *UNUSED(op), wmEvent *event)
 {
        Scene *scene= CTX_data_scene(C);
        ARegion *ar= CTX_wm_region(C);
 {
        Scene *scene= CTX_data_scene(C);
        ARegion *ar= CTX_wm_region(C);
@@ -3763,7 +3765,7 @@ static int ed_operator_outliner_datablocks_active(bContext *C)
  * this function does not do that yet 
  */
 static void tree_element_to_path(SpaceOops *soops, TreeElement *te, TreeStoreElem *tselem, 
  * this function does not do that yet 
  */
 static void tree_element_to_path(SpaceOops *soops, TreeElement *te, TreeStoreElem *tselem, 
-                                                       ID **id, char **path, int *array_index, short *flag, short *groupmode)
+                                                       ID **id, char **path, int *array_index, short *flag, short *UNUSED(groupmode))
 {
        ListBase hierarchy = {NULL, NULL};
        LinkData *ld;
 {
        ListBase hierarchy = {NULL, NULL};
        LinkData *ld;
@@ -3979,7 +3981,7 @@ static void do_outliner_drivers_editop(SpaceOops *soops, ListBase *tree, short m
 
 /* Add Operator ---------------------------------- */
 
 
 /* Add Operator ---------------------------------- */
 
-static int outliner_drivers_addsel_exec(bContext *C, wmOperator *op)
+static int outliner_drivers_addsel_exec(bContext *C, wmOperator *UNUSED(op))
 {
        SpaceOops *soutliner= CTX_wm_space_outliner(C);
        
 {
        SpaceOops *soutliner= CTX_wm_space_outliner(C);
        
@@ -4014,7 +4016,7 @@ void OUTLINER_OT_drivers_add_selected(wmOperatorType *ot)
 
 /* Remove Operator ---------------------------------- */
 
 
 /* Remove Operator ---------------------------------- */
 
-static int outliner_drivers_deletesel_exec(bContext *C, wmOperator *op)
+static int outliner_drivers_deletesel_exec(bContext *C, wmOperator *UNUSED(op))
 {
        SpaceOops *soutliner= CTX_wm_space_outliner(C);
        
 {
        SpaceOops *soutliner= CTX_wm_space_outliner(C);
        
@@ -4189,7 +4191,7 @@ void OUTLINER_OT_keyingset_add_selected(wmOperatorType *ot)
 
 /* Remove Operator ---------------------------------- */
 
 
 /* Remove Operator ---------------------------------- */
 
-static int outliner_keyingset_removeitems_exec(bContext *C, wmOperator *op)
+static int outliner_keyingset_removeitems_exec(bContext *C, wmOperator *UNUSED(op))
 {
        SpaceOops *soutliner= CTX_wm_space_outliner(C);
        Scene *scene= CTX_data_scene(C);
 {
        SpaceOops *soutliner= CTX_wm_space_outliner(C);
        Scene *scene= CTX_data_scene(C);
@@ -4815,7 +4817,7 @@ static void outliner_draw_tree(bContext *C, uiBlock *block, Scene *scene, ARegio
 }
 
 
 }
 
 
-static void outliner_back(ARegion *ar, SpaceOops *soops)
+static void outliner_back(ARegion *ar)
 {
        int ystart;
        
 {
        int ystart;
        
@@ -4829,7 +4831,7 @@ static void outliner_back(ARegion *ar, SpaceOops *soops)
        }
 }
 
        }
 }
 
-static void outliner_draw_restrictcols(ARegion *ar, SpaceOops *soops)
+static void outliner_draw_restrictcols(ARegion *ar)
 {
        int ystart;
        
 {
        int ystart;
        
@@ -4872,7 +4874,7 @@ static void restrictbutton_view_cb(bContext *C, void *poin, void *poin2)
        Scene *scene = (Scene *)poin;
        Object *ob = (Object *)poin2;
 
        Scene *scene = (Scene *)poin;
        Object *ob = (Object *)poin2;
 
-       if(!common_restrict_check(C, scene, ob)) return;
+       if(!common_restrict_check(C, ob)) return;
        
        /* deselect objects that are invisible */
        if (ob->restrictflag & OB_RESTRICT_VIEW) {
        
        /* deselect objects that are invisible */
        if (ob->restrictflag & OB_RESTRICT_VIEW) {
@@ -4889,7 +4891,7 @@ static void restrictbutton_sel_cb(bContext *C, void *poin, void *poin2)
        Scene *scene = (Scene *)poin;
        Object *ob = (Object *)poin2;
        
        Scene *scene = (Scene *)poin;
        Object *ob = (Object *)poin2;
        
-       if(!common_restrict_check(C, scene, ob)) return;
+       if(!common_restrict_check(C, ob)) return;
        
        /* if select restriction has just been turned on */
        if (ob->restrictflag & OB_RESTRICT_SELECT) {
        
        /* if select restriction has just been turned on */
        if (ob->restrictflag & OB_RESTRICT_SELECT) {
@@ -4901,17 +4903,17 @@ static void restrictbutton_sel_cb(bContext *C, void *poin, void *poin2)
 
 }
 
 
 }
 
-static void restrictbutton_rend_cb(bContext *C, void *poin, void *poin2)
+static void restrictbutton_rend_cb(bContext *C, void *poin, void *UNUSED(poin2))
 {
        WM_event_add_notifier(C, NC_SCENE|ND_OB_RENDER, poin);
 }
 
 {
        WM_event_add_notifier(C, NC_SCENE|ND_OB_RENDER, poin);
 }
 
-static void restrictbutton_r_lay_cb(bContext *C, void *poin, void *poin2)
+static void restrictbutton_r_lay_cb(bContext *C, void *poin, void *UNUSED(poin2))
 {
        WM_event_add_notifier(C, NC_SCENE|ND_RENDER_OPTIONS, poin);
 }
 
 {
        WM_event_add_notifier(C, NC_SCENE|ND_RENDER_OPTIONS, poin);
 }
 
-static void restrictbutton_modifier_cb(bContext *C, void *poin, void *poin2)
+static void restrictbutton_modifier_cb(bContext *C, void *UNUSED(poin), void *poin2)
 {
        Object *ob = (Object *)poin2;
        
 {
        Object *ob = (Object *)poin2;
        
@@ -4920,7 +4922,7 @@ static void restrictbutton_modifier_cb(bContext *C, void *poin, void *poin2)
        WM_event_add_notifier(C, NC_OBJECT|ND_DRAW, ob);
 }
 
        WM_event_add_notifier(C, NC_OBJECT|ND_DRAW, ob);
 }
 
-static void restrictbutton_bone_cb(bContext *C, void *poin, void *poin2)
+static void restrictbutton_bone_cb(bContext *C, void *UNUSED(poin), void *poin2)
 {
        Bone *bone= (Bone *)poin2;
        if(bone && (bone->flag & BONE_HIDDEN_P))
 {
        Bone *bone= (Bone *)poin2;
        if(bone && (bone->flag & BONE_HIDDEN_P))
@@ -4928,7 +4930,7 @@ static void restrictbutton_bone_cb(bContext *C, void *poin, void *poin2)
        WM_event_add_notifier(C, NC_OBJECT|ND_POSE, NULL);
 }
 
        WM_event_add_notifier(C, NC_OBJECT|ND_POSE, NULL);
 }
 
-static void restrictbutton_ebone_cb(bContext *C, void *poin, void *poin2)
+static void restrictbutton_ebone_cb(bContext *C, void *UNUSED(poin), void *poin2)
 {
        EditBone *ebone= (EditBone *)poin2;
        if(ebone && (ebone->flag & BONE_HIDDEN_A))
 {
        EditBone *ebone= (EditBone *)poin2;
        if(ebone && (ebone->flag & BONE_HIDDEN_A))
@@ -4960,7 +4962,7 @@ static int group_select_flag(Group *gr)
        return 0;
 }
 
        return 0;
 }
 
-static void restrictbutton_gr_restrict_flag(bContext *C, void *poin, void *poin2, int flag)
+static void restrictbutton_gr_restrict_flag(void *poin, void *poin2, int flag)
 {      
        Scene *scene = (Scene *)poin;           
        GroupObject *gob;
 {      
        Scene *scene = (Scene *)poin;           
        GroupObject *gob;
@@ -4988,17 +4990,17 @@ static void restrictbutton_gr_restrict_flag(bContext *C, void *poin, void *poin2
 
 static void restrictbutton_gr_restrict_view(bContext *C, void *poin, void *poin2)
 {
 
 static void restrictbutton_gr_restrict_view(bContext *C, void *poin, void *poin2)
 {
-       restrictbutton_gr_restrict_flag(C, poin, poin2, OB_RESTRICT_VIEW);
+       restrictbutton_gr_restrict_flag(poin, poin2, OB_RESTRICT_VIEW);
        WM_event_add_notifier(C, NC_GROUP, NULL);
 }
 static void restrictbutton_gr_restrict_select(bContext *C, void *poin, void *poin2)
 {
        WM_event_add_notifier(C, NC_GROUP, NULL);
 }
 static void restrictbutton_gr_restrict_select(bContext *C, void *poin, void *poin2)
 {
-       restrictbutton_gr_restrict_flag(C, poin, poin2, OB_RESTRICT_SELECT);
+       restrictbutton_gr_restrict_flag(poin, poin2, OB_RESTRICT_SELECT);
        WM_event_add_notifier(C, NC_GROUP, NULL);
 }
 static void restrictbutton_gr_restrict_render(bContext *C, void *poin, void *poin2)
 {
        WM_event_add_notifier(C, NC_GROUP, NULL);
 }
 static void restrictbutton_gr_restrict_render(bContext *C, void *poin, void *poin2)
 {
-       restrictbutton_gr_restrict_flag(C, poin, poin2, OB_RESTRICT_RENDER);
+       restrictbutton_gr_restrict_flag(poin, poin2, OB_RESTRICT_RENDER);
        WM_event_add_notifier(C, NC_GROUP, NULL);
 }
 
        WM_event_add_notifier(C, NC_GROUP, NULL);
 }
 
@@ -5033,7 +5035,7 @@ static void namebutton_cb(bContext *C, void *tsep, char *oldname)
                        if (te->idcode == ID_LI) {
                                char expanded[FILE_MAXDIR + FILE_MAXFILE];
                                BLI_strncpy(expanded, ((Library *)tselem->id)->name, FILE_MAXDIR + FILE_MAXFILE);
                        if (te->idcode == ID_LI) {
                                char expanded[FILE_MAXDIR + FILE_MAXFILE];
                                BLI_strncpy(expanded, ((Library *)tselem->id)->name, FILE_MAXDIR + FILE_MAXFILE);
-                               BLI_path_abs(expanded, G.sce);
+                               BLI_path_abs(expanded, G.main->name);
                                if (!BLI_exists(expanded)) {
                                        error("This path does not exist, correct this before saving");
                                }
                                if (!BLI_exists(expanded)) {
                                        error("This path does not exist, correct this before saving");
                                }
@@ -5052,11 +5054,11 @@ static void namebutton_cb(bContext *C, void *tsep, char *oldname)
                                bArmature *arm= (bArmature *)tselem->id;
                                if(arm->edbo) {
                                        EditBone *ebone= te->directdata;
                                bArmature *arm= (bArmature *)tselem->id;
                                if(arm->edbo) {
                                        EditBone *ebone= te->directdata;
-                                       char newname[32];
+                                       char newname[sizeof(ebone->name)];
                                        
                                        /* restore bone name */
                                        
                                        /* restore bone name */
-                                       BLI_strncpy(newname, ebone->name, 32);
-                                       BLI_strncpy(ebone->name, oldname, 32);
+                                       BLI_strncpy(newname, ebone->name, sizeof(ebone->name));
+                                       BLI_strncpy(ebone->name, oldname, sizeof(ebone->name));
                                        ED_armature_bone_rename(obedit->data, oldname, newname);
                                        WM_event_add_notifier(C, NC_OBJECT|ND_POSE, OBACT);
                                }
                                        ED_armature_bone_rename(obedit->data, oldname, newname);
                                        WM_event_add_notifier(C, NC_OBJECT|ND_POSE, OBACT);
                                }
@@ -5067,15 +5069,15 @@ static void namebutton_cb(bContext *C, void *tsep, char *oldname)
                                {
                                        Bone *bone= te->directdata;
                                        Object *ob;
                                {
                                        Bone *bone= te->directdata;
                                        Object *ob;
-                                       char newname[32];
+                                       char newname[sizeof(bone->name)];
                                        
                                        // always make current object active
                                        tree_element_set_active_object(C, scene, soops, te, 1);
                                        ob= OBACT;
                                        
                                        /* restore bone name */
                                        
                                        // always make current object active
                                        tree_element_set_active_object(C, scene, soops, te, 1);
                                        ob= OBACT;
                                        
                                        /* restore bone name */
-                                       BLI_strncpy(newname, bone->name, 32);
-                                       BLI_strncpy(bone->name, oldname, 32);
+                                       BLI_strncpy(newname, bone->name, sizeof(bone->name));
+                                       BLI_strncpy(bone->name, oldname, sizeof(bone->name));
                                        ED_armature_bone_rename(ob->data, oldname, newname);
                                        WM_event_add_notifier(C, NC_OBJECT|ND_POSE, ob);
                                }
                                        ED_armature_bone_rename(ob->data, oldname, newname);
                                        WM_event_add_notifier(C, NC_OBJECT|ND_POSE, ob);
                                }
@@ -5084,15 +5086,15 @@ static void namebutton_cb(bContext *C, void *tsep, char *oldname)
                                {
                                        bPoseChannel *pchan= te->directdata;
                                        Object *ob;
                                {
                                        bPoseChannel *pchan= te->directdata;
                                        Object *ob;
-                                       char newname[32];
+                                       char newname[sizeof(pchan->name)];
                                        
                                        // always make current object active
                                        tree_element_set_active_object(C, scene, soops, te, 1);
                                        ob= OBACT;
                                        
                                        /* restore bone name */
                                        
                                        // always make current object active
                                        tree_element_set_active_object(C, scene, soops, te, 1);
                                        ob= OBACT;
                                        
                                        /* restore bone name */
-                                       BLI_strncpy(newname, pchan->name, 32);
-                                       BLI_strncpy(pchan->name, oldname, 32);
+                                       BLI_strncpy(newname, pchan->name, sizeof(pchan->name));
+                                       BLI_strncpy(pchan->name, oldname, sizeof(pchan->name));
                                        ED_armature_bone_rename(ob->data, oldname, newname);
                                        WM_event_add_notifier(C, NC_OBJECT|ND_POSE, ob);
                                }
                                        ED_armature_bone_rename(ob->data, oldname, newname);
                                        WM_event_add_notifier(C, NC_OBJECT|ND_POSE, ob);
                                }
@@ -5244,7 +5246,7 @@ static void outliner_draw_restrictbuts(uiBlock *block, Scene *scene, ARegion *ar
        }
 }
 
        }
 }
 
-static void outliner_draw_rnacols(ARegion *ar, SpaceOops *soops, int sizex)
+static void outliner_draw_rnacols(ARegion *ar, int sizex)
 {
        View2D *v2d= &ar->v2d;
 
 {
        View2D *v2d= &ar->v2d;
 
@@ -5296,7 +5298,7 @@ static void outliner_draw_rnabuts(uiBlock *block, Scene *scene, ARegion *ar, Spa
        }
 }
 
        }
 }
 
-static void operator_call_cb(struct bContext *C, void *arg_kmi, void *arg2)
+static void operator_call_cb(struct bContext *UNUSED(C), void *arg_kmi, void *arg2)
 {
        wmOperatorType *ot= arg2;
        wmKeyMapItem *kmi= arg_kmi;
 {
        wmOperatorType *ot= arg2;
        wmKeyMapItem *kmi= arg_kmi;
@@ -5305,7 +5307,7 @@ static void operator_call_cb(struct bContext *C, void *arg_kmi, void *arg2)
                BLI_strncpy(kmi->idname, ot->idname, OP_MAX_TYPENAME);
 }
 
                BLI_strncpy(kmi->idname, ot->idname, OP_MAX_TYPENAME);
 }
 
-static void operator_search_cb(const struct bContext *C, void *arg_kmi, char *str, uiSearchItems *items)
+static void operator_search_cb(const struct bContext *UNUSED(C), void *UNUSED(arg_kmi), const char *str, uiSearchItems *items)
 {
        wmOperatorType *ot = WM_operatortype_first();
        
 {
        wmOperatorType *ot = WM_operatortype_first();
        
@@ -5456,7 +5458,7 @@ static char *keymap_tweak_dir_menu(void)
 }
 
 
 }
 
 
-static void keymap_type_cb(bContext *C, void *kmi_v, void *unused_v)
+static void keymap_type_cb(bContext *C, void *kmi_v, void *UNUSED(arg_v))
 {
        wmKeyMapItem *kmi= kmi_v;
        short maptype= keymap_menu_type(kmi->type);
 {
        wmKeyMapItem *kmi= kmi_v;
        short maptype= keymap_menu_type(kmi->type);
@@ -5543,7 +5545,7 @@ static void outliner_draw_keymapbuts(uiBlock *block, ARegion *ar, SpaceOops *soo
                                uiDefButS(block, OPTION, 0, "Shift",    xstart, (int)te->ys+1, butw3+5, OL_H-1, &kmi->shift, 0, 0, 0, 0, "Modifier"); xstart+= butw3+5;
                                uiDefButS(block, OPTION, 0, "Ctrl",     xstart, (int)te->ys+1, butw3, OL_H-1, &kmi->ctrl, 0, 0, 0, 0, "Modifier"); xstart+= butw3;
                                uiDefButS(block, OPTION, 0, "Alt",      xstart, (int)te->ys+1, butw3, OL_H-1, &kmi->alt, 0, 0, 0, 0, "Modifier"); xstart+= butw3;
                                uiDefButS(block, OPTION, 0, "Shift",    xstart, (int)te->ys+1, butw3+5, OL_H-1, &kmi->shift, 0, 0, 0, 0, "Modifier"); xstart+= butw3+5;
                                uiDefButS(block, OPTION, 0, "Ctrl",     xstart, (int)te->ys+1, butw3, OL_H-1, &kmi->ctrl, 0, 0, 0, 0, "Modifier"); xstart+= butw3;
                                uiDefButS(block, OPTION, 0, "Alt",      xstart, (int)te->ys+1, butw3, OL_H-1, &kmi->alt, 0, 0, 0, 0, "Modifier"); xstart+= butw3;
-                               uiDefButS(block, OPTION, 0, "Cmd",      xstart, (int)te->ys+1, butw3, OL_H-1, &kmi->oskey, 0, 0, 0, 0, "Modifier"); xstart+= butw3;
+                               uiDefButS(block, OPTION, 0, "OS",       xstart, (int)te->ys+1, butw3, OL_H-1, &kmi->oskey, 0, 0, 0, 0, "Modifier"); xstart+= butw3;
                                xstart+= 5;
                                uiDefKeyevtButS(block, 0, "", xstart, (int)te->ys+1, butw3, OL_H-1, &kmi->keymodifier, "Key Modifier code");
                                xstart+= butw3+5;
                                xstart+= 5;
                                uiDefKeyevtButS(block, 0, "", xstart, (int)te->ys+1, butw3, OL_H-1, &kmi->keymodifier, "Key Modifier code");
                                xstart+= butw3+5;
@@ -5590,7 +5592,7 @@ static void outliner_buttons(const bContext *C, uiBlock *block, ARegion *ar, Spa
                                spx=te->xs+2*OL_X-4;
                                if(spx+dx+10>ar->v2d.cur.xmax) dx = ar->v2d.cur.xmax-spx-10;
 
                                spx=te->xs+2*OL_X-4;
                                if(spx+dx+10>ar->v2d.cur.xmax) dx = ar->v2d.cur.xmax-spx-10;
 
-                               bt= uiDefBut(block, TEX, OL_NAMEBUTTON, "", spx, (short)te->ys, dx+10, OL_H-1, te->name, 1.0, (float)len-1, 0, 0, "");
+                               bt= uiDefBut(block, TEX, OL_NAMEBUTTON, "", spx, (short)te->ys, dx+10, OL_H-1, te->name, 1.0, (float)len, 0, 0, "");
                                uiButSetRenameFunc(bt, namebutton_cb, tselem);
                                
                                /* returns false if button got removed */
                                uiButSetRenameFunc(bt, namebutton_cb, tselem);
                                
                                /* returns false if button got removed */
@@ -5658,16 +5660,16 @@ void draw_outliner(const bContext *C)
        UI_view2d_totRect_set(v2d, sizex, sizey);
 
        /* set matrix for 2d-view controls */
        UI_view2d_totRect_set(v2d, sizex, sizey);
 
        /* set matrix for 2d-view controls */
-       UI_view2d_view_ortho(C, v2d);
+       UI_view2d_view_ortho(v2d);
 
        /* draw outliner stuff (background, hierachy lines and names) */
 
        /* draw outliner stuff (background, hierachy lines and names) */
-       outliner_back(ar, soops);
+       outliner_back(ar);
        block= uiBeginBlock(C, ar, "outliner buttons", UI_EMBOSS);
        outliner_draw_tree((bContext *)C, block, scene, ar, soops);
        
        if(ELEM(soops->outlinevis, SO_DATABLOCKS, SO_USERDEF)) {
                /* draw rna buttons */
        block= uiBeginBlock(C, ar, "outliner buttons", UI_EMBOSS);
        outliner_draw_tree((bContext *)C, block, scene, ar, soops);
        
        if(ELEM(soops->outlinevis, SO_DATABLOCKS, SO_USERDEF)) {
                /* draw rna buttons */
-               outliner_draw_rnacols(ar, soops, sizex_rna);
+               outliner_draw_rnacols(ar, sizex_rna);
                outliner_draw_rnabuts(block, scene, ar, soops, sizex_rna, &soops->tree);
        }
        else if(soops->outlinevis == SO_KEYMAP) {
                outliner_draw_rnabuts(block, scene, ar, soops, sizex_rna, &soops->tree);
        }
        else if(soops->outlinevis == SO_KEYMAP) {
@@ -5675,7 +5677,7 @@ void draw_outliner(const bContext *C)
        }
        else if (!(soops->flag & SO_HIDE_RESTRICTCOLS)) {
                /* draw restriction columns */
        }
        else if (!(soops->flag & SO_HIDE_RESTRICTCOLS)) {
                /* draw restriction columns */
-               outliner_draw_restrictcols(ar, soops);
+               outliner_draw_restrictcols(ar);
                outliner_draw_restrictbuts(block, scene, ar, soops, &soops->tree);
        }
 
                outliner_draw_restrictbuts(block, scene, ar, soops, &soops->tree);
        }