KMyMoney Plugin API

interfaceloader.h
1/*
2 SPDX-FileCopyrightText: 2016 Christian Dávid <christian-david@web.de>
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
11namespace KMyMoneyPlugin {
12class AppInterface;
13class ImportInterface;
14class StatementInterface;
15class ViewInterface;
16}
17class KMyMoneyApp;
18
19namespace KMyMoneyPlugin {
20
21class 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 */
52KMM_PLUGIN_EXPORT InterfaceLoader& pluginInterfaces();
53
54}
55
56#endif
This abstract class represents the ImportInterface to add new importers to KMyMoney.
This class describes the interface between KMyMoney and it's plugins.
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...
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Tue Mar 26 2024 11:18:13 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.