From bfe31868013a32d7649b075265e119c0c4f5abe6 Mon Sep 17 00:00:00 2001 From: ulion Date: Thu, 20 Dec 2007 02:17:29 +0000 Subject: Add local variable 'line_h' to simplify code of function menu_list_draw. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25465 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmenu/menu_list.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'libmenu') diff --git a/libmenu/menu_list.c b/libmenu/menu_list.c index 27c722cf2c..8c83b06bec 100644 --- a/libmenu/menu_list.c +++ b/libmenu/menu_list.c @@ -31,6 +31,7 @@ void menu_list_draw(menu_t* menu,mp_image_t* mpi) { int need_h = 0,need_w = 0,ptr_l,sidx = 0; int th,count = 0; int bg_w; + int line_h; list_entry_t* m; if(mpriv->count < 1) @@ -45,7 +46,8 @@ void menu_list_draw(menu_t* menu,mp_image_t* mpi) { if(h - vo_font->height <= 0 || w - ptr_l <= 0 || dw <= 0 || dh <= 0) return; - th = menu_text_num_lines(mpriv->title,dw) * (mpriv->vspace + vo_font->height) + mpriv->vspace; + line_h = mpriv->vspace + vo_font->height; + th = menu_text_num_lines(mpriv->title,dw) * line_h + mpriv->vspace; // the selected item is hidden, find a visible one if(mpriv->current->hide) { @@ -75,17 +77,17 @@ void menu_list_draw(menu_t* menu,mp_image_t* mpi) { else y = mpriv->minb; - need_h = count * (mpriv->vspace + vo_font->height) - mpriv->vspace; + need_h = count * line_h - mpriv->vspace; if( need_h + th > dh) { int start,end; - mpriv->disp_lines = (dh + mpriv->vspace - th) / (mpriv->vspace + vo_font->height); + mpriv->disp_lines = (dh + mpriv->vspace - th) / line_h; if(mpriv->disp_lines < 4) { th = 0; - mpriv->disp_lines = (dh + mpriv->vspace) / ( vo_font->height + mpriv->vspace); + mpriv->disp_lines = (dh + mpriv->vspace) / line_h; } // Too smoll if(mpriv->disp_lines < 1) return; - need_h = mpriv->disp_lines*(mpriv->vspace + vo_font->height) - mpriv->vspace; + need_h = mpriv->disp_lines * line_h - mpriv->vspace; start = sidx - (mpriv->disp_lines/2); if(start < 0) start = 0; @@ -129,7 +131,7 @@ void menu_list_draw(menu_t* menu,mp_image_t* mpi) { if(mpriv->ptr_bg >= 0) menu_draw_box(mpi,mpriv->ptr_bg,mpriv->ptr_bg_alpha, x < 0 ? (mpi->w-bg_w)/2 : x-mpriv->minb,dy+y-mpriv->vspace/2, - bg_w,vo_font->height + mpriv->vspace); + bg_w, line_h); if(ptr_l > 0) menu_draw_text_full(mpi,mpriv->ptr, x < 0 ? (mpi->w - need_w) / 2 + ptr_l : x, @@ -140,14 +142,14 @@ void menu_list_draw(menu_t* menu,mp_image_t* mpi) { } else if(mpriv->item_bg >= 0) menu_draw_box(mpi,mpriv->item_bg,mpriv->item_bg_alpha, x < 0 ? (mpi->w-bg_w)/2 : x-mpriv->minb,dy+y-mpriv->vspace/2, - bg_w,vo_font->height + mpriv->vspace); + bg_w, line_h); menu_draw_text_full(mpi,m->txt, x < 0 ? (mpi->w - need_w) / 2 + ptr_l : x + ptr_l, dy+y,dw-ptr_l,dh - dy, mpriv->vspace,0, MENU_TEXT_TOP|MENU_TEXT_LEFT, MENU_TEXT_TOP|MENU_TEXT_LEFT); - dy += vo_font->height + mpriv->vspace; + dy += line_h; } } -- cgit v1.2.3