From a7035a932f15d63e633d0bcff5309422d6491236 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Wed, 7 Oct 2020 00:03:05 +0200 Subject: [PATCH] - added a DrawSelector hook to the customizer. --- wadsrc/static/zscript/games/blood/ui/menu.zs | 6 ++++++ wadsrc/static/zscript/ui/menu/listmenu.zs | 5 ++++- wadsrc/static/zscript/ui/menu/menucustomize.zs | 7 +++++++ 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/wadsrc/static/zscript/games/blood/ui/menu.zs b/wadsrc/static/zscript/games/blood/ui/menu.zs index e9724f394..7ce4d4c6c 100644 --- a/wadsrc/static/zscript/games/blood/ui/menu.zs +++ b/wadsrc/static/zscript/games/blood/ui/menu.zs @@ -29,6 +29,12 @@ class MenuCustomizerBlood : MenuCustomize int h = texid.isValid()? texsize.Y : fonth; return int((y+h) * fh / 200); // This must be the covered height of the header in true pixels. } + + override bool DrawSelector(ListMenuDescriptor desc) + { + return true; // do not draw any selector. + } + } //------------------------------------------------------------------------------------------- diff --git a/wadsrc/static/zscript/ui/menu/listmenu.zs b/wadsrc/static/zscript/ui/menu/listmenu.zs index 74efc6bd4..786171e6a 100644 --- a/wadsrc/static/zscript/ui/menu/listmenu.zs +++ b/wadsrc/static/zscript/ui/menu/listmenu.zs @@ -268,7 +268,10 @@ class ListMenu : Menu if (mDesc.mItems[i].mEnabled) mDesc.mItems[i].Draw(mDesc.mSelectedItem == i, mDesc); } if (mDesc.mSelectedItem >= 0 && mDesc.mSelectedItem < mDesc.mItems.Size()) - mDesc.mItems[mDesc.mSelectedItem].DrawSelector(mDesc.mSelectOfsX, mDesc.mSelectOfsY, mDesc.mSelector, mDesc); + { + if (!menuCustomizer.DrawSelector(mDesc)) + mDesc.mItems[mDesc.mSelectedItem].DrawSelector(mDesc.mSelectOfsX, mDesc.mSelectOfsY, mDesc.mSelector, mDesc); + } Super.Drawer(); } diff --git a/wadsrc/static/zscript/ui/menu/menucustomize.zs b/wadsrc/static/zscript/ui/menu/menucustomize.zs index 06018682d..de0b1357b 100644 --- a/wadsrc/static/zscript/ui/menu/menucustomize.zs +++ b/wadsrc/static/zscript/ui/menu/menucustomize.zs @@ -7,4 +7,11 @@ class MenuCustomize screen.DrawText(fnt, OptionMenuSettings.mTitleColor, (screen.GetWidth() - fnt.StringWidth(title) * CleanXfac_1) / 2, 10 * CleanYfac_1, title, DTA_CleanNoMove_1, true); return (y + fnt.GetHeight()) * CleanYfac_1; // return is spacing in screen pixels. } + + virtual bool DrawSelector(ListMenuDescriptor desc) + { + return false; + } + + }