Rev 2726 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2726 | Rev 2782 | ||
---|---|---|---|
1 | #ifndef _EFI_UI_H |
1 | #ifndef _EFI_UI_H |
2 | #define _EFI_UI_H |
2 | #define _EFI_UI_H |
3 | 3 | ||
4 | /*++ |
4 | /*++ |
5 | 5 | ||
6 | Copyright (c) 200 Intel Corporation |
6 | Copyright (c) 200 Intel Corporation |
7 | 7 | ||
8 | Module Name: |
8 | Module Name: |
9 | 9 | ||
10 | EfiUi.h |
10 | EfiUi.h |
11 | |
11 | |
12 | Abstract: |
12 | Abstract: |
13 | Protocol used to build User Interface (UI) stuff. |
13 | Protocol used to build User Interface (UI) stuff. |
14 | 14 | ||
15 | This protocol is just data. It is a multi dimentional array. |
15 | This protocol is just data. It is a multi dimentional array. |
16 | For each string there is an array of UI_STRING_ENTRY. Each string |
16 | For each string there is an array of UI_STRING_ENTRY. Each string |
17 | is for a different language translation of the same string. The list |
17 | is for a different language translation of the same string. The list |
18 | is terminated by a NULL UiString. There can be any number of |
18 | is terminated by a NULL UiString. There can be any number of |
19 | UI_STRING_ENTRY arrays. A NULL array terminates the list. A NULL array |
19 | UI_STRING_ENTRY arrays. A NULL array terminates the list. A NULL array |
20 | entry contains all zeros. |
20 | entry contains all zeros. |
21 | 21 | ||
22 | Thus the shortest possible EFI_UI_PROTOCOL has three UI_STRING_ENTRY. |
22 | Thus the shortest possible EFI_UI_PROTOCOL has three UI_STRING_ENTRY. |
23 | The String, it's NULL terminator, and the NULL terminator for the entire |
23 | The String, it's NULL terminator, and the NULL terminator for the entire |
24 | thing. |
24 | thing. |
25 | 25 | ||
26 | 26 | ||
27 | Revision History |
27 | Revision History |
28 | 28 | ||
29 | --*/ |
29 | --*/ |
30 | 30 | ||
31 | #define EFI_UI_PROTOCOL \ |
31 | #define EFI_UI_PROTOCOL \ |
32 | { 0x32dd7981, 0x2d27, 0x11d4, {0xbc, 0x8b, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} } |
32 | { 0x32dd7981, 0x2d27, 0x11d4, {0xbc, 0x8b, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} } |
33 | 33 | ||
34 | 34 | ||
35 | typedef enum { |
35 | typedef enum { |
36 | UiDeviceString, |
36 | UiDeviceString, |
37 | UiVendorString, |
37 | UiVendorString, |
38 | UiMaxString |
38 | UiMaxString |
39 | } UI_STRING_TYPE; |
39 | } UI_STRING_TYPE; |
40 | 40 | ||
41 | typedef struct { |
41 | typedef struct { |
42 | ISO_639_2 *LangCode; |
42 | ISO_639_2 *LangCode; |
43 | CHAR16 *UiString; |
43 | CHAR16 *UiString; |
44 | } UI_STRING_ENTRY; |
44 | } UI_STRING_ENTRY; |
45 | 45 | ||
46 | #define EFI_UI_VERSION 0x00010000 |
46 | #define EFI_UI_VERSION 0x00010000 |
47 | 47 | ||
48 | typedef struct _UI_INTERFACE { |
48 | typedef struct _UI_INTERFACE { |
49 | UINT32 Version; |
49 | UINT32 Version; |
50 | UI_STRING_ENTRY *Entry; |
50 | UI_STRING_ENTRY *Entry; |
51 | } UI_INTERFACE; |
51 | } UI_INTERFACE; |
52 | 52 | ||
53 | 53 | ||
54 | #endif |
54 | #endif |
55 | 55 |