public void UpdateColors()
 {
     ScheduleColors.Load(
         new StorageDirectory(Common.Core.Configuration.ResourceManager.Instance.ScheduleSlideTemplatesFolder.RelativePathParts
                              .Merge(new[]
     {
         SlideSettingsManager.Instance.SlideSettings.SlideFolder.ToLower(),
         String.Format("{0} Slides", MediaMetaData.Instance.DataTypeString),
         "tables"
     })));
     SnapshotColors.Load(
         new StorageDirectory(Common.Core.Configuration.ResourceManager.Instance.ScheduleSlideTemplatesFolder.RelativePathParts
                              .Merge(new[]
     {
         SlideSettingsManager.Instance.SlideSettings.SlideFolder.ToLower(),
         String.Format("{0} Slides", MediaMetaData.Instance.DataTypeString),
         "snapshot"
     })));
     OptionsColors.Load(
         new StorageDirectory(Common.Core.Configuration.ResourceManager.Instance.ScheduleSlideTemplatesFolder.RelativePathParts
                              .Merge(new[]
     {
         SlideSettingsManager.Instance.SlideSettings.SlideFolder.ToLower(),
         String.Format("{0} Slides", MediaMetaData.Instance.DataTypeString),
         "options"
     })));
     CalendarColors.Load(
         new StorageDirectory(Common.Core.Configuration.ResourceManager.Instance.CalendarSlideTemplatesFolder.RelativePathParts
                              .Merge(new[]
     {
         "broadcast_cal",
         "broadcast_images",
     })));
     ColorCollectionChanged?.Invoke(this, EventArgs.Empty);
 }
 public void Dispose()
 {
     if (SnapshotSdf != null)
     {
         SnapshotSdf.Release();
     }
     if (SnapshotColors != null)
     {
         SnapshotColors.Release();
     }
     if (OverlapCounter != null)
     {
         OverlapCounter.Release();
     }
 }