+ Event *event = static_cast<Event*>(index.internalPointer());
+
+ // determine severity of conflict
+ Favourite eventTimeConflict = event->timeConflict(); // cache value as event->timeConflict is expensive
+ enum ConflictSeverity {csNone, csWeak, csStrong} conflictSeverity = csNone;
+ switch (event->favourite()) {
+ case Favourite_strong:
+ conflictSeverity = (eventTimeConflict == Favourite_strong) ? csStrong : csNone;
+ break;
+ case Favourite_weak:
+ conflictSeverity = (eventTimeConflict == Favourite_no) ? csNone : csWeak;
+ break;
+ case Favourite_no:
+ conflictSeverity = csNone;
+ break;
+ }
+