File indexing completed on 2025-03-09 04:54:32
0001 /* -*- c++ -*- 0002 headerstrategy.cpp 0003 0004 This file is part of KMail, the KDE mail client. 0005 SPDX-FileCopyrightText: 2003 Marc Mutz <mutz@kde.org> 0006 0007 SPDX-FileCopyrightText: 2013-2024 Laurent Montel <montel@kde.org> 0008 0009 SPDX-License-Identifier: GPL-2.0-or-later 0010 */ 0011 0012 #include "headerstrategy.h" 0013 0014 // 0015 // HeaderStrategy abstract base: 0016 // 0017 using namespace MessageViewer; 0018 HeaderStrategy::HeaderStrategy() = default; 0019 0020 HeaderStrategy::~HeaderStrategy() = default; 0021 0022 QStringList HeaderStrategy::headersToDisplay() const 0023 { 0024 return {}; 0025 } 0026 0027 QStringList HeaderStrategy::headersToHide() const 0028 { 0029 return {}; 0030 } 0031 0032 bool HeaderStrategy::showHeader(const QString &header) const 0033 { 0034 const QString headerLower(header.toLower()); 0035 if (headersToDisplay().contains(headerLower)) { 0036 return true; 0037 } 0038 if (headersToHide().contains(headerLower)) { 0039 return false; 0040 } 0041 return defaultPolicy() == Display; 0042 } 0043 0044 QStringList HeaderStrategy::stringList(const char *const headers[], int numHeaders) 0045 { 0046 QStringList sl; 0047 sl.reserve(numHeaders); 0048 for (int i = 0; i < numHeaders; ++i) { 0049 sl.push_back(QLatin1StringView(headers[i])); 0050 } 0051 return sl; 0052 }