(menuframework_s menu)
| 4432 | } |
| 4433 | |
| 4434 | static void Menu_Draw(menuframework_s menu) { |
| 4435 | int i; |
| 4436 | menucommon_s item; |
| 4437 | |
| 4438 | /* |
| 4439 | * * draw contents |
| 4440 | */ |
| 4441 | for (i = 0; i < menu.nitems; i++) { |
| 4442 | switch (((menucommon_s) menu.items[i]).type) { |
| 4443 | case MTYPE_FIELD: |
| 4444 | Field_Draw((menufield_s) menu.items[i]); |
| 4445 | break; |
| 4446 | case MTYPE_SLIDER: |
| 4447 | Slider_Draw((menuslider_s) menu.items[i]); |
| 4448 | break; |
| 4449 | case MTYPE_LIST: |
| 4450 | MenuList_Draw((menulist_s) menu.items[i]); |
| 4451 | break; |
| 4452 | case MTYPE_SPINCONTROL: |
| 4453 | SpinControl_Draw((menulist_s) menu.items[i]); |
| 4454 | break; |
| 4455 | case MTYPE_ACTION: |
| 4456 | Action_Draw((menuaction_s) menu.items[i]); |
| 4457 | break; |
| 4458 | case MTYPE_SEPARATOR: |
| 4459 | Separator_Draw((menuseparator_s) menu.items[i]); |
| 4460 | break; |
| 4461 | } |
| 4462 | } |
| 4463 | |
| 4464 | item = Menu_ItemAtCursor(menu); |
| 4465 | |
| 4466 | if (item != null && item.cursordraw != null) { |
| 4467 | item.cursordraw.execute(item); |
| 4468 | } else if (menu.cursordraw != null) { |
| 4469 | menu.cursordraw.execute(menu); |
| 4470 | } else if (item != null && item.type != MTYPE_FIELD) { |
| 4471 | if ((item.flags & QMF_LEFT_JUSTIFY) != 0) { |
| 4472 | ClientGlobals.re.DrawChar(menu.x + item.x - 24 + item.cursor_offset, menu.y |
| 4473 | + item.y, 12 + ((int) (Timer.Milliseconds() / 250) & 1)); |
| 4474 | } else { |
| 4475 | ClientGlobals.re.DrawChar(menu.x + item.cursor_offset, menu.y + item.y, |
| 4476 | 12 + ((int) (Timer.Milliseconds() / 250) & 1)); |
| 4477 | } |
| 4478 | } |
| 4479 | |
| 4480 | if (item != null) { |
| 4481 | if (item.statusbarfunc != null) |
| 4482 | item.statusbarfunc.execute(item); |
| 4483 | else if (item.statusbar != null) |
| 4484 | Menu_DrawStatusBar(item.statusbar); |
| 4485 | else |
| 4486 | Menu_DrawStatusBar(menu.statusbar); |
| 4487 | |
| 4488 | } else { |
| 4489 | Menu_DrawStatusBar(menu.statusbar); |
| 4490 | } |
| 4491 | } |
no test coverage detected