protected override void deserialize(BaseItem item, List <PropertyNames> changedProperties) { Class c = item as Class; Color color = ColorTranslator.FromHtml(c.Color); byte[] rawColor = new byte[] { color.R, color.G, color.B }; if (changedProperties != null) { if (CourseNumber != c.CourseNumber) { changedProperties.Add(PropertyNames.CourseNumber); } if ((GradeScales == null && c.GradeScales != null) || (GradeScales != null && c.GradeScales == null) || (GradeScales != null && c.GradeScales != null && !GradeScales.SequenceEqual(c.GradeScales))) { changedProperties.Add(PropertyNames.GradeScales); } if (ShouldAverageGradeTotals != c.ShouldAverageGradeTotals) { changedProperties.Add(PropertyNames.ShouldAverageGradeTotals); } if (Credits != c.Credits) { changedProperties.Add(PropertyNames.Credits); } if (Position != c.Position) { changedProperties.Add(PropertyNames.Position); } if (!RawColor.SequenceEqual(rawColor)) { changedProperties.Add(PropertyNames.Color); } if (DoesRoundGradesUp != c.DoesRoundGradesUp) { changedProperties.Add(PropertyNames.DoesRoundGradesUp); } } CourseNumber = c.CourseNumber; GradeScales = c.GradeScales; ShouldAverageGradeTotals = c.ShouldAverageGradeTotals; Credits = c.Credits; Position = c.Position; RawColor = rawColor; DoesRoundGradesUp = c.DoesRoundGradesUp; base.deserialize(c, changedProperties); }
protected override void deserialize(BaseItem item, List <SyncPropertyNames> changedProperties) { Class c = item as Class; byte[] rawColor = ColorHelper.ToBytes(c.Color); if (changedProperties != null) { if (CourseNumber != c.CourseNumber) { changedProperties.Add(SyncPropertyNames.CourseNumber); } var gradeScales = GetGradeScales(); if ((gradeScales == null && c.GradeScales != null) || (gradeScales != null && c.GradeScales == null) || (gradeScales != null && c.GradeScales != null && !gradeScales.SequenceEqual(c.GradeScales))) { changedProperties.Add(SyncPropertyNames.GradeScales); } if (ShouldAverageGradeTotals != c.ShouldAverageGradeTotals) { changedProperties.Add(SyncPropertyNames.ShouldAverageGradeTotals); } if (Credits != c.Credits) { changedProperties.Add(SyncPropertyNames.Credits); } if (Position != c.Position) { changedProperties.Add(SyncPropertyNames.Position); } if (!RawColor.SequenceEqual(rawColor)) { changedProperties.Add(SyncPropertyNames.Color); } if (DoesRoundGradesUp != c.DoesRoundGradesUp) { changedProperties.Add(SyncPropertyNames.DoesRoundGradesUp); } if (GpaType != c.GpaType) { changedProperties.Add(SyncPropertyNames.GpaType); } if (PassingGrade != c.PassingGrade) { changedProperties.Add(SyncPropertyNames.PassingGrade); } if (OverriddenGrade != c.OverriddenGrade) { changedProperties.Add(SyncPropertyNames.OverriddenGrade); } if (OverriddenGPA != c.OverriddenGPA) { changedProperties.Add(SyncPropertyNames.OverriddenGPA); } if (StartDate != c.StartDate.ToUniversalTime()) { changedProperties.Add(SyncPropertyNames.StartDate); } if (EndDate != c.EndDate.ToUniversalTime()) { changedProperties.Add(SyncPropertyNames.EndDate); } } CourseNumber = c.CourseNumber; SetGradeScales(c.GradeScales); ShouldAverageGradeTotals = c.ShouldAverageGradeTotals; Credits = c.Credits; Position = c.Position; RawColor = rawColor; DoesRoundGradesUp = c.DoesRoundGradesUp; GpaType = c.GpaType; PassingGrade = c.PassingGrade; OverriddenGPA = c.OverriddenGPA; OverriddenGrade = c.OverriddenGrade; StartDate = c.StartDate.ToUniversalTime(); EndDate = c.EndDate.ToUniversalTime(); base.deserialize(c, changedProperties); }