From ef8b5cfa5b4a19535b5b0e716d20919c05af7ebd Mon Sep 17 00:00:00 2001 From: Merlijn Wajer Date: Fri, 5 Aug 2011 14:33:36 +0200 Subject: [PATCH 1/3] Lape: Cleaned up exported methods file. --- Units/MMLAddon/LPInc/lpexportedmethods.inc | 397 +++++++++++++++++- Units/MMLAddon/LPInc/lpexportedmethodsinc.inc | 323 -------------- 2 files changed, 395 insertions(+), 325 deletions(-) delete mode 100644 Units/MMLAddon/LPInc/lpexportedmethodsinc.inc diff --git a/Units/MMLAddon/LPInc/lpexportedmethods.inc b/Units/MMLAddon/LPInc/lpexportedmethods.inc index 6c57193..5090e96 100644 --- a/Units/MMLAddon/LPInc/lpexportedmethods.inc +++ b/Units/MMLAddon/LPInc/lpexportedmethods.inc @@ -21,5 +21,398 @@ lpexportedmethods.inc for the Mufasa Macro Library } -{$I lpexportedmethodsinc.inc} -//These will be added from Generator... +{ DTM } + +AddGlobalFunc('function FindDTM(DTM: Integer; var x, y: Integer; xs, ys, xe, ye: Integer): Boolean', @Lape_FindDTM); +AddGlobalFunc('function FindDTMs(DTM: Integer; var p: TPointArray; xs, ys, xe, ye: Integer): Boolean', @Lape_FindDTMs); +AddGlobalFunc('function FindDTMRotatedAlternating(DTM: Integer; var x, y: Integer; xs, ys, xe, ye: Integer; sAngle, eAngle, aStep: Extended; var aFound: Extended): Boolean', @Lape_FindDTMRotatedAlternating); +AddGlobalFunc('function FindDTMRotatedSE(DTM: Integer; var x, y: Integer; xs, ys, xe, ye: Integer; sAngle, eAngle, aStep: Extended; var aFound: Extended): Boolean', @Lape_FindDTMRotatedSE); +AddGlobalFunc('function FindDTMsRotatedAlternating(DTM: Integer; var Points: TPointArray; xs, ys, xe, ye: Integer; sAngle, eAngle, aStep: Extended; var aFound: T2DExtendedArray): Boolean', @Lape_FindDTMsRotatedAlternating); +AddGlobalFunc('function FindDTMsRotatedSE(DTM: Integer; var Points: TPointArray; xs, ys, xe, ye: Integer; sAngle, eAngle, aStep: Extended; var aFound: T2DExtendedArray): Boolean', @Lape_FindDTMsRotatedSE); +AddGlobalFunc('procedure SetDTMName(DTM: integer; const name: string);', @Lape_SetDTMName); +AddGlobalFunc('function DTMFromString(const DTMString: String): Integer', @Lape_DTMFromString); +AddGlobalFunc('procedure FreeDTM(DTM: Integer);', @Lape_FreeDTM); +//AddGlobalFunc('function GetDTM(index: Integer): TMDTM', @Lape_GetDTM); +AddGlobalFunc('function AddTSDTM(const d: TSDTM): Integer', @Lape_AddTSDTM); +//AddGlobalFunc('function AddDTM(const d: TMDTM): Integer', @Lape_AddDTM); +//AddGlobalFunc('procedure PrintDTM(const aDTM: TMDTM);', @Lape_PrintDTM); +//AddGlobalFunc('function MDTMToSDTM(Const DTM: TMDTM): TSDTM', @Lape_MDTMToSDTM); +//AddGlobalFunc('function SDTMToMDTM(Const DTM: TSDTM): TMDTM', @Lape_SDTMToMDTM); +AddGlobalFunc('function CreateDTMPoint(x,y,c,t,asz: integer; bp: boolean): TMDTMPoint', @Lape_CreateDTMPoint); + +{ Bitmap } + +AddGlobalFunc('function CreateBitmapString(bmp: integer): string', @Lape_CreateBitmapString); +//AddGlobalFunc('function GetMufasaBitmap(bmp: integer): TMufasaBitmap', @Lape_GetMufasaBitmap); +AddGlobalFunc('function CreateBitmap(w,h: integer): integer', @Lape_CreateBitmap); +AddGlobalFunc('procedure FreeBitmap(Number: integer);', @Lape_FreeBitmap); +AddGlobalFunc('procedure SaveBitmap(Bmp: integer; path: string);', @Lape_SaveBitmap); +AddGlobalFunc('function BitmapFromString(Width,height: integer; Data: string): integer', @Lape_BitmapFromString); +AddGlobalFunc('function LoadBitmap(Path: String): integer', @Lape_LoadBitmap); +AddGlobalFunc('procedure SetBitmapSize(Bmp,NewW,NewH: integer);', @Lape_SetBitmapSize); +AddGlobalFunc('procedure StretchBitmapResize(Bmp,NewW,NewH: integer);', @Lape_StretchBitmapResize); +AddGlobalFunc('procedure GetBitmapSize(Bmp: integer; var BmpW,BmpH: integer);', @Lape_GetBitmapSize); +AddGlobalFunc('procedure SetBitmapName(Bmp: integer; name: string);', @Lape_SetBitmapName); +AddGlobalFunc('function CreateMirroredBitmap(Bmp: integer): integer', @Lape_CreateMirroredBitmap); +AddGlobalFunc('function CreateMirroredBitmapEx(Bmp: integer; MirrorStyle: TBmpMirrorStyle): integer', @Lape_CreateMirroredBitmapEx); +AddGlobalFunc('function FastGetPixel(bmp,x,y: integer): LongWord', @Lape_FastGetPixel); +AddGlobalFunc('function FastGetPixels(bmp: integer; TPA: TPointArray): TIntegerArray', @Lape_FastGetPixels); +AddGlobalFunc('function GetBitmapAreaColors(bmp,xs, ys, xe, ye: Integer): T2DIntArray', @Lape_GetBitmapAreaColors); +AddGlobalFunc('procedure FastSetPixel(Bmp,x,y: integer; Color: TColor);', @Lape_FastSetPixel); +AddGlobalFunc('procedure FastSetPixels(Bmp: integer; TPA: TPointArray; Colors: TIntegerArray);', @Lape_FastSetPixels); +AddGlobalFunc('procedure DrawTPABitmap(bitmap: integer; TPA: TPointArray; Color: integer);', @Lape_DrawTPABitmap); +AddGlobalFunc('procedure DrawATPABitmap(bitmap: integer; ATPA: T2DPointArray);', @Lape_DrawATPABitmap); +AddGlobalFunc('procedure DrawATPABitmapEx(bitmap: integer; ATPA: T2DPointArray; Colors: TIntegerArray);', @Lape_DrawATPABitmapEx); +AddGlobalFunc('procedure FastDrawClear(bmp: integer; Color: TColor);', @Lape_FastDrawClear); +//AddGlobalFunc('procedure DrawBitmap(Bmp: Integer; Dest: TCanvas; x, y: Integer);', @Lape_DrawBitmap); +AddGlobalFunc('procedure FastDrawTransparent(x, y: Integer; SourceBitmap, TargetBitmap: Integer);', @Lape_FastDrawTransparent); +AddGlobalFunc('procedure SetTransparentColor(Bmp: integer; Color: TColor);', @Lape_SetTransparentColor); +AddGlobalFunc('function GetTransparentColor(Bmp: integer): TColor', @Lape_GetTransparentColor); +AddGlobalFunc('procedure FastReplaceColor(bmp: Integer; OldColor, NewColor: TColor);', @Lape_FastReplaceColor); +AddGlobalFunc('procedure CopyClientToBitmap(bmp, xs, ys, xe, ye: Integer);', @Lape_CopyClientToBitmap); +AddGlobalFunc('function BitmapFromClient(const xs, ys, xe, ye: Integer): Integer', @Lape_BitmapFromClient); +AddGlobalFunc('function FindBitmap(Bitmap: integer; var x, y: Integer): Boolean', @Lape_FindBitmap); +AddGlobalFunc('function FindBitmapIn(bitmap: integer; var x, y: Integer; xs, ys, xe, ye: Integer): Boolean', @Lape_FindBitmapIn); +AddGlobalFunc('function FindBitmapToleranceIn(bitmap: integer; var x, y: Integer; xs, ys, xe, ye: Integer; tolerance: Integer): Boolean', @Lape_FindBitmapToleranceIn); +AddGlobalFunc('function FindBitmapSpiral(bitmap: Integer; var x, y: Integer; xs, ys, xe, ye: Integer): Boolean', @Lape_FindBitmapSpiral); +AddGlobalFunc('function FindBitmapsSpiralTolerance(bitmap: integer; x, y: Integer; var Points: TPointArray; xs, ys, xe, ye,tolerance: Integer): Boolean', @Lape_FindBitmapsSpiralTolerance); +AddGlobalFunc('function FindBitmapSpiralTolerance(bitmap: integer; var x, y: Integer; xs, ys, xe, ye,tolerance: integer): Boolean', @Lape_FindBitmapSpiralTolerance); +AddGlobalFunc('function RotateBitmap(bitmap: Integer; angle: Extended): Integer', @Lape_RotateBitmap); +AddGlobalFunc('function Desaturate(Bitmap: integer): integer', @Lape_Desaturate); +AddGlobalFunc('procedure InvertBitmap(Bitmap: integer);', @Lape_InvertBitmap); +AddGlobalFunc('function CopyBitmap(Bitmap: integer): integer', @Lape_CopyBitmap); +AddGlobalFunc('function GreyScaleBitmap(Bitmap: integer): integer', @Lape_GreyScaleBitmap); +AddGlobalFunc('function BrightnessBitmap(Bitmap,br: integer): integer', @Lape_BrightnessBitmap); +AddGlobalFunc('function ContrastBitmap(bitmap: integer; co: extended): integer', @Lape_ContrastBitmap); +AddGlobalFunc('function PosterizeBitmap(Bitmap: integer; po: integer): integer', @Lape_PosterizeBitmap); +AddGlobalFunc('function CreateMaskFromBitmap(Bitmap: integer): TMask', @Lape_CreateMaskFromBitmap); +AddGlobalFunc('function FindMaskTolerance(const mask: TMask; var x, y: Integer; xs,ys, xe, ye: Integer; Tolerance, ContourTolerance: Integer): Boolean', @Lape_FindMaskTolerance); +AddGlobalFunc('function FindBitmapMaskTolerance(mask: Integer; var x, y: Integer; xs, ys, xe, ye: Integer; Tolerance, ContourTolerance: Integer): Boolean', @Lape_FindBitmapMaskTolerance); +AddGlobalFunc('function FindDeformedBitmapToleranceIn(bitmap: integer; var x, y: Integer; xs, ys, xe, ye: Integer; tolerance: Integer; Range: Integer; AllowPartialAccuracy: Boolean; var accuracy: Extended): Boolean', @Lape_FindDeformedBitmapToleranceIn); +AddGlobalFunc('procedure RectangleBitmap(bitmap: integer; const box: TBox; Color: TColor);', @Lape_RectangleBitmap); +AddGlobalFunc('procedure FloodFillBitmap(bitmap: integer; const StartPoint: TPoint; const SearchCol,ReplaceCol: TColor);', @Lape_FloodFillBitmap); +AddGlobalFunc('function ConvoluteBitmap(bitmap: integer; matrix: T2DExtendedArray): integer', @Lape_ConvoluteBitmap); +AddGlobalFunc('function CalculatePixelShift(Bmp1,Bmp2: Integer; CompareBox: TBox): integer', @Lape_CalculatePixelShift); +AddGlobalFunc('function CalculatePixelTolerance(Bmp1,Bmp2: Integer; CompareBox: TBox; CTS: integer): extended', @Lape_CalculatePixelTolerance); + + +{ Math } + +AddGlobalFunc('function round(e: extended): integer', @Lape_round); +AddGlobalFunc('function iAbs(a: integer): integer', @Lape_iAbs); +AddGlobalFunc('function ceil(e: extended): integer', @Lape_ceil); +AddGlobalFunc('function pow(base,exponent: extended): extended', @Lape_pow); +AddGlobalFunc('function RiemannGauss(Xstart,StepSize,Sigma: extended; AmountSteps: integer): extended', @Lape_RiemannGauss); +AddGlobalFunc('function DiscreteGauss(Xstart,Xend: integer; sigma: extended): TExtendedArray', @Lape_DiscreteGauss); +AddGlobalFunc('function GaussMatrix(N: integer; sigma: extended): T2DExtendedArray', @Lape_GaussMatrix); +AddGlobalFunc('function exp(exponent: extended): extended', @Lape_exp); +AddGlobalFunc('function Max(a,b: integer): integer', @Lape_Max); +AddGlobalFunc('function Min(a, b: Integer): Integer', @Lape_Min); +AddGlobalFunc('function MinE(a, b: extended): extended', @Lape_MinE); +AddGlobalFunc('function MaxE(a,b: extended): extended', @Lape_MaxE); +AddGlobalFunc('function Sqr(e: extended): extended', @Lape_Sqr); +AddGlobalFunc('function Point(x,y: integer): TPoint', @Lape_Point); +AddGlobalFunc('function Distance(x1,y1,x2,y2: integer): integer', @Lape_Distance); +AddGlobalFunc('function Hypot(X, Y: Extended): Extended', @Lape_Hypot); +AddGlobalFunc('function RandomRange(const aFrom, aTo: Integer): Integer', @Lape_RandomRange); +AddGlobalFunc('function Random(Int: integer): integer', @Lape_Random); +AddGlobalFunc('function RandomE: extended', @Lape_RandomE); +AddGlobalFunc('function ArcTan2(y,x: extended): extended', @Lape_ArcTan2); +AddGlobalFunc('procedure IncEx(var x: integer; increase: integer);', @Lape_IncEx); +AddGlobalFunc('procedure DecEx(var x: integer; Decrease: integer);', @Lape_DecEx); +AddGlobalFunc('function Factorial(number: longword): Int64', @Lape_Factorial); + +{ Color } + +AddGlobalFunc('function GetColor(x,y: integer): TColor', @Lape_GetColor); +AddGlobalFunc('procedure GetColorsWrap(Coords: TPointArray; var Colors: TIntegerArray);', @Lape_GetColorsWrap); +AddGlobalFunc('function GetColors(const Coords: TPointArray): TIntegerArray', @Lape_GetColors); +AddGlobalFunc('function findcolor(var x, y: integer; color, x1, y1, x2, y2: integer): boolean', @Lape_findcolor); +AddGlobalFunc('function findcolortoleranceOptimised(var x, y: integer; color, x1, y1, x2, y2, tol: integer): boolean', @Lape_findcolortoleranceOptimised); +AddGlobalFunc('function findcolortolerance(var x, y: integer; color, x1, y1, x2, y2, tol: integer): boolean', @Lape_findcolortolerance); +AddGlobalFunc('function FindColors(var TPA: TPointArray; Color, x1, y1, x2, y2: Integer): Boolean', @Lape_FindColors); +AddGlobalFunc('procedure SetColorToleranceSpeed(cts: Integer);', @Lape_SetColorToleranceSpeed); +AddGlobalFunc('function GetToleranceSpeed: Integer', @Lape_GetToleranceSpeed); +AddGlobalFunc('procedure SetToleranceSpeed2Modifiers(nHue, nSat: Extended);', @Lape_SetToleranceSpeed2Modifiers); +AddGlobalFunc('procedure GetToleranceSpeed2Modifiers(var hMod, sMod: Extended);', @Lape_GetToleranceSpeed2Modifiers); +AddGlobalFunc('function SimilarColors(Col1,Col2,Tol: integer): boolean', @Lape_SimilarColors); +AddGlobalFunc('function CountColor(Color, xs, ys, xe, ye: Integer): Integer', @Lape_CountColor); +AddGlobalFunc('function CountColorTolerance(Color, xs, ys, xe, ye, Tolerance: Integer): Integer', @Lape_CountColorTolerance); +AddGlobalFunc('function FindColorsToleranceOptimised(var Points: TPointArray; Color, xs, ys, xe, ye, Tolerance: Integer): Boolean', @Lape_FindColorsToleranceOptimised); +AddGlobalFunc('function FindColorsTolerance(var Points: TPointArray; Color, xs, ys, xe, ye, Tolerance: Integer): Boolean', @Lape_FindColorsTolerance); +AddGlobalFunc('function FindColorSpiral(var x, y: Integer; color, xs, ys, xe, ye: Integer): Boolean', @Lape_FindColorSpiral); +AddGlobalFunc('function FindColorSpiralTolerance(var x, y: Integer; color, xs, ys, xe, ye,Tol: Integer): Boolean', @Lape_FindColorSpiralTolerance); +AddGlobalFunc('function FindColorsSpiralTolerance(x, y: Integer; var Points: TPointArray; color, xs, ys, xe, ye: Integer; Tolerance: Integer): boolean', @Lape_FindColorsSpiralTolerance); +AddGlobalFunc('function FindColoredArea(var x, y: Integer; color, xs, ys, xe, ye: Integer; MinArea: Integer): Boolean', @Lape_FindColoredArea); +AddGlobalFunc('function FindColoredAreaTolerance(var x, y: Integer; Color, xs, ys, xe, ye, MinArea, tol: Integer): Boolean', @Lape_FindColoredAreaTolerance); + +{ Color Conversions } + +AddGlobalFunc('procedure ColorToRGB(Color: integer; var r, g, b: Integer);', @Lape_ColorToRGB); +//ps_RGBToColor +//ps_ColorToHSL +//ps_HSLToColor +//ps_ColorToXYZ +//ps_XYZToColor +//ps_RGBToHSL +//ps_HSLToRGB +//ps_RGBToXYZ +//ps_XYZToRGB + + +{ Crypto } +AddGlobalFunc('function haval(Data: string): string', @Lape_haval); + +//ps_md4 +//ps_md5 +//ps_ripemd128 +//ps_ripemd160 +//ps_sha1 +//ps_sha256 +//ps_sha384 +//ps_sha512 +//ps_tiger + +(* File isn't included! +AddGlobalFunc('function ext_UnTar(const Input: string; var Content: TStringArray): boolean', @Lape_ext_UnTar); +AddGlobalFunc('function ext_UnTarEx(const Input: string; const outputdir: string; overwrite: boolean): boolean', @Lape_ext_UnTarEx); +AddGlobalFunc('function ext_DecompressBZip2(const input: string; var output: string; const BlockSize: Cardinal): boolean', @Lape_ext_DecompressBZip2); +AddGlobalFunc('function ext_GetPage(const url: string): string', @Lape_ext_GetPage); +//AddGlobalFunc('function ext_MessageDlg(const aCaption, aMsg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons; HelpCtx: Longint): Integer', @Lape_ext_MessageDlg); +//AddGlobalFunc('function ext_SDTMToMDTM(Const DTM: TSDTM): TMDTM', @Lape_ext_SDTMToMDTM); +AddGlobalFunc('function ext_InputQuery(const ACaption, APrompt: String; var Value: String): Boolean', @Lape_ext_InputQuery); +AddGlobalFunc('function ext_ScriptText: string', @Lape_ext_ScriptText); +AddGlobalFunc('function ext_GetSelectedText: string', @Lape_ext_GetSelectedText); +AddGlobalFunc('procedure ext_OpenScript(vName, Data: string; Run: boolean);', @Lape_ext_OpenScript); +AddGlobalFunc('procedure ext_OpenScriptEx(FileName: string; Run: boolean);', @Lape_ext_OpenScriptEx); +AddGlobalFunc('function ext_GetPageEx(const URL, PostData, MimeType: string): string', @Lape_ext_GetPageEx); +AddGlobalFunc('function ext_GetJSONValue(const Data, Value: string): string', @Lape_ext_GetJSONValue); +*) + + +{ Files } + +AddGlobalFunc('function CreateFile(const Path: string): Integer', @Lape_CreateFile); +AddGlobalFunc('function OpenFile(const Path: string; Shared: Boolean): Integer', @Lape_OpenFile); +AddGlobalFunc('function RewriteFile(const Path: string; Shared: Boolean): Integer', @Lape_RewriteFile); +AddGlobalFunc('function AppendFile(const Path: string): Integer', @Lape_AppendFile); +AddGlobalFunc('procedure CloseFile(FileNum: Integer);', @Lape_CloseFile); +AddGlobalFunc('function EndOfFile(FileNum: Integer): Boolean', @Lape_EndOfFile); +AddGlobalFunc('function FileSize(FileNum: Integer): LongInt', @Lape_FileSize); +AddGlobalFunc('function ReadFileString(FileNum: Integer; var s: string; x: Integer): Boolean', @Lape_ReadFileString); +AddGlobalFunc('function WriteFileString(FileNum: Integer; s: string): Boolean', @Lape_WriteFileString); +AddGlobalFunc('function SetFileCharPointer(FileNum, cChars, Origin: Integer): Integer', @Lape_SetFileCharPointer); +AddGlobalFunc('function FilePointerPos(FileNum: Integer): Integer', @Lape_FilePointerPos); +AddGlobalFunc('function FileExists(const FileName: string): Boolean', @Lape_FileExists); +AddGlobalFunc('function DirectoryExists(const DirectoryName: string): Boolean', @Lape_DirectoryExists); +AddGlobalFunc('function CreateDirectory(const DirectoryName: string): boolean', @Lape_CreateDirectory); +AddGlobalFunc('function ForceDirectores(const dir: string): boolean', @Lape_ForceDirectores); +AddGlobalFunc('function GetFiles(const Path, Ext: string): TStringArray', @Lape_GetFiles); +AddGlobalFunc('function GetDirectories(const path: string): TStringArray', @Lape_GetDirectories); +AddGlobalFunc('procedure WriteINI(const Section, KeyName, NewString, FileName: string);', @Lape_WriteINI); + +{ Web } +AddGlobalFunc('procedure OpenWebPage(const url: string);', @Lape_OpenWebPage); +AddGlobalFunc('function GetPage(const S: String): String', @Lape_GetPage); +AddGlobalFunc('function InitializeHTTPClient(HandleCookies: Boolean): Integer', @Lape_InitializeHTTPClient); +AddGlobalFunc('procedure FreeHTTPClient(Client: Integer);', @Lape_FreeHTTPClient); +AddGlobalFunc('function GetHTTPPage(Client: Integer; const URL: string): string', @Lape_GetHTTPPage); +AddGlobalFunc('procedure SetHTTPUserAgent(Client: Integer; const Agent: string);', @Lape_SetHTTPUserAgent); +AddGlobalFunc('function PostHTTPPage(Client: Integer; const Url,PostData: string): string', @Lape_PostHTTPPage); +AddGlobalFunc('function PostHTTPPageEx(Client: Integer; const Url: string): string', @Lape_PostHTTPPageEx); +AddGlobalFunc('procedure ClearPostData(Client: Integer);', @Lape_ClearPostData); +AddGlobalFunc('procedure AddPostVariable(Client: Integer; const VarName, VarValue: string);', @Lape_AddPostVariable); +AddGlobalFunc('function GetRawHeaders(Client: Integer): string', @Lape_GetRawHeaders); +AddGlobalFunc('procedure SetProxy(Client: Integer; pHost, pPort: String);', @Lape_SetProxy); + +{ Socket } +AddGlobalFunc('function RecvSocketStr(Client: integer): string', @Lape_RecvSocketStr); +AddGlobalFunc('function RecvSocket(Client: integer): string', @Lape_RecvSocket); +AddGlobalFunc('function RecvSocketEx(Client, Length: integer): string', @Lape_RecvSocketEx); +AddGlobalFunc('procedure SendSocket(Client: integer; Data: string);', @Lape_SendSocket); +AddGlobalFunc('procedure ConnectSocket(Client: integer; IP, Port: string);', @Lape_ConnectSocket); +AddGlobalFunc('procedure CloseSocket(Client: integer);', @Lape_CloseSocket); +AddGlobalFunc('procedure SetSocketTimeout(Client, Time: integer);', @Lape_SetSocketTimeout); +AddGlobalFunc('procedure BindSocket(Client: integer; IP, Port: string);', @Lape_BindSocket); +AddGlobalFunc('procedure ListenSocket(Client: integer);', @Lape_ListenSocket); +AddGlobalFunc('function AcceptSocket(Client: integer): integer', @Lape_AcceptSocket); +AddGlobalFunc('procedure SocketInfo(Client: integer; out IP, Port: string);', @Lape_SocketInfo); +AddGlobalFunc('function CreateSocket: integer', @Lape_CreateSocket); +AddGlobalFunc('procedure FreeSocket(Client: integer);', @Lape_FreeSocket); + +{ Mouse } + +AddGlobalFunc('procedure MoveMouse(x, y: integer);', @Lape_MoveMouse); +AddGlobalFunc('procedure ScrollMouse(x,y: integer; Clicks: integer);', @Lape_ScrollMouse); +AddGlobalFunc('procedure GetMousePos(var x, y: integer);', @Lape_GetMousePos); +AddGlobalFunc('function ConvIntClickType(Int: Integer): TClickType', @Lape_ConvIntClickType); +AddGlobalFunc('procedure HoldMouse(x, y: integer; clickType: integer);', @Lape_HoldMouse); +AddGlobalFunc('procedure ReleaseMouse(x, y: integer; clickType: integer);', @Lape_ReleaseMouse); +AddGlobalFunc('procedure ClickMouse(x, y: integer; clickType: integer);', @Lape_ClickMouse); +AddGlobalFunc('function IsMouseButtonDown(button: integer): boolean', @Lape_IsMouseButtonDown); + +{ Keyboard } +AddGlobalFunc('procedure KeyDown(key: Word);', @Lape_KeyDown); +AddGlobalFunc('procedure KeyUp(key: Word);', @Lape_KeyUp); +AddGlobalFunc('procedure SendKeys(const s: string);', @Lape_SendKeys); +AddGlobalFunc('procedure PressKey(key: Word);', @Lape_PressKey); +AddGlobalFunc('function isKeyDown(key: Word): boolean', @Lape_isKeyDown); +AddGlobalFunc('function GetKeyCode(c: char): integer', @Lape_GetKeyCode); + +{ OCR } + +AddGlobalFunc('function rs_GetUpText: String', @Lape_rs_GetUpText); +AddGlobalFunc('function rs_GetUpTextAtEx(x, y: integer; shadow: boolean): string', @Lape_rs_GetUpTextAtEx); +AddGlobalFunc('function rs_GetUpTextAt(x, y: integer): string', @Lape_rs_GetUpTextAt); +AddGlobalFunc('function BitmapFromText(const text, font: String): integer', @Lape_BitmapFromText); +// ps_TPAFromText? +// ps_MaskFromText? +// ps_GetTextAt +// ps_GetTextAtEx +// ps_GetTextATPA +// ps_LoadSystemFont +// ps_LoadFont +// ps_FreeFont + +{ Other } + +AddGlobalFunc('procedure Writeln(const str: string);', @Lape_Writeln); +AddGlobalFunc('function SetScriptProp(prop: TSP_Property; Value: TVariantArray): boolean', @Lape_SetScriptProp); +AddGlobalFunc('function GetScriptProp(prop: TSP_Property; var Value: TVariantArray): boolean', @Lape_GetScriptProp); +AddGlobalFunc('procedure Wait(t: DWord);', @Lape_Wait); + +{ Settings } +AddGlobalFunc('function SetSettingValue(const KeyName,value: string): boolean', @Lape_SetSettingValue); +AddGlobalFunc('function KeyIsSetting(const KeyName: String): Boolean', @Lape_KeyIsSetting); +AddGlobalFunc('function KeyIsDirectory(const KeyName: String): Boolean', @Lape_KeyIsDirectory); +AddGlobalFunc('function GetSettingValue(const KeyName: String): String', @Lape_GetSettingValue); +AddGlobalFunc('function GetSettingValueDef(const KeyName, defVal: String): String', @Lape_GetSettingValueDef); +AddGlobalFunc('function ListSettings(const KeyName: String; var KeyReturn: TStringArray): boolean', @Lape_ListSettings); +AddGlobalFunc('function DeleteSetting(const KeyName: String): Boolean', @Lape_DeleteSetting); +AddGlobalFunc('function DeleteSubSettings(const KeyName: String): Boolean', @Lape_DeleteSubSettings); + +{ String } +AddGlobalFunc('function Capitalize(str: string): string', @Lape_Capitalize); +AddGlobalFunc('function CompressString(const Str: string): string', @Lape_CompressString); +AddGlobalFunc('function DecompressString(const Compressed: string): string', @Lape_DecompressString); +AddGlobalFunc('function Base64Encode(const str: string): string', @Lape_Base64Encode); +AddGlobalFunc('function Base64Decode(const str: string): string', @Lape_Base64Decode); +AddGlobalFunc('function ExtractFromStr(Str: string; Extract: StrExtr): string', @Lape_ExtractFromStr); +AddGlobalFunc('function BoolToStr(bool: boolean): string', @Lape_BoolToStr); +AddGlobalFunc('function Replace(Text, FindStr, ReplaceStr: string; Flags: TReplaceFlags): string', @Lape_Replace); +AddGlobalFunc('function IntToStr(int: integer): string', @Lape_IntToStr); +AddGlobalFunc('function FloatToStr(flt: extended): string', @Lape_FloatToStr); +AddGlobalFunc('function StrToInt(value: String): Integer', @Lape_StrToInt); +AddGlobalFunc('function StrToIntDef(value: String; default: Integer): Integer', @Lape_StrToIntDef); +AddGlobalFunc('function StrToFloat(value: String): Extended', @Lape_StrToFloat); +AddGlobalFunc('function StrToFloatDef(value: String; default: Extended): Extended', @Lape_StrToFloatDef); +AddGlobalFunc('function StrToBool(value: String): Boolean', @Lape_StrToBool); +AddGlobalFunc('function StrToBoolDef(value: String; default: Boolean): Boolean', @Lape_StrToBoolDef); +AddGlobalFunc('function Between(s1, s2, str: string): string', @Lape_Between); + +{ TPA } +AddGlobalFunc('procedure Quicksort(var Arr: TIntegerArray);', @Lape_Quicksort); +AddGlobalFunc('procedure tSwap(var a, b: TPoint);', @Lape_tSwap); +AddGlobalFunc('procedure tpaSwap(var a, b: TPointArray);', @Lape_tpaSwap); +AddGlobalFunc('procedure SwapE(var a, b: Extended);', @Lape_SwapE); +AddGlobalFunc('procedure RAaSTPAEx(var a: TPointArray; const w, h: Integer);', @Lape_RAaSTPAEx); +AddGlobalFunc('procedure RAaSTPA(var a: TPointArray; const Dist: Integer);', @Lape_RAaSTPA); +AddGlobalFunc('function NearbyPointInArrayEx(const P: TPoint; w, h: Integer; const a: TPointArray): Boolean', @Lape_NearbyPointInArrayEx); +AddGlobalFunc('function NearbyPointInArray(const P: TPoint; Dist: Integer; const a: TPointArray): Boolean', @Lape_NearbyPointInArray); +AddGlobalFunc('procedure QuickTPASort(var A: TIntegerArray; var B: TPointArray; iLo, iHi: Integer; SortUp: Boolean);', @Lape_QuickTPASort); +AddGlobalFunc('procedure QuickATPASort(var A: TIntegerArray; var B: T2DPointArray; iLo, iHi: Integer; SortUp: Boolean);', @Lape_QuickATPASort); +AddGlobalFunc('procedure SortTPAFrom(var a: TPointArray; const From: TPoint);', @Lape_SortTPAFrom); +AddGlobalFunc('procedure SortATPAFrom(var a: T2DPointArray; const From: TPoint);', @Lape_SortATPAFrom); +AddGlobalFunc('procedure SortATPAFromFirstPoint(var a: T2DPointArray; const From: TPoint);', @Lape_SortATPAFromFirstPoint); +AddGlobalFunc('procedure InvertTPA(var a: TPointArray);', @Lape_InvertTPA); +AddGlobalFunc('procedure InvertATPA(var a: T2DPointArray);', @Lape_InvertATPA); +AddGlobalFunc('function MiddleTPAEx(const TPA: TPointArray; var x, y: Integer): Boolean', @Lape_MiddleTPAEx); +AddGlobalFunc('function MiddleTPA(const tpa: TPointArray): TPoint', @Lape_MiddleTPA); +AddGlobalFunc('procedure SortATPASize(var a: T2DPointArray; const BigFirst: Boolean);', @Lape_SortATPASize); +AddGlobalFunc('procedure SortATPAFromSize(var a: T2DPointArray; const Size: Integer; CloseFirst: Boolean);', @Lape_SortATPAFromSize); +AddGlobalFunc('function InIntArrayEx(const a: TIntegerArray; var Where: Integer; const Number: Integer): Boolean', @Lape_InIntArrayEx); +AddGlobalFunc('function InIntArray(const a: TIntegerArray; Number: Integer): Boolean', @Lape_InIntArray); +AddGlobalFunc('procedure ClearSameIntegers(var a: TIntegerArray);', @Lape_ClearSameIntegers); +AddGlobalFunc('procedure ClearSameIntegersAndTPA(var a: TIntegerArray; var p: TPointArray);', @Lape_ClearSameIntegersAndTPA); +AddGlobalFunc('function SplitTPAEx(const arr: TPointArray; w, h: Integer): T2DPointArray', @Lape_SplitTPAEx); +AddGlobalFunc('function SplitTPA(const arr: TPointArray; Dist: Integer): T2DPointArray', @Lape_SplitTPA); +AddGlobalFunc('function FloodFillTPA(const TPA: TPointArray): T2DPointArray', @Lape_FloodFillTPA); +AddGlobalFunc('procedure FilterPointsPie(var Points: TPointArray; const SD, ED, MinR, MaxR: Extended; Mx, My: Integer);', @Lape_FilterPointsPie); +AddGlobalFunc('procedure FilterPointsDist(var Points: TPointArray; const MinDist, MaxDist: Extended; Mx, My: Integer);', @Lape_FilterPointsDist); +AddGlobalFunc('procedure FilterPointsLine(var Points: TPointArray; Radial: Extended; Radius, MX, MY: Integer);', @Lape_FilterPointsLine); +AddGlobalFunc('procedure FilterTPADist(var TPA: TPointArray; maxDist: integer);', @Lape_FilterTPADist); +AddGlobalFunc('function GetATPABounds(const ATPA: T2DPointArray): TBox', @Lape_GetATPABounds); +AddGlobalFunc('function GetTPABounds(const TPA: TPointArray): TBox', @Lape_GetTPABounds); +AddGlobalFunc('function FindTPAinTPA(const SearchTPA, TotalTPA: TPointArray; var Matches: TPointArray): Boolean', @Lape_FindTPAinTPA); +AddGlobalFunc('function GetSamePointsATPA(const ATPA: T2DPointArray; var Matches: TPointArray): boolean', @Lape_GetSamePointsATPA); +AddGlobalFunc('function FindTextTPAinTPA(Height: integer; const SearchTPA, TotalTPA: TPointArray; var Matches: TPointArray): Boolean', @Lape_FindTextTPAinTPA); +AddGlobalFunc('procedure SortCircleWise(var tpa: TPointArray; const cx, cy, StartDegree: Integer; SortUp, ClockWise: Boolean);', @Lape_SortCircleWise); +AddGlobalFunc('procedure LinearSort(var tpa: TPointArray; cx, cy, sd: Integer; SortUp: Boolean);', @Lape_LinearSort); +AddGlobalFunc('function RotatePoint(Const p: TPoint; angle, mx, my: Extended): TPoint', @Lape_RotatePoint); +AddGlobalFunc('function ChangeDistPT(const PT: TPoint; mx,my: integer; newdist: extended): TPoint', @Lape_ChangeDistPT); +AddGlobalFunc('function ChangeDistTPA(var TPA: TPointArray; mx,my: integer; newdist: extended): boolean', @Lape_ChangeDistTPA); +AddGlobalFunc('function FindGapsTPA(const TPA: TPointArray; MinPixels: Integer): T2DPointArray', @Lape_FindGapsTPA); +AddGlobalFunc('function RemoveDistTPointArray(x, y, dist: Integer; const ThePoints: TPointArray; RemoveHigher: Boolean): TPointArray', @Lape_RemoveDistTPointArray); +AddGlobalFunc('function CombineTPA(const Ar1, Ar2: TPointArray): TPointArray', @Lape_CombineTPA); +AddGlobalFunc('function ReArrangeandShortenArrayEx(const a: TPointArray; w, h: Integer): TPointArray', @Lape_ReArrangeandShortenArrayEx); +AddGlobalFunc('function ReArrangeandShortenArray(const a: TPointArray; Dist: Integer): TPointArray', @Lape_ReArrangeandShortenArray); +AddGlobalFunc('function TPAtoATPAEx(const TPA: TPointArray; w, h: Integer): T2DPointArray', @Lape_TPAtoATPAEx); +AddGlobalFunc('function TPAtoATPA(const TPA: TPointArray; Dist: Integer): T2DPointArray', @Lape_TPAtoATPA); +AddGlobalFunc('function CombineIntArray(const Ar1, Ar2: TIntegerArray): TIntegerArray', @Lape_CombineIntArray); +AddGlobalFunc('function MergeATPA(const ATPA: T2DPointArray): TPointArray', @Lape_MergeATPA); +AddGlobalFunc('procedure AppendTPA(var TPA: TPointArray; const ToAppend: TPointArray);', @Lape_AppendTPA); +AddGlobalFunc('function TPAFromBox(const Box: TBox): TPointArray', @Lape_TPAFromBox); +AddGlobalFunc('function RotatePoints(Const P: TPointArray; A, cx, cy: Extended): TPointArray', @Lape_RotatePoints); +AddGlobalFunc('function FindTPAEdges(const p: TPointArray): TPointArray', @Lape_FindTPAEdges); +AddGlobalFunc('function ClearTPAFromTPA(const arP, ClearPoints: TPointArray): TPointArray', @Lape_ClearTPAFromTPA); +AddGlobalFunc('function ReturnPointsNotInTPA(Const TotalTPA: TPointArray; const Box: TBox): TPointArray', @Lape_ReturnPointsNotInTPA); +AddGlobalFunc('function PointInTPA(p: TPoint; const arP: TPointArray): Boolean', @Lape_PointInTPA); +AddGlobalFunc('procedure ClearDoubleTPA(var TPA: TPointArray);', @Lape_ClearDoubleTPA); +AddGlobalFunc('procedure TPACountSort(Var TPA: TPointArray; const max: TPoint; Const SortOnX: Boolean);', @Lape_TPACountSort); +AddGlobalFunc('procedure TPACountSortBase(Var TPA: TPointArray; const maxx, base: TPoint; const SortOnX: Boolean);', @Lape_TPACountSortBase); +AddGlobalFunc('procedure InvertTIA(var tI: TIntegerArray);', @Lape_InvertTIA); +AddGlobalFunc('function SumIntegerArray(const Ints: TIntegerArray): Integer', @Lape_SumIntegerArray); +AddGlobalFunc('function AverageTIA(const tI: TIntegerArray): Integer', @Lape_AverageTIA); +AddGlobalFunc('function AverageExtended(const tE: TExtendedArray): Extended', @Lape_AverageExtended); +AddGlobalFunc('procedure SplitTPAExWrap(const arr: TPointArray; w, h: Integer; var res: T2DPointArray);', @Lape_SplitTPAExWrap); +AddGlobalFunc('procedure SplitTPAWrap(const arr: TPointArray; Dist: Integer; var res: T2DPointArray);', @Lape_SplitTPAWrap); +AddGlobalFunc('procedure FindGapsTPAWrap(const TPA: TPointArray; MinPixels: Integer; var Res: T2DPointArray);', @Lape_FindGapsTPAWrap); +AddGlobalFunc('procedure RemoveDistTPointArrayWrap(x, y, dist: Integer; const ThePoints: TPointArray; RemoveHigher: Boolean; var Res: TPointArray);', @Lape_RemoveDistTPointArrayWrap); +AddGlobalFunc('procedure CombineTPAWrap(const Ar1, Ar2: TPointArray; var Res: TPointArray);', @Lape_CombineTPAWrap); +AddGlobalFunc('procedure ReArrangeandShortenArrayExWrap(const a: TPointArray; w, h: Integer; var Res: TPointArray);', @Lape_ReArrangeandShortenArrayExWrap); +AddGlobalFunc('procedure ReArrangeandShortenArrayWrap(const a: TPointArray; Dist: Integer; var Res: TPointArray);', @Lape_ReArrangeandShortenArrayWrap); +AddGlobalFunc('procedure TPAtoATPAExWrap(const TPA: TPointArray; w, h: Integer; var Res: T2DPointArray);', @Lape_TPAtoATPAExWrap); +AddGlobalFunc('procedure TPAtoATPAWrap(const TPA: TPointArray; Dist: Integer; var Res: T2DPointArray);', @Lape_TPAtoATPAWrap); +AddGlobalFunc('procedure CombineIntArrayWrap(const Ar1, Ar2: TIntegerArray; var Res: TIntegerArray);', @Lape_CombineIntArrayWrap); +AddGlobalFunc('procedure MergeATPAWrap(const ATPA: T2DPointArray; var Res: TPointArray);', @Lape_MergeATPAWrap); +AddGlobalFunc('procedure TPAFromBoxWrap(const Box: TBox; var Res: TPointArray);', @Lape_TPAFromBoxWrap); +AddGlobalFunc('procedure RotatePointsWrap(Const P: TPointArray; A, cx, cy: Extended; var Res: TPointArray);', @Lape_RotatePointsWrap); +AddGlobalFunc('procedure FindTPAEdgesWrap(const p: TPointArray; var Res: TPointArray);', @Lape_FindTPAEdgesWrap); +AddGlobalFunc('procedure ClearTPAFromTPAWrap(const arP, ClearPoints: TPointArray; var Res: TPointArray);', @Lape_ClearTPAFromTPAWrap); +AddGlobalFunc('procedure ReturnPointsNotInTPAWrap(Const TotalTPA: TPointArray; const Box: TBox; var Res: TPointArray);', @Lape_ReturnPointsNotInTPAWrap); +AddGlobalFunc('function SameTPA(const aTPA, bTPA: TPointArray): Boolean', @Lape_SameTPA); +AddGlobalFunc('function TPAInATPA(const TPA: TPointArray; const InATPA: T2DPointArray; var Index: LongInt): Boolean', @Lape_TPAInATPA); +AddGlobalFunc('procedure OffsetTPA(var TPA: TPointArray; const Offset: TPoint);', @Lape_OffsetTPA); +AddGlobalFunc('procedure OffsetATPA(var ATPA: T2DPointArray; const Offset: TPoint);', @Lape_OffsetATPA); +AddGlobalFunc('function CopyTPA(const TPA: TPointArray): TPointArray', @Lape_CopyTPA); +AddGlobalFunc('function CopyATPA(const ATPA: T2DPointArray): T2DPointArray', @Lape_CopyATPA); + +{ Window } + +AddGlobalFunc('procedure SetDesktopAsClient;', @Lape_SetDesktopAsClient); +AddGlobalFunc('function SetTargetArray(P: Integer; w, h: integer): integer', @Lape_SetTargetArray); +AddGlobalFunc('function SetTargetBitmap(bitmap: Integer): integer', @Lape_SetTargetBitmap); +AddGlobalFunc('function SetEIOSTarget(name: string; args: Variant): integer', @Lape_SetEIOSTarget); +AddGlobalFunc('procedure SetImageTarget(idx: integer);', @Lape_SetImageTarget); +AddGlobalFunc('procedure SetKeyMouseTarget(idx: integer);', @Lape_SetKeyMouseTarget); +AddGlobalFunc('function GetImageTarget: integer', @Lape_GetImageTarget); +AddGlobalFunc('function GetKeyMouseTarget: integer', @Lape_GetKeyMouseTarget); +AddGlobalFunc('function ExportImageTarget: TTarget_Exported', @Lape_ExportImageTarget); +AddGlobalFunc('function ExportKeyMouseTarget: TTarget_Exported', @Lape_ExportKeyMouseTarget); +AddGlobalFunc('procedure FreeTarget(idx: integer);', @Lape_FreeTarget); +AddGlobalFunc('procedure GetClientDimensions(var w, h: integer);', @Lape_GetClientDimensions); +AddGlobalFunc('procedure GetClientPosition(var left, top: integer);', @Lape_GetClientPosition); +AddGlobalFunc('function Freeze: boolean', @Lape_Freeze); +AddGlobalFunc('function Unfreeze: boolean', @Lape_Unfreeze); +AddGlobalFunc('procedure ActivateClient;', @Lape_ActivateClient); +AddGlobalFunc('function IsTargetValid: boolean', @Lape_IsTargetValid); diff --git a/Units/MMLAddon/LPInc/lpexportedmethodsinc.inc b/Units/MMLAddon/LPInc/lpexportedmethodsinc.inc deleted file mode 100644 index fe38e06..0000000 --- a/Units/MMLAddon/LPInc/lpexportedmethodsinc.inc +++ /dev/null @@ -1,323 +0,0 @@ -AddGlobalFunc('function CreateBitmapString(bmp: integer): string', @Lape_CreateBitmapString); -//AddGlobalFunc('function GetMufasaBitmap(bmp: integer): TMufasaBitmap', @Lape_GetMufasaBitmap); -AddGlobalFunc('function CreateBitmap(w,h: integer): integer', @Lape_CreateBitmap); -AddGlobalFunc('procedure FreeBitmap(Number: integer);', @Lape_FreeBitmap); -AddGlobalFunc('procedure SaveBitmap(Bmp: integer; path: string);', @Lape_SaveBitmap); -AddGlobalFunc('function BitmapFromString(Width,height: integer; Data: string): integer', @Lape_BitmapFromString); -AddGlobalFunc('function LoadBitmap(Path: String): integer', @Lape_LoadBitmap); -AddGlobalFunc('procedure SetBitmapSize(Bmp,NewW,NewH: integer);', @Lape_SetBitmapSize); -AddGlobalFunc('procedure StretchBitmapResize(Bmp,NewW,NewH: integer);', @Lape_StretchBitmapResize); -AddGlobalFunc('procedure GetBitmapSize(Bmp: integer; var BmpW,BmpH: integer);', @Lape_GetBitmapSize); -AddGlobalFunc('procedure SetBitmapName(Bmp: integer; name: string);', @Lape_SetBitmapName); -AddGlobalFunc('function CreateMirroredBitmap(Bmp: integer): integer', @Lape_CreateMirroredBitmap); -AddGlobalFunc('function CreateMirroredBitmapEx(Bmp: integer; MirrorStyle: TBmpMirrorStyle): integer', @Lape_CreateMirroredBitmapEx); -AddGlobalFunc('function FastGetPixel(bmp,x,y: integer): LongWord', @Lape_FastGetPixel); -AddGlobalFunc('function FastGetPixels(bmp: integer; TPA: TPointArray): TIntegerArray', @Lape_FastGetPixels); -AddGlobalFunc('function GetBitmapAreaColors(bmp,xs, ys, xe, ye: Integer): T2DIntArray', @Lape_GetBitmapAreaColors); -AddGlobalFunc('procedure FastSetPixel(Bmp,x,y: integer; Color: TColor);', @Lape_FastSetPixel); -AddGlobalFunc('procedure FastSetPixels(Bmp: integer; TPA: TPointArray; Colors: TIntegerArray);', @Lape_FastSetPixels); -AddGlobalFunc('procedure DrawTPABitmap(bitmap: integer; TPA: TPointArray; Color: integer);', @Lape_DrawTPABitmap); -AddGlobalFunc('procedure DrawATPABitmap(bitmap: integer; ATPA: T2DPointArray);', @Lape_DrawATPABitmap); -AddGlobalFunc('procedure DrawATPABitmapEx(bitmap: integer; ATPA: T2DPointArray; Colors: TIntegerArray);', @Lape_DrawATPABitmapEx); -AddGlobalFunc('procedure FastDrawClear(bmp: integer; Color: TColor);', @Lape_FastDrawClear); -//AddGlobalFunc('procedure DrawBitmap(Bmp: Integer; Dest: TCanvas; x, y: Integer);', @Lape_DrawBitmap); -AddGlobalFunc('procedure FastDrawTransparent(x, y: Integer; SourceBitmap, TargetBitmap: Integer);', @Lape_FastDrawTransparent); -AddGlobalFunc('procedure SetTransparentColor(Bmp: integer; Color: TColor);', @Lape_SetTransparentColor); -AddGlobalFunc('function GetTransparentColor(Bmp: integer): TColor', @Lape_GetTransparentColor); -AddGlobalFunc('procedure FastReplaceColor(bmp: Integer; OldColor, NewColor: TColor);', @Lape_FastReplaceColor); -AddGlobalFunc('procedure CopyClientToBitmap(bmp, xs, ys, xe, ye: Integer);', @Lape_CopyClientToBitmap); -AddGlobalFunc('function BitmapFromClient(const xs, ys, xe, ye: Integer): Integer', @Lape_BitmapFromClient); -AddGlobalFunc('function FindBitmap(Bitmap: integer; var x, y: Integer): Boolean', @Lape_FindBitmap); -AddGlobalFunc('function FindBitmapIn(bitmap: integer; var x, y: Integer; xs, ys, xe, ye: Integer): Boolean', @Lape_FindBitmapIn); -AddGlobalFunc('function FindBitmapToleranceIn(bitmap: integer; var x, y: Integer; xs, ys, xe, ye: Integer; tolerance: Integer): Boolean', @Lape_FindBitmapToleranceIn); -AddGlobalFunc('function FindBitmapSpiral(bitmap: Integer; var x, y: Integer; xs, ys, xe, ye: Integer): Boolean', @Lape_FindBitmapSpiral); -AddGlobalFunc('function FindBitmapsSpiralTolerance(bitmap: integer; x, y: Integer; var Points: TPointArray; xs, ys, xe, ye,tolerance: Integer): Boolean', @Lape_FindBitmapsSpiralTolerance); -AddGlobalFunc('function FindBitmapSpiralTolerance(bitmap: integer; var x, y: Integer; xs, ys, xe, ye,tolerance: integer): Boolean', @Lape_FindBitmapSpiralTolerance); -AddGlobalFunc('function RotateBitmap(bitmap: Integer; angle: Extended): Integer', @Lape_RotateBitmap); -AddGlobalFunc('function Desaturate(Bitmap: integer): integer', @Lape_Desaturate); -AddGlobalFunc('procedure InvertBitmap(Bitmap: integer);', @Lape_InvertBitmap); -AddGlobalFunc('function CopyBitmap(Bitmap: integer): integer', @Lape_CopyBitmap); -AddGlobalFunc('function GreyScaleBitmap(Bitmap: integer): integer', @Lape_GreyScaleBitmap); -AddGlobalFunc('function BrightnessBitmap(Bitmap,br: integer): integer', @Lape_BrightnessBitmap); -AddGlobalFunc('function ContrastBitmap(bitmap: integer; co: extended): integer', @Lape_ContrastBitmap); -AddGlobalFunc('function PosterizeBitmap(Bitmap: integer; po: integer): integer', @Lape_PosterizeBitmap); -AddGlobalFunc('function CreateMaskFromBitmap(Bitmap: integer): TMask', @Lape_CreateMaskFromBitmap); -AddGlobalFunc('function FindMaskTolerance(const mask: TMask; var x, y: Integer; xs,ys, xe, ye: Integer; Tolerance, ContourTolerance: Integer): Boolean', @Lape_FindMaskTolerance); -AddGlobalFunc('function FindBitmapMaskTolerance(mask: Integer; var x, y: Integer; xs, ys, xe, ye: Integer; Tolerance, ContourTolerance: Integer): Boolean', @Lape_FindBitmapMaskTolerance); -AddGlobalFunc('function FindDeformedBitmapToleranceIn(bitmap: integer; var x, y: Integer; xs, ys, xe, ye: Integer; tolerance: Integer; Range: Integer; AllowPartialAccuracy: Boolean; var accuracy: Extended): Boolean', @Lape_FindDeformedBitmapToleranceIn); -AddGlobalFunc('procedure RectangleBitmap(bitmap: integer; const box: TBox; Color: TColor);', @Lape_RectangleBitmap); -AddGlobalFunc('procedure FloodFillBitmap(bitmap: integer; const StartPoint: TPoint; const SearchCol,ReplaceCol: TColor);', @Lape_FloodFillBitmap); -AddGlobalFunc('function ConvoluteBitmap(bitmap: integer; matrix: T2DExtendedArray): integer', @Lape_ConvoluteBitmap); -AddGlobalFunc('function CalculatePixelShift(Bmp1,Bmp2: Integer; CompareBox: TBox): integer', @Lape_CalculatePixelShift); -AddGlobalFunc('function CalculatePixelTolerance(Bmp1,Bmp2: Integer; CompareBox: TBox; CTS: integer): extended', @Lape_CalculatePixelTolerance); -AddGlobalFunc('function GetColor(x,y: integer): TColor', @Lape_GetColor); -AddGlobalFunc('procedure GetColorsWrap(Coords: TPointArray; var Colors: TIntegerArray);', @Lape_GetColorsWrap); -AddGlobalFunc('function GetColors(const Coords: TPointArray): TIntegerArray', @Lape_GetColors); -AddGlobalFunc('function findcolor(var x, y: integer; color, x1, y1, x2, y2: integer): boolean', @Lape_findcolor); -AddGlobalFunc('function findcolortoleranceOptimised(var x, y: integer; color, x1, y1, x2, y2, tol: integer): boolean', @Lape_findcolortoleranceOptimised); -AddGlobalFunc('function findcolortolerance(var x, y: integer; color, x1, y1, x2, y2, tol: integer): boolean', @Lape_findcolortolerance); -AddGlobalFunc('function FindColors(var TPA: TPointArray; Color, x1, y1, x2, y2: Integer): Boolean', @Lape_FindColors); -AddGlobalFunc('procedure SetColorToleranceSpeed(cts: Integer);', @Lape_SetColorToleranceSpeed); -AddGlobalFunc('function GetToleranceSpeed: Integer', @Lape_GetToleranceSpeed); -AddGlobalFunc('procedure SetToleranceSpeed2Modifiers(nHue, nSat: Extended);', @Lape_SetToleranceSpeed2Modifiers); -AddGlobalFunc('procedure GetToleranceSpeed2Modifiers(var hMod, sMod: Extended);', @Lape_GetToleranceSpeed2Modifiers); -AddGlobalFunc('function SimilarColors(Col1,Col2,Tol: integer): boolean', @Lape_SimilarColors); -AddGlobalFunc('function CountColor(Color, xs, ys, xe, ye: Integer): Integer', @Lape_CountColor); -AddGlobalFunc('function CountColorTolerance(Color, xs, ys, xe, ye, Tolerance: Integer): Integer', @Lape_CountColorTolerance); -AddGlobalFunc('function FindColorsToleranceOptimised(var Points: TPointArray; Color, xs, ys, xe, ye, Tolerance: Integer): Boolean', @Lape_FindColorsToleranceOptimised); -AddGlobalFunc('function FindColorsTolerance(var Points: TPointArray; Color, xs, ys, xe, ye, Tolerance: Integer): Boolean', @Lape_FindColorsTolerance); -AddGlobalFunc('function FindColorSpiral(var x, y: Integer; color, xs, ys, xe, ye: Integer): Boolean', @Lape_FindColorSpiral); -AddGlobalFunc('function FindColorSpiralTolerance(var x, y: Integer; color, xs, ys, xe, ye,Tol: Integer): Boolean', @Lape_FindColorSpiralTolerance); -AddGlobalFunc('function FindColorsSpiralTolerance(x, y: Integer; var Points: TPointArray; color, xs, ys, xe, ye: Integer; Tolerance: Integer): boolean', @Lape_FindColorsSpiralTolerance); -AddGlobalFunc('function FindColoredArea(var x, y: Integer; color, xs, ys, xe, ye: Integer; MinArea: Integer): Boolean', @Lape_FindColoredArea); -AddGlobalFunc('function FindColoredAreaTolerance(var x, y: Integer; Color, xs, ys, xe, ye, MinArea, tol: Integer): Boolean', @Lape_FindColoredAreaTolerance); -AddGlobalFunc('procedure ColorToRGB(Color: integer; var r, g, b: Integer);', @Lape_ColorToRGB); -AddGlobalFunc('function haval(Data: string): string', @Lape_haval); -AddGlobalFunc('function FindDTM(DTM: Integer; var x, y: Integer; xs, ys, xe, ye: Integer): Boolean', @Lape_FindDTM); -AddGlobalFunc('function FindDTMs(DTM: Integer; var p: TPointArray; xs, ys, xe, ye: Integer): Boolean', @Lape_FindDTMs); -AddGlobalFunc('function FindDTMRotatedAlternating(DTM: Integer; var x, y: Integer; xs, ys, xe, ye: Integer; sAngle, eAngle, aStep: Extended; var aFound: Extended): Boolean', @Lape_FindDTMRotatedAlternating); -AddGlobalFunc('function FindDTMRotatedSE(DTM: Integer; var x, y: Integer; xs, ys, xe, ye: Integer; sAngle, eAngle, aStep: Extended; var aFound: Extended): Boolean', @Lape_FindDTMRotatedSE); -AddGlobalFunc('function FindDTMsRotatedAlternating(DTM: Integer; var Points: TPointArray; xs, ys, xe, ye: Integer; sAngle, eAngle, aStep: Extended; var aFound: T2DExtendedArray): Boolean', @Lape_FindDTMsRotatedAlternating); -AddGlobalFunc('function FindDTMsRotatedSE(DTM: Integer; var Points: TPointArray; xs, ys, xe, ye: Integer; sAngle, eAngle, aStep: Extended; var aFound: T2DExtendedArray): Boolean', @Lape_FindDTMsRotatedSE); -AddGlobalFunc('procedure SetDTMName(DTM: integer; const name: string);', @Lape_SetDTMName); -AddGlobalFunc('function DTMFromString(const DTMString: String): Integer', @Lape_DTMFromString); -AddGlobalFunc('procedure FreeDTM(DTM: Integer);', @Lape_FreeDTM); -//AddGlobalFunc('function GetDTM(index: Integer): TMDTM', @Lape_GetDTM); -AddGlobalFunc('function AddTSDTM(const d: TSDTM): Integer', @Lape_AddTSDTM); -//AddGlobalFunc('function AddDTM(const d: TMDTM): Integer', @Lape_AddDTM); -//AddGlobalFunc('procedure PrintDTM(const aDTM: TMDTM);', @Lape_PrintDTM); -//AddGlobalFunc('function MDTMToSDTM(Const DTM: TMDTM): TSDTM', @Lape_MDTMToSDTM); -//AddGlobalFunc('function SDTMToMDTM(Const DTM: TSDTM): TMDTM', @Lape_SDTMToMDTM); -AddGlobalFunc('function CreateDTMPoint(x,y,c,t,asz: integer; bp: boolean): TMDTMPoint', @Lape_CreateDTMPoint); - -(* File isn't included! -AddGlobalFunc('function ext_UnTar(const Input: string; var Content: TStringArray): boolean', @Lape_ext_UnTar); -AddGlobalFunc('function ext_UnTarEx(const Input: string; const outputdir: string; overwrite: boolean): boolean', @Lape_ext_UnTarEx); -AddGlobalFunc('function ext_DecompressBZip2(const input: string; var output: string; const BlockSize: Cardinal): boolean', @Lape_ext_DecompressBZip2); -AddGlobalFunc('function ext_GetPage(const url: string): string', @Lape_ext_GetPage); -//AddGlobalFunc('function ext_MessageDlg(const aCaption, aMsg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons; HelpCtx: Longint): Integer', @Lape_ext_MessageDlg); -//AddGlobalFunc('function ext_SDTMToMDTM(Const DTM: TSDTM): TMDTM', @Lape_ext_SDTMToMDTM); -AddGlobalFunc('function ext_InputQuery(const ACaption, APrompt: String; var Value: String): Boolean', @Lape_ext_InputQuery); -AddGlobalFunc('function ext_ScriptText: string', @Lape_ext_ScriptText); -AddGlobalFunc('function ext_GetSelectedText: string', @Lape_ext_GetSelectedText); -AddGlobalFunc('procedure ext_OpenScript(vName, Data: string; Run: boolean);', @Lape_ext_OpenScript); -AddGlobalFunc('procedure ext_OpenScriptEx(FileName: string; Run: boolean);', @Lape_ext_OpenScriptEx); -AddGlobalFunc('function ext_GetPageEx(const URL, PostData, MimeType: string): string', @Lape_ext_GetPageEx); -AddGlobalFunc('function ext_GetJSONValue(const Data, Value: string): string', @Lape_ext_GetJSONValue); -*) - -AddGlobalFunc('function CreateFile(const Path: string): Integer', @Lape_CreateFile); -AddGlobalFunc('function OpenFile(const Path: string; Shared: Boolean): Integer', @Lape_OpenFile); -AddGlobalFunc('function RewriteFile(const Path: string; Shared: Boolean): Integer', @Lape_RewriteFile); -AddGlobalFunc('function AppendFile(const Path: string): Integer', @Lape_AppendFile); -AddGlobalFunc('procedure CloseFile(FileNum: Integer);', @Lape_CloseFile); -AddGlobalFunc('function EndOfFile(FileNum: Integer): Boolean', @Lape_EndOfFile); -AddGlobalFunc('function FileSize(FileNum: Integer): LongInt', @Lape_FileSize); -AddGlobalFunc('function ReadFileString(FileNum: Integer; var s: string; x: Integer): Boolean', @Lape_ReadFileString); -AddGlobalFunc('function WriteFileString(FileNum: Integer; s: string): Boolean', @Lape_WriteFileString); -AddGlobalFunc('function SetFileCharPointer(FileNum, cChars, Origin: Integer): Integer', @Lape_SetFileCharPointer); -AddGlobalFunc('function FilePointerPos(FileNum: Integer): Integer', @Lape_FilePointerPos); -AddGlobalFunc('function FileExists(const FileName: string): Boolean', @Lape_FileExists); -AddGlobalFunc('function DirectoryExists(const DirectoryName: string): Boolean', @Lape_DirectoryExists); -AddGlobalFunc('function CreateDirectory(const DirectoryName: string): boolean', @Lape_CreateDirectory); -AddGlobalFunc('function ForceDirectores(const dir: string): boolean', @Lape_ForceDirectores); -AddGlobalFunc('function GetFiles(const Path, Ext: string): TStringArray', @Lape_GetFiles); -AddGlobalFunc('function GetDirectories(const path: string): TStringArray', @Lape_GetDirectories); -AddGlobalFunc('procedure WriteINI(const Section, KeyName, NewString, FileName: string);', @Lape_WriteINI); -AddGlobalFunc('procedure OpenWebPage(const url: string);', @Lape_OpenWebPage); -AddGlobalFunc('function GetPage(const S: String): String', @Lape_GetPage); -AddGlobalFunc('function InitializeHTTPClient(HandleCookies: Boolean): Integer', @Lape_InitializeHTTPClient); -AddGlobalFunc('procedure FreeHTTPClient(Client: Integer);', @Lape_FreeHTTPClient); -AddGlobalFunc('function GetHTTPPage(Client: Integer; const URL: string): string', @Lape_GetHTTPPage); -AddGlobalFunc('procedure SetHTTPUserAgent(Client: Integer; const Agent: string);', @Lape_SetHTTPUserAgent); -AddGlobalFunc('function PostHTTPPage(Client: Integer; const Url,PostData: string): string', @Lape_PostHTTPPage); -AddGlobalFunc('function PostHTTPPageEx(Client: Integer; const Url: string): string', @Lape_PostHTTPPageEx); -AddGlobalFunc('procedure ClearPostData(Client: Integer);', @Lape_ClearPostData); -AddGlobalFunc('procedure AddPostVariable(Client: Integer; const VarName, VarValue: string);', @Lape_AddPostVariable); -AddGlobalFunc('function GetRawHeaders(Client: Integer): string', @Lape_GetRawHeaders); -AddGlobalFunc('procedure SetProxy(Client: Integer; pHost, pPort: String);', @Lape_SetProxy); -AddGlobalFunc('function RecvSocketStr(Client: integer): string', @Lape_RecvSocketStr); -AddGlobalFunc('function RecvSocket(Client: integer): string', @Lape_RecvSocket); -AddGlobalFunc('function RecvSocketEx(Client, Length: integer): string', @Lape_RecvSocketEx); -AddGlobalFunc('procedure SendSocket(Client: integer; Data: string);', @Lape_SendSocket); -AddGlobalFunc('procedure ConnectSocket(Client: integer; IP, Port: string);', @Lape_ConnectSocket); -AddGlobalFunc('procedure CloseSocket(Client: integer);', @Lape_CloseSocket); -AddGlobalFunc('procedure SetSocketTimeout(Client, Time: integer);', @Lape_SetSocketTimeout); -AddGlobalFunc('procedure BindSocket(Client: integer; IP, Port: string);', @Lape_BindSocket); -AddGlobalFunc('procedure ListenSocket(Client: integer);', @Lape_ListenSocket); -AddGlobalFunc('function AcceptSocket(Client: integer): integer', @Lape_AcceptSocket); -AddGlobalFunc('procedure SocketInfo(Client: integer; out IP, Port: string);', @Lape_SocketInfo); -AddGlobalFunc('function CreateSocket: integer', @Lape_CreateSocket); -AddGlobalFunc('procedure FreeSocket(Client: integer);', @Lape_FreeSocket); -AddGlobalFunc('procedure KeyDown(key: Word);', @Lape_KeyDown); -AddGlobalFunc('procedure KeyUp(key: Word);', @Lape_KeyUp); -AddGlobalFunc('procedure SendKeys(const s: string);', @Lape_SendKeys); -AddGlobalFunc('procedure PressKey(key: Word);', @Lape_PressKey); -AddGlobalFunc('function isKeyDown(key: Word): boolean', @Lape_isKeyDown); -AddGlobalFunc('function GetKeyCode(c: char): integer', @Lape_GetKeyCode); -AddGlobalFunc('function round(e: extended): integer', @Lape_round); -AddGlobalFunc('function iAbs(a: integer): integer', @Lape_iAbs); -AddGlobalFunc('function ceil(e: extended): integer', @Lape_ceil); -AddGlobalFunc('function pow(base,exponent: extended): extended', @Lape_pow); -AddGlobalFunc('function RiemannGauss(Xstart,StepSize,Sigma: extended; AmountSteps: integer): extended', @Lape_RiemannGauss); -AddGlobalFunc('function DiscreteGauss(Xstart,Xend: integer; sigma: extended): TExtendedArray', @Lape_DiscreteGauss); -AddGlobalFunc('function GaussMatrix(N: integer; sigma: extended): T2DExtendedArray', @Lape_GaussMatrix); -AddGlobalFunc('function exp(exponent: extended): extended', @Lape_exp); -AddGlobalFunc('function Max(a,b: integer): integer', @Lape_Max); -AddGlobalFunc('function Min(a, b: Integer): Integer', @Lape_Min); -AddGlobalFunc('function MinE(a, b: extended): extended', @Lape_MinE); -AddGlobalFunc('function MaxE(a,b: extended): extended', @Lape_MaxE); -AddGlobalFunc('function Sqr(e: extended): extended', @Lape_Sqr); -AddGlobalFunc('function Point(x,y: integer): TPoint', @Lape_Point); -AddGlobalFunc('function Distance(x1,y1,x2,y2: integer): integer', @Lape_Distance); -AddGlobalFunc('function Hypot(X, Y: Extended): Extended', @Lape_Hypot); -AddGlobalFunc('function RandomRange(const aFrom, aTo: Integer): Integer', @Lape_RandomRange); -AddGlobalFunc('function Random(Int: integer): integer', @Lape_Random); -AddGlobalFunc('function RandomE: extended', @Lape_RandomE); -AddGlobalFunc('function ArcTan2(y,x: extended): extended', @Lape_ArcTan2); -AddGlobalFunc('procedure IncEx(var x: integer; increase: integer);', @Lape_IncEx); -AddGlobalFunc('procedure DecEx(var x: integer; Decrease: integer);', @Lape_DecEx); -AddGlobalFunc('function Factorial(number: longword): Int64', @Lape_Factorial); -AddGlobalFunc('procedure MoveMouse(x, y: integer);', @Lape_MoveMouse); -AddGlobalFunc('procedure ScrollMouse(x,y: integer; Clicks: integer);', @Lape_ScrollMouse); -AddGlobalFunc('procedure GetMousePos(var x, y: integer);', @Lape_GetMousePos); -AddGlobalFunc('function ConvIntClickType(Int: Integer): TClickType', @Lape_ConvIntClickType); -AddGlobalFunc('procedure HoldMouse(x, y: integer; clickType: integer);', @Lape_HoldMouse); -AddGlobalFunc('procedure ReleaseMouse(x, y: integer; clickType: integer);', @Lape_ReleaseMouse); -AddGlobalFunc('procedure ClickMouse(x, y: integer; clickType: integer);', @Lape_ClickMouse); -AddGlobalFunc('function IsMouseButtonDown(button: integer): boolean', @Lape_IsMouseButtonDown); -AddGlobalFunc('function rs_GetUpText: String', @Lape_rs_GetUpText); -AddGlobalFunc('function rs_GetUpTextAtEx(x, y: integer; shadow: boolean): string', @Lape_rs_GetUpTextAtEx); -AddGlobalFunc('function rs_GetUpTextAt(x, y: integer): string', @Lape_rs_GetUpTextAt); -AddGlobalFunc('function BitmapFromText(const text, font: String): integer', @Lape_BitmapFromText); -AddGlobalFunc('procedure Writeln(const str: string);', @Lape_Writeln); -AddGlobalFunc('function SetScriptProp(prop: TSP_Property; Value: TVariantArray): boolean', @Lape_SetScriptProp); -AddGlobalFunc('function GetScriptProp(prop: TSP_Property; var Value: TVariantArray): boolean', @Lape_GetScriptProp); -AddGlobalFunc('procedure Wait(t: DWord);', @Lape_Wait); -AddGlobalFunc('function SetSettingValue(const KeyName,value: string): boolean', @Lape_SetSettingValue); -AddGlobalFunc('function KeyIsSetting(const KeyName: String): Boolean', @Lape_KeyIsSetting); -AddGlobalFunc('function KeyIsDirectory(const KeyName: String): Boolean', @Lape_KeyIsDirectory); -AddGlobalFunc('function GetSettingValue(const KeyName: String): String', @Lape_GetSettingValue); -AddGlobalFunc('function GetSettingValueDef(const KeyName, defVal: String): String', @Lape_GetSettingValueDef); -AddGlobalFunc('function ListSettings(const KeyName: String; var KeyReturn: TStringArray): boolean', @Lape_ListSettings); -AddGlobalFunc('function DeleteSetting(const KeyName: String): Boolean', @Lape_DeleteSetting); -AddGlobalFunc('function DeleteSubSettings(const KeyName: String): Boolean', @Lape_DeleteSubSettings); -AddGlobalFunc('function Capitalize(str: string): string', @Lape_Capitalize); -AddGlobalFunc('function CompressString(const Str: string): string', @Lape_CompressString); -AddGlobalFunc('function DecompressString(const Compressed: string): string', @Lape_DecompressString); -AddGlobalFunc('function Base64Encode(const str: string): string', @Lape_Base64Encode); -AddGlobalFunc('function Base64Decode(const str: string): string', @Lape_Base64Decode); -AddGlobalFunc('function ExtractFromStr(Str: string; Extract: StrExtr): string', @Lape_ExtractFromStr); -AddGlobalFunc('function BoolToStr(bool: boolean): string', @Lape_BoolToStr); -AddGlobalFunc('function Replace(Text, FindStr, ReplaceStr: string; Flags: TReplaceFlags): string', @Lape_Replace); -AddGlobalFunc('function IntToStr(int: integer): string', @Lape_IntToStr); -AddGlobalFunc('function FloatToStr(flt: extended): string', @Lape_FloatToStr); -AddGlobalFunc('function StrToInt(value: String): Integer', @Lape_StrToInt); -AddGlobalFunc('function StrToIntDef(value: String; default: Integer): Integer', @Lape_StrToIntDef); -AddGlobalFunc('function StrToFloat(value: String): Extended', @Lape_StrToFloat); -AddGlobalFunc('function StrToFloatDef(value: String; default: Extended): Extended', @Lape_StrToFloatDef); -AddGlobalFunc('function StrToBool(value: String): Boolean', @Lape_StrToBool); -AddGlobalFunc('function StrToBoolDef(value: String; default: Boolean): Boolean', @Lape_StrToBoolDef); -AddGlobalFunc('function Between(s1, s2, str: string): string', @Lape_Between); -AddGlobalFunc('procedure Quicksort(var Arr: TIntegerArray);', @Lape_Quicksort); -AddGlobalFunc('procedure tSwap(var a, b: TPoint);', @Lape_tSwap); -AddGlobalFunc('procedure tpaSwap(var a, b: TPointArray);', @Lape_tpaSwap); -AddGlobalFunc('procedure SwapE(var a, b: Extended);', @Lape_SwapE); -AddGlobalFunc('procedure RAaSTPAEx(var a: TPointArray; const w, h: Integer);', @Lape_RAaSTPAEx); -AddGlobalFunc('procedure RAaSTPA(var a: TPointArray; const Dist: Integer);', @Lape_RAaSTPA); -AddGlobalFunc('function NearbyPointInArrayEx(const P: TPoint; w, h: Integer; const a: TPointArray): Boolean', @Lape_NearbyPointInArrayEx); -AddGlobalFunc('function NearbyPointInArray(const P: TPoint; Dist: Integer; const a: TPointArray): Boolean', @Lape_NearbyPointInArray); -AddGlobalFunc('procedure QuickTPASort(var A: TIntegerArray; var B: TPointArray; iLo, iHi: Integer; SortUp: Boolean);', @Lape_QuickTPASort); -AddGlobalFunc('procedure QuickATPASort(var A: TIntegerArray; var B: T2DPointArray; iLo, iHi: Integer; SortUp: Boolean);', @Lape_QuickATPASort); -AddGlobalFunc('procedure SortTPAFrom(var a: TPointArray; const From: TPoint);', @Lape_SortTPAFrom); -AddGlobalFunc('procedure SortATPAFrom(var a: T2DPointArray; const From: TPoint);', @Lape_SortATPAFrom); -AddGlobalFunc('procedure SortATPAFromFirstPoint(var a: T2DPointArray; const From: TPoint);', @Lape_SortATPAFromFirstPoint); -AddGlobalFunc('procedure InvertTPA(var a: TPointArray);', @Lape_InvertTPA); -AddGlobalFunc('procedure InvertATPA(var a: T2DPointArray);', @Lape_InvertATPA); -AddGlobalFunc('function MiddleTPAEx(const TPA: TPointArray; var x, y: Integer): Boolean', @Lape_MiddleTPAEx); -AddGlobalFunc('function MiddleTPA(const tpa: TPointArray): TPoint', @Lape_MiddleTPA); -AddGlobalFunc('procedure SortATPASize(var a: T2DPointArray; const BigFirst: Boolean);', @Lape_SortATPASize); -AddGlobalFunc('procedure SortATPAFromSize(var a: T2DPointArray; const Size: Integer; CloseFirst: Boolean);', @Lape_SortATPAFromSize); -AddGlobalFunc('function InIntArrayEx(const a: TIntegerArray; var Where: Integer; const Number: Integer): Boolean', @Lape_InIntArrayEx); -AddGlobalFunc('function InIntArray(const a: TIntegerArray; Number: Integer): Boolean', @Lape_InIntArray); -AddGlobalFunc('procedure ClearSameIntegers(var a: TIntegerArray);', @Lape_ClearSameIntegers); -AddGlobalFunc('procedure ClearSameIntegersAndTPA(var a: TIntegerArray; var p: TPointArray);', @Lape_ClearSameIntegersAndTPA); -AddGlobalFunc('function SplitTPAEx(const arr: TPointArray; w, h: Integer): T2DPointArray', @Lape_SplitTPAEx); -AddGlobalFunc('function SplitTPA(const arr: TPointArray; Dist: Integer): T2DPointArray', @Lape_SplitTPA); -AddGlobalFunc('function FloodFillTPA(const TPA: TPointArray): T2DPointArray', @Lape_FloodFillTPA); -AddGlobalFunc('procedure FilterPointsPie(var Points: TPointArray; const SD, ED, MinR, MaxR: Extended; Mx, My: Integer);', @Lape_FilterPointsPie); -AddGlobalFunc('procedure FilterPointsDist(var Points: TPointArray; const MinDist, MaxDist: Extended; Mx, My: Integer);', @Lape_FilterPointsDist); -AddGlobalFunc('procedure FilterPointsLine(var Points: TPointArray; Radial: Extended; Radius, MX, MY: Integer);', @Lape_FilterPointsLine); -AddGlobalFunc('procedure FilterTPADist(var TPA: TPointArray; maxDist: integer);', @Lape_FilterTPADist); -AddGlobalFunc('function GetATPABounds(const ATPA: T2DPointArray): TBox', @Lape_GetATPABounds); -AddGlobalFunc('function GetTPABounds(const TPA: TPointArray): TBox', @Lape_GetTPABounds); -AddGlobalFunc('function FindTPAinTPA(const SearchTPA, TotalTPA: TPointArray; var Matches: TPointArray): Boolean', @Lape_FindTPAinTPA); -AddGlobalFunc('function GetSamePointsATPA(const ATPA: T2DPointArray; var Matches: TPointArray): boolean', @Lape_GetSamePointsATPA); -AddGlobalFunc('function FindTextTPAinTPA(Height: integer; const SearchTPA, TotalTPA: TPointArray; var Matches: TPointArray): Boolean', @Lape_FindTextTPAinTPA); -AddGlobalFunc('procedure SortCircleWise(var tpa: TPointArray; const cx, cy, StartDegree: Integer; SortUp, ClockWise: Boolean);', @Lape_SortCircleWise); -AddGlobalFunc('procedure LinearSort(var tpa: TPointArray; cx, cy, sd: Integer; SortUp: Boolean);', @Lape_LinearSort); -AddGlobalFunc('function RotatePoint(Const p: TPoint; angle, mx, my: Extended): TPoint', @Lape_RotatePoint); -AddGlobalFunc('function ChangeDistPT(const PT: TPoint; mx,my: integer; newdist: extended): TPoint', @Lape_ChangeDistPT); -AddGlobalFunc('function ChangeDistTPA(var TPA: TPointArray; mx,my: integer; newdist: extended): boolean', @Lape_ChangeDistTPA); -AddGlobalFunc('function FindGapsTPA(const TPA: TPointArray; MinPixels: Integer): T2DPointArray', @Lape_FindGapsTPA); -AddGlobalFunc('function RemoveDistTPointArray(x, y, dist: Integer; const ThePoints: TPointArray; RemoveHigher: Boolean): TPointArray', @Lape_RemoveDistTPointArray); -AddGlobalFunc('function CombineTPA(const Ar1, Ar2: TPointArray): TPointArray', @Lape_CombineTPA); -AddGlobalFunc('function ReArrangeandShortenArrayEx(const a: TPointArray; w, h: Integer): TPointArray', @Lape_ReArrangeandShortenArrayEx); -AddGlobalFunc('function ReArrangeandShortenArray(const a: TPointArray; Dist: Integer): TPointArray', @Lape_ReArrangeandShortenArray); -AddGlobalFunc('function TPAtoATPAEx(const TPA: TPointArray; w, h: Integer): T2DPointArray', @Lape_TPAtoATPAEx); -AddGlobalFunc('function TPAtoATPA(const TPA: TPointArray; Dist: Integer): T2DPointArray', @Lape_TPAtoATPA); -AddGlobalFunc('function CombineIntArray(const Ar1, Ar2: TIntegerArray): TIntegerArray', @Lape_CombineIntArray); -AddGlobalFunc('function MergeATPA(const ATPA: T2DPointArray): TPointArray', @Lape_MergeATPA); -AddGlobalFunc('procedure AppendTPA(var TPA: TPointArray; const ToAppend: TPointArray);', @Lape_AppendTPA); -AddGlobalFunc('function TPAFromBox(const Box: TBox): TPointArray', @Lape_TPAFromBox); -AddGlobalFunc('function RotatePoints(Const P: TPointArray; A, cx, cy: Extended): TPointArray', @Lape_RotatePoints); -AddGlobalFunc('function FindTPAEdges(const p: TPointArray): TPointArray', @Lape_FindTPAEdges); -AddGlobalFunc('function ClearTPAFromTPA(const arP, ClearPoints: TPointArray): TPointArray', @Lape_ClearTPAFromTPA); -AddGlobalFunc('function ReturnPointsNotInTPA(Const TotalTPA: TPointArray; const Box: TBox): TPointArray', @Lape_ReturnPointsNotInTPA); -AddGlobalFunc('function PointInTPA(p: TPoint; const arP: TPointArray): Boolean', @Lape_PointInTPA); -AddGlobalFunc('procedure ClearDoubleTPA(var TPA: TPointArray);', @Lape_ClearDoubleTPA); -AddGlobalFunc('procedure TPACountSort(Var TPA: TPointArray; const max: TPoint; Const SortOnX: Boolean);', @Lape_TPACountSort); -AddGlobalFunc('procedure TPACountSortBase(Var TPA: TPointArray; const maxx, base: TPoint; const SortOnX: Boolean);', @Lape_TPACountSortBase); -AddGlobalFunc('procedure InvertTIA(var tI: TIntegerArray);', @Lape_InvertTIA); -AddGlobalFunc('function SumIntegerArray(const Ints: TIntegerArray): Integer', @Lape_SumIntegerArray); -AddGlobalFunc('function AverageTIA(const tI: TIntegerArray): Integer', @Lape_AverageTIA); -AddGlobalFunc('function AverageExtended(const tE: TExtendedArray): Extended', @Lape_AverageExtended); -AddGlobalFunc('procedure SplitTPAExWrap(const arr: TPointArray; w, h: Integer; var res: T2DPointArray);', @Lape_SplitTPAExWrap); -AddGlobalFunc('procedure SplitTPAWrap(const arr: TPointArray; Dist: Integer; var res: T2DPointArray);', @Lape_SplitTPAWrap); -AddGlobalFunc('procedure FindGapsTPAWrap(const TPA: TPointArray; MinPixels: Integer; var Res: T2DPointArray);', @Lape_FindGapsTPAWrap); -AddGlobalFunc('procedure RemoveDistTPointArrayWrap(x, y, dist: Integer; const ThePoints: TPointArray; RemoveHigher: Boolean; var Res: TPointArray);', @Lape_RemoveDistTPointArrayWrap); -AddGlobalFunc('procedure CombineTPAWrap(const Ar1, Ar2: TPointArray; var Res: TPointArray);', @Lape_CombineTPAWrap); -AddGlobalFunc('procedure ReArrangeandShortenArrayExWrap(const a: TPointArray; w, h: Integer; var Res: TPointArray);', @Lape_ReArrangeandShortenArrayExWrap); -AddGlobalFunc('procedure ReArrangeandShortenArrayWrap(const a: TPointArray; Dist: Integer; var Res: TPointArray);', @Lape_ReArrangeandShortenArrayWrap); -AddGlobalFunc('procedure TPAtoATPAExWrap(const TPA: TPointArray; w, h: Integer; var Res: T2DPointArray);', @Lape_TPAtoATPAExWrap); -AddGlobalFunc('procedure TPAtoATPAWrap(const TPA: TPointArray; Dist: Integer; var Res: T2DPointArray);', @Lape_TPAtoATPAWrap); -AddGlobalFunc('procedure CombineIntArrayWrap(const Ar1, Ar2: TIntegerArray; var Res: TIntegerArray);', @Lape_CombineIntArrayWrap); -AddGlobalFunc('procedure MergeATPAWrap(const ATPA: T2DPointArray; var Res: TPointArray);', @Lape_MergeATPAWrap); -AddGlobalFunc('procedure TPAFromBoxWrap(const Box: TBox; var Res: TPointArray);', @Lape_TPAFromBoxWrap); -AddGlobalFunc('procedure RotatePointsWrap(Const P: TPointArray; A, cx, cy: Extended; var Res: TPointArray);', @Lape_RotatePointsWrap); -AddGlobalFunc('procedure FindTPAEdgesWrap(const p: TPointArray; var Res: TPointArray);', @Lape_FindTPAEdgesWrap); -AddGlobalFunc('procedure ClearTPAFromTPAWrap(const arP, ClearPoints: TPointArray; var Res: TPointArray);', @Lape_ClearTPAFromTPAWrap); -AddGlobalFunc('procedure ReturnPointsNotInTPAWrap(Const TotalTPA: TPointArray; const Box: TBox; var Res: TPointArray);', @Lape_ReturnPointsNotInTPAWrap); -AddGlobalFunc('function SameTPA(const aTPA, bTPA: TPointArray): Boolean', @Lape_SameTPA); -AddGlobalFunc('function TPAInATPA(const TPA: TPointArray; const InATPA: T2DPointArray; var Index: LongInt): Boolean', @Lape_TPAInATPA); -AddGlobalFunc('procedure OffsetTPA(var TPA: TPointArray; const Offset: TPoint);', @Lape_OffsetTPA); -AddGlobalFunc('procedure OffsetATPA(var ATPA: T2DPointArray; const Offset: TPoint);', @Lape_OffsetATPA); -AddGlobalFunc('function CopyTPA(const TPA: TPointArray): TPointArray', @Lape_CopyTPA); -AddGlobalFunc('function CopyATPA(const ATPA: T2DPointArray): T2DPointArray', @Lape_CopyATPA); -AddGlobalFunc('procedure SetDesktopAsClient;', @Lape_SetDesktopAsClient); -AddGlobalFunc('function SetTargetArray(P: Integer; w, h: integer): integer', @Lape_SetTargetArray); -AddGlobalFunc('function SetTargetBitmap(bitmap: Integer): integer', @Lape_SetTargetBitmap); -AddGlobalFunc('function SetEIOSTarget(name: string; args: Variant): integer', @Lape_SetEIOSTarget); -AddGlobalFunc('procedure SetImageTarget(idx: integer);', @Lape_SetImageTarget); -AddGlobalFunc('procedure SetKeyMouseTarget(idx: integer);', @Lape_SetKeyMouseTarget); -AddGlobalFunc('function GetImageTarget: integer', @Lape_GetImageTarget); -AddGlobalFunc('function GetKeyMouseTarget: integer', @Lape_GetKeyMouseTarget); -AddGlobalFunc('function ExportImageTarget: TTarget_Exported', @Lape_ExportImageTarget); -AddGlobalFunc('function ExportKeyMouseTarget: TTarget_Exported', @Lape_ExportKeyMouseTarget); -AddGlobalFunc('procedure FreeTarget(idx: integer);', @Lape_FreeTarget); -AddGlobalFunc('procedure GetClientDimensions(var w, h: integer);', @Lape_GetClientDimensions); -AddGlobalFunc('procedure GetClientPosition(var left, top: integer);', @Lape_GetClientPosition); -AddGlobalFunc('function Freeze: boolean', @Lape_Freeze); -AddGlobalFunc('function Unfreeze: boolean', @Lape_Unfreeze); -AddGlobalFunc('procedure ActivateClient;', @Lape_ActivateClient); -AddGlobalFunc('function IsTargetValid: boolean', @Lape_IsTargetValid); From fe7ed38075de029a209f03e0d99a08e6439e7484 Mon Sep 17 00:00:00 2001 From: Niels Date: Sat, 6 Aug 2011 14:17:52 +0200 Subject: [PATCH 2/3] Wrapper generators fix. --- Projects/RUTIS Wrappers/main.pas | 2 ++ Projects/lape-wrappers/main.pas | 2 ++ 2 files changed, 4 insertions(+) diff --git a/Projects/RUTIS Wrappers/main.pas b/Projects/RUTIS Wrappers/main.pas index 437e88f..bfce2a3 100644 --- a/Projects/RUTIS Wrappers/main.pas +++ b/Projects/RUTIS Wrappers/main.pas @@ -99,6 +99,8 @@ begin m := TMemoryStream.Create; try + Input.Text := StringReplace(Input.Text, 'extdecl;', '', [rfReplaceAll, rfIgnoreCase]); + Output.BeginUpdate; Output.Clear; Dbg.BeginUpdate; diff --git a/Projects/lape-wrappers/main.pas b/Projects/lape-wrappers/main.pas index 317582a..4937a6b 100644 --- a/Projects/lape-wrappers/main.pas +++ b/Projects/lape-wrappers/main.pas @@ -100,6 +100,8 @@ begin m := TMemoryStream.Create; try + Input.Text := StringReplace(Input.Text, 'extdecl;', '', [rfReplaceAll, rfIgnoreCase]); + Output.BeginUpdate; Output.Clear; Dbg.BeginUpdate; From f45d6bbad7c4bb58e587aa9a7c60066a56d532a3 Mon Sep 17 00:00:00 2001 From: Merlijn Wajer Date: Sat, 6 Aug 2011 14:26:38 +0200 Subject: [PATCH 3/3] Lape: Update wrappers. Squashes following commits: - Lape: New wrappers. - Lape: Updated exported methods. - Lape: Renamed wrapper files. - Lape: Renamed methods in exported methods. - Lape: Update MMLPSThread. - Lape: Compilation fixes. --- Units/MMLAddon/LPInc/Wrappers/GENERATE THESE! | 0 Units/MMLAddon/LPInc/Wrappers/colourconv.inc | 4 - Units/MMLAddon/LPInc/Wrappers/crypto.inc | 4 - .../Wrappers/{bitmap.inc => lp_bitmap.inc} | 0 .../Wrappers/{colour.inc => lp_colour.inc} | 0 .../MMLAddon/LPInc/Wrappers/lp_colourconv.inc | 49 +++ Units/MMLAddon/LPInc/Wrappers/lp_crypto.inc | 49 +++ .../LPInc/Wrappers/{dtm.inc => lp_dtm.inc} | 0 .../{extensions.inc => lp_extensions.inc} | 0 .../LPInc/Wrappers/{file.inc => lp_file.inc} | 15 + .../{internets.inc => lp_internets.inc} | 0 .../{keyboard.inc => lp_keyboard.inc} | 0 Units/MMLAddon/LPInc/Wrappers/lp_math.inc | 299 ++++++++++++++++++ .../Wrappers/{mouse.inc => lp_mouse.inc} | 0 Units/MMLAddon/LPInc/Wrappers/lp_ocr.inc | 64 ++++ Units/MMLAddon/LPInc/Wrappers/lp_other.inc | 169 ++++++++++ .../{settings.inc => lp_settings.inc} | 0 .../Wrappers/{strings.inc => lp_strings.inc} | 50 +++ .../LPInc/Wrappers/{tpa.inc => lp_tpa.inc} | 0 .../Wrappers/{window.inc => lp_window.inc} | 0 Units/MMLAddon/LPInc/Wrappers/math.inc | 114 ------- Units/MMLAddon/LPInc/Wrappers/ocr.inc | 19 -- Units/MMLAddon/LPInc/Wrappers/other.inc | 19 -- Units/MMLAddon/LPInc/lpexportedmethods.inc | 179 ++++++++--- Units/MMLAddon/mmlpsthread.pas | 32 +- 25 files changed, 844 insertions(+), 222 deletions(-) delete mode 100644 Units/MMLAddon/LPInc/Wrappers/GENERATE THESE! delete mode 100644 Units/MMLAddon/LPInc/Wrappers/colourconv.inc delete mode 100644 Units/MMLAddon/LPInc/Wrappers/crypto.inc rename Units/MMLAddon/LPInc/Wrappers/{bitmap.inc => lp_bitmap.inc} (100%) rename Units/MMLAddon/LPInc/Wrappers/{colour.inc => lp_colour.inc} (100%) create mode 100644 Units/MMLAddon/LPInc/Wrappers/lp_colourconv.inc create mode 100644 Units/MMLAddon/LPInc/Wrappers/lp_crypto.inc rename Units/MMLAddon/LPInc/Wrappers/{dtm.inc => lp_dtm.inc} (100%) rename Units/MMLAddon/LPInc/Wrappers/{extensions.inc => lp_extensions.inc} (100%) rename Units/MMLAddon/LPInc/Wrappers/{file.inc => lp_file.inc} (85%) rename Units/MMLAddon/LPInc/Wrappers/{internets.inc => lp_internets.inc} (100%) rename Units/MMLAddon/LPInc/Wrappers/{keyboard.inc => lp_keyboard.inc} (100%) create mode 100644 Units/MMLAddon/LPInc/Wrappers/lp_math.inc rename Units/MMLAddon/LPInc/Wrappers/{mouse.inc => lp_mouse.inc} (100%) create mode 100644 Units/MMLAddon/LPInc/Wrappers/lp_ocr.inc create mode 100644 Units/MMLAddon/LPInc/Wrappers/lp_other.inc rename Units/MMLAddon/LPInc/Wrappers/{settings.inc => lp_settings.inc} (100%) rename Units/MMLAddon/LPInc/Wrappers/{strings.inc => lp_strings.inc} (61%) rename Units/MMLAddon/LPInc/Wrappers/{tpa.inc => lp_tpa.inc} (100%) rename Units/MMLAddon/LPInc/Wrappers/{window.inc => lp_window.inc} (100%) delete mode 100644 Units/MMLAddon/LPInc/Wrappers/math.inc delete mode 100644 Units/MMLAddon/LPInc/Wrappers/ocr.inc delete mode 100644 Units/MMLAddon/LPInc/Wrappers/other.inc diff --git a/Units/MMLAddon/LPInc/Wrappers/GENERATE THESE! b/Units/MMLAddon/LPInc/Wrappers/GENERATE THESE! deleted file mode 100644 index e69de29..0000000 diff --git a/Units/MMLAddon/LPInc/Wrappers/colourconv.inc b/Units/MMLAddon/LPInc/Wrappers/colourconv.inc deleted file mode 100644 index 07910d9..0000000 --- a/Units/MMLAddon/LPInc/Wrappers/colourconv.inc +++ /dev/null @@ -1,4 +0,0 @@ -procedure Lape_ColorToRGB(const Params: PParamArray); -begin - ps_ColorToRGB(Pinteger(Params^[0])^, PInteger(Params^[1])^, PInteger(Params^[2])^, PInteger(Params^[3])^); -end; diff --git a/Units/MMLAddon/LPInc/Wrappers/crypto.inc b/Units/MMLAddon/LPInc/Wrappers/crypto.inc deleted file mode 100644 index 63e2a8b..0000000 --- a/Units/MMLAddon/LPInc/Wrappers/crypto.inc +++ /dev/null @@ -1,4 +0,0 @@ -procedure Lape_haval(const Params: PParamArray; const Result: Pointer); -begin - Pstring(Result)^ := ps_haval(Pstring(Params^[0])^); -end; diff --git a/Units/MMLAddon/LPInc/Wrappers/bitmap.inc b/Units/MMLAddon/LPInc/Wrappers/lp_bitmap.inc similarity index 100% rename from Units/MMLAddon/LPInc/Wrappers/bitmap.inc rename to Units/MMLAddon/LPInc/Wrappers/lp_bitmap.inc diff --git a/Units/MMLAddon/LPInc/Wrappers/colour.inc b/Units/MMLAddon/LPInc/Wrappers/lp_colour.inc similarity index 100% rename from Units/MMLAddon/LPInc/Wrappers/colour.inc rename to Units/MMLAddon/LPInc/Wrappers/lp_colour.inc diff --git a/Units/MMLAddon/LPInc/Wrappers/lp_colourconv.inc b/Units/MMLAddon/LPInc/Wrappers/lp_colourconv.inc new file mode 100644 index 0000000..d5ef480 --- /dev/null +++ b/Units/MMLAddon/LPInc/Wrappers/lp_colourconv.inc @@ -0,0 +1,49 @@ +procedure Lape_ColorToRGB(const Params: PParamArray); +begin + ps_ColorToRGB(Pinteger(Params^[0])^, PInteger(Params^[1])^, PInteger(Params^[2])^, PInteger(Params^[3])^); +end; + +procedure Lape_RGBtoColor(const Params: PParamArray; const Result: Pointer); +begin + PColor(Result)^ := ps_RGBtoColor(PInteger(Params^[0])^, PInteger(Params^[1])^, PInteger(Params^[2])^); +end; + +procedure Lape_ColorToHSL(const Params: PParamArray); +begin + ps_ColorToHSL(PInteger(Params^[0])^, PExtended(Params^[1])^, PExtended(Params^[2])^, PExtended(Params^[3])^); +end; + +procedure Lape_HSLToColor(const Params: PParamArray; const Result: Pointer); +begin + PColor(Result)^ := ps_HSLToColor(PExtended(Params^[0])^, PExtended(Params^[1])^, PExtended(Params^[2])^); +end; + +procedure Lape_ColorToXYZ(const Params: PParamArray); +begin + ps_ColorToXYZ(PInteger(Params^[0])^, PExtended(Params^[1])^, PExtended(Params^[2])^, PExtended(Params^[3])^); +end; + +procedure Lape_XYZToColor(const Params: PParamArray; const Result: Pointer); +begin + PColor(Result)^ := ps_XYZToColor(PExtended(Params^[0])^, PExtended(Params^[1])^, PExtended(Params^[2])^); +end; + +procedure Lape_RGBToHSL(const Params: PParamArray); +begin + ps_RGBToHSL(PInteger(Params^[0])^, PInteger(Params^[1])^, PInteger(Params^[2])^, PExtended(Params^[3])^, PExtended(Params^[4])^, PExtended(Params^[5])^); +end; + +procedure Lape_HSLtoRGB(const Params: PParamArray); +begin + ps_HSLtoRGB(Pextended(Params^[0])^, Pextended(Params^[1])^, Pextended(Params^[2])^, PInteger(Params^[3])^, PInteger(Params^[4])^, PInteger(Params^[5])^); +end; + +procedure Lape_RGBToXYZ(const Params: PParamArray); +begin + ps_RGBToXYZ(PInteger(Params^[0])^, PInteger(Params^[1])^, PInteger(Params^[2])^, PExtended(Params^[3])^, PExtended(Params^[4])^, PExtended(Params^[5])^); +end; + +procedure Lape_XYZToRGB(const Params: PParamArray); +begin + ps_XYZToRGB(PExtended(Params^[0])^, PExtended(Params^[1])^, PExtended(Params^[2])^, PInteger(Params^[3])^, PInteger(Params^[4])^, PInteger(Params^[5])^); +end; diff --git a/Units/MMLAddon/LPInc/Wrappers/lp_crypto.inc b/Units/MMLAddon/LPInc/Wrappers/lp_crypto.inc new file mode 100644 index 0000000..8716548 --- /dev/null +++ b/Units/MMLAddon/LPInc/Wrappers/lp_crypto.inc @@ -0,0 +1,49 @@ +procedure Lape_haval(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_haval(Pstring(Params^[0])^); +end; + +procedure Lape_md4(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_md4(Pstring(Params^[0])^); +end; + +procedure Lape_md5(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_md5(Pstring(Params^[0])^); +end; + +procedure Lape_ripemd128(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_ripemd128(Pstring(Params^[0])^); +end; + +procedure Lape_ripemd160(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_ripemd160(Pstring(Params^[0])^); +end; + +procedure Lape_sha1(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_sha1(Pstring(Params^[0])^); +end; + +procedure Lape_sha256(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_sha256(Pstring(Params^[0])^); +end; + +procedure Lape_sha384(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_sha384(Pstring(Params^[0])^); +end; + +procedure Lape_sha512(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_sha512(Pstring(Params^[0])^); +end; + +procedure Lape_tiger(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_tiger(Pstring(Params^[0])^); +end; diff --git a/Units/MMLAddon/LPInc/Wrappers/dtm.inc b/Units/MMLAddon/LPInc/Wrappers/lp_dtm.inc similarity index 100% rename from Units/MMLAddon/LPInc/Wrappers/dtm.inc rename to Units/MMLAddon/LPInc/Wrappers/lp_dtm.inc diff --git a/Units/MMLAddon/LPInc/Wrappers/extensions.inc b/Units/MMLAddon/LPInc/Wrappers/lp_extensions.inc similarity index 100% rename from Units/MMLAddon/LPInc/Wrappers/extensions.inc rename to Units/MMLAddon/LPInc/Wrappers/lp_extensions.inc diff --git a/Units/MMLAddon/LPInc/Wrappers/file.inc b/Units/MMLAddon/LPInc/Wrappers/lp_file.inc similarity index 85% rename from Units/MMLAddon/LPInc/Wrappers/file.inc rename to Units/MMLAddon/LPInc/Wrappers/lp_file.inc index 2fd6685..ff31972 100644 --- a/Units/MMLAddon/LPInc/Wrappers/file.inc +++ b/Units/MMLAddon/LPInc/Wrappers/lp_file.inc @@ -87,3 +87,18 @@ procedure Lape_WriteINI(const Params: PParamArray); begin ps_WriteINI(Pstring(Params^[0])^, Pstring(Params^[1])^, Pstring(Params^[2])^, Pstring(Params^[3])^); end; + +procedure Lape_ReadINI(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_ReadINI(Pstring(Params^[0])^, Pstring(Params^[1])^, Pstring(Params^[2])^); +end; + +procedure Lape_DeleteINI(const Params: PParamArray); +begin + ps_DeleteINI(Pstring(Params^[0])^, Pstring(Params^[1])^, Pstring(Params^[2])^); +end; + +procedure Lape_ExtractFileExt(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_ExtractFileExt(Pstring(Params^[0])^); +end; diff --git a/Units/MMLAddon/LPInc/Wrappers/internets.inc b/Units/MMLAddon/LPInc/Wrappers/lp_internets.inc similarity index 100% rename from Units/MMLAddon/LPInc/Wrappers/internets.inc rename to Units/MMLAddon/LPInc/Wrappers/lp_internets.inc diff --git a/Units/MMLAddon/LPInc/Wrappers/keyboard.inc b/Units/MMLAddon/LPInc/Wrappers/lp_keyboard.inc similarity index 100% rename from Units/MMLAddon/LPInc/Wrappers/keyboard.inc rename to Units/MMLAddon/LPInc/Wrappers/lp_keyboard.inc diff --git a/Units/MMLAddon/LPInc/Wrappers/lp_math.inc b/Units/MMLAddon/LPInc/Wrappers/lp_math.inc new file mode 100644 index 0000000..962dd38 --- /dev/null +++ b/Units/MMLAddon/LPInc/Wrappers/lp_math.inc @@ -0,0 +1,299 @@ +procedure Lape_round(const Params: PParamArray; const Result: Pointer); +begin + Pinteger(Result)^ := ps_round(Pextended(Params^[0])^); +end; + +procedure Lape_iAbs(const Params: PParamArray; const Result: Pointer); +begin + Pinteger(Result)^ := ps_iAbs(Pinteger(Params^[0])^); +end; + +procedure Lape_ceil(const Params: PParamArray; const Result: Pointer); +begin + Pinteger(Result)^ := ps_ceil(Pextended(Params^[0])^); +end; + +procedure Lape_pow(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_pow(Pextended(Params^[0])^, Pextended(Params^[1])^); +end; + +procedure Lape_RiemannGauss(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_RiemannGauss(Pextended(Params^[0])^, Pextended(Params^[1])^, Pextended(Params^[2])^, Pinteger(Params^[3])^); +end; + +procedure Lape_DiscreteGauss(const Params: PParamArray; const Result: Pointer); +begin + PExtendedArray(Result)^ := ps_DiscreteGauss(Pinteger(Params^[0])^, Pinteger(Params^[1])^, Pextended(Params^[2])^); +end; + +procedure Lape_GaussMatrix(const Params: PParamArray; const Result: Pointer); +begin + P2DExtendedArray(Result)^ := ps_GaussMatrix(Pinteger(Params^[0])^, Pextended(Params^[1])^); +end; + +procedure Lape_exp(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_exp(Pextended(Params^[0])^); +end; + +procedure Lape_Max(const Params: PParamArray; const Result: Pointer); +begin + Pinteger(Result)^ := ps_Max(Pinteger(Params^[0])^, Pinteger(Params^[1])^); +end; + +procedure Lape_Min(const Params: PParamArray; const Result: Pointer); +begin + PInteger(Result)^ := ps_Min(PInteger(Params^[0])^, PInteger(Params^[1])^); +end; + +procedure Lape_MinE(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_MinE(Pextended(Params^[0])^, Pextended(Params^[1])^); +end; + +procedure Lape_MaxE(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_MaxE(Pextended(Params^[0])^, Pextended(Params^[1])^); +end; + +procedure Lape_Sqr(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_Sqr(Pextended(Params^[0])^); +end; + +procedure Lape_Point(const Params: PParamArray; const Result: Pointer); +begin + PPoint(Result)^ := ps_Point(Pinteger(Params^[0])^, Pinteger(Params^[1])^); +end; + +procedure Lape_Distance(const Params: PParamArray; const Result: Pointer); +begin + Pinteger(Result)^ := ps_Distance(Pinteger(Params^[0])^, Pinteger(Params^[1])^, Pinteger(Params^[2])^, Pinteger(Params^[3])^); +end; + +procedure Lape_Hypot(const Params: PParamArray; const Result: Pointer); +begin + PExtended(Result)^ := ps_Hypot(PExtended(Params^[0])^, PExtended(Params^[1])^); +end; + +procedure Lape_RandomRange(const Params: PParamArray; const Result: Pointer); +begin + PInteger(Result)^ := ps_RandomRange(PInteger(Params^[0])^, PInteger(Params^[1])^); +end; + +procedure Lape_Random(const Params: PParamArray; const Result: Pointer); +begin + Pinteger(Result)^ := ps_Random(Pinteger(Params^[0])^); +end; + +procedure Lape_RandomE(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_RandomE(); +end; + +procedure Lape_ArcTan2(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_ArcTan2(Pextended(Params^[0])^, Pextended(Params^[1])^); +end; + +procedure Lape_IncEx(const Params: PParamArray); +begin + ps_IncEx(Pinteger(Params^[0])^, Pinteger(Params^[1])^); +end; + +procedure Lape_DecEx(const Params: PParamArray); +begin + ps_DecEx(Pinteger(Params^[0])^, Pinteger(Params^[1])^); +end; + +procedure Lape_Factorial(const Params: PParamArray; const Result: Pointer); +begin + PInt64(Result)^ := ps_Factorial(Plongword(Params^[0])^); +end; + +procedure Lape_BinCoe(const Params: PParamArray; const Result: Pointer); +begin + PExtended(Result)^ := ps_BinCoe(PLongInt(Params^[0])^, PLongInt(Params^[1])^); +end; + +procedure Lape_FixD(const Params: PParamArray; const Result: Pointer); +begin + PExtended(Result)^ := ps_FixD(Pextended(Params^[0])^); +end; + +procedure Lape_InRange(const Params: PParamArray; const Result: Pointer); +begin + Pboolean(Result)^ := ps_InRange(Pinteger(Params^[0])^, Pinteger(Params^[1])^, Pinteger(Params^[2])^); +end; + +procedure Lape_IntToBox(const Params: PParamArray; const Result: Pointer); +begin + PBox(Result)^ := ps_IntToBox(Pinteger(Params^[0])^, Pinteger(Params^[1])^, Pinteger(Params^[2])^, Pinteger(Params^[3])^); +end; + +procedure Lape_IntInBox(const Params: PParamArray; const Result: Pointer); +begin + PBoolean(Result)^ := ps_IntInBox(PInteger(Params^[0])^, PInteger(Params^[1])^, PBox(Params^[2])^); +end; + +procedure Lape_PointToBox(const Params: PParamArray; const Result: Pointer); +begin + PBox(Result)^ := ps_PointToBox(PPoint(Params^[0])^, PPoint(Params^[1])^); +end; + +procedure Lape_PointInBox(const Params: PParamArray; const Result: Pointer); +begin + PBoolean(Result)^ := ps_PointInBox(PPoint(Params^[0])^, PBox(Params^[1])^); +end; + +procedure Lape_floor(const Params: PParamArray; const Result: Pointer); +begin + Pinteger(Result)^ := ps_floor(Pextended(Params^[0])^); +end; + +procedure Lape_logn(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_logn(Pextended(Params^[0])^, Pextended(Params^[1])^); +end; + +procedure Lape_ln(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_ln(Pextended(Params^[0])^); +end; + +procedure Lape_inttohex(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_inttohex(Pinteger(Params^[0])^); +end; + +procedure Lape_hextoint(const Params: PParamArray; const Result: Pointer); +begin + Pinteger(Result)^ := ps_hextoint(Pstring(Params^[0])^); +end; + +procedure Lape_sar(const Params: PParamArray; const Result: Pointer); +begin + Plongint(Result)^ := ps_sar(Plongint(Params^[0])^, Pbyte(Params^[1])^); +end; + +procedure Lape_ror(const Params: PParamArray; const Result: Pointer); +begin + PLongWord(Result)^ := ps_ror(Plongword(Params^[0])^, Pbyte(Params^[1])^); +end; + +procedure Lape_rol(const Params: PParamArray; const Result: Pointer); +begin + PLongWord(Result)^ := ps_rol(Plongword(Params^[0])^, Pbyte(Params^[1])^); +end; + +procedure Lape_tan(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_tan(Pextended(Params^[0])^); +end; + +procedure Lape_radians(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_radians(Pextended(Params^[0])^); +end; + +procedure Lape_degrees(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_degrees(Pextended(Params^[0])^); +end; + +procedure Lape_ArcSin(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_ArcSin(Pextended(Params^[0])^); +end; + +procedure Lape_ArcCos(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_ArcCos(Pextended(Params^[0])^); +end; + +procedure Lape_ArcTan(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_ArcTan(Pextended(Params^[0])^); +end; + +procedure Lape_Cotan(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_Cotan(Pextended(Params^[0])^); +end; + +procedure Lape_Secant(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_Secant(Pextended(Params^[0])^); +end; + +procedure Lape_Cosecant(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_Cosecant(Pextended(Params^[0])^); +end; + +procedure Lape_Cot(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_Cot(Pextended(Params^[0])^); +end; + +procedure Lape_Sec(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_Sec(Pextended(Params^[0])^); +end; + +procedure Lape_Csc(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_Csc(Pextended(Params^[0])^); +end; + +procedure Lape_Cosh(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_Cosh(Pextended(Params^[0])^); +end; + +procedure Lape_Sinh(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_Sinh(Pextended(Params^[0])^); +end; + +procedure Lape_Tanh(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_Tanh(Pextended(Params^[0])^); +end; + +procedure Lape_CotH(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_CotH(Pextended(Params^[0])^); +end; + +procedure Lape_SecH(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_SecH(Pextended(Params^[0])^); +end; + +procedure Lape_CscH(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_CscH(Pextended(Params^[0])^); +end; + +procedure Lape_ArcCosh(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_ArcCosh(Pextended(Params^[0])^); +end; + +procedure Lape_ArcSinh(const Params: PParamArray; const Result: Pointer); +begin + Pextended(Result)^ := ps_ArcSinh(Pextended(Params^[0])^); +end; + +procedure Lape_DecRet(const Params: PParamArray; const Result: Pointer); +begin + PExtended(Result)^ := DecRet(PExtended(Params^[0])^); +end; + +procedure Lape_log10(const Params: PParamArray; const Result: Pointer); +begin + PExtended(Result)^ := ps_log10(PExtended(Params^[0])^); +end; diff --git a/Units/MMLAddon/LPInc/Wrappers/mouse.inc b/Units/MMLAddon/LPInc/Wrappers/lp_mouse.inc similarity index 100% rename from Units/MMLAddon/LPInc/Wrappers/mouse.inc rename to Units/MMLAddon/LPInc/Wrappers/lp_mouse.inc diff --git a/Units/MMLAddon/LPInc/Wrappers/lp_ocr.inc b/Units/MMLAddon/LPInc/Wrappers/lp_ocr.inc new file mode 100644 index 0000000..14a10f5 --- /dev/null +++ b/Units/MMLAddon/LPInc/Wrappers/lp_ocr.inc @@ -0,0 +1,64 @@ +procedure Lape_rs_GetUpText(const Params: PParamArray; const Result: Pointer); +begin + PString(Result)^ := ps_rs_GetUpText(); +end; + +procedure Lape_rs_GetUpTextAtEx(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_rs_GetUpTextAtEx(Pinteger(Params^[0])^, Pinteger(Params^[1])^, Pboolean(Params^[2])^); +end; + +procedure Lape_rs_GetUpTextAt(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_rs_GetUpTextAt(Pinteger(Params^[0])^, Pinteger(Params^[1])^); +end; + +procedure Lape_BitmapFromText(const Params: PParamArray; const Result: Pointer); +begin + Pinteger(Result)^ := ps_BitmapFromText(PString(Params^[0])^, PString(Params^[1])^); +end; + +procedure Lape_MaskFromText(const Params: PParamArray; const Result: Pointer); +begin + PMask(Result)^ := ps_MaskFromText(PString(Params^[0])^, PString(Params^[1])^); +end; + +procedure Lape_TPAFromTextWrap(const Params: PParamArray); +begin + ps_TPAFromTextWrap(PString(Params^[0])^, PString(Params^[1])^, Pinteger(Params^[2])^, Pinteger(Params^[3])^, PPointArray(Params^[4])^); +end; + +procedure Lape_TPAFromText(const Params: PParamArray; const Result: Pointer); +begin + PPointArray(Result)^ := ps_TPAFromText(PString(Params^[0])^, PString(Params^[1])^, Pinteger(Params^[2])^, Pinteger(Params^[3])^); +end; + +procedure Lape_GetTextATPA(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_GetTextATPA(P2DPointArray(Params^[0])^, Pinteger(Params^[1])^, Pstring(Params^[2])^); +end; + +procedure Lape_GetTextAt(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_GetTextAt(Pinteger(Params^[0])^, Pinteger(Params^[1])^, Pinteger(Params^[2])^, Pinteger(Params^[3])^, Pinteger(Params^[4])^, Pinteger(Params^[5])^, Pinteger(Params^[6])^, Pinteger(Params^[7])^, Pstring(Params^[8])^); +end; + +procedure Lape_GetTextAtEx(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_GetTextAtEx(Pinteger(Params^[0])^, Pinteger(Params^[1])^, Pinteger(Params^[2])^, Pinteger(Params^[3])^, Pinteger(Params^[4])^, Pinteger(Params^[5])^, Pinteger(Params^[6])^, Pinteger(Params^[7])^, Pinteger(Params^[8])^, Pstring(Params^[9])^); +end; + +procedure Lape_LoadSystemFont(const Params: PParamArray; const Result: Pointer); +begin + Pboolean(Result)^ := ps_LoadSystemFont(PFont(Params^[0])^, Pstring(Params^[1])^); +end; + +procedure Lape_LoadFont(const Params: PParamArray; const Result: Pointer); +begin + Pboolean(Result)^ := ps_LoadFont(Pstring(Params^[0])^, Pboolean(Params^[1])^); +end; + +procedure Lape_FreeFont(const Params: PParamArray; const Result: Pointer); +begin + Pboolean(Result)^ := ps_FreeFont(Pstring(Params^[0])^); +end; diff --git a/Units/MMLAddon/LPInc/Wrappers/lp_other.inc b/Units/MMLAddon/LPInc/Wrappers/lp_other.inc new file mode 100644 index 0000000..63c9f67 --- /dev/null +++ b/Units/MMLAddon/LPInc/Wrappers/lp_other.inc @@ -0,0 +1,169 @@ +procedure Lape_Writeln(const Params: PParamArray); +begin + ps_Writeln(Pstring(Params^[0])^); +end; + +procedure Lape_SetScriptProp(const Params: PParamArray; const Result: Pointer); +begin + Pboolean(Result)^ := ps_SetScriptProp(PSP_Property(Params^[0])^, PVariantArray(Params^[1])^); +end; + +procedure Lape_GetScriptProp(const Params: PParamArray; const Result: Pointer); +begin + Pboolean(Result)^ := ps_GetScriptProp(PSP_Property(Params^[0])^, PVariantArray(Params^[1])^); +end; + +procedure Lape_Wait(const Params: PParamArray); +begin + ps_Wait(PDWord(Params^[0])^); +end; + +procedure Lape_PlaySound(const Params: PParamArray); +begin + ps_PlaySound(Pstring(Params^[0])^); +end; + +procedure Lape_StopSound(const Params: PParamArray); +begin + ps_StopSound(); +end; + +procedure Lape_ClearDebug(const Params: PParamArray); +begin + ps_ClearDebug(); +end; + +procedure Lape_SetSupressExceptions(const Params: PParamArray); +begin + ps_SetSupressExceptions(Pboolean(Params^[0])^); +end; + +procedure Lape_SaveScreenshot(const Params: PParamArray); +begin + ps_SaveScreenshot(Pstring(Params^[0])^); +end; + +procedure Lape_DisplayDebugImgWindow(const Params: PParamArray); +begin + ps_DisplayDebugImgWindow(Pinteger(Params^[0])^, Pinteger(Params^[1])^); +end; + +procedure Lape_DrawBitmapDebugImg(const Params: PParamArray); +begin + ps_DrawBitmapDebugImg(Pinteger(Params^[0])^); +end; + +procedure Lape_GetDebugBitmap(const Params: PParamArray; const Result: Pointer); +begin + Pinteger(Result)^ := ps_GetDebugBitmap(); +end; + +procedure Lape_ClearDebugImg(const Params: PParamArray); +begin + ps_ClearDebugImg(); +end; + +procedure Lape_Status(const Params: PParamArray); +begin + ps_Status(Pstring(Params^[0])^); +end; + +procedure Lape_Disguise(const Params: PParamArray); +begin + ps_Disguise(Pstring(Params^[0])^); +end; + +procedure Lape_ShowMessage(const Params: PParamArray); +begin + ps_ShowMessage(Pstring(Params^[0])^); +end; + +procedure Lape_MessageBox(const Params: PParamArray; const Result: Pointer); +begin + PInteger(Result)^ := ps_MessageBox(Pstring(Params^[0])^, Pstring(Params^[1])^, PLongInt(Params^[2])^); +end; + +//procedure Lape_MessageDlg(const Params: PParamArray; const Result: Pointer); +//begin +// Pinteger(Result)^ := ps_MessageDlg(Pstring(Params^[0])^, Pstring(Params^[1])^, PMsgDlgType(Params^[2])^, PMsgDlgButtons(Params^[3])^); +//end; + +procedure Lape_InputQuery(const Params: PParamArray; const Result: Pointer); +begin + PBoolean(Result)^ := ps_InputQuery(PString(Params^[0])^, PString(Params^[1])^, PString(Params^[2])^); +end; + +procedure Lape_TerminateScript(const Params: PParamArray); +begin + ps_TerminateScript(); +end; + +procedure Lape_GetTimeRunning(const Params: PParamArray; const Result: Pointer); +begin + PLongWord(Result)^ := ps_GetTimeRunning(); +end; + +//procedure Lape_GetTClient(const Params: PParamArray; const Result: Pointer); +//begin +// PClient(Result)^ := ps_GetTClient(); +//end; + +procedure Lape_ConvertTime(const Params: PParamArray); +begin + ps_ConvertTime(Pinteger(Params^[0])^, Pinteger(Params^[1])^, Pinteger(Params^[2])^, Pinteger(Params^[3])^); +end; + +procedure Lape_DecodeDate(const Params: PParamArray); +begin + ps_DecodeDate(PDateTime(Params^[0])^, PWord(Params^[1])^, PWord(Params^[2])^, PWord(Params^[3])^); +end; + +procedure Lape_DecodeTime(const Params: PParamArray); +begin + ps_DecodeTime(PDateTime(Params^[0])^, Pword(Params^[1])^, Pword(Params^[2])^, Pword(Params^[3])^, Pword(Params^[4])^); +end; + +procedure Lape_Now(const Params: PParamArray; const Result: Pointer); +begin + PDateTime(Result)^ := ps_Now(); +end; + +procedure Lape_Date(const Params: PParamArray; const Result: Pointer); +begin + PDateTime(Result)^ := ps_Date(); +end; + +procedure Lape_GetTickCount(const Params: PParamArray; const Result: Pointer); +begin + PLongword(Result)^ := ps_GetTickCount(); +end; + +procedure Lape_HakunaMatata(const Params: PParamArray); +begin + ps_HakunaMatata(); +end; + +procedure Lape_Simba(const Params: PParamArray); +begin + ps_Simba(); +end; + +procedure Lape_SetClipBoard(const Params: PParamArray); +begin + ps_SetClipBoard(Pstring(Params^[0])^); +end; + +procedure Lape_GetClipBoard(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_GetClipBoard(); +end; + +//procedure Lape_GetProcesses(const Params: PParamArray; const Result: Pointer); +//begin +// PSysProcArr(Result)^ := ps_GetProcesses(); +//end; +// +//procedure Lape_SetTarget(const Params: PParamArray); +//begin +// ps_SetTarget(PSysProc(Params^[0])^); +//end; diff --git a/Units/MMLAddon/LPInc/Wrappers/settings.inc b/Units/MMLAddon/LPInc/Wrappers/lp_settings.inc similarity index 100% rename from Units/MMLAddon/LPInc/Wrappers/settings.inc rename to Units/MMLAddon/LPInc/Wrappers/lp_settings.inc diff --git a/Units/MMLAddon/LPInc/Wrappers/strings.inc b/Units/MMLAddon/LPInc/Wrappers/lp_strings.inc similarity index 61% rename from Units/MMLAddon/LPInc/Wrappers/strings.inc rename to Units/MMLAddon/LPInc/Wrappers/lp_strings.inc index 155830c..e49ed96 100644 --- a/Units/MMLAddon/LPInc/Wrappers/strings.inc +++ b/Units/MMLAddon/LPInc/Wrappers/lp_strings.inc @@ -82,3 +82,53 @@ procedure Lape_Between(const Params: PParamArray; const Result: Pointer); begin Pstring(Result)^ := ps_Between(Pstring(Params^[0])^, Pstring(Params^[1])^, Pstring(Params^[2])^); end; + +procedure Lape_Implode(const Params: PParamArray; const Result: Pointer); +begin + Pstring(Result)^ := ps_Implode(Pstring(Params^[0])^, PStringArray(Params^[1])^); +end; + +procedure Lape_Explode(const Params: PParamArray; const Result: Pointer); +begin + PStringArray(Result)^ := ps_Explode(Pstring(Params^[0])^, Pstring(Params^[1])^); +end; + +procedure Lape_ExplodeWrap(const Params: PParamArray); +begin + ps_ExplodeWrap(Pstring(Params^[0])^, Pstring(Params^[1])^, PStringArray(Params^[2])^); +end; + +procedure Lape_Padl(const Params: PParamArray; const Result: Pointer); +begin + PString(Result)^ := ps_Padl(PString(Params^[0])^, PlongInt(Params^[1])^); +end; + +procedure Lape_Padz(const Params: PParamArray; const Result: Pointer); +begin + PString(Result)^ := ps_Padz(PString(Params^[0])^, PlongInt(Params^[1])^); +end; + +procedure Lape_Padr(const Params: PParamArray; const Result: Pointer); +begin + PString(Result)^ := ps_Padr(PString(Params^[0])^, PlongInt(Params^[1])^); +end; + +procedure Lape_ExecRegExpr(const Params: PParamArray; const Result: Pointer); +begin + Pboolean(Result)^ := ps_ExecRegExpr(PString(Params^[0])^, PString(Params^[1])^); +end; + +//procedure Lape_SplitRegExpr(const Params: PParamArray); +//begin +// ps_SplitRegExpr(PString(Params^[0])^, PString(Params^[1])^, PStrings(Params^[2])^); +//end; + +procedure Lape_ReplaceRegExpr(const Params: PParamArray; const Result: Pointer); +begin + PString(Result)^ := ps_ReplaceRegExpr(PString(Params^[0])^, PString(Params^[1])^, PString(Params^[2])^, Pboolean(Params^[3])^); +end; + +procedure Lape_posex(const Params: PParamArray; const Result: Pointer); +begin + Pinteger(Result)^ := ps_posex(PString(Params^[0])^, PString(Params^[1])^, Pinteger(Params^[2])^); +end; diff --git a/Units/MMLAddon/LPInc/Wrappers/tpa.inc b/Units/MMLAddon/LPInc/Wrappers/lp_tpa.inc similarity index 100% rename from Units/MMLAddon/LPInc/Wrappers/tpa.inc rename to Units/MMLAddon/LPInc/Wrappers/lp_tpa.inc diff --git a/Units/MMLAddon/LPInc/Wrappers/window.inc b/Units/MMLAddon/LPInc/Wrappers/lp_window.inc similarity index 100% rename from Units/MMLAddon/LPInc/Wrappers/window.inc rename to Units/MMLAddon/LPInc/Wrappers/lp_window.inc diff --git a/Units/MMLAddon/LPInc/Wrappers/math.inc b/Units/MMLAddon/LPInc/Wrappers/math.inc deleted file mode 100644 index cba1832..0000000 --- a/Units/MMLAddon/LPInc/Wrappers/math.inc +++ /dev/null @@ -1,114 +0,0 @@ -procedure Lape_round(const Params: PParamArray; const Result: Pointer); -begin - Pinteger(Result)^ := ps_round(Pextended(Params^[0])^); -end; - -procedure Lape_iAbs(const Params: PParamArray; const Result: Pointer); -begin - Pinteger(Result)^ := ps_iAbs(Pinteger(Params^[0])^); -end; - -procedure Lape_ceil(const Params: PParamArray; const Result: Pointer); -begin - Pinteger(Result)^ := ps_ceil(Pextended(Params^[0])^); -end; - -procedure Lape_pow(const Params: PParamArray; const Result: Pointer); -begin - Pextended(Result)^ := ps_pow(Pextended(Params^[0])^, Pextended(Params^[1])^); -end; - -procedure Lape_RiemannGauss(const Params: PParamArray; const Result: Pointer); -begin - Pextended(Result)^ := ps_RiemannGauss(Pextended(Params^[0])^, Pextended(Params^[1])^, Pextended(Params^[2])^, Pinteger(Params^[3])^); -end; - -procedure Lape_DiscreteGauss(const Params: PParamArray; const Result: Pointer); -begin - PExtendedArray(Result)^ := ps_DiscreteGauss(Pinteger(Params^[0])^, Pinteger(Params^[1])^, Pextended(Params^[2])^); -end; - -procedure Lape_GaussMatrix(const Params: PParamArray; const Result: Pointer); -begin - P2DExtendedArray(Result)^ := ps_GaussMatrix(Pinteger(Params^[0])^, Pextended(Params^[1])^); -end; - -procedure Lape_exp(const Params: PParamArray; const Result: Pointer); -begin - Pextended(Result)^ := ps_exp(Pextended(Params^[0])^); -end; - -procedure Lape_Max(const Params: PParamArray; const Result: Pointer); -begin - Pinteger(Result)^ := ps_Max(Pinteger(Params^[0])^, Pinteger(Params^[1])^); -end; - -procedure Lape_Min(const Params: PParamArray; const Result: Pointer); -begin - PInteger(Result)^ := ps_Min(PInteger(Params^[0])^, PInteger(Params^[1])^); -end; - -procedure Lape_MinE(const Params: PParamArray; const Result: Pointer); -begin - Pextended(Result)^ := ps_MinE(Pextended(Params^[0])^, Pextended(Params^[1])^); -end; - -procedure Lape_MaxE(const Params: PParamArray; const Result: Pointer); -begin - Pextended(Result)^ := ps_MaxE(Pextended(Params^[0])^, Pextended(Params^[1])^); -end; - -procedure Lape_Sqr(const Params: PParamArray; const Result: Pointer); -begin - Pextended(Result)^ := ps_Sqr(Pextended(Params^[0])^); -end; - -procedure Lape_Point(const Params: PParamArray; const Result: Pointer); -begin - PPoint(Result)^ := ps_Point(Pinteger(Params^[0])^, Pinteger(Params^[1])^); -end; - -procedure Lape_Distance(const Params: PParamArray; const Result: Pointer); -begin - Pinteger(Result)^ := ps_Distance(Pinteger(Params^[0])^, Pinteger(Params^[1])^, Pinteger(Params^[2])^, Pinteger(Params^[3])^); -end; - -procedure Lape_Hypot(const Params: PParamArray; const Result: Pointer); -begin - PExtended(Result)^ := ps_Hypot(PExtended(Params^[0])^, PExtended(Params^[1])^); -end; - -procedure Lape_RandomRange(const Params: PParamArray; const Result: Pointer); -begin - PInteger(Result)^ := ps_RandomRange(PInteger(Params^[0])^, PInteger(Params^[1])^); -end; - -procedure Lape_Random(const Params: PParamArray; const Result: Pointer); -begin - Pinteger(Result)^ := ps_Random(Pinteger(Params^[0])^); -end; - -procedure Lape_RandomE(const Params: PParamArray; const Result: Pointer); -begin - Pextended(Result)^ := ps_RandomE(); -end; - -procedure Lape_ArcTan2(const Params: PParamArray; const Result: Pointer); -begin - Pextended(Result)^ := ps_ArcTan2(Pextended(Params^[0])^, Pextended(Params^[1])^); -end; - -procedure Lape_IncEx(const Params: PParamArray); -begin - ps_IncEx(Pinteger(Params^[0])^, Pinteger(Params^[1])^); -end; - -procedure Lape_DecEx(const Params: PParamArray); -begin - ps_DecEx(Pinteger(Params^[0])^, Pinteger(Params^[1])^); -end; - -procedure Lape_Factorial(const Params: PParamArray; const Result: Pointer); -begin - PInt64(Result)^ := ps_Factorial(Plongword(Params^[0])^); -end; diff --git a/Units/MMLAddon/LPInc/Wrappers/ocr.inc b/Units/MMLAddon/LPInc/Wrappers/ocr.inc deleted file mode 100644 index c1bf07e..0000000 --- a/Units/MMLAddon/LPInc/Wrappers/ocr.inc +++ /dev/null @@ -1,19 +0,0 @@ -procedure Lape_rs_GetUpText(const Params: PParamArray; const Result: Pointer); -begin - PString(Result)^ := ps_rs_GetUpText(); -end; - -procedure Lape_rs_GetUpTextAtEx(const Params: PParamArray; const Result: Pointer); -begin - Pstring(Result)^ := ps_rs_GetUpTextAtEx(Pinteger(Params^[0])^, Pinteger(Params^[1])^, Pboolean(Params^[2])^); -end; - -procedure Lape_rs_GetUpTextAt(const Params: PParamArray; const Result: Pointer); -begin - Pstring(Result)^ := ps_rs_GetUpTextAt(Pinteger(Params^[0])^, Pinteger(Params^[1])^); -end; - -procedure Lape_BitmapFromText(const Params: PParamArray; const Result: Pointer); -begin - Pinteger(Result)^ := ps_BitmapFromText(PString(Params^[0])^, PString(Params^[1])^); -end; diff --git a/Units/MMLAddon/LPInc/Wrappers/other.inc b/Units/MMLAddon/LPInc/Wrappers/other.inc deleted file mode 100644 index 4a7969c..0000000 --- a/Units/MMLAddon/LPInc/Wrappers/other.inc +++ /dev/null @@ -1,19 +0,0 @@ -procedure Lape_Writeln(const Params: PParamArray); -begin - ps_Writeln(Pstring(Params^[0])^); -end; - -procedure Lape_SetScriptProp(const Params: PParamArray; const Result: Pointer); -begin - Pboolean(Result)^ := ps_SetScriptProp(PSP_Property(Params^[0])^, PVariantArray(Params^[1])^); -end; - -procedure Lape_GetScriptProp(const Params: PParamArray; const Result: Pointer); -begin - Pboolean(Result)^ := ps_GetScriptProp(PSP_Property(Params^[0])^, PVariantArray(Params^[1])^); -end; - -procedure Lape_Wait(const Params: PParamArray); -begin - ps_Wait(PDWord(Params^[0])^); -end; diff --git a/Units/MMLAddon/LPInc/lpexportedmethods.inc b/Units/MMLAddon/LPInc/lpexportedmethods.inc index 5090e96..e9641c6 100644 --- a/Units/MMLAddon/LPInc/lpexportedmethods.inc +++ b/Units/MMLAddon/LPInc/lpexportedmethods.inc @@ -95,7 +95,6 @@ AddGlobalFunc('function ConvoluteBitmap(bitmap: integer; matrix: T2DExtendedArra AddGlobalFunc('function CalculatePixelShift(Bmp1,Bmp2: Integer; CompareBox: TBox): integer', @Lape_CalculatePixelShift); AddGlobalFunc('function CalculatePixelTolerance(Bmp1,Bmp2: Integer; CompareBox: TBox; CTS: integer): extended', @Lape_CalculatePixelTolerance); - { Math } AddGlobalFunc('function round(e: extended): integer', @Lape_round); @@ -121,6 +120,43 @@ AddGlobalFunc('function ArcTan2(y,x: extended): extended', @Lape_ArcTan2); AddGlobalFunc('procedure IncEx(var x: integer; increase: integer);', @Lape_IncEx); AddGlobalFunc('procedure DecEx(var x: integer; Decrease: integer);', @Lape_DecEx); AddGlobalFunc('function Factorial(number: longword): Int64', @Lape_Factorial); +AddGlobalFunc('function BinCoe(a, b: LongInt): Extended', @Lape_BinCoe); +AddGlobalFunc('function FixD(Degrees: extended): Extended', @Lape_FixD); +AddGlobalFunc('function InRange(const value,min,max: integer): boolean', @Lape_InRange); +AddGlobalFunc('function IntToBox(x1,y1,x2,y2: integer): TBox', @Lape_IntToBox); +AddGlobalFunc('function IntInBox(x, y: Integer; Box: TBox): Boolean', @Lape_IntInBox); +AddGlobalFunc('function PointToBox(PT1,PT2: TPoint): TBox', @Lape_PointToBox); +AddGlobalFunc('function PointInBox(PT: TPoint; Box: TBox): Boolean', @Lape_PointInBox); +AddGlobalFunc('function floor(e: extended): integer', @Lape_floor); +AddGlobalFunc('function logn(base, x: extended): extended', @Lape_logn); +AddGlobalFunc('function ln(x: extended): extended', @Lape_ln); +AddGlobalFunc('function inttohex(value: integer): string', @Lape_inttohex); +AddGlobalFunc('function hextoint(hex: string): integer', @Lape_hextoint); +AddGlobalFunc('function sar(AValue: longint; shift: byte): longint', @Lape_sar); +AddGlobalFunc('function ror(num: longword; shift: byte): LongWord', @Lape_ror); +AddGlobalFunc('function rol(num: longword; shift: byte): LongWord', @Lape_rol); +AddGlobalFunc('function tan(e: extended): extended', @Lape_tan); +AddGlobalFunc('function radians(e: extended): extended', @Lape_radians); +AddGlobalFunc('function degrees(e: extended): extended', @Lape_degrees); +AddGlobalFunc('function ArcSin(e: extended): extended', @Lape_ArcSin); +AddGlobalFunc('function ArcCos(e: extended): extended', @Lape_ArcCos); +AddGlobalFunc('function ArcTan(e: extended): extended', @Lape_ArcTan); +AddGlobalFunc('function Cotan(e: extended): extended', @Lape_Cotan); +AddGlobalFunc('function Secant(e: extended): extended', @Lape_Secant); +AddGlobalFunc('function Cosecant(e: extended): extended', @Lape_Cosecant); +AddGlobalFunc('function Cot(e: extended): extended', @Lape_Cot); +AddGlobalFunc('function Sec(e: extended): extended', @Lape_Sec); +AddGlobalFunc('function Csc(e: extended): extended', @Lape_Csc); +AddGlobalFunc('function Cosh(e: extended): extended', @Lape_Cosh); +AddGlobalFunc('function Sinh(e: extended): extended', @Lape_Sinh); +AddGlobalFunc('function Tanh(e: extended): extended', @Lape_Tanh); +AddGlobalFunc('function CotH(e: extended): extended', @Lape_CotH); +AddGlobalFunc('function SecH(e: extended): extended', @Lape_SecH); +AddGlobalFunc('function CscH(e: extended): extended', @Lape_CscH); +AddGlobalFunc('function ArcCosh(e: extended): extended', @Lape_ArcCosh); +AddGlobalFunc('function ArcSinh(e: extended): extended', @Lape_ArcSinh); +AddGlobalFunc('function DecRet(e: Extended): Extended', @Lape_DecRet); +AddGlobalFunc('function log10(f: Extended): Extended', @Lape_log10); { Color } @@ -149,46 +185,28 @@ AddGlobalFunc('function FindColoredAreaTolerance(var x, y: Integer; Color, xs, y { Color Conversions } AddGlobalFunc('procedure ColorToRGB(Color: integer; var r, g, b: Integer);', @Lape_ColorToRGB); -//ps_RGBToColor -//ps_ColorToHSL -//ps_HSLToColor -//ps_ColorToXYZ -//ps_XYZToColor -//ps_RGBToHSL -//ps_HSLToRGB -//ps_RGBToXYZ -//ps_XYZToRGB - +AddGlobalFunc('function RGBtoColor(r, g, b: Integer): TColor', @Lape_RGBtoColor); +AddGlobalFunc('procedure ColorToHSL(Color: Integer; var h, s, l: Extended);', @Lape_ColorToHSL); +AddGlobalFunc('function HSLToColor(H, S, L: Extended): TColor', @Lape_HSLToColor); +AddGlobalFunc('procedure ColorToXYZ(Color: Integer; var x, y, z: Extended);', @Lape_ColorToXYZ); +AddGlobalFunc('function XYZToColor(X, Y, Z: Extended): TColor', @Lape_XYZToColor); +AddGlobalFunc('procedure RGBToHSL(R, G, B: Integer; var h, s, l: Extended);', @Lape_RGBToHSL); +AddGlobalFunc('procedure HSLtoRGB(H, S, L: extended; var R, G,B: Integer);', @Lape_HSLtoRGB); +AddGlobalFunc('procedure RGBToXYZ(R, G, B: Integer; var x, y,z: Extended);', @Lape_RGBToXYZ); +AddGlobalFunc('procedure XYZToRGB(X, Y, Z: Extended; var R, G, B: Integer);', @Lape_XYZToRGB); { Crypto } + AddGlobalFunc('function haval(Data: string): string', @Lape_haval); - -//ps_md4 -//ps_md5 -//ps_ripemd128 -//ps_ripemd160 -//ps_sha1 -//ps_sha256 -//ps_sha384 -//ps_sha512 -//ps_tiger - -(* File isn't included! -AddGlobalFunc('function ext_UnTar(const Input: string; var Content: TStringArray): boolean', @Lape_ext_UnTar); -AddGlobalFunc('function ext_UnTarEx(const Input: string; const outputdir: string; overwrite: boolean): boolean', @Lape_ext_UnTarEx); -AddGlobalFunc('function ext_DecompressBZip2(const input: string; var output: string; const BlockSize: Cardinal): boolean', @Lape_ext_DecompressBZip2); -AddGlobalFunc('function ext_GetPage(const url: string): string', @Lape_ext_GetPage); -//AddGlobalFunc('function ext_MessageDlg(const aCaption, aMsg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons; HelpCtx: Longint): Integer', @Lape_ext_MessageDlg); -//AddGlobalFunc('function ext_SDTMToMDTM(Const DTM: TSDTM): TMDTM', @Lape_ext_SDTMToMDTM); -AddGlobalFunc('function ext_InputQuery(const ACaption, APrompt: String; var Value: String): Boolean', @Lape_ext_InputQuery); -AddGlobalFunc('function ext_ScriptText: string', @Lape_ext_ScriptText); -AddGlobalFunc('function ext_GetSelectedText: string', @Lape_ext_GetSelectedText); -AddGlobalFunc('procedure ext_OpenScript(vName, Data: string; Run: boolean);', @Lape_ext_OpenScript); -AddGlobalFunc('procedure ext_OpenScriptEx(FileName: string; Run: boolean);', @Lape_ext_OpenScriptEx); -AddGlobalFunc('function ext_GetPageEx(const URL, PostData, MimeType: string): string', @Lape_ext_GetPageEx); -AddGlobalFunc('function ext_GetJSONValue(const Data, Value: string): string', @Lape_ext_GetJSONValue); -*) - +AddGlobalFunc('function md4(Data: string): string', @Lape_md4); +AddGlobalFunc('function md5(Data: string): string', @Lape_md5); +AddGlobalFunc('function ripemd128(Data: string): string', @Lape_ripemd128); +AddGlobalFunc('function ripemd160(Data: string): string', @Lape_ripemd160); +AddGlobalFunc('function sha1(Data: string): string', @Lape_sha1); +AddGlobalFunc('function sha256(Data: string): string', @Lape_sha256); +AddGlobalFunc('function sha384(Data: string): string', @Lape_sha384); +AddGlobalFunc('function sha512(Data: string): string', @Lape_sha512); +AddGlobalFunc('function tiger(Data: string): string', @Lape_tiger); { Files } @@ -210,8 +228,11 @@ AddGlobalFunc('function ForceDirectores(const dir: string): boolean', @Lape_Forc AddGlobalFunc('function GetFiles(const Path, Ext: string): TStringArray', @Lape_GetFiles); AddGlobalFunc('function GetDirectories(const path: string): TStringArray', @Lape_GetDirectories); AddGlobalFunc('procedure WriteINI(const Section, KeyName, NewString, FileName: string);', @Lape_WriteINI); +AddGlobalFunc('function ReadINI(const Section, KeyName, FileName: string): string', @Lape_ReadINI); +AddGlobalFunc('procedure DeleteINI(const Section, KeyName, FileName: string);', @Lape_DeleteINI); { Web } + AddGlobalFunc('procedure OpenWebPage(const url: string);', @Lape_OpenWebPage); AddGlobalFunc('function GetPage(const S: String): String', @Lape_GetPage); AddGlobalFunc('function InitializeHTTPClient(HandleCookies: Boolean): Integer', @Lape_InitializeHTTPClient); @@ -226,6 +247,7 @@ AddGlobalFunc('function GetRawHeaders(Client: Integer): string', @Lape_GetRawHea AddGlobalFunc('procedure SetProxy(Client: Integer; pHost, pPort: String);', @Lape_SetProxy); { Socket } + AddGlobalFunc('function RecvSocketStr(Client: integer): string', @Lape_RecvSocketStr); AddGlobalFunc('function RecvSocket(Client: integer): string', @Lape_RecvSocket); AddGlobalFunc('function RecvSocketEx(Client, Length: integer): string', @Lape_RecvSocketEx); @@ -252,6 +274,7 @@ AddGlobalFunc('procedure ClickMouse(x, y: integer; clickType: integer);', @Lape_ AddGlobalFunc('function IsMouseButtonDown(button: integer): boolean', @Lape_IsMouseButtonDown); { Keyboard } + AddGlobalFunc('procedure KeyDown(key: Word);', @Lape_KeyDown); AddGlobalFunc('procedure KeyUp(key: Word);', @Lape_KeyUp); AddGlobalFunc('procedure SendKeys(const s: string);', @Lape_SendKeys); @@ -265,14 +288,15 @@ AddGlobalFunc('function rs_GetUpText: String', @Lape_rs_GetUpText); AddGlobalFunc('function rs_GetUpTextAtEx(x, y: integer; shadow: boolean): string', @Lape_rs_GetUpTextAtEx); AddGlobalFunc('function rs_GetUpTextAt(x, y: integer): string', @Lape_rs_GetUpTextAt); AddGlobalFunc('function BitmapFromText(const text, font: String): integer', @Lape_BitmapFromText); -// ps_TPAFromText? -// ps_MaskFromText? -// ps_GetTextAt -// ps_GetTextAtEx -// ps_GetTextATPA -// ps_LoadSystemFont -// ps_LoadFont -// ps_FreeFont +AddGlobalFunc('function MaskFromText(const text, font: String): TMask', @Lape_MaskFromText); +AddGlobalFunc('procedure TPAFromTextWrap(const text, font: String; var w,h: integer; out TPA: TPointArray);', @Lape_TPAFromTextWrap); +AddGlobalFunc('function TPAFromText(const text, font: String; var w,h: integer): TPointArray', @Lape_TPAFromText); +AddGlobalFunc('function GetTextATPA(const ATPA: T2DPointArray; const maxvspacing: integer; const font: string): string', @Lape_GetTextATPA); +AddGlobalFunc('function GetTextAt(const atX, atY, minvspacing, maxvspacing, hspacing, color, tol, len: integer; const font: string): string', @Lape_GetTextAt); +AddGlobalFunc('function GetTextAtEx(const xs,ys,xe,ye, minvspacing, maxvspacing, hspacing, color, tol: integer; const font: string): string', @Lape_GetTextAtEx); +//AddGlobalFunc('function LoadSystemFont(const SysFont: TFont; const FontName: string): boolean', @Lape_LoadSystemFont); +AddGlobalFunc('function LoadFont(const FontName: string; shadow: boolean): boolean', @Lape_LoadFont); +AddGlobalFunc('function FreeFont(const FontName: string): boolean', @Lape_FreeFont); { Other } @@ -281,7 +305,42 @@ AddGlobalFunc('function SetScriptProp(prop: TSP_Property; Value: TVariantArray): AddGlobalFunc('function GetScriptProp(prop: TSP_Property; var Value: TVariantArray): boolean', @Lape_GetScriptProp); AddGlobalFunc('procedure Wait(t: DWord);', @Lape_Wait); +AddGlobalFunc('procedure PlaySound(Sound: string);', @Lape_PlaySound); +AddGlobalFunc('Procedure StopSound;', @Lape_StopSound); +AddGlobalFunc('procedure ClearDebug;', @Lape_ClearDebug); +AddGlobalFunc('procedure SetSupressExceptions(Supress: boolean);', @Lape_SetSupressExceptions); +AddGlobalFunc('procedure SaveScreenshot(FileName: string);', @Lape_SaveScreenshot); +AddGlobalFunc('procedure DisplayDebugImgWindow(w,h: integer);', @Lape_DisplayDebugImgWindow); +AddGlobalFunc('procedure DrawBitmapDebugImg(bmp: integer);', @Lape_DrawBitmapDebugImg); +AddGlobalFunc('function GetDebugBitmap: integer', @Lape_GetDebugBitmap); +AddGlobalFunc('procedure ClearDebugImg;', @Lape_ClearDebugImg); +AddGlobalFunc('procedure Status(Status: string);', @Lape_Status); +AddGlobalFunc('procedure Disguise(Caption: string);', @Lape_Disguise); +AddGlobalFunc('procedure ShowMessage(msg: string);', @Lape_ShowMessage); +AddGlobalFunc('function MessageBox(Text, Caption: string; Flags: LongInt): Integer', @Lape_MessageBox); +//AddGlobalFunc('function MessageDlg(const Caption, Msg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons): integer', @Lape_MessageDlg); + + +AddGlobalFunc('function InputQuery(const ACaption, APrompt: String; var Value: String): Boolean', @Lape_InputQuery); +AddGlobalFunc('procedure TerminateScript;', @Lape_TerminateScript); +AddGlobalFunc('function GetTimeRunning: LongWord', @Lape_GetTimeRunning); +//AddGlobalFunc('function GetTClient: TClient', @Lape_GetTClient); +AddGlobalFunc('procedure ConvertTime(Time: integer; var h,m,s: integer);', @Lape_ConvertTime); +AddGlobalFunc('procedure DecodeDate(const SourceDate: TDateTime; var Year, Month, Day: Word);', @Lape_DecodeDate); +AddGlobalFunc('procedure DecodeTime(DateTime: TDateTime; var Hour,Min,Sec,MSec: word);', @Lape_DecodeTime); +AddGlobalFunc('function Now: TDateTime', @Lape_Now); +AddGlobalFunc('function Date: TDateTime', @Lape_Date); +AddGlobalFunc('function GetTickCount: Longword', @Lape_GetTickCount); +AddGlobalFunc('procedure HakunaMatata;', @Lape_HakunaMatata); +AddGlobalFunc('procedure Simba;', @Lape_Simba); +AddGlobalFunc('procedure SetClipBoard(const Data: string);', @Lape_SetClipBoard); +AddGlobalFunc('function GetClipBoard: string', @Lape_GetClipBoard); +//AddGlobalFunc('function GetProcesses: TSysProcArr', @Lape_GetProcesses); +//AddGlobalFunc('procedure SetTarget(Proc: TSysProc);', @Lape_SetTarget); +AddGlobalFunc('function ExtractFileExt(const FileName: string): string', @Lape_ExtractFileExt); + { Settings } + AddGlobalFunc('function SetSettingValue(const KeyName,value: string): boolean', @Lape_SetSettingValue); AddGlobalFunc('function KeyIsSetting(const KeyName: String): Boolean', @Lape_KeyIsSetting); AddGlobalFunc('function KeyIsDirectory(const KeyName: String): Boolean', @Lape_KeyIsDirectory); @@ -292,6 +351,7 @@ AddGlobalFunc('function DeleteSetting(const KeyName: String): Boolean', @Lape_De AddGlobalFunc('function DeleteSubSettings(const KeyName: String): Boolean', @Lape_DeleteSubSettings); { String } + AddGlobalFunc('function Capitalize(str: string): string', @Lape_Capitalize); AddGlobalFunc('function CompressString(const Str: string): string', @Lape_CompressString); AddGlobalFunc('function DecompressString(const Compressed: string): string', @Lape_DecompressString); @@ -309,8 +369,19 @@ AddGlobalFunc('function StrToFloatDef(value: String; default: Extended): Extende AddGlobalFunc('function StrToBool(value: String): Boolean', @Lape_StrToBool); AddGlobalFunc('function StrToBoolDef(value: String; default: Boolean): Boolean', @Lape_StrToBoolDef); AddGlobalFunc('function Between(s1, s2, str: string): string', @Lape_Between); +AddGlobalFunc('function Implode(Glue: string; Pieces: TStringArray): string', @Lape_Implode); +AddGlobalFunc('function Explode(del, str: string): TStringArray', @Lape_Explode); +AddGlobalFunc('procedure ExplodeWrap(del, str: string; var res: TStringArray);', @Lape_ExplodeWrap); +AddGlobalFunc('function Padl(s: String; i: longInt): String', @Lape_Padl); +AddGlobalFunc('function Padz(s: String; i: longInt): String', @Lape_Padz); +AddGlobalFunc('function Padr(s: String; i: longInt): String', @Lape_Padr); +AddGlobalFunc('function ExecRegExpr(const RegExpr, InputStr: String): boolean', @Lape_ExecRegExpr); +//AddGlobalFunc('procedure SplitRegExpr(const RegExpr, InputStr: String; Pieces: TStrings);', @Lape_SplitRegExpr); +AddGlobalFunc('function ReplaceRegExpr(const RegExpr, InputStr, ReplaceStr: String; UseSubstitution: boolean): String', @Lape_ReplaceRegExpr); +AddGlobalFunc('function posex(needle, haystack: String; offset: integer): integer', @Lape_posex); { TPA } + AddGlobalFunc('procedure Quicksort(var Arr: TIntegerArray);', @Lape_Quicksort); AddGlobalFunc('procedure tSwap(var a, b: TPoint);', @Lape_tSwap); AddGlobalFunc('procedure tpaSwap(var a, b: TPointArray);', @Lape_tpaSwap); @@ -416,3 +487,19 @@ AddGlobalFunc('function Freeze: boolean', @Lape_Freeze); AddGlobalFunc('function Unfreeze: boolean', @Lape_Unfreeze); AddGlobalFunc('procedure ActivateClient;', @Lape_ActivateClient); AddGlobalFunc('function IsTargetValid: boolean', @Lape_IsTargetValid); + + +{ Extensions } +//AddGlobalFunc('function ext_UnTar(const Input: string; var Content: TStringArray): boolean', @Lape_ext_UnTar); +//AddGlobalFunc('function ext_UnTarEx(const Input: string; const outputdir: string; overwrite: boolean): boolean', @Lape_ext_UnTarEx); +//AddGlobalFunc('function ext_DecompressBZip2(const input: string; var output: string; const BlockSize: Cardinal): boolean', @Lape_ext_DecompressBZip2); +//AddGlobalFunc('function ext_GetPage(const url: string): string', @Lape_ext_GetPage); +////AddGlobalFunc('function ext_MessageDlg(const aCaption, aMsg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons; HelpCtx: Longint): Integer', @Lape_ext_MessageDlg); +////AddGlobalFunc('function ext_SDTMToMDTM(Const DTM: TSDTM): TMDTM', @Lape_ext_SDTMToMDTM); +//AddGlobalFunc('function ext_InputQuery(const ACaption, APrompt: String; var Value: String): Boolean', @Lape_ext_InputQuery); +//AddGlobalFunc('function ext_ScriptText: string', @Lape_ext_ScriptText); +//AddGlobalFunc('function ext_GetSelectedText: string', @Lape_ext_GetSelectedText); +//AddGlobalFunc('procedure ext_OpenScript(vName, Data: string; Run: boolean);', @Lape_ext_OpenScript); +//AddGlobalFunc('procedure ext_OpenScriptEx(FileName: string; Run: boolean);', @Lape_ext_OpenScriptEx); +//AddGlobalFunc('function ext_GetPageEx(const URL, PostData, MimeType: string): string', @Lape_ext_GetPageEx); +//AddGlobalFunc('function ext_GetJSONValue(const Data, Value: string): string', @Lape_ext_GetJSONValue); diff --git a/Units/MMLAddon/mmlpsthread.pas b/Units/MMLAddon/mmlpsthread.pas index 9d43942..af0acdb 100644 --- a/Units/MMLAddon/mmlpsthread.pas +++ b/Units/MMLAddon/mmlpsthread.pas @@ -1281,23 +1281,23 @@ type end; -{$I LPInc/Wrappers/other.inc} -{$I LPInc/Wrappers/settings.inc} -{$I LPInc/Wrappers/bitmap.inc} -{$I LPInc/Wrappers/window.inc} -{$I LPInc/Wrappers/tpa.inc} -{$I LPInc/Wrappers/strings.inc} -{$I LPInc/Wrappers/colour.inc} -{$I LPInc/Wrappers/colourconv.inc} -{$I LPInc/Wrappers/crypto.inc} -{$I LPInc/Wrappers/math.inc} -{$I LPInc/Wrappers/mouse.inc} -{$I LPInc/Wrappers/file.inc} -{$I LPInc/Wrappers/keyboard.inc} -{$I LPInc/Wrappers/dtm.inc} +{$I LPInc/Wrappers/lp_other.inc} +{$I LPInc/Wrappers/lp_settings.inc} +{$I LPInc/Wrappers/lp_bitmap.inc} +{$I LPInc/Wrappers/lp_window.inc} +{$I LPInc/Wrappers/lp_tpa.inc} +{$I LPInc/Wrappers/lp_strings.inc} +{$I LPInc/Wrappers/lp_colour.inc} +{$I LPInc/Wrappers/lp_colourconv.inc} +{$I LPInc/Wrappers/lp_crypto.inc} +{$I LPInc/Wrappers/lp_math.inc} +{$I LPInc/Wrappers/lp_mouse.inc} +{$I LPInc/Wrappers/lp_file.inc} +{$I LPInc/Wrappers/lp_keyboard.inc} +{$I LPInc/Wrappers/lp_dtm.inc} {.$I LPInc/Wrappers/extensions.inc} //Doesn't work for me! -{$I LPInc/Wrappers/ocr.inc} -{$I LPInc/Wrappers/internets.inc} +{$I LPInc/Wrappers/lp_ocr.inc} +{$I LPInc/Wrappers/lp_internets.inc} constructor TLPThread.Create(CreateSuspended: Boolean; TheSyncInfo: PSyncInfo; plugin_dir: string); var