From b0bfc3d3bcfed4dfdf9a1946621f9c9b9eb068c2 Mon Sep 17 00:00:00 2001 From: dingdio <4729750+dingdio@users.noreply.github.com> Date: Sat, 14 Jan 2023 17:03:51 +0000 Subject: [PATCH] chunk loading fix --- WolvenKit/Forms/frmChunkList.cs | 29 ++++++----------------------- 1 file changed, 6 insertions(+), 23 deletions(-) diff --git a/WolvenKit/Forms/frmChunkList.cs b/WolvenKit/Forms/frmChunkList.cs index ecff62be4..619d3e20e 100644 --- a/WolvenKit/Forms/frmChunkList.cs +++ b/WolvenKit/Forms/frmChunkList.cs @@ -86,34 +86,17 @@ private void UpdateHelperList() File.GenerateChunksDict(); - var dParentids = new Dictionary(); - if (viewModel.chunkDisplayMode == CR2WDocumentViewModel.EChunkDisplayMode.Parent) - { - dParentids = File.chunks.ToDictionary(_ => _.ChunkIndex, _ => _.ParentChunkIndex); - } - else if (viewModel.chunkDisplayMode == CR2WDocumentViewModel.EChunkDisplayMode.VirtualParent) - { - dParentids = File.chunks.ToDictionary(_ => _.ChunkIndex, _ => _.VirtualParentChunkIndex); - } - foreach (var chunk in File.chunks) { - var childrenidxlist = dParentids.Where(_ => _.Value == chunk.ChunkIndex).Select(_ => _.Key); - - IEnumerable enumerable = childrenidxlist as int[] ?? childrenidxlist.ToArray(); - if (enumerable.Any()) + if (viewModel.chunkDisplayMode == CR2WDocumentViewModel.EChunkDisplayMode.Parent) { - List children = enumerable.Select(childid => File.chunksdict[childid]).ToList(); - childrenDict.Add(chunk.ChunkIndex, children); - - var c = children.Count; - childrencountDict.Add(chunk.ChunkIndex, c); + childrenDict.Add(chunk.ChunkIndex, chunk.ChildrenChunks); + childrencountDict.Add(chunk.ChunkIndex, chunk.ChildrenChunks.Count); } - else + else if (viewModel.chunkDisplayMode == CR2WDocumentViewModel.EChunkDisplayMode.VirtualParent) { - childrenDict.Add(chunk.ChunkIndex, new List()); - childrencountDict.Add(chunk.ChunkIndex, 0); - + childrenDict.Add(chunk.ChunkIndex, chunk.VirtualChildrenChunks); + childrencountDict.Add(chunk.ChunkIndex, chunk.VirtualChildrenChunks.Count); } }