示例#1
0
        private void LoadFilesThread()
        {
            try
            {
                cashedFiles = plugin.GetFiles(checkInProjectOnly.Checked);
                // Remove any files that are in the excluded directories
                string[] excludedDirectories = plugin.settingObject.ExcludedDirectories.Split(new char[] { ',', ';' });
                for (int i = 0; i < cashedFiles.Count;)
                {
                    bool fileRemoved = false;

                    if (excludedDirectories.Length > 0 && excludedDirectories[0] != plugin.settingObject.DefaultEmptyString)
                    {
                        foreach (string excludedDir in excludedDirectories)
                        {
                            if (cashedFiles[i].StartsWith(excludedDir))
                            {
                                fileRemoved = true;
                                break;
                            }
                        }
                    }

                    if (!fileRemoved)
                    {
                        searchManager.AddFileToSearchList(cashedFiles[i]);
                        i++;
                    }
                    else
                    {
                        cashedFiles.RemoveAt(i);
                    }
                }

                if (FindFilesForm.itemsLoadedDelegate != null)
                {
                    Invoke(FindFilesForm.itemsLoadedDelegate);
                }
            }
            catch (ThreadAbortException)
            {
                // Do nothing, we're good
                PluginMain.ClearCachedFiles();
                FindFilesForm.itemsLoadedDelegate = null;
            }
        }
示例#2
0
 private void btnReload_Click(object sender, EventArgs e)
 {
     dataGridView.Rows.Clear();
     PluginMain.ClearCachedFiles();
     CreateFileList();
 }