18 #ifndef QGSCOLORSCHEME_H 19 #define QGSCOLORSCHEME_H 26 #include "qgis_core.h" 51 if ( dynamic_cast<QgsUserColorScheme *>( sipCpp ) != NULL )
52 sipType = sipType_QgsUserColorScheme;
53 else if ( dynamic_cast<QgsRecentColorScheme *>( sipCpp ) != NULL )
54 sipType = sipType_QgsRecentColorScheme;
55 else if ( dynamic_cast<QgsCustomColorScheme *>( sipCpp ) != NULL )
56 sipType = sipType_QgsCustomColorScheme;
57 else if ( dynamic_cast<QgsProjectColorScheme *>( sipCpp ) != NULL )
58 sipType = sipType_QgsProjectColorScheme;
59 else if ( dynamic_cast<QgsGplColorScheme *>( sipCpp ) != NULL )
60 sipType = sipType_QgsGplColorScheme;
62 sipType = sipType_QgsColorScheme;
73 ShowInColorDialog = 0x01,
74 ShowInColorButtonMenu = 0x02,
75 ShowInAllContexts = ShowInColorDialog | ShowInColorButtonMenu
90 virtual QString schemeName()
const = 0;
96 virtual SchemeFlags
flags()
const {
return ShowInColorDialog; }
110 const QColor &baseColor = QColor() ) = 0;
127 virtual bool setColors(
const QgsNamedColorList &colors,
const QString &context = QString(),
const QColor &baseColor = QColor() );
136 Q_DECLARE_OPERATORS_FOR_FLAGS( QgsColorScheme::SchemeFlags )
154 const QColor &baseColor = QColor() )
override;
156 bool setColors(
const QgsNamedColorList &colors,
const QString &context = QString(),
const QColor &baseColor = QColor() )
override;
164 virtual QString gplFilePath() = 0;
191 QgsColorScheme::SchemeFlags
flags()
const override;
197 void setName(
const QString &name ) { mName = name; }
210 void setShowSchemeInMenu(
bool show );
218 bool mEditable =
false;
239 QString
schemeName()
const override {
return QObject::tr(
"Recent colors" ); }
244 const QColor &baseColor = QColor() )
override;
254 static void addRecentColor(
const QColor &color );
261 static QColor lastUsedColor();
279 QString
schemeName()
const override {
return QObject::tr(
"Standard colors" ); }
284 const QColor &baseColor = QColor() )
override;
288 bool setColors(
const QgsNamedColorList &colors,
const QString &context = QString(),
const QColor &baseColor = QColor() )
override;
308 QString
schemeName()
const override {
return QObject::tr(
"Project colors" ); }
313 const QColor &baseColor = QColor() )
override;
317 bool setColors(
const QgsNamedColorList &colors,
const QString &context = QString(),
const QColor &baseColor = QColor() )
override;
A color scheme which contains custom colors set through QGIS app options dialog.
A color scheme which stores its colors in a gpl palette file within the "palettes" subfolder off the ...
void setName(const QString &name)
Sets the name for the scheme.
bool isEditable() const override
Returns whether the color scheme is editable.
A color scheme which contains project specific colors set through project properties dialog...
QString schemeName() const override
Gets the name for the color scheme.
bool isEditable() const override
Returns whether the color scheme is editable.
virtual QgsColorScheme * clone() const =0
Clones a color scheme.
virtual SchemeFlags flags() const
Returns the current flags for the color scheme.
Abstract base class for color schemes.
SchemeFlags flags() const override
Returns the current flags for the color scheme.
Show scheme in all contexts.
QString schemeName() const override
Gets the name for the color scheme.
QList< QPair< QColor, QString > > QgsNamedColorList
List of colors paired with a friendly display name identifying the color.
SchemeFlags flags() const override
Returns the current flags for the color scheme.
virtual QString gplFilePath()=0
Returns the file path for the associated gpl palette file.
bool isEditable() const override
Returns whether the color scheme is editable.
A color scheme which contains the most recently used colors.
virtual bool isEditable() const
Returns whether the color scheme is editable.
virtual QString schemeName() const =0
Gets the name for the color scheme.
virtual QgsNamedColorList fetchColors(const QString &context=QString(), const QColor &baseColor=QColor())=0
Gets a list of colors from the scheme.
#define SIP_CONVERT_TO_SUBCLASS_CODE(code)
SchemeFlags flags() const override
Returns the current flags for the color scheme.
QString schemeName() const override
Gets the name for the color scheme.
SchemeFlag
Flags for controlling behavior of color scheme.
virtual bool setColors(const QgsNamedColorList &colors, const QString &context=QString(), const QColor &baseColor=QColor())
Sets the colors for the scheme.
A color scheme which stores its colors in a gpl palette file.