1.1 --- a/core/MenuManager.cpp Tue Jul 24 22:20:58 2007 +0000
1.2 +++ b/core/MenuManager.cpp Wed Jul 25 01:18:11 2007 +0000
1.3 @@ -187,9 +187,9 @@
1.4 m_pHandler->OnMenuDisplay(menu, client, display);
1.5 }
1.6
1.7 -void VoteMenuHandler::OnMenuDisplayItem(IBaseMenu *menu, int client, unsigned int item, const char **display)
1.8 +unsigned int VoteMenuHandler::OnMenuDisplayItem(IBaseMenu *menu, int client, IMenuPanel *panel, unsigned int item, const ItemDrawInfo &dr)
1.9 {
1.10 - m_pHandler->OnMenuDisplayItem(menu, client, item, display);
1.11 + return m_pHandler->OnMenuDisplayItem(menu, client, panel, item, dr);
1.12 }
1.13
1.14 void VoteMenuHandler::OnMenuDrawItem(IBaseMenu *menu, int client, unsigned int item, unsigned int &style)
1.15 @@ -594,8 +594,11 @@
1.16 for (unsigned int i=0; i<foundItems; i++)
1.17 {
1.18 ItemDrawInfo &dr = drawItems[i].draw;
1.19 - mh->OnMenuDisplayItem(menu, client, drawItems[i].position, &(dr.display));
1.20 - if ((position = display->DrawItem(dr)) != 0)
1.21 + if ((position = mh->OnMenuDisplayItem(menu, client, display, drawItems[i].position, dr)) == 0)
1.22 + {
1.23 + position = display->DrawItem(dr);
1.24 + }
1.25 + if (position != 0)
1.26 {
1.27 slots[position].item = drawItems[i].position;
1.28 slots[position].type = ItemSel_Item;
1.29 @@ -609,7 +612,10 @@
1.30 while (i--)
1.31 {
1.32 ItemDrawInfo &dr = drawItems[i].draw;
1.33 - mh->OnMenuDisplayItem(menu, client, drawItems[i].position, &(dr.display));
1.34 + if ((position = mh->OnMenuDisplayItem(menu, client, display, drawItems[i].position, dr)) == 0)
1.35 + {
1.36 + position = display->DrawItem(dr);
1.37 + }
1.38 if ((position = display->DrawItem(dr)) != 0)
1.39 {
1.40 slots[position].item = drawItems[i].position;