3 * Copyright (C) 1998-2003 Brian Palmer <brianp@sginet.com>
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.
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.
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
23 #define TUI_SCREEN_MEM 0xB8000
24 #define TITLE_BOX_CHAR_HEIGHT 5
26 ///////////////////////////////////////////////////////////////////////////////////////
28 // Graphical User Interface Functions
30 ///////////////////////////////////////////////////////////////////////////////////////
31 VOID
GuiDrawBackdrop(VOID
); // Fills the entire screen with a backdrop
32 VOID
GuiFillArea(ULONG Left
, ULONG Top
, ULONG Right
, ULONG Bottom
, UCHAR FillChar
, UCHAR Attr
/* Color Attributes */); // Fills the area specified with FillChar and Attr
33 VOID
GuiDrawShadow(ULONG Left
, ULONG Top
, ULONG Right
, ULONG Bottom
); // Draws a shadow on the bottom and right sides of the area specified
34 VOID
GuiDrawBox(ULONG Left
, ULONG Top
, ULONG Right
, ULONG Bottom
, UCHAR VertStyle
, UCHAR HorzStyle
, BOOL Fill
, BOOL Shadow
, UCHAR Attr
); // Draws a box around the area specified
35 VOID
GuiDrawText(ULONG X
, ULONG Y
, PUCHAR Text
, UCHAR Attr
); // Draws text at coordinates specified
36 VOID
GuiDrawStatusText(PCSTR StatusText
); // Draws text at the very bottom line on the screen
37 VOID
GuiUpdateDateTime(VOID
); // Updates the date and time
38 VOID
GuiSaveScreen(PUCHAR Buffer
); // Saves the screen so that it can be restored later
39 VOID
GuiRestoreScreen(PUCHAR Buffer
); // Restores the screen from a previous save
40 VOID
GuiMessageBox(PCSTR MessageText
); // Displays a message box on the screen with an ok button
41 VOID
GuiMessageBoxCritical(PCSTR MessageText
); // Displays a message box on the screen with an ok button using no system resources
42 VOID
GuiDrawProgressBar(ULONG Position
, ULONG Range
); // Draws the progress bar showing nPos percent filled
44 UCHAR
GuiTextToColor(PCSTR ColorText
); // Converts the text color into it's equivalent color value
45 UCHAR
GuiTextToFillStyle(PCSTR FillStyleText
); // Converts the text fill into it's equivalent fill value
47 ///////////////////////////////////////////////////////////////////////////////////////
51 ///////////////////////////////////////////////////////////////////////////////////////
52 BOOL
GuiDisplayMenu(PCSTR MenuItemList
[], ULONG MenuItemCount
, ULONG DefaultMenuItem
, LONG MenuTimeOut
, ULONG
* SelectedMenuItem
);
56 #endif // #defined __GUI_H