[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://f \
r.rd.yahoo.com/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