File indexing completed on 2024-06-02 04:19:45
0001 /* ============================================================ 0002 * 0003 * This file is a part of digiKam project 0004 * https://www.digikam.org 0005 * 0006 * Date : 2017-05-06 0007 * Description : utilities for digiKam setup 0008 * 0009 * SPDX-FileCopyrightText: 2017 by Simon Frei <freisim93 at gmail dot com> 0010 * 0011 * SPDX-License-Identifier: GPL-2.0-or-later 0012 * 0013 * ============================================================ */ 0014 0015 #include "setuputils.h" 0016 0017 // Local includes 0018 0019 #include "digikam_globals.h" 0020 0021 namespace Digikam 0022 { 0023 0024 QStringList cleanUserFilterString(QString filterString, 0025 const bool caseSensitive, 0026 const bool useSemicolon) 0027 { 0028 if (!caseSensitive) 0029 { 0030 filterString = filterString.toLower(); 0031 } 0032 0033 QChar separator; 0034 0035 if (!useSemicolon) 0036 { 0037 separator = QLatin1Char(' '); 0038 filterString.remove(QLatin1Char('*')); 0039 filterString.replace(QLatin1Char(';'), QLatin1Char(' ')); 0040 filterString.replace(QLatin1String(" ."), QLatin1String(" ")); 0041 filterString.replace(QLatin1String(" -."), QLatin1String(" -")); 0042 } 0043 else 0044 { 0045 separator = QLatin1Char(';'); 0046 filterString.replace(QLatin1String(";."), QLatin1String(";")); 0047 filterString.replace(QLatin1String(";-."), QLatin1String(";-")); 0048 } 0049 0050 QStringList filterList; 0051 0052 Q_FOREACH (const QString& filter, filterString.split(separator, QT_SKIP_EMPTY_PARTS)) 0053 { 0054 filterList << filter.trimmed(); 0055 } 0056 0057 return filterList; 0058 } 0059 0060 } // namespace Digikam