X-Git-Url: https://code.delx.au/refind/blobdiff_plain/e22f7ac1eccb5958dd960e157d0f35606f7db26e..05d641020fe8cea57fa41b9e19459727a463d0c0:/libeg/libeg.h diff --git a/libeg/libeg.h b/libeg/libeg.h index 6a2b3c5..c81aaea 100644 --- a/libeg/libeg.h +++ b/libeg/libeg.h @@ -37,9 +37,17 @@ #ifndef __LIBEG_LIBEG_H__ #define __LIBEG_LIBEG_H__ +#ifndef __MAKEWITH_GNUEFI +#include "../include/tiano_includes.h" +#endif /* types */ +typedef enum ColorTypes { + white, + black +} Colors; + /* This should be compatible with EFI_UGA_PIXEL */ typedef struct { UINT8 b, g, r, a; @@ -75,6 +83,7 @@ typedef struct { /* functions */ VOID egInitScreen(VOID); +BOOLEAN egGetResFromMode(UINTN *ModeWidth, UINTN *Height); VOID egGetScreenSize(OUT UINTN *ScreenWidth, OUT UINTN *ScreenHeight); CHAR16 * egScreenDescription(VOID); BOOLEAN egHasGraphicsMode(VOID); @@ -88,11 +97,11 @@ VOID egSetGraphicsModeEnabled(IN BOOLEAN Enable); EG_IMAGE * egCreateImage(IN UINTN Width, IN UINTN Height, IN BOOLEAN HasAlpha); EG_IMAGE * egCreateFilledImage(IN UINTN Width, IN UINTN Height, IN BOOLEAN HasAlpha, IN EG_PIXEL *Color); EG_IMAGE * egCopyImage(IN EG_IMAGE *Image); +EG_IMAGE * egCropImage(IN EG_IMAGE *Image, IN UINTN StartX, IN UINTN StartY, IN UINTN Width, IN UINTN Height); VOID egFreeImage(IN EG_IMAGE *Image); EG_IMAGE * egLoadImage(IN EFI_FILE* BaseDir, IN CHAR16 *FileName, IN BOOLEAN WantAlpha); EG_IMAGE * egLoadIcon(IN EFI_FILE* BaseDir, IN CHAR16 *FileName, IN UINTN IconSize); -EG_IMAGE * egDecodeImage(IN UINT8 *FileData, IN UINTN FileDataLength, IN CHAR16 *Format, IN BOOLEAN WantAlpha); EG_IMAGE * egPrepareEmbeddedImage(IN EG_EMBEDDED_IMAGE *EmbeddedImage, IN BOOLEAN WantAlpha); EG_IMAGE * egEnsureImageSize(IN EG_IMAGE *Image, IN UINTN Width, IN UINTN Height, IN EG_PIXEL *Color); @@ -110,17 +119,20 @@ VOID egFillImageArea(IN OUT EG_IMAGE *CompImage, VOID egComposeImage(IN OUT EG_IMAGE *CompImage, IN EG_IMAGE *TopImage, IN UINTN PosX, IN UINTN PosY); VOID egMeasureText(IN CHAR16 *Text, OUT UINTN *Width, OUT UINTN *Height); -VOID egRenderText(IN CHAR16 *Text, IN OUT EG_IMAGE *CompImage, IN UINTN PosX, IN UINTN PosY); +VOID egRenderText(IN CHAR16 *Text, IN OUT EG_IMAGE *CompImage, IN UINTN PosX, IN UINTN PosY, IN UINT8 BGBrightness); VOID egClearScreen(IN EG_PIXEL *Color); VOID egDrawImage(IN EG_IMAGE *Image, IN UINTN ScreenPosX, IN UINTN ScreenPosY); +VOID egDrawImageWithTransparency(EG_IMAGE *Image, EG_IMAGE *BadgeImage, UINTN XPos, UINTN YPos, UINTN Width, UINTN Height); VOID egDrawImageArea(IN EG_IMAGE *Image, IN UINTN AreaPosX, IN UINTN AreaPosY, IN UINTN AreaWidth, IN UINTN AreaHeight, IN UINTN ScreenPosX, IN UINTN ScreenPosY); - +VOID egDisplayMessage(IN CHAR16 *Text, EG_PIXEL *BGColor); +EG_IMAGE * egCopyScreen(VOID); VOID egScreenShot(VOID); - +//UINT32 egGetGraphicsMode(VOID); +BOOLEAN egSetTextMode(UINT32 RequestedMode); #endif /* __LIBEG_LIBEG_H__ */