From add26cf9adc75d446af60cc5d6bbf7e9c9a5378c Mon Sep 17 00:00:00 2001 From: peri4 Date: Tue, 2 Mar 2021 12:03:19 +0300 Subject: [PATCH] piqt_macros namespace --- libs/piqt/piqt_macros.h | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/libs/piqt/piqt_macros.h b/libs/piqt/piqt_macros.h index b9aab28..623d286 100644 --- a/libs/piqt/piqt_macros.h +++ b/libs/piqt/piqt_macros.h @@ -28,44 +28,44 @@ /// connect PIP event "event" of object "src" directly to Qt slot "slot" of object "tgt" /// e.g. PIQCONNECT(&pip_obj, someEvent, &qt_obj, someSlot) #define PIQCONNECT(src, event, tgt, slot) \ - __piqConnect(src, #event, &(src)->__stat_eh_##event##__, tgt, &decltype(__removePtr__(tgt))::slot); + PIQt::piqConnect(src, #event, &(src)->__stat_eh_##event##__, tgt, &decltype(PIQt::removePtr(tgt))::slot); /// connect PIP event "event" of object "src" to Qt slot "slot" of object "tgt" via Qt::QueuedConnection /// Note! All argument types must be registered in Qt meta-system! /// e.g. PIQCONNECT_QUEUED(&pip_obj, someEvent, &qt_obj, someSlot) #define PIQCONNECT_QUEUED(src, event, tgt, slot) \ - __piqConnectQ(src, #event, &(src)->__stat_eh_##event##__, tgt, #slot); + PIQt::piqConnectQ(src, #event, &(src)->__stat_eh_##event##__, tgt, #slot); /// connect Qt signal "sig" of object "src" directly to PIP event handler "handler" of object "tgt" /// e.g. QPICONNECT(&qt_obj, someSignal, &pip_obj, someHandler) /// Returns QMetaObject::Connection #define QPICONNECT(src, sig, tgt, handler) \ - __qpiConnect(src, &decltype(__removePtr__(src))::sig, tgt, &(tgt)->__stat_eh_##handler##__); + PIQt::qpiConnect(src, &decltype(PIQt::removePtr(src))::sig, tgt, &(tgt)->__stat_eh_##handler##__); -template T __removePtr__(T*) {} -template QArgument __qargument(const T & v) {return QArgument(QMetaType::typeName(qMetaTypeId()), v);} +namespace PIQt { +template T removePtr(T*) {} +template QArgument qargument(const T & v) {return QArgument(QMetaType::typeName(qMetaTypeId()), v);} template -void __piqConnect(PIObject * source, const char * event, void(*func)(void*,ARGS...), O * target, SR(O::*slot)(ARGS...)) { +void piqConnect(PIObject * source, const char * event, void(*func)(void*,ARGS...), O * target, SR(O::*slot)(ARGS...)) { PIObject::piConnectLS(source, PIStringAscii(event), PIObject::__newFunctor(func, [target,slot](ARGS... args){(target->*slot)(args...);}), LOCATION); } - template -void __piqConnectQ(PIObject * source, const char * event, void(*func)(void*,ARGS...), QObject * target, const char * slot) { +void piqConnectQ(PIObject * source, const char * event, void(*func)(void*,ARGS...), QObject * target, const char * slot) { PIObject::piConnectLS(source, PIStringAscii(event), PIObject::__newFunctor(func, [target,slot](ARGS... args){ - QMetaObject::invokeMethod(target, slot, Qt::QueuedConnection, __qargument(args)...); + QMetaObject::invokeMethod(target, slot, Qt::QueuedConnection, qargument(args)...); }), LOCATION); } - template -QMetaObject::Connection __qpiConnect(O * source, SR(O::*signal)(ARGS...), PIObject * target, void(*handler)(void*,ARGS...)) { +QMetaObject::Connection qpiConnect(O * source, SR(O::*signal)(ARGS...), PIObject * target, void(*handler)(void*,ARGS...)) { return QObject::connect(source, signal, source, [target,handler](ARGS... args){handler(target, args...);}); } +} #endif // PIQT_MACROS_H