|
|
|
@ -20,6 +20,7 @@ |
|
|
|
#define COLLECTIONEXPIRYWIDGET_H |
|
|
|
#define COLLECTIONEXPIRYWIDGET_H |
|
|
|
#include "mailcommon_export.h" |
|
|
|
#include "mailcommon_export.h" |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#include <MailCommon/ExpireCollectionAttribute> |
|
|
|
#include <QWidget> |
|
|
|
#include <QWidget> |
|
|
|
class QCheckBox; |
|
|
|
class QCheckBox; |
|
|
|
class KPluralHandlingSpinBox; |
|
|
|
class KPluralHandlingSpinBox; |
|
|
|
@ -27,6 +28,26 @@ class QRadioButton; |
|
|
|
class QPushButton; |
|
|
|
class QPushButton; |
|
|
|
namespace MailCommon { |
|
|
|
namespace MailCommon { |
|
|
|
class FolderRequester; |
|
|
|
class FolderRequester; |
|
|
|
|
|
|
|
struct MAILCOMMON_EXPORT CollectionExpirySettings |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
Q_REQUIRED_RESULT bool isValid() const { |
|
|
|
|
|
|
|
return daysToExpireRead != -1 || |
|
|
|
|
|
|
|
daysToExpireUnread != -1 || |
|
|
|
|
|
|
|
mUnreadExpireUnits != ExpireCollectionAttribute::ExpireNever || |
|
|
|
|
|
|
|
mReadExpireUnits != ExpireCollectionAttribute::ExpireNever || |
|
|
|
|
|
|
|
mExpireAction != ExpireCollectionAttribute::ExpireDelete || |
|
|
|
|
|
|
|
mExpireToFolderId != -1; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bool expiryGloballyOn = false; |
|
|
|
|
|
|
|
int daysToExpireRead = -1; |
|
|
|
|
|
|
|
int daysToExpireUnread = -1; |
|
|
|
|
|
|
|
ExpireCollectionAttribute::ExpireUnits mUnreadExpireUnits = ExpireCollectionAttribute::ExpireNever; |
|
|
|
|
|
|
|
ExpireCollectionAttribute::ExpireUnits mReadExpireUnits = ExpireCollectionAttribute::ExpireNever; |
|
|
|
|
|
|
|
ExpireCollectionAttribute::ExpireAction mExpireAction = ExpireCollectionAttribute::ExpireDelete; |
|
|
|
|
|
|
|
Akonadi::Collection::Id mExpireToFolderId = -1; |
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
class MAILCOMMON_EXPORT CollectionExpiryWidget : public QWidget |
|
|
|
class MAILCOMMON_EXPORT CollectionExpiryWidget : public QWidget |
|
|
|
{ |
|
|
|
{ |
|
|
|
Q_OBJECT |
|
|
|
Q_OBJECT |
|
|
|
@ -34,6 +55,8 @@ public: |
|
|
|
explicit CollectionExpiryWidget(QWidget *parent = nullptr); |
|
|
|
explicit CollectionExpiryWidget(QWidget *parent = nullptr); |
|
|
|
~CollectionExpiryWidget(); |
|
|
|
~CollectionExpiryWidget(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void load(const MailCommon::CollectionExpirySettings &settings); |
|
|
|
|
|
|
|
Q_REQUIRED_RESULT MailCommon::CollectionExpirySettings save(); |
|
|
|
Q_SIGNALS: |
|
|
|
Q_SIGNALS: |
|
|
|
void saveAndExpireRequested(); |
|
|
|
void saveAndExpireRequested(); |
|
|
|
void configChanged(); |
|
|
|
void configChanged(); |
|
|
|
@ -49,7 +72,6 @@ private: |
|
|
|
FolderRequester *folderSelector = nullptr; |
|
|
|
FolderRequester *folderSelector = nullptr; |
|
|
|
QRadioButton *deletePermanentlyRB = nullptr; |
|
|
|
QRadioButton *deletePermanentlyRB = nullptr; |
|
|
|
QPushButton *expireNowPB = nullptr; |
|
|
|
QPushButton *expireNowPB = nullptr; |
|
|
|
bool mChanged = false; |
|
|
|
|
|
|
|
}; |
|
|
|
}; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|