public Options() { int portable = ServiceScope.Get <ISettingsManager>().GetPortable(); if (portable == 0) { _configDir = String.Format(@"{0}\MPTagThat\Config", Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)); } else { _configDir = String.Format(@"{0}\Config", Application.StartupPath); } MaximumNumberOfSongsInList = ServiceScope.Get <ISettingsManager>().GetMaxSongs(); _MPTagThatSettings = new MPTagThatSettings(); ServiceScope.Get <ISettingsManager>().Load(_MPTagThatSettings); _caseConversionSettings = new CaseConversionSettings(); ServiceScope.Get <ISettingsManager>().Load(_caseConversionSettings); // Set Default Values, when starting the first Time if (_caseConversionSettings.CaseConvExceptions.Count == 0) { _caseConversionSettings.CaseConvExceptions.Add("I"); _caseConversionSettings.CaseConvExceptions.Add("II"); _caseConversionSettings.CaseConvExceptions.Add("III"); _caseConversionSettings.CaseConvExceptions.Add("IV"); _caseConversionSettings.CaseConvExceptions.Add("V"); _caseConversionSettings.CaseConvExceptions.Add("VI"); _caseConversionSettings.CaseConvExceptions.Add("VII"); _caseConversionSettings.CaseConvExceptions.Add("VIII"); _caseConversionSettings.CaseConvExceptions.Add("IX"); _caseConversionSettings.CaseConvExceptions.Add("X"); _caseConversionSettings.CaseConvExceptions.Add("XI"); _caseConversionSettings.CaseConvExceptions.Add("XII"); _caseConversionSettings.CaseConvExceptions.Add("feat."); _caseConversionSettings.CaseConvExceptions.Add("vs."); _caseConversionSettings.CaseConvExceptions.Add("DJ"); _caseConversionSettings.CaseConvExceptions.Add("I'm"); _caseConversionSettings.CaseConvExceptions.Add("I'll"); _caseConversionSettings.CaseConvExceptions.Add("I'd"); _caseConversionSettings.CaseConvExceptions.Add("UB40"); _caseConversionSettings.CaseConvExceptions.Add("U2"); _caseConversionSettings.CaseConvExceptions.Add("NRG"); _caseConversionSettings.CaseConvExceptions.Add("ZZ"); _caseConversionSettings.CaseConvExceptions.Add("OMD"); _caseConversionSettings.CaseConvExceptions.Add("A1"); _caseConversionSettings.CaseConvExceptions.Add("U96"); _caseConversionSettings.CaseConvExceptions.Add("2XLC"); _caseConversionSettings.CaseConvExceptions.Add("ATB"); _caseConversionSettings.CaseConvExceptions.Add("EMF"); _caseConversionSettings.CaseConvExceptions.Add("CD"); _caseConversionSettings.CaseConvExceptions.Add("CD1"); _caseConversionSettings.CaseConvExceptions.Add("CD2"); _caseConversionSettings.CaseConvExceptions.Add("MC"); _caseConversionSettings.CaseConvExceptions.Add("USA"); _caseConversionSettings.CaseConvExceptions.Add("UK"); _caseConversionSettings.CaseConvExceptions.Add("TLC"); _caseConversionSettings.CaseConvExceptions.Add("UFO"); _caseConversionSettings.CaseConvExceptions.Add("AC"); _caseConversionSettings.CaseConvExceptions.Add("DC"); _caseConversionSettings.CaseConvExceptions.Add("DMX"); _caseConversionSettings.CaseConvExceptions.Add("ABBA"); } _fileNameToTagSettings = new FileNameToTagFormatSettings(); ServiceScope.Get <ISettingsManager>().Load(_fileNameToTagSettings); // Set Default Values, when starting the first Time if (_fileNameToTagSettings.FormatValues.Count == 0) { // Add Default Values _fileNameToTagSettings.FormatValues.Add(@"<K> - <T>"); _fileNameToTagSettings.FormatValues.Add(@"<A> - <T>"); _fileNameToTagSettings.FormatValues.Add(@"<K> - <A> - <T>"); _fileNameToTagSettings.FormatValues.Add(@"<A> - <K> - <T>"); _fileNameToTagSettings.FormatValues.Add(@"<A>\<B>\<K> - <T>"); _fileNameToTagSettings.FormatValues.Add(@"<A>\<B>\<A> - <K> - <T>"); _fileNameToTagSettings.FormatValues.Add(@"<A>\<B>\<K> - <A> - <T>"); } _fileNameToTagSettingsTemp = new List <string>(_fileNameToTagSettings.FormatValues); _tagToFileNameSettings = new TagToFileNameFormatSettings(); ServiceScope.Get <ISettingsManager>().Load(_tagToFileNameSettings); // Set Default Values, when starting the first Time if (_tagToFileNameSettings.FormatValues.Count == 0) { // Add Default Values _tagToFileNameSettings.FormatValues.Add(@"<K> - <T>"); _tagToFileNameSettings.FormatValues.Add(@"<A> - <T>"); _tagToFileNameSettings.FormatValues.Add(@"<K> - <A> - <T>"); _tagToFileNameSettings.FormatValues.Add(@"<A> - <K> - <T>"); } _tagToFileNameSettingsTemp = new List <string>(_tagToFileNameSettings.FormatValues); _organiseSettings = new OrganiseFormatSettings(); ServiceScope.Get <ISettingsManager>().Load(_organiseSettings); // Set Default Values, when starting the first Time if (_organiseSettings.FormatValues.Count == 0) { // Add Default values _organiseSettings.FormatValues.Add(@"<A>\<B>\<K> - <T>"); _organiseSettings.FormatValues.Add(@"<A:1>\<A>\<B>\<K> - <T>"); _organiseSettings.FormatValues.Add(@"<O>\<B>\<K> - <A> - <T>"); _organiseSettings.FormatValues.Add(@"<O:1>\<A>\<B>\<K> - <T>"); } _organiseSettingsTemp = new List <string>(_organiseSettings.FormatValues); _treeViewFilterSettings = new TreeViewFilterSettings(); ServiceScope.Get <ISettingsManager>().Load(_treeViewFilterSettings); // Set default values if (_treeViewFilterSettings.Filter.Count == 0) { TreeViewFilter filter = new TreeViewFilter(); filter.Name = ""; filter.FileMask = ""; filter.FileFilter = "*.*"; _treeViewFilterSettings.Filter.Add(filter); } // Load Artists / AlbumArtists for Auto Completion if (_MPTagThatSettings.UseMediaPortalDatabase) { ReadArtistDatabase(); } _copyPasteBuffer = new List <TrackData>(); ReadOnlyFileHandling = 2; // Don't change attribute as a default. Songlist = new SongList(); }
public Options() { int portable = ServiceScope.Get<ISettingsManager>().GetPortable(); if (portable == 0) _configDir = String.Format(@"{0}\MPTagThat\Config", Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)); else _configDir = String.Format(@"{0}\Config", Application.StartupPath); _MPTagThatSettings = new MPTagThatSettings(); ServiceScope.Get<ISettingsManager>().Load(_MPTagThatSettings); _caseConversionSettings = new CaseConversionSettings(); ServiceScope.Get<ISettingsManager>().Load(_caseConversionSettings); // Set Default Values, when starting the first Time if (_caseConversionSettings.CaseConvExceptions.Count == 0) { _caseConversionSettings.CaseConvExceptions.Add("I"); _caseConversionSettings.CaseConvExceptions.Add("II"); _caseConversionSettings.CaseConvExceptions.Add("III"); _caseConversionSettings.CaseConvExceptions.Add("IV"); _caseConversionSettings.CaseConvExceptions.Add("V"); _caseConversionSettings.CaseConvExceptions.Add("VI"); _caseConversionSettings.CaseConvExceptions.Add("VII"); _caseConversionSettings.CaseConvExceptions.Add("VIII"); _caseConversionSettings.CaseConvExceptions.Add("IX"); _caseConversionSettings.CaseConvExceptions.Add("X"); _caseConversionSettings.CaseConvExceptions.Add("XI"); _caseConversionSettings.CaseConvExceptions.Add("XII"); _caseConversionSettings.CaseConvExceptions.Add("feat."); _caseConversionSettings.CaseConvExceptions.Add("vs."); _caseConversionSettings.CaseConvExceptions.Add("DJ"); _caseConversionSettings.CaseConvExceptions.Add("I'm"); _caseConversionSettings.CaseConvExceptions.Add("I'll"); _caseConversionSettings.CaseConvExceptions.Add("I'd"); _caseConversionSettings.CaseConvExceptions.Add("UB40"); _caseConversionSettings.CaseConvExceptions.Add("U2"); _caseConversionSettings.CaseConvExceptions.Add("NRG"); _caseConversionSettings.CaseConvExceptions.Add("ZZ"); _caseConversionSettings.CaseConvExceptions.Add("OMD"); _caseConversionSettings.CaseConvExceptions.Add("A1"); _caseConversionSettings.CaseConvExceptions.Add("U96"); _caseConversionSettings.CaseConvExceptions.Add("2XLC"); _caseConversionSettings.CaseConvExceptions.Add("ATB"); _caseConversionSettings.CaseConvExceptions.Add("EMF"); _caseConversionSettings.CaseConvExceptions.Add("CD"); _caseConversionSettings.CaseConvExceptions.Add("CD1"); _caseConversionSettings.CaseConvExceptions.Add("CD2"); _caseConversionSettings.CaseConvExceptions.Add("MC"); _caseConversionSettings.CaseConvExceptions.Add("USA"); _caseConversionSettings.CaseConvExceptions.Add("UK"); _caseConversionSettings.CaseConvExceptions.Add("TLC"); _caseConversionSettings.CaseConvExceptions.Add("UFO"); _caseConversionSettings.CaseConvExceptions.Add("AC"); _caseConversionSettings.CaseConvExceptions.Add("DC"); _caseConversionSettings.CaseConvExceptions.Add("DMX"); _caseConversionSettings.CaseConvExceptions.Add("ABBA"); } _fileNameToTagSettings = new FileNameToTagFormatSettings(); ServiceScope.Get<ISettingsManager>().Load(_fileNameToTagSettings); // Set Default Values, when starting the first Time if (_fileNameToTagSettings.FormatValues.Count == 0) { // Add Default Values _fileNameToTagSettings.FormatValues.Add(@"<K> - <T>"); _fileNameToTagSettings.FormatValues.Add(@"<A> - <T>"); _fileNameToTagSettings.FormatValues.Add(@"<K> - <A> - <T>"); _fileNameToTagSettings.FormatValues.Add(@"<A> - <K> - <T>"); _fileNameToTagSettings.FormatValues.Add(@"<A>\<B>\<K> - <T>"); _fileNameToTagSettings.FormatValues.Add(@"<A>\<B>\<A> - <K> - <T>"); _fileNameToTagSettings.FormatValues.Add(@"<A>\<B>\<K> - <A> - <T>"); } _fileNameToTagSettingsTemp = new List<string>(_fileNameToTagSettings.FormatValues); _tagToFileNameSettings = new TagToFileNameFormatSettings(); ServiceScope.Get<ISettingsManager>().Load(_tagToFileNameSettings); // Set Default Values, when starting the first Time if (_tagToFileNameSettings.FormatValues.Count == 0) { // Add Default Values _tagToFileNameSettings.FormatValues.Add(@"<K> - <T>"); _tagToFileNameSettings.FormatValues.Add(@"<A> - <T>"); _tagToFileNameSettings.FormatValues.Add(@"<K> - <A> - <T>"); _tagToFileNameSettings.FormatValues.Add(@"<A> - <K> - <T>"); } _tagToFileNameSettingsTemp = new List<string>(_tagToFileNameSettings.FormatValues); _organiseSettings = new OrganiseFormatSettings(); ServiceScope.Get<ISettingsManager>().Load(_organiseSettings); // Set Default Values, when starting the first Time if (_organiseSettings.FormatValues.Count == 0) { // Add Default values _organiseSettings.FormatValues.Add(@"<A>\<B>\<K> - <T>"); _organiseSettings.FormatValues.Add(@"<A:1>\<A>\<B>\<K> - <T>"); _organiseSettings.FormatValues.Add(@"<O>\<B>\<K> - <A> - <T>"); _organiseSettings.FormatValues.Add(@"<O:1>\<A>\<B>\<K> - <T>"); } _organiseSettingsTemp = new List<string>(_organiseSettings.FormatValues); _treeViewFilterSettings = new TreeViewFilterSettings(); ServiceScope.Get<ISettingsManager>().Load(_treeViewFilterSettings); // Set default values if (_treeViewFilterSettings.Filter.Count == 0) { TreeViewFilter filter = new TreeViewFilter(); filter.Name = ""; filter.FileMask = ""; filter.FileFilter = "*.*"; _treeViewFilterSettings.Filter.Add(filter); } // Load Artists / AlbumArtists for Auto Completion if (_MPTagThatSettings.UseMediaPortalDatabase) { ReadArtistDatabase(); } _copyPasteBuffer = new List<TrackData>(); ReadOnlyFileHandling = 2; // Don't change attribute as a default. }
private void LoadSettings() { // Fill the Filter Field Combo with values // // For some reason assigning a DataSource doesn't work // So i need to keep track of the value members in a separate string array. TagFilterField.Items.Add(localisation.ToString("column_header", "Artist")); TagFilterField.Items.Add(localisation.ToString("column_header", "AlbumArtist")); TagFilterField.Items.Add(localisation.ToString("column_header", "Album")); TagFilterField.Items.Add(localisation.ToString("column_header", "Title")); TagFilterField.Items.Add(localisation.ToString("column_header", "Year")); TagFilterField.Items.Add(localisation.ToString("column_header", "Genre")); TagFilterField.Items.Add(localisation.ToString("column_header", "Picture")); TagFilterField.Items.Add(localisation.ToString("column_header", "Lyrics")); TagFilterField.Items.Add(localisation.ToString("column_header", "Track")); TagFilterField.Items.Add(localisation.ToString("column_header", "NumTracks")); TagFilterField.Items.Add(localisation.ToString("column_header", "Disc")); TagFilterField.Items.Add(localisation.ToString("column_header", "NumDisc")); TagFilterField.Items.Add(localisation.ToString("column_header", "Rating")); TagFilterField.Items.Add(localisation.ToString("column_header", "BPM")); TagFilterField.Items.Add(localisation.ToString("column_header", "Comment")); TagFilterField.Items.Add(localisation.ToString("column_header", "Composer")); TagFilterField.Items.Add(localisation.ToString("column_header", "Conductor")); TagFilterField.Items.Add(localisation.ToString("column_header", "BitRate")); TagFilterField.Items.Add(localisation.ToString("column_header", "SampleRate")); TagFilterField.Items.Add(localisation.ToString("column_header", "Channels")); TagFilterOperator.Items.Add(localisation.ToString("main", "FilterOperatorAnd")); TagFilterOperator.Items.Add(localisation.ToString("main", "FilterOperatorOr")); // Fill the File Select Combo with values cbListFormats.Items.Add(new Item(localisation.ToString("main", "FilterAllFiles"), "*.*", "")); cbListFormats.Items.Add(new Item(".mp3 (MPEG Layer-3)", "mp3", "")); cbListFormats.Items.Add(new Item(".ogg (OGG Vorbis)", "ogg", "")); cbListFormats.Items.Add(new Item(".wma (Windows Media Audio)", "wma", "")); cbListFormats.Items.Add(new Item(".flac (Free Lossless Audio Codec)", "flac", "")); cbListFormats.Items.Add(new Item(".ape (Monkey's Audio)", "ape", "")); cbListFormats.Items.Add(new Item(".mpc/.mpp/.mp+ (MusePack)", "mpc|mpp|mp+", "")); cbListFormats.Items.Add(new Item(".mp4/.m4a/.m4p (MPEG-4/AAC)", "mp4|m4a|m4p", "")); cbListFormats.Items.Add(new Item(".wv (Wavpack)", "wv", "")); cbListFormats.Items.Add(new Item(".wav (Wave / RIFF)", "wav", "")); cbListFormats.Items.Add(new Item(".aif|.aiff (Audio Interchange File Format)", "aif|aiff", "")); if (Options.TreeViewSettings.Filter.Count > 0) { _filter = Options.TreeViewSettings.Filter[0]; if (Options.TreeViewSettings.LastUsedFormat != "") { foreach (TreeViewFilter filter in Options.TreeViewSettings.Filter) { if (filter.Name == Options.TreeViewSettings.LastUsedFormat) { _filter = filter; break; } } } // Now set the File Formats foreach (Item item in cbListFormats.Items) { if ((string)item.Value == _filter.FileFilter) { cbListFormats.SelectedItem = item; break; } } ckUseTagFilter.Checked = _filter.UseTagFilter; ckUseTagFilter_CheckedChanged(ckUseTagFilter, new EventArgs()); dataGridViewTagFilter.Enabled = ckUseTagFilter.Checked; int rowIndex = 0; foreach (TreeViewTagFilter tagFilter in _filter.TagFilter) { dataGridViewTagFilter.Rows.Insert(rowIndex, 1); int i = 0; foreach (string filterFieldValue in _filterFieldValues) { if (filterFieldValue == tagFilter.Field) { dataGridViewTagFilter.Rows[rowIndex].Cells[0].Value = TagFilterField.Items[i]; break; } i++; } if (dataGridViewTagFilter.Rows[rowIndex].Cells[0].Value == null) { rowIndex++; continue; } if (IsSpecialFilterColumn(dataGridViewTagFilter.Rows[rowIndex].Cells[0].Value.ToString())) { DataGridViewCheckBoxCell ckCell = new DataGridViewCheckBoxCell(); if (tagFilter.FilterValue == "1") { tagFilter.FilterValue = "true"; } ckCell.Value = tagFilter.FilterValue; dataGridViewTagFilter.Rows[rowIndex].Cells[1] = ckCell; } else { dataGridViewTagFilter.Rows[rowIndex].Cells[1].Value = tagFilter.FilterValue; } string op = null; if (tagFilter.FilterOperator == "or") { op = "or"; } else if (tagFilter.FilterOperator == "and") { op = "and"; } dataGridViewTagFilter.Rows[rowIndex].Cells[2].Value = op; rowIndex++; } } }