diff --git a/src/plugins/projectexplorer/deploymentdata.cpp b/src/plugins/projectexplorer/deploymentdata.cpp new file mode 100644 index 00000000000..459973d6872 --- /dev/null +++ b/src/plugins/projectexplorer/deploymentdata.cpp @@ -0,0 +1,68 @@ +/**************************************************************************** +** +** Copyright (C) 2018 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +****************************************************************************/ + +#include "deploymentdata.h" + +#include + +namespace ProjectExplorer { + +void DeploymentData::setLocalInstallRoot(const Utils::FileName &installRoot) +{ + m_localInstallRoot = installRoot; +} + +void DeploymentData::addFile(const DeployableFile &file) +{ + for (int i = 0; i < m_files.size(); ++i) { + if (m_files.at(i).localFilePath() == file.localFilePath()) { + m_files[i] = file; + return; + } + } + m_files << file; +} + +void DeploymentData::addFile(const QString &localFilePath, const QString &remoteDirectory, + DeployableFile::Type type) +{ + addFile(DeployableFile(localFilePath, remoteDirectory, type)); +} + +DeployableFile DeploymentData::deployableForLocalFile(const QString &localFilePath) const +{ + return Utils::findOrDefault(m_files, [&localFilePath](const DeployableFile &d) { + return d.localFilePath().toString() == localFilePath; + }); +} + +bool DeploymentData::operator==(const DeploymentData &other) const +{ + return m_files.toSet() == other.m_files.toSet() + && m_localInstallRoot == other.m_localInstallRoot; +} + + +} // namespace ProjectExplorer diff --git a/src/plugins/projectexplorer/deploymentdata.h b/src/plugins/projectexplorer/deploymentdata.h index 7841d058a2b..76ceb6fda90 100644 --- a/src/plugins/projectexplorer/deploymentdata.h +++ b/src/plugins/projectexplorer/deploymentdata.h @@ -28,10 +28,7 @@ #include "deployablefile.h" #include "projectexplorer_export.h" -#include - #include -#include namespace ProjectExplorer { @@ -39,55 +36,26 @@ class PROJECTEXPLORER_EXPORT DeploymentData { public: void setFileList(const QList &files) { m_files = files; } + QList allFiles() const { return m_files; } - void setLocalInstallRoot(const Utils::FileName &installRoot) - { - m_localInstallRoot = installRoot; - } + void setLocalInstallRoot(const Utils::FileName &installRoot); Utils::FileName localInstallRoot() const { return m_localInstallRoot; } - void addFile(const DeployableFile &file) - { - for (int i = 0; i < m_files.size(); ++i) { - if (m_files.at(i).localFilePath() == file.localFilePath()) { - m_files[i] = file; - return; - } - } - m_files << file; - } - + void addFile(const DeployableFile &file); void addFile(const QString &localFilePath, const QString &remoteDirectory, - DeployableFile::Type type = DeployableFile::TypeNormal) - { - addFile(DeployableFile(localFilePath, remoteDirectory, type)); - } + DeployableFile::Type type = DeployableFile::TypeNormal); int fileCount() const { return m_files.count(); } DeployableFile fileAt(int index) const { return m_files.at(index); } - QList allFiles() const { return m_files; } + DeployableFile deployableForLocalFile(const QString &localFilePath) const; - DeployableFile deployableForLocalFile(const QString &localFilePath) const - { - return Utils::findOrDefault(m_files, [&localFilePath](const DeployableFile &d) { - return d.localFilePath().toString() == localFilePath; - }); - } - - bool operator==(const DeploymentData &other) const - { - return m_files.toSet() == other.m_files.toSet() - && m_localInstallRoot == other.m_localInstallRoot; - } + bool operator==(const DeploymentData &other) const; private: QList m_files; Utils::FileName m_localInstallRoot; }; -inline bool operator!=(const DeploymentData &d1, const DeploymentData &d2) -{ - return !(d1 == d2); -} +inline bool operator!=(const DeploymentData &d1, const DeploymentData &d2) { return !(d1 == d2); } } // namespace ProjectExplorer diff --git a/src/plugins/projectexplorer/projectexplorer.pro b/src/plugins/projectexplorer/projectexplorer.pro index adb2d74e377..de8dca3b72d 100644 --- a/src/plugins/projectexplorer/projectexplorer.pro +++ b/src/plugins/projectexplorer/projectexplorer.pro @@ -274,6 +274,7 @@ SOURCES += projectexplorer.cpp \ devicesupport/desktopdeviceconfigurationwidget.cpp \ devicesupport/desktopprocesssignaloperation.cpp \ deployablefile.cpp \ + deploymentdata.cpp \ deploymentdatamodel.cpp \ deploymentdataview.cpp \ customtoolchain.cpp \ diff --git a/src/plugins/projectexplorer/projectexplorer.qbs b/src/plugins/projectexplorer/projectexplorer.qbs index 148d9f3057e..e98f926e938 100644 --- a/src/plugins/projectexplorer/projectexplorer.qbs +++ b/src/plugins/projectexplorer/projectexplorer.qbs @@ -54,6 +54,7 @@ Project { "dependenciespanel.cpp", "dependenciespanel.h", "deployablefile.cpp", "deployablefile.h", "deployconfiguration.cpp", "deployconfiguration.h", + "deploymentdata.cpp", "deploymentdata.h", "deploymentdataview.cpp", "deploymentdataview.h",