/// <summary> /// Initialize the view model and all of the known feature page editors. /// </summary> /// <param name="description">The description of the program whose features are being edited.</param> /// <param name="inplaceEditor">The in-place editor hosting this editor. Used for lifetime control.</param> public void Initialize(ProgramDescription description, IInPlaceEditor inplaceEditor) { InPlaceEditor = inplaceEditor; Description = description; ShowRevertToDefault = false; switch (description.ProgramInformation.DataOrigin) { case ProgramInformationOrigin.UserDefined: case ProgramInformationOrigin.None: break; default: ShowRevertToDefault = true; break; } OriginalFeatures = description.Features.Clone(); EditFeatures = OriginalFeatures.Clone(); EditsPriorToRevertToDatabase = null; InitializeToEditFeatures(); }
/// <summary> /// Reverts any changes made to the features, resetting to values originally supplied to the editor. /// </summary> public void RevertChanges() { EditFeatures = OriginalFeatures.Clone(); EditsPriorToRevertToDatabase = null; InitializeToEditFeatures(); }