54 lines
1.7 KiB
C
54 lines
1.7 KiB
C
/** @file
|
|
FrontPage routines to handle the callbacks and browser calls
|
|
|
|
Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.<BR>
|
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
|
|
**/
|
|
|
|
|
|
#ifndef _BOOT_MANAGER_MENU_H_
|
|
#define _BOOT_MANAGER_MENU_H_
|
|
|
|
#include <Uefi.h>
|
|
#include <Guid/MdeModuleHii.h>
|
|
#include <Library/UefiBootManagerLib.h>
|
|
#include <Library/UefiBootServicesTableLib.h>
|
|
#include <Library/UefiLib.h>
|
|
#include <Library/HiiLib.h>
|
|
#include <Library/MemoryAllocationLib.h>
|
|
#include <Library/DebugLib.h>
|
|
#include <Library/BaseMemoryLib.h>
|
|
#include <Library/DevicePathLib.h>
|
|
#include <Protocol/LoadedImage.h>
|
|
#include <Protocol/BootLogo.h>
|
|
|
|
#define TITLE_TOKEN_COUNT 1
|
|
#define HELP_TOKEN_COUNT 3
|
|
|
|
typedef struct _BOOT_MENU_SCREEN {
|
|
UINTN StartCol;
|
|
UINTN StartRow;
|
|
UINTN Width;
|
|
UINTN Height;
|
|
} BOOT_MENU_SCREEN;
|
|
|
|
typedef struct _BOOT_MENU_SCROLL_BAR_CONTROL {
|
|
BOOLEAN HasScrollBar;
|
|
UINTN ItemCountPerScreen;
|
|
UINTN FirstItem;
|
|
UINTN LastItem;
|
|
} BOOT_MENU_SCROLL_BAR_CONTROL;
|
|
|
|
typedef struct _BOOT_MENU_POPUP_DATA {
|
|
EFI_STRING_ID TitleToken[TITLE_TOKEN_COUNT]; // Title string ID
|
|
UINTN ItemCount; // Selectable item count
|
|
EFI_STRING_ID *PtrTokens; // All of selectable items string ID
|
|
EFI_STRING_ID HelpToken[HELP_TOKEN_COUNT]; // All of help string ID
|
|
UINTN SelectItem; // Current select item
|
|
BOOT_MENU_SCREEN MenuScreen; // Boot menu screen information
|
|
BOOT_MENU_SCROLL_BAR_CONTROL ScrollBarControl; // Boot menu scroll bar inoformation
|
|
} BOOT_MENU_POPUP_DATA;
|
|
|
|
#endif
|
|
|