File indexing completed on 2024-05-12 15:58:37
0001 /* 0002 * SPDX-FileCopyrightText: 2011 Dmitry Kazakov <dimula73@gmail.com> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #include "kis_processing_visitor.h" 0008 0009 #include <KoUpdater.h> 0010 #include <KoProgressUpdater.h> 0011 #include "kis_node_progress_proxy.h" 0012 #include "kis_node.h" 0013 #include <KLocalizedString> 0014 0015 KisProcessingVisitor::ProgressHelper::ProgressHelper(const KisNode *node) 0016 { 0017 KisNodeProgressProxy *progressProxy = node->nodeProgressProxy(); 0018 0019 if(progressProxy) { 0020 m_progressUpdater = new KoProgressUpdater(progressProxy); 0021 m_progressUpdater->setObjectName("ProgressHelper::m_progressUpdater"); 0022 m_progressUpdater->start(100, i18n("Processing")); 0023 m_progressUpdater->moveToThread(node->thread()); 0024 } 0025 else { 0026 m_progressUpdater = 0; 0027 } 0028 } 0029 0030 KisProcessingVisitor::ProgressHelper::~ProgressHelper() 0031 { 0032 if (m_progressUpdater) { 0033 m_progressUpdater->deleteLater(); 0034 } 0035 } 0036 0037 KoUpdater* KisProcessingVisitor::ProgressHelper::updater() const 0038 { 0039 return m_progressUpdater ? m_progressUpdater->startSubtask() : 0; 0040 } 0041 0042 0043 KisProcessingVisitor::~KisProcessingVisitor() 0044 { 0045 } 0046 0047 KUndo2Command *KisProcessingVisitor::createInitCommand() 0048 { 0049 return 0; 0050 }