[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [krita/rempt/impex-refactoring] /: Prepare qobject_cast over dynamic_cast
From: Frederik Gladhorn <gladhorn () kde ! org>
Date: 2016-11-15 22:00:47
Message-ID: E1c6lmZ-00013p-7x () code ! kde ! org
[Download RAW message or body]
Git commit 0a5e8a72182db904949025ccaf0d3f993c62b6fd by Frederik Gladhorn.
Committed on 15/11/2016 at 21:26.
Pushed by gladhorn into branch 'rempt/impex-refactoring'.
Prepare qobject_cast over dynamic_cast
This is a simple search and replace for KisLayer which is a QObject.
qobject_cast doesn't require RTTI and is faster.
M +1 -1 libs/image/commands/kis_image_layer_remove_command_impl.cpp
M +1 -1 libs/image/commands_new/kis_activate_selection_mask_command.cpp
M +1 -1 libs/image/generator/kis_generator_layer.cpp
M +2 -2 libs/image/kis_colorspace_convert_visitor.cpp
M +1 -1 libs/image/kis_group_layer.cc
M +1 -1 libs/image/kis_image.cc
M +1 -1 libs/image/kis_layer.cc
M +9 -9 libs/image/kis_layer_utils.cpp
M +1 -1 libs/image/kis_node.cpp
M +1 -1 libs/image/kis_processing_applicator.cpp
M +1 -1 libs/image/kis_recalculate_transform_mask_job.cpp
M +1 -1 libs/image/kis_selection_mask.cpp
M +5 -5 libs/image/kis_transform_mask.cpp
M +3 -3 libs/image/lazybrush/kis_colorize_mask.cpp
M +1 -1 libs/image/recorder/kis_recorded_filter_action.cpp
M +2 -2 libs/image/tests/kis_image_test.cpp
M +2 -2 libs/ui/KisSaveGroupVisitor.cpp
M +1 -1 libs/ui/KisView.cpp
M +1 -1 libs/ui/dialogs/kis_dlg_filter.cpp
M +1 -1 libs/ui/kis_action_manager.cpp
M +2 -2 libs/ui/kis_layer_manager.cc
M +2 -2 libs/ui/kis_mask_manager.cc
M +1 -1 libs/ui/kis_mimedata.cpp
M +1 -1 libs/ui/kis_multinode_property.h
M +2 -2 libs/ui/kis_node_manager.cpp
M +2 -2 libs/ui/kis_psd_layer_style_resource.cpp
M +2 -2 libs/ui/tool/kis_resources_snapshot.cpp
M +1 -1 libs/ui/tool/kis_tool_utils.cpp
M +1 -1 libs/ui/widgets/kis_image_from_clipboard_widget.cpp
M +1 -1 plugins/impex/csv/csv_saver.cpp
M +2 -2 plugins/impex/libkra/kis_kra_load_visitor.cpp
M +1 -1 plugins/impex/psd/psd_export.cc
M +1 -1 plugins/impex/psd/psd_layer_section.cpp
M +5 -5 plugins/impex/psd/tests/kis_psd_test.cpp
http://commits.kde.org/krita/0a5e8a72182db904949025ccaf0d3f993c62b6fd
diff --git a/libs/image/commands/kis_image_layer_remove_command_impl.cpp \
b/libs/image/commands/kis_image_layer_remove_command_impl.cpp index 124afa8..485941c \
100644
--- a/libs/image/commands/kis_image_layer_remove_command_impl.cpp
+++ b/libs/image/commands/kis_image_layer_remove_command_impl.cpp
@@ -97,7 +97,7 @@ void KisImageLayerRemoveCommandImpl::Private::restoreClones()
void KisImageLayerRemoveCommandImpl::Private::processClones(KisNodeSP node)
{
- KisLayerSP layer(dynamic_cast<KisLayer*>(node.data()));
+ KisLayerSP layer(qobject_cast<KisLayer*>(node.data()));
if(!layer || !layer->hasClones()) return;
if(reincarnatedNodes.isEmpty()) {
diff --git a/libs/image/commands_new/kis_activate_selection_mask_command.cpp \
b/libs/image/commands_new/kis_activate_selection_mask_command.cpp index \
9670ad5..645cc7d 100644
--- a/libs/image/commands_new/kis_activate_selection_mask_command.cpp
+++ b/libs/image/commands_new/kis_activate_selection_mask_command.cpp
@@ -27,7 +27,7 @@ KisActivateSelectionMaskCommand::KisActivateSelectionMaskCommand(KisSelectionMas
m_value(value)
{
if (m_previousActiveMask != m_selectionMask) {
- KisLayerSP parent(dynamic_cast<KisLayer*>(selectionMask->parent().data()));
+ KisLayerSP parent(qobject_cast<KisLayer*>(selectionMask->parent().data()));
if (parent) {
m_previousActiveMask = parent->selectionMask();
}
diff --git a/libs/image/generator/kis_generator_layer.cpp \
b/libs/image/generator/kis_generator_layer.cpp index 7dc6bc5..5dc9981 100644
--- a/libs/image/generator/kis_generator_layer.cpp
+++ b/libs/image/generator/kis_generator_layer.cpp
@@ -82,7 +82,7 @@ void KisGeneratorLayer::slotDelayedStaticUpdate()
* meanwhile. Just ignore the updates in the case.
*/
- KisLayerSP parentLayer(dynamic_cast<KisLayer*>(parent().data()));
+ KisLayerSP parentLayer(qobject_cast<KisLayer*>(parent().data()));
if (!parentLayer) return;
KisImageSP image = parentLayer->image();
diff --git a/libs/image/kis_colorspace_convert_visitor.cpp \
b/libs/image/kis_colorspace_convert_visitor.cpp index 40dca99..3ea96fd 100644
--- a/libs/image/kis_colorspace_convert_visitor.cpp
+++ b/libs/image/kis_colorspace_convert_visitor.cpp
@@ -53,10 +53,10 @@ KisColorSpaceConvertVisitor::~KisColorSpaceConvertVisitor()
bool KisColorSpaceConvertVisitor::visit(KisGroupLayer * layer)
{
convertPaintDevice(layer);
- KisLayerSP child = dynamic_cast<KisLayer*>(layer->firstChild().data());
+ KisLayerSP child = qobject_cast<KisLayer*>(layer->firstChild().data());
while (child) {
child->accept(*this);
- child = dynamic_cast<KisLayer*>(child->nextSibling().data());
+ child = qobject_cast<KisLayer*>(child->nextSibling().data());
}
layer->resetCache();
diff --git a/libs/image/kis_group_layer.cc b/libs/image/kis_group_layer.cc
index 3567ade..4e8e1e6 100644
--- a/libs/image/kis_group_layer.cc
+++ b/libs/image/kis_group_layer.cc
@@ -206,7 +206,7 @@ KisLayer* KisGroupLayer::onlyMeaningfulChild() const
KisLayer *onlyLayer = 0;
while (child) {
- KisLayer *layer = dynamic_cast<KisLayer*>(child);
+ KisLayer *layer = qobject_cast<KisLayer*>(child);
if (layer) {
if (onlyLayer) return 0;
onlyLayer = layer;
diff --git a/libs/image/kis_image.cc b/libs/image/kis_image.cc
index 93c9915..63e2c79 100644
--- a/libs/image/kis_image.cc
+++ b/libs/image/kis_image.cc
@@ -579,7 +579,7 @@ void KisImage::cropImage(const QRect& newRect)
void KisImage::cropNode(KisNodeSP node, const QRect& newRect)
{
- bool isLayer = dynamic_cast<KisLayer*>(node.data());
+ bool isLayer = qobject_cast<KisLayer*>(node.data());
KUndo2MagicString actionName = isLayer ?
kundo2_i18n("Crop Layer") :
kundo2_i18n("Crop Mask");
diff --git a/libs/image/kis_layer.cc b/libs/image/kis_layer.cc
index 8c5b679..38a5daf 100644
--- a/libs/image/kis_layer.cc
+++ b/libs/image/kis_layer.cc
@@ -864,7 +864,7 @@ QRect KisLayer::exactBounds() const
KisLayerSP KisLayer::parentLayer() const
{
- return dynamic_cast<KisLayer*>(parent().data());
+ return qobject_cast<KisLayer*>(parent().data());
}
KisMetaData::Store* KisLayer::metaData()
diff --git a/libs/image/kis_layer_utils.cpp b/libs/image/kis_layer_utils.cpp
index db2db31..74926bb 100644
--- a/libs/image/kis_layer_utils.cpp
+++ b/libs/image/kis_layer_utils.cpp
@@ -56,7 +56,7 @@ namespace KisLayerUtils {
void fetchSelectionMasks(KisNodeList mergedNodes, QVector<KisSelectionMaskSP> \
&selectionMasks) {
foreach (KisNodeSP node, mergedNodes) {
- KisLayerSP layer = dynamic_cast<KisLayer*>(node.data());
+ KisLayerSP layer = qobject_cast<KisLayer*>(node.data());
KisSelectionMaskSP mask;
@@ -111,7 +111,7 @@ namespace KisLayerUtils {
}
KisLayerSP dstLayer() override {
- return dynamic_cast<KisLayer*>(dstNode.data());
+ return qobject_cast<KisLayer*>(dstNode.data());
}
};
@@ -344,7 +344,7 @@ namespace KisLayerUtils {
break;
}
- KisLayerSP layer = dynamic_cast<KisLayer*>(node.data());
+ KisLayerSP layer = qobject_cast<KisLayer*>(node.data());
if (layer && layer->layerStyle()) {
compositionVaries = true;
break;
@@ -506,7 +506,7 @@ namespace KisLayerUtils {
bool RemoveNodeHelper::scanForLastLayer(KisImageWSP image, KisNodeList \
nodesToRemove) { bool removeLayers = false;
Q_FOREACH(KisNodeSP nodeToRemove, nodesToRemove) {
- if (dynamic_cast<KisLayer*>(nodeToRemove.data())) {
+ if (qobject_cast<KisLayer*>(nodeToRemove.data())) {
removeLayers = true;
break;
}
@@ -517,7 +517,7 @@ namespace KisLayerUtils {
KisNodeSP node = image->root()->firstChild();
while (node) {
if (!nodesToRemove.contains(node) &&
- dynamic_cast<KisLayer*>(node.data())) {
+ qobject_cast<KisLayer*>(node.data())) {
lastLayer = false;
break;
@@ -744,7 +744,7 @@ namespace KisLayerUtils {
if (!layer->prevSibling()) return;
// XXX: this breaks if we allow free mixing of masks and layers
- KisLayerSP prevLayer = dynamic_cast<KisLayer*>(layer->prevSibling().data());
+ KisLayerSP prevLayer = qobject_cast<KisLayer*>(layer->prevSibling().data());
if (!prevLayer) return;
if (!layer->visible() && !prevLayer->visible()) {
@@ -878,7 +878,7 @@ namespace KisLayerUtils {
KisNodeList::iterator it = nodes.begin();
while (it != nodes.end()) {
- if ((!allowMasks && !dynamic_cast<KisLayer*>(it->data())) ||
+ if ((!allowMasks && !qobject_cast<KisLayer*>(it->data())) ||
checkIsChildOf(*it, nodes)) {
qDebug() << "Skipping node" << ppVar((*it)->name());
@@ -1124,7 +1124,7 @@ namespace KisLayerUtils {
KisLayerSP parentLayer;
do {
- parentLayer = dynamic_cast<KisLayer*>(parent.data());
+ parentLayer = qobject_cast<KisLayer*>(parent.data());
parent = parent->parent();
} while(!parentLayer && parent);
@@ -1180,7 +1180,7 @@ namespace KisLayerUtils {
if (mergedNodes.isEmpty()) return false;
- KisLayerSP parentLayer = \
dynamic_cast<KisLayer*>(selectionMasks.first()->parent().data()); + KisLayerSP \
parentLayer = qobject_cast<KisLayer*>(selectionMasks.first()->parent().data()); \
KIS_ASSERT_RECOVER(parentLayer) { return 0; }
KisImageSignalVector emitSignals;
diff --git a/libs/image/kis_node.cpp b/libs/image/kis_node.cpp
index 89735eb..14a8765 100644
--- a/libs/image/kis_node.cpp
+++ b/libs/image/kis_node.cpp
@@ -160,7 +160,7 @@ void KisNode::Private::processDuplicatedClones(const KisNode \
*srcDuplicationRoot
clone->copyFrom());
if (newCopyFrom) {
- KisLayer *newCopyFromLayer = \
dynamic_cast<KisLayer*>(const_cast<KisNode*>(newCopyFrom)); + KisLayer \
*newCopyFromLayer = qobject_cast<KisLayer*>(const_cast<KisNode*>(newCopyFrom)); \
KIS_ASSERT_RECOVER_RETURN(newCopyFromLayer);
clone->setCopyFrom(newCopyFromLayer);
diff --git a/libs/image/kis_processing_applicator.cpp \
b/libs/image/kis_processing_applicator.cpp index 310fba5..476ed2e 100644
--- a/libs/image/kis_processing_applicator.cpp
+++ b/libs/image/kis_processing_applicator.cpp
@@ -97,7 +97,7 @@ private:
prevNode = prevNode->prevSibling();
}
- KisLayer *layer = dynamic_cast<KisLayer*>(m_node.data());
+ KisLayer *layer = qobject_cast<KisLayer*>(m_node.data());
if(layer && layer->hasClones()) {
Q_FOREACH (KisCloneLayerSP clone, layer->registeredClones()) {
if(!clone) continue;
diff --git a/libs/image/kis_recalculate_transform_mask_job.cpp \
b/libs/image/kis_recalculate_transform_mask_job.cpp index 7ea2d3a..37518b5 100644
--- a/libs/image/kis_recalculate_transform_mask_job.cpp
+++ b/libs/image/kis_recalculate_transform_mask_job.cpp
@@ -48,7 +48,7 @@ void KisRecalculateTransformMaskJob::run()
m_mask->recaclulateStaticImage();
- KisLayerSP layer = dynamic_cast<KisLayer*>(m_mask->parent().data());
+ KisLayerSP layer = qobject_cast<KisLayer*>(m_mask->parent().data());
if (!layer) {
warnKrita << "WARNING: KisRecalculateTransformMaskJob::run() Mask has no \
parent layer! Skipping projection update!";
diff --git a/libs/image/kis_selection_mask.cpp b/libs/image/kis_selection_mask.cpp
index e24c93f..8ece07e 100644
--- a/libs/image/kis_selection_mask.cpp
+++ b/libs/image/kis_selection_mask.cpp
@@ -150,7 +150,7 @@ bool KisSelectionMask::active() const
void KisSelectionMask::setActive(bool active)
{
KisImageWSP image = this->image();
- KisLayerSP parentLayer = dynamic_cast<KisLayer*>(parent().data());
+ KisLayerSP parentLayer = qobject_cast<KisLayer*>(parent().data());
if (active && parentLayer) {
KisSelectionMaskSP activeMask = parentLayer->selectionMask();
diff --git a/libs/image/kis_transform_mask.cpp b/libs/image/kis_transform_mask.cpp
index 7a0c258..1816e39 100644
--- a/libs/image/kis_transform_mask.cpp
+++ b/libs/image/kis_transform_mask.cpp
@@ -158,7 +158,7 @@ void KisTransformMask::slotDelayedStaticUpdate()
* meanwhile. Just ignore the updates in the case.
*/
- KisLayerSP parentLayer = dynamic_cast<KisLayer*>(parent().data());
+ KisLayerSP parentLayer = qobject_cast<KisLayer*>(parent().data());
if (!parentLayer) return;
KisImageSP image = parentLayer->image();
@@ -175,7 +175,7 @@ KisPaintDeviceSP KisTransformMask::buildPreviewDevice()
* is not entirely safe.
*/
- KisLayerSP parentLayer = dynamic_cast<KisLayer*>(parent().data());
+ KisLayerSP parentLayer = qobject_cast<KisLayer*>(parent().data());
KIS_ASSERT_RECOVER(parentLayer) { return new KisPaintDevice(colorSpace()); }
KisPaintDeviceSP device =
@@ -195,7 +195,7 @@ void KisTransformMask::recaclulateStaticImage()
* is not entirely safe.
*/
- KisLayerSP parentLayer = dynamic_cast<KisLayer*>(parent().data());
+ KisLayerSP parentLayer = qobject_cast<KisLayer*>(parent().data());
KIS_ASSERT_RECOVER_RETURN(parentLayer);
if (!m_d->staticCacheDevice) {
@@ -386,7 +386,7 @@ QRect KisTransformMask::extent() const
QRect partialChangeRect;
QRect existentProjection;
- KisLayerSP parentLayer = dynamic_cast<KisLayer*>(parent().data());
+ KisLayerSP parentLayer = qobject_cast<KisLayer*>(parent().data());
if (parentLayer) {
partialChangeRect = \
parentLayer->partialChangeRect(const_cast<KisTransformMask*>(this), rc); \
existentProjection = parentLayer->projection()->extent(); @@ -401,7 +401,7 @@ QRect \
KisTransformMask::exactBounds() const
QRect partialChangeRect;
QRect existentProjection;
- KisLayerSP parentLayer = dynamic_cast<KisLayer*>(parent().data());
+ KisLayerSP parentLayer = qobject_cast<KisLayer*>(parent().data());
if (parentLayer) {
partialChangeRect = \
parentLayer->partialChangeRect(const_cast<KisTransformMask*>(this), rc); \
existentProjection = parentLayer->projection()->exactBounds();
diff --git a/libs/image/lazybrush/kis_colorize_mask.cpp \
b/libs/image/lazybrush/kis_colorize_mask.cpp index d9308c4..091621e 100644
--- a/libs/image/lazybrush/kis_colorize_mask.cpp
+++ b/libs/image/lazybrush/kis_colorize_mask.cpp
@@ -130,7 +130,7 @@ KisColorizeMask::KisColorizeMask(const KisColorizeMask& rhs)
void KisColorizeMask::initializeCompositeOp()
{
- KisLayerSP parentLayer(dynamic_cast<KisLayer*>(parent().data()));
+ KisLayerSP parentLayer(qobject_cast<KisLayer*>(parent().data()));
if (!parentLayer || !parentLayer->original()) return;
KisImageSP image = parentLayer->image();
@@ -258,7 +258,7 @@ void KisColorizeMask::slotUpdateRegenerateFilling()
m_d->originalSequenceNumber = src->sequenceNumber();
m_d->coloringProjection->clear();
- KisLayerSP parentLayer(dynamic_cast<KisLayer*>(parent().data()));
+ KisLayerSP parentLayer(qobject_cast<KisLayer*>(parent().data()));
if (!parentLayer) return;
KisImageSP image = parentLayer->image();
@@ -491,7 +491,7 @@ QRect KisColorizeMask::nonDependentExtent() const
KisImageSP KisColorizeMask::fetchImage() const
{
- KisLayerSP parentLayer(dynamic_cast<KisLayer*>(parent().data()));
+ KisLayerSP parentLayer(qobject_cast<KisLayer*>(parent().data()));
if (!parentLayer) return KisImageSP();
return parentLayer->image();
diff --git a/libs/image/recorder/kis_recorded_filter_action.cpp \
b/libs/image/recorder/kis_recorded_filter_action.cpp index f1708bb..04dc26b 100644
--- a/libs/image/recorder/kis_recorded_filter_action.cpp
+++ b/libs/image/recorder/kis_recorded_filter_action.cpp
@@ -96,7 +96,7 @@ void KisRecordedFilterAction::play(KisNodeSP node, const \
KisPlayInfo& _info, KoU {
KisFilterConfigurationSP kfc = d->configuration();
KisPaintDeviceSP dev = node->paintDevice();
- KisLayerSP layer = dynamic_cast<KisLayer*>(node.data());
+ KisLayerSP layer = qobject_cast<KisLayer*>(node.data());
QRect r1 = dev->extent();
KisTransaction transaction(kundo2_i18n("Filter: \"%1\"", d->filter->name()), \
dev);
diff --git a/libs/image/tests/kis_image_test.cpp \
b/libs/image/tests/kis_image_test.cpp index ba14478..c8db0df 100644
--- a/libs/image/tests/kis_image_test.cpp
+++ b/libs/image/tests/kis_image_test.cpp
@@ -529,7 +529,7 @@ KisLayerSP flattenLayerHelper(ContainerTest &p, KisLayerSP layer, \
bool nothingHa QList<QVariant> arguments = spy.takeFirst();
KisNodeSP newNode = arguments.first().value<KisNodeSP>();
- KisLayerSP newLayer = dynamic_cast<KisLayer*>(newNode.data());
+ KisLayerSP newLayer = qobject_cast<KisLayer*>(newNode.data());
return newLayer;
}
@@ -600,7 +600,7 @@ KisLayerSP mergeHelper(ContainerTest &p, KisLayerSP layer)
//KisLayerUtils::mergeDown(p.image, layer, \
KisMetaData::MergeStrategyRegistry::instance()->get("Drop")); \
p.image->waitForDone();
- KisLayerSP newLayer = dynamic_cast<KisLayer*>(parent->at(newIndex).data());
+ KisLayerSP newLayer = qobject_cast<KisLayer*>(parent->at(newIndex).data());
return newLayer;
}
diff --git a/libs/ui/KisSaveGroupVisitor.cpp b/libs/ui/KisSaveGroupVisitor.cpp
index 174e0d1..056da12 100644
--- a/libs/ui/KisSaveGroupVisitor.cpp
+++ b/libs/ui/KisSaveGroupVisitor.cpp
@@ -92,10 +92,10 @@ bool KisSaveGroupVisitor::visit(KisColorizeMask* ) {
bool KisSaveGroupVisitor::visit(KisGroupLayer *layer)
{
if (layer == m_image->rootLayer()) {
- KisLayerSP child = dynamic_cast<KisLayer*>(layer->firstChild().data());
+ KisLayerSP child = qobject_cast<KisLayer*>(layer->firstChild().data());
while (child) {
child->accept(*this);
- child = dynamic_cast<KisLayer*>(child->nextSibling().data());
+ child = qobject_cast<KisLayer*>(child->nextSibling().data());
}
}
diff --git a/libs/ui/KisView.cpp b/libs/ui/KisView.cpp
index 542feb3..8a595a0 100644
--- a/libs/ui/KisView.cpp
+++ b/libs/ui/KisView.cpp
@@ -788,7 +788,7 @@ KisLayerSP KisView::currentLayer() const
else {
node = d->currentNode;
}
- return dynamic_cast<KisLayer*>(node.data());
+ return qobject_cast<KisLayer*>(node.data());
}
KisMaskSP KisView::currentMask() const
diff --git a/libs/ui/dialogs/kis_dlg_filter.cpp b/libs/ui/dialogs/kis_dlg_filter.cpp
index 41e21b0..6d21212 100644
--- a/libs/ui/dialogs/kis_dlg_filter.cpp
+++ b/libs/ui/dialogs/kis_dlg_filter.cpp
@@ -181,7 +181,7 @@ void KisDlgFilter::createMask()
d->filterManager->cancel();
}
- KisLayer *layer = dynamic_cast<KisLayer*>(d->node.data());
+ KisLayer *layer = qobject_cast<KisLayer*>(d->node.data());
KisFilterMaskSP mask = new KisFilterMask();
mask->initSelection(d->view->selection(), layer);
mask->setFilter(d->uiFilterDialog.filterSelection->configuration());
diff --git a/libs/ui/kis_action_manager.cpp b/libs/ui/kis_action_manager.cpp
index 76d7941..a6fe9d8 100644
--- a/libs/ui/kis_action_manager.cpp
+++ b/libs/ui/kis_action_manager.cpp
@@ -239,7 +239,7 @@ void KisActionManager::updateGUI()
// if a node exists, we know there is an active layer as well
flags |= KisAction::ACTIVE_NODE;
- layer = dynamic_cast<KisLayer*>(node.data());
+ layer = qobject_cast<KisLayer*>(node.data());
if (layer) {
flags |= KisAction::ACTIVE_LAYER;
}
diff --git a/libs/ui/kis_layer_manager.cc b/libs/ui/kis_layer_manager.cc
index f5f829e..0d9b9b9 100644
--- a/libs/ui/kis_layer_manager.cc
+++ b/libs/ui/kis_layer_manager.cc
@@ -351,7 +351,7 @@ void KisLayerManager::convertNodeToPaintLayer(KisNodeSP source)
if (!image) return;
- KisLayer *srcLayer = dynamic_cast<KisLayer*>(source.data());
+ KisLayer *srcLayer = qobject_cast<KisLayer*>(source.data());
if (srcLayer && (srcLayer->inherits("KisGroupLayer") || srcLayer->layerStyle() \
|| srcLayer->childCount() > 0)) { image->flattenLayer(srcLayer);
return;
@@ -647,7 +647,7 @@ void KisLayerManager::mergeLayer()
} else if (!tryMergeSelectionMasks(m_view->activeNode(), image)) {
if (!layer->prevSibling()) return;
- KisLayer *prevLayer = dynamic_cast<KisLayer*>(layer->prevSibling().data());
+ KisLayer *prevLayer = qobject_cast<KisLayer*>(layer->prevSibling().data());
if (!prevLayer) return;
if (layer->metaData()->isEmpty() && prevLayer->metaData()->isEmpty()) {
diff --git a/libs/ui/kis_mask_manager.cc b/libs/ui/kis_mask_manager.cc
index c8cc74c..a3963e8 100644
--- a/libs/ui/kis_mask_manager.cc
+++ b/libs/ui/kis_mask_manager.cc
@@ -154,7 +154,7 @@ void KisMaskManager::createMaskCommon(KisMaskSP mask, KisNodeSP \
activeNode, KisP KisNodeSP above;
adjustMaskPosition(mask, activeNode, avoidActiveNode, parent, above);
- KisLayerSP parentLayer = dynamic_cast<KisLayer*>(parent.data());
+ KisLayerSP parentLayer = qobject_cast<KisLayer*>(parent.data());
Q_ASSERT(parentLayer);
if (!suppressSelection) {
@@ -251,7 +251,7 @@ void KisMaskManager::maskProperties()
if (activeMask()->inherits("KisFilterMask")) {
KisFilterMask *mask = static_cast<KisFilterMask*>(activeMask().data());
- KisLayerSP layer = dynamic_cast<KisLayer*>(mask->parent().data());
+ KisLayerSP layer = qobject_cast<KisLayer*>(mask->parent().data());
if (! layer)
return;
diff --git a/libs/ui/kis_mimedata.cpp b/libs/ui/kis_mimedata.cpp
index b6b62fb..ca8d53c 100644
--- a/libs/ui/kis_mimedata.cpp
+++ b/libs/ui/kis_mimedata.cpp
@@ -190,7 +190,7 @@ void KisMimeData::initializeExternalNode(KisNodeSP *node,
KisShapeController *shapeController)
{
// layers store a link to the image, so update it
- KisLayer *layer = dynamic_cast<KisLayer*>(node->data());
+ KisLayer *layer = qobject_cast<KisLayer*>(node->data());
if (layer) {
layer->setImage(image);
}
diff --git a/libs/ui/kis_multinode_property.h b/libs/ui/kis_multinode_property.h
index dc0223c..f20564f 100644
--- a/libs/ui/kis_multinode_property.h
+++ b/libs/ui/kis_multinode_property.h
@@ -285,7 +285,7 @@ struct ChannelFlagAdapter : public BaseAdapter {
}
private:
static KisLayerSP toLayer(KisNodeSP node) {
- return dynamic_cast<KisLayer*>(node.data());
+ return qobject_cast<KisLayer*>(node.data());
}
private:
Property m_prop;
diff --git a/libs/ui/kis_node_manager.cpp b/libs/ui/kis_node_manager.cpp
index aa0b064..e3d54d6 100644
--- a/libs/ui/kis_node_manager.cpp
+++ b/libs/ui/kis_node_manager.cpp
@@ -158,7 +158,7 @@ bool KisNodeManager::Private::activateNodeImpl(KisNodeSP node)
selection->setActiveLayer(shapeLayer);
imageView->setCurrentNode(node);
- if (KisLayerSP layer = dynamic_cast<KisLayer*>(node.data())) {
+ if (KisLayerSP layer = qobject_cast<KisLayer*>(node.data())) {
maskManager.activateMask(0);
layerManager.activateLayer(layer);
} else if (KisMaskSP mask = dynamic_cast<KisMask*>(node.data())) {
@@ -383,7 +383,7 @@ void KisNodeManager::moveNodeAt(KisNodeSP node, KisNodeSP parent, \
int index) if (parent->allowAsChild(node)) {
if (node->inherits("KisSelectionMask") && parent->inherits("KisLayer")) {
KisSelectionMask *m = dynamic_cast<KisSelectionMask*>(node.data());
- KisLayer *l = dynamic_cast<KisLayer*>(parent.data());
+ KisLayer *l = qobject_cast<KisLayer*>(parent.data());
KisSelectionMaskSP selMask = l->selectionMask();
if (m && m->active() && l && l->selectionMask())
selMask->setActive(false);
diff --git a/libs/ui/kis_psd_layer_style_resource.cpp \
b/libs/ui/kis_psd_layer_style_resource.cpp index 70d2d82..02f1c8f 100644
--- a/libs/ui/kis_psd_layer_style_resource.cpp
+++ b/libs/ui/kis_psd_layer_style_resource.cpp
@@ -125,7 +125,7 @@ QByteArray KisPSDLayerStyleCollectionResource::generateMD5() \
const
void KisPSDLayerStyleCollectionResource::collectAllLayerStyles(KisNodeSP root)
{
- KisLayer* layer = dynamic_cast<KisLayer*>(root.data());
+ KisLayer* layer = qobject_cast<KisLayer*>(root.data());
if (layer && layer->layerStyle()) {
KisPSDLayerStyleSP clone = layer->layerStyle()->clone();
@@ -143,7 +143,7 @@ void \
KisPSDLayerStyleCollectionResource::collectAllLayerStyles(KisNodeSP root)
void KisPSDLayerStyleCollectionResource::assignAllLayerStyles(KisNodeSP root)
{
- KisLayer* layer = dynamic_cast<KisLayer*>(root.data());
+ KisLayer* layer = qobject_cast<KisLayer*>(root.data());
if (layer && layer->layerStyle()) {
QUuid uuid = layer->layerStyle()->uuid();
diff --git a/libs/ui/tool/kis_resources_snapshot.cpp \
b/libs/ui/tool/kis_resources_snapshot.cpp index f758268..8265f56 100644
--- a/libs/ui/tool/kis_resources_snapshot.cpp
+++ b/libs/ui/tool/kis_resources_snapshot.cpp
@@ -243,9 +243,9 @@ KisSelectionSP KisResourcesSnapshot::activeSelection() const
KisSelectionSP selection = m_d->image ? m_d->image->globalSelection() : 0;
- KisLayerSP layer = dynamic_cast<KisLayer*>(m_d->currentNode.data());
+ KisLayerSP layer = qobject_cast<KisLayer*>(m_d->currentNode.data());
KisSelectionMaskSP mask;
- if((layer = dynamic_cast<KisLayer*>(m_d->currentNode.data()))) {
+ if((layer = qobject_cast<KisLayer*>(m_d->currentNode.data()))) {
selection = layer->selection();
} else if ((mask = dynamic_cast<KisSelectionMask*>(m_d->currentNode.data())) &&
mask->selection() == selection) {
diff --git a/libs/ui/tool/kis_tool_utils.cpp b/libs/ui/tool/kis_tool_utils.cpp
index 7ce23fe..489fe8d 100644
--- a/libs/ui/tool/kis_tool_utils.cpp
+++ b/libs/ui/tool/kis_tool_utils.cpp
@@ -82,7 +82,7 @@ namespace KisToolUtils {
{
KisNodeSP foundNode = 0;
while (node) {
- KisLayerSP layer = dynamic_cast<KisLayer*>(node.data());
+ KisLayerSP layer = qobject_cast<KisLayer*>(node.data());
if (!layer || !layer->isEditable()) {
node = node->prevSibling();
diff --git a/libs/ui/widgets/kis_image_from_clipboard_widget.cpp \
b/libs/ui/widgets/kis_image_from_clipboard_widget.cpp index 29c26ce..72309d8 100644
--- a/libs/ui/widgets/kis_image_from_clipboard_widget.cpp
+++ b/libs/ui/widgets/kis_image_from_clipboard_widget.cpp
@@ -84,7 +84,7 @@ void KisImageFromClipboard::createImage()
KisImageWSP image = doc->image();
if (image && image->root() && image->root()->firstChild()) {
- KisLayer * layer = \
dynamic_cast<KisLayer*>(image->root()->firstChild().data()); + KisLayer * \
layer = qobject_cast<KisLayer*>(image->root()->firstChild().data());
KisPaintDeviceSP clip = KisClipboard::instance()->clip(QRect(), true);
if (clip) {
diff --git a/plugins/impex/csv/csv_saver.cpp b/plugins/impex/csv/csv_saver.cpp
index de4c4c2..33847c5 100644
--- a/plugins/impex/csv/csv_saver.cpp
+++ b/plugins/impex/csv/csv_saver.cpp
@@ -117,7 +117,7 @@ KisImageBuilder_Result CSVSaver::encode(QIODevice *io)
while (node) {
if (node->inherits("KisLayer")) {
- KisLayer* paintLayer = dynamic_cast<KisLayer*>(node.data());
+ KisLayer* paintLayer = qobject_cast<KisLayer*>(node.data());
CSVLayerRecord* layerRecord = new CSVLayerRecord();
layers.prepend(layerRecord); //reverse order!
diff --git a/plugins/impex/libkra/kis_kra_load_visitor.cpp \
b/plugins/impex/libkra/kis_kra_load_visitor.cpp index ac46aff..132dba8 100644
--- a/plugins/impex/libkra/kis_kra_load_visitor.cpp
+++ b/plugins/impex/libkra/kis_kra_load_visitor.cpp
@@ -258,7 +258,7 @@ bool KisKraLoadVisitor::visit(KisCloneLayer *layer)
}
KisNodeSP srcNode = layer->copyFromInfo().findNode(m_image->rootLayer());
- KisLayerSP srcLayer = dynamic_cast<KisLayer*>(srcNode.data());
+ KisLayerSP srcLayer = qobject_cast<KisLayer*>(srcNode.data());
Q_ASSERT(srcLayer);
layer->setCopyFrom(srcLayer);
@@ -278,7 +278,7 @@ void KisKraLoadVisitor::initSelectionForMask(KisMask *mask)
cloneLayer->accept(*this);
}
- KisLayer *parentLayer = dynamic_cast<KisLayer*>(mask->parent().data());
+ KisLayer *parentLayer = qobject_cast<KisLayer*>(mask->parent().data());
// the KisKraLoader must have already set the parent for us
Q_ASSERT(parentLayer);
mask->initSelection(parentLayer);
diff --git a/plugins/impex/psd/psd_export.cc b/plugins/impex/psd/psd_export.cc
index a6d13da..83427e4 100644
--- a/plugins/impex/psd/psd_export.cc
+++ b/plugins/impex/psd/psd_export.cc
@@ -53,7 +53,7 @@ bool checkHomogenity(KisNodeSP root, const KoColorSpace* cs)
break;
}
}
- KisLayer *layer = dynamic_cast<KisLayer*>(child.data());
+ KisLayer *layer = qobject_cast<KisLayer*>(child.data());
if (layer) {
if (layer->colorSpace() != cs) {
res = false;
diff --git a/plugins/impex/psd/psd_layer_section.cpp \
b/plugins/impex/psd/psd_layer_section.cpp index c25f550..1b4836c 100644
--- a/plugins/impex/psd/psd_layer_section.cpp
+++ b/plugins/impex/psd/psd_layer_section.cpp
@@ -369,7 +369,7 @@ KisNodeSP findOnlyTransparencyMask(KisNodeSP node, \
FlattenedNode::Type type) return 0;
}
- KisLayer *layer = dynamic_cast<KisLayer*>(node.data());
+ KisLayer *layer = qobject_cast<KisLayer*>(node.data());
QList<KisEffectMaskSP> masks = layer->effectMasks();
if (masks.size() != 1) return 0;
diff --git a/plugins/impex/psd/tests/kis_psd_test.cpp \
b/plugins/impex/psd/tests/kis_psd_test.cpp index b507f86..b3aa1dd 100644
--- a/plugins/impex/psd/tests/kis_psd_test.cpp
+++ b/plugins/impex/psd/tests/kis_psd_test.cpp
@@ -134,7 +134,7 @@ void KisPSDTest::testOpenLayerStyles()
QSharedPointer<KisDocument> doc = openPsdDocument(sourceFileInfo);
QVERIFY(doc->image());
- KisLayerSP layer = \
dynamic_cast<KisLayer*>(doc->image()->root()->lastChild().data()); + KisLayerSP \
layer = qobject_cast<KisLayer*>(doc->image()->root()->lastChild().data()); \
QVERIFY(layer->layerStyle()); QVERIFY(layer->layerStyle()->dropShadow());
QVERIFY(layer->layerStyle()->dropShadow()->effectEnabled());
@@ -149,7 +149,7 @@ void KisPSDTest::testOpenLayerStylesWithPattern()
QSharedPointer<KisDocument> doc = openPsdDocument(sourceFileInfo);
QVERIFY(doc->image());
- KisLayerSP layer = \
dynamic_cast<KisLayer*>(doc->image()->root()->lastChild().data()); + KisLayerSP \
layer = qobject_cast<KisLayer*>(doc->image()->root()->lastChild().data()); \
QVERIFY(layer->layerStyle()); QVERIFY(layer->layerStyle()->patternOverlay());
QVERIFY(layer->layerStyle()->patternOverlay()->effectEnabled());
@@ -166,7 +166,7 @@ void KisPSDTest::testOpenLayerStylesWithPatternMulti()
QSharedPointer<KisDocument> doc = openPsdDocument(sourceFileInfo);
QVERIFY(doc->image());
- KisLayerSP layer = \
dynamic_cast<KisLayer*>(doc->image()->root()->lastChild().data()); + KisLayerSP \
layer = qobject_cast<KisLayer*>(doc->image()->root()->lastChild().data()); \
QVERIFY(layer->layerStyle());
QVERIFY(layer->layerStyle()->patternOverlay());
@@ -189,7 +189,7 @@ void KisPSDTest::testSaveLayerStylesWithPatternMulti()
QSharedPointer<KisDocument> doc = openPsdDocument(sourceFileInfo);
QVERIFY(doc->image());
- KisLayerSP layer = \
dynamic_cast<KisLayer*>(doc->image()->root()->lastChild().data()); + KisLayerSP \
layer = qobject_cast<KisLayer*>(doc->image()->root()->lastChild().data()); \
QVERIFY(layer->layerStyle());
QVERIFY(layer->layerStyle()->patternOverlay());
@@ -216,7 +216,7 @@ void KisPSDTest::testSaveLayerStylesWithPatternMulti()
QImage result = doc->image()->projection()->convertToQImage(0, \
doc->image()->bounds());
//QVERIFY(TestUtil::checkQImageExternal(result, "psd_test", \
"transparency_masks", "kiki_single"));
- KisLayerSP layer = \
dynamic_cast<KisLayer*>(doc->image()->root()->lastChild().data()); + \
KisLayerSP layer = qobject_cast<KisLayer*>(doc->image()->root()->lastChild().data()); \
QVERIFY(layer->layerStyle());
QVERIFY(layer->layerStyle()->patternOverlay());
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic