Units
Class Hierarchy
Classes, Interfaces and Objects
Types
Enumerations
Variables
Constants
Functions and Procedures
Identifiers

Unit MPHexEditor

Description

TMPHexEditor displays and edits hexadecimal/binary files

TMPHexEditor v 06-15-2004
credits to :

- John Hamm, http://users.snapjax.com/john/

- Christophe Le Corfec for introducing the EBCDIC format and the nice idea about half byte insert/delete

- Philippe Chessa for his suggestions about AsText, AsHex and better support for the french keyboard layout

- Daniel Jensen for octal offset display and the INS-key recognition stuff

- Shmuel Zeigerman for introducing more flexible offset display formats

- Vaf, http://carradio.al.ru for reporting missing delver.inc and suggesting OnChange

- Eugene Tarasov for reporting that setting the BytesPerColumn value to 4 at design time didn't work

- FuseBurner for BytesPerUnit/RulerBytesPerUnit related suggestions

- Motzi for SyncView/ShowPositionIfNotFocused related suggestions

- Martin Hsiao for bcb compatibility and reporting some bugs when moving cursor beyond eof

- Miyu for delphi 7 defines

- Nils Hoyer for bcb testing and his help on creating a BCB6 package

- Skamnitsly S.V for reporting a bug when doubleclicking the ruler bar

- Pete Fraser for reporting problems with array properties under BCB

- Andrew Novikov for bug reports and suggestions

- Al for bug reports

- Dieter Köhler for reporting the delphi vcl related CanFocus bug

history:

Classes, Interfaces and Objects

NameDescription
Class EMPHexEditor 
Class TCustomMPHexEditor 
Class TMPHColors 
Class TMPHexEditor 

Functions and Procedures

Overview

function CheckRadixToInt(Value: string): integer;
function CheckRadixToInt64(Value: string): int64;
function ConvertBinToHex(aFrom, aTo: PChar; const aCount: integer; const SwapNibbles: boolean): PChar;
function ConvertHexToBin(aFrom, aTo: PChar; const aCount: integer; const SwapNibbles: boolean; var BytesTranslated: integer): PChar;
function GetTempName: string;
function GridCoord(aX, aY: longint): TGridCoord;
function IntToOctal(const Value: integer): string;
function IntToRadix(Value: integer; Radix: byte): string;
function IntToRadix64(Value: int64; Radix: byte): string;
function IntToRadixLen(Value: integer; Radix, Len: byte): string;
function IntToRadixLen64(Value: int64; Radix, Len: byte): string;
function IsKeyDown(aKey: integer): boolean;
function Max(a1, a2: integer): integer;
function Min(a1, a2: integer): integer;
function OctalToInt(const Value: string): integer;
function RadixToInt(Value: string; Radix: byte): integer;
function RadixToInt64(Value: string; Radix: byte): int64;
procedure SwapWideChar(var WChar: WideChar);
procedure TranslateBufferFromAnsi(const TType: TMPHTranslationKind; aBuffer, bBuffer: PChar; const aCount: integer);
procedure TranslateBufferToAnsi(const TType: TMPHTranslationKind; aBuffer, bBuffer: PChar; const aCount: integer);

Description

function CheckRadixToInt(Value: string): integer;

try to find the correct radix (based on prefix/suffix) and return the number, known prefixes/suffixes are:
0x<number>, 0X<number>, $<number>, <number>h, <number>H: radix 16
o<number>, O<number>, 0<number>, <number>o, <number>O: radix 8
%<number>, <number>%: radix 2
otherwise: radix 10

function CheckRadixToInt64(Value: string): int64;

 

function ConvertBinToHex(aFrom, aTo: PChar; const aCount: integer; const SwapNibbles: boolean): PChar;

translate binary data to its hex representation (see ConvertHexToBin), (see SwapNibbles for the meaning of the SwapNibbles value)

function ConvertHexToBin(aFrom, aTo: PChar; const aCount: integer; const SwapNibbles: boolean; var BytesTranslated: integer): PChar;

translate a hexadecimal data representation ("a000 cc45 d3 42"...) to binary data (see SwapNibbles for the meaning of the SwapNibbles value)

function GetTempName: string;

get a unique filename in the temporary directory

function GridCoord(aX, aY: longint): TGridCoord;

convert X and Y into a TGridCoord record

function IntToOctal(const Value: integer): string;

translate an integer to an octal string (see also IntToRadix)

function IntToRadix(Value: integer; Radix: byte): string;

translate an integer to a radix (base) coded string, e.g.
- IntToRadix(100,16) converts into a hexadecimal (number) string
- IntToRadix(100,2) converts into a string consisting only of 0 and 1
- IntToRadix(100,8) means IntToOctal

hint: Radix must be in the range of 2..16

function IntToRadix64(Value: int64; Radix: byte): string;

 

function IntToRadixLen(Value: integer; Radix, Len: byte): string;

translate an integer to a radix coded string and left fill with 0 (see also IntToRadix)

function IntToRadixLen64(Value: int64; Radix, Len: byte): string;

 

function IsKeyDown(aKey: integer): boolean;

check whether the given key (VK_...) is currently down

function Max(a1, a2: integer): integer;

returns the higer of the two numbers

function Min(a1, a2: integer): integer;

returns the lower of the two numbers

function OctalToInt(const Value: string): integer;

translate an number string built on radix 8 into an integer (see also RadixToInt)

function RadixToInt(Value: string; Radix: byte): integer;

translate a radix coded number string into an integer, e.g.
- RadixToInt('0f', 16) => 15
- RadixToInt('755', 8) => 493

function RadixToInt64(Value: string; Radix: byte): int64;

 

procedure SwapWideChar(var WChar: WideChar);

swap lo and high byte of a widechar

procedure TranslateBufferFromAnsi(const TType: TMPHTranslationKind; aBuffer, bBuffer: PChar; const aCount: integer);

translate data from Ansi to a different character set (see also TMPHTranslationKind)
- TType: translate to this character set
- aBuffer: pointer to source data
- bBuffer: pointer to target data, must be allocated (may equal to aBuffer)
- aCount: number of bytes to translate

procedure TranslateBufferToAnsi(const TType: TMPHTranslationKind; aBuffer, bBuffer: PChar; const aCount: integer);

translate data from a different character set to Ansi (see also TranslateBufferFromAnsi)

Types

Overview

PMPHFindTable = ^TMPHFindTable
TMPHBookmark = record mPosition: integer; mInCharField: boolean; end
TMPHBookmarks = array[0..9] of TMPHBookmark
TMPHCharConv = array[TMPHCharConvType] of TMPHCharConvTable
TMPHCharConvTable = array[0..255] of Char
TMPHDrawCellEvent = procedure(Sender: TObject; ACanvas: TCanvas; ACol, ARow: Integer; var AWideText: WideString; ARect: TRect; var ADefaultDraw: Boolean) of object
TMPHFindEvent = procedure(Sender: TObject; const Pattern: PChar; const PatLength: integer; const SearchFrom, SearchUntil: integer; const IgnoreCase: boolean; const Wildcard: Char; var FoundPos: Integer) of object
TMPHFindTable = array[#0..#255] of Char
TMPHGetOffsetTextEvent = procedure(Sender: TObject; const Number: int64; var OffsetText: string) of object
TMPHOffsetFormat = record Format: string; Prefix, Suffix: string; MinWidth: integer; Flags: TMPHOffsetFormatFlags; Radix, _BytesPerUnit: byte; end
TMPHOffsetFormatFlags = set of TMPHOffsetFormatFlag
TMPHProgressEvent = procedure(Sender: TObject; const ProgressType: TMPHProgressKind; const aName: TFileName; const Percent: byte; var Cancel: boolean) of object
TMPHUndoFlags = set of TMPHUndoFlag

Description

PMPHFindTable = ^TMPHFindTable

precompiled converted character table types for faster data search

TMPHBookmark = record mPosition: integer; mInCharField: boolean; end

bookmark record:
defined by pressing SHIFT+CTRL+[0..9], goto bookmark by pressing CTRL+[0..9]

- mPosition: file position
- mInCharField: cursor in character pane (True) or hex number pane

TMPHBookmarks = array[0..9] of TMPHBookmark

array of bookmarks, representing keys 0..9

TMPHCharConv = array[TMPHCharConvType] of TMPHCharConvTable

character conversion data storage

TMPHCharConvTable = array[0..255] of Char

character conversion table

TMPHDrawCellEvent = procedure(Sender: TObject; ACanvas: TCanvas; ACol, ARow: Integer; var AWideText: WideString; ARect: TRect; var ADefaultDraw: Boolean) of object

owner draw event type. parameters:

- Sender: the hex editor
- ACanvas: the editor's canvas
- ACol, ARow: the position to be drawn
- AWideText: the text to be drawn
- ARect: the cell rectangle
- ADefaultDraw: if set to True (default), default drawing isperformed after the event handler returns. if set to false, the event handler must do all cell painting.

TMPHFindEvent = procedure(Sender: TObject; const Pattern: PChar; const PatLength: integer; const SearchFrom, SearchUntil: integer; const IgnoreCase: boolean; const Wildcard: Char; var FoundPos: Integer) of object

handler for custom search routines

- Pattern: the data to find - PatLength: length of the data to find - SearchFrom: first search position - SearchUntil: last search position - IgnoreCase: case sensitive? - Wilcard: Wildcard character (only used by FindWithWildcard) - FoundPos: result, set to -1 if data was not found

TMPHFindTable = array[#0..#255] of Char

 

TMPHGetOffsetTextEvent = procedure(Sender: TObject; const Number: int64; var OffsetText: string) of object

retrieve the "line number" to display by the application

- Number: the number to convert to text - OffsetText: the resulting text output

TMPHOffsetFormat = record Format: string; Prefix, Suffix: string; MinWidth: integer; Flags: TMPHOffsetFormatFlags; Radix, _BytesPerUnit: byte; end

offset format record

TMPHOffsetFormatFlags = set of TMPHOffsetFormatFlag

set of the above flags

TMPHProgressEvent = procedure(Sender: TObject; const ProgressType: TMPHProgressKind; const aName: TFileName; const Percent: byte; var Cancel: boolean) of object

progress event handler, used in OnProgress

- ProgressType: am i loading or saving? (see TMPHProgressKind)
- aName: name of file to be load from/saved to
- Percent: current progress (0..100)
- Cancel: if set to true, the load/save procedure will abort (no meaning in Find* methods)

TMPHUndoFlags = set of TMPHUndoFlag

set of undo flags

Enumerations

TMPHCaretKind
look of the editor's caret:
- ckFull: full block
- ckLeft: left line
- ckBottom: bottom line
- ckAuto: left line if InsertMode, full block if overwrite, bottom line if ReadOnlyView
 ckFull 
 ckLeft 
 ckBottom 
 ckAuto 
TMPHCharConvType
character conversion type
 cctFromAnsi 
 cctToAnsi 
TMPHOffsetFormatFlag
offset format flags
 offCalcWidth 
 offCalcRowcalculate minwidth depending on data size (width field = '-')
 offCalcColumncalculate _BytesPerUnit depending on bytes per row (=real line numbers)
 offBytesPerUnit" bytes per column (= column numbers)
TMPHProgressKind
action indicator used in OnProgress event handler:
- pkLoad: loading data
- pkSave: saving data
- pkFind: finding
 pkLoad 
 pkSave 
 pkFind 
TMPHTranslationKind
how to show a file's content in the character pane of the editor:
- tkAsIs: leave as is (current windows code page)
- tkDos8: current dos codepage
- tkASCII: 7 bit ascii
- tkMac: macintosh charset (translation always from/to ms cp 1252 (ms latin1)!!
- tkBCD: ibm ebcdic codepage 38 (translation always from/to ms cp 1252 (ms latin1)!!
- tkCustom: custom codepage stored in MPHCustomCharConv
 tkAsIs 
 tkDos8 
 tkASCII 
 tkMac 
 tkBCD 
 tkCustom 
TMPHUndoFlag
flags internally used in the undo storage
 ufKindBytesChangedkind of undo storage
 ufKindByteRemoved 
 ufKindInsertBuffer 
 ufKindReplace 
 ufKindAppendBuffer 
 ufKindNibbleInsert 
 ufKindNibbleDelete 
 ufKindConvert 
 ufKindSelection 
 ufKindCombinedstore a selection
 ufKindAllData 
 ufFlagByte1Changedadditional information
 ufFlagByte2Changed 
 ufFlagModified 
 ufFlag2ndByteCol 
 ufFlagInCharField 
 ufFlagHasSelection 
 ufFlagInsertMode 
 ufFlagIsUnicode 
 ufFlagIsUnicodeBigEndian 
 ufFlagHasDescription 

Constants

Overview

CM_INTUPDATECARET = CM_BASE + $100
CM_SELECTIONCHANGED = CM_BASE + $101
MPHOffsetDec = 'a:|'
MPHOffsetHex = '-!10:0x|'
MPHOffsetOct = '0!8:o|'
MPHTranslationDesc : array[TMPHTranslationKind] of string = (MPH_TK_ASIS, MPH_TK_DOS8, MPH_TK_ASCII7, MPH_TK_MAC, MPH_TK_BCD38, MPH_TK_CUSTOM)
MPHTranslationDescShort : array[TMPHTranslationKind] of string = (MPH_TK_ASIS_S, MPH_TK_DOS8_S, MPH_TK_ASCII7_S, MPH_TK_MAC_S, MPH_TK_BCD38_S, MPH_TK_CUSTOM_S)
MPH_CCONV_BCD38 : TMPHCharConv = ( (#$00, #$01, #$02, #$03, #$37, #$2D, #$2E, #$2F, #$16, #$05, #$25, #$0B, #$0C, #$0D, #$0E, #$0F, #$10, #$11, #$12, #$13, #$3C, #$3D, #$32, #$26, #$18, #$19, #$3F, #$27, #$1C, #$1D, #$1E, #$1F, #$40, #$4F, #$7F, #$7B, #$5B, #$6C, #$50, #$7D, #$4D, #$5D, #$5C, #$4E, #$6B, #$60, #$4B, #$61, #$F0, #$F1, #$F2, #$F3, #$F4, #$F5, #$F6, #$F7, #$F8, #$F9, #$7A, #$5E, #$4C, #$7E, #$6E, #$6F, #$7C, #$C1, #$C2, #$C3, #$C4, #$C5, #$C6, #$C7, #$C8, #$C9, #$D1, #$D2, #$D3, #$D4, #$D5, #$D6, #$D7, #$D8, #$D9, #$E2, #$E3, #$E4, #$E5, #$E6, #$E7, #$E8, #$E9, #$4A, #$E0, #$5A, #$5F, #$6D, #$79, #$81, #$82, #$83, #$84, #$85, #$86, #$87, #$88, #$89, #$91, #$92, #$93, #$94, #$95, #$96, #$97, #$98, #$99, #$A2, #$A3, #$A4, #$A5, #$A6, #$A7, #$A8, #$A9, #$C0, #$20, #$D0, #$A1, #$07, #$80, #$22, #$62, #$63, #$64, #$65, #$66, #$67, #$68, #$69, #$8A, #$8B, #$8C, #$8D, #$8E, #$8F, #$90, #$77, #$2C, #$0A, #$3B, #$3E, #$1A, #$70, #$71, #$72, #$9A, #$9B, #$9C, #$9D, #$9E, #$9F, #$A0, #$15, #$73, #$74, #$75, #$76, #$6A, #$78, #$09, #$3A, #$AA, #$AB, #$AC, #$AD, #$AE, #$AF, #$B0, #$B1, #$B2, #$B3, #$B4, #$B5, #$B6, #$B7, #$B8, #$B9, #$BA, #$BB, #$BC, #$BD, #$BE, #$BF, #$23, #$41, #$42, #$43, #$44, #$45, #$46, #$47, #$48, #$49, #$CA, #$CB, #$CC, #$CD, #$CE, #$CF, #$1B, #$24, #$06, #$14, #$28, #$2B, #$21, #$17, #$51, #$52, #$DA, #$DB, #$DC, #$DD, #$DE, #$DF, #$2A, #$E1, #$53, #$54, #$55, #$56, #$57, #$58, #$59, #$29, #$EA, #$EB, #$EC, #$ED, #$EE, #$EF, #$30, #$31, #$08, #$33, #$34, #$35, #$36, #$04, #$38, #$39, #$FA, #$FB, #$FC, #$FD, #$FE, #$FF ), (#$00, #$01, #$02, #$03, #$F7, #$09, #$D2, #$7F, #$F2, #$A8, #$93, #$0B, #$0C, #$0D, #$0E, #$0F, #$10, #$11, #$12, #$13, #$D3, #$A1, #$08, #$D7, #$18, #$19, #$96, #$D0, #$1C, #$1D, #$1E, #$1F, #$7C, #$D6, #$81, #$C0, #$D1, #$0A, #$17, #$1B, #$D4, #$E9, #$E0, #$D5, #$92, #$05, #$06, #$07, #$F0, #$F1, #$16, #$F3, #$F4, #$F5, #$F6, #$04, #$F8, #$F9, #$A9, #$94, #$14, #$15, #$95, #$1A, #$20, #$C1, #$C2, #$C3, #$C4, #$C5, #$C6, #$C7, #$C8, #$C9, #$5B, #$2E, #$3C, #$28, #$2B, #$21, #$26, #$D8, #$D9, #$E2, #$E3, #$E4, #$E5, #$E6, #$E7, #$E8, #$5D, #$24, #$2A, #$29, #$3B, #$5E, #$2D, #$2F, #$82, #$83, #$84, #$85, #$86, #$87, #$88, #$89, #$A6, #$2C, #$25, #$5F, #$3E, #$3F, #$97, #$98, #$99, #$A2, #$A3, #$A4, #$A5, #$91, #$A7, #$60, #$3A, #$23, #$40, #$27, #$3D, #$22, #$80, #$61, #$62, #$63, #$64, #$65, #$66, #$67, #$68, #$69, #$8A, #$8B, #$8C, #$8D, #$8E, #$8F, #$90, #$6A, #$6B, #$6C, #$6D, #$6E, #$6F, #$70, #$71, #$72, #$9A, #$9B, #$9C, #$9D, #$9E, #$9F, #$A0, #$7E, #$73, #$74, #$75, #$76, #$77, #$78, #$79, #$7A, #$AA, #$AB, #$AC, #$AD, #$AE, #$AF, #$B0, #$B1, #$B2, #$B3, #$B4, #$B5, #$B6, #$B7, #$B8, #$B9, #$BA, #$BB, #$BC, #$BD, #$BE, #$BF, #$7B, #$41, #$42, #$43, #$44, #$45, #$46, #$47, #$48, #$49, #$CA, #$CB, #$CC, #$CD, #$CE, #$CF, #$7D, #$4A, #$4B, #$4C, #$4D, #$4E, #$4F, #$50, #$51, #$52, #$DA, #$DB, #$DC, #$DD, #$DE, #$DF, #$5C, #$E1, #$53, #$54, #$55, #$56, #$57, #$58, #$59, #$5A, #$EA, #$EB, #$EC, #$ED, #$EE, #$EF, #$30, #$31, #$32, #$33, #$34, #$35, #$36, #$37, #$38, #$39, #$FA, #$FB, #$FC, #$FD, #$FE, #$FF ) )
MPH_CCONV_MAC : TMPHCharConv = ( (#$00, #$01, #$02, #$03, #$04, #$05, #$06, #$07, #$08, #$09, #$0A, #$0B, #$0C, #$0D, #$0E, #$0F, #$10, #$11, #$12, #$13, #$14, #$15, #$16, #$17, #$18, #$19, #$1A, #$1B, #$1C, #$1D, #$1E, #$1F, #$20, #$21, #$22, #$23, #$24, #$25, #$26, #$27, #$28, #$29, #$2A, #$2B, #$2C, #$2D, #$2E, #$2F, #$30, #$31, #$32, #$33, #$34, #$35, #$36, #$37, #$38, #$39, #$3A, #$3B, #$3C, #$3D, #$3E, #$3F, #$40, #$41, #$42, #$43, #$44, #$45, #$46, #$47, #$48, #$49, #$4A, #$4B, #$4C, #$4D, #$4E, #$4F, #$50, #$51, #$52, #$53, #$54, #$55, #$56, #$57, #$58, #$59, #$5A, #$5B, #$5C, #$5D, #$5E, #$5F, #$60, #$61, #$62, #$63, #$64, #$65, #$66, #$67, #$68, #$69, #$6A, #$6B, #$6C, #$6D, #$6E, #$6F, #$70, #$71, #$72, #$73, #$74, #$75, #$76, #$77, #$78, #$79, #$7A, #$7B, #$7C, #$7D, #$7E, #$7F, #$C4, #$C5, #$AB, #$C9, #$D1, #$F7, #$DC, #$E1, #$E0, #$E2, #$E4, #$E3, #$AC, #$B0, #$AA, #$F8, #$D5, #$CE, #$C3, #$CF, #$D3, #$D4, #$D2, #$DB, #$DA, #$DD, #$F6, #$F5, #$FA, #$F9, #$FB, #$FC, #$A0, #$C1, #$A2, #$A3, #$DF, #$B4, #$B6, #$A4, #$C6, #$A9, #$BB, #$C7, #$C2, #$AD, #$A8, #$FF, #$A1, #$B1, #$B2, #$B3, #$A5, #$B5, #$A6, #$B7, #$B8, #$B9, #$BC, #$C8, #$BA, #$BD, #$CA, #$C0, #$CB, #$E7, #$E5, #$CC, #$80, #$81, #$AE, #$82, #$E9, #$83, #$E6, #$E8, #$ED, #$EA, #$EB, #$EC, #$D0, #$84, #$F1, #$EE, #$EF, #$CD, #$85, #$D7, #$AF, #$F4, #$F2, #$F3, #$86, #$D9, #$DE, #$A7, #$88, #$87, #$89, #$8B, #$8A, #$8C, #$BE, #$8D, #$8F, #$8E, #$90, #$91, #$93, #$92, #$94, #$95, #$F0, #$96, #$98, #$97, #$99, #$9B, #$9A, #$D6, #$BF, #$9D, #$9C, #$9E, #$9F, #$FD, #$FE, #$D8 ), (#$00, #$01, #$02, #$03, #$04, #$05, #$06, #$07, #$08, #$09, #$0A, #$0B, #$0C, #$0D, #$0E, #$0F, #$10, #$11, #$12, #$13, #$14, #$15, #$16, #$17, #$18, #$19, #$1A, #$1B, #$1C, #$1D, #$1E, #$1F, #$20, #$21, #$22, #$23, #$24, #$25, #$26, #$27, #$28, #$29, #$2A, #$2B, #$2C, #$2D, #$2E, #$2F, #$30, #$31, #$32, #$33, #$34, #$35, #$36, #$37, #$38, #$39, #$3A, #$3B, #$3C, #$3D, #$3E, #$3F, #$40, #$41, #$42, #$43, #$44, #$45, #$46, #$47, #$48, #$49, #$4A, #$4B, #$4C, #$4D, #$4E, #$4F, #$50, #$51, #$52, #$53, #$54, #$55, #$56, #$57, #$58, #$59, #$5A, #$5B, #$5C, #$5D, #$5E, #$5F, #$60, #$61, #$62, #$63, #$64, #$65, #$66, #$67, #$68, #$69, #$6A, #$6B, #$6C, #$6D, #$6E, #$6F, #$70, #$71, #$72, #$73, #$74, #$75, #$76, #$77, #$78, #$79, #$7A, #$7B, #$7C, #$7D, #$7E, #$7F, #$C4, #$C5, #$C7, #$C9, #$D1, #$D6, #$DC, #$E1, #$E0, #$E2, #$E4, #$E3, #$E5, #$E7, #$E9, #$E8, #$EA, #$EB, #$ED, #$EC, #$EE, #$EF, #$F1, #$F3, #$F2, #$F4, #$F6, #$F5, #$FA, #$F9, #$FB, #$FC, #$A0, #$B0, #$A2, #$A3, #$A7, #$B4, #$B6, #$DF, #$AE, #$A9, #$8E, #$82, #$8C, #$AD, #$C6, #$D8, #$8D, #$B1, #$B2, #$B3, #$A5, #$B5, #$A6, #$B7, #$B8, #$B9, #$BC, #$AA, #$BA, #$BD, #$E6, #$F8, #$BF, #$A1, #$AC, #$92, #$80, #$81, #$A8, #$AB, #$BB, #$83, #$BE, #$C0, #$C3, #$D5, #$91, #$93, #$D0, #$84, #$96, #$94, #$95, #$90, #$F7, #$D7, #$FF, #$DD, #$98, #$97, #$86, #$99, #$DE, #$A4, #$88, #$87, #$89, #$8B, #$8A, #$C2, #$CA, #$C1, #$CB, #$C8, #$CD, #$CE, #$CF, #$CC, #$D3, #$D4, #$F0, #$D2, #$DA, #$DB, #$D9, #$9B, #$9A, #$85, #$8F, #$9D, #$9C, #$9E, #$9F, #$FD, #$FE, #$AF ) )
MPH_FILEIO_BLOCKSIZE = $F000
MPH_TK_ASCII7 = 'ASCII 7 Bit'
MPH_TK_ASCII7_S = 'ASC'
MPH_TK_ASIS = 'Windows'
MPH_TK_ASIS_S = 'WIN'
MPH_TK_BCD38 = 'EBCDIC Codepage 38'
MPH_TK_BCD38_S = 'BCD'
MPH_TK_CUSTOM = 'Custom Translation'
MPH_TK_CUSTOM_S = 'Cust'
MPH_TK_DOS8 = 'Dos 8 Bit'
MPH_TK_DOS8_S = 'DOS'
MPH_TK_MAC = 'Macintosh'
MPH_TK_MAC_S = 'MAC'
MPH_UC = 'Unicode Little Endian'
MPH_UC_BE = 'Unicode Big Endian'
MPH_UC_BE_S = 'UCBE'
MPH_UC_S = 'UCLE'

Description

CM_INTUPDATECARET = CM_BASE + $100

this message is posted to the hex editor when it should update the caret position

CM_SELECTIONCHANGED = CM_BASE + $101

this message is posted when an OnSelectionChange event is to be fired

MPHOffsetDec = 'a:|'

standard offset format: decimal

MPHOffsetHex = '-!10:0x|'

standard offset format: hex, auto min width, prefixed by 0x

MPHOffsetOct = '0!8:o|'

standard offset format: octal, suffixed by a small "o"

MPHTranslationDesc : array[TMPHTranslationKind] of string = (MPH_TK_ASIS, MPH_TK_DOS8, MPH_TK_ASCII7, MPH_TK_MAC, MPH_TK_BCD38, MPH_TK_CUSTOM)

long descriptions of the different translations (e.g. for menues)

MPHTranslationDescShort : array[TMPHTranslationKind] of string = (MPH_TK_ASIS_S, MPH_TK_DOS8_S, MPH_TK_ASCII7_S, MPH_TK_MAC_S, MPH_TK_BCD38_S, MPH_TK_CUSTOM_S)

short descriptions of the different translations (e.g. for status bars)

MPH_CCONV_BCD38 : TMPHCharConv = ( (#$00, #$01, #$02, #$03, #$37, #$2D, #$2E, #$2F, #$16, #$05, #$25, #$0B, #$0C, #$0D, #$0E, #$0F, #$10, #$11, #$12, #$13, #$3C, #$3D, #$32, #$26, #$18, #$19, #$3F, #$27, #$1C, #$1D, #$1E, #$1F, #$40, #$4F, #$7F, #$7B, #$5B, #$6C, #$50, #$7D, #$4D, #$5D, #$5C, #$4E, #$6B, #$60, #$4B, #$61, #$F0, #$F1, #$F2, #$F3, #$F4, #$F5, #$F6, #$F7, #$F8, #$F9, #$7A, #$5E, #$4C, #$7E, #$6E, #$6F, #$7C, #$C1, #$C2, #$C3, #$C4, #$C5, #$C6, #$C7, #$C8, #$C9, #$D1, #$D2, #$D3, #$D4, #$D5, #$D6, #$D7, #$D8, #$D9, #$E2, #$E3, #$E4, #$E5, #$E6, #$E7, #$E8, #$E9, #$4A, #$E0, #$5A, #$5F, #$6D, #$79, #$81, #$82, #$83, #$84, #$85, #$86, #$87, #$88, #$89, #$91, #$92, #$93, #$94, #$95, #$96, #$97, #$98, #$99, #$A2, #$A3, #$A4, #$A5, #$A6, #$A7, #$A8, #$A9, #$C0, #$20, #$D0, #$A1, #$07, #$80, #$22, #$62, #$63, #$64, #$65, #$66, #$67, #$68, #$69, #$8A, #$8B, #$8C, #$8D, #$8E, #$8F, #$90, #$77, #$2C, #$0A, #$3B, #$3E, #$1A, #$70, #$71, #$72, #$9A, #$9B, #$9C, #$9D, #$9E, #$9F, #$A0, #$15, #$73, #$74, #$75, #$76, #$6A, #$78, #$09, #$3A, #$AA, #$AB, #$AC, #$AD, #$AE, #$AF, #$B0, #$B1, #$B2, #$B3, #$B4, #$B5, #$B6, #$B7, #$B8, #$B9, #$BA, #$BB, #$BC, #$BD, #$BE, #$BF, #$23, #$41, #$42, #$43, #$44, #$45, #$46, #$47, #$48, #$49, #$CA, #$CB, #$CC, #$CD, #$CE, #$CF, #$1B, #$24, #$06, #$14, #$28, #$2B, #$21, #$17, #$51, #$52, #$DA, #$DB, #$DC, #$DD, #$DE, #$DF, #$2A, #$E1, #$53, #$54, #$55, #$56, #$57, #$58, #$59, #$29, #$EA, #$EB, #$EC, #$ED, #$EE, #$EF, #$30, #$31, #$08, #$33, #$34, #$35, #$36, #$04, #$38, #$39, #$FA, #$FB, #$FC, #$FD, #$FE, #$FF ), (#$00, #$01, #$02, #$03, #$F7, #$09, #$D2, #$7F, #$F2, #$A8, #$93, #$0B, #$0C, #$0D, #$0E, #$0F, #$10, #$11, #$12, #$13, #$D3, #$A1, #$08, #$D7, #$18, #$19, #$96, #$D0, #$1C, #$1D, #$1E, #$1F, #$7C, #$D6, #$81, #$C0, #$D1, #$0A, #$17, #$1B, #$D4, #$E9, #$E0, #$D5, #$92, #$05, #$06, #$07, #$F0, #$F1, #$16, #$F3, #$F4, #$F5, #$F6, #$04, #$F8, #$F9, #$A9, #$94, #$14, #$15, #$95, #$1A, #$20, #$C1, #$C2, #$C3, #$C4, #$C5, #$C6, #$C7, #$C8, #$C9, #$5B, #$2E, #$3C, #$28, #$2B, #$21, #$26, #$D8, #$D9, #$E2, #$E3, #$E4, #$E5, #$E6, #$E7, #$E8, #$5D, #$24, #$2A, #$29, #$3B, #$5E, #$2D, #$2F, #$82, #$83, #$84, #$85, #$86, #$87, #$88, #$89, #$A6, #$2C, #$25, #$5F, #$3E, #$3F, #$97, #$98, #$99, #$A2, #$A3, #$A4, #$A5, #$91, #$A7, #$60, #$3A, #$23, #$40, #$27, #$3D, #$22, #$80, #$61, #$62, #$63, #$64, #$65, #$66, #$67, #$68, #$69, #$8A, #$8B, #$8C, #$8D, #$8E, #$8F, #$90, #$6A, #$6B, #$6C, #$6D, #$6E, #$6F, #$70, #$71, #$72, #$9A, #$9B, #$9C, #$9D, #$9E, #$9F, #$A0, #$7E, #$73, #$74, #$75, #$76, #$77, #$78, #$79, #$7A, #$AA, #$AB, #$AC, #$AD, #$AE, #$AF, #$B0, #$B1, #$B2, #$B3, #$B4, #$B5, #$B6, #$B7, #$B8, #$B9, #$BA, #$BB, #$BC, #$BD, #$BE, #$BF, #$7B, #$41, #$42, #$43, #$44, #$45, #$46, #$47, #$48, #$49, #$CA, #$CB, #$CC, #$CD, #$CE, #$CF, #$7D, #$4A, #$4B, #$4C, #$4D, #$4E, #$4F, #$50, #$51, #$52, #$DA, #$DB, #$DC, #$DD, #$DE, #$DF, #$5C, #$E1, #$53, #$54, #$55, #$56, #$57, #$58, #$59, #$5A, #$EA, #$EB, #$EC, #$ED, #$EE, #$EF, #$30, #$31, #$32, #$33, #$34, #$35, #$36, #$37, #$38, #$39, #$FA, #$FB, #$FC, #$FD, #$FE, #$FF ) )

ebcdic cp38..ms ansi conversion

MPH_CCONV_MAC : TMPHCharConv = ( (#$00, #$01, #$02, #$03, #$04, #$05, #$06, #$07, #$08, #$09, #$0A, #$0B, #$0C, #$0D, #$0E, #$0F, #$10, #$11, #$12, #$13, #$14, #$15, #$16, #$17, #$18, #$19, #$1A, #$1B, #$1C, #$1D, #$1E, #$1F, #$20, #$21, #$22, #$23, #$24, #$25, #$26, #$27, #$28, #$29, #$2A, #$2B, #$2C, #$2D, #$2E, #$2F, #$30, #$31, #$32, #$33, #$34, #$35, #$36, #$37, #$38, #$39, #$3A, #$3B, #$3C, #$3D, #$3E, #$3F, #$40, #$41, #$42, #$43, #$44, #$45, #$46, #$47, #$48, #$49, #$4A, #$4B, #$4C, #$4D, #$4E, #$4F, #$50, #$51, #$52, #$53, #$54, #$55, #$56, #$57, #$58, #$59, #$5A, #$5B, #$5C, #$5D, #$5E, #$5F, #$60, #$61, #$62, #$63, #$64, #$65, #$66, #$67, #$68, #$69, #$6A, #$6B, #$6C, #$6D, #$6E, #$6F, #$70, #$71, #$72, #$73, #$74, #$75, #$76, #$77, #$78, #$79, #$7A, #$7B, #$7C, #$7D, #$7E, #$7F, #$C4, #$C5, #$AB, #$C9, #$D1, #$F7, #$DC, #$E1, #$E0, #$E2, #$E4, #$E3, #$AC, #$B0, #$AA, #$F8, #$D5, #$CE, #$C3, #$CF, #$D3, #$D4, #$D2, #$DB, #$DA, #$DD, #$F6, #$F5, #$FA, #$F9, #$FB, #$FC, #$A0, #$C1, #$A2, #$A3, #$DF, #$B4, #$B6, #$A4, #$C6, #$A9, #$BB, #$C7, #$C2, #$AD, #$A8, #$FF, #$A1, #$B1, #$B2, #$B3, #$A5, #$B5, #$A6, #$B7, #$B8, #$B9, #$BC, #$C8, #$BA, #$BD, #$CA, #$C0, #$CB, #$E7, #$E5, #$CC, #$80, #$81, #$AE, #$82, #$E9, #$83, #$E6, #$E8, #$ED, #$EA, #$EB, #$EC, #$D0, #$84, #$F1, #$EE, #$EF, #$CD, #$85, #$D7, #$AF, #$F4, #$F2, #$F3, #$86, #$D9, #$DE, #$A7, #$88, #$87, #$89, #$8B, #$8A, #$8C, #$BE, #$8D, #$8F, #$8E, #$90, #$91, #$93, #$92, #$94, #$95, #$F0, #$96, #$98, #$97, #$99, #$9B, #$9A, #$D6, #$BF, #$9D, #$9C, #$9E, #$9F, #$FD, #$FE, #$D8 ), (#$00, #$01, #$02, #$03, #$04, #$05, #$06, #$07, #$08, #$09, #$0A, #$0B, #$0C, #$0D, #$0E, #$0F, #$10, #$11, #$12, #$13, #$14, #$15, #$16, #$17, #$18, #$19, #$1A, #$1B, #$1C, #$1D, #$1E, #$1F, #$20, #$21, #$22, #$23, #$24, #$25, #$26, #$27, #$28, #$29, #$2A, #$2B, #$2C, #$2D, #$2E, #$2F, #$30, #$31, #$32, #$33, #$34, #$35, #$36, #$37, #$38, #$39, #$3A, #$3B, #$3C, #$3D, #$3E, #$3F, #$40, #$41, #$42, #$43, #$44, #$45, #$46, #$47, #$48, #$49, #$4A, #$4B, #$4C, #$4D, #$4E, #$4F, #$50, #$51, #$52, #$53, #$54, #$55, #$56, #$57, #$58, #$59, #$5A, #$5B, #$5C, #$5D, #$5E, #$5F, #$60, #$61, #$62, #$63, #$64, #$65, #$66, #$67, #$68, #$69, #$6A, #$6B, #$6C, #$6D, #$6E, #$6F, #$70, #$71, #$72, #$73, #$74, #$75, #$76, #$77, #$78, #$79, #$7A, #$7B, #$7C, #$7D, #$7E, #$7F, #$C4, #$C5, #$C7, #$C9, #$D1, #$D6, #$DC, #$E1, #$E0, #$E2, #$E4, #$E3, #$E5, #$E7, #$E9, #$E8, #$EA, #$EB, #$ED, #$EC, #$EE, #$EF, #$F1, #$F3, #$F2, #$F4, #$F6, #$F5, #$FA, #$F9, #$FB, #$FC, #$A0, #$B0, #$A2, #$A3, #$A7, #$B4, #$B6, #$DF, #$AE, #$A9, #$8E, #$82, #$8C, #$AD, #$C6, #$D8, #$8D, #$B1, #$B2, #$B3, #$A5, #$B5, #$A6, #$B7, #$B8, #$B9, #$BC, #$AA, #$BA, #$BD, #$E6, #$F8, #$BF, #$A1, #$AC, #$92, #$80, #$81, #$A8, #$AB, #$BB, #$83, #$BE, #$C0, #$C3, #$D5, #$91, #$93, #$D0, #$84, #$96, #$94, #$95, #$90, #$F7, #$D7, #$FF, #$DD, #$98, #$97, #$86, #$99, #$DE, #$A4, #$88, #$87, #$89, #$8B, #$8A, #$C2, #$CA, #$C1, #$CB, #$C8, #$CD, #$CE, #$CF, #$CC, #$D3, #$D4, #$F0, #$D2, #$DA, #$DB, #$D9, #$9B, #$9A, #$85, #$8F, #$9D, #$9C, #$9E, #$9F, #$FD, #$FE, #$AF ) )

macintosh..ms ansi conversion

MPH_FILEIO_BLOCKSIZE = $F000

block size in file i/o

MPH_TK_ASCII7 = 'ASCII 7 Bit'

tkASCII

MPH_TK_ASCII7_S = 'ASC'

tkASCII

MPH_TK_ASIS = 'Windows'

tkAsIs

MPH_TK_ASIS_S = 'WIN'

tkAsIs

MPH_TK_BCD38 = 'EBCDIC Codepage 38'

tkBCD

MPH_TK_BCD38_S = 'BCD'

tkBCD

MPH_TK_CUSTOM = 'Custom Translation'

tkCustom

MPH_TK_CUSTOM_S = 'Cust'

tkCustom

MPH_TK_DOS8 = 'Dos 8 Bit'

tkDos8

MPH_TK_DOS8_S = 'DOS'

tkDos8

MPH_TK_MAC = 'Macintosh'

tkMac

MPH_TK_MAC_S = 'MAC'

tkMac

MPH_UC = 'Unicode Little Endian'

unicode

MPH_UC_BE = 'Unicode Big Endian'

unicode be

MPH_UC_BE_S = 'UCBE'

unicode be

MPH_UC_S = 'UCLE'

unicode

Variables

Overview

MPHCustomCharConv: TMPHCharConv

Description

MPHCustomCharConv: TMPHCharConv

this character conversion is used in translations from tkAsIs to tkCustom (see TMPHTranslationKind)

Author

(C)1997-2004 markus stephany, merkes@mirkes.de, all rights reserved.

Last Modified

06-15-2004


Generated by DIPasDoc 0.8.7 on Di 15. Jun 2004 20:02:30