From 4f929e01e0dbdbbc618083e5a10cdfb7edc7d9bc Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Wed, 11 Apr 2012 22:22:26 +1000 Subject: Address Qt 5 to-do comment for QColorDialog. - change customColor() to return QColor instead of QRgb. - change setCustomColor() and setStandardColor() to take a QColor instead of QRgb. - add missing standardColor() getter method. Task-number: QTBUG-25087 Change-Id: Ic6adb2031ef47f5e9b15fa3560a5322e6847c0bb Reviewed-by: Lars Knoll --- src/widgets/dialogs/qcolordialog.cpp | 29 +++++++++++++++++++---------- src/widgets/dialogs/qcolordialog.h | 9 ++++----- 2 files changed, 23 insertions(+), 15 deletions(-) (limited to 'src/widgets/dialogs') diff --git a/src/widgets/dialogs/qcolordialog.cpp b/src/widgets/dialogs/qcolordialog.cpp index 569a10653f..606b9b00f7 100644 --- a/src/widgets/dialogs/qcolordialog.cpp +++ b/src/widgets/dialogs/qcolordialog.cpp @@ -433,36 +433,45 @@ int QColorDialog::customCount() /*! \since 4.5 - Returns the custom color at the given \a index as a QRgb value. + Returns the custom color at the given \a index as a QColor value. */ -QRgb QColorDialog::customColor(int index) +QColor QColorDialog::customColor(int index) { - return QColorDialogOptions::customColor(index); + return QColor(QColorDialogOptions::customColor(index)); } /*! - Sets the custom color at \a index to the QRgb \a color value. + Sets the custom color at \a index to the QColor \a color value. \note This function does not apply to the Native Color Dialog on the Mac OS X platform. If you still require this function, use the QColorDialog::DontUseNativeDialog option. */ -void QColorDialog::setCustomColor(int index, QRgb color) +void QColorDialog::setCustomColor(int index, QColor color) { - QColorDialogOptions::setCustomColor(index, color); + QColorDialogOptions::setCustomColor(index, color.rgba()); } /*! - Sets the standard color at \a index to the QRgb \a color value. + \since 5.0 + + Returns the standard color at the given \a index as a QColor value. +*/ +QColor QColorDialog::standardColor(int index) +{ + return QColor(QColorDialogOptions::standardColor(index)); +} + +/*! + Sets the standard color at \a index to the QColor \a color value. \note This function does not apply to the Native Color Dialog on the Mac OS X platform. If you still require this function, use the QColorDialog::DontUseNativeDialog option. */ - -void QColorDialog::setStandardColor(int index, QRgb color) +void QColorDialog::setStandardColor(int index, QColor color) { - QColorDialogOptions::setStandardColor(index, color); + QColorDialogOptions::setStandardColor(index, color.rgba()); } static inline void rgb2hsv(QRgb rgb, int &h, int &s, int &v) diff --git a/src/widgets/dialogs/qcolordialog.h b/src/widgets/dialogs/qcolordialog.h index cfb54a7eb9..1daead3879 100644 --- a/src/widgets/dialogs/qcolordialog.h +++ b/src/widgets/dialogs/qcolordialog.h @@ -102,12 +102,11 @@ public: // obsolete static QRgb getRgba(QRgb rgba = 0xffffffff, bool *ok = 0, QWidget *parent = 0); - // ### Qt 5: use QColor in signatures static int customCount(); - static QRgb customColor(int index); - static void setCustomColor(int index, QRgb color); - static void setStandardColor(int index, QRgb color); - + static QColor customColor(int index); + static void setCustomColor(int index, QColor color); + static QColor standardColor(int index); + static void setStandardColor(int index, QColor color); Q_SIGNALS: void currentColorChanged(const QColor &color); -- cgit v1.2.3