From 802fe0e4a77a65c3b94c44c3ec991f408b9db9b2 Mon Sep 17 00:00:00 2001 From: skeezix Date: Mon, 22 Mar 2010 10:35:49 -0400 Subject: [PATCH] change one comment in pnd_pxml.h to be more right mmenu: - when using small icons without upscaling, center vertically now (always did horiz centering) - when less categories than fill the screen, ensure draw the 'tab line' to complete the top border - show 'subapp number' in the detail panel --- include/pnd_pxml.h | 2 +- minimenu/mmui.c | 38 +++++++++++++++++++++++++++++++++++++- 2 files changed, 38 insertions(+), 2 deletions(-) diff --git a/include/pnd_pxml.h b/include/pnd_pxml.h index 7ed5a24..1cc2df3 100644 --- a/include/pnd_pxml.h +++ b/include/pnd_pxml.h @@ -114,7 +114,7 @@ typedef struct typedef struct { - unsigned char subapp_number; // 0 for 'only app'; 1+ for # .. first is 1. + unsigned char subapp_number; // 0+ for # .. first is 0 pnd_localized_string_t *titles; int titles_c; int titles_alloc_c; diff --git a/minimenu/mmui.c b/minimenu/mmui.c index e2acf7c..d0d3f78 100644 --- a/minimenu/mmui.c +++ b/minimenu/mmui.c @@ -281,6 +281,7 @@ void ui_render ( unsigned int render_mask ) { unsigned int icon_offset_x = pnd_conf_get_as_int ( g_conf, "grid.icon_offset_x" ); unsigned int icon_offset_y = pnd_conf_get_as_int ( g_conf, "grid.icon_offset_y" ); unsigned int icon_max_width = pnd_conf_get_as_int ( g_conf, "grid.icon_max_width" ); + unsigned int icon_max_height = pnd_conf_get_as_int ( g_conf, "grid.icon_max_height" ); unsigned int text_width = pnd_conf_get_as_int ( g_conf, "grid.text_width" ); unsigned int text_clip_x = pnd_conf_get_as_int ( g_conf, "grid.text_clip_x" ); @@ -361,6 +362,7 @@ void ui_render ( unsigned int render_mask ) { unsigned int text_width = pnd_conf_get_as_int ( g_conf, "tabs.text_width" ); unsigned int maxtab = ( screen_width / tab_width ) < g_categorycount ? ( screen_width / tab_width ) + ui_catshift : g_categorycount + ui_catshift; + // draw tabs with categories for ( col = ui_catshift; col < maxtab; col++ ) @@ -425,6 +427,25 @@ void ui_render ( unsigned int render_mask ) { } // for + // draw tab lines under where tabs would be if we had categories + maxtab = ( screen_width / tab_width ); + for ( /* foo */; col < maxtab; col++ ) { + SDL_Surface *s; + + if ( col - ui_catshift == 0 ) { + s = g_imagecache [ IMG_TAB_LINEL ].i; + } else if ( col - ui_catshift == maxtab - 1 ) { + s = g_imagecache [ IMG_TAB_LINER ].i; + } else { + s = g_imagecache [ IMG_TAB_LINE ].i; + } + dest -> x = tab_offset_x + ( (col-ui_catshift) * tab_width ); + dest -> y = tab_offset_y + tab_height; + SDL_BlitSurface ( s, NULL /* whole image */, sdl_realscreen, dest ); + dest++; + + } // for + } // tabs // scroll bars and arrows @@ -535,7 +556,7 @@ void ui_render ( unsigned int render_mask ) { src.w = 60; src.h = 60; dest -> x = grid_offset_x + ( col * cell_width ) + icon_offset_x + (( icon_max_width - iconsurface -> w ) / 2); - dest -> y = grid_offset_y + ( displayrow * cell_height ) + icon_offset_y; + dest -> y = grid_offset_y + ( displayrow * cell_height ) + icon_offset_y + (( icon_max_height - iconsurface -> h ) / 2); SDL_BlitSurface ( iconsurface, &src, sdl_realscreen, dest ); @@ -659,6 +680,21 @@ void ui_render ( unsigned int render_mask ) { desty += src.h; } + // show sub-app# on right side of cpu clock? + //if ( ui_selected -> ref -> subapp_number ) + { + sprintf ( buffer, "(app#%u)", ui_selected -> ref -> subapp_number ); + + SDL_Surface *rtext; + SDL_Color tmpfontcolor = { font_rgba_r, font_rgba_g, font_rgba_b, font_rgba_a }; + rtext = TTF_RenderText_Blended ( g_grid_font, buffer, tmpfontcolor ); + dest -> x = cell_offset_x + cell_width - rtext -> w; + dest -> y = desty - src.h; + SDL_BlitSurface ( rtext, NULL /* full src */, sdl_realscreen, dest ); + SDL_FreeSurface ( rtext ); + dest++; + } + // info hint if ( ui_selected -> ref -> clockspeed && ui_selected -> ref -> info_filename ) { -- 2.39.2