diff options
Diffstat (limited to 'src/widgets/dialogs/qcolordialog.cpp')
-rw-r--r-- | src/widgets/dialogs/qcolordialog.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/widgets/dialogs/qcolordialog.cpp b/src/widgets/dialogs/qcolordialog.cpp index 5adb4ba6da..af43ecc8df 100644 --- a/src/widgets/dialogs/qcolordialog.cpp +++ b/src/widgets/dialogs/qcolordialog.cpp @@ -1735,8 +1735,9 @@ QColor QColorDialog::selectedColor() const */ void QColorDialog::setOption(ColorDialogOption option, bool on) { - Q_D(QColorDialog); - d->options->setOption(static_cast<QColorDialogOptions::ColorDialogOption>(option), on); + const QColorDialog::ColorDialogOptions previousOptions = options(); + if (!(previousOptions & option) != !on) + setOptions(previousOptions ^ option); } /*! |