[Bf-blender-cvs] [73310f2] temp-ui-widget-refactor: Add widget type for search menu back
Julian Eisel
noreply at git.blender.org
Mon Aug 3 01:02:42 CEST 2015
Commit: 73310f25fee601508920be000f0a44e721d50dd0
Author: Julian Eisel
Date: Mon Aug 3 01:02:05 2015 +0200
Branches: temp-ui-widget-refactor
https://developer.blender.org/rB73310f25fee601508920be000f0a44e721d50dd0
Add widget type for search menu back
===================================================================
M source/blender/editors/interface/interface_widgets.c
M source/blender/editors/interface/widgets/widgets.c
M source/blender/editors/interface/widgets/widgets.h
M source/blender/editors/interface/widgets/widgets_draw/drawstyle_classic.c
===================================================================
diff --git a/source/blender/editors/interface/interface_widgets.c b/source/blender/editors/interface/interface_widgets.c
index c96ecda..9c4efd0 100644
--- a/source/blender/editors/interface/interface_widgets.c
+++ b/source/blender/editors/interface/interface_widgets.c
@@ -1316,11 +1316,7 @@ void ui_draw_tooltip_background(uiStyle *UNUSED(style), uiBlock *UNUSED(block),
void ui_draw_search_back(uiStyle *UNUSED(style), uiBlock *block, rcti *rect)
{
- uiWidgetType *wt = WidgetTypeInit(UI_WTYPE_BOX);
-
- glEnable(GL_BLEND);
- widget_drawbase_softshadow(rect, UI_CNR_ALL, 0.25f * U.widget_unit);
- glDisable(GL_BLEND);
+ uiWidgetType *wt = WidgetTypeInit(UI_WTYPE_SEARCH_BACK);
if (block)
WidgetDraw(wt, NULL, NULL, rect, block->flag, UI_CNR_ALL, 0, NULL, false);
diff --git a/source/blender/editors/interface/widgets/widgets.c b/source/blender/editors/interface/widgets/widgets.c
index 0cb8cbd..2ac8460 100644
--- a/source/blender/editors/interface/widgets/widgets.c
+++ b/source/blender/editors/interface/widgets/widgets.c
@@ -221,6 +221,11 @@ uiWidgetType *WidgetTypeInit(const uiWidgetTypeEnum type)
wt.draw_type = draw_style->scroll_inner;
break;
+ case UI_WTYPE_SEARCH_BACK:
+ wt.wcol_theme = &btheme->tui.wcol_box;
+ wt.draw_type = draw_style->search_back;
+ break;
+
case UI_WTYPE_SEPARATOR:
wt.wcol_theme = &btheme->tui.wcol_menu_item;
wt.draw_type = draw_style->separator;
diff --git a/source/blender/editors/interface/widgets/widgets.h b/source/blender/editors/interface/widgets/widgets.h
index b4ddcaa..b035426 100644
--- a/source/blender/editors/interface/widgets/widgets.h
+++ b/source/blender/editors/interface/widgets/widgets.h
@@ -71,6 +71,7 @@ typedef enum {
UI_WTYPE_MENU_ITEM_PREVIEW,
UI_WTYPE_MENU_ITEM_RADIAL,
UI_WTYPE_MENU_BACK,
+ UI_WTYPE_SEARCH_BACK,
/* specials */
UI_WTYPE_ICON,
@@ -151,6 +152,7 @@ typedef struct uiWidgetDrawStyle {
*rgb_picker,
*scroll_back,
*scroll_inner,
+ *search_back,
*separator,
*slider,
*swatch,
diff --git a/source/blender/editors/interface/widgets/widgets_draw/drawstyle_classic.c b/source/blender/editors/interface/widgets/widgets_draw/drawstyle_classic.c
index 498b70a..46ad848 100644
--- a/source/blender/editors/interface/widgets/widgets_draw/drawstyle_classic.c
+++ b/source/blender/editors/interface/widgets/widgets_draw/drawstyle_classic.c
@@ -859,6 +859,22 @@ static void widget_scroll_inner(uiWidgetColors *wcol, rcti *rect, int state, int
}
}
+static void widget_search_back(uiWidgetColors *wcol, rcti *rect, int UNUSED(state), int roundboxalign)
+{
+ uiWidgetDrawBase wtb;
+ const float rad = 0.25f * U.widget_unit;
+
+ widget_drawbase_init(&wtb);
+
+ glEnable(GL_BLEND);
+ widget_drawbase_softshadow(rect, roundboxalign, rad);
+ glDisable(GL_BLEND);
+
+ widget_drawbase_roundboxedges_set(&wtb, roundboxalign, rect, rad);
+
+ widget_drawbase_draw(&wtb, wcol);
+}
+
/* separator, for menus etc */
static void widget_separator(uiWidgetColors *wcol, rcti *rect, int UNUSED(state), int UNUSED(roundboxalign))
{
@@ -1384,7 +1400,7 @@ uiWidgetDrawType drawtype_classic_menu_back = {
/* state */ widget_state_nothing,
/* draw */ widget_menu_back,
/* custom */ NULL,
- /* text */ widget_draw_text_icon,
+ /* text */ NULL,
};
uiWidgetDrawType drawtype_classic_menu_icon_radio = {
@@ -1499,6 +1515,13 @@ uiWidgetDrawType drawtype_classic_scroll_inner = {
/* text */ NULL,
};
+uiWidgetDrawType drawtype_classic_search_back = {
+ /* state */ widget_state_nothing,
+ /* draw */ widget_search_back,
+ /* custom */ NULL,
+ /* text */ NULL,
+};
+
uiWidgetDrawType drawtype_classic_separator = {
/* state */ widget_state_nothing,
/* draw */ widget_separator,
@@ -1577,6 +1600,7 @@ uiWidgetDrawStyle WidgetStyle_Classic = {
/* rgb_picker */ NULL, /* not used (yet?) */
/* scroll_back */ &drawtype_classic_scroll_back,
/* scroll_inner */ &drawtype_classic_scroll_inner,
+ /* search_back */ &drawtype_classic_search_back,
/* separator */ &drawtype_classic_separator,
/* slider */ &drawtype_classic_numslider,
/* swatch */ &drawtype_classic_swatch,
More information about the Bf-blender-cvs
mailing list