geometryChanged is a signal in QGraphicsWidget in Qt 4.7, conflicting with Applet's. but they do the same thing (seems others ran into the same issues we did? :) .. so provide a binary compat preserving way to move Applet's signal "out of the way". right now we are getting warning msgs on console due to it, doulbe signal emissions and that all just smacks of bugs waiting to happen.

thanks to Gof for the protected method idea, and Alexis for his fast response to reported issues with the signal as implemented in the pre-release versions of Qt 4.7
CCMAIL:ogoffart@kde.org

svn path=/trunk/KDE/kdelibs/; revision=1162242
This commit is contained in:
Aaron J. Seigo 2010-08-11 18:23:32 +00:00
parent 1c129e3f79
commit 5cdd5be918
2 changed files with 14 additions and 0 deletions

View File

@ -2896,6 +2896,14 @@ void AppletOverlayWidget::paint(QPainter *painter,
painter->fillPath(backgroundShape, wash); painter->fillPath(backgroundShape, wash);
} }
#if QT_VERSION >= 0x040700
// in QGraphicsWidget now; preserve BC by implementing it as a protected method
void Applet::geometryChanged()
{
emit QGraphicsWidget::geometryChanged();
}
#endif
} // Plasma namespace } // Plasma namespace
#include "applet.moc" #include "applet.moc"

View File

@ -723,12 +723,18 @@ class PLASMA_EXPORT Applet : public QGraphicsWidget
*/ */
void releaseVisualFocus(); void releaseVisualFocus();
#if QT_VERSION >= 0x040700
protected:
void geometryChanged(); // in QGraphicsWidget now; preserve BC
#else
/** /**
* Emitted whenever the applet makes a geometry change, so that views * Emitted whenever the applet makes a geometry change, so that views
* can coordinate themselves with these changes if they desire. * can coordinate themselves with these changes if they desire.
*/ */
void geometryChanged(); void geometryChanged();
#endif
Q_SIGNALS:
/** /**
* Emitted when the user completes a transformation of the applet. * Emitted when the user completes a transformation of the applet.
*/ */