Page 1 of 1

SAYS overpainting

PostPosted: Tue Jul 05, 2011 11:45 am
by byte-one
The abnormal painting are only in VISTA and 7 visible! The next code in the original control.prg is not the solution for this ugly problem with says. On every click on checkbox or radio the says are overpainted and becomes bigger and bigger!

Code: Select all  Expand view
        if Upper( ::ClassName() ) $ "TCHECKBOX;TRADIO;TGROUP"
               // Without the above IF condition, says with border in themed apps
               // on transparent dialogs with solid color background
               // are not painted correctly. With each click of checkbox / radio
               // border and say text are overpainted one pixel down & one pixel right

               DrawPBack( ::hWnd, hDC )
               //ParentImage( ::hWnd, hDC )
            endif

Re: SAYS overpainting

PostPosted: Tue Jul 05, 2011 1:10 pm
by Enrico Maria Giordano
I see no problems in SAYs using latest FWH release. Can you provide a little sample of the problem?

EMG

Re: SAYS overpainting

PostPosted: Tue Jul 05, 2011 1:57 pm
by byte-one
Enrico, some tests and I found out, this painting-error are not direct produced from checkbox or radio!!! It shows always on call from oDlg:refresh(.F.)!

Re: SAYS overpainting

PostPosted: Tue Jul 05, 2011 2:08 pm
by Enrico Maria Giordano
We still need a sample of the problem.

EMG

Re: SAYS overpainting

PostPosted: Tue Jul 05, 2011 2:21 pm
by byte-one
Please look at this screen:
http://byte-one.com/1.jpg

In the meantime I commented out also in control.prg the ::oWnd:refresh(.F.) from "case nMsg == WM_LBUTTONDOWN" in the method Handleevent(). And now is OK for me. Think: The error are only in VISTA and 7 !
But I dont no, if this correction shows sideeffects!

Re: SAYS overpainting

PostPosted: Tue Jul 05, 2011 4:04 pm
by James Bott
Many of these things seem to be related to specific themes.

James

Re: SAYS overpainting URGENT

PostPosted: Fri Jul 08, 2011 11:44 am
by byte-one
Please let us correct also this point! I use this little correction without problems.

In the meantime I commented out also in control.prg the ::oWnd:refresh(.F.) from "case nMsg == WM_LBUTTONDOWN" in the method Handleevent(). And now is OK for me. Think: The error are only in VISTA and 7 !
But I dont no, if this correction shows sideeffects!

Re: SAYS overpainting

PostPosted: Sat Jul 30, 2011 7:37 pm
by Antonio Linares
Günther,

It seems as the problem comes from function FixSays(). If you add this code in your app:

function FixSays()

return nil

then the SAYs don't overpaint

We are looking for the right fix. Many thanks for your feedback :-)

Re: SAYS overpainting

PostPosted: Mon Aug 01, 2011 7:18 am
by Antonio Linares
We are publishing FWH 11.07 where we have modified FixSays() but we may need further testing to be sure that there are no side effects for this change