blob: ae113cf8323ec4e72fffbf0b1126003e3c0e6d1c (
plain)
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 | // Copyright (C) 2020 The Qt Company Ltd.// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only#include"qglobal.h"#include"qromancalendar_p.h"#include"qromancalendar_data_p.h" QT_BEGIN_NAMESPACE /*! \since 5.14 \class QRomanCalendar \inmodule QtCore \brief The QRomanCalendar class is a shared base for calendars based on the ancient Roman calendar. Calendars based on the ancient Roman calendar have several common properties: they have the same names for months, the month lengths depend in a common way on whether the year is a leap year. They differ in how they determine which years are leap years. \sa QGregorianCalendar, QJulianCalendar, QMilankovicCalendar*/intQRomanCalendar::daysInMonth(int month,int year)const{if(!year || month <1|| month >12)return0;if(month ==2)return year ==QCalendar::Unspecified ||isLeapYear(year) ?29:28;// Long if odd up to July = 7, or if even from 8 = August onwards:return30| ((month &1) ^ (month >>3));}intQRomanCalendar::minimumDaysInMonth()const{return28;}boolQRomanCalendar::isLunar()const{return false;}boolQRomanCalendar::isLuniSolar()const{return false;}boolQRomanCalendar::isSolar()const{return true;}const QCalendarLocale *QRomanCalendar::localeMonthIndexData()const{returnQtPrivate::Roman::locale_data;}const char16_t *QRomanCalendar::localeMonthData()const{returnQtPrivate::Roman::months_data;} QT_END_NAMESPACE
|