On 01/05/12 14:56, Juha Manninen wrote:
On Mon, Apr 30, 2012 at 11:15 PM, Frank Church <vfcli...@gmail.com
<mailto:vfcli...@gmail.com>> wrote:
In 0.9.30 it is defined in lclintf.h as
function Frame3d(DC: HDC; var ARect: TRect; const FrameWidth :
integer; const Style : TGraphicsBevelCut): Boolean; {$IFDEF
IF_BASE_MEMBER}virtual;{$ENDIF} and is also in the Graphics unit
as procedure Frame3d(var ARect: TRect; const FrameWidth:
integer; const Style: TGraphicsBevelCut); virtual;
The control I am working with, TJanPanelButton uses the signature
in lclintfh.inc calling it as Frame3d( Self.Canvas.Handle, R,
FFrameWidth, bvRaised );
Juha Mahinnen added a patch to Extctrls to match the Delphi
implementation here -
http://docwiki.embarcadero.com/Libraries/en/Vcl.ExtCtrls.Frame3D.
Although it matches the Delphi definition is it in the wrong place
as it affects the apparently original Lazarus implementation?
In the mean time I have to ifdef it and call
Self.Canvas.Frame3D(R, FFrameWidth, bvRaised ) instead of Frame3d(
Self.Canvas.Handle, R, FFrameWidth, bvRaised ) which matches the
definition of TCanvas in Graphics. Is that any good?
I am not sure if I understand the problem. Is there an ambiguity
between this :
Frame3d( Self.Canvas.Handle, R, FFrameWidth, bvRaised );
and this :
Self.Canvas.Frame3D(R, FFrameWidth, bvRaised );
I think he wants to use
LCLIntf.Frame3d(DC: HDC; var ARect: TRect; const FrameWidth : integer;
const Style : TGraphicsBevelCut): Boolean
In that case, he must add LCLIntf to his uses clause.
Stephano
--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus