Krita Source Code Documentation
Loading...
Searching...
No Matches
KisLayerUtils::DisableExtraCompositing Struct Reference
+ Inheritance diagram for KisLayerUtils::DisableExtraCompositing:

Public Member Functions

 DisableExtraCompositing (MergeMultipleInfoSP info)
 
void populateChildCommands () override
 
- Public Member Functions inherited from KisCommandUtils::AggregateCommand
 AggregateCommand (const KUndo2MagicString &text, KUndo2Command *parent=0)
 
 AggregateCommand (KUndo2Command *parent=0)
 
void redo () override
 
void undo () override
 
- Public Member Functions inherited from KUndo2Command
QString actionText () const
 
virtual bool canAnnihilateWith (const KUndo2Command *other) const
 
const KUndo2Commandchild (int index) const
 
int childCount () const
 
virtual QTime endTime () const
 
KUndo2CommandExtraDataextraData () const
 
bool hasParent () const
 
virtual int id () const
 
virtual bool isMerged () const
 
 KUndo2Command (const KUndo2MagicString &text, KUndo2Command *parent=0)
 
 KUndo2Command (KUndo2Command *parent=0)
 
virtual QVector< KUndo2Command * > mergeCommandsVector () const
 
virtual bool mergeWith (const KUndo2Command *other)
 
virtual void redoMergedCommands ()
 
void setEndTime ()
 
virtual void setEndTime (const QTime &time)
 
void setExtraData (KUndo2CommandExtraData *data)
 
void setText (const KUndo2MagicString &text)
 
void setTime ()
 
virtual void setTime (const QTime &time)
 
virtual void setTimedID (int timedID)
 
KUndo2MagicString text () const
 
virtual QTime time () const
 
virtual int timedId () const
 
virtual bool timedMergeWith (KUndo2Command *other)
 
virtual void undoMergedCommands ()
 
virtual ~KUndo2Command ()
 

Private Attributes

MergeMultipleInfoSP m_info
 

Additional Inherited Members

- Protected Member Functions inherited from KisCommandUtils::AggregateCommand
void addCommand (KUndo2Command *cmd)
 

Detailed Description

Definition at line 426 of file kis_layer_utils.cpp.

Constructor & Destructor Documentation

◆ DisableExtraCompositing()

KisLayerUtils::DisableExtraCompositing::DisableExtraCompositing ( MergeMultipleInfoSP info)
inline

Definition at line 427 of file kis_layer_utils.cpp.

427: m_info(info) {}

Member Function Documentation

◆ populateChildCommands()

void KisLayerUtils::DisableExtraCompositing::populateChildCommands ( )
inlineoverridevirtual

We disable extra compositing only in case all the layers have the same compositing properties, therefore, we can just sum them using Normal blend mode

Implements KisCommandUtils::AggregateCommand.

Definition at line 429 of file kis_layer_utils.cpp.

429 {
435 if (m_info->nodesCompositingVaries) return;
436
437 // we should disable dirty requests on **redo only**, otherwise
438 // the state of the layers will not be recovered on undo
439 m_info->image->disableDirtyRequests();
440
441 Q_FOREACH (KisNodeSP node, m_info->allSrcNodes()) {
442 if (node->compositeOpId() != COMPOSITE_OVER) {
444 }
445
447
451 false);
452
453 addCommand(new KisNodePropertyListCommand(node, props));
454 }
455 }
456
457 m_info->image->enableDirtyRequests();
458 }
const QString COMPOSITE_OVER
static QVariant nodeProperty(KisNodeSP node, const KoID &id, const QVariant &defaultValue)
static void setNodeProperty(KisBaseNode::PropertyList *props, const KoID &id, const QVariant &value)
The command for setting the composite op.
The command for changing the property list of a layer.
const QString & compositeOpId() const
virtual PropertyList sectionModelProperties() const
void addCommand(KUndo2Command *cmd)

References KisCommandUtils::AggregateCommand::addCommand(), COMPOSITE_OVER, KisBaseNode::compositeOpId(), KisLayerPropertiesIcons::inheritAlpha, m_info, KisLayerPropertiesIcons::nodeProperty(), KisBaseNode::sectionModelProperties(), and KisLayerPropertiesIcons::setNodeProperty().

Member Data Documentation

◆ m_info

MergeMultipleInfoSP KisLayerUtils::DisableExtraCompositing::m_info
private

Definition at line 461 of file kis_layer_utils.cpp.


The documentation for this struct was generated from the following file: