2
3
4
5
6
7
8
9
10
13#include <QtDBus/qdbusextratypes.h>
22
23
25QIBusProxy::QIBusProxy(
const QString &service,
const QString &path,
const QDBusConnection &connection, QObject *parent)
26 : QDBusAbstractInterface(service, path, staticInterfaceName(), connection, parent)
28 this->connection().connect(service,
31 QStringLiteral(
"GlobalEngineChanged"),
34 this, SLOT(globalEngineChanged(QString)));
37QIBusProxy::~QIBusProxy()
41#ifdef QIBUS_GET_ADDRESS
42QString QIBusProxy::getAddress()
44 QDBusReply<QDBusVariant> reply = Address();
45 QVariant variant = reply.value().variant();
46 if (!variant.isValid())
48 return variant.toString();
52#ifdef QIBUS_GET_ENGINES
53QList<QIBusEngineDesc> QIBusProxy::getEngines()
55 QList<QIBusEngineDesc> engines;
56 QDBusReply<QDBusVariant> reply = Engines();
57 QVariant variant = reply.value().variant();
58 if (!variant.isValid())
60 const QDBusArgument argument = variant.value<QDBusArgument>();
61 qCDebug(qtQpaInputMethodsSerialize) <<
"QIBusProxy::getEngines()" << argument.currentSignature();
65 while (!argument.atEnd()) {
68 if (!value.variant().isValid()) {
69 qWarning() <<
"Warning in QIBusProxy::getEngines():" << QString::asprintf(
"%dth variant is wrong", i);
72 const QDBusArgument desc_arg = value.variant().value<QDBusArgument>();
84QIBusEngineDesc QIBusProxy::getGlobalEngine()
87 QDBusReply<QDBusVariant> reply = GlobalEngine();
88 QVariant variant = reply.value().variant();
89 if (!variant.isValid())
91 QVariant child = qvariant_cast<QDBusVariant>(variant).variant();
94 const QDBusArgument argument = qvariant_cast<QDBusArgument>(child);
99void QIBusProxy::globalEngineChanged(
const QString &engine_name)
101 emit GlobalEngineChanged(engine_name);
106#include "moc_qibusproxy.cpp"
Combined button and popup list for selecting options.