private DecorationsSaveSlotInfo ProvideSaveSlotInfo(IList <DecorationsSaveSlotInfo> allSlots) { var dialog = new SaveDataSlotSelectorWindow() { Owner = this }; dialog.Initialize(allSlots); if (dialog.ShowDialog() != true) { return(null); } return((DecorationsSaveSlotInfo)dialog.SelectedSaveSlot); }
public static Func <IList <T>, T> CreateSaveSlotSelector <T>(Window ownerWindow) where T : SaveSlotInfoBase { return(slots => { var dialog = new SaveDataSlotSelectorWindow() { Owner = ownerWindow }; dialog.Initialize(slots); if (dialog.ShowDialog() != true) { return null; } return (T)dialog.SelectedSaveSlot; }); }