Krita Source Code Documentation
Loading...
Searching...
No Matches
kxmlguibuilder.h
Go to the documentation of this file.
1/* This file is part of the KDE project
2 SPDX-FileCopyrightText: 2000 Simon Hausmann <hausmann@kde.org>
3 SPDX-FileCopyrightText: 2000 David Faure <faure@kde.org>
4
5 SPDX-License-Identifier: LGPL-2.0-or-later
6*/
7#ifndef kxmlguibuilder_h
8#define kxmlguibuilder_h
9
10#include <kritawidgetutils_export.h>
11
12#include <KisQStringListFwd.h>
13
16
17class QAction;
18class QDomElement;
19class QWidget;
20
28class KRITAWIDGETUTILS_EXPORT KisKXMLGUIBuilder
29{
30public:
31
32 explicit KisKXMLGUIBuilder(QWidget *widget);
33 virtual ~KisKXMLGUIBuilder();
34
35 /* @internal */
36 KisKXMLGUIClient *builderClient() const;
37 /* @internal */
38 void setBuilderClient(KisKXMLGUIClient *client);
39 /* @internal */
40 QWidget *widget();
41
42 virtual QStringList containerTags() const;
43
56 virtual QWidget *createContainer(QWidget *parent, int index,
57 const QDomElement &element, QAction *&containerAction);
58
64 virtual void removeContainer(QWidget *container, QWidget *parent,
65 QDomElement &element, QAction *containerAction);
66
67 virtual QStringList customTags() const;
68
69 virtual QAction *createCustomElement(QWidget *parent, int index, const QDomElement &element);
70
71 virtual void removeCustomElement(QWidget *parent, QAction *action);
72
73 virtual void finalizeGUI(KisKXMLGUIClient *client);
74
75protected:
76 virtual void virtual_hook(int id, void *data);
77private:
79};
80
81#endif
82
KisKXMLGUIBuilderPrivate *const d