[Lazarus] Return of Frame3D issue

Frank Church vfclists at gmail.com
Mon Apr 30 22:15:33 CEST 2012


In upgrading to Lazarus 1.1 and issue I first came across in this thread
has returned. I think I decided  not to use the controls in 0.9.31 but I
want to consider them again in Lazarus 1.1,
http://lists.lazarus.freepascal.org/pipermail/lazarus/2011-August/065582.html
.

There is also a mantis issue for it -
http://bugs.freepascal.org/view.php?id=8328.

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?
    ;


-- 
Frank Church

=======================
http://devblog.brahmancreations.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20120430/3344ece6/attachment-0002.html>


More information about the Lazarus mailing list