1 /* This file is part of the dbusmenu-qt library
2 Copyright 2010 Canonical
3 Author: Aurelien Gateau <aurelien.gateau@canonical.com>
5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Library General Public
7 License (LGPL) as published by the Free Software Foundation;
8 either version 2 of the License, or (at your option) any later
11 This library is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 Library General Public License for more details.
16 You should have received a copy of the GNU Library General Public License
17 along with this library; see the file COPYING.LIB. If not, write to
18 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19 Boston, MA 02110-1301, USA.
26 #include <dbusmenutypes_p.h>
33 class ManualSignalSpy : public QObject, public QList<QVariantList>
37 void receiveCall(int value)
39 append(QVariantList() << value);
42 void receiveCall(uint v1, int v2)
44 append(QVariantList() << v1 << v2);
47 void receiveCall(int v1, uint v2)
49 append(QVariantList() << v1 << v2);
52 void receiveCall(DBusMenuItemList itemList, DBusMenuItemKeysList removedPropsList)
54 QVariantList propsIds;
55 Q_FOREACH(DBusMenuItem item, itemList) {
58 QVariantList removedPropsIds;
59 Q_FOREACH(DBusMenuItemKeys props, removedPropsList) {
60 removedPropsIds << props.id;
64 args.push_back(propsIds);
65 args.push_back(removedPropsIds);
69 void receiveCall(const QString& service, const QVariantMap& modifiedProperties, const QStringList& newProperties)
72 args.push_back(service);
73 args.push_back(modifiedProperties);
74 args.push_back(newProperties);
79 class MenuFiller : public QObject
83 MenuFiller(QMenu *menu)
86 connect(m_menu, SIGNAL(aboutToShow()), SLOT(fillMenu()));
89 void addAction(QAction *action)
97 while (!m_actions.isEmpty()) {
98 m_menu->addAction(m_actions.takeFirst());
104 QList<QAction *> m_actions;
107 void waitForDeferredDeletes();
109 #endif /* TESTUTILS_H */