[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-cygwin
Subject: [PATCH]Mouse-over effects don't work properly in QToolBox buttons
From: REGAT-BARREL Aurelien <arbvtk () yahoo ! fr>
Date: 2004-12-16 0:05:29
Message-ID: 20041216000529.26502.qmail () web25209 ! mail ! ukl ! yahoo ! com
[Download RAW message or body]
[Attachment #2 (multipart/alternative)]
Hi,
In styles/qcommonstyle.cpp, the function drawComplexControl is called at least by QToolBox buttons to \
draw / clear the shape. The function tests for flags (Style_Down | Style_On | Style_Raised), and in such \
a case it draws the shape by calling drawPrimitive. If not, nothing is done, and so if a shape was \
previously painted, it is not erased. drawPrimitive already tests for this flags, and if they are not \
present, it erase the shape. So the test is unneeded, and removing it corrects the bug.
---------------------------------------8<------------------------------------------
diff -u -r1.1.1.1 qcommonstyle.cpp
--- qcommonstyle.cpp 15 Dec 2004 23:06:00 -0000 1.1.1.1
+++ qcommonstyle.cpp 15 Dec 2004 23:52:53 -0000
@@ -1590,9 +1590,10 @@
mflags |= Style_Down;
if (controls & SC_ToolButton) {
- if (bflags & (Style_Down | Style_On | Style_Raised)) {
- drawPrimitive(PE_ButtonTool, p, button, c, bflags, opt);
- } else if ( toolbutton->parentWidget() &&
+ //if (bflags & (Style_Down | Style_On | Style_Raised)) {
+ drawPrimitive(PE_ButtonTool, p, button, c, bflags, opt);
+ //} else
+ if ( toolbutton->parentWidget() &&
toolbutton->parentWidget()->backgroundPixmap() &&
! toolbutton->parentWidget()->backgroundPixmap()->isNull() ) {
QPixmap pixmap =
---------------------------------------8<------------------------------------------
Regards.
Aurelien Regat-Barrel
Aurelien REGAT-BARREL
---------------------------------
Découvrez le nouveau Yahoo! Mail : 250 Mo d'espace de stockage pour vos mails !
Créez votre Yahoo! Mail
[Attachment #5 (text/html)]
<DIV>Hi,</DIV>
<DIV>In styles/qcommonstyle.cpp, the function drawComplexControl is called at least by QToolBox buttons \
to draw / clear the shape. The function tests for flags (Style_Down | Style_On | Style_Raised), and in \
such a case it draws the shape by calling drawPrimitive. If not, nothing is done, and so if a shape was \
previously painted, it is not erased. drawPrimitive already tests for this flags, and if they are \
not present, it erase the shape. So the test is unneeded, and removing it corrects the bug.</DIV> \
<DIV>---------------------------------------8<------------------------------------------</DIV> \
<DIV>diff -u -r1.1.1.1 qcommonstyle.cpp<BR>--- qcommonstyle.cpp 15 Dec 2004 23:06:00 \
-0000 1.1.1.1<BR>+++ qcommonstyle.cpp 15 Dec 2004 23:52:53 -0000<BR>@@ -1590,9 +1590,10 \
@@<BR> mflags |= Style_Down;<BR> <BR> if (controls \
& SC_ToolButton) {<BR>- if (bflags & (Style_Down | Style_On | Style_Raised)) \
{<BR>- drawPrimitive(PE_ButtonTool, p, button, c, bflags, \
opt);<BR>- } else if ( toolbutton->parentWidget() &&<BR>+ //if (bflags \
& (Style_Down | Style_On | Style_Raised)) {<BR>+ drawPrimitive(PE_ButtonTool, p, button, \
c, bflags, opt);<BR>+ //} else <BR>+ if ( \
toolbutton->parentWidget() &&<BR> \
toolbutton->parentWidget()->backgroundPixmap() &&<BR> ! \
toolbutton->parentWidget()->backgroundPixmap()->isNull() ) \
{<BR> QPixmap pixmap =<BR> \
<DIV>---------------------------------------8<------------------------------------------</DIV></DIV> \
<DIV> </DIV> <DIV>Regards.</DIV>
<DIV> </DIV>
<DIV>Aurelien Regat-Barrel</DIV><BR><BR><DIV>
<DIV>
<DIV>Aurelien REGAT-BARREL <BR></DIV></DIV></DIV><p>
<hr size=1>
Découvrez le nouveau Yahoo! Mail : <font color="red">250 Mo d'espace</font> de stockage pour vos mails \
!<br><a href="http://fr.rd.yahoo.com/mail/taglines/*http://fr.rd.yahoo.com/evt=25917/*http://fr.rd.yahoo.c \
om/mail_fr/mail_campaigns/splash/taglines_250/default/*http://fr.promotions.yahoo.com/mail/creer28.html">Créez \
votre Yahoo! Mail</a>
_______________________________________________
kde-cygwin mailing list
kde-cygwin@kde.org
https://mail.kde.org/mailman/listinfo/kde-cygwin
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic