Beispiel #1
0
        private PeriodFormViewModel CreatePeriodForm(Period period, IObservable <bool> canDelete)
        {
            var periodForm = new PeriodFormViewModel(period, canDelete, this.ResourceManager);

            periodForm.Delete
            .WhereNotNull()
            .Subscribe(_ => this.CurrentPosterIndex = 0);

            periodForm.Delete
            .WhereNotNull()
            .Subscribe(deletedPeriod => this.periodsSource.Remove(deletedPeriod));

            return(periodForm);
        }
Beispiel #2
0
 private bool ArePeriodsNonOverlapping(PeriodFormViewModel earlier, PeriodFormViewModel later)
 => Int32.TryParse(earlier.EndYear, out int earlierEndYear) &&
 Int32.TryParse(later.StartYear, out int laterStartYear) &&
 (earlierEndYear < laterStartYear ||
  earlierEndYear == laterStartYear && earlier.EndMonth <= later.StartMonth);