Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_layer_utils.h File Reference
#include <functional>
#include "kundo2command.h"
#include "kis_types.h"
#include "kritaimage_export.h"
#include "kis_command_utils.h"
#include "kis_time_span.h"
#include "kis_image.h"
#include <future>

Go to the source code of this file.

Classes

class  KisLayerUtils::KeepNodesSelectedCommand
 
class  KisLayerUtils::KisSimpleUpdateCommand
 
class  KisLayerUtils::RemoveNodeHelper
 
struct  KisLayerUtils::RemoveNodeHelper::ReplacementNode
 
struct  KisLayerUtils::SelectGlobalSelectionMask
 
struct  KisLayerUtils::SwitchFrameCommand::SharedStorage
 
struct  KisLayerUtils::SimpleRemoveLayers
 
struct  KisLayerUtils::SwitchFrameCommand
 The SwitchFrameCommand struct Switches to frame with undo/redo support. More...
 

Namespaces

namespace  KisLayerUtils
 
 

Typedefs

typedef QMap< int, QSet< KisNodeSP > > KisLayerUtils::FrameJobs
 

Enumerations

enum  KisLayerUtils::MergeFlag { KisLayerUtils::None , KisLayerUtils::SkipMergingFrames = 0x1 }
 

Functions

void KisLayerUtils::addCopyOfNameTag (KisNodeSP node)
 
bool KisLayerUtils::canChangeImageProfileInvisibly (KisImageSP image)
 
void KisLayerUtils::changeImageDefaultProjectionColor (KisImageSP image, const KoColor &color)
 
bool KisLayerUtils::checkIsChildOf (KisNodeSP node, const KisNodeList &parents)
 
bool KisLayerUtils::checkIsCloneOf (KisNodeSP node, const KisNodeList &nodes)
 
template<typename T >
bool KisLayerUtils::checkNodesDiffer (KisNodeList nodes, std::function< T(KisNodeSP)> checkerFunc)
 
std::future< KisNodeSPKisLayerUtils::convertToPaintLayer (KisImageSP image, KisNodeSP src)
 
KisTimeSpan KisLayerUtils::fetchLayerActiveRasterFrameSpan (KisNodeSP node, const int time)
 
int KisLayerUtils::fetchLayerActiveRasterFrameTime (KisNodeSP node)
 
QSet< int > KisLayerUtils::fetchLayerFrames (KisNodeSP node)
 
QSet< int > KisLayerUtils::fetchLayerFramesRecursive (KisNodeSP rootNode)
 
QSet< int > KisLayerUtils::fetchLayerIdenticalRasterFrameTimes (KisNodeSP node, const int &frameTime)
 
QSet< int > KisLayerUtils::fetchUniqueFrameTimes (KisNodeSP node, QSet< int > selectedTimes, bool filterActiveFrameID)
 
void KisLayerUtils::filterMergeableNodes (KisNodeList &nodes, bool allowMasks)
 
QSet< int > KisLayerUtils::filterTimesForOnlyRasterKeyedTimes (KisNodeSP node, const QSet< int > &times)
 
void KisLayerUtils::filterUnlockedNodes (KisNodeList &nodes)
 
KisImageSP KisLayerUtils::findImageByHierarchy (KisNodeSP node)
 
KisNodeSP KisLayerUtils::findNodeByName (KisNodeSP root, const QString &name)
 
template<class T >
T * KisLayerUtils::findNodeByType (KisNodeSP root)
 
KisNodeSP KisLayerUtils::findNodeByUuid (KisNodeSP root, const QUuid &uuid)
 
QList< KisNodeSPKisLayerUtils::findNodesByName (KisNodeSP root, const QString &name, bool recursive, bool partialMatch)
 
KisNodeList KisLayerUtils::findNodesWithProps (KisNodeSP root, const KoProperties &props, bool excludeRoot)
 
KisNodeSP KisLayerUtils::findRoot (KisNodeSP node)
 
void KisLayerUtils::flattenImage (KisImageSP image, KisNodeSP activeNode, MergeFlags flags)
 
void KisLayerUtils::flattenLayer (KisImageSP image, KisLayerSP layer, MergeFlags flags)
 
void KisLayerUtils::forceAllDelayedNodesUpdate (KisNodeSP root)
 
void KisLayerUtils::forceAllHiddenOriginalsUpdate (KisNodeSP root)
 
bool KisLayerUtils::hasDelayedNodeWithUpdates (KisNodeSP root)
 
void KisLayerUtils::mergeDown (KisImageSP image, KisLayerSP layer, const KisMetaData::MergeStrategy *strategy, MergeFlags flags)
 
void KisLayerUtils::mergeMultipleLayers (KisImageSP image, KisNodeList mergedNodes, KisNodeSP putAfter, MergeFlags flags)
 
void KisLayerUtils::mergeMultipleNodes (KisImageSP image, KisNodeList mergedNodes, KisNodeSP putAfter, MergeFlags flags)
 
void KisLayerUtils::newLayerFromVisible (KisImageSP image, KisNodeSP putAfter, MergeFlags flags)
 
 Q_DECLARE_OPERATORS_FOR_FLAGS (KisLayerUtils::MergeFlags)
 
template<typename NodePointer , typename Functor >
void KisLayerUtils::recursiveApplyNodes (NodePointer node, Functor func)
 
KisNodeSP KisLayerUtils::recursiveFindNode (KisNodeSP node, std::function< bool(KisNodeSP)> func)
 
QRect KisLayerUtils::recursiveTightNodeVisibleBounds (KisNodeSP rootNode)
 
void KisLayerUtils::refreshHiddenAreaAsync (KisImageSP image, KisNodeSP rootNode, const QRect &preparedArea)
 
KisNodeList KisLayerUtils::sortAndFilterAnyMergeableNodesSafe (const KisNodeList &nodes, KisImageSP image)
 
KisNodeList KisLayerUtils::sortAndFilterMergeableInternalNodes (KisNodeList nodes, bool allowMasks)
 
KisNodeList KisLayerUtils::sortMergeableInternalNodes (KisNodeList nodes)
 
KisNodeList KisLayerUtils::sortMergeableNodes (KisNodeSP root, KisNodeList nodes)
 
KRITAIMAGE_EXPORT void KisLayerUtils::sortMergeableNodes (KisNodeSP root, QList< KisNodeSP > &inputNodes, QList< KisNodeSP > &outputNodes)
 
void KisLayerUtils::splitAlphaToMask (KisImageSP image, KisNodeSP node, const QString &maskName)
 
bool KisLayerUtils::tryMergeSelectionMasks (KisImageSP image, KisNodeList mergedNodes, KisNodeSP putAfter)
 
void KisLayerUtils::updateFrameJobs (FrameJobs *jobs, KisNodeSP node)
 
void KisLayerUtils::updateFrameJobsRecursive (FrameJobs *jobs, KisNodeSP rootNode)
 

Function Documentation

◆ Q_DECLARE_OPERATORS_FOR_FLAGS()

Q_DECLARE_OPERATORS_FOR_FLAGS ( KisLayerUtils::MergeFlags )