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

0001 /*
0002     CT Day of 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 "ctdom.h"
0010 #include <KLocalizedString>
0011 
0012 QList<QString> CTDayOfMonth::shortName;
0013 
0014 CTDayOfMonth::CTDayOfMonth(const QString &tokStr)
0015     : CTUnit(CTDayOfMonth::MINIMUM, CTDayOfMonth::MAXIMUM, tokStr)
0016 {
0017 }
0018 
0019 QString CTDayOfMonth::describe() const
0020 {
0021     initializeNames();
0022     return (enabledCount() == CTDayOfMonth::MAXIMUM) ? i18n("every day ") : CTUnit::genericDescribe(shortName);
0023 }
0024 
0025 QString CTDayOfMonth::getName(const int ndx)
0026 {
0027     initializeNames();
0028     return shortName[ndx];
0029 }
0030 
0031 void CTDayOfMonth::initializeNames()
0032 {
0033     if (shortName.isEmpty()) {
0034         shortName << QLatin1String("") << i18n("1st") << i18n("2nd") << i18n("3rd") << i18n("4th") << i18n("5th") << i18n("6th") << i18n("7th") << i18n("8th")
0035                   << i18n("9th") << i18n("10th") << i18n("11th") << i18n("12th") << i18n("13th") << i18n("14th") << i18n("15th") << i18n("16th") << i18n("17th")
0036                   << i18n("18th") << i18n("19th") << i18n("20th") << i18n("21st") << i18n("22nd") << i18n("23rd") << i18n("24th") << i18n("25th")
0037                   << i18n("26th") << i18n("27th") << i18n("28th") << i18n("29th") << i18n("30th") << i18n("31st");
0038     }
0039 }