File indexing completed on 2024-05-12 16:01:43
0001 /* 0002 * SPDX-FileCopyrightText: 2013 Sven Langkamp <sven.langkamp@gmail.com> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 0008 #include "KisActionPlugin.h" 0009 #include "KisViewManager.h" 0010 #include "kis_action_manager.h" 0011 #include "operations/kis_operation.h" 0012 0013 KisActionPlugin::KisActionPlugin(QObject* parent) 0014 : QObject(parent) 0015 { 0016 m_viewManager = qobject_cast<KisViewManager*>(parent); 0017 KIS_ASSERT_RECOVER_NOOP(m_viewManager); 0018 } 0019 0020 KisActionPlugin::~KisActionPlugin() 0021 { 0022 } 0023 0024 void KisActionPlugin::addAction(const QString& name, KisAction* action) 0025 { 0026 if (m_viewManager) { 0027 m_viewManager->actionManager()->addAction(name, action); 0028 } 0029 } 0030 0031 KisAction* KisActionPlugin::createAction(const QString& name) 0032 { 0033 if (m_viewManager) { 0034 return m_viewManager->actionManager()->createAction(name); 0035 } 0036 return 0; 0037 } 0038 0039 void KisActionPlugin::addUIFactory(KisOperationUIFactory* factory) 0040 { 0041 if (m_viewManager) { 0042 m_viewManager->actionManager()->registerOperationUIFactory(factory); 0043 } 0044 } 0045 0046 void KisActionPlugin::addOperation(KisOperation* operation) 0047 { 0048 if (m_viewManager) { 0049 m_viewManager->actionManager()->registerOperation(operation); 0050 } 0051 } 0052 0053 QPointer<KisViewManager> KisActionPlugin::viewManager() const 0054 { 0055 return m_viewManager; 0056 }