X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fgui%2Fmenu.c;h=556985f645a3ed7cf6c832f88f4664c2e0395122;hb=08eb84f9adca434cbc682642aea5f3a7aea17187;hp=6874e3c4b5d4853f1048e83d01825c7cbb3f9fd0;hpb=4c53946de9c068b07dcb5fb643c270dc608fe179;p=bertos.git diff --git a/bertos/gui/menu.c b/bertos/gui/menu.c index 6874e3c4..556985f6 100644 --- a/bertos/gui/menu.c +++ b/bertos/gui/menu.c @@ -26,13 +26,11 @@ * invalidate any other reasons why the executable file might be covered by * the GNU General Public License. * - * Copyright 2003, 2004, 2006 Develer S.r.l. (http://www.develer.com/) + * Copyright 2003, 2004, 2006, 2010 Develer S.r.l. (http://www.develer.com/) * Copyright 2000 Bernie Innocenti * * --> * - * \version $Id$ - * * \author Bernie Innocenti * \author Stefano Fedrigo * @@ -41,7 +39,9 @@ #include "menu.h" -#include "cfg/cfg_gfx.h" +#include "cfg/cfg_menu.h" +#include "cfg/cfg_arch.h" + #include #include @@ -57,10 +57,6 @@ #include /* strncpy_P() */ #endif -#if CONFIG_MENU_SMOOTH -#include -#endif - #if (CONFIG_MENU_TIMEOUT != 0) #include #endif @@ -196,13 +192,11 @@ static void menu_layout( ypos = bm->cr.ymin; -#if 1 if (redraw) { /* Clear screen */ text_clear(menu->bitmap); } -#endif if (title) { @@ -276,6 +270,9 @@ static void menu_layout( if (!(item->flags & MIF_HIDDEN)) { /* Check if a special render function is supplied, otherwise use defaults */ + #if (ARCH & ARCH_NIGHTTEST) + #warning __FILTER_NEXT_WARNING__ + #endif RenderHook renderhook = (item->flags & MIF_RENDERHOOK) ? (RenderHook)item->label : menu_defaultRenderHook; /* Render menuitem */ @@ -291,7 +288,7 @@ static void menu_layout( /* Clear rest of area */ gfx_rectClear(bm, bm->cr.xmin, ypos, bm->cr.xmax, bm->cr.ymax); - lcd_blitBitmap(&lcd_bitmap); + menu->lcd_blitBitmap(bm); } /* Restore old cliprect */ @@ -438,7 +435,7 @@ iptr_t menu_handle(const struct Menu *menu) items_per_page = - (menu->bitmap->height / menu->bitmap->font->height) + (menu->bitmap->height / menu->bitmap->font->height - 1) #if CONFIG_MENU_MENUBAR - 1 /* menu bar labels */ #endif @@ -538,6 +535,9 @@ iptr_t menu_handle(const struct Menu *menu) /* Store currently selected item before leaving. */ if (menu->flags & MF_SAVESEL) + #if (ARCH & ARCH_NIGHTTEST) + #warning __FILTER_NEXT_WARNING__ + #endif CONST_CAST(struct Menu *, menu)->selected = selected; return result;