kexi

kexiactioncategories.h
1/* This file is part of the KDE project
2 Copyright (C) 2006 Jaroslaw Staniek <js@iidea.pl>
3
4 This program is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Library General Public
6 License as published by the Free Software Foundation; either
7 version 2 of the License, or (at your option) any later version.
8
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Library General Public License for more details.
13
14 You should have received a copy of the GNU Library General Public License
15 along with this program; see the file COPYING. If not, write to
16 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 * Boston, MA 02110-1301, USA.
18*/
19
20#ifndef KEXI_ACTION_CATEGORIES_H
21#define KEXI_ACTION_CATEGORIES_H
22
23#include <ksharedptr.h>
24#include "kexipart.h"
25
26namespace Kexi {
27
38
40
43class KEXICORE_EXPORT ActionCategories : public TDEShared
44{
45 public:
46 ActionCategories();
47 ~ActionCategories();
48
53 void addAction(const char* name, int categories,
54 KexiPart::ObjectTypes supportedObjectType1 = (KexiPart::ObjectTypes)0,
55 KexiPart::ObjectTypes supportedObjectType2 = (KexiPart::ObjectTypes)0,
56 KexiPart::ObjectTypes supportedObjectType3 = (KexiPart::ObjectTypes)0,
57 KexiPart::ObjectTypes supportedObjectType4 = (KexiPart::ObjectTypes)0,
58 KexiPart::ObjectTypes supportedObjectType5 = (KexiPart::ObjectTypes)0,
59 KexiPart::ObjectTypes supportedObjectType6 = (KexiPart::ObjectTypes)0,
60 KexiPart::ObjectTypes supportedObjectType7 = (KexiPart::ObjectTypes)0,
61 KexiPart::ObjectTypes supportedObjectType8 = (KexiPart::ObjectTypes)0);
62
63 void addGlobalAction(const char* name)
65
67 void addPartItemAction(const char* name)
69
73 void addWindowAction(const char* name,
74 KexiPart::ObjectTypes supportedObjectType1 = (KexiPart::ObjectTypes)0,
75 KexiPart::ObjectTypes supportedObjectType2 = (KexiPart::ObjectTypes)0,
76 KexiPart::ObjectTypes supportedObjectType3 = (KexiPart::ObjectTypes)0,
77 KexiPart::ObjectTypes supportedObjectType4 = (KexiPart::ObjectTypes)0,
78 KexiPart::ObjectTypes supportedObjectType5 = (KexiPart::ObjectTypes)0,
79 KexiPart::ObjectTypes supportedObjectType6 = (KexiPart::ObjectTypes)0,
80 KexiPart::ObjectTypes supportedObjectType7 = (KexiPart::ObjectTypes)0,
81 KexiPart::ObjectTypes supportedObjectType8 = (KexiPart::ObjectTypes)0)
82 { addAction(name, Kexi::WindowActionCategory, supportedObjectType1, supportedObjectType2,
83 supportedObjectType3, supportedObjectType4, supportedObjectType5, supportedObjectType6,
84 supportedObjectType7, supportedObjectType8); }
85
89 void setAllObjectTypesSupported(const char* name, bool set);
90
93 int actionCategories(const char* name) const;
94
97 bool actionSupportsObjectType(const char* name, KexiPart::ObjectTypes objectType) const;
98 protected:
99 class Private;
100 Private *d;
101};
102
104KEXICORE_EXPORT ActionCategories *actionCategories();
105
106}
107
108#endif
void addWindowAction(const char *name, KexiPart::ObjectTypes supportedObjectType1=(KexiPart::ObjectTypes) 0, KexiPart::ObjectTypes supportedObjectType2=(KexiPart::ObjectTypes) 0, KexiPart::ObjectTypes supportedObjectType3=(KexiPart::ObjectTypes) 0, KexiPart::ObjectTypes supportedObjectType4=(KexiPart::ObjectTypes) 0, KexiPart::ObjectTypes supportedObjectType5=(KexiPart::ObjectTypes) 0, KexiPart::ObjectTypes supportedObjectType6=(KexiPart::ObjectTypes) 0, KexiPart::ObjectTypes supportedObjectType7=(KexiPart::ObjectTypes) 0, KexiPart::ObjectTypes supportedObjectType8=(KexiPart::ObjectTypes) 0)
void addAction(const char *name, int categories, KexiPart::ObjectTypes supportedObjectType1=(KexiPart::ObjectTypes) 0, KexiPart::ObjectTypes supportedObjectType2=(KexiPart::ObjectTypes) 0, KexiPart::ObjectTypes supportedObjectType3=(KexiPart::ObjectTypes) 0, KexiPart::ObjectTypes supportedObjectType4=(KexiPart::ObjectTypes) 0, KexiPart::ObjectTypes supportedObjectType5=(KexiPart::ObjectTypes) 0, KexiPart::ObjectTypes supportedObjectType6=(KexiPart::ObjectTypes) 0, KexiPart::ObjectTypes supportedObjectType7=(KexiPart::ObjectTypes) 0, KexiPart::ObjectTypes supportedObjectType8=(KexiPart::ObjectTypes) 0)
void addPartItemAction(const char *name)
Convenience function for adding action of category "part item", uses addAction().
Namespace for general Kexi functions.
Definition kexi.h:38
@ NoActionCategory
no category at all
KEXICORE_EXPORT ActionCategories * actionCategories()