QGIS API Documentation 3.29.0-Master (006c3c0232)
Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
QgsStyleModel Class Reference

A QAbstractItemModel subclass for showing symbol and color ramp entities contained within a QgsStyle database. More...

#include <qgsstylemodel.h>

Inheritance diagram for QgsStyleModel:
Inheritance graph
[legend]

Public Types

enum  Column { Name = 0 , Tags }
 Model columns. More...
 
enum  Role {
  TypeRole = Qt::UserRole + 1 , TagRole , EntityName , SymbolTypeRole ,
  IsFavoriteRole , LayerTypeRole , CompatibleGeometryTypesRole , StyleName ,
  StyleFileName , IsTitleRole
}
 Custom model roles. More...
 

Public Member Functions

 QgsStyleModel (QgsStyle *style, QObject *parent=nullptr)
 Constructor for QgsStyleModel, for the specified style and parent object. More...
 
void addDesiredIconSize (QSize size)
 Adds an additional icon size to generate for Qt::DecorationRole data. More...
 
int columnCount (const QModelIndex &parent=QModelIndex()) const override
 
QVariant data (const QModelIndex &index, int role) const override
 
Qt::ItemFlags flags (const QModelIndex &index) const override
 
QVariant headerData (int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override
 
QModelIndex index (int row, int column, const QModelIndex &parent=QModelIndex()) const override
 
QModelIndex parent (const QModelIndex &index) const override
 
int rowCount (const QModelIndex &parent=QModelIndex()) const override
 
bool setData (const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) override
 
QgsStylestyle ()
 Returns the style managed by the model. More...
 

Static Public Member Functions

static void setIconGenerator (QgsAbstractStyleEntityIconGenerator *generator)
 Sets the icon generator to use for deferred style entity icon generation. More...
 

Friends

class QgsCombinedStyleModel
 

Detailed Description

A QAbstractItemModel subclass for showing symbol and color ramp entities contained within a QgsStyle database.

If you are creating a style model for the default application style (see QgsStyle::defaultStyle()), consider using the shared style model available at QgsApplication::defaultStyleModel() for performance instead.

See also
QgsStyleProxyModel
Since
QGIS 3.4

Definition at line 107 of file qgsstylemodel.h.

Member Enumeration Documentation

◆ Column

Model columns.

Enumerator
Name 

Name column.

Tags 

Tags column.

Definition at line 114 of file qgsstylemodel.h.

◆ Role

Custom model roles.

Enumerator
TypeRole 

Style entity type, see QgsStyle::StyleEntity.

TagRole 

String list of tags.

EntityName 

Entity name (since QGIS 3.26)

SymbolTypeRole 

Symbol type (for symbol or legend patch shape entities)

IsFavoriteRole 

Whether entity is flagged as a favorite.

LayerTypeRole 

Layer type (for label settings entities)

CompatibleGeometryTypesRole 

Compatible layer geometry types (for 3D symbols)

StyleName 

Name of associated QgsStyle (QgsStyle::name()) (since QGIS 3.26)

StyleFileName 

File name of associated QgsStyle (QgsStyle::fileName()) (since QGIS 3.26)

IsTitleRole 

True if the index corresponds to a title item (since QGIS 3.26)

Definition at line 121 of file qgsstylemodel.h.

Constructor & Destructor Documentation

◆ QgsStyleModel()

QgsStyleModel::QgsStyleModel ( QgsStyle style,
QObject *  parent = nullptr 
)
explicit

Constructor for QgsStyleModel, for the specified style and parent object.

The style object must exist for the lifetime of this model.

Definition at line 60 of file qgsstylemodel.cpp.

Member Function Documentation

◆ addDesiredIconSize()

void QgsStyleModel::addDesiredIconSize ( QSize  size)

Adds an additional icon size to generate for Qt::DecorationRole data.

This allows style icons to be generated at an icon size which corresponds exactly to the view's icon size in which this model is used.

Definition at line 586 of file qgsstylemodel.cpp.

◆ columnCount()

int QgsStyleModel::columnCount ( const QModelIndex &  parent = QModelIndex()) const
override

Definition at line 581 of file qgsstylemodel.cpp.

◆ data()

QVariant QgsStyleModel::data ( const QModelIndex &  index,
int  role 
) const
override

Definition at line 91 of file qgsstylemodel.cpp.

◆ flags()

Qt::ItemFlags QgsStyleModel::flags ( const QModelIndex &  index) const
override

Definition at line 503 of file qgsstylemodel.cpp.

◆ headerData()

QVariant QgsStyleModel::headerData ( int  section,
Qt::Orientation  orientation,
int  role = Qt::DisplayRole 
) const
override

Definition at line 516 of file qgsstylemodel.cpp.

◆ index()

QModelIndex QgsStyleModel::index ( int  row,
int  column,
const QModelIndex &  parent = QModelIndex() 
) const
override

Definition at line 550 of file qgsstylemodel.cpp.

◆ parent()

QModelIndex QgsStyleModel::parent ( const QModelIndex &  index) const
override

Definition at line 563 of file qgsstylemodel.cpp.

◆ rowCount()

int QgsStyleModel::rowCount ( const QModelIndex &  parent = QModelIndex()) const
override

Definition at line 569 of file qgsstylemodel.cpp.

◆ setData()

bool QgsStyleModel::setData ( const QModelIndex &  index,
const QVariant &  value,
int  role = Qt::EditRole 
)
override

Definition at line 470 of file qgsstylemodel.cpp.

◆ setIconGenerator()

void QgsStyleModel::setIconGenerator ( QgsAbstractStyleEntityIconGenerator generator)
static

Sets the icon generator to use for deferred style entity icon generation.

Currently this is used for 3D symbol icons only.

Note
Not available in Python bindings
Since
QGIS 3.16

Definition at line 599 of file qgsstylemodel.cpp.

◆ style()

QgsStyle * QgsStyleModel::style ( )
inline

Returns the style managed by the model.

Since
QGIS 3.10

Definition at line 147 of file qgsstylemodel.h.

Friends And Related Function Documentation

◆ QgsCombinedStyleModel

friend class QgsCombinedStyleModel
friend

Definition at line 209 of file qgsstylemodel.h.


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