QGIS API Documentation 3.99.0-Master (2fe06baccd8)
Loading...
Searching...
No Matches
QgsProjectStyleSettings Class Reference

Contains settings and properties relating to how a QgsProject should handle styling. More...

#include <qgsprojectstylesettings.h>

Inheritance diagram for QgsProjectStyleSettings:

Signals

void projectStyleChanged ()
 Emitted when the style returned by projectStyle() is changed.
void styleDatabaseAboutToBeAdded (const QString &path)
 Emitted when a style database path is about to be added.
void styleDatabaseAboutToBeRemoved (const QString &path)
 Emitted when a style database path is about to be removed.
void styleDatabaseAdded (const QString &path)
 Emitted when a style database path is added.
void styleDatabaseRemoved (const QString &path)
 Emitted when a style database path is removed.
void styleDatabasesChanged ()
 Emitted whenever the set of style databases associated with the project is changed.

Public Member Functions

 QgsProjectStyleSettings (QgsProject *project=nullptr)
 Constructor for QgsProjectStyleSettings for the specified project.
 ~QgsProjectStyleSettings () override
void addStyleDatabasePath (const QString &path)
 Adds a style database path to the project.
Qgis::ColorModel colorModel () const
 Returns the project's color model.
QColorSpace colorSpace () const
 Returns the project's color space.
QgsCombinedStyleModelcombinedStyleModel ()
 Returns the combined style model which includes all style databases associated with the project.
QgsColorRampdefaultColorRamp () const
 Returns the project default color ramp.
QgsSymboldefaultSymbol (Qgis::SymbolType symbolType) const
 Returns the project default symbol for a given type.
double defaultSymbolOpacity () const
 Returns the default symbol opacity.
QgsTextFormat defaultTextFormat () const
 Returns the project default text format.
QgsStyleprojectStyle ()
 Returns the style database to use for project specific styles.
bool randomizeDefaultSymbolColor () const
 Returns whether the default symbol fill color is randomized.
bool readXml (const QDomElement &element, const QgsReadWriteContext &context, Qgis::ProjectReadFlags flags=Qgis::ProjectReadFlags())
 Reads the settings's state from a DOM element.
void removeProjectStyle ()
 Removes and deletes the project style database.
void reset ()
 Resets the settings to a default state.
void setColorModel (Qgis::ColorModel colorModel)
 Set the project's color model to colorModel.
void setColorSpace (const QColorSpace &colorSpace)
 Set the project's current color space to colorSpace.
void setDefaultColorRamp (QgsColorRamp *colorRamp)
 Sets the project default color ramp.
void setDefaultSymbol (Qgis::SymbolType symbolType, QgsSymbol *symbol)
 Sets the project default symbol for a given type.
void setDefaultSymbolOpacity (double opacity)
 Sets the default symbol opacity.
void setDefaultTextFormat (const QgsTextFormat &textFormat)
 Sets the project default text format.
void setProjectStyle (QgsStyle *style)
 Sets the style database to use for the project style.
void setRandomizeDefaultSymbolColor (bool randomized)
 Sets whether the default symbol fill color is randomized.
void setStyleDatabasePaths (const QStringList &paths)
 Sets the paths to all style databases associated with the project.
QgsStylestyleAtPath (const QString &path)
 Returns a reference to the style database associated with the project with matching file path.
QStringList styleDatabasePaths () const
 Returns a list of all style databases (file paths) associated with the project.
QList< QgsStyle * > styles () const
 Returns a list of all the styles associated with the project.
QDomElement writeXml (QDomDocument &doc, const QgsReadWriteContext &context) const
 Returns a DOM element representing the settings.

Friends

class TestQgsProjectProperties

Detailed Description

Contains settings and properties relating to how a QgsProject should handle styling.

Since
QGIS 3.26

Definition at line 46 of file qgsprojectstylesettings.h.

Constructor & Destructor Documentation

◆ QgsProjectStyleSettings()

QgsProjectStyleSettings::QgsProjectStyleSettings ( QgsProject * project = nullptr)

Constructor for QgsProjectStyleSettings for the specified project.

Ownership is transferred to the project.

Definition at line 36 of file qgsprojectstylesettings.cpp.

◆ ~QgsProjectStyleSettings()

QgsProjectStyleSettings::~QgsProjectStyleSettings ( )
override

Definition at line 43 of file qgsprojectstylesettings.cpp.

Member Function Documentation

◆ addStyleDatabasePath()

void QgsProjectStyleSettings::addStyleDatabasePath ( const QString & path)

Adds a style database path to the project.

Paths can be either style .db databases, or .xml exports of style databases.

The file path added by this method must always be absolute paths. Depending on the project settings, they may be converted to relative paths when the project is saved.

See also
styleDatabasePaths()
setStyleDatabasePaths()
styleDatabasesChanged()

Definition at line 425 of file qgsprojectstylesettings.cpp.

◆ colorModel()

Qgis::ColorModel QgsProjectStyleSettings::colorModel ( ) const

Returns the project's color model.

This model is used as the default color model when selecting a color in the whole application. Any color defined in a different color model than the returned model will be converted to this color model when exporting a layout.

The color model defaults to Qgis::ColorModel::Rgb

See also
setColorModel()
Since
QGIS 3.40

Definition at line 530 of file qgsprojectstylesettings.cpp.

◆ colorSpace()

QColorSpace QgsProjectStyleSettings::colorSpace ( ) const

Returns the project's color space.

The project color's space will be added to PDF layout exports when it is defined (i.e. it is different from the default invalid QColorSpace).

The color space defaults to an invalid color space.

See also
setColorSpace()
Since
QGIS 3.40

Definition at line 580 of file qgsprojectstylesettings.cpp.

◆ combinedStyleModel()

QgsCombinedStyleModel * QgsProjectStyleSettings::combinedStyleModel ( )

Returns the combined style model which includes all style databases associated with the project.

This model also includes QgsStyle::defaultStyle().

Note
This is only available on builds based on Qt 5.13 or later.
See also
styles()

Definition at line 508 of file qgsprojectstylesettings.cpp.

◆ defaultColorRamp()

QgsColorRamp * QgsProjectStyleSettings::defaultColorRamp ( ) const

Returns the project default color ramp.

Returns
a color ramp pointer or nullptr if there is no default set
Note
the color ramp ownership is transferred to the caller

Definition at line 108 of file qgsprojectstylesettings.cpp.

◆ defaultSymbol()

QgsSymbol * QgsProjectStyleSettings::defaultSymbol ( Qgis::SymbolType symbolType) const

Returns the project default symbol for a given type.

Parameters
symbolTypethe symbol type
Returns
a symbol pointer or nullptr if there is no default set
Note
the symbol ownership is transferred to the caller

Definition at line 52 of file qgsprojectstylesettings.cpp.

◆ defaultSymbolOpacity()

double QgsProjectStyleSettings::defaultSymbolOpacity ( ) const
inline

Returns the default symbol opacity.

Definition at line 116 of file qgsprojectstylesettings.h.

◆ defaultTextFormat()

QgsTextFormat QgsProjectStyleSettings::defaultTextFormat ( ) const

Returns the project default text format.

Note
if no default is defined, the returned format will be invalid

Definition at line 123 of file qgsprojectstylesettings.cpp.

◆ projectStyle()

QgsStyle * QgsProjectStyleSettings::projectStyle ( )

Returns the style database to use for project specific styles.

See also
setProjectStyle()

Definition at line 214 of file qgsprojectstylesettings.cpp.

◆ projectStyleChanged

void QgsProjectStyleSettings::projectStyleChanged ( )
signal

Emitted when the style returned by projectStyle() is changed.

Note
Not available in Python bindings

◆ randomizeDefaultSymbolColor()

bool QgsProjectStyleSettings::randomizeDefaultSymbolColor ( ) const
inline

Returns whether the default symbol fill color is randomized.

Definition at line 106 of file qgsprojectstylesettings.h.

◆ readXml()

bool QgsProjectStyleSettings::readXml ( const QDomElement & element,
const QgsReadWriteContext & context,
Qgis::ProjectReadFlags flags = Qgis::ProjectReadFlags() )

Reads the settings's state from a DOM element.

See also
writeXml()

Definition at line 219 of file qgsprojectstylesettings.cpp.

◆ removeProjectStyle()

void QgsProjectStyleSettings::removeProjectStyle ( )

Removes and deletes the project style database.

Since
QGIS 3.32

Definition at line 183 of file qgsprojectstylesettings.cpp.

◆ reset()

void QgsProjectStyleSettings::reset ( )

Resets the settings to a default state.

Definition at line 158 of file qgsprojectstylesettings.cpp.

◆ setColorModel()

void QgsProjectStyleSettings::setColorModel ( Qgis::ColorModel colorModel)

Set the project's color model to colorModel.

This sets the default color model used when selecting a color in the whole application. Any color defined in a different color model than the one specified here will be converted to this color model when exporting a layout.

If a color space has already been set and its color model differs from colorModel, the project color space will be reset to invalid one (This is only true if QGIS is built against Qt 6.8.0 or greater).

See also
setColorSpace() colorSpace()

The color model defaults to Qgis::ColorModel::Rgb

See also
colorModel()
Since
QGIS 3.40

Definition at line 513 of file qgsprojectstylesettings.cpp.

◆ setColorSpace()

void QgsProjectStyleSettings::setColorSpace ( const QColorSpace & colorSpace)

Set the project's current color space to colorSpace.

colorSpace must be a valid RGB or CMYK color space. The color space's ICC profile will be added as a project attached file.

The project color's space will be added to PDF layout exports when it is defined (i.e. it is different from the default invalid QColorSpace).

If a color model has already been set and it differs from colorSpace's color model, the project's color model is set to match the color space's color model (This is only true if QGIS is built against Qt 6.8.0 or greater).

See also
setColorModel() colorModel()

The color space defaults to an invalid color space.

See also
colorSpace()
Since
QGIS 3.40

Definition at line 535 of file qgsprojectstylesettings.cpp.

◆ setDefaultColorRamp()

void QgsProjectStyleSettings::setDefaultColorRamp ( QgsColorRamp * colorRamp)

Sets the project default color ramp.

Parameters
colorRampthe color ramp, set to nullptr to clear default
Note
the color ramp ownership is not transferred

Definition at line 113 of file qgsprojectstylesettings.cpp.

◆ setDefaultSymbol()

void QgsProjectStyleSettings::setDefaultSymbol ( Qgis::SymbolType symbolType,
QgsSymbol * symbol )

Sets the project default symbol for a given type.

Parameters
symbolTypethe symbol type
symbolthe symbol pointer, set to nullptr to clear default
Note
the symbol ownership is not transferred

Definition at line 72 of file qgsprojectstylesettings.cpp.

◆ setDefaultSymbolOpacity()

void QgsProjectStyleSettings::setDefaultSymbolOpacity ( double opacity)

Sets the default symbol opacity.

Definition at line 138 of file qgsprojectstylesettings.cpp.

◆ setDefaultTextFormat()

void QgsProjectStyleSettings::setDefaultTextFormat ( const QgsTextFormat & textFormat)

Sets the project default text format.

Parameters
textFormatthe text format, an invalid format is interpreted as no default

Definition at line 128 of file qgsprojectstylesettings.cpp.

◆ setProjectStyle()

void QgsProjectStyleSettings::setProjectStyle ( QgsStyle * style)

Sets the style database to use for the project style.

See also
projectStyle()

Definition at line 193 of file qgsprojectstylesettings.cpp.

◆ setRandomizeDefaultSymbolColor()

void QgsProjectStyleSettings::setRandomizeDefaultSymbolColor ( bool randomized)

Sets whether the default symbol fill color is randomized.

Definition at line 148 of file qgsprojectstylesettings.cpp.

◆ setStyleDatabasePaths()

void QgsProjectStyleSettings::setStyleDatabasePaths ( const QStringList & paths)

Sets the paths to all style databases associated with the project.

Paths can be either style .db databases, or .xml exports of style databases.

The file paths set by this method must always be absolute paths. Depending on the project settings, they may be converted to relative paths when the project is saved.

See also
addStyleDatabasePath()
styleDatabasePaths()
styleDatabasesChanged()

Definition at line 438 of file qgsprojectstylesettings.cpp.

◆ styleAtPath()

QgsStyle * QgsProjectStyleSettings::styleAtPath ( const QString & path)

Returns a reference to the style database associated with the project with matching file path.

Definition at line 408 of file qgsprojectstylesettings.cpp.

◆ styleDatabaseAboutToBeAdded

void QgsProjectStyleSettings::styleDatabaseAboutToBeAdded ( const QString & path)
signal

Emitted when a style database path is about to be added.

Note
Not available in Python bindings

◆ styleDatabaseAboutToBeRemoved

void QgsProjectStyleSettings::styleDatabaseAboutToBeRemoved ( const QString & path)
signal

Emitted when a style database path is about to be removed.

Note
Not available in Python bindings

◆ styleDatabaseAdded

void QgsProjectStyleSettings::styleDatabaseAdded ( const QString & path)
signal

Emitted when a style database path is added.

Note
Not available in Python bindings

◆ styleDatabasePaths()

QStringList QgsProjectStyleSettings::styleDatabasePaths ( ) const
inline

Returns a list of all style databases (file paths) associated with the project.

The file paths returned by this method will always be absolute paths. Depending on the project settings, they may be converted to relative paths when the project is saved.

See also
styles()
addStyleDatabasePath()
setStyleDatabasePaths()

Definition at line 234 of file qgsprojectstylesettings.h.

◆ styleDatabaseRemoved

void QgsProjectStyleSettings::styleDatabaseRemoved ( const QString & path)
signal

Emitted when a style database path is removed.

Note
Not available in Python bindings

◆ styleDatabasesChanged

void QgsProjectStyleSettings::styleDatabasesChanged ( )
signal

Emitted whenever the set of style databases associated with the project is changed.

◆ styles()

QList< QgsStyle * > QgsProjectStyleSettings::styles ( ) const

Returns a list of all the styles associated with the project.

See also
styleDatabasePaths()

Definition at line 396 of file qgsprojectstylesettings.cpp.

◆ writeXml()

QDomElement QgsProjectStyleSettings::writeXml ( QDomDocument & doc,
const QgsReadWriteContext & context ) const

Returns a DOM element representing the settings.

See also
readXml()

Definition at line 330 of file qgsprojectstylesettings.cpp.

◆ TestQgsProjectProperties

friend class TestQgsProjectProperties
friend

Definition at line 361 of file qgsprojectstylesettings.h.


The documentation for this class was generated from the following files: