QGIS API Documentation 3.41.0-Master (45a0abf3bec)
Loading...
Searching...
No Matches
Signals | Public Member Functions | Friends | List of all members
QgsProjectStyleSettings Class Reference

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

#include <qgsprojectstylesettings.h>

Inheritance diagram for QgsProjectStyleSettings:
Inheritance graph
[legend]

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 45 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 34 of file qgsprojectstylesettings.cpp.

◆ ~QgsProjectStyleSettings()

QgsProjectStyleSettings::~QgsProjectStyleSettings ( )
override

Definition at line 41 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 423 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 528 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 578 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 506 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 106 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 50 of file qgsprojectstylesettings.cpp.

◆ defaultSymbolOpacity()

double QgsProjectStyleSettings::defaultSymbolOpacity ( ) const
inline

Returns the default symbol opacity.

Definition at line 115 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 121 of file qgsprojectstylesettings.cpp.

◆ projectStyle()

QgsStyle * QgsProjectStyleSettings::projectStyle ( )

Returns the style database to use for project specific styles.

See also
setProjectStyle()

Definition at line 212 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 105 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 217 of file qgsprojectstylesettings.cpp.

◆ removeProjectStyle()

void QgsProjectStyleSettings::removeProjectStyle ( )

Removes and deletes the project style database.

Since
QGIS 3.32

Definition at line 181 of file qgsprojectstylesettings.cpp.

◆ reset()

void QgsProjectStyleSettings::reset ( )

Resets the settings to a default state.

Definition at line 156 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 511 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 533 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 111 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 70 of file qgsprojectstylesettings.cpp.

◆ setDefaultSymbolOpacity()

void QgsProjectStyleSettings::setDefaultSymbolOpacity ( double  opacity)

Sets the default symbol opacity.

Definition at line 136 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 126 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 191 of file qgsprojectstylesettings.cpp.

◆ setRandomizeDefaultSymbolColor()

void QgsProjectStyleSettings::setRandomizeDefaultSymbolColor ( bool  randomized)

Sets whether the default symbol fill color is randomized.

Definition at line 146 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 436 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 406 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 233 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 394 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 328 of file qgsprojectstylesettings.cpp.

Friends And Related Symbol Documentation

◆ TestQgsProjectProperties

friend class TestQgsProjectProperties
friend

Definition at line 360 of file qgsprojectstylesettings.h.


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