Warning, file /pim/trojita/tests/Utils/TagGenerator.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /* Copyright (C) 2006 - 2014 Jan Kundrát <jkt@flaska.net>
0002 
0003    This file is part of the Trojita Qt IMAP e-mail client,
0004    http://trojita.flaska.net/
0005 
0006    This program is free software; you can redistribute it and/or
0007    modify it under the terms of the GNU General Public License as
0008    published by the Free Software Foundation; either version 2 of
0009    the License or (at your option) version 3 or any later version
0010    accepted by the membership of KDE e.V. (or its successor approved
0011    by the membership of KDE e.V.), which shall act as a proxy
0012    defined in Section 14 of version 3 of the license.
0013 
0014    This program is distributed in the hope that it will be useful,
0015    but WITHOUT ANY WARRANTY; without even the implied warranty of
0016    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
0017    GNU General Public License for more details.
0018 
0019    You should have received a copy of the GNU General Public License
0020    along with this program.  If not, see <http://www.gnu.org/licenses/>.
0021 */
0022 
0023 #ifndef TAGGENERATOR_H
0024 #define TAGGENERATOR_H
0025 
0026 #include <QByteArray>
0027 
0028 class TagGenerator {
0029     int number;
0030 public:
0031     TagGenerator(): number(-1) {}
0032     QByteArray mk( const char * const what )
0033     {
0034         ++number;
0035         return last( what );
0036     }
0037     QByteArray last() const
0038     {
0039         return QStringLiteral("y%1").arg(number).toUtf8();
0040     }
0041     QByteArray last( const char * const what ) const
0042     {
0043         return QStringLiteral("y%1 ").arg(number).toUtf8() + QByteArray(what);
0044     }
0045     QByteArray prev() const
0046     {
0047         return QStringLiteral("y%1").arg(number-1).toUtf8();
0048     }
0049     QByteArray prev( const char * const what ) const
0050     {
0051         return QStringLiteral("y%1 ").arg(number-1).toUtf8() + QByteArray(what);
0052     }
0053     void reset()
0054     {
0055         number = -1;
0056     }
0057 };
0058 
0059 #endif // TAGGENERATOR_H