Ja, so funktioniert's tatsächlich. Die Funktionen Min() und Max() sind nämlich auch in der
Unit JclLogic deklariert. Die werden in JclGraphUtils allerdings so aufgerufen:
Delphi-Quellcode:
function RectIntersection(const R1, R2: TRect): TRect;
begin
with Result do
begin
Left := JclLogic.Max(R1.Left, R2.Left);
Top := JclLogic.Max(R1.Top, R2.Top);
Right := JclLogic.Min(R1.Right, R2.Right);
Bottom := JclLogic.Min(R1.Bottom, R2.Bottom);
end;
if not RectIsValid(Result) then
Result := NullRect;
end;
Die 'uses'- Klausel sieht so aus:
Delphi-Quellcode:
implementation
uses
{$IFDEF HAS_UNITSCOPE}
System.Classes,
Vcl.Consts, System.Math,
{$ELSE ~HAS_UNITSCOPE}
Classes, Math,
{$IFDEF FPC}
RTLConsts,
{$ELSE ~FPC}
Consts,
{$ENDIF ~FPC}
{$ENDIF ~HAS_UNITSCOPE}
{$IFDEF HAS_UNIT_SYSTEM_UITYPES}
System.UITypes,
{$ENDIF HAS_UNIT_SYSTEM_UITYPES}
JclVclResources, JclSysInfo, JclLogic;
Ich wüsste aber doch gerne, warum das unter D 12 nicht mehr funktioniert.
Gruß LP