Go to the
documentation of this file.
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042 #ifndef QCOLORDIALOG_H
00043 #define QCOLORDIALOG_H
00044
00045 #include <QtGui/qdialog.h>
00046
00047 QT_BEGIN_HEADER
00048
00049 QT_BEGIN_NAMESPACE
00050
00051 QT_MODULE(Gui)
00052
00053 #ifndef QT_NO_COLORDIALOG
00054
00055 class QColorDialogPrivate;
00056
00057 class Q_GUI_EXPORT QColorDialog : public QDialog
00058 {
00059 Q_OBJECT
00060 Q_DECLARE_PRIVATE(QColorDialog)
00061 Q_ENUMS(ColorDialogOption)
00062 Q_PROPERTY(QColor currentColor READ currentColor WRITE setCurrentColor
00063 NOTIFY currentColorChanged)
00064 Q_PROPERTY(ColorDialogOptions options READ options WRITE setOptions)
00065
00066 public:
00067 enum ColorDialogOption {
00068 ShowAlphaChannel = 0x00000001,
00069 NoButtons = 0x00000002,
00070 DontUseNativeDialog = 0x00000004
00071 };
00072
00073 Q_DECLARE_FLAGS(ColorDialogOptions, ColorDialogOption)
00074
00075 explicit QColorDialog(QWidget *parent = 0);
00076 explicit QColorDialog(const QColor &initial, QWidget *parent = 0);
00077 ~QColorDialog();
00078
00079 void setCurrentColor(const QColor &color);
00080 QColor currentColor() const;
00081
00082 QColor selectedColor() const;
00083
00084 void setOption(ColorDialogOption option, bool on = true);
00085 bool testOption(ColorDialogOption option) const;
00086 void setOptions(ColorDialogOptions options);
00087 ColorDialogOptions options() const;
00088
00089 #ifdef Q_NO_USING_KEYWORD
00090 void open() { QDialog::open(); }
00091 #else
00092 using QDialog::open;
00093 #endif
00094 void open(QObject *receiver, const char *member);
00095
00096 void setVisible(bool visible);
00097
00098
00099 static QColor getColor(const QColor &initial, QWidget *parent, const QString &title,
00100 ColorDialogOptions options = 0);
00101 static QColor getColor(const QColor &initial = Qt::white, QWidget *parent = 0);
00102
00103
00104 static QRgb getRgba(QRgb rgba = 0xffffffff, bool *ok = 0, QWidget *parent = 0);
00105
00106
00107 static int customCount();
00108 static QRgb customColor(int index);
00109 static void setCustomColor(int index, QRgb color);
00110 static void setStandardColor(int index, QRgb color);
00111
00112 #ifdef QT3_SUPPORT
00113 static QColor getColor(const QColor &init, QWidget *parent, const char *name)
00114 { Q_UNUSED(name); return getColor(init, parent); }
00115 static QRgb getRgba(QRgb rgba, bool *ok, QWidget *parent, const char *name)
00116 { Q_UNUSED(name); return getRgba(rgba, ok, parent); }
00117 #endif
00118
00119 Q_SIGNALS:
00120 void currentColorChanged(const QColor &color);
00121 void colorSelected(const QColor &color);
00122
00123 protected:
00124 void changeEvent(QEvent *event);
00125 void done(int result);
00126
00127 private:
00128 Q_DISABLE_COPY(QColorDialog)
00129
00130 Q_PRIVATE_SLOT(d_func(), void _q_addCustom())
00131 Q_PRIVATE_SLOT(d_func(), void _q_newHsv(int h, int s, int v))
00132 Q_PRIVATE_SLOT(d_func(), void _q_newColorTypedIn(QRgb rgb))
00133 Q_PRIVATE_SLOT(d_func(), void _q_newCustom(int, int))
00134 Q_PRIVATE_SLOT(d_func(), void _q_newStandard(int, int))
00135 #if defined(Q_WS_MAC)
00136 Q_PRIVATE_SLOT(d_func(), void _q_macRunNativeAppModalPanel())
00137 #endif
00138
00139 friend class QColorShower;
00140 };
00141
00142 Q_DECLARE_OPERATORS_FOR_FLAGS(QColorDialog::ColorDialogOptions)
00143
00144 #endif // QT_NO_COLORDIALOG
00145
00146 QT_END_NAMESPACE
00147
00148 QT_END_HEADER
00149
00150 #endif // QCOLORDIALOG_H