File indexing completed on 2024-05-05 05:48:31

0001 /*
0002     CT Month Implementation
0003     --------------------------------------------------------------------
0004     SPDX-FileCopyrightText: 1999 Gary Meyer <gary@meyer.net>
0005     --------------------------------------------------------------------
0006     SPDX-License-Identifier: GPL-2.0-or-later
0007 */
0008 
0009 #include "ctmonth.h"
0010 #include <KLocalizedString>
0011 
0012 QList<QString> CTMonth::shortName;
0013 
0014 CTMonth::CTMonth(const QString &tokStr)
0015     : CTUnit(CTMonth::MINIMUM, CTMonth::MAXIMUM, tokStr)
0016 {
0017 }
0018 
0019 QString CTMonth::describe() const
0020 {
0021     initializeNames();
0022     return (enabledCount() == CTMonth::MAXIMUM) ? i18n("every month") : CTUnit::genericDescribe(shortName);
0023 }
0024 
0025 QString CTMonth::getName(const int ndx)
0026 {
0027     initializeNames();
0028     return shortName.at(ndx);
0029 }
0030 
0031 void CTMonth::initializeNames()
0032 {
0033     if (shortName.isEmpty()) {
0034         shortName << QLatin1String("") << i18n("January") << i18n("February") << i18n("March") << i18n("April") << i18nc("May long", "May") << i18n("June")
0035                   << i18nc("July long", "July") << i18n("August") << i18n("September") << i18n("October") << i18n("November") << i18n("December");
0036     }
0037 }