File indexing completed on 2025-03-09 04:54:36

0001 /*
0002    SPDX-FileCopyrightText: 2021-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #include "messageviewercheckbeforedeletingparameters.h"
0008 using namespace MessageViewer;
0009 
0010 class MessageViewer::MessageViewerCheckBeforeDeletingParametersPrivate
0011 {
0012 public:
0013     MessageViewerCheckBeforeDeletingParametersPrivate() = default;
0014     Akonadi::Item::List mList;
0015     MessageViewerCheckBeforeDeletingParameters::DeleteType mType = MessageViewerCheckBeforeDeletingParameters::Unknown;
0016 };
0017 
0018 MessageViewerCheckBeforeDeletingParameters::MessageViewerCheckBeforeDeletingParameters()
0019     : d(new MessageViewer::MessageViewerCheckBeforeDeletingParametersPrivate)
0020 {
0021 }
0022 
0023 MessageViewerCheckBeforeDeletingParameters::MessageViewerCheckBeforeDeletingParameters(const MessageViewerCheckBeforeDeletingParameters &other)
0024     : d(new MessageViewer::MessageViewerCheckBeforeDeletingParametersPrivate)
0025 {
0026     (*this) = other;
0027 }
0028 
0029 MessageViewerCheckBeforeDeletingParameters::~MessageViewerCheckBeforeDeletingParameters() = default;
0030 
0031 Akonadi::Item::List MessageViewerCheckBeforeDeletingParameters::items() const
0032 {
0033     return d->mList;
0034 }
0035 
0036 void MessageViewerCheckBeforeDeletingParameters::setItems(const Akonadi::Item::List &items)
0037 {
0038     d->mList = items;
0039 }
0040 
0041 MessageViewerCheckBeforeDeletingParameters::DeleteType MessageViewerCheckBeforeDeletingParameters::deleteType() const
0042 {
0043     return d->mType;
0044 }
0045 
0046 void MessageViewerCheckBeforeDeletingParameters::setDeleteType(DeleteType type)
0047 {
0048     d->mType = type;
0049 }
0050 
0051 MessageViewerCheckBeforeDeletingParameters &MessageViewerCheckBeforeDeletingParameters::operator=(const MessageViewerCheckBeforeDeletingParameters &other)
0052 {
0053     if (this != &other) {
0054         d->mType = other.deleteType();
0055         d->mList = other.items();
0056     }
0057     return *this;
0058 }
0059 
0060 bool MessageViewerCheckBeforeDeletingParameters::operator==(const MessageViewerCheckBeforeDeletingParameters &other) const
0061 {
0062     return (d->mType == other.deleteType()) && (d->mList == other.items());
0063 }
0064 
0065 bool MessageViewerCheckBeforeDeletingParameters::isValid() const
0066 {
0067     return !d->mList.isEmpty() && (d->mType != Unknown);
0068 }