public SettingSorterOverlayVM(SettingScreenVM _parent) { PartyScreenConfig.ExtraSettings.PropertyChanged += OnEnableChange; _mainParty = new SettingSorterPaneVM(_parent, "Main Party", PartyScreenConfig.ExtraSettings.PartySorter, value => PartyScreenConfig.ExtraSettings.PartySorter = value); _mainPrisoners = new SettingSorterPaneVM(_parent, "Prisoners", PartyScreenConfig.ExtraSettings.PrisonerSorter, value => PartyScreenConfig.ExtraSettings.PrisonerSorter = value); _mainGarrisonAllied = new SettingSorterPaneVM(_parent, "Garrisons/Allied", PartyScreenConfig.ExtraSettings.GarrisonAndAlliedPartySorter, value => PartyScreenConfig.ExtraSettings.GarrisonAndAlliedPartySorter = value); _name = "Sorters"; _hasSeparateSorting = PartyScreenConfig.ExtraSettings.SeparateSortingProfiles; }
public override void OnFinalize() { base.OnFinalize(); PartyScreenConfig.ExtraSettings.PropertyChanged -= OnEnableChange; _mainParty.OnFinalize(); _mainPrisoners.OnFinalize(); _mainGarrisonAllied.OnFinalize(); _mainParty = null; _mainPrisoners = null; _mainGarrisonAllied = null; _name = null; }