Outliner objects showed "active" or "selected" in confusing
ways. Now the display is simply binary, and more in line with
how other items in outliner draw:

- text is white = item is active
- color circle behind icon: shows selection state
This commit is contained in:
Ton Roosendaal
2011-04-20 16:19:49 +00:00
parent 8a7dce5301
commit 5bd110c6ba

View File

@@ -4667,16 +4667,24 @@ static void outliner_draw_tree_element(bContext *C, uiBlock *block, Scene *scene
Object *ob= (Object *)tselem->id;
if(ob==OBACT || (ob->flag & SELECT)) {
char col[4];
char col[4]= {0, 0, 0, 0};
active= 2;
/* outliner active ob: always white text, circle color now similar to view3d */
active= 2; /* means it draws a color circle */
if(ob==OBACT) {
UI_GetThemeColorType4ubv(TH_ACTIVE, SPACE_VIEW3D, col);
/* so black text is drawn when active and not selected */
if (ob->flag & SELECT) active= 1;
if(ob->flag & SELECT) {
UI_GetThemeColorType4ubv(TH_ACTIVE, SPACE_VIEW3D, col);
col[3]= 100;
}
active= 1; /* means it draws white text */
}
else UI_GetThemeColorType4ubv(TH_SELECT, SPACE_VIEW3D, col);
col[3]= 100;
else if(ob->flag & SELECT) {
UI_GetThemeColorType4ubv(TH_SELECT, SPACE_VIEW3D, col);
col[3]= 100;
}
glColor4ubv((GLubyte *)col);
}