/// <summary> /// List das Verzeichnis dir ein und füllt die fileListBox /// </summary> /// <param name="dir">einzulesendes Verzeichnis</param> private void ReadDir(string dir) { bool allFilesOK = true; jobs.Clear(); ArrayList alFiles = new ArrayList(); foreach (string ext in new string[] { "avi", "flv", "mp4", "mpg" }) { string[] fs = Directory.GetFiles(dir, @"*." + ext); alFiles.AddRange(fs); } foreach (string f in alFiles.ToArray()) { FileInfo fi = new FileInfo(f); RenameJob rj = new RenameJob(dir, fi.Name); RenameJob XmlRj; bool found = globalJobs.TryGetValue(rj.GetHashCode(), out XmlRj); if (found) { rj = XmlRj; rj.path = dirTextBox.Text; } else { if (rj.currentFilename.Contains("_TVOON_DE")) { rj.originalOTRFilename = rj.currentFilename; rj.ParseFileInfos(); } else { rj.originalOTRFilename = rj.currentFilename; rj.title = fi.Name.Substring(0, fi.Name.Length - 4); rj.extension = Path.GetExtension(fi.Name); allFilesOK = false; } } rj.CreateNachher(); jobs.Add(rj); } if (!allFilesOK) { MessageBox.Show("Einige Dateien sind nicht nach dem OTR-Schema benannt auch nicht in den XML-Metadaten-Dateien referenziert. Bitte geben Sie die Daten manuell ein."); } UpdateListBox(); }
/// <summary> /// Aktualisiert das SelectedItem der fileListBox auf die Daten der Einstellungen /// </summary> private void UpdateListFromSettings() { if ((fileListBox.SelectedItems.Count == 1) && (doUpdateSettings)) { RenameJob rj = fileListBox.SelectedItem as RenameJob; if (rj != null) { rj.title = titleTextBox.Text; rj.date = new DateTime( dateDateTimePicker.Value.Year, dateDateTimePicker.Value.Month, dateDateTimePicker.Value.Day, timeDateTimePicker.Value.Hour, timeDateTimePicker.Value.Minute, timeDateTimePicker.Value.Second); rj.channel = channelTextBox.Text; rj.duration = durationSpinEdit.Value; rj.isHQ = isHQCheckBox.Checked; rj.isHD = isHDCheckBox.Checked; rj.isTopTipp = isTopTippCheckBox.Checked; rj.additionalData1 = addition1TextBox.Text; rj.additionalData2 = addition2TextBox.Text; rj.CreateNachher(); // häßlicher Workaround um die Anzeige zu aktualisieren (Invalidate() funzt nicht) UpdateListBox(); if (autosaveCheckBox.Checked) { SaveMetadata(); } } } }