CalendarModel QML Type

A calendar model. More...

Import Statement: import Qt.labs.calendar 1.0

Properties

Methods

Detailed Description

CalendarModel provides a way of creating a range of MonthGrid instances. It is typically used as a model for a ListView that uses MonthGrid as a delegate.

ListView {
    id: listview

    width: 200; height: 200
    snapMode: ListView.SnapOneItem
    orientation: ListView.Horizontal
    highlightRangeMode: ListView.StrictlyEnforceRange

    model: CalendarModel {
        from: new Date(2015, 0, 1)
        to: new Date(2015, 11, 31)
    }

    delegate: MonthGrid {
        width: listview.width
        height: listview.height

        month: model.month
        year: model.year
        locale: Qt.locale("en_US")
    }

    ScrollIndicator.horizontal: ScrollIndicator { }
}

In addition to the index property, a list of model data roles are available in the context of each delegate:

model.month : int The number of the month
model.year : int The number of the year

The Qt Labs Calendar module uses 0-based month numbers to be consistent with the JavaScript Date type, that is used by the QML language. This means that Date::getMonth() can be passed to the methods as is. When dealing with month numbers directly, it is highly recommended to use the following enumeration values to avoid confusion.

Constant Description
Calendar.January January (0)
Calendar.February February (1)
Calendar.March March (2)
Calendar.April April (3)
Calendar.May May (4)
Calendar.June June (5)
Calendar.July July (6)
Calendar.August August (7)
Calendar.September September (8)
Calendar.October October (9)
Calendar.November November (10)
Calendar.December December (11)

Note: Types in Qt.labs modules are not guaranteed to remain compatible in future versions.

See also MonthGrid and Calendar.

Property Documentation

from : date

This property holds the start date.

to : date

This property holds the end date.

Method Documentation

int indexOf(Date date)

Returns the model index of the specified date.

int indexOf(int year, int month)

Returns the model index of the specified year and month.

int monthAt(int index)

Returns the month number at the specified model index.

int yearAt(int index)

Returns the year number at the specified model index.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qml-qt-labs-calendar-calendarmodel.html