Merge lp:~agateau/libdbusmenu-qt/kmenu-title into lp:~agateau/libdbusmenu-qt/trunk

Proposed by Aurélien Gâteau
Status: Merged
Merged at revision: 197
Proposed branch: lp:~agateau/libdbusmenu-qt/kmenu-title
Merge into: lp:~agateau/libdbusmenu-qt/trunk
Diff against target: 68 lines (+26/-1)
2 files modified
src/dbusmenuexporter.cpp (+1/-1)
src/dbusmenuimporter.cpp (+25/-0)
To merge this branch: bzr merge lp:~agateau/libdbusmenu-qt/kmenu-title
Reviewer Review Type Date Requested Status
David Barth (community) Approve
Aurélien Gâteau Pending
Review via email: mp+36163@code.launchpad.net

Description of the change

Reimplementation of support for KMenu titles. This implementation is not based on external contributor code. Please compare it to the previous one [1] to confirm it can go in without any copyright issue

[1]: http://bazaar.launchpad.net/~agateau/libdbusmenu-qt/trunk/revision/153

To post a comment you must log in.
Revision history for this message
David Barth (dbarth) wrote :

+1

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/dbusmenuexporter.cpp'
2--- src/dbusmenuexporter.cpp 2010-09-20 08:55:12 +0000
3+++ src/dbusmenuexporter.cpp 2010-09-21 15:46:42 +0000
4@@ -78,7 +78,7 @@
5 QVariantMap DBusMenuExporterPrivate::propertiesForKMenuTitleAction(QAction *action_) const
6 {
7 QVariantMap map;
8- map.insert("enabled", false);
9+ map.insert("x-kde-title", true);
10
11 const QWidgetAction *widgetAction = qobject_cast<const QWidgetAction *>(action_);
12 DMRETURN_VALUE_IF_FAIL(widgetAction, map);
13
14=== modified file 'src/dbusmenuimporter.cpp'
15--- src/dbusmenuimporter.cpp 2010-09-20 08:55:12 +0000
16+++ src/dbusmenuimporter.cpp 2010-09-21 15:46:42 +0000
17@@ -27,11 +27,14 @@
18 #include <QDBusMetaType>
19 #include <QDBusReply>
20 #include <QDBusVariant>
21+#include <QFont>
22 #include <QMenu>
23 #include <QPointer>
24 #include <QSignalMapper>
25 #include <QTime>
26 #include <QTimer>
27+#include <QToolButton>
28+#include <QWidgetAction>
29
30 // Local
31 #include "dbusmenuitem_p.h"
32@@ -66,6 +69,22 @@
33 DBusMenuImporterMethod m_method;
34 };
35
36+static QAction *createKdeTitle(QAction *action, QWidget *parent)
37+{
38+ QToolButton *titleWidget = new QToolButton(0);
39+ QFont font = titleWidget->font();
40+ font.setBold(true);
41+ titleWidget->setFont(font);
42+ titleWidget->setIcon(action->icon());
43+ titleWidget->setText(action->text());
44+ titleWidget->setDown(true);
45+ titleWidget->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
46+
47+ QWidgetAction *titleAction = new QWidgetAction(parent);
48+ titleAction->setDefaultWidget(titleWidget);
49+ return titleAction;
50+}
51+
52 class DBusMenuImporterPrivate
53 {
54 public:
55@@ -143,8 +162,14 @@
56 group->addAction(action);
57 }
58 }
59+
60+ bool isKdeTitle = map.take("x-kde-title").toBool();
61 updateAction(action, map, map.keys());
62
63+ if (isKdeTitle) {
64+ action = createKdeTitle(action, parent);
65+ }
66+
67 return action;
68 }
69

Subscribers

People subscribed via source and target branches

to all changes: