예제 #1
0
        /// <summary>
        /// Scan for all dicitionaries (default resx files, without culture identification)
        /// </summary>
        private void ScanForDefaultDictionaries()
        {
            Dictionaries.Clear();

            var culturInfoList = CultureInfo.GetCultures(CultureTypes.AllCultures).Where(c => c.Name.Length > 0);

            _resourceDirectory = SelectedProjectDirectory.GetDirectories("Resources").Single();
            var resxFiles = _resourceDirectory.GetFiles("*.resx");

            foreach (FileInfo resxFile in resxFiles)
            {
                if (culturInfoList.Any(ci => resxFile.Name.EndsWith(ci.Name + ".resx")))
                {
                    continue;
                }

                Dictionaries.Add(resxFile.Name.Replace(".resx", String.Empty));
            }

            if (Dictionaries.Any())
            {
                string lastUsedDictionary = AppRegistry.GetValue(RegistryKeys.SelectedDictionary);
                if (String.IsNullOrEmpty(lastUsedDictionary))
                {
                    SelectedDictionary = Dictionaries.First();
                }
                else
                {
                    SelectedDictionary = Dictionaries.First(dict => dict == lastUsedDictionary);
                }
            }
        }
예제 #2
0
        /// <summary>
        /// Called, when the solution directory changes
        /// </summary>
        private void SolutionDirectoryChangedCallback()
        {
            AppRegistry.SetValue(RegistryKeys.SolutionPath, SolutionPath);

            ProjectDirectories = new ObservableCollection <DirectoryInfo>(
                SolutionDirectory.GetFiles("*.csproj", SearchOption.AllDirectories)
                .Select(f => f.Directory)
                .ToList()
                );

            string lastProjectUsed = AppRegistry.GetValue(RegistryKeys.SelectedProject);

            if (String.IsNullOrEmpty(lastProjectUsed))
            {
                return;
            }

            SelectedProjectDirectory = ProjectDirectories.FirstOrDefault(dir => dir.FullName == lastProjectUsed);
        }
예제 #3
0
 public MainViewModel()
 {
     IsScanInactive = true;
     SolutionPath   = AppRegistry.GetValue(RegistryKeys.SolutionPath);
 }