mirror of
https://github.com/CloverHackyColor/CloverBootloader.git
synced 2025-02-23 02:11:54 +01:00
Moved DriveImage and BadgeImage down the hierarchy because only loader
use them.
This commit is contained in:
parent
dec25e954e
commit
2de3b84957
@ -472,7 +472,7 @@ GetBootFromOption(VOID)
|
||||
// check if this entry corresponds to Boot# variable and then set BootCurrent
|
||||
//
|
||||
VOID
|
||||
SetBootCurrent(REFIT_MENU_ENTRY_LOADER *Entry)
|
||||
SetBootCurrent(REFIT_MENU_ITEM_ABSTRACT_ENTRY_LOADER *Entry)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
BO_BOOT_OPTION BootOption;
|
||||
|
@ -12,7 +12,7 @@ SetDevices (
|
||||
// check if this entry corresponds to Boot# variable and then set BootCurrent
|
||||
//
|
||||
VOID
|
||||
SetBootCurrent(REFIT_MENU_ENTRY_LOADER *LoadedEntry);
|
||||
SetBootCurrent(REFIT_MENU_ITEM_ABSTRACT_ENTRY_LOADER *LoadedEntry);
|
||||
|
||||
|
||||
CHAR8
|
||||
|
@ -79,7 +79,7 @@ class REFIT_MENU_ITEM_SHUTDOWN;
|
||||
class REFIT_MENU_ITEM_RESET;
|
||||
class REFIT_MENU_ITEM_ABOUT;
|
||||
class REFIT_MENU_ITEM_OPTIONS;
|
||||
class REFIT_MENU_ENTRY_LOADER;
|
||||
class REFIT_MENU_ITEM_ABSTRACT_ENTRY_LOADER;
|
||||
class LOADER_ENTRY;
|
||||
class LEGACY_ENTRY;
|
||||
class REFIT_MENU_ENTRY_OTHER;
|
||||
@ -94,8 +94,6 @@ class REFIT_ABSTRACT_MENU_ENTRY
|
||||
CHAR16 ShortcutDigit;
|
||||
CHAR16 ShortcutLetter;
|
||||
EG_IMAGE *Image;
|
||||
EG_IMAGE *DriveImage;
|
||||
EG_IMAGE *BadgeImage;
|
||||
EG_RECT Place;
|
||||
ACTION AtClick;
|
||||
ACTION AtDoubleClick;
|
||||
@ -103,9 +101,11 @@ class REFIT_ABSTRACT_MENU_ENTRY
|
||||
ACTION AtMouseOver;
|
||||
REFIT_MENU_SCREEN *SubScreen;
|
||||
|
||||
virtual EG_IMAGE* getDriveImage() const { return nullptr; };
|
||||
virtual EG_IMAGE* getBadgeImage() const { return nullptr; };
|
||||
|
||||
|
||||
virtual REFIT_SIMPLE_MENU_ENTRY_TAG* getREFIT_SIMPLE_MENU_ENTRY_TAG() { return nullptr; };
|
||||
|
||||
virtual REFIT_MENU_SWITCH* getREFIT_MENU_SWITCH() { return nullptr; };
|
||||
virtual REFIT_MENU_CHECKBIT* getREFIT_MENU_CHECKBIT() { return nullptr; };
|
||||
virtual REFIT_MENU_ENTRY_CLOVER* getREFIT_MENU_ENTRY_CLOVER() { return nullptr; };
|
||||
@ -117,19 +117,19 @@ class REFIT_ABSTRACT_MENU_ENTRY
|
||||
virtual REFIT_MENU_ITEM_RESET* getREFIT_MENU_ITEM_RESET() { return nullptr; };
|
||||
virtual REFIT_MENU_ITEM_ABOUT* getREFIT_MENU_ITEM_ABOUT() { return nullptr; };
|
||||
virtual REFIT_MENU_ITEM_OPTIONS* getREFIT_MENU_ITEM_OPTIONS() { return nullptr; };
|
||||
virtual REFIT_MENU_ENTRY_LOADER* getREFIT_MENU_ENTRY_LOADER() { return nullptr; };
|
||||
virtual REFIT_MENU_ITEM_ABSTRACT_ENTRY_LOADER* getREFIT_MENU_ITEM_ABSTRACT_ENTRY_LOADER() { return nullptr; };
|
||||
virtual LOADER_ENTRY* getLOADER_ENTRY() { return nullptr; };
|
||||
virtual LEGACY_ENTRY* getLEGACY_ENTRY() { return nullptr; };
|
||||
virtual REFIT_MENU_ENTRY_OTHER* getREFIT_MENU_ENTRY_OTHER() { return nullptr; };
|
||||
virtual REFIT_MENU_ITEM_IEM_ABSTRACT* getREFIT_MENU_ITEM_IEM_ABSTRACT() { return nullptr; };
|
||||
|
||||
REFIT_ABSTRACT_MENU_ENTRY(CONST CHAR16 *Title_) : Title(Title_), Row(0), ShortcutDigit(0), ShortcutLetter(0), Image(NULL), DriveImage(NULL), BadgeImage(NULL), Place({0,0,0,0}), AtClick(ActionNone), AtDoubleClick(ActionNone), AtRightClick(ActionNone), AtMouseOver(ActionNone), SubScreen(NULL) {};
|
||||
REFIT_ABSTRACT_MENU_ENTRY(CONST CHAR16 *Title_) : Title(Title_), Row(0), ShortcutDigit(0), ShortcutLetter(0), Image(NULL), Place({0,0,0,0}), AtClick(ActionNone), AtDoubleClick(ActionNone), AtRightClick(ActionNone), AtMouseOver(ActionNone), SubScreen(NULL) {};
|
||||
REFIT_ABSTRACT_MENU_ENTRY(CONST CHAR16 *Title_, UINTN Row_,
|
||||
CHAR16 ShortcutDigit_, CHAR16 ShortcutLetter_, EG_IMAGE* Image_, EG_IMAGE *DriveImage_, EG_IMAGE *BadgeImage_,
|
||||
CHAR16 ShortcutDigit_, CHAR16 ShortcutLetter_, EG_IMAGE* Image_,
|
||||
EG_RECT Place_, ACTION AtClick_, ACTION AtDoubleClick_, ACTION AtRightClick_, ACTION AtMouseOver_,
|
||||
REFIT_MENU_SCREEN *SubScreen_)
|
||||
: Title(Title_), Row(Row_), ShortcutDigit(ShortcutDigit_), ShortcutLetter(ShortcutLetter_),
|
||||
Image(Image_), DriveImage(DriveImage_), BadgeImage(BadgeImage_), Place(Place_),
|
||||
Image(Image_), Place(Place_),
|
||||
AtClick(AtClick_), AtDoubleClick(AtDoubleClick_), AtRightClick(AtRightClick_), AtMouseOver(AtMouseOver_),
|
||||
SubScreen(SubScreen_) {};
|
||||
virtual ~REFIT_ABSTRACT_MENU_ENTRY() {}; // virtual destructor : this is vital
|
||||
@ -168,10 +168,10 @@ public:
|
||||
|
||||
REFIT_MENU_ENTRY() : REFIT_ABSTRACT_MENU_ENTRY(NULL) {};
|
||||
REFIT_MENU_ENTRY( CONST CHAR16 *Title_, UINTN Row_, CHAR16 ShortcutDigit_, CHAR16 ShortcutLetter_,
|
||||
EG_IMAGE *Image_, EG_IMAGE *DriveImage_, EG_IMAGE *BadgeImage_, EG_RECT Place_,
|
||||
EG_IMAGE *Image_, EG_RECT Place_,
|
||||
ACTION AtClick_, ACTION AtDoubleClick_, ACTION AtRightClick_, ACTION AtMouseOver_,
|
||||
REFIT_MENU_SCREEN *SubScreen_)
|
||||
: REFIT_ABSTRACT_MENU_ENTRY(Title_, Row_, ShortcutDigit_, ShortcutLetter_, Image_, DriveImage_, BadgeImage_, Place_, AtClick_, AtDoubleClick_, AtRightClick_, AtMouseOver_, SubScreen_)
|
||||
: REFIT_ABSTRACT_MENU_ENTRY(Title_, Row_, ShortcutDigit_, ShortcutLetter_, Image_, Place_, AtClick_, AtDoubleClick_, AtRightClick_, AtMouseOver_, SubScreen_)
|
||||
{};
|
||||
};
|
||||
|
||||
@ -182,10 +182,10 @@ public:
|
||||
|
||||
REFIT_MENU_ENTRY_OTHER() : REFIT_MENU_ENTRY() {};
|
||||
REFIT_MENU_ENTRY_OTHER(CONST CHAR16 *Title_, UINTN Row_, CHAR16 ShortcutDigit_, CHAR16 ShortcutLetter_,
|
||||
EG_IMAGE *Image_, EG_IMAGE *DriveImage_, EG_IMAGE *BadgeImage_, EG_RECT Place_,
|
||||
ACTION AtClick_, ACTION AtDoubleClick_, ACTION AtRightClick_, ACTION AtMouseOver_,
|
||||
EG_IMAGE* Image_, EG_RECT Place_,
|
||||
ACTION AtClick_, ACTION AtDoubleClick_, ACTION AtRightClick_, ACTION AtMouseOver_,
|
||||
REFIT_MENU_SCREEN *SubScreen_)
|
||||
: REFIT_MENU_ENTRY(Title_, Row_, ShortcutDigit_, ShortcutLetter_, Image_, DriveImage_, BadgeImage_, Place_, AtClick_, AtDoubleClick_, AtRightClick_, AtMouseOver_, SubScreen_)
|
||||
: REFIT_MENU_ENTRY(Title_, Row_, ShortcutDigit_, ShortcutLetter_, Image_, Place_, AtClick_, AtDoubleClick_, AtRightClick_, AtMouseOver_, SubScreen_)
|
||||
{};
|
||||
|
||||
virtual REFIT_MENU_ENTRY_OTHER* getREFIT_MENU_ENTRY_OTHER() { return this; };
|
||||
@ -194,11 +194,14 @@ public:
|
||||
class REFIT_MENU_ITEM_RETURN : public REFIT_MENU_ENTRY_OTHER
|
||||
{
|
||||
public:
|
||||
REFIT_MENU_ITEM_RETURN(CONST CHAR16 *Title_, UINTN Row_, CHAR16 ShortcutDigit_, CHAR16 ShortcutLetter_, ACTION AtClick_)
|
||||
: REFIT_MENU_ENTRY_OTHER(Title_, Row_, ShortcutDigit_, ShortcutLetter_, NULL, {0, 0, 0, 0}, AtClick_, ActionEnter, ActionNone, ActionNone, NULL)
|
||||
{};
|
||||
REFIT_MENU_ITEM_RETURN(CONST CHAR16 *Title_, UINTN Row_, CHAR16 ShortcutDigit_, CHAR16 ShortcutLetter_,
|
||||
EG_IMAGE *Image_, EG_IMAGE *DriveImage_, EG_IMAGE *BadgeImage_, EG_RECT Place_,
|
||||
ACTION AtClick_, ACTION AtDoubleClick_, ACTION AtRightClick_, ACTION AtMouseOver_,
|
||||
EG_IMAGE* Image_, EG_RECT Place_,
|
||||
ACTION AtClick_, ACTION AtDoubleClick_, ACTION AtRightClick_, ACTION AtMouseOver_,
|
||||
REFIT_MENU_SCREEN *SubScreen_)
|
||||
: REFIT_MENU_ENTRY_OTHER(Title_, Row_, ShortcutDigit_, ShortcutLetter_, Image_, DriveImage_, BadgeImage_, Place_, AtClick_, AtDoubleClick_, AtRightClick_, AtMouseOver_, SubScreen_)
|
||||
: REFIT_MENU_ENTRY_OTHER(Title_, Row_, ShortcutDigit_, ShortcutLetter_, Image_, Place_, AtClick_, AtDoubleClick_, AtRightClick_, AtMouseOver_, SubScreen_)
|
||||
{};
|
||||
virtual REFIT_MENU_ITEM_RETURN* getREFIT_MENU_ITEM_RETURN() { return this; };
|
||||
};
|
||||
@ -206,22 +209,28 @@ public:
|
||||
class REFIT_MENU_ITEM_SHUTDOWN : public REFIT_MENU_ENTRY_OTHER
|
||||
{
|
||||
public:
|
||||
REFIT_MENU_ITEM_SHUTDOWN(CONST CHAR16 *Title_, UINTN Row_, CHAR16 ShortcutDigit_, CHAR16 ShortcutLetter_, ACTION AtClick_)
|
||||
: REFIT_MENU_ENTRY_OTHER(Title_, Row_, ShortcutDigit_, ShortcutLetter_, NULL, {0, 0, 0, 0}, AtClick_, ActionEnter, ActionNone, ActionNone, NULL)
|
||||
{};
|
||||
REFIT_MENU_ITEM_SHUTDOWN(CONST CHAR16 *Title_, UINTN Row_, CHAR16 ShortcutDigit_, CHAR16 ShortcutLetter_,
|
||||
EG_IMAGE *Image_, EG_IMAGE *DriveImage_, EG_IMAGE *BadgeImage_, EG_RECT Place_,
|
||||
ACTION AtClick_, ACTION AtDoubleClick_, ACTION AtRightClick_, ACTION AtMouseOver_,
|
||||
EG_IMAGE* Image_, EG_RECT Place_,
|
||||
ACTION AtClick_, ACTION AtDoubleClick_, ACTION AtRightClick_, ACTION AtMouseOver_,
|
||||
REFIT_MENU_SCREEN *SubScreen_)
|
||||
: REFIT_MENU_ENTRY_OTHER(Title_, Row_, ShortcutDigit_, ShortcutLetter_, Image_, DriveImage_, BadgeImage_, Place_, AtClick_, AtDoubleClick_, AtRightClick_, AtMouseOver_, SubScreen_)
|
||||
: REFIT_MENU_ENTRY_OTHER(Title_, Row_, ShortcutDigit_, ShortcutLetter_, Image_, Place_, AtClick_, AtDoubleClick_, AtRightClick_, AtMouseOver_, SubScreen_)
|
||||
{};
|
||||
virtual REFIT_MENU_ITEM_SHUTDOWN* getREFIT_MENU_ITEM_SHUTDOWN() { return this; };
|
||||
};
|
||||
|
||||
class REFIT_MENU_ITEM_RESET : public REFIT_MENU_ENTRY_OTHER {
|
||||
public:
|
||||
REFIT_MENU_ITEM_RESET(CONST CHAR16 *Title_, UINTN Row_, CHAR16 ShortcutDigit_, CHAR16 ShortcutLetter_, ACTION AtClick_)
|
||||
: REFIT_MENU_ENTRY_OTHER(Title_, Row_, ShortcutDigit_, ShortcutLetter_, NULL, {0, 0, 0, 0}, AtClick_, ActionEnter, ActionNone, ActionNone, NULL)
|
||||
{};
|
||||
REFIT_MENU_ITEM_RESET(CONST CHAR16 *Title_, UINTN Row_, CHAR16 ShortcutDigit_, CHAR16 ShortcutLetter_,
|
||||
EG_IMAGE *Image_, EG_IMAGE *DriveImage_, EG_IMAGE *BadgeImage_, EG_RECT Place_,
|
||||
ACTION AtClick_, ACTION AtDoubleClick_, ACTION AtRightClick_, ACTION AtMouseOver_,
|
||||
EG_IMAGE* Image_, EG_RECT Place_,
|
||||
ACTION AtClick_, ACTION AtDoubleClick_, ACTION AtRightClick_, ACTION AtMouseOver_,
|
||||
REFIT_MENU_SCREEN *SubScreen_)
|
||||
: REFIT_MENU_ENTRY_OTHER(Title_, Row_, ShortcutDigit_, ShortcutLetter_, Image_, DriveImage_, BadgeImage_, Place_, AtClick_, AtDoubleClick_, AtRightClick_, AtMouseOver_, SubScreen_)
|
||||
: REFIT_MENU_ENTRY_OTHER(Title_, Row_, ShortcutDigit_, ShortcutLetter_, Image_, Place_, AtClick_, AtDoubleClick_, AtRightClick_, AtMouseOver_, SubScreen_)
|
||||
{};
|
||||
virtual REFIT_MENU_ITEM_RESET* getREFIT_MENU_ITEM_RESET() { return this; };
|
||||
};
|
||||
@ -229,11 +238,14 @@ public:
|
||||
class REFIT_MENU_ITEM_ABOUT : public REFIT_MENU_ENTRY_OTHER
|
||||
{
|
||||
public:
|
||||
REFIT_MENU_ITEM_ABOUT(CONST CHAR16 *Title_, UINTN Row_, CHAR16 ShortcutDigit_, CHAR16 ShortcutLetter_, ACTION AtClick_)
|
||||
: REFIT_MENU_ENTRY_OTHER(Title_, Row_, ShortcutDigit_, ShortcutLetter_, NULL, {0, 0, 0, 0}, AtClick_, ActionEnter, ActionNone, ActionNone, NULL)
|
||||
{};
|
||||
REFIT_MENU_ITEM_ABOUT(CONST CHAR16 *Title_, UINTN Row_, CHAR16 ShortcutDigit_, CHAR16 ShortcutLetter_,
|
||||
EG_IMAGE *Image_, EG_IMAGE *DriveImage_, EG_IMAGE *BadgeImage_, EG_RECT Place_,
|
||||
ACTION AtClick_, ACTION AtDoubleClick_, ACTION AtRightClick_, ACTION AtMouseOver_,
|
||||
EG_IMAGE* Image_, EG_RECT Place_,
|
||||
ACTION AtClick_, ACTION AtDoubleClick_, ACTION AtRightClick_, ACTION AtMouseOver_,
|
||||
REFIT_MENU_SCREEN *SubScreen_)
|
||||
: REFIT_MENU_ENTRY_OTHER(Title_, Row_, ShortcutDigit_, ShortcutLetter_, Image_, DriveImage_, BadgeImage_, Place_, AtClick_, AtDoubleClick_, AtRightClick_, AtMouseOver_, SubScreen_)
|
||||
: REFIT_MENU_ENTRY_OTHER(Title_, Row_, ShortcutDigit_, ShortcutLetter_, Image_, Place_, AtClick_, AtDoubleClick_, AtRightClick_, AtMouseOver_, SubScreen_)
|
||||
{};
|
||||
virtual REFIT_MENU_ITEM_ABOUT* getREFIT_MENU_ITEM_ABOUT() { return this; };
|
||||
};
|
||||
@ -241,11 +253,14 @@ public:
|
||||
class REFIT_MENU_ITEM_OPTIONS : public REFIT_MENU_ENTRY_OTHER {
|
||||
public:
|
||||
REFIT_MENU_ITEM_OPTIONS() : REFIT_MENU_ENTRY_OTHER() {};
|
||||
REFIT_MENU_ITEM_OPTIONS(CONST CHAR16 *Title_, UINTN Row_, CHAR16 ShortcutDigit_, CHAR16 ShortcutLetter_, ACTION AtClick_)
|
||||
: REFIT_MENU_ENTRY_OTHER(Title_, Row_, ShortcutDigit_, ShortcutLetter_, NULL, {0, 0, 0, 0}, AtClick_, ActionEnter, ActionNone, ActionNone, NULL)
|
||||
{};
|
||||
REFIT_MENU_ITEM_OPTIONS(CONST CHAR16 *Title_, UINTN Row_, CHAR16 ShortcutDigit_, CHAR16 ShortcutLetter_,
|
||||
EG_IMAGE *Image_, EG_IMAGE *DriveImage_, EG_IMAGE *BadgeImage_, EG_RECT Place_,
|
||||
ACTION AtClick_, ACTION AtDoubleClick_, ACTION AtRightClick_, ACTION AtMouseOver_,
|
||||
EG_IMAGE* Image_, EG_RECT Place_,
|
||||
ACTION AtClick_, ACTION AtDoubleClick_, ACTION AtRightClick_, ACTION AtMouseOver_,
|
||||
REFIT_MENU_SCREEN *SubScreen_)
|
||||
: REFIT_MENU_ENTRY_OTHER(Title_, Row_, ShortcutDigit_, ShortcutLetter_, Image_, DriveImage_, BadgeImage_, Place_, AtClick_, AtDoubleClick_, AtRightClick_, AtMouseOver_, SubScreen_)
|
||||
: REFIT_MENU_ENTRY_OTHER(Title_, Row_, ShortcutDigit_, ShortcutLetter_, Image_, Place_, AtClick_, AtDoubleClick_, AtRightClick_, AtMouseOver_, SubScreen_)
|
||||
{};
|
||||
virtual REFIT_MENU_ITEM_OPTIONS* getREFIT_MENU_ITEM_OPTIONS() { return this; };
|
||||
};
|
||||
@ -279,7 +294,7 @@ public:
|
||||
/*
|
||||
* SUper class of LOADER_ENTRY & LEGACY_ENTRY
|
||||
*/
|
||||
class REFIT_MENU_ENTRY_LOADER : public REFIT_MENU_ENTRY
|
||||
class REFIT_MENU_ITEM_ABSTRACT_ENTRY_LOADER : public REFIT_MENU_ENTRY
|
||||
{
|
||||
public:
|
||||
REFIT_VOLUME *Volume;
|
||||
@ -288,12 +303,18 @@ public:
|
||||
UINTN BootNum;
|
||||
CONST CHAR16 *LoaderPath;
|
||||
|
||||
virtual REFIT_MENU_ENTRY_LOADER* getREFIT_MENU_ENTRY_LOADER() { return this; };
|
||||
EG_IMAGE *DriveImage;
|
||||
EG_IMAGE *BadgeImage;
|
||||
|
||||
virtual EG_IMAGE* getDriveImage() const { return DriveImage; };
|
||||
virtual EG_IMAGE* getBadgeImage() const { return BadgeImage; };
|
||||
|
||||
virtual REFIT_MENU_ITEM_ABSTRACT_ENTRY_LOADER* getREFIT_MENU_ITEM_ABSTRACT_ENTRY_LOADER() { return this; };
|
||||
};
|
||||
|
||||
struct KERNEL_AND_KEXT_PATCHES;
|
||||
|
||||
class LOADER_ENTRY : public REFIT_MENU_ENTRY_LOADER
|
||||
class LOADER_ENTRY : public REFIT_MENU_ITEM_ABSTRACT_ENTRY_LOADER
|
||||
{
|
||||
public:
|
||||
CONST CHAR16 *VolName;
|
||||
@ -317,7 +338,7 @@ public:
|
||||
virtual REFIT_MENU_ENTRY_LOADER_TOOL* getREFIT_MENU_ENTRY_LOADER_TOOL() { return this; };
|
||||
};
|
||||
|
||||
class LEGACY_ENTRY : public REFIT_MENU_ENTRY_LOADER
|
||||
class LEGACY_ENTRY : public REFIT_MENU_ITEM_ABSTRACT_ENTRY_LOADER
|
||||
{
|
||||
public:
|
||||
// REFIT_VOLUME *Volume;
|
||||
|
@ -217,16 +217,11 @@ BOOLEAN mGuiReady = FALSE;
|
||||
// {0, 0, 0, 0}, ActionEnter, ActionEnter, ActionNone, ActionNone, NULL };
|
||||
|
||||
|
||||
REFIT_MENU_ITEM_OPTIONS MenuEntryOptions = { L"Options", 1, '\0', 'O', NULL, NULL, NULL,
|
||||
{0, 0, 0, 0}, ActionEnter, ActionEnter, ActionNone, ActionNone, NULL };
|
||||
REFIT_MENU_ITEM_ABOUT MenuEntryAbout = { L"About Clover", 1, 0, 'A', NULL, NULL, NULL,
|
||||
{0, 0, 0, 0}, ActionEnter, ActionEnter, ActionNone, ActionNone, NULL };
|
||||
REFIT_MENU_ITEM_RESET MenuEntryReset = { L"Restart Computer", 1, 0, 'R', NULL, NULL, NULL,
|
||||
{0, 0, 0, 0}, ActionSelect, ActionEnter, ActionNone, ActionNone, NULL };
|
||||
REFIT_MENU_ITEM_SHUTDOWN MenuEntryShutdown = { L"Exit Clover", 1, 0, 'U', NULL, NULL, NULL,
|
||||
{0, 0, 0, 0}, ActionSelect, ActionEnter, ActionNone, ActionNone, NULL };
|
||||
REFIT_MENU_ITEM_RETURN MenuEntryReturn = { L"Return", 0, 0, 0, NULL, NULL, NULL,
|
||||
{0, 0, 0, 0}, ActionEnter, ActionEnter, ActionNone, ActionNone, NULL };
|
||||
REFIT_MENU_ITEM_OPTIONS MenuEntryOptions (L"Options", 1, '\0', 'O', ActionEnter);
|
||||
REFIT_MENU_ITEM_ABOUT MenuEntryAbout (L"About Clover", 1, 0, 'A', ActionEnter);
|
||||
REFIT_MENU_ITEM_RESET MenuEntryReset (L"Restart Computer", 1, 0, 'R', ActionSelect);
|
||||
REFIT_MENU_ITEM_SHUTDOWN MenuEntryShutdown(L"Exit Clover", 1, 0, 'U', ActionSelect);
|
||||
REFIT_MENU_ITEM_RETURN MenuEntryReturn (L"Return", 0, 0, 0, ActionEnter);
|
||||
|
||||
|
||||
|
||||
@ -3806,10 +3801,8 @@ VOID DrawMainMenuEntry(REFIT_ABSTRACT_MENU_ENTRY *Entry, BOOLEAN selected, INTN
|
||||
{
|
||||
INTN Scale = GlobalConfig.MainEntriesSize >> 3; //usually it is 128>>3 == 16. if 256>>3 == 32
|
||||
|
||||
if (((Entry->getLOADER_ENTRY()) || (Entry->getLEGACY_ENTRY())) &&
|
||||
!(GlobalConfig.HideBadges & HDBADGES_SWAP) &&
|
||||
(Entry->Row == 0)) {
|
||||
MainImage = Entry->DriveImage;
|
||||
if ( Entry->getDriveImage() && !(GlobalConfig.HideBadges & HDBADGES_SWAP) /*&& Entry->Row == 0*/) {
|
||||
MainImage = Entry->getDriveImage();
|
||||
} else {
|
||||
MainImage = Entry->Image;
|
||||
}
|
||||
@ -3832,15 +3825,15 @@ VOID DrawMainMenuEntry(REFIT_ABSTRACT_MENU_ENTRY *Entry, BOOLEAN selected, INTN
|
||||
SelectionImages[0]->HasAlpha = TRUE;
|
||||
SelectionImages[2]->HasAlpha = TRUE;
|
||||
//MainImage->HasAlpha = TRUE;
|
||||
BltImageCompositeBadge(MainImage,
|
||||
SelectionImages[((Entry->Row == 0) ? 0 : 2) + (selected ? 0 : 1)],
|
||||
(Entry->Row == 0) ? Entry->BadgeImage:NULL,
|
||||
XPos, YPos, Scale);
|
||||
|
||||
BltImageCompositeBadge(MainImage,
|
||||
SelectionImages[((Entry->Row == 0) ? 0 : 2) + (selected ? 0 : 1)],
|
||||
Entry->getBadgeImage(),
|
||||
XPos, YPos, Scale);
|
||||
} else {
|
||||
BltImageCompositeBadge(SelectionImages[((Entry->Row == 0) ? 0 : 2) + (selected ? 0 : 1)],
|
||||
MainImage, (Entry->Row == 0) ? Entry->BadgeImage:NULL,
|
||||
XPos, YPos, Scale);
|
||||
BltImageCompositeBadge(SelectionImages[((Entry->Row == 0) ? 0 : 2) + (selected ? 0 : 1)],
|
||||
MainImage,
|
||||
Entry->getBadgeImage(),
|
||||
XPos, YPos, Scale);
|
||||
}
|
||||
|
||||
// draw BCS indicator
|
||||
@ -5620,7 +5613,7 @@ UINT32 EncodeOptions(CONST CHAR16 *Options)
|
||||
return OptionsBits;
|
||||
}
|
||||
|
||||
VOID DecodeOptions(REFIT_MENU_ENTRY_LOADER *Entry)
|
||||
VOID DecodeOptions(REFIT_MENU_ITEM_ABSTRACT_ENTRY_LOADER *Entry)
|
||||
{
|
||||
//set checked option
|
||||
INTN Index;
|
||||
@ -5694,9 +5687,9 @@ UINTN RunMainMenu(IN REFIT_MENU_SCREEN *Screen, IN INTN DefaultSelection, OUT RE
|
||||
|
||||
gSettings.OptionsBits = EncodeOptions(TmpArgs);
|
||||
// DBG("main OptionsBits = 0x%x\n", gSettings.OptionsBits);
|
||||
if ( MainChosenEntry->getREFIT_MENU_ENTRY_LOADER() ) gSettings.OptionsBits |= EncodeOptions(MainChosenEntry->getREFIT_MENU_ENTRY_LOADER()->LoadOptions);
|
||||
if ( MainChosenEntry->getREFIT_MENU_ITEM_ABSTRACT_ENTRY_LOADER() ) gSettings.OptionsBits |= EncodeOptions(MainChosenEntry->getREFIT_MENU_ITEM_ABSTRACT_ENTRY_LOADER()->LoadOptions);
|
||||
// DBG("add OptionsBits = 0x%x\n", gSettings.OptionsBits);
|
||||
if ( MainChosenEntry->getREFIT_MENU_ENTRY_LOADER() ) DecodeOptions(MainChosenEntry->getREFIT_MENU_ENTRY_LOADER());
|
||||
if ( MainChosenEntry->getREFIT_MENU_ITEM_ABSTRACT_ENTRY_LOADER() ) DecodeOptions(MainChosenEntry->getREFIT_MENU_ITEM_ABSTRACT_ENTRY_LOADER());
|
||||
// DBG(" enter menu with LoadOptions: %s\n", ((LOADER_ENTRY*)MainChosenEntry)->LoadOptions);
|
||||
if (MainChosenEntry->getLOADER_ENTRY()) {
|
||||
// Only for non-legacy entries, as LEGACY_ENTRY doesn't have Flags
|
||||
@ -5712,7 +5705,7 @@ UINTN RunMainMenu(IN REFIT_MENU_SCREEN *Screen, IN INTN DefaultSelection, OUT RE
|
||||
while (!SubMenuExit) {
|
||||
//running details menu
|
||||
SubMenuExit = RunGenericMenu(MainChosenEntry->SubScreen, Style, &SubMenuIndex, &TempChosenEntry);
|
||||
if ( MainChosenEntry->getREFIT_MENU_ENTRY_LOADER() ) DecodeOptions(MainChosenEntry->getREFIT_MENU_ENTRY_LOADER());
|
||||
if ( MainChosenEntry->getREFIT_MENU_ITEM_ABSTRACT_ENTRY_LOADER() ) DecodeOptions(MainChosenEntry->getREFIT_MENU_ITEM_ABSTRACT_ENTRY_LOADER());
|
||||
// DBG("get OptionsBits = 0x%x\n", gSettings.OptionsBits);
|
||||
// DBG(" TempChosenEntry FlagsBits = 0x%x\n", ((LOADER_ENTRY*)TempChosenEntry)->Flags);
|
||||
if (SubMenuExit == MENU_EXIT_ESCAPE || TempChosenEntry->getREFIT_MENU_ITEM_RETURN() ) {
|
||||
|
Loading…
Reference in New Issue
Block a user