Add separate track export mode
This commit is contained in:
@@ -31,6 +31,7 @@ private struct ConversionToolView: View {
|
||||
@State private var writeReport = true
|
||||
@State private var cleanAfterExport = true
|
||||
@State private var validateAfterExport = true
|
||||
@State private var trackMode: TonUinoExportOptions.TrackMode = .merged
|
||||
@State private var isExporting = false
|
||||
|
||||
private var canExport: Bool {
|
||||
@@ -90,6 +91,13 @@ private struct ConversionToolView: View {
|
||||
|
||||
Spacer()
|
||||
|
||||
Picker("Modus", selection: $trackMode) {
|
||||
Text("Zusammenführen").tag(TonUinoExportOptions.TrackMode.merged)
|
||||
Text("Getrennt").tag(TonUinoExportOptions.TrackMode.separate)
|
||||
}
|
||||
.pickerStyle(.segmented)
|
||||
.frame(width: 230)
|
||||
|
||||
HStack(spacing: 12) {
|
||||
Toggle("Überschreiben", isOn: $overwriteExisting)
|
||||
Toggle("Bericht", isOn: $writeReport)
|
||||
@@ -152,11 +160,11 @@ private struct ConversionToolView: View {
|
||||
}
|
||||
.width(64)
|
||||
|
||||
TableColumn("Zieldatei") { _ in
|
||||
Text("001.mp3")
|
||||
TableColumn("Zieldatei") { episode in
|
||||
Text(targetFileDescription(for: episode))
|
||||
.monospacedDigit()
|
||||
}
|
||||
.width(82)
|
||||
.width(108)
|
||||
|
||||
TableColumn("Erste Quelle") { episode in
|
||||
Text(episode.tracks.first?.source.lastPathComponent ?? "-")
|
||||
@@ -233,7 +241,8 @@ private struct ConversionToolView: View {
|
||||
outputURL: outputURL,
|
||||
options: TonUinoExportOptions(
|
||||
overwriteExisting: overwriteExisting,
|
||||
writeReport: writeReport
|
||||
writeReport: writeReport,
|
||||
trackMode: trackMode
|
||||
)
|
||||
)
|
||||
|
||||
@@ -251,6 +260,15 @@ private struct ConversionToolView: View {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private func targetFileDescription(for episode: EpisodePlan) -> String {
|
||||
switch trackMode {
|
||||
case .merged:
|
||||
"001.mp3"
|
||||
case .separate:
|
||||
episode.tracks.count <= 1 ? "001.mp3" : "001...\(String(format: "%03d", episode.tracks.count)).mp3"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private struct SDCardToolView: View {
|
||||
|
||||
Reference in New Issue
Block a user