26 qDeleteAll( mMetadata );
31 if ( !metadata || mMetadata.contains( metadata->
type() ) )
34 mMetadata[metadata->
type()] = metadata;
35 mMaterialsOrder << metadata->
type();
41 if ( !mMetadata.contains( type ) )
44 return mMetadata[type]->create();
49 return mMetadata.value( type );
55 for (
const QString &material : mMaterialsOrder )
57 if ( mMetadata.value( material ) )
Abstract base class for material settings.
bool addMaterialSettingsType(QgsMaterialSettingsAbstractMetadata *metadata)
Registers a new material settings type. Takes ownership of the metadata instance.
QgsMaterialSettingsAbstractMetadata * materialSettingsMetadata(const QString &type) const
Returns metadata for specified material settings type. Returns nullptr if not found.
QgsAbstractMaterialSettings * createMaterialSettings(const QString &type) const
Creates a new instance of the material settings of the specified type.
QStringList materialSettingsTypes() const
Returns a list of all available material settings types.