From bfe31868013a32d7649b075265e119c0c4f5abe6 Mon Sep 17 00:00:00 2001
From: ulion <ulion@b3059339-0415-0410-9bf9-f77b7e298cf2>
Date: Thu, 20 Dec 2007 02:17:29 +0000
Subject: [PATCH] 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(-)

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;
   }
 
 }