Jump to content

Plasma/QMLCalendar

From KDE Community Wiki

The Goal

Have a QML Calendar Controls shared with Qt as much as possible.

The Design

Frontend done in styleable QtQuickControls, powered by C++/QAbstractItemModel backend, which different parties can extend, filling in their own events system.

The Code

Current code lives in QtQuickControls repo, branch wip/calendar


git clone git://anongit.kde.org/qt/qtquickcontrols.git -b wip/calendar

The TODO

  • Calendar QML Controls - WIP by Mitch
    • weeknumber Control - to be added by Mitch later
  • QQuickAbstractCalendarModel - WIP by Mitch (70%)
  • QQuickCalendarModel (default Qt) - tbd
    • note - Mitch is currently working on QQCM, which will later be split into QQACM and QQCM
  • Figure out Plasma style for QQC - tbd by KDE
  • Allow assignment of QML Locale object to C++ QLocale property - https://bugreports.qt-project.org/browse/QTBUG-36125

Model properties

  • selectedDate - date selected in the view
  • first/lastVisibleDate - dates visible in the view
  • locale - for setting the locale

What roles we need in the model

  • DateRole - returns date for the grid index
  • EventsRole - returns list of Event objects
    • Event 1 (to be done in later version)
      • Properties: eventType, startDay, endDay, startTime, endTime, ....
    • Event 2

DateDelegate - needed properties

  • isCurrentDate
  • isCurrentMonth