diff --git a/src/core/Tools.cpp b/src/core/Tools.cpp index 9a553d54c..341159546 100644 --- a/src/core/Tools.cpp +++ b/src/core/Tools.cpp @@ -38,4 +38,17 @@ QString humanReadableFileSize(qint64 bytes) return QString("%1 %2").arg(QLocale().toString(size, 'f', 2), units.at(i)); } +bool hasChild(const QObject* parent, const QObject* child) +{ + if (!parent || !child) { + return false; + } + Q_FOREACH (QObject* c, parent->children()) { + if (child == c || hasChild(c, child)) { + return true; + } + } + return false; +} + } // namespace Tools diff --git a/src/core/Tools.h b/src/core/Tools.h index 45be9b590..1241a6c39 100644 --- a/src/core/Tools.h +++ b/src/core/Tools.h @@ -18,11 +18,13 @@ #ifndef KEEPASSX_TOOLS_H #define KEEPASSX_TOOLS_H +#include #include namespace Tools { QString humanReadableFileSize(qint64 bytes); +bool hasChild(const QObject* parent, const QObject* child); } // namespace Tools