TimeSheetAppointment.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Drawing;
  4. using System.Windows.Media.Imaging;
  5. using Comal.Classes;
  6. using InABox.Core;
  7. using InABox.WPF;
  8. namespace PRSDesktop
  9. {
  10. public class TimeSheetAppointment : CalendarAppointment<TimeSheet>
  11. {
  12. public override TimeSpan StartTime
  13. {
  14. get => Model.Approved.IsEmpty() ? Model.Start : Model.ApprovedStart;
  15. set
  16. {
  17. }
  18. }
  19. public override TimeSpan EndTime
  20. {
  21. get => Model.Approved.IsEmpty() ? Model.Finish : Model.ApprovedFinish;
  22. set
  23. {
  24. }
  25. }
  26. public override DateTime Date => Model.Date;
  27. public override bool CanAdjust => false;
  28. public TimeSheetAppointment(TimeSheet model, Employee employee, Func<TimeSheetModel, String> color) : base(model, employee, x => x.ActivityLink.Color)
  29. {
  30. Notes = Model.Notes;
  31. Subject = Model.ActivityLink.Description;
  32. var images = new List<Bitmap>();
  33. if (!model.Approved.IsEmpty())
  34. images.Add(Resources.tick_sml.Resize(32,32));
  35. images.Add(Resources.tick_sml.Resize(32, 32));
  36. Image = ImageUtils.MergeBitmaps(images, 10)?.AsBitmapImage();
  37. }
  38. }
  39. }