Changes in / [3fa0181:4fd211f]
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
fmtext.c
r7b4f3be r4479497 184 184 } 185 185 186 static void _owl_fmtext_update_colorpair(short fg, short bg, short *pair) 187 { 188 if (owl_global_get_hascolors(&g)) { 189 *pair = owl_fmtext_get_colorpair(fg, bg); 190 } 191 } 192 186 193 static void _owl_fmtext_wcolor_set(WINDOW *w, short pair) 187 194 { 188 if ( has_colors()) {195 if (owl_global_get_hascolors(&g)) { 189 196 wcolor_set(w,pair,NULL); 190 197 wbkgdset(w, COLOR_PAIR(pair)); … … 214 221 bg = default_bgcolor; 215 222 _owl_fmtext_wattrset(w, attr); 216 pair = owl_fmtext_get_colorpair(fg, bg);223 _owl_fmtext_update_colorpair(fg, bg, &pair); 217 224 _owl_fmtext_wcolor_set(w, pair); 218 225 … … 263 270 if (bg == OWL_COLOR_DEFAULT) bg = default_bgcolor; 264 271 _owl_fmtext_wattrset(w, attr); 265 pair = owl_fmtext_get_colorpair(fg, bg);272 _owl_fmtext_update_colorpair(fg, bg, &pair); 266 273 _owl_fmtext_wcolor_set(w, pair); 267 274 … … 655 662 continue */ 656 663 } else if (!strcasecmp(buff, "@color") 664 && owl_global_get_hascolors(&g) 657 665 && owl_global_is_colorztext(&g)) { 658 666 g_free(buff); … … 812 820 } 813 821 } 814 if ( has_colors()) {822 if (owl_global_get_hascolors(&g)) { 815 823 for(i = 0; i < 8; i++) { 816 824 short fg, bg; … … 827 835 owl_colorpair_mgr *cpmgr; 828 836 short pair; 829 830 if (!has_colors())831 return 0;832 837 833 838 /* Sanity (Bounds) Check */ … … 847 852 if (!(pair != -1 && pair < cpmgr->next)) { 848 853 /* If we didn't find a pair, search for a free one to assign. */ 849 pair = (cpmgr->next < owl_util_get_colorpairs()) ? cpmgr->next : -1;854 pair = (cpmgr->next < COLOR_PAIRS) ? cpmgr->next : -1; 850 855 if (pair != -1) { 851 856 /* We found a free pair, initialize it. */ -
functions.c
r7b4f3be r4fd211f 1817 1817 owl_global_get_cols(&g)); 1818 1818 1819 if ( has_colors()) {1819 if (owl_global_get_hascolors(&g)) { 1820 1820 owl_fmtext_append_normal(&fm, "Color: Yes\n"); 1821 owl_fmtext_appendf_normal(&fm, "Number of color pairs: %i\n", owl_ util_get_colorpairs());1821 owl_fmtext_appendf_normal(&fm, "Number of color pairs: %i\n", owl_global_get_colorpairs(&g)); 1822 1822 owl_fmtext_appendf_normal(&fm, "Can change colors: %s\n", can_change_color() ? "yes" : "no"); 1823 1823 } else { … … 2226 2226 f = fl->data; 2227 2227 owl_fmtext_append_normal(&fm, " "); 2228 owl_fmtext_append_normal_color(&fm, owl_filter_get_name(f), 2229 owl_filter_get_fgcolor(f), 2230 owl_filter_get_bgcolor(f)); 2228 if (owl_global_get_hascolors(&g)) { 2229 owl_fmtext_append_normal_color(&fm, owl_filter_get_name(f), owl_filter_get_fgcolor(f), owl_filter_get_bgcolor(f)); 2230 } else { 2231 owl_fmtext_append_normal(&fm, owl_filter_get_name(f)); 2232 } 2231 2233 owl_fmtext_append_normal(&fm, "\n"); 2232 2234 } -
global.c
r7b4f3be r47e0a6a 51 51 g->direction=OWL_DIRECTION_DOWNWARDS; 52 52 g->zaway=0; 53 if (has_colors()) { 54 g->hascolors=1; 55 } 56 g->colorpairs=COLOR_PAIRS; 53 57 owl_fmtext_init_colorpair_mgr(&(g->cpmgr)); 54 58 g->debug=OWL_DEBUG; … … 570 574 owl_view *owl_global_get_current_view(owl_global *g) { 571 575 return(&(g->current_view)); 576 } 577 578 /* has colors */ 579 580 int owl_global_get_hascolors(const owl_global *g) { 581 if (g->hascolors) return(1); 582 return(0); 583 } 584 585 /* color pairs */ 586 587 int owl_global_get_colorpairs(const owl_global *g) { 588 return(g->colorpairs); 572 589 } 573 590 -
owl.c
r9efa5bd ra2a8833 444 444 /* update the terminal if we need to */ 445 445 owl_window_redraw_scheduled(); 446 /* On colorpair shortage, reset and redraw /everything/. NOTE: if we447 * still overflow, this be useless work. With 8-colors, we get 64448 * pairs. With 256-colors, we get 32768 pairs with ext-colors449 * support and 256 otherwise.*/446 /* On colorpair shortage, reset and redraw /everything/. NOTE: if 447 * the current screen uses too many colorpairs, this draws 448 * everything twice. But this is unlikely; COLOR_PAIRS is 64 with 449 * 8+1 colors, and 256^2 with 256+1 colors. (+1 for default.) */ 450 450 cpmgr = owl_global_get_colorpair_mgr(&g); 451 451 if (cpmgr->overflow) { 452 owl_function_debugmsg("colorpairs: used all %d pairs; reset pairs and redraw.", 453 owl_util_get_colorpairs()); 452 owl_function_debugmsg("colorpairs: color shortage; reset pairs and redraw. COLOR_PAIRS = %d", COLOR_PAIRS); 454 453 owl_fmtext_reset_colorpairs(cpmgr); 455 454 owl_function_full_redisplay(); -
owl.h
r7b4f3be r283ff1e 610 610 char *startupargs; 611 611 int nextmsgid; 612 int hascolors; 613 int colorpairs; 612 614 owl_colorpair_mgr cpmgr; 613 615 pid_t newmsgproc_pid; -
util.c
r9efa5bd re56303f 715 715 } 716 716 717 int owl_util_get_colorpairs(void) {718 #ifndef NCURSES_EXT_COLORS719 /* Without ext-color support (an ABI change), ncurses only supports 256720 * different color pairs. However, it gives us a larger number even if your721 * ncurses is compiled without ext-color. */722 return MIN(COLOR_PAIRS, 256);723 #else724 return COLOR_PAIRS;725 #endif726 }727 728 717 gulong owl_dirty_window_on_signal(owl_window *w, gpointer sender, const gchar *detailed_signal) 729 718 {
Note: See TracChangeset
for help on using the changeset viewer.