KWayland::Client::EventQueue
#include <event_queue.h>

Public Slots | |
void | dispatch () |
Public Member Functions | |
EventQueue (QObject *parent=nullptr) | |
template<typename wl_interface , typename T > | |
void | addProxy (T *proxy) |
template<typename wl_interface > | |
void | addProxy (wl_interface *proxy) |
void | addProxy (wl_proxy *proxy) |
void | destroy () |
bool | isValid () |
operator wl_event_queue * () | |
operator wl_event_queue * () const | |
void | release () |
void | setup (ConnectionThread *connection) |
void | setup (wl_display *display) |
![]() | |
QObject (QObject *parent) | |
bool | blockSignals (bool block) |
const QObjectList & | children () const const |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const |
void | deleteLater () |
void | destroyed (QObject *obj) |
bool | disconnect (const char *signal, const QObject *receiver, const char *method) const const |
bool | disconnect (const QObject *receiver, const char *method) const const |
void | dumpObjectInfo () |
void | dumpObjectInfo () const const |
void | dumpObjectTree () |
void | dumpObjectTree () const const |
QList< QByteArray > | dynamicPropertyNames () const const |
virtual bool | event (QEvent *e) |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
T | findChild (const QString &name, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QRegExp ®Exp, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QString &name, Qt::FindChildOptions options) const const |
bool | inherits (const char *className) const const |
void | installEventFilter (QObject *filterObj) |
bool | isWidgetType () const const |
bool | isWindowType () const const |
void | killTimer (int id) |
virtual const QMetaObject * | metaObject () const const |
void | moveToThread (QThread *targetThread) |
QString | objectName () const const |
void | objectNameChanged (const QString &objectName) |
QObject * | parent () const const |
QVariant | property (const char *name) const const |
Q_CLASSINFO (Name, Value) | |
Q_DISABLE_COPY (Class) | |
Q_DISABLE_COPY_MOVE (Class) | |
Q_DISABLE_MOVE (Class) | |
Q_EMIT Q_EMIT | |
Q_ENUM (...) | |
Q_ENUM_NS (...) | |
Q_ENUMS (...) | |
Q_FLAG (...) | |
Q_FLAG_NS (...) | |
Q_FLAGS (...) | |
Q_GADGET Q_GADGET | |
Q_INTERFACES (...) | |
Q_INVOKABLE Q_INVOKABLE | |
Q_NAMESPACE Q_NAMESPACE | |
Q_NAMESPACE_EXPORT (EXPORT_MACRO) | |
Q_OBJECT Q_OBJECT | |
Q_PROPERTY (...) | |
Q_REVISION Q_REVISION | |
Q_SET_OBJECT_NAME (Object) | |
Q_SIGNAL Q_SIGNAL | |
Q_SIGNALS Q_SIGNALS | |
Q_SLOT Q_SLOT | |
Q_SLOTS Q_SLOTS | |
T | qFindChild (const QObject *obj, const QString &name) |
QList< T > | qFindChildren (const QObject *obj, const QRegExp ®Exp) |
QList< T > | qFindChildren (const QObject *obj, const QString &name) |
T | qobject_cast (const QObject *object) |
T | qobject_cast (QObject *object) |
QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT | |
void | removeEventFilter (QObject *obj) |
void | setObjectName (const QString &name) |
void | setParent (QObject *parent) |
bool | setProperty (const char *name, const QVariant &value) |
bool | signalsBlocked () const const |
int | startTimer (int interval, Qt::TimerType timerType) |
int | startTimer (std::chrono::milliseconds time, Qt::TimerType timerType) |
QThread * | thread () const const |
Additional Inherited Members | |
![]() | |
objectName | |
![]() | |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, Functor functor) |
bool | disconnect (const QMetaObject::Connection &connection) |
bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method) |
bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method) |
bool | disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method) |
QString | tr (const char *sourceText, const char *disambiguation, int n) |
QString | trUtf8 (const char *sourceText, const char *disambiguation, int n) |
![]() | |
typedef | QObjectList |
![]() | |
virtual void | childEvent (QChildEvent *event) |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | customEvent (QEvent *event) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
bool | isSignalConnected (const QMetaMethod &signal) const const |
int | receivers (const char *signal) const const |
QObject * | sender () const const |
int | senderSignalIndex () const const |
virtual void | timerEvent (QTimerEvent *event) |
Detailed Description
Wrapper class for wl_event_queue interface.
The EventQueue is needed if a different thread is used for the connection. If the interface wrappers are held in a different thread than the connection thread an EventQueue is needed for the thread which holds the interface wrappers. A common example is a dedicated connection thread while the interface wrappers are created in the main thread.
All interface wrappers are set up to support the EventQueue in the most convenient way. The EventQueue needs only to be passed to the Registry. The EventQueue will then be passed to all created wrappers through the tree.
The EventQueue can be used as a drop-in replacement for any wl_event_queue pointer as it provides matching cast operators.
Definition at line 54 of file event_queue.h.
Member Function Documentation
◆ addProxy() [1/3]
|
inline |
Adds the proxy
wrapper class of type T referencing the wl_interface to the EventQueue.
Definition at line 139 of file event_queue.h.
◆ addProxy() [2/3]
|
inline |
Adds the proxy
of type wl_interface (e.g.
wl_compositor) to the EventQueue.
Definition at line 133 of file event_queue.h.
◆ addProxy() [3/3]
void KWayland::Client::EventQueue::addProxy | ( | wl_proxy * | proxy | ) |
Adds the proxy
to the EventQueue.
Definition at line 75 of file event_queue.cpp.
◆ destroy()
void KWayland::Client::EventQueue::destroy | ( | ) |
Destroys the data held by this EventQueue.
This method is supposed to be used when the connection to the Wayland server goes away. If the connection is not valid anymore, it's not possible to call release anymore as that calls into the Wayland connection and the call would fail. This method cleans up the data, so that the instance can be deleted or set up to a new wl_event_queue interface once there is a new connection available.
- See also
- release
Definition at line 40 of file event_queue.cpp.
◆ dispatch
|
slot |
Dispatches all pending events on the EventQueue.
Definition at line 66 of file event_queue.cpp.
◆ isValid()
bool KWayland::Client::EventQueue::isValid | ( | ) |
- Returns
true
if EventQueue is setup.
Definition at line 46 of file event_queue.cpp.
◆ release()
void KWayland::Client::EventQueue::release | ( | ) |
Releases the wl_event_queue interface.
After the interface has been released the EventQueue instance is no longer valid and can be setup with another wl_event_queue interface.
Definition at line 34 of file event_queue.cpp.
◆ setup() [1/2]
void KWayland::Client::EventQueue::setup | ( | ConnectionThread * | connection | ) |
Creates the event queue for the connection
.
This method also connects the eventsRead signal of the ConnectionThread to the dispatch method. Events will be automatically dispatched without the need to call dispatch manually.
- See also
- dispatch
Definition at line 60 of file event_queue.cpp.
◆ setup() [2/2]
void KWayland::Client::EventQueue::setup | ( | wl_display * | display | ) |
Creates the event queue for the display
.
Note: this will not automatically setup the dispatcher. When using this method one needs to ensure that dispatch gets invoked whenever new events need to be dispatched.
- See also
- dispatch
Definition at line 51 of file event_queue.cpp.
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2023 The KDE developers.
Generated on Wed Sep 27 2023 04:08:16 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.