Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qquickcolordialog.cpp
Go to the documentation of this file.
1// Copyright (C) 2022 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
5
6#include <QtCore/qloggingcategory.h>
7
9
58 m_options(QColorDialogOptions::create()),
59 m_selectedColor(QColorConstants::White)
60{
61}
62
76{
77 return m_selectedColor;
78}
79
81{
82 if (color == m_selectedColor)
83 return;
84
85 m_selectedColor = color;
86
88}
89
109QColorDialogOptions::ColorDialogOptions QQuickColorDialog::options() const
110{
111 return m_options->options();
112}
113
114void QQuickColorDialog::setOptions(QColorDialogOptions::ColorDialogOptions options)
115{
116 if (options == m_options->options())
117 return;
118
119 m_options->setOptions(options);
121}
122
127
129{
131 && !(m_options->testOption(QColorDialogOptions::DontUseNativeDialog));
132}
133
135{
136 if (auto colorDialog = qobject_cast<QPlatformColorDialogHelper *>(dialog)) {
138 [this, colorDialog]() { setSelectedColor(colorDialog->currentColor()); });
139 colorDialog->setOptions(m_options);
140 }
141}
142
144{
145 m_options->setWindowTitle(title());
146 if (auto colorDialog = qobject_cast<QPlatformColorDialogHelper *>(dialog)) {
147 colorDialog->setOptions(m_options);
148 colorDialog->setCurrentColor(m_selectedColor);
149 }
150
152}
153
The QColor class provides colors based on RGB, HSV or CMYK values.
Definition qcolor.h:31
\inmodule QtCore
Definition qobject.h:103
static QMetaObject::Connection connect(const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
\threadsafe
Definition qobject.cpp:2960
void currentColorChanged(const QColor &color)
The QPlatformDialogHelper class allows for platform-specific customization of dialogs.
virtual bool useNativeDialog() const
virtual void onShow(QPlatformDialogHelper *dialog)
void setSelectedColor(const QColor &color)
bool useNativeDialog() const override
void onShow(QPlatformDialogHelper *dialog) override
void selectedColorChanged()
QColorDialogOptions::ColorDialogOptions options
void onCreate(QPlatformDialogHelper *dialog) override
void setOptions(QColorDialogOptions::ColorDialogOptions options)
QQuickColorDialog(QObject *parent=nullptr)
\qmltype ColorDialog \inherits Dialog \inqmlmodule QtQuick.Dialogs
\inmodule QtGui
Combined button and popup list for selecting options.
SharedPointerFileDialogOptions m_options
GLuint color
[2]
QQuickDialogType
#define emit
QFileDialog dialog(this)
[1]
view create()