[Qt] qt tshapes arm

Terry Kemp klc at klc.net.nz
Tue Jun 17 22:54:11 CEST 2008


Hi,
can anyone help me understand a bit more about the GetWindowOrgEx and
QMatrix stuff in qtwinapi.inc.

I am trying to find out why TShapes are always drawn at 0,0 of the
parent on arm machine (using project -qws not qtopia). 
its OK on host x11. 
If I have one (tshape) center of screen it gets drawn correct shape and
size but at 0, 0. if I put one in the middle of a groupbox it goes to
0,0 of the groupbox.

the extracts from enabling -dVerboseQtWinAPI -dVerboseQt are below. The
problem is obviously the QMatrix_Dx and QMatrix_Dy returning garbage on
arm but what is the likely cause of this?  

Any clues - anybody?


Terry  

as a side note I noticed today the problem with tpanels borders on arm
has fixed itself :)

logs...

X11 (x86_64) running...
------------------------------------------
TQtWidget.SlotPaint Form1:TForm1
Trace:> [WinAPI BeginPaint] Handle=753030
TQtDeviceContext.Create ( WidgetHandle: 22820B0 FromPaintEvent:-1 )
TQtFont.Create CreateHandle: False
TQtBrush.Create CreateHandle: False
TQtPen.Create CreateHandle: False
TQtRegion.Create CreateHandle: False
TQtBrush.Create CreateHandle: False
Trace:< [WinAPI BeginPaint] Result=1815D0
[WinAPI SetWindowOrgEx] DC: 1815D0 NewX: 0 NewY: 0
Trace: > [WinAPI GetWindowOrgEx]
Trace: < [WinAPI GetWindowOrgEx] QMATRIX_DX 0
Trace: < [WinAPI GetWindowOrgEx] QMATRIX_DY0
Trace: < [WinAPI GetWindowOrgEx] Result=(x=0,y=0)
TQtDeviceContext.translate() 
[WinAPI RectVisible] 
Trace:> [WinAPI SaveDC] DC=1815D0
TQtDeviceContext.CreateDCData() 
Trace:< [WinAPI SaveDC] result=1
Trace: > [WinAPI GetWindowOrgEx]
Trace: < [WinAPI GetWindowOrgEx] QMATRIX_DX 0
Trace: < [WinAPI GetWindowOrgEx] QMATRIX_DY0
Trace: < [WinAPI GetWindowOrgEx] Result=(x=0,y=0)
[WinAPI SetWindowOrgEx] DC: 1815D0 NewX: -48 NewY: -32
Trace: > [WinAPI GetWindowOrgEx]
Trace: < [WinAPI GetWindowOrgEx] QMATRIX_DX 0
Trace: < [WinAPI GetWindowOrgEx] QMATRIX_DY0
Trace: < [WinAPI GetWindowOrgEx] Result=(x=0,y=0)
TQtDeviceContext.translate() 
***** [WinAPI TQtWidgetSet.IntersectClipRect] 
TQtPen.Create CreateHandle: True
--------------------------------------------

qt-embedded running on arm...
-----------------------------------
TQtWidget.SlotPaint Form1:TForm1
Trace:> [WinAPI BeginPaint] Handle=410D6020
TQtDeviceContext.Create ( WidgetHandle: 207260 FromPaintEvent:-1 )
TQtFont.Create CreateHandle: False
TQtBrush.Create CreateHandle: False
TQtPen.Create CreateHandle: False
TQtRegion.Create CreateHandle: False
TQtBrush.Create CreateHandle: False
Trace:< [WinAPI BeginPaint] Result=40F91380
[WinAPI SetWindowOrgEx] DC: 40F91380 NewX: 0 NewY: 0
Trace: > [WinAPI GetWindowOrgEx]
Trace: < [WinAPI GetWindowOrgEx] QMATRIX_DX 4.04058555339178E-308
Trace: < [WinAPI GetWindowOrgEx] QMATRIX_DY4.05214618646096E-308
Trace: < [WinAPI GetWindowOrgEx] Result=(x=-1030,y=0)
TQtDeviceContext.translate() 
[WinAPI RectVisible] 
Trace:> [WinAPI SaveDC] DC=40F91380
TQtDeviceContext.CreateDCData() 
Trace:< [WinAPI SaveDC] result=1
Trace: > [WinAPI GetWindowOrgEx]
Trace: < [WinAPI GetWindowOrgEx] QMATRIX_DX 4.04058555339178E-308
Trace: < [WinAPI GetWindowOrgEx] QMATRIX_DY4.05214618646096E-308
Trace: < [WinAPI GetWindowOrgEx] Result=(x=0,y=0)
[WinAPI SetWindowOrgEx] DC: 40F91380 NewX: -48 NewY: -32
Trace: > [WinAPI GetWindowOrgEx]
Trace: < [WinAPI GetWindowOrgEx] QMATRIX_DX 4.04058555339178E-308
Trace: < [WinAPI GetWindowOrgEx] QMATRIX_DY4.05214618646096E-308
Trace: < [WinAPI GetWindowOrgEx] Result=(x=-1030,y=0)
TQtDeviceContext.translate() 
***** [WinAPI TQtWidgetSet.IntersectClipRect] 
TQtPen.Create CreateHandle: True
---------------------------------------------------------------




More information about the Qt mailing list