Add (and install) svg for the new krunner interface.
[kdebase/uwolfer.git] / workspace / systemsettings / menuitem.h
blob4b223320fcca51f52e258fba424d6cd4e093ba46
1 /* This file is part of the KDE project
2 Copyright 2007 Will Stephenson <wstephenson@kde.org>
4 This program is free software; you can redistribute it and/or
5 modify it under the terms of the GNU General Public License as
6 published by the Free Software Foundation; either version 2 of
7 the License or (at your option) version 3 or any later version
8 accepted by the membership of KDE e.V. (or its successor approved
9 by the membership of KDE e.V.), which shall act as a proxy
10 defined in Section 14 of version 3 of the license.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>.
20 #ifndef KCMENUITEM_H
21 #define KCMENUITEM_H
23 #include <QList>
24 #include <QString>
25 #include <KCModuleInfo>
26 #include <KService> // for KService::Ptr
28 /**
29 * A menu consists of menu items. An item is either another menu or a module.
31 class MenuItem {
32 public:
33 MenuItem( bool isMenu, MenuItem * parent );
34 ~MenuItem();
35 MenuItem * grandChildAt( int index );
36 MenuItem * parent;
37 QList< MenuItem * > children;
38 bool menu;
39 QString name;
40 QString caption;
41 KService::Ptr service;
42 KCModuleInfo item;
45 #endif