ibus-qt 1.3.4
Loading...
Searching...
No Matches
qibusenginefactory.h
1#ifndef __Q_IBUS_FACTORY_ADAPTOR_H_
2#define __Q_IBUS_FACTORY_ADAPTOR_H_
3
4#include <QLinkedList>
5#include <QDBusConnection>
6#include <QDBusObjectPath>
7#include "qibusobject.h"
8
9class IBusFactoryAdaptor;
10
11namespace IBus {
12
13class Engine;
14typedef Pointer<Engine> EnginePointer;
15
16class EngineFactory : public Object
17{
18 Q_OBJECT;
19
20private :
21 Q_INVOKABLE EngineFactory (const QDBusConnection &conn, uint id = 0);
23
24public:
25 void addMetaObject (const QString &name, const QMetaObject *metaObject);
26 static EngineFactory *getEngineFactory (const QDBusConnection &conn);
27
28protected:
29 virtual QString createEngine (const QString &name);
30
31private Q_SLOTS:
32 Q_INVOKABLE QDBusObjectPath CreateEngine (const QString &name);
33 Q_INVOKABLE void Destroy ();
34
35private :
36
37 uint m_id;
38 QDBusConnection m_conn;
39 QMap<QString, const QMetaObject *> m_engineMap;
40 QLinkedList<EnginePointer> m_engineLList;
41 IBusFactoryAdaptor *m_factoryAdaptor;
42
43 static EngineFactory *m_factory;
44};
45
46};
47
48#endif
Definition qibusenginefactory.h:17
Definition qibusobject.h:19
Definition qibusattribute.cpp:3