- trim long deck names in deck editor/ deck selection
- fixed a bug were the background was rendered in the items loop of the deck selection screen
This commit is contained in:
wagic.the.homebrew@gmail.com
2010-11-14 02:25:01 +00:00
parent b934f0a5ab
commit e758c7eea1
3 changed files with 22 additions and 17 deletions

View File

@@ -4,6 +4,7 @@
#include "Translate.h"
#include "WResourceManager.h"
#define ITEM_PX_WIDTH 190.f
DeckMenuItem::DeckMenuItem(DeckMenu* _parent, int id, int fontId, string text, float x, float y, bool hasFocus, bool autoTranslate, DeckMetaData *deckMetaData)
: JGuiObject(id), parent(_parent), fontId(fontId), mX(x), mY(y)
@@ -12,8 +13,14 @@ DeckMenuItem::DeckMenuItem(DeckMenu* _parent, int id, int fontId, string text, f
mText = _(text);
else
mText = text;
mHasFocus = hasFocus;
//trim the string so that its width fits in the background.
//in the future we might want to replace this with a horizontal scrolling of long strings
WFont * mFont = resources.GetWFont(fontId);
while (mFont->GetStringWidth(mText.c_str()) > ITEM_PX_WIDTH)
mText.erase(mText.size()-1);
mHasFocus = hasFocus;
if (hasFocus)
Entering();
@@ -29,8 +36,7 @@ DeckMenuItem::DeckMenuItem(DeckMenu* _parent, int id, int fontId, string text, f
void DeckMenuItem::RenderWithOffset(float yOffset)
{
WFont * mFont = resources.GetWFont(fontId);
string displayName = mText;
mFont->DrawString(displayName.c_str(), mX, mY + yOffset, JGETEXT_CENTER);
mFont->DrawString(mText.c_str(), mX, mY + yOffset, JGETEXT_CENTER);
}
void DeckMenuItem::Render()