|
Krita Source Code Documentation
|
The KisPSDLayerStyle class implements loading, saving and applying the PSD layer effects. More...
#include <kis_psd_layer_style.h>
Inheritance diagram for KisPSDLayerStyle:Public Member Functions | |
| psd_layer_effects_bevel_emboss * | bevelAndEmboss () |
| const psd_layer_effects_bevel_emboss * | bevelAndEmboss () const |
| void | clear () |
| void | clearSideLoadedResources () override |
| KoResourceSP | clone () const override |
| KisPSDLayerStyleSP | cloneWithResourcesSnapshot (KisResourcesInterfaceSP globalResourcesInterface, KoCanvasResourcesInterfaceSP canvasResourcesInterface) const |
| psd_layer_effects_color_overlay * | colorOverlay () |
| const psd_layer_effects_color_overlay * | colorOverlay () const |
| psd_layer_effects_context * | context () |
| const psd_layer_effects_context * | context () const |
| psd_layer_effects_drop_shadow * | dropShadow () |
| const psd_layer_effects_drop_shadow * | dropShadow () const |
| psd_layer_effects_gradient_overlay * | gradientOverlay () |
| const psd_layer_effects_gradient_overlay * | gradientOverlay () const |
| bool | hasLocalResourcesSnapshot () const |
| psd_layer_effects_inner_glow * | innerGlow () |
| const psd_layer_effects_inner_glow * | innerGlow () const |
| psd_layer_effects_inner_shadow * | innerShadow () |
| const psd_layer_effects_inner_shadow * | innerShadow () const |
| bool | isEmpty () const |
| bool | isEnabled () const |
| bool | isSerializable () const override |
| KisPSDLayerStyle (const KisPSDLayerStyle &rhs) | |
| KisPSDLayerStyle (const QString &filename="", KisResourcesInterfaceSP resourcesInterface=KisResourcesInterfaceSP()) | |
| QList< KoResourceLoadResult > | linkedResources (KisResourcesInterfaceSP globalResourcesInterface) const override |
| bool | loadFromDevice (QIODevice *dev, KisResourcesInterfaceSP resourcesInterface) override |
| QString | name () const override |
| KisPSDLayerStyle | operator= (const KisPSDLayerStyle &rhs)=delete |
| Private | operator= (const Private &rhs) |
| psd_layer_effects_outer_glow * | outerGlow () |
| const psd_layer_effects_outer_glow * | outerGlow () const |
| psd_layer_effects_pattern_overlay * | patternOverlay () |
| const psd_layer_effects_pattern_overlay * | patternOverlay () const |
| Private (const Private &rhs) | |
| Private (KisResourcesInterfaceSP _resourcesInterface) | |
| QString | psdUuid () const |
| QList< int > | requiredCanvasResources () const override |
| KisResourcesInterfaceSP | resourcesInterface () const |
| QPair< QString, QString > | resourceType () const override |
| psd_layer_effects_satin * | satin () |
| const psd_layer_effects_satin * | satin () const |
| bool | saveToDevice (QIODevice *dev) const override |
| void | setEnabled (bool value) |
| void | setName (const QString &value) |
| void | setPsdUuid (const QString &value) |
| void | setResourcesInterface (KisResourcesInterfaceSP resourcesInterface) |
| void | setUuid (const QUuid &value) |
| QList< KoResourceLoadResult > | sideLoadedResources (KisResourcesInterfaceSP globalResourcesInterface) const override |
| psd_layer_effects_stroke * | stroke () |
| const psd_layer_effects_stroke * | stroke () const |
| QUuid | uuid () const |
| virtual | ~KisPSDLayerStyle () |
Public Member Functions inherited from Private | |
| Private (KisCanvas2 *c) | |
Public Member Functions inherited from KoResource | |
| bool | active () const |
| void | addMetaData (QString key, QVariant value) |
| store the given key, value pair in the resource | |
| virtual QString | defaultFileExtension () const |
| virtual QList< KoResourceLoadResult > | embeddedResources (KisResourcesInterfaceSP globalResourcesInterface) const |
| QString | filename () const |
| QImage | image () const |
| bool | isDirty () const |
| virtual bool | isEphemeral () const |
| KoResource () | |
| KoResource (const KoResource &rhs) | |
| KoResource (const QString &filename) | |
| bool | load (KisResourcesInterfaceSP resourcesInterface) |
| QString | md5Sum (bool generateIfEmpty=true) const |
| QMap< QString, QVariant > | metadata () const |
| get a map with all the metadata | |
| KoResource & | operator= (const KoResource &rhs)=delete |
| bool | permanent () const |
| QList< KoResourceLoadResult > | requiredResources (KisResourcesInterfaceSP globalResourcesInterface) const |
| int | resourceId () const |
| bool | save () |
| void | setActive (bool active) |
| void | setDirty (bool value) |
| Mark the preset as modified but not saved. | |
| void | setFilename (const QString &filename) |
| void | setImage (const QImage &image) |
| void | setMD5Sum (const QString &md5sum) |
| Set the md5sum of this resource. It must be in hex-encoded string format. | |
| void | setName (const QString &name) |
| void | setPermanent (bool permanent) |
| void | setResourceId (int id) |
| void | setStorageLocation (const QString &location) |
| void | setValid (bool valid) |
| void | setVersion (int version) |
| KoResourceSignature | signature () const |
| QString | storageLocation () const |
| QList< KoResourceLoadResult > | takeSideLoadedResources (KisResourcesInterfaceSP globalResourcesInterface) |
| virtual QImage | thumbnail () const |
| thumbnail the thumbnail image to use in resource selectors | |
| virtual QString | thumbnailPath () const |
| thumbnailPath returns the path to a separate thumbnail image, outside the actual resource file itself. If the path is relative, it is supposed start in the same location as the resource itself. If it's absolute, that is, it starts with "/", it is from the root of the storage. | |
| virtual void | updateThumbnail () |
| updateThumbnail updates the thumbnail for this resource. Reimplement if your thumbnail is something else than the image set with setImage. | |
| bool | valid () const |
| int | version () const |
| Get the version of the resource. | |
| virtual | ~KoResource () |
Private Member Functions | |
| void | setSideLoadedResources (const QList< KoEmbeddedResource > &value) |
Private Attributes | |
| Private *const | d |
Friends | |
| class | KisAslLayerStyleSerializer |
| class | KisDlgLayerStyle |
The KisPSDLayerStyle class implements loading, saving and applying the PSD layer effects.
See https://www.tonton-pixel.com/Photoshop%20Additional%20File%20Formats/styles-file-format.html
Definition at line 26 of file kis_psd_layer_style.cpp.
| KisPSDLayerStyle::KisPSDLayerStyle | ( | const QString & | filename = "", |
| KisResourcesInterfaceSP | resourcesInterface = KisResourcesInterfaceSP() ) |
Definition at line 102 of file kis_psd_layer_style.cpp.
References d.
|
virtual |
| KisPSDLayerStyle::KisPSDLayerStyle | ( | const KisPSDLayerStyle & | rhs | ) |
Definition at line 115 of file kis_psd_layer_style.cpp.
References KoResource::setValid(), and KoResource::valid.
| psd_layer_effects_bevel_emboss * KisPSDLayerStyle::bevelAndEmboss | ( | ) |
Definition at line 315 of file kis_psd_layer_style.cpp.
References d.
| const psd_layer_effects_bevel_emboss * KisPSDLayerStyle::bevelAndEmboss | ( | ) | const |
Definition at line 260 of file kis_psd_layer_style.cpp.
References d.
| void KisPSDLayerStyle::clear | ( | ) |
|
overridevirtual |
Clears memory under side-loaded resources. The method is called by KisResourceLocator after the resources have been fetched and added to the global store.
Reimplemented from KoResource.
Definition at line 415 of file kis_psd_layer_style.cpp.
References d.
|
overridevirtual |
Implements KoResource.
Definition at line 132 of file kis_psd_layer_style.cpp.
References KisPSDLayerStyle(), and toQShared().
| KisPSDLayerStyleSP KisPSDLayerStyle::cloneWithResourcesSnapshot | ( | KisResourcesInterfaceSP | globalResourcesInterface, |
| KoCanvasResourcesInterfaceSP | canvasResourcesInterface ) const |
Passing null into cloneWithResourcesSnapshot() means that we expect all the canvas resources to be backed into the style. That is exactly what we expect when loading the styles saved in the layers.
Since we haven't cloned the required resources when putting them into the local storage (which is rather questionable), we need to clone the gradients explicitly before modification.
Definition at line 335 of file kis_psd_layer_style.cpp.
References isEmpty(), KIS_ASSERT_RECOVER_RETURN_VALUE, name, ppVar, psd_fill_gradient, and requiredCanvasResources().
| psd_layer_effects_color_overlay * KisPSDLayerStyle::colorOverlay | ( | ) |
Definition at line 295 of file kis_psd_layer_style.cpp.
References d.
| const psd_layer_effects_color_overlay * KisPSDLayerStyle::colorOverlay | ( | ) | const |
Definition at line 240 of file kis_psd_layer_style.cpp.
References d.
| psd_layer_effects_context * KisPSDLayerStyle::context | ( | ) |
| const psd_layer_effects_context * KisPSDLayerStyle::context | ( | ) | const |
| psd_layer_effects_drop_shadow * KisPSDLayerStyle::dropShadow | ( | ) |
Definition at line 270 of file kis_psd_layer_style.cpp.
References d.
| const psd_layer_effects_drop_shadow * KisPSDLayerStyle::dropShadow | ( | ) | const |
Definition at line 215 of file kis_psd_layer_style.cpp.
References d.
| psd_layer_effects_gradient_overlay * KisPSDLayerStyle::gradientOverlay | ( | ) |
Definition at line 300 of file kis_psd_layer_style.cpp.
References d.
| const psd_layer_effects_gradient_overlay * KisPSDLayerStyle::gradientOverlay | ( | ) | const |
Definition at line 245 of file kis_psd_layer_style.cpp.
References d.
| bool KisPSDLayerStyle::hasLocalResourcesSnapshot | ( | ) | const |
Definition at line 330 of file kis_psd_layer_style.cpp.
References KisRequiredResourcesOperators::hasLocalResourcesSnapshot().
| psd_layer_effects_inner_glow * KisPSDLayerStyle::innerGlow | ( | ) |
Definition at line 285 of file kis_psd_layer_style.cpp.
References d.
| const psd_layer_effects_inner_glow * KisPSDLayerStyle::innerGlow | ( | ) | const |
Definition at line 230 of file kis_psd_layer_style.cpp.
References d.
| psd_layer_effects_inner_shadow * KisPSDLayerStyle::innerShadow | ( | ) |
Definition at line 275 of file kis_psd_layer_style.cpp.
References d.
| const psd_layer_effects_inner_shadow * KisPSDLayerStyle::innerShadow | ( | ) | const |
Definition at line 220 of file kis_psd_layer_style.cpp.
References d.
| bool KisPSDLayerStyle::isEmpty | ( | ) | const |
Definition at line 160 of file kis_psd_layer_style.cpp.
References d.
| bool KisPSDLayerStyle::isEnabled | ( | ) | const |
Definition at line 122 of file kis_psd_layer_style.cpp.
References d.
|
overridevirtual |
Serializable resource is the one which can be saved/loaded into a specific storage via saveToDevice()/loadFromDevice() methods. Some resources, like KisAbrBrush or KisPsdLayerStyle, are stored in specific libraries in "batches". Such resources cannot be saved individually. They are created by the corresponding factories.
In contrast to ephemeral resource, non-serializable resource will always have a correct md5Sum() and may be stored in the resources database.
Reimplemented from KoResource.
Definition at line 137 of file kis_psd_layer_style.cpp.
|
overridevirtual |
globalResourcesInterface. If fetching of some resources is failed, then (*this) resource is invalid. Reimplemented from KoResource.
Definition at line 425 of file kis_psd_layer_style.cpp.
References KisAslLayerStyleSerializer::fetchLinkedResourceSignatures(), KoResourceSignature::filename, KoResourceSignature::md5sum, KoResourceSignature::name, and KoResourceSignature::type.
|
overridevirtual |
Implements KoResource.
Definition at line 142 of file kis_psd_layer_style.cpp.
References resourcesInterface.
|
overridevirtual |
Reimplemented from KoResource.
|
delete |
Definition at line 57 of file kis_psd_layer_style.cpp.
| psd_layer_effects_outer_glow * KisPSDLayerStyle::outerGlow | ( | ) |
Definition at line 280 of file kis_psd_layer_style.cpp.
References d.
| const psd_layer_effects_outer_glow * KisPSDLayerStyle::outerGlow | ( | ) | const |
Definition at line 225 of file kis_psd_layer_style.cpp.
References d.
| psd_layer_effects_pattern_overlay * KisPSDLayerStyle::patternOverlay | ( | ) |
Definition at line 305 of file kis_psd_layer_style.cpp.
References d.
| const psd_layer_effects_pattern_overlay * KisPSDLayerStyle::patternOverlay | ( | ) | const |
Definition at line 250 of file kis_psd_layer_style.cpp.
References d.
|
inline |
Definition at line 38 of file kis_psd_layer_style.cpp.
|
inline |
Definition at line 28 of file kis_psd_layer_style.cpp.
| QString KisPSDLayerStyle::psdUuid | ( | ) | const |
Definition at line 200 of file kis_psd_layer_style.cpp.
References uuid.
|
overridevirtual |
A list of per-canvas active resources that are needed for this resource to function properly. E.g. some gradients may require Fg/Bg colors and some presets would like to know about the current gradient selection.
Reimplemented from KoResource.
Definition at line 437 of file kis_psd_layer_style.cpp.
References effectEnabled, psd_layer_effects_shadow_base::effectEnabled(), gradientOverlay(), innerGlow(), KritaUtils::makeContainerUnique(), outerGlow(), psd_fill_gradient, resourcesInterface, and stroke.
| KisResourcesInterfaceSP KisPSDLayerStyle::resourcesInterface | ( | ) | const |
|
inlineoverridevirtual |
Implements KoResource.
Definition at line 55 of file kis_psd_layer_style.h.
References ResourceType::LayerStyles.
| psd_layer_effects_satin * KisPSDLayerStyle::satin | ( | ) |
| const psd_layer_effects_satin * KisPSDLayerStyle::satin | ( | ) | const |
|
overridevirtual |
Reimplemented from KoResource.
Definition at line 149 of file kis_psd_layer_style.cpp.
References KIS_SAFE_ASSERT_RECOVER_NOOP.
| void KisPSDLayerStyle::setEnabled | ( | bool | value | ) |
Definition at line 127 of file kis_psd_layer_style.cpp.
| void KisPSDLayerStyle::setName | ( | const QString & | value | ) |
Definition at line 179 of file kis_psd_layer_style.cpp.
| void KisPSDLayerStyle::setPsdUuid | ( | const QString & | value | ) |
Definition at line 205 of file kis_psd_layer_style.cpp.
| void KisPSDLayerStyle::setResourcesInterface | ( | KisResourcesInterfaceSP | resourcesInterface | ) |
Set resource interface that will be used by KisPSDLayerStyle object for loading linked resources
Definition at line 325 of file kis_psd_layer_style.cpp.
References d, and resourcesInterface.
|
private |
| void KisPSDLayerStyle::setUuid | ( | const QUuid & | value | ) |
Definition at line 194 of file kis_psd_layer_style.cpp.
References d, KoMD5Generator::generateHash(), KoResource::setMD5Sum(), and value().
|
overridevirtual |
Side-loaded resources are the resources embedded into the file format and loaded alongside the main resource. After being loaded in loadFromDevice() they are stored separately and may be fetched by the resource locator.
After the locator has loaded them into the global storage, it can free the memory by calling clearSideLoadedResources().
Reimplemented from KoResource.
| psd_layer_effects_stroke * KisPSDLayerStyle::stroke | ( | ) |
| const psd_layer_effects_stroke * KisPSDLayerStyle::stroke | ( | ) | const |
| QUuid KisPSDLayerStyle::uuid | ( | ) | const |
|
friend |
Definition at line 126 of file kis_psd_layer_style.h.
|
friend |
Definition at line 125 of file kis_psd_layer_style.h.
| psd_layer_effects_bevel_emboss KisPSDLayerStyle::bevel_emboss |
Definition at line 90 of file kis_psd_layer_style.cpp.
| psd_layer_effects_color_overlay KisPSDLayerStyle::color_overlay |
Definition at line 92 of file kis_psd_layer_style.cpp.
| psd_layer_effects_context * KisPSDLayerStyle::context |
Definition at line 85 of file kis_psd_layer_style.cpp.
|
private |
Definition at line 131 of file kis_psd_layer_style.h.
| psd_layer_effects_drop_shadow KisPSDLayerStyle::drop_shadow |
Definition at line 86 of file kis_psd_layer_style.cpp.
| bool KisPSDLayerStyle::effectEnabled |
Definition at line 84 of file kis_psd_layer_style.cpp.
| psd_layer_effects_gradient_overlay KisPSDLayerStyle::gradient_overlay |
Definition at line 93 of file kis_psd_layer_style.cpp.
| psd_layer_effects_inner_glow KisPSDLayerStyle::inner_glow |
Definition at line 89 of file kis_psd_layer_style.cpp.
| psd_layer_effects_inner_shadow KisPSDLayerStyle::inner_shadow |
Definition at line 87 of file kis_psd_layer_style.cpp.
| QString KisPSDLayerStyle::name |
Definition at line 81 of file kis_psd_layer_style.cpp.
| psd_layer_effects_outer_glow KisPSDLayerStyle::outer_glow |
Definition at line 88 of file kis_psd_layer_style.cpp.
| psd_layer_effects_pattern_overlay KisPSDLayerStyle::pattern_overlay |
Definition at line 94 of file kis_psd_layer_style.cpp.
| KisResourcesInterfaceSP KisPSDLayerStyle::resourcesInterface |
Definition at line 97 of file kis_psd_layer_style.cpp.
| psd_layer_effects_satin * KisPSDLayerStyle::satin |
Definition at line 91 of file kis_psd_layer_style.cpp.
| QList< KoResourceLoadResult > KisPSDLayerStyle::sideLoadedResources |
Do not load the existing resources. There is no use for it.
Definition at line 99 of file kis_psd_layer_style.cpp.
| psd_layer_effects_stroke * KisPSDLayerStyle::stroke |
Definition at line 95 of file kis_psd_layer_style.cpp.
| QUuid KisPSDLayerStyle::uuid |
Definition at line 82 of file kis_psd_layer_style.cpp.
| quint16 KisPSDLayerStyle::version |
Definition at line 83 of file kis_psd_layer_style.cpp.