@@ -695,49 +695,46 @@ internal void Invalidate(MultiDayViewUpdateFlag flag)
695695 RadCalendar calendar = this . owner ;
696696 if ( calendar != null && calendar . IsTemplateApplied && calendar . Model . IsTreeLoaded )
697697 {
698- if ( calendar . IsLoaded )
698+ CalendarMultiDayViewModel multiDayViewModel = this . owner . Model . multiDayViewModel ;
699+ if ( flag == MultiDayViewUpdateFlag . All )
699700 {
700- CalendarMultiDayViewModel multiDayViewModel = this . owner . Model . multiDayViewModel ;
701- if ( flag == MultiDayViewUpdateFlag . All )
702- {
703- multiDayViewModel . CalendarCells ? . Clear ( ) ;
704- multiDayViewModel . CalendarHeaderCells ? . Clear ( ) ;
705- multiDayViewModel . CalendarDecorations ? . Clear ( ) ;
706- multiDayViewModel . allDayAppointmentInfos ? . Clear ( ) ;
707- multiDayViewModel . appointmentInfos ? . Clear ( ) ;
708-
709- calendar . allDayAreaLayer ? . ClearRealizedAppointmentVisuals ( ) ;
710- calendar . timeRulerLayer ? . ClearRealizedAppointmentVisuals ( ) ;
711- calendar . contentLayer ? . RecycleAllVisuals ( ) ;
712- }
713-
714- if ( flag == MultiDayViewUpdateFlag . AffectsTimeRuler )
715- {
716- this . RecycleTimeRulerVisuals ( ) ;
717- multiDayViewModel . timeRulerItems ? . Clear ( ) ;
718- multiDayViewModel . timerRulerLines ? . Clear ( ) ;
719- multiDayViewModel . appointmentInfos ? . Clear ( ) ;
720- }
701+ multiDayViewModel . CalendarCells ? . Clear ( ) ;
702+ multiDayViewModel . CalendarHeaderCells ? . Clear ( ) ;
703+ multiDayViewModel . CalendarDecorations ? . Clear ( ) ;
704+ multiDayViewModel . allDayAppointmentInfos ? . Clear ( ) ;
705+ multiDayViewModel . appointmentInfos ? . Clear ( ) ;
706+
707+ calendar . allDayAreaLayer ? . ClearRealizedAppointmentVisuals ( ) ;
708+ calendar . timeRulerLayer ? . ClearRealizedAppointmentVisuals ( ) ;
709+ calendar . contentLayer ? . RecycleAllVisuals ( ) ;
710+ }
721711
722- if ( flag == MultiDayViewUpdateFlag . AffectsAppointments )
723- {
724- multiDayViewModel . appointmentInfos ? . Clear ( ) ;
725- multiDayViewModel . allDayAppointmentInfos ? . Clear ( ) ;
726- calendar . allDayAreaLayer ? . ClearRealizedAppointmentVisuals ( ) ;
727- calendar . timeRulerLayer ? . ClearRealizedAppointmentVisuals ( ) ;
728- }
712+ if ( flag == MultiDayViewUpdateFlag . AffectsTimeRuler )
713+ {
714+ this . RecycleTimeRulerVisuals ( ) ;
715+ multiDayViewModel . timeRulerItems ? . Clear ( ) ;
716+ multiDayViewModel . timerRulerLines ? . Clear ( ) ;
717+ multiDayViewModel . appointmentInfos ? . Clear ( ) ;
718+ }
729719
730- if ( flag == MultiDayViewUpdateFlag . AffectsSpecialSlots )
731- {
732- multiDayViewModel . specialSlots ? . Clear ( ) ;
733- calendar . timeRulerLayer ? . ClearRealizedSlotVisuals ( ) ;
734- }
720+ if ( flag == MultiDayViewUpdateFlag . AffectsAppointments )
721+ {
722+ multiDayViewModel . appointmentInfos ? . Clear ( ) ;
723+ multiDayViewModel . allDayAppointmentInfos ? . Clear ( ) ;
724+ calendar . allDayAreaLayer ? . ClearRealizedAppointmentVisuals ( ) ;
725+ calendar . timeRulerLayer ? . ClearRealizedAppointmentVisuals ( ) ;
726+ }
735727
736- calendar . Model . multiDayViewModel . updateFlag = flag ;
737- calendar . timeRulerLayer . shouldArrange = true ;
738- calendar . allDayAreaLayer . shouldArrange = true ;
728+ if ( flag == MultiDayViewUpdateFlag . AffectsSpecialSlots )
729+ {
730+ multiDayViewModel . specialSlots ? . Clear ( ) ;
731+ calendar . timeRulerLayer ? . ClearRealizedSlotVisuals ( ) ;
739732 }
740733
734+ calendar . Model . multiDayViewModel . updateFlag = flag ;
735+ calendar . timeRulerLayer . shouldArrange = true ;
736+ calendar . allDayAreaLayer . shouldArrange = true ;
737+
741738 calendar . Invalidate ( ) ;
742739 }
743740 }
0 commit comments