KMyMoney Plugin API

interfaceloader.h
1 /*
2  SPDX-FileCopyrightText: 2016 Christian D├ívid <[email protected]>
3  SPDX-License-Identifier: GPL-2.0-or-later
4 */
5 
6 #ifndef INTERFACELOADER_H
7 #define INTERFACELOADER_H
8 
9 #include "kmm_plugin_export.h"
10 
11 namespace KMyMoneyPlugin {
12 class AppInterface;
13 class ImportInterface;
14 class StatementInterface;
15 class ViewInterface;
16 }
17 class KMyMoneyApp;
18 
19 namespace KMyMoneyPlugin {
20 
21 class Plugin;
22 
23 /**
24  * @internal
25  *
26  * This class is used as dead drop to communicate between two compile targets which cannot do
27  * this directly.
28  * It is only used by the classes which are named friends. To receive an instance of
29  * this class @ref pluginInterfaces() is used.
30  */
32 {
33  /**
34  * @{
35  * This class is owner of these objects. However, the parent is somebody else. They are deleted by destruction of the parent only.
36  */
37  KMyMoneyPlugin::AppInterface* appInterface;
38  KMyMoneyPlugin::ViewInterface* viewInterface;
39  KMyMoneyPlugin::StatementInterface* statementInterface;
40  KMyMoneyPlugin::ImportInterface* importInterface;
41  /** @} */
42 
43  friend KMyMoneyApp;
45 };
46 
47 /**
48  * @internal
49  *
50  * Returns an instance of @ref InterfaceLoader. It is created if needed.
51  */
52 KMM_PLUGIN_EXPORT InterfaceLoader& pluginInterfaces();
53 
54 }
55 
56 #endif
This class describes the interface between KMyMoney and it's plugins.
This abstract class represents the ImportInterface to add new importers to KMyMoney.
This abstract class represents the interface to import statements into the KMyMoney application.
This abstract class represents the ViewInterface to add new view pages to the JanusWidget of KMyMoney...
Definition: viewinterface.h:47
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Fri Dec 1 2023 03:48:57 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.