working on options menu, almost done
This commit is contained in:
@@ -53,6 +53,7 @@ void Menu::init(std::string name, int x, int y, int backgroundType)
|
||||
mCenterX = x + ((SCREEN_WIDTH - x) / 2);
|
||||
mCenterY = y + ((SCREEN_HEIGHT - y) / 2);
|
||||
mWidestItem = 0;
|
||||
mColorGreyed = {128, 128, 128};
|
||||
|
||||
// Selector
|
||||
mSelector.origin = 0;
|
||||
@@ -275,10 +276,19 @@ void Menu::render()
|
||||
const color_t color = {mSelector.itemR, mSelector.itemG, mSelector.itemB};
|
||||
mText->writeColored(mItem[i].x, mItem[i].y, mItem[i].label, color);
|
||||
}
|
||||
else
|
||||
else if (mItem[i].selectable)
|
||||
{
|
||||
mText->write(mItem[i].x, mItem[i].y, mItem[i].label);
|
||||
}
|
||||
else if (mItem[i].greyed)
|
||||
{
|
||||
mText->writeColored(mItem[i].x, mItem[i].y, mItem[i].label, mColorGreyed);
|
||||
}
|
||||
//else // no selectable
|
||||
//{
|
||||
// const color_t color = {mSelector.itemR, mSelector.itemG, mSelector.itemB};
|
||||
// mText->writeColored(mItem[i].x, mItem[i].y, mItem[i].label, color);
|
||||
//}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -501,4 +511,16 @@ void Menu::replaceElementsOnY()
|
||||
{
|
||||
mItem[i].y = mItem[i - 1].y + mItem[i - 1].h + mItem[i - 1].hPaddingDown;
|
||||
}
|
||||
}
|
||||
|
||||
// Establece el estado seleccionable de un item
|
||||
void Menu::setSelectable(Uint8 index, bool value)
|
||||
{
|
||||
mItem[index].selectable = value;
|
||||
}
|
||||
|
||||
// Establece el estado agrisado de un item
|
||||
void Menu::setGreyed(Uint8 index, bool value)
|
||||
{
|
||||
mItem[index].greyed = value;
|
||||
}
|
||||
Reference in New Issue
Block a user