Example #1
0
 void Search(Folder f, string SearchTerm, bool STFS, bool Deleted, bool Files, bool Folders)
 {
     if (stop)
     {
         return;
     }
     this.Invoke((MethodInvoker)delegate { this.Text = "Searching for \"" + SearchTerm + "\"" + " in " + f.FullPath; });
     foreach (File file in f.Files())
     {
         if (stop)
         {
             return;
         }
         if (Files)
         {
             if (file.Name.ToLower().Contains(SearchTerm.ToLower()) || file.SizeFriendly.ToLower().Contains(SearchTerm.ToLower()))
             {
                 AddFile(file);
             }
             else if (STFS && file.IsSTFSPackage())
             {
                 if (file.TitleName().ToLower().Contains(SearchTerm.ToLower()) || file.TitleID().ToString("X").ToLower().Contains(SearchTerm.ToLower()) || file.ContentName().ToLower().Contains(SearchTerm.ToLower()) || file.DeviceID().ToHexString().ToLower().Contains(SearchTerm.ToLower()) || file.ProfileID().ToHexString().ToLower().Contains(SearchTerm.ToLower()) || file.ConsoleID().ToHexString().ToLower().Contains(SearchTerm.ToLower()))
                 {
                     AddFile(file);
                 }
             }
         }
     }
     foreach (Folder ff in f.Folders())
     {
         if (stop)
         {
             return;
         }
         if (Folders)
         {
             if (ff.Name.ToLower().Contains(SearchTerm.ToLower()))
             {
                 AddFolder(ff);
             }
             else if(STFS)
             {
                 if (ff.GameName() != null)
                 {
                     if (ff.GameName().ToLower().Contains(SearchTerm.ToLower()))
                     {
                         AddFolder(ff);
                     }
                 }
             }
         }
         ff.ReturnDeletedEntries = Deleted;
         Search(ff, SearchTerm, STFS, Deleted, Files, Folders);
     }
 }