diff options
author | Tim Jenssen <tim.jenssen@qt.io> | 2019-06-24 18:27:22 +0200 |
---|---|---|
committer | Tim Jenssen <tim.jenssen@qt.io> | 2019-07-18 14:50:33 +0000 |
commit | 703eef169f3058945c2fe1d2c59cb99fc5ae41ba (patch) | |
tree | 4493fee6e098bd3f2540e8da2e7f54bba83277e3 /src/plugins/qmlprojectmanager | |
parent | b8d4a9bef85d86fc4081cb7fe7c6e163a26b8124 (diff) |
QmlProject: cleanup the code
Change-Id: I10ce1fcba253e006b26864066510f3334893ce4c
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Diffstat (limited to 'src/plugins/qmlprojectmanager')
3 files changed, 14 insertions, 122 deletions
diff --git a/src/plugins/qmlprojectmanager/fileformat/filefilteritems.cpp b/src/plugins/qmlprojectmanager/fileformat/filefilteritems.cpp index 988c51dbfe..82190ccde6 100644 --- a/src/plugins/qmlprojectmanager/fileformat/filefilteritems.cpp +++ b/src/plugins/qmlprojectmanager/fileformat/filefilteritems.cpp @@ -293,24 +293,6 @@ QSet<QString> FileFilterBaseItem::filesInSubTree(const QDir &rootDir, const QDir return fileSet; } -QmlFileFilterItem::QmlFileFilterItem(QObject *parent) - : FileFilterBaseItem(parent) -{ - setFilter(QLatin1String("*.qml")); -} - -JsFileFilterItem::JsFileFilterItem(QObject *parent) - : FileFilterBaseItem(parent) -{ - setFilter(QLatin1String("*.js")); -} - -void JsFileFilterItem::setFilter(const QString &filter) -{ - FileFilterBaseItem::setFilter(filter); - emit filterChanged(); -} - ImageFileFilterItem::ImageFileFilterItem(QObject *parent) : FileFilterBaseItem(parent) { @@ -323,33 +305,10 @@ ImageFileFilterItem::ImageFileFilterItem(QObject *parent) setFilter(filter); } -void ImageFileFilterItem::setFilter(const QString &filter) -{ - FileFilterBaseItem::setFilter(filter); - emit filterChanged(); -} - -CssFileFilterItem::CssFileFilterItem(QObject *parent) - : FileFilterBaseItem(parent) -{ - setFilter(QLatin1String("*.css")); -} - -void CssFileFilterItem::setFilter(const QString &filter) -{ - FileFilterBaseItem::setFilter(filter); - emit filterChanged(); -} - -OtherFileFilterItem::OtherFileFilterItem(QObject *parent) +FileFilterItem::FileFilterItem(const QString &fileFilter, QObject *parent) : FileFilterBaseItem(parent) { -} - -void OtherFileFilterItem::setFilter(const QString &filter) -{ - FileFilterBaseItem::setFilter(filter); - emit filterChanged(); + setFilter(fileFilter); } } // namespace QmlProjectManager diff --git a/src/plugins/qmlprojectmanager/fileformat/filefilteritems.h b/src/plugins/qmlprojectmanager/fileformat/filefilteritems.h index c10d7405ef..827423e1e0 100644 --- a/src/plugins/qmlprojectmanager/fileformat/filefilteritems.h +++ b/src/plugins/qmlprojectmanager/fileformat/filefilteritems.h @@ -107,67 +107,17 @@ private: Utils::FileSystemWatcher *m_dirWatcher = nullptr; QTimer m_updateFileListTimer; - friend class ProjectItem; }; -class QmlFileFilterItem : public FileFilterBaseItem { - Q_OBJECT - -public: - QmlFileFilterItem(QObject *parent = nullptr); -}; - -class JsFileFilterItem : public FileFilterBaseItem { - Q_OBJECT - Q_PROPERTY(QString filter READ filter WRITE setFilter NOTIFY filterChanged) - - void setFilter(const QString &filter); - -signals: - void filterChanged(); - +class FileFilterItem : public FileFilterBaseItem { public: - JsFileFilterItem(QObject *parent = nullptr); + FileFilterItem(const QString &fileFilter, QObject *parent = nullptr); }; class ImageFileFilterItem : public FileFilterBaseItem { - Q_OBJECT - Q_PROPERTY(QString filter READ filter WRITE setFilter NOTIFY filterChanged) - - void setFilter(const QString &filter); - -signals: - void filterChanged(); - public: ImageFileFilterItem(QObject *parent = nullptr); }; -class CssFileFilterItem : public FileFilterBaseItem { - Q_OBJECT - Q_PROPERTY(QString filter READ filter WRITE setFilter NOTIFY filterChanged) - - void setFilter(const QString &filter); - -signals: - void filterChanged(); - -public: - CssFileFilterItem(QObject *parent = nullptr); -}; - -class OtherFileFilterItem : public FileFilterBaseItem { - Q_OBJECT - Q_PROPERTY(QString filter READ filter WRITE setFilter NOTIFY filterChanged) - - void setFilter(const QString &filter); - -signals: - void filterChanged(); - -public: - OtherFileFilterItem(QObject *parent = nullptr); -}; - } // namespace QmlProjectManager diff --git a/src/plugins/qmlprojectmanager/fileformat/qmlprojectfileformat.cpp b/src/plugins/qmlprojectmanager/fileformat/qmlprojectfileformat.cpp index 2102147c29..febf016785 100644 --- a/src/plugins/qmlprojectmanager/fileformat/qmlprojectfileformat.cpp +++ b/src/plugins/qmlprojectmanager/fileformat/qmlprojectfileformat.cpp @@ -37,7 +37,7 @@ enum { namespace { -void setupFileFilterItem(QmlProjectManager::FileFilterBaseItem *fileFilterItem, const QmlJS::SimpleReaderNode::Ptr &node) +QmlProjectManager::FileFilterBaseItem *setupFileFilterItem(QmlProjectManager::FileFilterBaseItem *fileFilterItem, const QmlJS::SimpleReaderNode::Ptr &node) { const QVariant directoryProperty = node->property(QLatin1String("directory")); if (directoryProperty.isValid()) @@ -57,6 +57,7 @@ void setupFileFilterItem(QmlProjectManager::FileFilterBaseItem *fileFilterItem, if (debug) qDebug() << "directory:" << directoryProperty << "recursive" << recursiveProperty << "paths" << pathsProperty; + return fileFilterItem; } } //namespace @@ -100,37 +101,19 @@ QmlProjectItem *QmlProjectFileFormat::parseProjectFile(const Utils::FilePath &fi qDebug() << "importPath:" << importPathsProperty << "mainFile:" << mainFileProperty; foreach (const QmlJS::SimpleReaderNode::Ptr &childNode, rootNode->children()) { + if (debug) + qDebug() << "reading type:" << childNode->name(); + if (childNode->name() == QLatin1String("QmlFiles")) { - if (debug) - qDebug() << "QmlFiles"; - auto qmlFileFilterItem = new QmlFileFilterItem(projectItem); - setupFileFilterItem(qmlFileFilterItem, childNode); - projectItem->appendContent(qmlFileFilterItem); + projectItem->appendContent(setupFileFilterItem(new FileFilterItem("*.qml"), childNode)); } else if (childNode->name() == QLatin1String("JavaScriptFiles")) { - if (debug) - qDebug() << "JavaScriptFiles"; - auto jsFileFilterItem = new JsFileFilterItem(projectItem); - setupFileFilterItem(jsFileFilterItem, childNode); - projectItem->appendContent(jsFileFilterItem); + projectItem->appendContent(setupFileFilterItem(new FileFilterItem("*.js"), childNode)); } else if (childNode->name() == QLatin1String("ImageFiles")) { - if (debug) - qDebug() << "ImageFiles"; - auto imageFileFilterItem = new ImageFileFilterItem(projectItem); - setupFileFilterItem(imageFileFilterItem, childNode); - projectItem->appendContent(imageFileFilterItem); - + projectItem->appendContent(setupFileFilterItem(new ImageFileFilterItem(projectItem), childNode)); } else if (childNode->name() == QLatin1String("CssFiles")) { - if (debug) - qDebug() << "CssFiles"; - auto cssFileFilterItem = new CssFileFilterItem(projectItem); - setupFileFilterItem(cssFileFilterItem, childNode); - projectItem->appendContent(cssFileFilterItem); + projectItem->appendContent(setupFileFilterItem(new FileFilterItem("*.css"), childNode)); } else if (childNode->name() == QLatin1String("Files")) { - if (debug) - qDebug() << "Files"; - auto otherFileFilterItem = new OtherFileFilterItem(projectItem); - setupFileFilterItem(otherFileFilterItem, childNode); - projectItem->appendContent(otherFileFilterItem); + projectItem->appendContent(setupFileFilterItem(new FileFilterBaseItem(), childNode)); } else if (childNode->name() == "Environment") { const auto properties = childNode->properties(); auto i = properties.constBegin(); |