mirror of
https://github.com/Artemis-RGB/Artemis
synced 2026-11-12 03:48:56 +00:00
Profiles - Finished moving and improving timeline logic
This commit is contained in:
1 parent
4ede3876d4
commit
458fd2a704
20 files changed
+351
-245
No files matched your search
@@ -13,31 +13,32 @@ namespace Artemis.Storage.Migrations
|
||||
|
||||
public void Apply(LiteRepository repository)
|
||||
{
|
||||
List<ProfileEntity> profiles = repository.Query<ProfileEntity>().ToList();
|
||||
foreach (ProfileEntity profileEntity in profiles)
|
||||
{
|
||||
foreach (FolderEntity folder in profileEntity.Folders.Where(f => f.MainSegmentLength == TimeSpan.Zero))
|
||||
{
|
||||
if (folder.PropertyEntities.Any(p => p.KeyframeEntities.Any()))
|
||||
folder.MainSegmentLength = folder.PropertyEntities.Where(p => p.KeyframeEntities.Any()).Max(p => p.KeyframeEntities.Max(k => k.Position));
|
||||
if (folder.MainSegmentLength == TimeSpan.Zero)
|
||||
folder.MainSegmentLength = TimeSpan.FromSeconds(5);
|
||||
|
||||
folder.PlayMode = 0;
|
||||
}
|
||||
|
||||
foreach (LayerEntity layer in profileEntity.Layers.Where(l => l.MainSegmentLength == TimeSpan.Zero))
|
||||
{
|
||||
if (layer.PropertyEntities.Any(p => p.KeyframeEntities.Any()))
|
||||
layer.MainSegmentLength = layer.PropertyEntities.Where(p => p.KeyframeEntities.Any()).Max(p => p.KeyframeEntities.Max(k => k.Position));
|
||||
if (layer.MainSegmentLength == TimeSpan.Zero)
|
||||
layer.MainSegmentLength = TimeSpan.FromSeconds(5);
|
||||
|
||||
layer.PlayMode = 0;
|
||||
}
|
||||
|
||||
repository.Update(profileEntity);
|
||||
}
|
||||
// Lesson for next time: Use BsonDocuments in migrations
|
||||
// List<ProfileEntity> profiles = repository.Query<ProfileEntity>().ToList();
|
||||
// foreach (ProfileEntity profileEntity in profiles)
|
||||
// {
|
||||
// foreach (FolderEntity folder in profileEntity.Folders.Where(f => f.MainSegmentLength == TimeSpan.Zero))
|
||||
// {
|
||||
// if (folder.PropertyEntities.Any(p => p.KeyframeEntities.Any()))
|
||||
// folder.MainSegmentLength = folder.PropertyEntities.Where(p => p.KeyframeEntities.Any()).Max(p => p.KeyframeEntities.Max(k => k.Position));
|
||||
// if (folder.MainSegmentLength == TimeSpan.Zero)
|
||||
// folder.MainSegmentLength = TimeSpan.FromSeconds(5);
|
||||
//
|
||||
// folder.PlayMode = 0;
|
||||
// }
|
||||
//
|
||||
// foreach (LayerEntity layer in profileEntity.Layers.Where(l => l.MainSegmentLength == TimeSpan.Zero))
|
||||
// {
|
||||
// if (layer.PropertyEntities.Any(p => p.KeyframeEntities.Any()))
|
||||
// layer.MainSegmentLength = layer.PropertyEntities.Where(p => p.KeyframeEntities.Any()).Max(p => p.KeyframeEntities.Max(k => k.Position));
|
||||
// if (layer.MainSegmentLength == TimeSpan.Zero)
|
||||
// layer.MainSegmentLength = TimeSpan.FromSeconds(5);
|
||||
//
|
||||
// layer.PlayMode = 0;
|
||||
// }
|
||||
//
|
||||
// repository.Update(profileEntity);
|
||||
// }
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user