File indexing completed on 2025-02-16 04:55:55
0001 /* 0002 SPDX-FileCopyrightText: 2020-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 #include "sievecommonactioncondition.h" 0007 #include "libksieveui_debug.h" 0008 0009 #include <KLocalizedString> 0010 0011 #include "autocreatescripts/sieveeditorgraphicalmodewidget.h" 0012 #include <QUrl> 0013 #include <QWidget> 0014 0015 using namespace KSieveUi; 0016 0017 SieveCommonActionCondition::SieveCommonActionCondition(SieveEditorGraphicalModeWidget *sieveGraphicalModeWidget, 0018 const QString &name, 0019 const QString &label, 0020 QObject *parent) 0021 : QObject(parent) 0022 , mSieveGraphicalModeWidget(sieveGraphicalModeWidget) 0023 , mName(name) 0024 , mLabel(label) 0025 { 0026 } 0027 0028 SieveCommonActionCondition::~SieveCommonActionCondition() = default; 0029 0030 QWidget *SieveCommonActionCondition::createParamWidget(QWidget *parent) const 0031 { 0032 return new QWidget(parent); 0033 } 0034 0035 KSieveCore::SieveImapAccountSettings SieveCommonActionCondition::sieveImapAccountSettings() const 0036 { 0037 if (mSieveGraphicalModeWidget) { 0038 return mSieveGraphicalModeWidget->sieveImapAccountSettings(); 0039 } 0040 qCWarning(LIBKSIEVEUI_LOG) << "SieveCommonActionCondition::sieveImapAccountSettings Problem during initialize mSieveGraphicalModeWidget "; 0041 return {}; 0042 } 0043 0044 QStringList SieveCommonActionCondition::sieveCapabilities() const 0045 { 0046 if (mSieveGraphicalModeWidget) { 0047 return mSieveGraphicalModeWidget->sieveCapabilities(); 0048 } 0049 qCWarning(LIBKSIEVEUI_LOG) << "SieveCommonActionCondition::sieveCapabilities Problem during initialize mSieveGraphicalModeWidget "; 0050 return {}; 0051 } 0052 0053 QString SieveCommonActionCondition::name() const 0054 { 0055 return mName; 0056 } 0057 0058 QString SieveCommonActionCondition::label() const 0059 { 0060 return mLabel; 0061 } 0062 0063 QString SieveCommonActionCondition::code(QWidget *) const 0064 { 0065 return {}; 0066 } 0067 0068 QStringList SieveCommonActionCondition::needRequires(QWidget *parent) const 0069 { 0070 Q_UNUSED(parent) 0071 return {}; 0072 } 0073 0074 bool SieveCommonActionCondition::needCheckIfServerHasCapability() const 0075 { 0076 return false; 0077 } 0078 0079 QString SieveCommonActionCondition::serverNeedsCapability() const 0080 { 0081 return {}; 0082 } 0083 0084 QString SieveCommonActionCondition::help() const 0085 { 0086 return {}; 0087 } 0088 0089 QString SieveCommonActionCondition::comment() const 0090 { 0091 return mComment; 0092 } 0093 0094 void SieveCommonActionCondition::setComment(const QString &comment) 0095 { 0096 mComment = comment; 0097 } 0098 0099 void SieveCommonActionCondition::unknownTagValue(const QString &tagValue, QString &error) 0100 { 0101 error += i18n("An unknown tag value \"%1\" was found during parsing action \"%2\".", tagValue, name()) + QLatin1Char('\n'); 0102 } 0103 void SieveCommonActionCondition::unknownTag(const QStringView &tag, QString &error) 0104 { 0105 const QString result = tag.toString(); 0106 error += i18n("An unknown tag \"%1\" was found during parsing action \"%2\".", result, name()) + QLatin1Char('\n'); 0107 } 0108 0109 void SieveCommonActionCondition::tooManyArguments(const QStringView &tagName, int index, int maxValue, QString &error) 0110 { 0111 const QString result = tagName.toString(); 0112 error += i18n("Too many arguments found for \"%1\", max value is %2, number of value found %3 for %4", name(), maxValue, index, result) + QLatin1Char('\n'); 0113 } 0114 0115 void SieveCommonActionCondition::serverDoesNotSupportFeatures(const QString &feature, QString &error) 0116 { 0117 error += i18n("A feature \"%1\" in condition \"%2\" is not supported by server", feature, name()) + QLatin1Char('\n'); 0118 } 0119 0120 QUrl SieveCommonActionCondition::href() const 0121 { 0122 return {}; 0123 } 0124 0125 #include "moc_sievecommonactioncondition.cpp"