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 #ifndef PHONON_EFFECTPARAMETER_H
00024 #define PHONON_EFFECTPARAMETER_H
00025
00026 #include "phonon_export.h"
00027
00028 #include <QtCore/QExplicitlySharedDataPointer>
00029 #include <QtCore/QVariant>
00030
00031 QT_BEGIN_HEADER
00032 QT_BEGIN_NAMESPACE
00033
00034 #ifndef QT_NO_PHONON_EFFECT
00035
00036 namespace Phonon
00037 {
00038
00039 class Effect;
00040 class EffectParameterPrivate;
00041
00049 class PHONON_EXPORT EffectParameter
00050 {
00051 friend class BrightnessControl;
00052 public:
00058 EffectParameter();
00059
00065 const QString &name() const;
00066
00076 const QString &description() const;
00077
00084 QVariant::Type type() const;
00085
00091 bool isLogarithmicControl() const;
00092
00099 QVariant minimumValue() const;
00100
00107 QVariant maximumValue() const;
00108
00112 QVariant defaultValue() const;
00113
00120 QVariantList possibleValues() const;
00121
00126 bool operator<(const EffectParameter &rhs) const;
00127
00132 bool operator>(const EffectParameter &rhs) const;
00133
00138 bool operator==(const EffectParameter &rhs) const;
00139
00140
00141 ~EffectParameter();
00142 EffectParameter(const EffectParameter &rhs);
00143 EffectParameter &operator=(const EffectParameter &rhs);
00144
00153 enum Hint {
00160 ToggledHint = 0x04,
00161
00162
00163
00164
00165
00169 LogarithmicHint = 0x10,
00173 IntegerHint = 0x20
00174 };
00175 Q_DECLARE_FLAGS(Hints, Hint)
00176
00177
00201 EffectParameter(int parameterId, const QString &name, Hints hints,
00202 const QVariant &defaultValue, const QVariant &min = QVariant(),
00203 const QVariant &max = QVariant(), const QVariantList &values = QVariantList(),
00204 const QString &description = QString());
00205
00211 int id() const;
00212
00213 protected:
00217 QExplicitlySharedDataPointer<EffectParameterPrivate> d;
00218 };
00219
00220 uint PHONON_EXPORT qHash(const Phonon::EffectParameter ¶m);
00221
00222 }
00223
00224 #if defined(Q_CC_MSVC) && _MSC_VER <= 1300
00225
00226
00227 inline uint qHash(const Phonon::EffectParameter ¶m) { return Phonon::qHash(param); }
00228 #endif
00229 Q_DECLARE_OPERATORS_FOR_FLAGS(Phonon::EffectParameter::Hints)
00230
00231 #endif //QT_NO_PHONON_EFFECT
00232
00233 QT_END_NAMESPACE
00234 QT_END_HEADER
00235
00236 #endif // PHONON_EFFECTPARAMETER_H
00237