[Qt] qt tshapes arm

Terry Kemp klc at klc.net.nz
Wed Jun 18 03:20:32 CEST 2008


> SetWindowOrgEx is a winapi compatibility function which moves your (0,0) 
> coord to another point. So all your drawings after that will be shifted 
> by that offset. Qt do the same by QPainter.translate method. We can 
> query offsets by accessing QPainter.Matrix which is QMatrix class. On 
> your arm QMatrix.dx and QMatrix.dy returns values which are very close 
> to zero - and I dont see any problem here. But maybe qt dont do matrix 
> transforms properly on arm? Or maybe we are passing incorrect values.
> 
> Is it possible to install emulator of your arm device and repeat the 
> same on usual pc?
> 
> Best regards,
> Paul Ishenin.

Actually it is any TControl- TGraphicControl descendant that does this -
not just shape. I see there is no specific implementation for these so
they are drawn on the parent DC yes. 
Everything looks OK except that in qtwinapi.inc,
TQtWidgetSet.SetWindowOrgEx the call to
TQtDeviceContext(DC).translate(-NewX, -NewY) seems to have no effect. 
I need some way of checking what the device translations are before and
after this call, QPainter::deviceTransform or QPainter::deviceMatrix?

I wonder if this is some limitation in the paintengine capabilities for
LinuxFB vs X11.

I will keep at it.

Thanks

Terry
   




More information about the Qt mailing list