From 418d0345380140bc5e2ad77987cad6aa081c1878 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Wed, 16 Sep 2009 15:18:04 +0200 Subject: Fix alpha setting in Designer's "Edit Palette" window Use QColorDialog::getColor() instead of deprecated QColorDialog::getRgba(), which causes alpha value to get lost in the process. Task-number: QT-4494 Reviewed-by: Jarek Kobus --- tools/designer/src/lib/shared/stylesheeteditor.cpp | 7 ++----- tools/shared/qtgradienteditor/qtcolorbutton.cpp | 10 +++------- tools/shared/qtpropertybrowser/qteditorfactory.cpp | 8 +++----- 3 files changed, 8 insertions(+), 17 deletions(-) diff --git a/tools/designer/src/lib/shared/stylesheeteditor.cpp b/tools/designer/src/lib/shared/stylesheeteditor.cpp index c7668b1..b9f9ba2 100644 --- a/tools/designer/src/lib/shared/stylesheeteditor.cpp +++ b/tools/designer/src/lib/shared/stylesheeteditor.cpp @@ -240,13 +240,10 @@ void StyleSheetEditorDialog::slotAddGradient(const QString &property) void StyleSheetEditorDialog::slotAddColor(const QString &property) { - bool ok; - QRgb rgba = QColorDialog::getRgba(0xffffffff, &ok, this); - if (!ok) + const QColor color = QColorDialog::getColor(0xffffffff, this, QString(), QColorDialog::ShowAlphaChannel); + if (!color.isValid()) return; - QColor color; - color.setRgba(rgba); QString colorStr; if (color.alpha() == 255) { diff --git a/tools/shared/qtgradienteditor/qtcolorbutton.cpp b/tools/shared/qtgradienteditor/qtcolorbutton.cpp index 1c29b66..5c38b52 100644 --- a/tools/shared/qtgradienteditor/qtcolorbutton.cpp +++ b/tools/shared/qtgradienteditor/qtcolorbutton.cpp @@ -68,14 +68,10 @@ public: void QtColorButtonPrivate::slotEditColor() { - bool ok; - const QRgb rgba = QColorDialog::getRgba(m_color.rgba(), &ok, q_ptr); - if (!ok) + const QColor newColor = QColorDialog::getColor(m_color, q_ptr, QString(), QColorDialog::ShowAlphaChannel); + if (!newColor.isValid() || newColor == q_ptr->color()) return; - const QColor c = QColor::fromRgba(rgba); - if (c == q_ptr->color()) - return; - q_ptr->setColor(c); + q_ptr->setColor(newColor); emit q_ptr->colorChanged(m_color); } diff --git a/tools/shared/qtpropertybrowser/qteditorfactory.cpp b/tools/shared/qtpropertybrowser/qteditorfactory.cpp index 18a596f..1be5ca6 100644 --- a/tools/shared/qtpropertybrowser/qteditorfactory.cpp +++ b/tools/shared/qtpropertybrowser/qteditorfactory.cpp @@ -2202,11 +2202,9 @@ void QtColorEditWidget::setValue(const QColor &c) void QtColorEditWidget::buttonClicked() { - bool ok = false; - QRgb oldRgba = m_color.rgba(); - QRgb newRgba = QColorDialog::getRgba(oldRgba, &ok, this); - if (ok && newRgba != oldRgba) { - setValue(QColor::fromRgba(newRgba)); + const QColor newColor = QColorDialog::getColor(m_color, this, QString(), QColorDialog::ShowAlphaChannel); + if (newColor.isValid() && newColor != m_color) { + setValue(newColor); emit valueChanged(m_color); } } -- cgit v0.12