[Bf-blender-cvs] [0457d74] wiggly-widgets: More minor cleanup
Julian Eisel
noreply at git.blender.org
Fri Apr 10 17:09:04 CEST 2015
Commit: 0457d74d86fc0008b6fa11772942828d68ff823f
Author: Julian Eisel
Date: Thu Apr 9 19:10:42 2015 +0200
Branches: wiggly-widgets
https://developer.blender.org/rB0457d74d86fc0008b6fa11772942828d68ff823f
More minor cleanup
Also tweaked widget colors a bit to make them more appealing ;)
===================================================================
M source/blender/editors/transform/manipulator_widget.c
M source/blender/windowmanager/WM_api.h
M source/blender/windowmanager/intern/wm_generic_widgets.c
M source/blender/windowmanager/intern/wm_widgets.c
M source/blender/windowmanager/wm.h
===================================================================
diff --git a/source/blender/editors/transform/manipulator_widget.c b/source/blender/editors/transform/manipulator_widget.c
index a068653..af26a49 100644
--- a/source/blender/editors/transform/manipulator_widget.c
+++ b/source/blender/editors/transform/manipulator_widget.c
@@ -1711,7 +1711,7 @@ static int manipulator_flags_from_active(const int active)
return val;
}
-static void WIDGET_manipulator_draw(wmWidget *UNUSED(widget), const bContext *C)
+static void WIDGET_manipulator_draw(const bContext *C, wmWidget *UNUSED(widget))
{
ScrArea *sa = CTX_wm_area(C);
ARegion *ar = CTX_wm_region(C);
@@ -1976,9 +1976,9 @@ static void WIDGETGROUP_manipulator_create(const struct bContext *UNUSED(C), str
ManipulatorGroup *manipulator = MEM_callocN(sizeof(ManipulatorGroup), "manipulator_data");
wmWidget *widget, *axis;
- float color_green[4] = {0.0f, 1.0f, 0.0f, 1.0f};
- float color_red[4] = {1.0f, 0.0f, 0.0f, 1.0f};
- float color_blue[4] = {0.0f, 0.0f, 1.0f, 1.0f};
+ float color_green[4] = {0.25f, 1.0f, 0.25f, 1.0f};
+ float color_red[4] = {1.0f, 0.25f, 0.25f, 1.0f};
+ float color_blue[4] = {0.25f, 0.25f, 1.0f, 1.0f};
short i;
widget = WM_widget_new(WIDGET_manipulator_draw,
@@ -2017,7 +2017,7 @@ static void WIDGETGROUP_manipulator_create(const struct bContext *UNUSED(C), str
WIDGET_dial_set_color(axis, color_blue);
break;
}
- axis->render_3d_intersection = widget->render_3d_intersection;
+ axis->render_3d_intersection = widget->render_3d_intersection; /* XXX overides arrow/dial intersection */
}
MAN_ITER_AXES_END
diff --git a/source/blender/windowmanager/WM_api.h b/source/blender/windowmanager/WM_api.h
index 5036360..889b046 100644
--- a/source/blender/windowmanager/WM_api.h
+++ b/source/blender/windowmanager/WM_api.h
@@ -470,9 +470,9 @@ float WM_event_tablet_data(const struct wmEvent *event, int *pen_flip, flo
bool WM_event_is_tablet(const struct wmEvent *event);
/* widget API */
-struct wmWidget *WM_widget_new(void (*draw)(struct wmWidget *, const struct bContext *),
+struct wmWidget *WM_widget_new(void (*draw)(const struct bContext *, struct wmWidget *),
void (*render_3d_intersection)(const struct bContext *, struct wmWidget *, int),
- int (*intersect)(struct bContext *C, const struct wmEvent *event, struct wmWidget *customdata),
+ int (*intersect)(struct bContext *, const struct wmEvent *, struct wmWidget *),
int (*handler)(struct bContext *, const struct wmEvent *, struct wmWidget *));
void WM_widget_property(struct wmWidget *, int slot, struct PointerRNA *ptr, const char *propname);
diff --git a/source/blender/windowmanager/intern/wm_generic_widgets.c b/source/blender/windowmanager/intern/wm_generic_widgets.c
index 366f88b..7851445 100644
--- a/source/blender/windowmanager/intern/wm_generic_widgets.c
+++ b/source/blender/windowmanager/intern/wm_generic_widgets.c
@@ -248,7 +248,7 @@ static void widget_arrow_render_3d_intersect(const struct bContext *UNUSED(C), s
arrow_draw_intern((ArrowWidget *)widget, true, false);
}
-static void widget_arrow_draw(struct wmWidget *widget, const struct bContext *UNUSED(C))
+static void widget_arrow_draw(const struct bContext *UNUSED(C), struct wmWidget *widget)
{
arrow_draw_intern((ArrowWidget *)widget, false, (widget->flag & WM_WIDGET_HIGHLIGHT) != 0);
}
@@ -544,7 +544,7 @@ static void widget_dial_render_3d_intersect(const struct bContext *C, struct wmW
}
}
-static void widget_dial_draw(struct wmWidget *widget, const struct bContext *C)
+static void widget_dial_draw(const struct bContext *C, struct wmWidget *widget)
{
DialWidget *dial = (DialWidget *)widget;
ARegion *ar = CTX_wm_region(C);
@@ -718,9 +718,11 @@ static void rect_transform_draw_interaction(int highlighted, float half_w, float
glLineWidth(1.0);
glColor3f(1.0, 1.0, 1.0);
glDrawArrays(GL_LINE_STRIP, 0, 3);
+
+ (void)elems;
}
-static void widget_rect_transform_draw(struct wmWidget *widget, const struct bContext *UNUSED(C))
+static void widget_rect_transform_draw(const struct bContext *UNUSED(C), struct wmWidget *widget)
{
RectTransformWidget *cage = (RectTransformWidget *)widget;
rctf r;
@@ -1062,7 +1064,7 @@ typedef struct FacemapWidget {
} FacemapWidget;
-static void widget_facemap_draw(struct wmWidget *widget, const struct bContext *C)
+static void widget_facemap_draw(const struct bContext *C, struct wmWidget *widget)
{
FacemapWidget *fmap_widget = (FacemapWidget *)widget;
glPushMatrix();
@@ -1074,7 +1076,7 @@ static void widget_facemap_draw(struct wmWidget *widget, const struct bContext *
static void widget_facemap_render_3d_intersect(const struct bContext *C, struct wmWidget *widget, int selectionbase)
{
GPU_select_load_id(selectionbase);
- widget_facemap_draw(widget, C);
+ widget_facemap_draw(C, widget);
}
diff --git a/source/blender/windowmanager/intern/wm_widgets.c b/source/blender/windowmanager/intern/wm_widgets.c
index 72a5a94b..53bc544 100644
--- a/source/blender/windowmanager/intern/wm_widgets.c
+++ b/source/blender/windowmanager/intern/wm_widgets.c
@@ -157,7 +157,7 @@ struct wmWidgetGroupType *WM_widgetgrouptype_new(
return wgrouptype;
}
-wmWidget *WM_widget_new(void (*draw)(struct wmWidget *customdata, const struct bContext *C),
+wmWidget *WM_widget_new(void (*draw)(const struct bContext *C, struct wmWidget *customdata),
void (*render_3d_intersection)(const struct bContext *C, struct wmWidget *customdata, int selectionbase),
int (*intersect)(struct bContext *C, const struct wmEvent *event, struct wmWidget *widget),
int (*handler)(struct bContext *C, const struct wmEvent *event, struct wmWidget *widget))
@@ -366,7 +366,7 @@ void WM_widgets_draw(const bContext *C, wmWidgetMap *wmap, bool in_scene)
if (widget && in_scene == ((widget->flag & WM_WIDGET_SCENE_DEPTH)!= 0)) {
/* notice that we don't update the widgetgroup, widget is now on its own, it should have all
* relevant data to update itself */
- widget->draw(widget, C);
+ widget->draw(C, widget);
}
else if (wmap->widgetgroups.first) {
wmWidgetGroup *wgroup;
@@ -379,7 +379,7 @@ void WM_widgets_draw(const bContext *C, wmWidgetMap *wmap, bool in_scene)
(!(widget->flag & WM_WIDGET_DRAW_HOVER) || (widget->flag & WM_WIDGET_HIGHLIGHT)) &&
((widget->flag & WM_WIDGET_SCENE_DEPTH) != 0) == in_scene)
{
- widget->draw(widget, C);
+ widget->draw(C, widget);
}
}
}
diff --git a/source/blender/windowmanager/wm.h b/source/blender/windowmanager/wm.h
index 21a4de3..fc1e56e 100644
--- a/source/blender/windowmanager/wm.h
+++ b/source/blender/windowmanager/wm.h
@@ -56,7 +56,7 @@ typedef struct wmWidget {
char idname[64];
/* draw widget */
- void (*draw)(struct wmWidget *widget, const struct bContext *C);
+ void (*draw)(const struct bContext *C, struct wmWidget *widget);
/* determine if the mouse intersects with the widget. The calculation should be done in the callback itself */
int (*intersect)(struct bContext *C, const struct wmEvent *event, struct wmWidget *widget);
More information about the Bf-blender-cvs
mailing list