Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
qgregoriancalendar_p.h
Go to the documentation of this file.
1
// Copyright (C) 2021 The Qt Company Ltd.
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
// Qt-Security score:significant reason:default
4
5
#
ifndef
QGREGORIAN_CALENDAR_P_H
6
#
define
QGREGORIAN_CALENDAR_P_H
7
8
//
9
// W A R N I N G
10
// -------------
11
//
12
// This file is not part of the Qt API. It exists for the convenience
13
// of calendar implementations. This header file may change from version to
14
// version without notice, or even be removed.
15
//
16
// We mean it.
17
//
18
19
#
include
"qromancalendar_p.h"
20
21
#
include
<
optional
>
22
23
QT_BEGIN_NAMESPACE
24
25
class
Q_CORE_EXPORT
QGregorianCalendar
:
public
QRomanCalendar
26
{
27
// TODO: provide static methods, called by the overrides, that can be called
28
// directly by QDate to optimize various parts.
29
public
:
30
// Calendar property:
31
QString name()
const
override;
32
static
QStringList nameList();
33
// Date queries:
34
bool
isLeapYear(
int
year)
const
override;
35
// Julian Day conversions:
36
bool
dateToJulianDay(
int
year,
int
month,
int
day, qint64 *jd)
const
override;
37
QCalendar::YearMonthDay julianDayToDate(qint64 jd)
const
override;
38
qint64 matchCenturyToWeekday(
const
QCalendar::YearMonthDay &parts,
int
dow)
const
override;
39
40
// Static optimized versions for the benefit of QDate:
41
static
int
weekDayOfJulian(qint64 jd);
42
static
bool
leapTest(
int
year);
43
static
int
monthLength(
int
month,
int
year);
44
static
bool
validParts(
int
year,
int
month,
int
day);
45
static
QCalendar::YearMonthDay partsFromJulian(qint64 jd);
46
static
std::optional<qint64> julianFromParts(
int
year,
int
month,
int
day);
47
// Used internally:
48
static
int
yearStartWeekDay(
int
year);
49
static
int
yearSharingWeekDays(QDate date);
50
};
51
52
QT_END_NAMESPACE
53
54
#
endif
// QGREGORIAN_CALENDAR_P_H
QAtomicInt
\inmodule QtCore
Definition
qatomic.h:114
QAtomicPointer
\macro Q_ATOMIC_INTnn_IS_SUPPORTED
Definition
qatomic.h:125
QCalendarBackend
The QCalendarBackend class provides basic calendaring functions.
Definition
qcalendarbackend_p.h:74
QGregorianCalendar
The QGregorianCalendar class implements the Gregorian calendar.
Definition
qgregoriancalendar_p.h:26
QtPrivate::QCalendarRegistry
Definition
qcalendar.cpp:45
QtPrivate::QCalendarRegistry::fromEnum
const QCalendarBackend * fromEnum(QCalendar::System system)
Definition
qcalendar.cpp:389
QtPrivate::QCalendarRegistry::availableCalendars
QStringList availableCalendars()
Definition
qcalendar.cpp:326
QtPrivate::QCalendarRegistry::fromName
const QCalendarBackend * fromName(QAnyStringView name)
Definition
qcalendar.cpp:343
QtPrivate::QCalendarRegistry::registerCustomBackend
void registerCustomBackend(QCalendarBackend *backend, const QStringList &names)
Definition
qcalendar.cpp:177
QtPrivate::QCalendarRegistry::~QCalendarRegistry
~QCalendarRegistry()
Definition
qcalendar.cpp:154
QtPrivate::QCalendarRegistry::isGregorian
bool isGregorian(const QCalendarBackend *backend) const
Definition
qcalendar.cpp:136
QtPrivate::QCalendarRegistry::isBeingDestroyed
bool isBeingDestroyed() const
Definition
qcalendar.cpp:112
QtPrivate::QCalendarRegistry::fromIndex
const QCalendarBackend * fromIndex(size_t index)
Definition
qcalendar.cpp:359
QtPrivate::QCalendarRegistry::QCalendarRegistry
QCalendarRegistry()
Definition
qcalendar.cpp:104
QtPrivate::QCalendarRegistry::backendNames
QStringList backendNames(const QCalendarBackend *backend)
Definition
qcalendar.cpp:413
QtPrivate::QCalendarRegistry::gregorian
const QCalendarBackend * gregorian()
Definition
qcalendar.cpp:123
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qsequentialanimationgroup.cpp:47
QtPrivate
Definition
qalloc.h:29
SAFE_D
#define SAFE_D()
Definition
qcalendar.cpp:626
Q_GLOBAL_STATIC
Q_GLOBAL_STATIC(QtPrivate::QCalendarRegistry, calendarRegistry)
CASE
#define CASE(mod, type)
QCalendarLocale
Definition
qcalendarbackend_p.h:35
QCalendarLocale::m_longMonthStandalone_size
quint16 m_longMonthStandalone_size
Definition
qcalendarbackend_p.h:67
QCalendarLocale::monthName
QLocaleData::DataRange monthName(QLocale::FormatType type) const
Definition
qcalendarbackend_p.h:40
QCalendarLocale::m_longMonth_idx
quint16 m_longMonth_idx
Definition
qcalendarbackend_p.h:61
QCalendarLocale::m_shortMonthStandalone_idx
quint16 m_shortMonthStandalone_idx
Definition
qcalendarbackend_p.h:62
QCalendarLocale::m_narrowMonthStandalone_size
quint8 m_narrowMonthStandalone_size
Definition
qcalendarbackend_p.h:69
QCalendarLocale::m_shortMonthStandalone_size
quint8 m_shortMonthStandalone_size
Definition
qcalendarbackend_p.h:68
QCalendarLocale::m_script_id
quint16 m_script_id
Definition
qcalendarbackend_p.h:36
QCalendarLocale::m_shortMonth_idx
quint16 m_shortMonth_idx
Definition
qcalendarbackend_p.h:62
QCalendarLocale::m_longMonthStandalone_idx
quint16 m_longMonthStandalone_idx
Definition
qcalendarbackend_p.h:61
QCalendarLocale::m_shortMonth_size
quint8 m_shortMonth_size
Definition
qcalendarbackend_p.h:68
QCalendarLocale::m_narrowMonthStandalone_idx
quint16 m_narrowMonthStandalone_idx
Definition
qcalendarbackend_p.h:63
QCalendarLocale::standaloneMonthName
QLocaleData::DataRange standaloneMonthName(QLocale::FormatType type) const
Definition
qcalendarbackend_p.h:49
QCalendarLocale::m_language_id
quint16 m_language_id
Definition
qcalendarbackend_p.h:36
QCalendarLocale::m_territory_id
quint16 m_territory_id
Definition
qcalendarbackend_p.h:36
QCalendarLocale::m_narrowMonth_size
quint8 m_narrowMonth_size
Definition
qcalendarbackend_p.h:69
QCalendarLocale::m_longMonth_size
quint16 m_longMonth_size
Definition
qcalendarbackend_p.h:67
QCalendarLocale::m_narrowMonth_idx
quint16 m_narrowMonth_idx
Definition
qcalendarbackend_p.h:63
QCalendarRegistryCaseInsensitiveAnyStringViewLessThan::is_transparent
Definition
qcalendar.cpp:31
QCalendarRegistryCaseInsensitiveAnyStringViewLessThan
Definition
qcalendar.cpp:30
QCalendarRegistryCaseInsensitiveAnyStringViewLessThan::operator()
bool operator()(QAnyStringView lhs, QAnyStringView rhs) const
Definition
qcalendar.cpp:32
qtbase
src
corelib
time
qgregoriancalendar_p.h
Generated on
for Qt by
1.18.0