5#include <Library/DebugLib.h>
10#include <Library/BaseLib.h>
11#include <Library/UefiRuntimeServicesTableLib.h>
12#include <Library/ResetSystemLib.h>
54 ASSERT (DrawContext != NULL);
70 ASSERT (Image->Width > OffsetX);
71 ASSERT (Image->Height > OffsetY);
72 ASSERT (Image->Buffer != NULL);
78 ParentBaseX + ChildBaseX,
79 ParentBaseY + ChildBaseY,
97 ASSERT (Image->Buffer != NULL);
99 if ( (OffsetX < 0) || (OffsetX >= Image->Width)
100 || (OffsetY < 0) || (OffsetY >= Image->Height))
105 return Image->Buffer[(UINT32)OffsetY * Image->Width + (UINT32)OffsetX].Reserved > 0;
115 UINT8 CommonFocusState;
129 CommonFocusState = 0;
133 if (CommonFocusState == MAX_UINT8) {
148 FocusChangedObj = NULL;
158 FocusChangedObj = NULL;
161 return FocusChangedObj;
203 ASSERT (DrawContext != NULL);
210 &Context->BackgroundColor.Pixel,
218 if (DrawContext->GuiContext->Background.Buffer != NULL) {
220 &DrawContext->GuiContext->Background,
280 ASSERT (DrawContext != NULL);
285 ASSERT (This->NumChildren == 0);
288 ButtonImage = &Context->Icons[Clickable->ImageId][Clickable->ImageState];
289 ASSERT (ButtonImage != NULL);
291 ASSERT (ButtonImage->Width == This->Width);
292 ASSERT (ButtonImage->Height == This->Height);
293 ASSERT (ButtonImage->Buffer != NULL);
327 ASSERT (DrawContext != NULL);
332 ASSERT (This->NumChildren == 0);
342 ButtonImage = &Context->Icons[Clickable->
ImageId][ImageState];
348 Event->Pos.Pos.X - BaseX,
349 Event->Pos.Pos.Y - BaseY
367 ASSERT (BaseX + This->Width <= DrawContext->Screen.Width);
368 ASSERT (BaseY + This->Height <= DrawContext->Screen.Height);
369 GuiRequestDraw ((UINT32)BaseX, (UINT32)BaseY, This->Width, This->Height);
390 ASSERT (DrawContext != NULL);
409 ASSERT (This->NumChildren == 0);
423 if (Context->PickerContext->PickerAudioAssist) {
424 Context->PickerContext->PlayAudioFile (
425 Context->PickerContext,
490 if (Context->PickerContext->PickerAudioAssist) {
491 Context->PickerContext->PlayAudioFile (
492 Context->PickerContext,
577 DrawContext->GuiContext->AudioPlaybackTimeout = 0;
667 UINT32 RestartHeight;
668 UINT32 ShutDownWidth;
669 UINT32 ShutDownHeight;
671 ASSERT (GuiContext != NULL);
680 (INT64)DrawContext->Screen.Width - GuiContext->Background.Width,
685 (INT64)DrawContext->Screen.Height - GuiContext->Background.Height,
699 RestartWidth =
MAX (RestartImage->Width, FocusImage->Width);
700 RestartHeight =
MAX (RestartImage->Height, FocusImage->Height);
701 ShutDownWidth =
MAX (ShutDownImage->Width, FocusImage->Width);
702 ShutDownHeight =
MAX (ShutDownImage->Height, FocusImage->Height);
#define ARRAY_SIZE(Array)
#define APPLE_VOICE_OVER_AUDIO_FILE_BEEP
GUI_OBJ * InternalCommonViewPtrEvent(IN OUT GUI_OBJ *This, IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN BOOT_PICKER_GUI_CONTEXT *Context, IN INT64 BaseX, IN INT64 BaseY, IN CONST GUI_PTR_EVENT *Event)
VOID InternalCommonSimpleButtonFocusDraw(IN OUT GUI_OBJ *This, IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN BOOT_PICKER_GUI_CONTEXT *Context, IN INT64 BaseX, IN INT64 BaseY, IN UINT32 OffsetX, IN UINT32 OffsetY, IN UINT32 Width, IN UINT32 Height, IN UINT8 Opacity)
GLOBAL_REMOVE_IF_UNREFERENCED INT64 mBackgroundImageOffsetX
GLOBAL_REMOVE_IF_UNREFERENCED GUI_OBJ_CLICKABLE mCommonShutDown
VOID InternalResetFocus(IN OUT GUI_DRAWING_CONTEXT *DrawContext)
VOID CommonViewInitialize(IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN BOOT_PICKER_GUI_CONTEXT *GuiContext, IN CONST GUI_VIEW_CONTEXT *ViewContext)
VOID InternalCommonViewDraw(IN OUT GUI_OBJ *This, IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN BOOT_PICKER_GUI_CONTEXT *Context, IN INT64 BaseX, IN INT64 BaseY, IN UINT32 OffsetX, IN UINT32 OffsetY, IN UINT32 Width, IN UINT32 Height, IN UINT8 Opacity)
STATIC GUI_OBJ_CHILD * mCommonActionButtonsContainerChildren[]
VOID InternalCommonSimpleButtonDraw(IN OUT GUI_OBJ *This, IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN BOOT_PICKER_GUI_CONTEXT *Context, IN INT64 BaseX, IN INT64 BaseY, IN UINT32 OffsetX, IN UINT32 OffsetY, IN UINT32 Width, IN UINT32 Height, IN UINT8 Opacity)
VOID InternalCommonRestartKeyEvent(IN OUT GUI_OBJ *This, IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN BOOT_PICKER_GUI_CONTEXT *Context, IN CONST GUI_KEY_EVENT *KeyEvent)
STATIC UINT8 mCommonFocusState
GLOBAL_REMOVE_IF_UNREFERENCED GUI_OBJ_CLICKABLE mCommonRestart
STATIC UINT8 mNumCommonFocusList
STATIC GUI_OBJ ** mCommonFocusList
GLOBAL_REMOVE_IF_UNREFERENCED INT64 mBackgroundImageOffsetY
GLOBAL_REMOVE_IF_UNREFERENCED GUI_INTERPOLATION mCommonIntroOpacityInterpol
VOID GuiDrawChildImage(IN CONST GUI_IMAGE *Image, IN UINT8 Opacity, IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN INT64 ParentBaseX, IN INT64 ParentBaseY, IN INT64 ChildBaseX, IN INT64 ChildBaseY, IN UINT32 OffsetX, IN UINT32 OffsetY, IN UINT32 Width, IN UINT32 Height)
GUI_OBJ * InternalCommonRestartPtrEvent(IN OUT GUI_OBJ *This, IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN BOOT_PICKER_GUI_CONTEXT *Context, IN INT64 BaseX, IN INT64 BaseY, IN CONST GUI_PTR_EVENT *Event)
UINT8 InternalCommonSimpleButtonPtrEvent(IN OUT GUI_OBJ *This, IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN BOOT_PICKER_GUI_CONTEXT *Context, IN INT64 BaseX, IN INT64 BaseY, IN CONST GUI_PTR_EVENT *Event)
BOOLEAN GuiClickableIsHit(IN CONST GUI_IMAGE *Image, IN INT64 OffsetX, IN INT64 OffsetY)
GUI_OBJ * InternalCommonShutDownPtrEvent(IN OUT GUI_OBJ *This, IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN BOOT_PICKER_GUI_CONTEXT *Context, IN INT64 BaseX, IN INT64 BaseY, IN CONST GUI_PTR_EVENT *Event)
VOID InternalCommonActionButtonFocus(IN CONST GUI_OBJ *This, IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN BOOLEAN Focus)
GUI_OBJ * InternalFocusKeyHandler(IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN BOOT_PICKER_GUI_CONTEXT *Context, IN CONST GUI_KEY_EVENT *KeyEvent)
GUI_OBJ_CHILD mCommonFocus
GLOBAL_REMOVE_IF_UNREFERENCED GUI_OBJ_CHILD mCommonActionButtonsContainer
VOID InternalCommonShutDownKeyEvent(IN OUT GUI_OBJ *This, IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN BOOT_PICKER_GUI_CONTEXT *Context, IN CONST GUI_KEY_EVENT *KeyEvent)
#define BOOT_ACTION_BUTTON_SPACE
#define OC_VOICE_OVER_AUDIO_BASE_TYPE_APPLE
#define OC_ATTR_USE_REVERSED_UI
#define OC_INPUT_TYPING_CONFIRM
Confirm input while typing (press enter)
#define OC_MODIFIERS_REVERSE_SWITCH_FOCUS
#define OC_INPUT_CONTINUE
Continue (press enter)
#define OC_INPUT_SWITCH_FOCUS
Switch UI focus (tab and shift+tab)
VOID EFIAPI ResetWarm(VOID)
VOID EFIAPI ResetShutdown(VOID)
VOID GuiDrawToBuffer(IN CONST GUI_IMAGE *Image, IN UINT8 Opacity, IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN INT64 BaseX, IN INT64 BaseY, IN UINT32 OffsetX, IN UINT32 OffsetY, IN UINT32 Width, IN UINT32 Height)
VOID GuiRequestDraw(IN UINT32 PosX, IN UINT32 PosY, IN UINT32 Width, IN UINT32 Height)
VOID GuiDrawToBufferFill(IN CONST EFI_GRAPHICS_OUTPUT_BLT_PIXEL *Colour, IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN UINT32 PosX, IN UINT32 PosY, IN UINT32 Width, IN UINT32 Height)
BOOLEAN GuiClipChildBounds(IN INT64 ChildOffset, IN UINT32 ChildLength, IN OUT UINT32 *ReqOffset, IN OUT UINT32 *ReqLength)
VOID GuiRequestDrawCrop(IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN INT64 X, IN INT64 Y, IN UINT32 Width, IN UINT32 Height)
GUI_OBJ * GuiObjDelegatePtrEvent(IN OUT GUI_OBJ *This, IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN BOOT_PICKER_GUI_CONTEXT *Context, IN INT64 BaseX, IN INT64 BaseY, IN CONST GUI_PTR_EVENT *Event)
VOID GuiViewInitialize(OUT GUI_DRAWING_CONTEXT *DrawContext, IN BOOT_PICKER_GUI_CONTEXT *GuiContext, IN CONST GUI_VIEW_CONTEXT *ViewContext)
VOID GuiObjDrawDelegate(IN OUT GUI_OBJ *This, IN OUT GUI_DRAWING_CONTEXT *DrawContext, IN BOOT_PICKER_GUI_CONTEXT *Context, IN INT64 BaseX, IN INT64 BaseY, IN UINT32 OffsetX, IN UINT32 OffsetY, IN UINT32 Width, IN UINT32 Height, IN UINT8 Opacity)
@ GuiPointerPrimaryDoubleClick
INT64 EFIAPI DivS64x64Remainder(IN INT64 Dividend, IN INT64 Divisor, OUT INT64 *Remainder OPTIONAL)
GUI_OBJ_KEY_EVENT KeyEvent