mirror of
https://github.com/ZDoom/qzdoom.git
synced 2025-01-18 07:02:03 +00:00
- Remove LabelOffset from menus entirely and just compute things so that the console font and
small font, when mixed on the same line, align at their baselines. SVN r3786 (trunk)
This commit is contained in:
parent
2b0cc30f7c
commit
10f1281977
6 changed files with 16 additions and 21 deletions
|
@ -139,7 +139,6 @@ struct FOptionMenuSettings
|
|||
EColorRange mFontColorHighlight;
|
||||
EColorRange mFontColorSelection;
|
||||
int mLinespacing;
|
||||
int mLabelOffset;
|
||||
};
|
||||
|
||||
struct FOptionMenuDescriptor : public FMenuDescriptor
|
||||
|
|
|
@ -605,7 +605,7 @@ static void ParseOptionSettings(FScanner &sc)
|
|||
else if (sc.Compare("LabelOffset"))
|
||||
{
|
||||
sc.MustGetNumber();
|
||||
OptionSettings.mLabelOffset = sc.Number;
|
||||
// ignored
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -214,7 +214,7 @@ void DMessageBoxMenu::Drawer ()
|
|||
{
|
||||
screen->DrawText(ConFont, OptionSettings.mFontColorSelection,
|
||||
(150 - 160) * CleanXfac + screen->GetWidth() / 2,
|
||||
(y + (fontheight + 1) * messageSelection - 100) * CleanYfac + screen->GetHeight() / 2,
|
||||
(y + (fontheight + 1) * messageSelection - 100 + fontheight/2 - 5) * CleanYfac + screen->GetHeight() / 2,
|
||||
"\xd",
|
||||
DTA_CellX, 8 * CleanXfac,
|
||||
DTA_CellY, 8 * CleanYfac,
|
||||
|
|
|
@ -398,8 +398,6 @@ void DOptionMenu::Drawer ()
|
|||
}
|
||||
}
|
||||
mDesc->mDrawTop = y;
|
||||
//int labelofs = OptionSettings.mLabelOffset * CleanXfac_1;
|
||||
//int cursorspace = 14 * CleanXfac_1;
|
||||
int fontheight = OptionSettings.mLinespacing * CleanYfac_1;
|
||||
y *= CleanYfac_1;
|
||||
|
||||
|
@ -449,11 +447,11 @@ void DOptionMenu::Drawer ()
|
|||
|
||||
if (CanScrollUp)
|
||||
{
|
||||
M_DrawConText(CR_ORANGE, 3 * CleanXfac_1, ytop + OptionSettings.mLabelOffset, "\x1a");
|
||||
M_DrawConText(CR_ORANGE, 3 * CleanXfac_1, ytop, "\x1a");
|
||||
}
|
||||
if (CanScrollDown)
|
||||
{
|
||||
M_DrawConText(CR_ORANGE, 3 * CleanXfac_1, y - 8*CleanYfac_1 + OptionSettings.mLabelOffset, "\x1b");
|
||||
M_DrawConText(CR_ORANGE, 3 * CleanXfac_1, y - 8*CleanYfac_1, "\x1b");
|
||||
}
|
||||
Super::Drawer();
|
||||
}
|
||||
|
|
|
@ -407,11 +407,11 @@ public:
|
|||
C_NameKeys (description, Key1, Key2);
|
||||
if (description[0])
|
||||
{
|
||||
M_DrawConText(CR_WHITE, indent + CURSORSPACE, y-1+OptionSettings.mLabelOffset, description);
|
||||
M_DrawConText(CR_WHITE, indent + CURSORSPACE, y + (OptionSettings.mLinespacing-8)*CleanYfac_1, description);
|
||||
}
|
||||
else
|
||||
{
|
||||
screen->DrawText(SmallFont, CR_BLACK, indent + CURSORSPACE, y + OptionSettings.mLabelOffset, "---",
|
||||
screen->DrawText(SmallFont, CR_BLACK, indent + CURSORSPACE, y + (OptionSettings.mLinespacing-8)*CleanYfac_1, "---",
|
||||
DTA_CleanNoMove_1, true, TAG_DONE);
|
||||
}
|
||||
return indent;
|
||||
|
@ -569,12 +569,13 @@ public:
|
|||
//
|
||||
//=============================================================================
|
||||
|
||||
void DrawSlider (int x, int y, double min, double max, double cur,int fracdigits, int indent)
|
||||
void DrawSlider (int x, int y, double min, double max, double cur, int fracdigits, int indent)
|
||||
{
|
||||
char textbuf[16];
|
||||
double range;
|
||||
int maxlen = 0;
|
||||
int right = x + (12*8 + 4) * CleanXfac_1;
|
||||
int cy = y + (OptionSettings.mLinespacing-8)*CleanYfac_1;
|
||||
|
||||
range = max - min;
|
||||
double ccur = clamp(cur, min, max) - min;
|
||||
|
@ -589,14 +590,14 @@ public:
|
|||
|
||||
if (!mSliderShort)
|
||||
{
|
||||
M_DrawConText(CR_WHITE, x, y, "\x10\x11\x11\x11\x11\x11\x11\x11\x11\x11\x11\x12");
|
||||
M_DrawConText(CR_ORANGE, x + int((5 + ((ccur * 78) / range)) * CleanXfac_1), y, "\x13");
|
||||
M_DrawConText(CR_WHITE, x, cy, "\x10\x11\x11\x11\x11\x11\x11\x11\x11\x11\x11\x12");
|
||||
M_DrawConText(CR_ORANGE, x + int((5 + ((ccur * 78) / range)) * CleanXfac_1), cy, "\x13");
|
||||
}
|
||||
else
|
||||
{
|
||||
// On 320x200 we need a shorter slider
|
||||
M_DrawConText(CR_WHITE, x, y, "\x10\x11\x11\x11\x11\x11\x12");
|
||||
M_DrawConText(CR_ORANGE, x + int((5 + ((ccur * 38) / range)) * CleanXfac_1), y, "\x13");
|
||||
M_DrawConText(CR_WHITE, x, cy, "\x10\x11\x11\x11\x11\x11\x12");
|
||||
M_DrawConText(CR_ORANGE, x + int((5 + ((ccur * 38) / range)) * CleanXfac_1), cy, "\x13");
|
||||
right -= 5*8*CleanXfac_1;
|
||||
}
|
||||
|
||||
|
@ -613,7 +614,7 @@ public:
|
|||
{
|
||||
drawLabel(indent, y, selected? OptionSettings.mFontColorSelection : OptionSettings.mFontColor);
|
||||
mDrawX = indent + CURSORSPACE;
|
||||
DrawSlider (mDrawX, y + OptionSettings.mLabelOffset, mMin, mMax, GetValue(), mShowValue, indent);
|
||||
DrawSlider (mDrawX, y, mMin, mMax, GetValue(), mShowValue, indent);
|
||||
return indent;
|
||||
}
|
||||
|
||||
|
@ -777,8 +778,8 @@ public:
|
|||
if (mCVar != NULL)
|
||||
{
|
||||
int box_x = indent + CURSORSPACE;
|
||||
int box_y = y + OptionSettings.mLabelOffset * CleanYfac_1 / 2;
|
||||
screen->Clear (box_x, box_y, box_x + 32*CleanXfac_1, box_y + (SmallFont->GetHeight() - 1) * CleanYfac_1,
|
||||
int box_y = y + CleanYfac_1;
|
||||
screen->Clear (box_x, box_y, box_x + 32*CleanXfac_1, box_y + OptionSettings.mLinespacing*CleanYfac_1,
|
||||
-1, (uint32)*mCVar | 0xff000000);
|
||||
}
|
||||
return indent;
|
||||
|
|
|
@ -926,7 +926,6 @@ public:
|
|||
const char *speakerName;
|
||||
int x, y, linesize;
|
||||
int width, fontheight;
|
||||
int labelofs;
|
||||
|
||||
player_t *cp = &players[consoleplayer];
|
||||
|
||||
|
@ -1015,8 +1014,6 @@ public:
|
|||
}
|
||||
|
||||
y = mYpos;
|
||||
labelofs = OptionSettings.mLabelOffset;
|
||||
y -= labelofs;
|
||||
fontheight = OptionSettings.mLinespacing;
|
||||
|
||||
int response = 0;
|
||||
|
@ -1041,7 +1038,7 @@ public:
|
|||
int color = ((DMenu::MenuTime%8) < 4) || DMenu::CurrentMenu != this ? CR_RED:CR_GREY;
|
||||
|
||||
x = (50 + 3 - 160) * CleanXfac + screen->GetWidth() / 2;
|
||||
int yy = (y-1+labelofs - 100) * CleanYfac + screen->GetHeight() / 2;
|
||||
int yy = (y + fontheight/2 - 5 - 100) * CleanYfac + screen->GetHeight() / 2;
|
||||
screen->DrawText (ConFont, color, x, yy, "\xd",
|
||||
DTA_CellX, 8 * CleanXfac,
|
||||
DTA_CellY, 8 * CleanYfac,
|
||||
|
|
Loading…
Reference in a new issue