--- /dev/null
+/** @file\r
+ Defines BufferImage - the view of the file that is visible at any point, \r
+ as well as the event handlers for editing the file\r
+ \r
+ Copyright (c) 2005 - 2011, Intel Corporation. All rights reserved. <BR>\r
+ This program and the accompanying materials\r
+ are licensed and made available under the terms and conditions of the BSD License\r
+ which accompanies this distribution. The full text of the license may be found at\r
+ http://opensource.org/licenses/bsd-license.php\r
+\r
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+\r
+**/\r
+\r
+#ifndef _LIB_BUFFER_IMAGE_H_\r
+#define _LIB_BUFFER_IMAGE_H_\r
+\r
+#include "HexEditor.h"\r
+\r
+EFI_STATUS\r
+HBufferImageInit (\r
+ VOID\r
+ );\r
+EFI_STATUS\r
+HBufferImageCleanup (\r
+ VOID\r
+ );\r
+EFI_STATUS\r
+HBufferImageRefresh (\r
+ VOID\r
+ );\r
+EFI_STATUS\r
+HBufferImageHide (\r
+ VOID\r
+ );\r
+EFI_STATUS\r
+HBufferImageHandleInput (\r
+ EFI_INPUT_KEY *\r
+ );\r
+EFI_STATUS\r
+HBufferImageBackup (\r
+ VOID\r
+ );\r
+\r
+EFI_STATUS\r
+HBufferImageRead (\r
+ IN CONST CHAR16 *,\r
+ IN CONST CHAR16 *,\r
+ IN UINTN,\r
+ IN UINTN,\r
+ IN UINTN,\r
+ IN UINTN,\r
+ IN EDIT_FILE_TYPE,\r
+ IN BOOLEAN\r
+ );\r
+\r
+EFI_STATUS\r
+HBufferImageSave (\r
+ IN CHAR16 *,\r
+ IN CHAR16 *,\r
+ IN UINTN,\r
+ IN UINTN,\r
+ IN UINTN,\r
+ IN UINTN,\r
+ IN EDIT_FILE_TYPE\r
+ );\r
+\r
+INTN\r
+HBufferImageCharToHex (\r
+ IN CHAR16\r
+ );\r
+\r
+EFI_STATUS\r
+HBufferImageRestoreMousePosition (\r
+ VOID\r
+ );\r
+EFI_STATUS\r
+HBufferImageRestorePosition (\r
+ VOID\r
+ );\r
+\r
+VOID\r
+HBufferImageMovePosition (\r
+ IN UINTN,\r
+ IN UINTN,\r
+ IN BOOLEAN\r
+ );\r
+\r
+EFI_STATUS\r
+HBufferImageHandleInput (\r
+ EFI_INPUT_KEY *\r
+ );\r
+\r
+HEFI_EDITOR_LINE *\r
+HBufferImageCreateLine (\r
+ VOID\r
+ );\r
+\r
+EFI_STATUS\r
+HBufferImageDoCharInput (\r
+ CHAR16\r
+ );\r
+EFI_STATUS\r
+HBufferImageAddChar (\r
+ CHAR16\r
+ );\r
+\r
+BOOLEAN\r
+HInCurrentScreen (\r
+ UINTN\r
+ );\r
+BOOLEAN\r
+HAboveCurrentScreen (\r
+ UINTN\r
+ );\r
+BOOLEAN\r
+HUnderCurrentScreen (\r
+ UINTN\r
+ );\r
+\r
+EFI_STATUS\r
+HBufferImageScrollRight (\r
+ VOID\r
+ );\r
+EFI_STATUS\r
+HBufferImageScrollLeft (\r
+ VOID\r
+ );\r
+EFI_STATUS\r
+HBufferImageScrollDown (\r
+ VOID\r
+ );\r
+EFI_STATUS\r
+HBufferImageScrollUp (\r
+ VOID\r
+ );\r
+EFI_STATUS\r
+HBufferImagePageUp (\r
+ VOID\r
+ );\r
+EFI_STATUS\r
+HBufferImagePageDown (\r
+ VOID\r
+ );\r
+EFI_STATUS\r
+HBufferImageHome (\r
+ VOID\r
+ );\r
+EFI_STATUS\r
+HBufferImageEnd (\r
+ VOID\r
+ );\r
+\r
+EFI_STATUS\r
+HBufferImageDoBackspace (\r
+ VOID\r
+ );\r
+EFI_STATUS\r
+HBufferImageDoDelete (\r
+ VOID\r
+ );\r
+\r
+EFI_STATUS\r
+HBufferImageCutLine (\r
+ HEFI_EDITOR_LINE **\r
+ );\r
+EFI_STATUS\r
+HBufferImagePasteLine (\r
+ VOID\r
+ );\r
+\r
+EFI_STATUS\r
+HBufferImageGetFileInfo (\r
+ EFI_FILE_HANDLE,\r
+ CHAR16 *,\r
+ EFI_FILE_INFO **\r
+ );\r
+\r
+EFI_STATUS\r
+HBufferImageSearch (\r
+ CHAR16 *,\r
+ UINTN\r
+ );\r
+EFI_STATUS\r
+HBufferImageReplace (\r
+ CHAR16 *,\r
+ UINTN\r
+ );\r
+\r
+EFI_STATUS\r
+HBufferImageFree (\r
+ VOID\r
+ ) ;\r
+\r
+EFI_STATUS\r
+HBufferImageDeleteCharacterFromBuffer (\r
+ IN UINTN,\r
+ IN UINTN,\r
+ UINT8 *\r
+ );\r
+\r
+EFI_STATUS\r
+HBufferImageAddCharacterToBuffer (\r
+ IN UINTN,\r
+ IN UINTN,\r
+ UINT8 *\r
+ );\r
+\r
+EFI_STATUS\r
+HBufferImageBufferToList (\r
+ IN VOID *,\r
+ IN UINTN\r
+ );\r
+\r
+EFI_STATUS\r
+HBufferImageListToBuffer (\r
+ IN VOID *,\r
+ IN UINTN\r
+ );\r
+\r
+VOID\r
+HBufferImageAdjustMousePosition (\r
+ INT32,\r
+ INT32\r
+ );\r
+\r
+BOOLEAN\r
+HBufferImageIsAtHighBits (\r
+ UINTN,\r
+ UINTN *\r
+ ) ;\r
+\r
+EFI_STATUS\r
+HBufferImageCutLine (\r
+ HEFI_EDITOR_LINE **\r
+ );\r
+\r
+UINTN\r
+HBufferImageGetTotalSize (\r
+ VOID\r
+ );\r
+\r
+BOOLEAN\r
+HBufferImageIsInSelectedArea (\r
+ UINTN,\r
+ UINTN\r
+ );\r
+\r
+#endif\r