[Lazarus] QT bindings as defalt (was Release 1.0, part 2)

zeljko zeljko at holobit.net
Tue Dec 1 08:27:03 CET 2009


On Monday 30 November 2009 18:17, Phil Hess wrote:
> I wish I knew! I really don't have time (or patience) to do more than test
> Orpheus against each widgetset for the stable release of Lazarus.
>
> A couple observations are in order:
>
> (1) Although once in a while I stumble across something in the Orpheus code
> that allows me to fix a problem (as in the expression "Even a blind sow
> occasionally finds an acorn"), in general improvements in Orpheus are due
> to improvements in the LCL and widgetsets. Or in some cases, as happened
> with 0.9.28, Orpheus gets worse over time through no fault of its own.

My fast observations & qt fixes from last night:
1.I've fixed crash in getRegionType function (qt) which happens when someone 
create region with negative width or height.

2.Orpheus spinner control (and maybe others) crashed under qt because of 
MyMisc.ptInRegion() implementation.

function PtInRegion(RGN: HRGN; X, Y: Integer) : Boolean;
{$IFDEF MSWINDOWS}
begin
  Result := Windows.PtInRegion(RGN, X, Y);
{$ELSE}
var
  ARect : TRect;
  APt   : TPoint;
begin
  GetRgnBox(RGN, @ARect);
  APt.X := X;
  APt.Y := Y;
  Result := LclIntf.PtInRect(ARect, APt);
{$ENDIF}
end;

 Why is it implemented in such way when we have
  Result := LCLIntf.ptInRegion(RGN, X, Y);
 which doesn't crash orpheus controls under qt even
 with buggy(was until last night) TQtRegion constructor.
Anyway, it does not crash anymore.



>
> (2) It's apparent that the LCL and widgetset maintainers never test their
> changes against the CCR packages. The attitude seems to be that package
> maintainers will test daily against SVN and notify of any breaks. Sorry,
> can't do that.

Yes, they do that, but orpheus isn't often used seem so.I'm using virtualtrees 
and it work w/o problems. From my observations (eg. ptInRegion() 
implementation), some things need to be changed in orpheus , not in 
widgetsets or LCL.

zeljko




More information about the Lazarus mailing list