예제 #1
0
 private void RecursiveCopy(SongInfoTreeViewItem sitvi, LogicFolderTreeViewItem lftvi)
 {
     foreach (SongInfoTreeViewItem childsitvi in sitvi.Items)
     {
         if (!childsitvi.SongInformation.IsPPDSong)
         {
             var folder   = lftvi.LogicFolderInfo.AddFolder(childsitvi.SongInformation.DirectoryName);
             var newlftvi = CreateAndAdd(folder, lftvi);
             RecursiveCopy(childsitvi, newlftvi);
         }
         else
         {
             var newinfo = lftvi.LogicFolderInfo.AddScore(childsitvi.SongInformation);
             CreateAndAdd(newinfo, lftvi);
         }
     }
     lftvi.Sort();
 }
예제 #2
0
 private void RecursiveCreate(SongInformation[] sis, ref int iter, TreeViewItem parent)
 {
     foreach (SongInformation child in sis)
     {
         var tvi = new SongInfoTreeViewItem
         {
             TextureString = new TextureString(device, child.DirectoryName, 14, maxwidth - gapX * child.Depth, PPDColors.White)
             {
                 AllowScroll = false
             },
             SongInformation = child
         };
         parent.Add(tvi);
         iter++;
         if (!child.IsPPDSong)
         {
             RecursiveCreate(filter.GetFiltered(child.Children), ref iter, tvi);
         }
     }
 }