]> git.proxmox.com Git - mirror_edk2.git/blame - MdePkg/Include/Protocol/HiiPopup.h
MdePkg: Add the missing spec version information for header files
[mirror_edk2.git] / MdePkg / Include / Protocol / HiiPopup.h
CommitLineData
3413fe86
DB
1/** @file\r
2 This protocol provides services to display a popup window.\r
3 The protocol is typically produced by the forms browser and consumed by a driver callback handler.\r
4\r
497a5fb1 5 Copyright (c) 2017-2018, Intel Corporation. All rights reserved.<BR>\r
3413fe86
DB
6 This program and the accompanying materials are licensed and made available under\r
7 the terms and conditions of the BSD License that accompanies this distribution.\r
8 The full text of the license may be found at\r
9 http://opensource.org/licenses/bsd-license.php.\r
10\r
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
13\r
497a5fb1
SZ
14 @par Revision Reference:\r
15 This Protocol was introduced in UEFI Specification 2.7.\r
16\r
3413fe86
DB
17**/\r
18\r
19#ifndef __HII_POPUP_H__\r
20#define __HII_POPUP_H__\r
21\r
22#define EFI_HII_POPUP_PROTOCOL_GUID \\r
23 {0x4311edc0, 0x6054, 0x46d4, {0x9e, 0x40, 0x89, 0x3e, 0xa9, 0x52, 0xfc, 0xcc}}\r
24\r
25#define EFI_HII_POPUP_PROTOCOL_REVISION 1\r
26\r
27typedef struct _EFI_HII_POPUP_PROTOCOL EFI_HII_POPUP_PROTOCOL;\r
28\r
29typedef enum {\r
30 EfiHiiPopupStyleInfo,\r
31 EfiHiiPopupStyleWarning,\r
32 EfiHiiPopupStyleError\r
33} EFI_HII_POPUP_STYLE;\r
34\r
35typedef enum {\r
36 EfiHiiPopupTypeOk,\r
37 EfiHiiPopupTypeOkCancel,\r
38 EfiHiiPopupTypeYesNo,\r
39 EfiHiiPopupTypeYesNoCancel\r
40} EFI_HII_POPUP_TYPE;\r
41\r
42typedef enum {\r
43 EfiHiiPopupSelectionOk,\r
44 EfiHiiPopupSelectionCancel,\r
45 EfiHiiPopupSelectionYes,\r
46 EfiHiiPopupSelectionNo\r
47} EFI_HII_POPUP_SELECTION;\r
48\r
49/**\r
50 Displays a popup window.\r
51\r
52 @param This A pointer to the EFI_HII_POPUP_PROTOCOL instance.\r
53 @param PopupStyle Popup style to use.\r
54 @param PopupType Type of the popup to display.\r
55 @param HiiHandle HII handle of the string pack containing Message\r
56 @param Message A message to display in the popup box.\r
57 @param UserSelection User selection.\r
58\r
59 @retval EFI_SUCCESS The popup box was successfully displayed.\r
60 @retval EFI_INVALID_PARAMETER HiiHandle and Message do not define a valid HII string.\r
61 @retval EFI_INVALID_PARAMETER PopupType is not one of the values defined by this specification.\r
62 @retval EFI_OUT_OF_RESOURCES There are not enough resources available to display the popup box.\r
63\r
64**/\r
65typedef\r
66EFI_STATUS\r
67(EFIAPI * EFI_HII_CREATE_POPUP) (\r
68 IN EFI_HII_POPUP_PROTOCOL *This,\r
69 IN EFI_HII_POPUP_STYLE PopupStyle,\r
70 IN EFI_HII_POPUP_TYPE PopupType,\r
71 IN EFI_HII_HANDLE HiiHandle,\r
72 IN EFI_STRING_ID Message,\r
73 OUT EFI_HII_POPUP_SELECTION *UserSelection OPTIONAL\r
74);\r
75\r
76typedef struct _EFI_HII_POPUP_PROTOCOL {\r
77 UINT64 Revision;\r
78 EFI_HII_CREATE_POPUP CreatePopup;\r
79} EFI_HII_POPUP_PROTOCOL;\r
80\r
81extern EFI_GUID gEfiHiiPopupProtocolGuid;\r
82\r
83#endif\r
84\r