Cockatrice/libcockatrice_utility/libcockatrice/utility/qt_utils.h
2025-12-05 03:20:35 +01:00

20 lines
453 B
C++

#ifndef COCKATRICE_QT_UTILS_H
#define COCKATRICE_QT_UTILS_H
#include <QObject>
namespace QtUtils
{
template <typename T> T *findParentOfType(const QObject *obj)
{
const QObject *p = obj ? obj->parent() : nullptr;
while (p) {
if (auto casted = qobject_cast<T *>(const_cast<QObject *>(p))) {
return casted;
}
p = p->parent();
}
return nullptr;
}
} // namespace QtUtils
#endif // COCKATRICE_QT_UTILS_H