diff options
| author | Jakob Fries <jakob.fries@gmail.com> | 2007-12-21 23:23:22 +0000 |
|---|---|---|
| committer | Jakob Fries <jakob.fries@gmail.com> | 2007-12-21 23:23:22 +0000 |
| commit | 87b89138f42bbc1a276c4e92429ce651500e871c (patch) | |
| tree | bef4f52705094cb96c93f714c607831383429395 /src/game/client/gc_menu.cpp | |
| parent | 213d194c3bf49d21b05c59e63a04cb5b5fba5613 (diff) | |
| download | zcatch-87b89138f42bbc1a276c4e92429ce651500e871c.tar.gz zcatch-87b89138f42bbc1a276c4e92429ce651500e871c.zip | |
you can now click the name area of server details to join
Diffstat (limited to 'src/game/client/gc_menu.cpp')
| -rw-r--r-- | src/game/client/gc_menu.cpp | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/game/client/gc_menu.cpp b/src/game/client/gc_menu.cpp index 9a74e75b..fdb3f755 100644 --- a/src/game/client/gc_menu.cpp +++ b/src/game/client/gc_menu.cpp @@ -1040,6 +1040,7 @@ static void menu2_render_serverbrowser(RECT main_view) int item_index = i; SERVER_INFO *item = client_serverbrowse_sorted_get(item_index); RECT row; + RECT select_hit_box; int l = selected_index==item_index; @@ -1050,6 +1051,8 @@ static void menu2_render_serverbrowser(RECT main_view) int h = (item->num_players+2)/3; ui2_hsplit_t(&view, 25.0f+h*15.0f, &whole, &view); + + select_hit_box = whole; RECT r = whole; ui2_margin(&r, 1.5f, &r); @@ -1057,6 +1060,7 @@ static void menu2_render_serverbrowser(RECT main_view) ui2_hsplit_t(&whole, 20.0f, &row, &whole); ui2_vsplit_l(&whole, 50.0f, 0, &whole); + for(int p = 0; p < item->num_players; p+=3) { @@ -1084,19 +1088,21 @@ static void menu2_render_serverbrowser(RECT main_view) //k += h*3/4; } else + { ui2_hsplit_t(&view, 20.0f, &row, &view); + select_hit_box = row; + } // make sure that only those in view can be selected if(row.y+row.h > original_view.y) { - RECT temp = row; - if(row.y < original_view.y) // clip the selection + if(select_hit_box.y < original_view.y) // clip the selection { - temp.h -= original_view.y-temp.y; - temp.y = original_view.y; + select_hit_box.h -= original_view.y-select_hit_box.y; + select_hit_box.y = original_view.y; } - if(ui2_do_button(item, "", l, &temp, 0, 0)) + if(ui2_do_button(item, "", l, &select_hit_box, 0, 0)) { new_selected = item_index; dbg_msg("dbg", "addr = %s", item->address); |