summaryrefslogtreecommitdiffstats
path: root/accounts/maildir/maildirsettings.cpp
diff options
context:
space:
mode:
authorChristian Mollekopf <chrigi_1@fastmail.fm>2016-03-13 23:56:32 +0100
committerChristian Mollekopf <chrigi_1@fastmail.fm>2016-03-13 23:56:32 +0100
commit5ec954917c9a59ce0ec8ba3a30b99bb9cd30e297 (patch)
treebb9b6dd209017d7f0bc662ff795ae22c110dd955 /accounts/maildir/maildirsettings.cpp
parent8ed66dd788152e670808e95b38588841c5e8214d (diff)
downloadkube-5ec954917c9a59ce0ec8ba3a30b99bb9cd30e297.tar.gz
kube-5ec954917c9a59ce0ec8ba3a30b99bb9cd30e297.zip
Added a path validator
Diffstat (limited to 'accounts/maildir/maildirsettings.cpp')
-rw-r--r--accounts/maildir/maildirsettings.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/accounts/maildir/maildirsettings.cpp b/accounts/maildir/maildirsettings.cpp
index 58ff77fd..18abaebb 100644
--- a/accounts/maildir/maildirsettings.cpp
+++ b/accounts/maildir/maildirsettings.cpp
@@ -23,6 +23,7 @@
23#include <sink/store.h> 23#include <sink/store.h>
24#include <QDebug> 24#include <QDebug>
25#include <QUuid> 25#include <QUuid>
26#include <QDir>
26 27
27MaildirSettings::MaildirSettings(QObject *parent) 28MaildirSettings::MaildirSettings(QObject *parent)
28 : QObject(parent) 29 : QObject(parent)
@@ -77,8 +78,28 @@ QString MaildirSettings::path() const
77 return mPath; 78 return mPath;
78} 79}
79 80
81QValidator *MaildirSettings::pathValidator() const
82{
83 class PathValidator : public QValidator {
84 State validate(QString &input, int &pos) const {
85 Q_UNUSED(pos);
86 if (QDir(input).exists()) {
87 return Acceptable;
88 } else {
89 return Intermediate;
90 }
91 }
92 };
93 static PathValidator *pathValidator = new PathValidator;
94 return pathValidator;
95}
96
80void MaildirSettings::save() 97void MaildirSettings::save()
81{ 98{
99 if (!QDir(mPath).exists()) {
100 qWarning() << "The path doesn't exist: " << mPath;
101 return;
102 }
82 if (!mIdentifier.isEmpty()) { 103 if (!mIdentifier.isEmpty()) {
83 Sink::ApplicationDomain::SinkResource resource(mIdentifier); 104 Sink::ApplicationDomain::SinkResource resource(mIdentifier);
84 resource.setProperty("path", mPath); 105 resource.setProperty("path", mPath);