Rev 2726 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
2726 | vana | 1 | #ifndef _EFI_UI_H |
2 | #define _EFI_UI_H |
||
3 | |||
4 | /*++ |
||
5 | |||
6 | Copyright (c) 200 Intel Corporation |
||
7 | |||
8 | Module Name: |
||
9 | |||
10 | EfiUi.h |
||
11 | |||
12 | Abstract: |
||
13 | Protocol used to build User Interface (UI) stuff. |
||
14 | |||
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 |
||
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 |
||
19 | UI_STRING_ENTRY arrays. A NULL array terminates the list. A NULL array |
||
20 | entry contains all zeros. |
||
21 | |||
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 |
||
24 | thing. |
||
25 | |||
26 | |||
27 | Revision History |
||
28 | |||
29 | --*/ |
||
30 | |||
31 | #define EFI_UI_PROTOCOL \ |
||
32 | { 0x32dd7981, 0x2d27, 0x11d4, {0xbc, 0x8b, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} } |
||
33 | |||
34 | |||
35 | typedef enum { |
||
36 | UiDeviceString, |
||
37 | UiVendorString, |
||
38 | UiMaxString |
||
39 | } UI_STRING_TYPE; |
||
40 | |||
41 | typedef struct { |
||
42 | ISO_639_2 *LangCode; |
||
43 | CHAR16 *UiString; |
||
44 | } UI_STRING_ENTRY; |
||
45 | |||
46 | #define EFI_UI_VERSION 0x00010000 |
||
47 | |||
48 | typedef struct _UI_INTERFACE { |
||
49 | UINT32 Version; |
||
50 | UI_STRING_ENTRY *Entry; |
||
51 | } UI_INTERFACE; |
||
52 | |||
53 | |||
54 | #endif |