Index: source/blender/editors/include/UI_resources.h =================================================================== --- source/blender/editors/include/UI_resources.h (revision 41899) +++ source/blender/editors/include/UI_resources.h (working copy) @@ -258,7 +258,10 @@ enum { TH_PATH_BEFORE, TH_PATH_AFTER, TH_CAMERA_PATH, - TH_LOCK_MARKER + TH_LOCK_MARKER, + + TH_MATCH, /* highlight colour for search matches */ + TH_SELECT_HIGHLIGHT /* highlight colour for selected outliner item */ }; /* XXX WARNING: previous is saved in file, so do not change order! */ Index: source/blender/editors/interface/resources.c =================================================================== --- source/blender/editors/interface/resources.c (revision 41899) +++ source/blender/editors/interface/resources.c (working copy) @@ -433,6 +433,14 @@ const unsigned char *UI_ThemeGetColorPtr(bTheme *btheme, int spacetype, int colo cp= ts->camera_path; break; case TH_LOCK_MARKER: cp= ts->lock_marker; break; + + case TH_MATCH: + cp= ts->match; + break; + + case TH_SELECT_HIGHLIGHT: + cp= ts->selected_highlight; + break; } } } @@ -767,7 +775,9 @@ void ui_theme_init_default(void) /* space oops */ btheme->toops= btheme->tv3d; SETCOLF(btheme->toops.back, 0.45, 0.45, 0.45, 1.0); - + SETCOLF(btheme->toops.match, 0.2, 0.5, 0.2, 0.3); /* highlighting search match - soft green*/ + SETCOLF(btheme->toops.selected_highlight, 0.51, 0.53, 0.55, 0.3); + /* space info */ btheme->tinfo= btheme->tv3d; SETCOLF(btheme->tinfo.back, 0.45, 0.45, 0.45, 1.0); @@ -1667,6 +1677,14 @@ void init_userdef_do_versions(void) BLI_addtail(&U.addons, baddon); } } + + if (bmain->versionfile < 261) { + bTheme *btheme; + for(btheme= U.themes.first; btheme; btheme= btheme->next) { + SETCOLF(btheme->toops.match, 0.2, 0.5, 0.2, 0.3); + SETCOLF(btheme->toops.selected_highlight, 0.51, 0.53, 0.55, 0.3); + } + } /* GL Texture Garbage Collection (variable abused above!) */ if (U.textimeout == 0) { Index: source/blender/editors/space_outliner/outliner_draw.c =================================================================== --- source/blender/editors/space_outliner/outliner_draw.c (revision 41899) +++ source/blender/editors/space_outliner/outliner_draw.c (working copy) @@ -1254,8 +1254,10 @@ static void outliner_draw_tree_element(bContext *C, uiBlock *block, Scene *scene if ( (SEARCHING_OUTLINER(soops) || (soops->outlinevis==SO_DATABLOCKS && soops->search_string[0]!=0)) && (tselem->flag & TSE_SEARCHMATCH)) { - /* TODO - add search highlight color to theme? */ - glColor4f(0.2f, 0.5f, 0.2f, 0.3f); + char col[4]; + UI_GetThemeColorType4ubv(TH_MATCH, SPACE_OUTLINER, col); + col[3]=100; + glColor4ubv((GLubyte *)col); glRecti(startx, *starty+1, ar->v2d.cur.xmax, *starty+UI_UNIT_Y-1); } @@ -1509,8 +1511,8 @@ static void outliner_draw_tree(bContext *C, uiBlock *block, Scene *scene, ARegio } /* always draw selection fill before hierarchy */ - UI_GetThemeColor3fv(TH_BACK, col); - glColor3f(col[0]+0.06f, col[1]+0.08f, col[2]+0.10f); + UI_GetThemeColor3fv(TH_SELECT_HIGHLIGHT, col); + glColor3fv(col); starty= (int)ar->v2d.tot.ymax-UI_UNIT_Y-OL_Y_OFFSET; outliner_draw_selection(ar, soops, &soops->tree, &starty); Index: source/blender/makesdna/DNA_userdef_types.h =================================================================== --- source/blender/makesdna/DNA_userdef_types.h (revision 41899) +++ source/blender/makesdna/DNA_userdef_types.h (working copy) @@ -243,7 +243,10 @@ typedef struct ThemeSpace { char hpad[7]; char preview_back[4]; - + + char match[4]; // outliner - filter match + char selected_highlight[4]; // outliner - selected item + } ThemeSpace; Index: source/blender/makesrna/intern/rna_userdef.c =================================================================== --- source/blender/makesrna/intern/rna_userdef.c (revision 41899) +++ source/blender/makesrna/intern/rna_userdef.c (working copy) @@ -1190,6 +1190,7 @@ static void rna_def_userdef_theme_space_file(BlenderRNA *brna) static void rna_def_userdef_theme_space_outliner(BlenderRNA *brna) { StructRNA *srna; + PropertyRNA *prop; /* space_outliner */ @@ -1199,6 +1200,16 @@ static void rna_def_userdef_theme_space_outliner(BlenderRNA *brna) RNA_def_struct_ui_text(srna, "Theme Outliner", "Theme settings for the Outliner"); rna_def_userdef_theme_spaces_main(srna, SPACE_OUTLINER); + + prop= RNA_def_property(srna, "match", PROP_FLOAT, PROP_COLOR_GAMMA); + RNA_def_property_array(prop, 3); + RNA_def_property_ui_text(prop, "Filter Match", ""); + RNA_def_property_update(prop, 0, "rna_userdef_update"); + + prop= RNA_def_property(srna, "selected_highlight", PROP_FLOAT, PROP_COLOR_GAMMA); + RNA_def_property_array(prop, 3); + RNA_def_property_ui_text(prop, "Selected Highlight", ""); + RNA_def_property_update(prop, 0, "rna_userdef_update"); } static void rna_def_userdef_theme_space_userpref(BlenderRNA *brna)