diff --git a/src/shared/qrceditor/resourcefile.cpp b/src/shared/qrceditor/resourcefile.cpp index b88444c6e16e356cf693b1131387ab40ebd85f51..bfab4b0315f8441ad3cd5b7c547e641865bb5c47 100644 --- a/src/shared/qrceditor/resourcefile.cpp +++ b/src/shared/qrceditor/resourcefile.cpp @@ -54,6 +54,19 @@ TRANSLATOR qdesigner_internal::ResourceModel namespace qdesigner_internal { + +/****************************************************************************** +** FileList +*/ + +bool FileList::containsFile(File *file) +{ + foreach(File *tmpFile, *this) + if (tmpFile->name == file->name && tmpFile->prefix() == file->prefix()) + return true; + return false; +} + /****************************************************************************** ** ResourceFile */ @@ -375,7 +388,7 @@ bool ResourceFile::contains(const QString &prefix, const QString &file) const Prefix * const p = m_prefix_list.at(pref_idx); Q_ASSERT(p); File equalFile(p, absolutePath(file)); - return p->file_list.contains(&equalFile); + return p->file_list.containsFile(&equalFile); } bool ResourceFile::contains(int pref_idx, const QString &file) const @@ -383,7 +396,7 @@ bool ResourceFile::contains(int pref_idx, const QString &file) const Q_ASSERT(pref_idx >= 0 && pref_idx < m_prefix_list.count()); Prefix * const p = m_prefix_list.at(pref_idx); File equalFile(p, absolutePath(file)); - return p->file_list.contains(&equalFile); + return p->file_list.containsFile(&equalFile); } /*static*/ QString ResourceFile::fixPrefix(const QString &prefix) diff --git a/src/shared/qrceditor/resourcefile_p.h b/src/shared/qrceditor/resourcefile_p.h index 61b6c594b64ddd1558598108a07e63c9c4221620..3ee346cb0e69465ef9642c231e4b8aeb0bbc848e 100644 --- a/src/shared/qrceditor/resourcefile_p.h +++ b/src/shared/qrceditor/resourcefile_p.h @@ -90,7 +90,12 @@ struct File : public Node { QString name; QString alias; }; -typedef QList<File *> FileList; + +class FileList : public QList<File *> +{ +public: + bool containsFile(File *file); +}; /*! \class Prefix