mirror of
https://github.com/ZDoom/qzdoom.git
synced 2025-02-25 21:31:09 +00:00
. added AFADoomer's patch to set a text highlight color for the list menu.
SVN r4301 (trunk)
This commit is contained in:
parent
9e3c6a3cc7
commit
890dc71e0d
3 changed files with 12 additions and 10 deletions
|
@ -495,12 +495,13 @@ bool FListMenuItemSelectable::MouseEvent(int type, int x, int y)
|
||||||
//
|
//
|
||||||
//=============================================================================
|
//=============================================================================
|
||||||
|
|
||||||
FListMenuItemText::FListMenuItemText(int x, int y, int height, int hotkey, const char *text, FFont *font, EColorRange color, FName child, int param)
|
FListMenuItemText::FListMenuItemText(int x, int y, int height, int hotkey, const char *text, FFont *font, EColorRange color, EColorRange color2, FName child, int param)
|
||||||
: FListMenuItemSelectable(x, y, height, child, param)
|
: FListMenuItemSelectable(x, y, height, child, param)
|
||||||
{
|
{
|
||||||
mText = ncopystring(text);
|
mText = ncopystring(text);
|
||||||
mFont = font;
|
mFont = font;
|
||||||
mColor = color;
|
mColor = color;
|
||||||
|
mColorSelected = color2;
|
||||||
mHotkey = hotkey;
|
mHotkey = hotkey;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -518,7 +519,7 @@ void FListMenuItemText::Drawer(bool selected)
|
||||||
if (text != NULL)
|
if (text != NULL)
|
||||||
{
|
{
|
||||||
if (*text == '$') text = GStrings(text+1);
|
if (*text == '$') text = GStrings(text+1);
|
||||||
screen->DrawText(mFont, mColor, mXpos, mYpos, text, DTA_Clean, true, TAG_DONE);
|
screen->DrawText(mFont, selected ? mColorSelected : mColor, mXpos, mYpos, text, DTA_Clean, true, TAG_DONE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -393,8 +393,9 @@ class FListMenuItemText : public FListMenuItemSelectable
|
||||||
const char *mText;
|
const char *mText;
|
||||||
FFont *mFont;
|
FFont *mFont;
|
||||||
EColorRange mColor;
|
EColorRange mColor;
|
||||||
|
EColorRange mColorSelected;
|
||||||
public:
|
public:
|
||||||
FListMenuItemText(int x, int y, int height, int hotkey, const char *text, FFont *font, EColorRange color, FName child, int param = 0);
|
FListMenuItemText(int x, int y, int height, int hotkey, const char *text, FFont *font, EColorRange color, EColorRange color2, FName child, int param = 0);
|
||||||
~FListMenuItemText();
|
~FListMenuItemText();
|
||||||
void Drawer(bool selected);
|
void Drawer(bool selected);
|
||||||
int GetWidth();
|
int GetWidth();
|
||||||
|
|
|
@ -324,7 +324,7 @@ static void ParseListMenuBody(FScanner &sc, FListMenuDescriptor *desc)
|
||||||
param = sc.Number;
|
param = sc.Number;
|
||||||
}
|
}
|
||||||
|
|
||||||
FListMenuItem *it = new FListMenuItemText(desc->mXpos, desc->mYpos, desc->mLinespacing, hotkey, text, desc->mFont, desc->mFontColor, action, param);
|
FListMenuItem *it = new FListMenuItemText(desc->mXpos, desc->mYpos, desc->mLinespacing, hotkey, text, desc->mFont, desc->mFontColor, desc->mFontColor2, action, param);
|
||||||
desc->mItems.Push(it);
|
desc->mItems.Push(it);
|
||||||
desc->mYpos += desc->mLinespacing;
|
desc->mYpos += desc->mLinespacing;
|
||||||
if (desc->mSelectedItem == -1) desc->mSelectedItem = desc->mItems.Size()-1;
|
if (desc->mSelectedItem == -1) desc->mSelectedItem = desc->mItems.Size()-1;
|
||||||
|
@ -976,7 +976,7 @@ static void BuildEpisodeMenu()
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
it = new FListMenuItemText(ld->mXpos, posy, ld->mLinespacing, AllEpisodes[i].mShortcut,
|
it = new FListMenuItemText(ld->mXpos, posy, ld->mLinespacing, AllEpisodes[i].mShortcut,
|
||||||
AllEpisodes[i].mEpisodeName, ld->mFont, ld->mFontColor, NAME_Skillmenu, i);
|
AllEpisodes[i].mEpisodeName, ld->mFont, ld->mFontColor, ld->mFontColor2, NAME_Skillmenu, i);
|
||||||
}
|
}
|
||||||
ld->mItems.Push(it);
|
ld->mItems.Push(it);
|
||||||
posy += ld->mLinespacing;
|
posy += ld->mLinespacing;
|
||||||
|
@ -1065,7 +1065,7 @@ static void BuildPlayerclassMenu()
|
||||||
{
|
{
|
||||||
// create a dummy item that auto-chooses the default class.
|
// create a dummy item that auto-chooses the default class.
|
||||||
FListMenuItemText *it = new FListMenuItemText(0, 0, 0, 'p', "player",
|
FListMenuItemText *it = new FListMenuItemText(0, 0, 0, 'p', "player",
|
||||||
ld->mFont,ld->mFontColor, NAME_Episodemenu, -1000);
|
ld->mFont,ld->mFontColor, ld->mFontColor2, NAME_Episodemenu, -1000);
|
||||||
ld->mAutoselect = ld->mItems.Push(it);
|
ld->mAutoselect = ld->mItems.Push(it);
|
||||||
success = true;
|
success = true;
|
||||||
}
|
}
|
||||||
|
@ -1091,7 +1091,7 @@ static void BuildPlayerclassMenu()
|
||||||
if (pname != NULL)
|
if (pname != NULL)
|
||||||
{
|
{
|
||||||
FListMenuItemText *it = new FListMenuItemText(ld->mXpos, ld->mYpos, ld->mLinespacing, *pname,
|
FListMenuItemText *it = new FListMenuItemText(ld->mXpos, ld->mYpos, ld->mLinespacing, *pname,
|
||||||
pname, ld->mFont,ld->mFontColor, NAME_Episodemenu, i);
|
pname, ld->mFont,ld->mFontColor,ld->mFontColor2, NAME_Episodemenu, i);
|
||||||
ld->mItems.Push(it);
|
ld->mItems.Push(it);
|
||||||
ld->mYpos += ld->mLinespacing;
|
ld->mYpos += ld->mLinespacing;
|
||||||
n++;
|
n++;
|
||||||
|
@ -1101,7 +1101,7 @@ static void BuildPlayerclassMenu()
|
||||||
if (n > 1 && !gameinfo.norandomplayerclass)
|
if (n > 1 && !gameinfo.norandomplayerclass)
|
||||||
{
|
{
|
||||||
FListMenuItemText *it = new FListMenuItemText(ld->mXpos, ld->mYpos, ld->mLinespacing, 'r',
|
FListMenuItemText *it = new FListMenuItemText(ld->mXpos, ld->mYpos, ld->mLinespacing, 'r',
|
||||||
"$MNU_RANDOM", ld->mFont,ld->mFontColor, NAME_Episodemenu, -1);
|
"$MNU_RANDOM", ld->mFont,ld->mFontColor,ld->mFontColor2, NAME_Episodemenu, -1);
|
||||||
ld->mItems.Push(it);
|
ld->mItems.Push(it);
|
||||||
}
|
}
|
||||||
if (n == 0)
|
if (n == 0)
|
||||||
|
@ -1110,7 +1110,7 @@ static void BuildPlayerclassMenu()
|
||||||
if (pname != NULL)
|
if (pname != NULL)
|
||||||
{
|
{
|
||||||
FListMenuItemText *it = new FListMenuItemText(ld->mXpos, ld->mYpos, ld->mLinespacing, *pname,
|
FListMenuItemText *it = new FListMenuItemText(ld->mXpos, ld->mYpos, ld->mLinespacing, *pname,
|
||||||
pname, ld->mFont,ld->mFontColor, NAME_Episodemenu, 0);
|
pname, ld->mFont,ld->mFontColor,ld->mFontColor2, NAME_Episodemenu, 0);
|
||||||
ld->mItems.Push(it);
|
ld->mItems.Push(it);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1369,7 +1369,7 @@ void M_StartupSkillMenu(FGameStartup *gs)
|
||||||
EColorRange color = (EColorRange)skill.GetTextColor();
|
EColorRange color = (EColorRange)skill.GetTextColor();
|
||||||
if (color == CR_UNTRANSLATED) color = ld->mFontColor;
|
if (color == CR_UNTRANSLATED) color = ld->mFontColor;
|
||||||
li = new FListMenuItemText(x, y, ld->mLinespacing, skill.Shortcut,
|
li = new FListMenuItemText(x, y, ld->mLinespacing, skill.Shortcut,
|
||||||
pItemText? *pItemText : skill.MenuName, ld->mFont, color, action, i);
|
pItemText? *pItemText : skill.MenuName, ld->mFont, color,ld->mFontColor2, action, i);
|
||||||
}
|
}
|
||||||
ld->mItems.Push(li);
|
ld->mItems.Push(li);
|
||||||
y += ld->mLinespacing;
|
y += ld->mLinespacing;
|
||||||
|
|
Loading…
Reference in a new issue