]> git.proxmox.com Git - mirror_edk2.git/blob - MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenu.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / MdeModulePkg / Application / BootManagerMenuApp / BootManagerMenu.h
1 /** @file
2 FrontPage routines to handle the callbacks and browser calls
3
4 Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.<BR>
5 SPDX-License-Identifier: BSD-2-Clause-Patent
6
7 **/
8
9 #ifndef _BOOT_MANAGER_MENU_H_
10 #define _BOOT_MANAGER_MENU_H_
11
12 #include <Uefi.h>
13 #include <Guid/MdeModuleHii.h>
14 #include <Library/UefiBootManagerLib.h>
15 #include <Library/UefiBootServicesTableLib.h>
16 #include <Library/UefiLib.h>
17 #include <Library/HiiLib.h>
18 #include <Library/MemoryAllocationLib.h>
19 #include <Library/DebugLib.h>
20 #include <Library/BaseMemoryLib.h>
21 #include <Library/DevicePathLib.h>
22 #include <Protocol/LoadedImage.h>
23 #include <Protocol/BootLogo.h>
24
25 #define TITLE_TOKEN_COUNT 1
26 #define HELP_TOKEN_COUNT 3
27
28 typedef struct _BOOT_MENU_SCREEN {
29 UINTN StartCol;
30 UINTN StartRow;
31 UINTN Width;
32 UINTN Height;
33 } BOOT_MENU_SCREEN;
34
35 typedef struct _BOOT_MENU_SCROLL_BAR_CONTROL {
36 BOOLEAN HasScrollBar;
37 UINTN ItemCountPerScreen;
38 UINTN FirstItem;
39 UINTN LastItem;
40 } BOOT_MENU_SCROLL_BAR_CONTROL;
41
42 typedef struct _BOOT_MENU_POPUP_DATA {
43 EFI_STRING_ID TitleToken[TITLE_TOKEN_COUNT]; // Title string ID
44 UINTN ItemCount; // Selectable item count
45 EFI_STRING_ID *PtrTokens; // All of selectable items string ID
46 EFI_STRING_ID HelpToken[HELP_TOKEN_COUNT]; // All of help string ID
47 UINTN SelectItem; // Current select item
48 BOOT_MENU_SCREEN MenuScreen; // Boot menu screen information
49 BOOT_MENU_SCROLL_BAR_CONTROL ScrollBarControl; // Boot menu scroll bar information
50 } BOOT_MENU_POPUP_DATA;
51
52 #endif