/// <summary> /// Open an index configuraation file by name. /// </summary> private bool OpenIndexFile(string indexFile) { if (indexFile != null && indexFile != "") { //Try and add this as an index: System.IO.FileInfo fInfo = new System.IO.FileInfo(indexFile); if (fInfo.Exists) { IIndex index = IIndexExtensions.CreateFromXmlFile(indexFile); if (index != null) { // Add index to list of indexes. var newIndixes = new List <IIndex>(); newIndixes.Add(index); srcSearcher.Indexes = newIndixes; return(true); } else { return(false); } } } return(false); }
/// <summary> /// Handles the OnStartup event. /// </summary> /// <param name="e">Event args</param> protected override void OnStartup(StartupEventArgs e) { base.OnStartup(e); var commandLineParser = new CommandLineParser(); try { commandLineParser.ParseCommandLineArguments(e.Args); } catch (Exception ex) { MessageBox.Show(ex.Message, MESSAGE_BOX_CAPTION, MessageBoxButton.OK, MessageBoxImage.Error); Application.Current.Shutdown(); return; } var indexes = new List <IIndex>(); // Create an index for each specified index configuration. foreach (var indexConfigurationFile in commandLineParser.IndexConfigurationFiles) { if (!System.IO.File.Exists(indexConfigurationFile)) { MessageBox.Show(string.Format("Index configuration file \"{0}\" does not exist!", indexConfigurationFile), "CodeXCavator - Searcher...", MessageBoxButton.OK, MessageBoxImage.Information); continue; } try { // Create index from the XML configuration file. IIndex index = IIndexExtensions.CreateFromXmlFile(indexConfigurationFile); if (index != null) { CodeXCavator.UI.MRUHandler.PushMRUFile(indexConfigurationFile); // Add index to list of indexes. indexes.Add(index); } else { MessageBox.Show(string.Format("Could not initialize index from configuration file \"{0}\"!", indexConfigurationFile), "CodeXCavator - Searcher...", MessageBoxButton.OK, MessageBoxImage.Information); } } catch (Exception exception) { MessageBox.Show(string.Format("Unexpected error occurred while reading index configuration file \"{0}\"!\n\n{1}", indexConfigurationFile, exception.ToString()), "CodeXCavator - Searcher...", MessageBoxButton.OK, MessageBoxImage.Error); if (Application.Current != null) { Application.Current.Shutdown(); } } } Indexes = indexes; }