summaryrefslogtreecommitdiff
path: root/src/plugins/remotelinux/genericdirectuploadstep.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/remotelinux/genericdirectuploadstep.cpp')
-rw-r--r--src/plugins/remotelinux/genericdirectuploadstep.cpp28
1 files changed, 27 insertions, 1 deletions
diff --git a/src/plugins/remotelinux/genericdirectuploadstep.cpp b/src/plugins/remotelinux/genericdirectuploadstep.cpp
index 9fe297cd53..eb40f4529d 100644
--- a/src/plugins/remotelinux/genericdirectuploadstep.cpp
+++ b/src/plugins/remotelinux/genericdirectuploadstep.cpp
@@ -42,6 +42,7 @@ namespace RemoteLinux {
namespace Internal {
namespace {
const char IncrementalKey[] = "RemoteLinux.GenericDirectUploadStep.Incremental";
+const char IgnoreMissingFilesKey[] = "RemoteLinux.GenericDirectUploadStep.IgnoreMissingFiles";
class ConfigWidget : public SimpleBuildStepConfigWidget
{
@@ -50,12 +51,17 @@ public:
ConfigWidget(GenericDirectUploadStep *step) : SimpleBuildStepConfigWidget(step)
{
m_incrementalCheckBox.setText(tr("Incremental deployment"));
+ m_ignoreMissingFilesCheckBox.setText(tr("Ignore missing files"));
QVBoxLayout *mainLayout = new QVBoxLayout(this);
mainLayout->setMargin(0);
mainLayout->addWidget(&m_incrementalCheckBox);
+ mainLayout->addWidget(&m_ignoreMissingFilesCheckBox);
m_incrementalCheckBox.setChecked(step->incrementalDeployment());
+ m_ignoreMissingFilesCheckBox.setChecked(step->ignoreMissingFiles());
connect(&m_incrementalCheckBox, SIGNAL(toggled(bool)),
SLOT(handleIncrementalChanged(bool)));
+ connect(&m_ignoreMissingFilesCheckBox, SIGNAL(toggled(bool)),
+ SLOT(handleIgnoreMissingFilesChanged(bool)));
}
bool showWidget() const { return true; }
@@ -66,7 +72,13 @@ private:
step->setIncrementalDeployment(incremental);
}
+ Q_SLOT void handleIgnoreMissingFilesChanged(bool ignoreMissingFiles) {
+ GenericDirectUploadStep *step = qobject_cast<GenericDirectUploadStep *>(this->step());
+ step->setIgnoreMissingFiles(ignoreMissingFiles);
+ }
+
QCheckBox m_incrementalCheckBox;
+ QCheckBox m_ignoreMissingFilesCheckBox;
};
} // anonymous namespace
@@ -74,10 +86,11 @@ private:
class GenericDirectUploadStepPrivate
{
public:
- GenericDirectUploadStepPrivate() : incremental(true) {}
+ GenericDirectUploadStepPrivate() : incremental(true), ignoreMissingFiles(false) {}
GenericDirectUploadService deployService;
bool incremental;
+ bool ignoreMissingFiles;
};
} // namespace Internal
@@ -108,6 +121,7 @@ bool GenericDirectUploadStep::initInternal(QString *error)
{
deployService()->setDeployableFiles(target()->deploymentData().allFiles());
deployService()->setIncrementalDeployment(incrementalDeployment());
+ deployService()->setIgnoreMissingFiles(ignoreMissingFiles());
return deployService()->isDeploymentPossible(error);
}
@@ -121,6 +135,7 @@ bool GenericDirectUploadStep::fromMap(const QVariantMap &map)
if (!AbstractRemoteLinuxDeployStep::fromMap(map))
return false;
setIncrementalDeployment(map.value(QLatin1String(Internal::IncrementalKey), true).toBool());
+ setIgnoreMissingFiles(map.value(QLatin1String(Internal::IgnoreMissingFilesKey), false).toBool());
return true;
}
@@ -128,6 +143,7 @@ QVariantMap GenericDirectUploadStep::toMap() const
{
QVariantMap map = AbstractRemoteLinuxDeployStep::toMap();
map.insert(QLatin1String(Internal::IncrementalKey), incrementalDeployment());
+ map.insert(QLatin1String(Internal::IgnoreMissingFilesKey), ignoreMissingFiles());
return map;
}
@@ -147,6 +163,16 @@ bool GenericDirectUploadStep::incrementalDeployment() const
return d->incremental;
}
+void GenericDirectUploadStep::setIgnoreMissingFiles(bool ignoreMissingFiles)
+{
+ d->ignoreMissingFiles = ignoreMissingFiles;
+}
+
+bool GenericDirectUploadStep::ignoreMissingFiles() const
+{
+ return d->ignoreMissingFiles;
+}
+
Core::Id GenericDirectUploadStep::stepId()
{
return "RemoteLinux.DirectUploadStep";