Skip to content

Rework how new incidences update the view

Nicolas Fella requested to merge nicolasfella/calindori:updates into master

The basic idea is that instead of propagating the need for refreshing in QML the model itself emits the dataChanged and let Qt do the rest for us. For this:

  • A new model that contains the monthdata plus the incidencecount for each day is created. I decided to make a new model to keep the old model free of the concrete incidence implementation to be able to reuse it in another context.
  • When an incidence is changed LocalCalendar emits a changes signal which makes the model update its data and thus QML update its view

There's a few things that need to be improved in future patches:

  • The changed signal from LocalCalendar should be refined to make the model not update all rows/roles
  • The CalendarMonthView/MonthView/DayDelegate now mix displaying data with incidences (for the main view) and without (for the date picker). This should probably be handled differently Nevertheless I think this patch is a move in the right direction

Merge request reports