+XE2 x32
git-svn-id: https://svn.code.sf.net/p/kolmck/code@110 91bb2d04-0c0c-4d2d-88a5-bbb6f4c1fa07
This commit is contained in:
parent
65c5217ec4
commit
8255c47a3d
@ -517,6 +517,7 @@ end;
|
||||
function ExceptionErrorMessage(ExceptObject: TObject; ExceptAddr: Pointer;
|
||||
Buffer: PKOLChar; Size: Integer): Integer;
|
||||
var
|
||||
ex: Exception;
|
||||
MsgPtr: PKOLChar;
|
||||
//MsgEnd: PChar;
|
||||
//MsgLen: Integer;
|
||||
@ -543,7 +544,8 @@ begin
|
||||
//MsgEnd := '';
|
||||
if ExceptObject is Exception then
|
||||
begin
|
||||
MsgPtr := PKOLChar(Exception(ExceptObject).Message);
|
||||
ex := Exception(ExceptObject);
|
||||
MsgPtr := PKOLChar(ex.Message);
|
||||
//MsgLen := StrLen(MsgPtr);
|
||||
//if (MsgLen <> 0) and (MsgPtr[MsgLen - 1] <> '.') then MsgEnd := '.';
|
||||
{-} // Isn't it too beautiful - devote ~40 bytes of code just to decide,
|
||||
|
22
KOL.pas
22
KOL.pas
@ -14,7 +14,7 @@
|
||||
Key Objects Library (C) 2000 by Vladimir Kladov.
|
||||
|
||||
****************************************************************
|
||||
* VERSION 3.15
|
||||
* VERSION 3.16
|
||||
****************************************************************
|
||||
|
||||
K.O.L. - is a set of objects and functions to create small programs
|
||||
@ -715,7 +715,7 @@ type
|
||||
{* }
|
||||
|
||||
PPointerList = ^TPointerList;
|
||||
TPointerList = array[0..MaxInt div 4 - 1] of Pointer;
|
||||
TPointerList = array[0..MaxInt div SizeOf(Pointer) - 1] of Pointer;
|
||||
|
||||
TObjectMethod = procedure of object;
|
||||
{* }
|
||||
@ -15932,13 +15932,14 @@ end;
|
||||
|
||||
function TObj.VmtAddr: Pointer;
|
||||
asm
|
||||
MOV EAX, [EAX - 4]
|
||||
//MOV EAX, [EAX - 4]
|
||||
MOV EAX, [EAX]
|
||||
end;
|
||||
|
||||
function TObj.InstanceSize: Integer;
|
||||
asm
|
||||
MOV EAX, [EAX]
|
||||
MOV EAX,[EAX-4]
|
||||
//MOV EAX, [EAX]
|
||||
MOV EAX, [EAX-4]
|
||||
end;
|
||||
|
||||
{$IFDEF OLD_FREE}
|
||||
@ -25420,7 +25421,7 @@ function Time2StrFmt( const Fmt: KOLString; D: TDateTime ): KOLString;
|
||||
var ST: TSystemTime;
|
||||
lpFmt: PKOLChar;
|
||||
begin
|
||||
if D < 1 then D := D + 1;
|
||||
if D < 1 then D := D + 700000;
|
||||
DateTime2SystemTime( D, ST );
|
||||
lpFmt := nil;
|
||||
if Fmt <> '' then lpFmt := PKOLChar( Fmt );
|
||||
@ -34281,8 +34282,8 @@ asm
|
||||
MOV ECX, [EDX].TEvents.fOnResize.TMethod.Code
|
||||
MOV EAX, [EDX].TEvents.fOnResize.TMethod.Data
|
||||
{$ELSE}
|
||||
MOV ECX, [EDX].TControl.fOnResize.TMethod.Code
|
||||
MOV EAX, [EDX].TControl.fOnResize.TMethod.Data
|
||||
MOV ECX, [EDX].TControl.EV.fOnResize.TMethod.Code
|
||||
MOV EAX, [EDX].TControl.EV.fOnResize.TMethod.Data
|
||||
{$ENDIF}
|
||||
{$IFDEF NIL_EVENTS}
|
||||
JECXZ @@ret_true1
|
||||
@ -34448,7 +34449,7 @@ asm
|
||||
MOV EAX, [EDX].TControl.EV
|
||||
MOV ECX, [EAX].TEvents.fOnDropDown.TMethod.Code
|
||||
{$ELSE}
|
||||
MOV ECX, [EDX].TControl.fOnDropDown.TMethod.Code
|
||||
MOV ECX, [EDX].TControl.EV.fOnDropDown.TMethod.Code
|
||||
{$ENDIF}
|
||||
{$IFDEF NIL_EVENTS}
|
||||
JECXZ @@ret_z
|
||||
@ -34456,7 +34457,7 @@ asm
|
||||
{$IFDEF EVENTS_DYNAMIC}
|
||||
MOV EAX, [EAX].TEvents.fOnDropDown.TMethod.Data
|
||||
{$ELSE}
|
||||
MOV EAX, [EDX].TControl.fOnDropDown.TMethod.Data
|
||||
MOV EAX, [EDX].TControl.EV.fOnDropDown.TMethod.Data
|
||||
{$ENDIF}
|
||||
CALL ECX
|
||||
@@ret_z:
|
||||
@ -57909,6 +57910,7 @@ begin
|
||||
Sender.EV.FOnHide( Sender );
|
||||
end;
|
||||
end;
|
||||
Sender.UpdateWndStyles;
|
||||
Result := FALSE;
|
||||
end;
|
||||
|
||||
|
26
KOLDEF.inc
26
KOLDEF.inc
@ -163,8 +163,30 @@ Delphi version 8 not supported! (delphi 8 is .net only)
|
||||
{$DEFINE _D2010orHigher}
|
||||
{$DEFINE _DXE}
|
||||
{$DEFINE _DXEorHigher}
|
||||
{$DEFINE _DXEorHigher}
|
||||
{$WARN UNIT_DEPRECATED OFF}
|
||||
{$WARN UNIT_DEPRECATED OFF}
|
||||
{$WARN SYMBOL_PLATFORM OFF}
|
||||
{$WARN UNSAFE_TYPE OFF}
|
||||
{$WARN UNSAFE_CAST OFF}
|
||||
{$WARN UNSAFE_CODE OFF}
|
||||
{$ENDIF}
|
||||
|
||||
{$IFDEF VER230} // Delphi XE2
|
||||
{$DEFINE _D3orHigher}
|
||||
{$DEFINE _D4orHigher}
|
||||
{$DEFINE _D5orHigher}
|
||||
{$DEFINE _D6orHigher}
|
||||
{$DEFINE _D7orHigher}
|
||||
{$DEFINE _D2005orHigher}
|
||||
{$DEFINE _D2006orHigher}
|
||||
{$DEFINE _D2007orHigher}
|
||||
{$DEFINE _D2009orHigher}
|
||||
{$DEFINE _D2010orHigher}
|
||||
{$DEFINE _DXE}
|
||||
{$DEFINE _DXEorHigher}
|
||||
{$DEFINE _DXE2}
|
||||
{$DEFINE _DXE2orHigher}
|
||||
{$DEFINE PAS_VERSION}
|
||||
{$WARN UNIT_DEPRECATED OFF}
|
||||
{$WARN SYMBOL_PLATFORM OFF}
|
||||
{$WARN UNSAFE_TYPE OFF}
|
||||
{$WARN UNSAFE_CAST OFF}
|
||||
|
55
KOLMCK_DXE2.dpk
Normal file
55
KOLMCK_DXE2.dpk
Normal file
@ -0,0 +1,55 @@
|
||||
package KOLMCK_DXE2;
|
||||
|
||||
{$R 'KOLMCK.res'}
|
||||
{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
|
||||
{$ALIGN 4}
|
||||
{$ASSERTIONS ON}
|
||||
{$BOOLEVAL OFF}
|
||||
{$DEBUGINFO ON}
|
||||
{$EXTENDEDSYNTAX ON}
|
||||
{$IMPORTEDDATA ON}
|
||||
{$IOCHECKS ON}
|
||||
{$LOCALSYMBOLS ON}
|
||||
{$LONGSTRINGS ON}
|
||||
{$OPENSTRINGS ON}
|
||||
{$OPTIMIZATION OFF}
|
||||
{$OVERFLOWCHECKS OFF}
|
||||
{$RANGECHECKS OFF}
|
||||
{$REFERENCEINFO ON}
|
||||
{$SAFEDIVIDE OFF}
|
||||
{$STACKFRAMES ON}
|
||||
{$TYPEDADDRESS OFF}
|
||||
{$VARSTRINGCHECKS ON}
|
||||
{$WRITEABLECONST OFF}
|
||||
{$MINENUMSIZE 1}
|
||||
{$IMAGEBASE $9400000}
|
||||
{$DEFINE DEBUG}
|
||||
{$DEFINE INPACKAGE}
|
||||
{$ENDIF IMPLICITBUILDING}
|
||||
{$DESCRIPTION 'KOLMCK XE2'}
|
||||
{$DESIGNONLY}
|
||||
{$IMPLICITBUILD OFF}
|
||||
|
||||
requires
|
||||
rtl,
|
||||
vcl,
|
||||
xmlrtl,
|
||||
vclactnband,
|
||||
vclx;
|
||||
|
||||
contains
|
||||
KOL in 'KOL.pas',
|
||||
KOLadd in 'KOLadd.pas',
|
||||
mirror in 'mirror.pas',
|
||||
mckObjs in 'mckObjs.pas',
|
||||
mckCtrls in 'mckCtrls.pas',
|
||||
mckCtrlDraw in 'mckCtrlDraw.pas',
|
||||
mckMenuEditor in 'mckMenuEditor.pas',
|
||||
mckToolbarEditor in 'mckToolbarEditor.pas',
|
||||
mckAccEditor in 'mckAccEditor.pas',
|
||||
mckActionListEditor in 'mckActionListEditor.pas',
|
||||
mckFileFilterEditor in 'mckFileFilterEditor.pas',
|
||||
mckLVColumnsEditor in 'mckLVColumnsEditor.pas',
|
||||
MCKAppExpert200x in 'MCKAppExpert200x.pas';
|
||||
|
||||
end.
|
@ -1,6 +1,6 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// KOL_ASM.inc (to inlude in KOL.pas)
|
||||
// v 3.141592653589
|
||||
// v 3.16
|
||||
|
||||
function MsgBox( const S: KOLString; Flags: DWORD ): DWORD;
|
||||
asm
|
||||
|
@ -2341,9 +2341,9 @@ asm
|
||||
POP ECX
|
||||
JC @@ret_false1
|
||||
CALL ESI
|
||||
XOR EAX, 1 //dufa
|
||||
XOR AL, 1 //+Dufa
|
||||
@@rsltEAX_ResultTrue:
|
||||
MOV [EDI], EAX
|
||||
MOV [EDI], AL //+VK
|
||||
@@ResultTrue:
|
||||
MOV AL, 1
|
||||
POP EDI
|
||||
@ -2360,7 +2360,7 @@ asm
|
||||
PUSH [EDX].TTVDispInfo.item.hItem
|
||||
CALL @@prepareCallEvent
|
||||
POP ECX
|
||||
//JNC @@justEventCall //dufa
|
||||
//JNC @@justEventCall ---//dufa
|
||||
JC @@ret_false1 //dufa
|
||||
CALL ESI //dufa
|
||||
JMP @@rsltEAX_ResultTrue //dufa
|
||||
|
@ -16,7 +16,7 @@ type
|
||||
0: (
|
||||
hwnd: HWND;
|
||||
message: UINT;
|
||||
wParam: WPARAM;
|
||||
wParam: {$IFDEF _DXE2}Integer{$ELSE}WPARAM{$ENDIF};
|
||||
lParam: LPARAM;
|
||||
time: DWORD;
|
||||
pt: TPoint;
|
||||
|
@ -3,7 +3,7 @@ KEY OBJECTS LIBRARY for Delphi (and Free Pascal Compiler) - to make applications
|
||||
Copyright (C) by Vladimir Kladov, 1999-2010.
|
||||
Some parts of code are Copyright (C) intellectual property by other people, see comments in code and on KOL site. Thanks to all for help with KOL and MCK!
|
||||
|
||||
v. 3.00 (3-Oct-2010)
|
||||
v. 3.16 (26-Nov-2011)
|
||||
|
||||
To get newer version, go to Web-page http://www.kolmck.net and get there updates.
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
KEY OBJECTS LIBRARY для Delphi (и Free Pascal Compiler) - предназначен для того, чтобы сделать программы, изготовленные с использованием языка Паскаль, маленькими и очень маленькими.
|
||||
Copyright (C) by Vladimir Kladov, 1999-2007. Бесплатно, с исходными текстами.
|
||||
|
||||
βεπρθ� 2.93 (3 θών� 2010 γ.)
|
||||
βεπρθ� 3.16 (26 νξ�απ� 2011 γ.)
|
||||
|
||||
_________________
|
||||
КРАТКОЕ ОПИСАНИЕ:
|
||||
|
Loading…
Reference in New Issue
Block a user