Show tooltips on top

git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@8001 178a84e3-b1eb-0310-8ba1-8eac791a3b58
This commit is contained in:
auria 2011-03-20 19:17:04 +00:00
parent f7c96c56aa
commit 2634dd6e74
3 changed files with 21 additions and 1 deletions

View File

@ -989,6 +989,12 @@ namespace GUIEngine
World::getWorld()->getRaceGUI()->renderGlobal(elapsed_time);
}
if (gamestate == MENU || gamestate == INGAME_MENU)
{
g_skin->drawTooltips();
}
if (gamestate != GAME && !gui_messages.empty())
{
core::dimension2d<u32> screen_size = irr_driver->getFrameSize();

View File

@ -1050,7 +1050,7 @@ void Skin::drawSpinnerBody(const core::rect< s32 > &rect, Widget* widget, const
if (focused && widget->hasTooltip())
{
drawTooltip(widget);
m_tooltips.push_back(widget);
}
}
@ -1372,6 +1372,15 @@ void Skin::drawScrollbarButton(const irr::core::rect< irr::s32 > &rect, const bo
}
void Skin::drawTooltips()
{
for (unsigned int n=0; n<m_tooltips.size(); n++)
{
drawTooltip(m_tooltips[n]);
}
m_tooltips.clear();
}
void Skin::drawTooltip(Widget* widget)
{
irr::gui::ScalableFont* font = GUIEngine::getSmallFont();

View File

@ -242,6 +242,9 @@ namespace GUIEngine
irr::video::ITexture* bg_image;
std::vector<Widget*> m_tooltips;
#ifdef USE_PER_LINE_BACKGROUND
public:
#endif
@ -319,6 +322,8 @@ namespace GUIEngine
virtual void setSize (irr::gui::EGUI_DEFAULT_SIZE which, irr::s32 size);
virtual void setSpriteBank (irr::gui::IGUISpriteBank *bank);
void drawTooltips();
static irr::video::SColor getColor(const std::string name);
};