ReactOS  0.4.15-dev-1397-g19779b3
gui.h
Go to the documentation of this file.
1 /*
2  * FreeLoader
3  * Copyright (C) 1998-2003 Brian Palmer <brianp@sginet.com>
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License along
16  * with this program; if not, write to the Free Software Foundation, Inc.,
17  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18  */
19 
20 #pragma once
21 
22 #define TITLE_BOX_CHAR_HEIGHT 5
23 
25 //
26 // Graphical User Interface Functions
27 //
29 VOID GuiDrawBackdrop(VOID); // Fills the entire screen with a backdrop
30 VOID GuiFillArea(ULONG Left, ULONG Top, ULONG Right, ULONG Bottom, UCHAR FillChar, UCHAR Attr /* Color Attributes */); // Fills the area specified with FillChar and Attr
31 VOID GuiDrawShadow(ULONG Left, ULONG Top, ULONG Right, ULONG Bottom); // Draws a shadow on the bottom and right sides of the area specified
32 VOID GuiDrawBox(ULONG Left, ULONG Top, ULONG Right, ULONG Bottom, UCHAR VertStyle, UCHAR HorzStyle, BOOLEAN Fill, BOOLEAN Shadow, UCHAR Attr); // Draws a box around the area specified
33 VOID GuiDrawText(ULONG X, ULONG Y, PUCHAR Text, UCHAR Attr); // Draws text at coordinates specified
34 VOID GuiDrawText2(ULONG X, ULONG Y, ULONG MaxNumChars, PUCHAR Text, UCHAR Attr); // Draws text at coordinates specified
35 VOID GuiDrawStatusText(PCSTR StatusText); // Draws text at the very bottom line on the screen
36 VOID GuiUpdateDateTime(VOID); // Updates the date and time
37 VOID GuiSaveScreen(PUCHAR Buffer); // Saves the screen so that it can be restored later
38 VOID GuiRestoreScreen(PUCHAR Buffer); // Restores the screen from a previous save
39 VOID GuiMessageBox(PCSTR MessageText); // Displays a message box on the screen with an ok button
40 VOID GuiMessageBoxCritical(PCSTR MessageText); // Displays a message box on the screen with an ok button using no system resources
41 VOID GuiDrawProgressBar(ULONG Position, ULONG Range); // Draws the progress bar showing nPos percent filled
42 
43 UCHAR GuiTextToColor(PCSTR ColorText); // Converts the text color into it's equivalent color value
44 UCHAR GuiTextToFillStyle(PCSTR FillStyleText); // Converts the text fill into it's equivalent fill value
45 
47 //
48 // Menu Functions
49 //
51 
52 BOOLEAN
54  IN PCSTR MenuHeader,
55  IN PCSTR MenuFooter OPTIONAL,
56  IN BOOLEAN ShowBootOptions,
57  IN PCSTR MenuItemList[],
58  IN ULONG MenuItemCount,
59  IN ULONG DefaultMenuItem,
60  IN LONG MenuTimeOut,
61  OUT PULONG SelectedMenuItem,
62  IN BOOLEAN CanEscape,
65 
66 extern const UIVTBL GuiVtbl;
#define IN
Definition: typedefs.h:39
const UIVTBL GuiVtbl
Definition: gui.c:85
void Fill(HDC hdc, LONG x, LONG y, COLORREF color)
Definition: drawing.cpp:109
#define Y(I)
static COORD Position
Definition: mouse.c:34
unsigned char * PUCHAR
Definition: retypes.h:3
VOID GuiSaveScreen(PUCHAR Buffer)
Definition: gui.c:55
VOID GuiMessageBox(PCSTR MessageText)
Definition: gui.c:63
UCHAR GuiTextToColor(PCSTR ColorText)
Definition: gui.c:75
VOID GuiDrawText2(ULONG X, ULONG Y, ULONG MaxNumChars, PUCHAR Text, UCHAR Attr)
Definition: gui.c:43
VOID GuiFillArea(ULONG Left, ULONG Top, ULONG Right, ULONG Bottom, UCHAR FillChar, UCHAR Attr)
Definition: gui.c:27
long LONG
Definition: pedump.c:60
unsigned char BOOLEAN
Definition: bufpool.h:45
BOOLEAN GuiDisplayMenu(IN PCSTR MenuHeader, IN PCSTR MenuFooter OPTIONAL, IN BOOLEAN ShowBootOptions, IN PCSTR MenuItemList[], IN ULONG MenuItemCount, IN ULONG DefaultMenuItem, IN LONG MenuTimeOut, OUT PULONG SelectedMenuItem, IN BOOLEAN CanEscape, IN UiMenuKeyPressFilterCallback KeyPressFilter OPTIONAL, IN PVOID Context OPTIONAL)
VOID GuiDrawText(ULONG X, ULONG Y, PUCHAR Text, UCHAR Attr)
Definition: gui.c:39
VOID GuiDrawBox(ULONG Left, ULONG Top, ULONG Right, ULONG Bottom, UCHAR VertStyle, UCHAR HorzStyle, BOOLEAN Fill, BOOLEAN Shadow, UCHAR Attr)
Definition: gui.c:35
VOID GuiMessageBoxCritical(PCSTR MessageText)
Definition: gui.c:67
unsigned char UCHAR
Definition: xmlstorage.h:181
BOOLEAN(* UiMenuKeyPressFilterCallback)(IN ULONG KeyPress, IN ULONG SelectedMenuItem, IN PVOID Context OPTIONAL)
Definition: ui.h:121
Definition: ui.h:145
Definition: range.c:39
static LPHIST_ENTRY Bottom
Definition: history.c:54
VOID GuiRestoreScreen(PUCHAR Buffer)
Definition: gui.c:59
unsigned int * PULONG
Definition: retypes.h:1
VOID GuiDrawShadow(ULONG Left, ULONG Top, ULONG Right, ULONG Bottom)
Definition: gui.c:31
VOID GuiUpdateDateTime(VOID)
Definition: gui.c:51
#define OUT
Definition: typedefs.h:40
UCHAR GuiTextToFillStyle(PCSTR FillStyleText)
Definition: gui.c:80
unsigned int ULONG
Definition: retypes.h:1
VOID GuiDrawProgressBar(ULONG Position, ULONG Range)
Definition: gui.c:71
const char * PCSTR
Definition: typedefs.h:52
VOID GuiDrawBackdrop(VOID)
Definition: gui.c:23
VOID GuiDrawStatusText(PCSTR StatusText)
Definition: gui.c:47
static LPHIST_ENTRY Top
Definition: history.c:53
char * Text
Definition: combotst.c:136
PULONG MinorVersion OPTIONAL
Definition: CrossNt.h:68