private void SelectSettingsFile(string file)
        {
            Contract.Requires(settingsDirectory != null);
            Contract.Requires(file != null);

            lock (gate)
            {
                selectedSettingsFile = settingsFiles.FindByFullName(file);

                if (selectedSettingsFile == null)
                {
                    LoadSettingsFiles();

                    selectedSettingsFile = settingsFiles.FindByFullName(file);
                }

                if (selectedSettingsFile != null)
                {
                    selectedSettingsFile.Accessed();
                }
            }

            RefreshCommands();
        }