Exemple #1
0
 /// <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);
 }
Exemple #2
0
        /// <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;
        }