[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdebase/workspace/kcontrol/keyboard
From: Andriy Rysin <arysin () gmail ! com>
Date: 2010-09-20 12:19:46
Message-ID: 20100920121946.AB4D8AC7CB () svn ! kde ! org
[Download RAW message or body]
SVN commit 1177507 by rysin:
configure context menu in the systray
include short layout label in the context menu items
M +19 -2 layout_widget.cpp
--- trunk/KDE/kdebase/workspace/kcontrol/keyboard/layout_widget.cpp #1177506:1177507
@@ -25,6 +25,8 @@
#include <kstatusnotifieritem.h>
#include <klocalizedstring.h>
#include <kmenu.h>
+#include <ktoolinvocation.h>
+
#include <QtGui/QAction>
#include <QtGui/QMenu>
#include "xkb_rules.h"
@@ -204,8 +206,17 @@
void LayoutTrayIcon::actionTriggered(QAction* action)
{
+ QString data = action->data().toString();
+ if( data == "config" ) {
+// KRun::runCommand("kcmshell4 kcm_keyboard")
+ QStringList args;
+ args << "kcm_keyboard";
+ KToolInvocation::kdeinitExec("kcmshell4", args);
+ }
+ else {
X11Helper::setLayout(LayoutUnit(action->data().toString()));
}
+}
const QIcon LayoutTrayIcon::getFlag(const QString& layout) const
{
@@ -225,12 +236,18 @@
foreach(const LayoutUnit& layoutUnit, layouts) {
QString shortText = Flags::getShortText(layoutUnit, *keyboardConfig);
QString longText = Flags::getLongText(layoutUnit, rules);
-// QString menuText = i18nc("map name - full layout text", "%1 - %2", shortText, longText);
- QString menuText = longText;
+ QString menuText = i18nc("short layout label - full layout name", "%1 - %2", shortText, longText);
+// QString menuText = longText;
QAction* action = new QAction(getFlag(layoutUnit.layout), menuText, actionGroup);
action->setData(layoutUnit.toString());
actionGroup->addAction(action);
}
+ QAction* separator = new QAction(actionGroup);
+ separator->setSeparator(true);
+ actionGroup->addAction(separator);
+ QAction* configAction = new QAction(i18n("Configure..."), actionGroup);
+ actionGroup->addAction(configAction);
+ configAction->setData("config");
connect(actionGroup, SIGNAL(triggered(QAction*)), this, SLOT(actionTriggered(QAction*)));
return actionGroup->actions();
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic