CalendarHandledEvent.cs 921 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. using System;
  2. namespace PRSDesktop
  3. {
  4. public enum CalendarHandledStatus
  5. {
  6. Handled,
  7. Unhandled,
  8. Cancel
  9. }
  10. public interface ICalendarHandledEventArgs
  11. {
  12. object Item { get; }
  13. CalendarHandledStatus Status { get; set; }
  14. }
  15. public interface ICalendarHandledEventArgs<T> : ICalendarHandledEventArgs
  16. {
  17. T? Item { get; }
  18. }
  19. public class CalendarHandledEventArgs<T> : EventArgs, ICalendarHandledEventArgs<T>
  20. {
  21. public T? Item { get; }
  22. object ICalendarHandledEventArgs.Item => Item;
  23. public CalendarHandledStatus Status { get; set; }
  24. public CalendarHandledEventArgs(T? item)
  25. {
  26. Item = item;
  27. Status = CalendarHandledStatus.Unhandled;
  28. }
  29. }
  30. public delegate void CalendarHandledEvent(object sender, ICalendarHandledEventArgs args);
  31. }