Commit: caf600aa9ce9a14915b989ace48b7f793d5eda4c
Author: Julian Eisel
Date:   Wed May 18 17:43:40 2016 +0200
Branches: temp_widgets_update_tagging
https://developer.blender.org/rBcaf600aa9ce9a14915b989ace48b7f793d5eda4c

Final cleanup before merge into wiggly-widgets branch

===================================================================

M       source/blender/editors/include/ED_view3d.h
M       source/blender/windowmanager/widgets/WM_widget_types.h
M       source/blender/windowmanager/widgets/intern/wm_widget.c
M       source/blender/windowmanager/widgets/intern/wm_widget_intern.h

===================================================================

diff --git a/source/blender/editors/include/ED_view3d.h 
b/source/blender/editors/include/ED_view3d.h
index a3ed21d..69a7bb2 100644
--- a/source/blender/editors/include/ED_view3d.h
+++ b/source/blender/editors/include/ED_view3d.h
@@ -54,7 +54,6 @@ struct ScrArea;
 struct View3D;
 struct ViewContext;
 struct bContext;
-struct bFaceMap;
 struct bPoseChannel;
 struct bScreen;
 struct bglMats;
diff --git a/source/blender/windowmanager/widgets/WM_widget_types.h 
b/source/blender/windowmanager/widgets/WM_widget_types.h
index 67e4de9..3b50076 100644
--- a/source/blender/windowmanager/widgets/WM_widget_types.h
+++ b/source/blender/windowmanager/widgets/WM_widget_types.h
@@ -95,7 +95,7 @@ typedef struct wmWidgetMap {
        struct wmWidgetMapType *type;
        ListBase widgetgroups;
 
-       short update_flag; /* private, update tagging */
+       char update_flag; /* private, update tagging */
 
        /**
         * \brief Widget map runtime context
@@ -127,7 +127,7 @@ struct wmWidgetMapType_Params {
 };
 
 /**
- * Simple utility wrapper for storing a single widget as 
wmWidgetGroup.customdata
+ * Simple utility wrapper for storing a single widget as 
wmWidgetGroup.customdata (which gets freed).
  */
 typedef struct wmWidgetWrapper {
        struct wmWidget *widget;
diff --git a/source/blender/windowmanager/widgets/intern/wm_widget.c 
b/source/blender/windowmanager/widgets/intern/wm_widget.c
index 5687acc..759ecf7 100644
--- a/source/blender/windowmanager/widgets/intern/wm_widget.c
+++ b/source/blender/windowmanager/widgets/intern/wm_widget.c
@@ -178,21 +178,7 @@ bool wm_widget_register(wmWidgetGroup *wgroup, wmWidget 
*widget, const char *nam
 }
 
 /**
- * Free widget data, not widget itself.
- * TODO Not needed anymore?
- */
-void wm_widget_data_free(wmWidget *widget)
-{
-       if (widget->opptr.data) {
-               WM_operator_properties_free(&widget->opptr);
-       }
-
-       MEM_freeN(widget->props);
-       MEM_freeN(widget->ptr);
-}
-
-/**
- * Free and NULL \a widget.
+ * Free \a widget and unlink from \a widgetlist.
  * \a widgetlist is allowed to be NULL.
  */
 void WM_widget_delete(ListBase *widgetlist, wmWidgetMap *wmap, wmWidget 
*widget, bContext *C)
@@ -207,7 +193,12 @@ void WM_widget_delete(ListBase *widgetlist, wmWidgetMap 
*wmap, wmWidget *widget,
                wm_widget_deselect(wmap, widget);
        }
 
-       wm_widget_data_free(widget);
+       if (widget->opptr.data) {
+               WM_operator_properties_free(&widget->opptr);
+       }
+       MEM_freeN(widget->props);
+       MEM_freeN(widget->ptr);
+
        if (widgetlist)
                BLI_remlink(widgetlist, widget);
        MEM_freeN(widget);
@@ -336,7 +327,7 @@ bool wm_widget_deselect(wmWidgetMap *wmap, wmWidget *widget)
 
        /* remove widget from selected_widgets array */
        for (int i = 0; i < (*tot_selected); i++) {
-               if (wm_widget_compare((*sel)[i], widget)) {
+               if ((*sel)[i] == widget) {
                        for (int j = i; j < ((*tot_selected) - 1); j++) {
                                (*sel)[j] = (*sel)[j + 1];
                        }
@@ -386,12 +377,6 @@ bool wm_widget_select(bContext *C, wmWidgetMap *wmap, 
wmWidget *widget)
        return true;
 }
 
-/* XXX shouldn't be needed since we don't recreate widgets on redraw anymore? 
*/
-bool wm_widget_compare(const wmWidget *a, const wmWidget *b)
-{
-       return STREQ(a->idname, b->idname);
-}
-
 void wm_widget_calculate_scale(wmWidget *widget, const bContext *C)
 {
        const RegionView3D *rv3d = CTX_wm_region_view3d(C);
diff --git a/source/blender/windowmanager/widgets/intern/wm_widget_intern.h 
b/source/blender/windowmanager/widgets/intern/wm_widget_intern.h
index be66b75..a70105d 100644
--- a/source/blender/windowmanager/widgets/intern/wm_widget_intern.h
+++ b/source/blender/windowmanager/widgets/intern/wm_widget_intern.h
@@ -46,12 +46,10 @@ enum {
 };
 
 bool wm_widget_register(wmWidgetGroup *wgroup, struct wmWidget *widget, const 
char *name);
-void wm_widget_data_free(struct wmWidget *widget);
 
 bool wm_widget_deselect(struct wmWidgetMap *wmap, struct wmWidget *widget);
 bool wm_widget_select(bContext *C, struct wmWidgetMap *wmap, struct wmWidget 
*widget);
 
-bool wm_widget_compare(const struct wmWidget *a, const struct wmWidget *b);
 void wm_widget_calculate_scale(struct wmWidget *widget, const bContext *C);
 void wm_widget_update_prop_data(struct wmWidget *widget);

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to