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 -- _______________________________________________ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus