mirror of
https://github.com/claunia/cuetools.net.git
synced 2025-12-16 18:14:25 +00:00
1) Better log file/freedb entry selection dialog interface
2) 'Stop' button works when analyzing archive 3) application icon added 4) two verification modes: AR only/AR+CRCs
This commit is contained in:
@@ -98,6 +98,7 @@
|
|||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="Processor.cs" />
|
<Compile Include="Processor.cs" />
|
||||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
|
<Compile Include="SeekableZipStream.cs" />
|
||||||
<Compile Include="Settings.cs" />
|
<Compile Include="Settings.cs" />
|
||||||
<Compile Include="Tagging.cs" />
|
<Compile Include="Tagging.cs" />
|
||||||
<Compile Include="UserDefined.cs" />
|
<Compile Include="UserDefined.cs" />
|
||||||
|
|||||||
@@ -61,6 +61,7 @@ namespace CUETools.Processor
|
|||||||
{
|
{
|
||||||
None,
|
None,
|
||||||
Verify,
|
Verify,
|
||||||
|
VerifyPlusCRCs,
|
||||||
VerifyThenConvert,
|
VerifyThenConvert,
|
||||||
VerifyAndConvert
|
VerifyAndConvert
|
||||||
}
|
}
|
||||||
@@ -479,9 +480,23 @@ namespace CUETools.Processor
|
|||||||
public bool ContinueOperation = true;
|
public bool ContinueOperation = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class CUEToolsSourceFile
|
||||||
|
{
|
||||||
|
public string path;
|
||||||
|
public string contents;
|
||||||
|
public bool isEAC;
|
||||||
|
|
||||||
|
public CUEToolsSourceFile(string _path, StreamReader reader)
|
||||||
|
{
|
||||||
|
path = _path;
|
||||||
|
contents = reader.ReadToEnd();
|
||||||
|
reader.Close();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public class CUEToolsSelectionEventArgs
|
public class CUEToolsSelectionEventArgs
|
||||||
{
|
{
|
||||||
public string[] choices;
|
public object[] choices;
|
||||||
public int selection = -1;
|
public int selection = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -740,22 +755,13 @@ namespace CUETools.Processor
|
|||||||
cueSheet = CUESheet.CreateDummyCUESheet(pathIn, "*." + _config.udc1Extension);
|
cueSheet = CUESheet.CreateDummyCUESheet(pathIn, "*." + _config.udc1Extension);
|
||||||
if (cueSheet == null)
|
if (cueSheet == null)
|
||||||
throw new Exception("Input directory doesn't contain supported audio files.");
|
throw new Exception("Input directory doesn't contain supported audio files.");
|
||||||
sr = new StringReader(cueSheet);
|
sr = new StringReader(cueSheet);
|
||||||
if (CUEToolsSelection != null)
|
|
||||||
{
|
List<CUEToolsSourceFile> logFiles = new List<CUEToolsSourceFile>();
|
||||||
CUEToolsSelectionEventArgs e = new CUEToolsSelectionEventArgs();
|
foreach (string logPath in Directory.GetFiles(pathIn, "*.log"))
|
||||||
e.choices = Directory.GetFiles(pathIn, "*.log");
|
logFiles.Add(new CUEToolsSourceFile(logPath, new StreamReader(logPath, CUESheet.Encoding)));
|
||||||
if (e.choices.Length > 0)
|
CUEToolsSourceFile selectedLogFile = ChooseFile(logFiles, null, false);
|
||||||
{
|
_eacLog = selectedLogFile != null ? selectedLogFile.contents : null;
|
||||||
CUEToolsSelection(this, e);
|
|
||||||
if (e.selection != -1)
|
|
||||||
{
|
|
||||||
StreamReader logReader = new StreamReader(e.choices[e.selection], CUESheet.Encoding);
|
|
||||||
_eacLog = logReader.ReadToEnd();
|
|
||||||
logReader.Close();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else if (Path.GetExtension(pathIn).ToLower() == ".zip" || Path.GetExtension(pathIn).ToLower() == ".rar")
|
else if (Path.GetExtension(pathIn).ToLower() == ".zip" || Path.GetExtension(pathIn).ToLower() == ".rar")
|
||||||
{
|
{
|
||||||
@@ -795,64 +801,28 @@ namespace CUETools.Processor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
string cueName = null, cueText = null, logName = null;
|
List<CUEToolsSourceFile> logFiles = new List<CUEToolsSourceFile>();
|
||||||
List<string> cueNames = new List<string>();
|
List<CUEToolsSourceFile> cueFiles = new List<CUEToolsSourceFile>();
|
||||||
List<string> logNames = new List<string>();
|
|
||||||
|
|
||||||
foreach (string s in _archiveContents)
|
foreach (string s in _archiveContents)
|
||||||
{
|
{
|
||||||
if (Path.GetExtension(s).ToLower() == ".cue")
|
if (Path.GetExtension(s).ToLower() == ".cue" || Path.GetExtension(s).ToLower() == ".log")
|
||||||
cueNames.Add(s);
|
{
|
||||||
if (Path.GetExtension(s).ToLower() == ".log")
|
Stream archiveStream = OpenArchive(s, false);
|
||||||
logNames.Add(s);
|
CUEToolsSourceFile sourceFile = new CUEToolsSourceFile(s, new StreamReader(archiveStream, CUESheet.Encoding));
|
||||||
|
archiveStream.Close();
|
||||||
|
if (Path.GetExtension(s).ToLower() == ".cue")
|
||||||
|
cueFiles.Add(sourceFile);
|
||||||
|
else
|
||||||
|
logFiles.Add(sourceFile);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (cueNames.Count == 0)
|
CUEToolsSourceFile selectedCUEFile = ChooseFile(cueFiles, null, true);
|
||||||
throw new Exception("Input archive doesn't contain a cue sheet.");
|
if (selectedCUEFile == null || selectedCUEFile.contents == "")
|
||||||
if (cueNames.Count == 1)
|
throw new Exception("Input archive doesn't contain a usable cue sheet.");
|
||||||
cueName = cueNames[0];
|
CUEToolsSourceFile selectedLogFile = ChooseFile(logFiles, Path.GetFileNameWithoutExtension(selectedCUEFile.path), true);
|
||||||
if (cueName == null && CUEToolsSelection != null)
|
_eacLog = selectedLogFile != null ? selectedLogFile.contents : null;
|
||||||
{
|
_archiveCUEpath = Path.GetDirectoryName(selectedCUEFile.path);
|
||||||
CUEToolsSelectionEventArgs e = new CUEToolsSelectionEventArgs();
|
string cueText = selectedCUEFile.contents;
|
||||||
e.choices = cueNames.ToArray();
|
|
||||||
CUEToolsSelection(this, e);
|
|
||||||
if (e.selection != -1)
|
|
||||||
cueName = e.choices[e.selection];
|
|
||||||
}
|
|
||||||
if (cueName == null)
|
|
||||||
throw new Exception("Input archive contains several cue sheets.");
|
|
||||||
|
|
||||||
if (logNames.Contains(Path.ChangeExtension(cueName, ".log")))
|
|
||||||
logName = Path.ChangeExtension(cueName, ".log");
|
|
||||||
if (logName == null && CUEToolsSelection != null && logNames.Count > 0)
|
|
||||||
{
|
|
||||||
CUEToolsSelectionEventArgs e = new CUEToolsSelectionEventArgs();
|
|
||||||
e.choices = logNames.ToArray();
|
|
||||||
CUEToolsSelection(this, e);
|
|
||||||
if (e.selection != -1)
|
|
||||||
logName = e.choices[e.selection];
|
|
||||||
}
|
|
||||||
|
|
||||||
if (cueName != null)
|
|
||||||
{
|
|
||||||
Stream archiveStream = OpenArchive(cueName, false);
|
|
||||||
StreamReader cueReader = new StreamReader(archiveStream, CUESheet.Encoding);
|
|
||||||
cueText = cueReader.ReadToEnd();
|
|
||||||
cueReader.Close();
|
|
||||||
archiveStream.Close();
|
|
||||||
if (cueText == "")
|
|
||||||
throw new Exception("Empty cue sheet.");
|
|
||||||
}
|
|
||||||
if (cueText == null)
|
|
||||||
throw new Exception("Input archive doesn't contain a cue sheet.");
|
|
||||||
if (logName != null)
|
|
||||||
{
|
|
||||||
Stream archiveStream = OpenArchive(logName, false);
|
|
||||||
StreamReader logReader = new StreamReader(archiveStream, CUESheet.Encoding);
|
|
||||||
_eacLog = logReader.ReadToEnd();
|
|
||||||
logReader.Close();
|
|
||||||
archiveStream.Close();
|
|
||||||
}
|
|
||||||
_archiveCUEpath = Path.GetDirectoryName(cueName);
|
|
||||||
if (_config.autoCorrectFilenames)
|
if (_config.autoCorrectFilenames)
|
||||||
cueText = CorrectAudioFilenames(_archiveCUEpath, cueText, false, _archiveContents);
|
cueText = CorrectAudioFilenames(_archiveCUEpath, cueText, false, _archiveContents);
|
||||||
sr = new StringReader(cueText);
|
sr = new StringReader(cueText);
|
||||||
@@ -864,29 +834,13 @@ namespace CUETools.Processor
|
|||||||
else
|
else
|
||||||
sr = new StreamReader (pathIn, CUESheet.Encoding);
|
sr = new StreamReader (pathIn, CUESheet.Encoding);
|
||||||
|
|
||||||
string logPath = Path.ChangeExtension(pathIn, ".log");
|
List<CUEToolsSourceFile> logFiles = new List<CUEToolsSourceFile>();
|
||||||
if (System.IO.File.Exists(logPath))
|
foreach (string logPath in Directory.GetFiles(cueDir == "" ? "." : cueDir, "*.log"))
|
||||||
{
|
logFiles.Add(new CUEToolsSourceFile(logPath, new StreamReader(logPath, CUESheet.Encoding)));
|
||||||
StreamReader logReader = new StreamReader(logPath, CUESheet.Encoding);
|
CUEToolsSourceFile selectedLogFile = ChooseFile(logFiles, Path.GetFileNameWithoutExtension(pathIn), false);
|
||||||
_eacLog = logReader.ReadToEnd();
|
_eacLog = selectedLogFile != null ? selectedLogFile.contents : null;
|
||||||
logReader.Close();
|
}
|
||||||
}
|
else
|
||||||
else if (CUEToolsSelection != null)
|
|
||||||
{
|
|
||||||
CUEToolsSelectionEventArgs e = new CUEToolsSelectionEventArgs();
|
|
||||||
e.choices = Directory.GetFiles(cueDir == "" ? "." : cueDir, "*.log");
|
|
||||||
if (e.choices.Length > 0)
|
|
||||||
{
|
|
||||||
CUEToolsSelection(this, e);
|
|
||||||
if (e.selection != -1)
|
|
||||||
{
|
|
||||||
StreamReader logReader = new StreamReader(e.choices[e.selection], CUESheet.Encoding);
|
|
||||||
_eacLog = logReader.ReadToEnd();
|
|
||||||
logReader.Close();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else
|
|
||||||
{
|
{
|
||||||
string cuesheetTag = null;
|
string cuesheetTag = null;
|
||||||
TagLib.File fileInfo;
|
TagLib.File fileInfo;
|
||||||
@@ -1332,6 +1286,43 @@ namespace CUETools.Processor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
internal CUEToolsSourceFile ChooseFile(List<CUEToolsSourceFile> sourceFiles, string defaultFileName, bool quietIfSingle)
|
||||||
|
{
|
||||||
|
if (sourceFiles.Count <= 0)
|
||||||
|
return null;
|
||||||
|
|
||||||
|
if (defaultFileName != null)
|
||||||
|
{
|
||||||
|
CUEToolsSourceFile defaultFile = null;
|
||||||
|
foreach (CUEToolsSourceFile file in sourceFiles)
|
||||||
|
if (Path.GetFileNameWithoutExtension(file.path).ToLower() == defaultFileName.ToLower())
|
||||||
|
{
|
||||||
|
if (defaultFile != null)
|
||||||
|
{
|
||||||
|
defaultFile = null;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
defaultFile = file;
|
||||||
|
}
|
||||||
|
if (defaultFile != null)
|
||||||
|
return defaultFile;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (quietIfSingle && sourceFiles.Count == 1)
|
||||||
|
return sourceFiles[0];
|
||||||
|
|
||||||
|
if (CUEToolsSelection == null)
|
||||||
|
return null;
|
||||||
|
|
||||||
|
CUEToolsSelectionEventArgs e = new CUEToolsSelectionEventArgs();
|
||||||
|
e.choices = sourceFiles.ToArray();
|
||||||
|
CUEToolsSelection(this, e);
|
||||||
|
if (e.selection == -1)
|
||||||
|
return null;
|
||||||
|
|
||||||
|
return sourceFiles[e.selection];
|
||||||
|
}
|
||||||
|
|
||||||
internal Stream OpenArchive(string fileName, bool showProgress)
|
internal Stream OpenArchive(string fileName, bool showProgress)
|
||||||
{
|
{
|
||||||
#if !MONO
|
#if !MONO
|
||||||
@@ -1347,9 +1338,9 @@ namespace CUETools.Processor
|
|||||||
if (Path.GetExtension(_archivePath).ToLower() == ".zip")
|
if (Path.GetExtension(_archivePath).ToLower() == ".zip")
|
||||||
{
|
{
|
||||||
SeekableZipStream zipStream = new SeekableZipStream(_archivePath, fileName);
|
SeekableZipStream zipStream = new SeekableZipStream(_archivePath, fileName);
|
||||||
zipStream.PasswordRequired += new PasswordRequiredHandler(unrar_PasswordRequired);
|
zipStream.PasswordRequired += new ZipPasswordRequiredHandler(unzip_PasswordRequired);
|
||||||
if (showProgress)
|
if (showProgress)
|
||||||
zipStream.ExtractionProgress += new ExtractionProgressHandler(unrar_ExtractionProgress);
|
zipStream.ExtractionProgress += new ZipExtractionProgressHandler(unzip_ExtractionProgress);
|
||||||
return zipStream;
|
return zipStream;
|
||||||
}
|
}
|
||||||
throw new Exception("Unknown archive type.");
|
throw new Exception("Unknown archive type.");
|
||||||
@@ -1370,16 +1361,7 @@ namespace CUETools.Processor
|
|||||||
#if !MONO
|
#if !MONO
|
||||||
private void CDReadProgress(object sender, ReadProgressArgs e)
|
private void CDReadProgress(object sender, ReadProgressArgs e)
|
||||||
{
|
{
|
||||||
lock (this)
|
CheckStop();
|
||||||
{
|
|
||||||
if (_stop)
|
|
||||||
throw new StopException();
|
|
||||||
if (_pause)
|
|
||||||
{
|
|
||||||
ShowProgress("Paused...", 0, 0, null, null);
|
|
||||||
Monitor.Wait(this);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (this.CUEToolsProgress == null)
|
if (this.CUEToolsProgress == null)
|
||||||
return;
|
return;
|
||||||
CDDriveReader audioSource = (CDDriveReader)sender;
|
CDDriveReader audioSource = (CDDriveReader)sender;
|
||||||
@@ -1406,6 +1388,7 @@ namespace CUETools.Processor
|
|||||||
|
|
||||||
private void unrar_ExtractionProgress(object sender, ExtractionProgressEventArgs e)
|
private void unrar_ExtractionProgress(object sender, ExtractionProgressEventArgs e)
|
||||||
{
|
{
|
||||||
|
CheckStop();
|
||||||
if (this.CUEToolsProgress == null)
|
if (this.CUEToolsProgress == null)
|
||||||
return;
|
return;
|
||||||
_progress.percentTrck = e.PercentComplete/100;
|
_progress.percentTrck = e.PercentComplete/100;
|
||||||
@@ -1436,6 +1419,38 @@ namespace CUETools.Processor
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
private void unzip_ExtractionProgress(object sender, ZipExtractionProgressEventArgs e)
|
||||||
|
{
|
||||||
|
CheckStop();
|
||||||
|
if (this.CUEToolsProgress == null)
|
||||||
|
return;
|
||||||
|
_progress.percentTrck = e.PercentComplete / 100;
|
||||||
|
this.CUEToolsProgress(this, _progress);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void unzip_PasswordRequired(object sender, ZipPasswordRequiredEventArgs e)
|
||||||
|
{
|
||||||
|
if (_archivePassword != null)
|
||||||
|
{
|
||||||
|
e.ContinueOperation = true;
|
||||||
|
e.Password = _archivePassword;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (this.PasswordRequired != null)
|
||||||
|
{
|
||||||
|
ArchivePasswordRequiredEventArgs e1 = new ArchivePasswordRequiredEventArgs();
|
||||||
|
this.PasswordRequired(this, e1);
|
||||||
|
if (e1.ContinueOperation && e1.Password != "")
|
||||||
|
{
|
||||||
|
_archivePassword = e1.Password;
|
||||||
|
e.ContinueOperation = true;
|
||||||
|
e.Password = e1.Password;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
throw new IOException("Password is required for extraction.");
|
||||||
|
}
|
||||||
|
|
||||||
public delegate string GetStringTagProvider(TagLib.File file);
|
public delegate string GetStringTagProvider(TagLib.File file);
|
||||||
|
|
||||||
public string GetCommonTag(GetStringTagProvider provider)
|
public string GetCommonTag(GetStringTagProvider provider)
|
||||||
@@ -1943,7 +1958,7 @@ namespace CUETools.Processor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_accurateRipMode != AccurateRipMode.Verify)
|
if (_accurateRipMode != AccurateRipMode.Verify && _accurateRipMode != AccurateRipMode.VerifyPlusCRCs)
|
||||||
for (int i = 0; i < destPaths.Length; i++)
|
for (int i = 0; i < destPaths.Length; i++)
|
||||||
for (int j = 0; j < _sourcePaths.Count; j++)
|
for (int j = 0; j < _sourcePaths.Count; j++)
|
||||||
if (destPaths[i].ToLower() == _sourcePaths[j].ToLower())
|
if (destPaths[i].ToLower() == _sourcePaths[j].ToLower())
|
||||||
@@ -1972,17 +1987,10 @@ namespace CUETools.Processor
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
ShowProgress((string)"Contacting AccurateRip database...", 0, (dtl - minDTL) / 75.0, null, null);
|
ShowProgress((string)"Contacting AccurateRip database...", 0, (dtl - minDTL) / 75.0, null, null);
|
||||||
|
CheckStop();
|
||||||
lock (this)
|
lock (this)
|
||||||
{
|
{
|
||||||
if (_stop)
|
Monitor.Wait(this, 1000);
|
||||||
throw new StopException();
|
|
||||||
if (_pause)
|
|
||||||
{
|
|
||||||
ShowProgress("Paused...", 0, 0, null, null);
|
|
||||||
Monitor.Wait(this);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
Monitor.Wait(this, 1000);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (_arVerify.AccResult != HttpStatusCode.OK)
|
if (_arVerify.AccResult != HttpStatusCode.OK)
|
||||||
@@ -1993,6 +2001,23 @@ namespace CUETools.Processor
|
|||||||
else
|
else
|
||||||
_arVerify.ContactAccurateRip(_accurateRipId);
|
_arVerify.ContactAccurateRip(_accurateRipId);
|
||||||
|
|
||||||
|
if (_accurateRipMode == AccurateRipMode.Verify)
|
||||||
|
{
|
||||||
|
if (_arVerify.AccResult != HttpStatusCode.OK)
|
||||||
|
{
|
||||||
|
if (_config.writeArLogOnVerify)
|
||||||
|
{
|
||||||
|
if (!Directory.Exists(dir))
|
||||||
|
Directory.CreateDirectory(dir);
|
||||||
|
StreamWriter sw = new StreamWriter(Path.ChangeExtension(_cuePath, ".accurip"),
|
||||||
|
false, CUESheet.Encoding);
|
||||||
|
GenerateAccurateRipLog(sw);
|
||||||
|
sw.Close();
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (_accurateRipMode == AccurateRipMode.VerifyThenConvert)
|
if (_accurateRipMode == AccurateRipMode.VerifyThenConvert)
|
||||||
{
|
{
|
||||||
if (_arVerify.AccResult != HttpStatusCode.OK && !_isCD)
|
if (_arVerify.AccResult != HttpStatusCode.OK && !_isCD)
|
||||||
@@ -2047,16 +2072,16 @@ namespace CUETools.Processor
|
|||||||
|
|
||||||
if (!SkipOutput)
|
if (!SkipOutput)
|
||||||
{
|
{
|
||||||
if (_accurateRipMode != AccurateRipMode.Verify)
|
if (_accurateRipMode != AccurateRipMode.Verify && _accurateRipMode != AccurateRipMode.VerifyPlusCRCs)
|
||||||
{
|
{
|
||||||
if (!Directory.Exists(dir))
|
if (!Directory.Exists(dir))
|
||||||
Directory.CreateDirectory(dir);
|
Directory.CreateDirectory(dir);
|
||||||
}
|
}
|
||||||
if (_isCD)
|
if (_isCD)
|
||||||
destLengths = CalculateAudioFileLengths(style); // need to recalc, might have changed after scanning the CD
|
destLengths = CalculateAudioFileLengths(style); // need to recalc, might have changed after scanning the CD
|
||||||
if (_outputFormat != OutputAudioFormat.NoAudio || _accurateRipMode == AccurateRipMode.Verify)
|
if (_outputFormat != OutputAudioFormat.NoAudio || _accurateRipMode == AccurateRipMode.Verify || _accurateRipMode == AccurateRipMode.VerifyPlusCRCs)
|
||||||
WriteAudioFilesPass(dir, style, destPaths, destLengths, htoaToFile, _accurateRipMode == AccurateRipMode.Verify);
|
WriteAudioFilesPass(dir, style, destPaths, destLengths, htoaToFile, _accurateRipMode == AccurateRipMode.Verify || _accurateRipMode == AccurateRipMode.VerifyPlusCRCs);
|
||||||
if (_accurateRipMode != AccurateRipMode.Verify)
|
if (_accurateRipMode != AccurateRipMode.Verify && _accurateRipMode != AccurateRipMode.VerifyPlusCRCs)
|
||||||
{
|
{
|
||||||
string logContents = LOGContents();
|
string logContents = LOGContents();
|
||||||
string cueContents = CUESheetContents(style);
|
string cueContents = CUESheetContents(style);
|
||||||
@@ -2140,11 +2165,12 @@ namespace CUETools.Processor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_accurateRipMode == AccurateRipMode.Verify ||
|
if (_accurateRipMode == AccurateRipMode.Verify ||
|
||||||
|
_accurateRipMode == AccurateRipMode.VerifyPlusCRCs ||
|
||||||
(_accurateRipMode != AccurateRipMode.None && _outputFormat != OutputAudioFormat.NoAudio))
|
(_accurateRipMode != AccurateRipMode.None && _outputFormat != OutputAudioFormat.NoAudio))
|
||||||
{
|
{
|
||||||
ShowProgress((string)"Generating AccurateRip report...", 0, 0, null, null);
|
ShowProgress((string)"Generating AccurateRip report...", 0, 0, null, null);
|
||||||
if (_accurateRipMode == AccurateRipMode.Verify && _config.writeArTagsOnVerify && _writeOffset == 0 && !_isArchive && !_isCD)
|
if ((_accurateRipMode == AccurateRipMode.Verify || _accurateRipMode == AccurateRipMode.VerifyPlusCRCs) && _config.writeArTagsOnVerify && _writeOffset == 0 && !_isArchive && !_isCD)
|
||||||
{
|
{
|
||||||
uint tracksMatch;
|
uint tracksMatch;
|
||||||
int bestOffset;
|
int bestOffset;
|
||||||
@@ -2174,8 +2200,8 @@ namespace CUETools.Processor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((_accurateRipMode != AccurateRipMode.Verify && _config.writeArLogOnConvert) ||
|
if ((_accurateRipMode != AccurateRipMode.Verify && _accurateRipMode != AccurateRipMode.VerifyPlusCRCs && _config.writeArLogOnConvert) ||
|
||||||
(_accurateRipMode == AccurateRipMode.Verify && _config.writeArLogOnVerify))
|
((_accurateRipMode == AccurateRipMode.Verify || _accurateRipMode == AccurateRipMode.VerifyPlusCRCs) && _config.writeArLogOnVerify))
|
||||||
{
|
{
|
||||||
if (!Directory.Exists(dir))
|
if (!Directory.Exists(dir))
|
||||||
Directory.CreateDirectory(dir);
|
Directory.CreateDirectory(dir);
|
||||||
@@ -2525,16 +2551,7 @@ namespace CUETools.Processor
|
|||||||
samplesRemIndex -= copyCount;
|
samplesRemIndex -= copyCount;
|
||||||
samplesRemSource -= copyCount;
|
samplesRemSource -= copyCount;
|
||||||
|
|
||||||
lock (this)
|
CheckStop();
|
||||||
{
|
|
||||||
if (_stop)
|
|
||||||
throw new StopException();
|
|
||||||
if (_pause)
|
|
||||||
{
|
|
||||||
ShowProgress("Paused...", 0, 0, null, null);
|
|
||||||
Monitor.Wait(this);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -2734,6 +2751,20 @@ namespace CUETools.Processor
|
|||||||
return fileLengths;
|
return fileLengths;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void CheckStop()
|
||||||
|
{
|
||||||
|
lock (this)
|
||||||
|
{
|
||||||
|
if (_stop)
|
||||||
|
throw new StopException();
|
||||||
|
if (_pause)
|
||||||
|
{
|
||||||
|
ShowProgress("Paused...", 0, 0, null, null);
|
||||||
|
Monitor.Wait(this);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void Stop() {
|
public void Stop() {
|
||||||
lock (this) {
|
lock (this) {
|
||||||
if (_pause)
|
if (_pause)
|
||||||
@@ -2766,6 +2797,14 @@ namespace CUETools.Processor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public CDImageLayout TOC
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return _toc;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private IAudioDest GetAudioDest(string path, int finalSampleCount, int bps, bool noOutput)
|
private IAudioDest GetAudioDest(string path, int finalSampleCount, int bps, bool noOutput)
|
||||||
{
|
{
|
||||||
if (noOutput)
|
if (noOutput)
|
||||||
@@ -3007,123 +3046,6 @@ namespace CUETools.Processor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class SeekableZipStream : Stream
|
|
||||||
{
|
|
||||||
ZipFile zipFile;
|
|
||||||
ZipEntry zipEntry;
|
|
||||||
Stream zipStream;
|
|
||||||
long position;
|
|
||||||
byte[] temp;
|
|
||||||
|
|
||||||
public SeekableZipStream(string path, string fileName)
|
|
||||||
{
|
|
||||||
zipFile = new ZipFile(path);
|
|
||||||
zipEntry = zipFile.GetEntry(fileName);
|
|
||||||
if (zipEntry == null)
|
|
||||||
throw new Exception("Archive entry not found.");
|
|
||||||
zipStream = zipFile.GetInputStream(zipEntry);
|
|
||||||
temp = new byte[65536];
|
|
||||||
position = 0;
|
|
||||||
}
|
|
||||||
public override bool CanRead
|
|
||||||
{
|
|
||||||
get { return true; }
|
|
||||||
}
|
|
||||||
public override bool CanSeek
|
|
||||||
{
|
|
||||||
get { return true; }
|
|
||||||
}
|
|
||||||
public override bool CanWrite
|
|
||||||
{
|
|
||||||
get { return false; }
|
|
||||||
}
|
|
||||||
public override long Length
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
return zipEntry.Size;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
public override long Position
|
|
||||||
{
|
|
||||||
get { return position; }
|
|
||||||
set { Seek(value, SeekOrigin.Begin); }
|
|
||||||
}
|
|
||||||
public override void Close()
|
|
||||||
{
|
|
||||||
zipStream.Close();
|
|
||||||
zipEntry = null;
|
|
||||||
zipFile.Close();
|
|
||||||
}
|
|
||||||
public override void Flush()
|
|
||||||
{
|
|
||||||
throw new NotSupportedException();
|
|
||||||
}
|
|
||||||
public override void SetLength(long value)
|
|
||||||
{
|
|
||||||
throw new NotSupportedException();
|
|
||||||
}
|
|
||||||
public override int Read(byte[] buffer, int offset, int count)
|
|
||||||
{
|
|
||||||
if (position == 0 && zipEntry.IsCrypted && ((ZipInputStream)zipStream).Password == null && PasswordRequired != null)
|
|
||||||
{
|
|
||||||
PasswordRequiredEventArgs e = new PasswordRequiredEventArgs();
|
|
||||||
PasswordRequired(this, e);
|
|
||||||
if (e.ContinueOperation && e.Password.Length > 0)
|
|
||||||
((ZipInputStream)zipStream).Password = e.Password;
|
|
||||||
}
|
|
||||||
// TODO: always save to a local temp circular buffer for optimization of the backwards seek.
|
|
||||||
int total = zipStream.Read(buffer, offset, count);
|
|
||||||
position += total;
|
|
||||||
if (ExtractionProgress != null)
|
|
||||||
{
|
|
||||||
ExtractionProgressEventArgs e = new ExtractionProgressEventArgs();
|
|
||||||
e.BytesExtracted = position;
|
|
||||||
e.FileName = zipEntry.Name;
|
|
||||||
e.FileSize = zipEntry.Size;
|
|
||||||
e.PercentComplete = 100.0 * position / zipEntry.Size;
|
|
||||||
ExtractionProgress(this, e);
|
|
||||||
}
|
|
||||||
return total;
|
|
||||||
}
|
|
||||||
public override long Seek(long offset, SeekOrigin origin)
|
|
||||||
{
|
|
||||||
long seek_to;
|
|
||||||
switch (origin)
|
|
||||||
{
|
|
||||||
case SeekOrigin.Begin:
|
|
||||||
seek_to = offset;
|
|
||||||
break;
|
|
||||||
case SeekOrigin.Current:
|
|
||||||
seek_to = Position + offset;
|
|
||||||
break;
|
|
||||||
case SeekOrigin.End:
|
|
||||||
seek_to = Length + offset;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
throw new NotSupportedException();
|
|
||||||
}
|
|
||||||
if (seek_to < 0 || seek_to > Length)
|
|
||||||
throw new IOException("Invalid seek");
|
|
||||||
if (seek_to < position)
|
|
||||||
{
|
|
||||||
zipStream.Close();
|
|
||||||
zipStream = zipFile.GetInputStream(zipEntry);
|
|
||||||
position = 0;
|
|
||||||
}
|
|
||||||
while (seek_to > position)
|
|
||||||
if (Read(temp, 0, (int) Math.Min(seek_to - position, (long) temp.Length)) <= 0)
|
|
||||||
throw new IOException("Invalid seek");
|
|
||||||
return position;
|
|
||||||
}
|
|
||||||
public override void Write(byte[] array, int offset, int count)
|
|
||||||
{
|
|
||||||
throw new NotSupportedException();
|
|
||||||
}
|
|
||||||
public event PasswordRequiredHandler PasswordRequired;
|
|
||||||
public event ExtractionProgressHandler ExtractionProgress;
|
|
||||||
}
|
|
||||||
|
|
||||||
public class ArchiveFileAbstraction : TagLib.File.IFileAbstraction
|
public class ArchiveFileAbstraction : TagLib.File.IFileAbstraction
|
||||||
{
|
{
|
||||||
private string name;
|
private string name;
|
||||||
|
|||||||
167
CUETools.Processor/SeekableZipStream.cs
Normal file
167
CUETools.Processor/SeekableZipStream.cs
Normal file
@@ -0,0 +1,167 @@
|
|||||||
|
using System;
|
||||||
|
using System.IO;
|
||||||
|
using ICSharpCode.SharpZipLib.Zip;
|
||||||
|
|
||||||
|
namespace CUETools.Processor
|
||||||
|
{
|
||||||
|
#region Event Delegate Definitions
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Represents the method that will handle extraction progress events
|
||||||
|
/// </summary>
|
||||||
|
public delegate void ZipExtractionProgressHandler(object sender, ZipExtractionProgressEventArgs e);
|
||||||
|
/// <summary>
|
||||||
|
/// Represents the method that will handle password required events
|
||||||
|
/// </summary>
|
||||||
|
public delegate void ZipPasswordRequiredHandler(object sender, ZipPasswordRequiredEventArgs e);
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
public class SeekableZipStream : Stream
|
||||||
|
{
|
||||||
|
ZipFile zipFile;
|
||||||
|
ZipEntry zipEntry;
|
||||||
|
Stream zipStream;
|
||||||
|
long position;
|
||||||
|
byte[] temp;
|
||||||
|
|
||||||
|
public SeekableZipStream(string path, string fileName)
|
||||||
|
{
|
||||||
|
zipFile = new ZipFile(path);
|
||||||
|
zipEntry = zipFile.GetEntry(fileName);
|
||||||
|
if (zipEntry == null)
|
||||||
|
throw new Exception("Archive entry not found.");
|
||||||
|
zipStream = zipFile.GetInputStream(zipEntry);
|
||||||
|
temp = new byte[65536];
|
||||||
|
position = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override bool CanRead
|
||||||
|
{
|
||||||
|
get { return true; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public override bool CanSeek
|
||||||
|
{
|
||||||
|
get { return true; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public override bool CanWrite
|
||||||
|
{
|
||||||
|
get { return false; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public override long Length
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return zipEntry.Size;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public override long Position
|
||||||
|
{
|
||||||
|
get { return position; }
|
||||||
|
set { Seek(value, SeekOrigin.Begin); }
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void Close()
|
||||||
|
{
|
||||||
|
zipStream.Close();
|
||||||
|
zipEntry = null;
|
||||||
|
zipFile.Close();
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void Flush()
|
||||||
|
{
|
||||||
|
throw new NotSupportedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void SetLength(long value)
|
||||||
|
{
|
||||||
|
throw new NotSupportedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int Read(byte[] buffer, int offset, int count)
|
||||||
|
{
|
||||||
|
if (position == 0 && zipEntry.IsCrypted && ((ZipInputStream)zipStream).Password == null && PasswordRequired != null)
|
||||||
|
{
|
||||||
|
ZipPasswordRequiredEventArgs e = new ZipPasswordRequiredEventArgs();
|
||||||
|
PasswordRequired(this, e);
|
||||||
|
if (e.ContinueOperation && e.Password.Length > 0)
|
||||||
|
((ZipInputStream)zipStream).Password = e.Password;
|
||||||
|
}
|
||||||
|
// TODO: always save to a local temp circular buffer for optimization of the backwards seek.
|
||||||
|
int total = zipStream.Read(buffer, offset, count);
|
||||||
|
position += total;
|
||||||
|
if (ExtractionProgress != null)
|
||||||
|
{
|
||||||
|
ZipExtractionProgressEventArgs e = new ZipExtractionProgressEventArgs();
|
||||||
|
e.BytesExtracted = position;
|
||||||
|
e.FileName = zipEntry.Name;
|
||||||
|
e.FileSize = zipEntry.Size;
|
||||||
|
e.PercentComplete = 100.0 * position / zipEntry.Size;
|
||||||
|
ExtractionProgress(this, e);
|
||||||
|
}
|
||||||
|
return total;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override long Seek(long offset, SeekOrigin origin)
|
||||||
|
{
|
||||||
|
long seek_to;
|
||||||
|
switch (origin)
|
||||||
|
{
|
||||||
|
case SeekOrigin.Begin:
|
||||||
|
seek_to = offset;
|
||||||
|
break;
|
||||||
|
case SeekOrigin.Current:
|
||||||
|
seek_to = Position + offset;
|
||||||
|
break;
|
||||||
|
case SeekOrigin.End:
|
||||||
|
seek_to = Length + offset;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
throw new NotSupportedException();
|
||||||
|
}
|
||||||
|
if (seek_to < 0 || seek_to > Length)
|
||||||
|
throw new IOException("Invalid seek");
|
||||||
|
if (seek_to < position)
|
||||||
|
{
|
||||||
|
zipStream.Close();
|
||||||
|
zipStream = zipFile.GetInputStream(zipEntry);
|
||||||
|
position = 0;
|
||||||
|
}
|
||||||
|
while (seek_to > position)
|
||||||
|
if (Read(temp, 0, (int)Math.Min(seek_to - position, (long)temp.Length)) <= 0)
|
||||||
|
throw new IOException("Invalid seek");
|
||||||
|
return position;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void Write(byte[] array, int offset, int count)
|
||||||
|
{
|
||||||
|
throw new NotSupportedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public event ZipPasswordRequiredHandler PasswordRequired;
|
||||||
|
public event ZipExtractionProgressHandler ExtractionProgress;
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Event Argument Classes
|
||||||
|
|
||||||
|
public class ZipPasswordRequiredEventArgs
|
||||||
|
{
|
||||||
|
public string Password = string.Empty;
|
||||||
|
public bool ContinueOperation = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public class ZipExtractionProgressEventArgs
|
||||||
|
{
|
||||||
|
public string FileName;
|
||||||
|
public long FileSize;
|
||||||
|
public long BytesExtracted;
|
||||||
|
public double PercentComplete;
|
||||||
|
public bool ContinueOperation = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
@@ -18,6 +18,8 @@ namespace CUETools.Processor
|
|||||||
xiph.SetField(tag, tags.GetValues(tag));
|
xiph.SetField(tag, tags.GetValues(tag));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
if (fileInfo is TagLib.Mpeg4.File)
|
||||||
|
return true;
|
||||||
if (fileInfo is TagLib.UserDefined.File && !(fileInfo as TagLib.UserDefined.File).SupportsAPEv2)
|
if (fileInfo is TagLib.UserDefined.File && !(fileInfo as TagLib.UserDefined.File).SupportsAPEv2)
|
||||||
{
|
{
|
||||||
if (!(fileInfo as TagLib.UserDefined.File).SupportsID3v2)
|
if (!(fileInfo as TagLib.UserDefined.File).SupportsID3v2)
|
||||||
|
|||||||
@@ -1,80 +1,80 @@
|
|||||||
//
|
//
|
||||||
// File.cs: Provides tagging and properties support for WavPack files.
|
// File.cs: Provides tagging and properties support for WavPack files.
|
||||||
//
|
//
|
||||||
// Author:
|
// Author:
|
||||||
// Brian Nickel (brian.nickel@gmail.com)
|
// Brian Nickel (brian.nickel@gmail.com)
|
||||||
//
|
//
|
||||||
// Original Source:
|
// Original Source:
|
||||||
// wvfile.cpp from libtunepimp
|
// wvfile.cpp from libtunepimp
|
||||||
//
|
//
|
||||||
// Copyright (C) 2006-2007 Brian Nickel
|
// Copyright (C) 2006-2007 Brian Nickel
|
||||||
// Copyright (C) 2006 by Lukáš Lalinský (Original Implementation)
|
// Copyright (C) 2006 by Lukáš Lalinský (Original Implementation)
|
||||||
// Copyright (C) 2004 by Allan Sandfeld Jensen (Original Implementation)
|
// Copyright (C) 2004 by Allan Sandfeld Jensen (Original Implementation)
|
||||||
//
|
//
|
||||||
// This library is free software; you can redistribute it and/or modify
|
// This library is free software; you can redistribute it and/or modify
|
||||||
// it under the terms of the GNU Lesser General Public License version
|
// it under the terms of the GNU Lesser General Public License version
|
||||||
// 2.1 as published by the Free Software Foundation.
|
// 2.1 as published by the Free Software Foundation.
|
||||||
//
|
//
|
||||||
// This library is distributed in the hope that it will be useful, but
|
// This library is distributed in the hope that it will be useful, but
|
||||||
// WITHOUT ANY WARRANTY; without even the implied warranty of
|
// WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
// Lesser General Public License for more details.
|
// Lesser General Public License for more details.
|
||||||
//
|
//
|
||||||
// You should have received a copy of the GNU Lesser General Public
|
// You should have received a copy of the GNU Lesser General Public
|
||||||
// License along with this library; if not, write to the Free Software
|
// License along with this library; if not, write to the Free Software
|
||||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
|
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
|
||||||
// USA
|
// USA
|
||||||
//
|
//
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
using TagLib;
|
using TagLib;
|
||||||
|
|
||||||
namespace TagLib.UserDefined {
|
namespace TagLib.UserDefined {
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// This class extends <see cref="TagLib.NonContainer.File" /> to
|
/// This class extends <see cref="TagLib.NonContainer.File" /> to
|
||||||
/// provide tagging and properties support for user defined format files.
|
/// provide tagging and properties support for user defined format files.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <remarks>
|
/// <remarks>
|
||||||
/// A <see cref="TagLib.Ape.Tag" /> will be added automatically to
|
/// A <see cref="TagLib.Ape.Tag" /> will be added automatically to
|
||||||
/// any file that doesn't contain one. This change does not effect
|
/// any file that doesn't contain one. This change does not effect
|
||||||
/// the file and can be reversed using the following method:
|
/// the file and can be reversed using the following method:
|
||||||
/// <code>file.RemoveTags (file.TagTypes & ~file.TagTypesOnDisk);</code>
|
/// <code>file.RemoveTags (file.TagTypes & ~file.TagTypesOnDisk);</code>
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
[SupportedMimeType("taglib/misc", "misc")]
|
[SupportedMimeType("taglib/misc", "misc")]
|
||||||
public class File : TagLib.NonContainer.File
|
public class File : TagLib.NonContainer.File
|
||||||
{
|
{
|
||||||
#region Private Fields
|
#region Private Fields
|
||||||
|
|
||||||
private bool _supportsAPEv2 = true;
|
private bool _supportsAPEv2 = true;
|
||||||
|
|
||||||
private bool _supportsID3v2 = true;
|
private bool _supportsID3v2 = true;
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#region Constructors
|
#region Constructors
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Constructs and initializes a new instance of <see
|
/// Constructs and initializes a new instance of <see
|
||||||
/// cref="File" /> for a specified path in the local file
|
/// cref="File" /> for a specified path in the local file
|
||||||
/// system and specified read style.
|
/// system and specified read style.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="path">
|
/// <param name="path">
|
||||||
/// A <see cref="string" /> object containing the path of the
|
/// A <see cref="string" /> object containing the path of the
|
||||||
/// file to use in the new instance.
|
/// file to use in the new instance.
|
||||||
/// </param>
|
/// </param>
|
||||||
/// <param name="propertiesStyle">
|
/// <param name="propertiesStyle">
|
||||||
/// A <see cref="ReadStyle" /> value specifying at what level
|
/// A <see cref="ReadStyle" /> value specifying at what level
|
||||||
/// of accuracy to read the media properties, or <see
|
/// of accuracy to read the media properties, or <see
|
||||||
/// cref="ReadStyle.None" /> to ignore the properties.
|
/// cref="ReadStyle.None" /> to ignore the properties.
|
||||||
/// </param>
|
/// </param>
|
||||||
/// <exception cref="ArgumentNullException">
|
/// <exception cref="ArgumentNullException">
|
||||||
/// <paramref name="path" /> is <see langword="null" />.
|
/// <paramref name="path" /> is <see langword="null" />.
|
||||||
/// </exception>
|
/// </exception>
|
||||||
public File (string path, ReadStyle propertiesStyle, bool supportsAPEv2, bool supportsID3v2)
|
public File (string path, ReadStyle propertiesStyle, bool supportsAPEv2, bool supportsID3v2)
|
||||||
: base (path, propertiesStyle)
|
: base (path, propertiesStyle)
|
||||||
{
|
{
|
||||||
_supportsAPEv2 = supportsAPEv2;
|
_supportsAPEv2 = supportsAPEv2;
|
||||||
_supportsID3v2 = supportsID3v2;
|
_supportsID3v2 = supportsID3v2;
|
||||||
// Make sure we have an APE tag.
|
// Make sure we have an APE tag.
|
||||||
@@ -83,23 +83,23 @@ namespace TagLib.UserDefined {
|
|||||||
else
|
else
|
||||||
if (_supportsID3v2)
|
if (_supportsID3v2)
|
||||||
GetTag(TagTypes.Id3v2, true);
|
GetTag(TagTypes.Id3v2, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Constructs and initializes a new instance of <see
|
/// Constructs and initializes a new instance of <see
|
||||||
/// cref="File" /> for a specified path in the local file
|
/// cref="File" /> for a specified path in the local file
|
||||||
/// system with an average read style.
|
/// system with an average read style.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="path">
|
/// <param name="path">
|
||||||
/// A <see cref="string" /> object containing the path of the
|
/// A <see cref="string" /> object containing the path of the
|
||||||
/// file to use in the new instance.
|
/// file to use in the new instance.
|
||||||
/// </param>
|
/// </param>
|
||||||
/// <exception cref="ArgumentNullException">
|
/// <exception cref="ArgumentNullException">
|
||||||
/// <paramref name="path" /> is <see langword="null" />.
|
/// <paramref name="path" /> is <see langword="null" />.
|
||||||
/// </exception>
|
/// </exception>
|
||||||
public File(string path, bool supportsAPEv2, bool supportsID3v2)
|
public File(string path, bool supportsAPEv2, bool supportsID3v2)
|
||||||
: base(path)
|
: base(path)
|
||||||
{
|
{
|
||||||
_supportsAPEv2 = supportsAPEv2;
|
_supportsAPEv2 = supportsAPEv2;
|
||||||
_supportsID3v2 = supportsID3v2;
|
_supportsID3v2 = supportsID3v2;
|
||||||
// Make sure we have an APE tag.
|
// Make sure we have an APE tag.
|
||||||
@@ -108,56 +108,30 @@ namespace TagLib.UserDefined {
|
|||||||
else
|
else
|
||||||
if (_supportsID3v2)
|
if (_supportsID3v2)
|
||||||
GetTag(TagTypes.Id3v2, true);
|
GetTag(TagTypes.Id3v2, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Constructs and initializes a new instance of <see
|
/// Constructs and initializes a new instance of <see
|
||||||
/// cref="File" /> for a specified file abstraction and
|
/// cref="File" /> for a specified file abstraction and
|
||||||
/// specified read style.
|
/// specified read style.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="abstraction">
|
/// <param name="abstraction">
|
||||||
/// A <see cref="IFileAbstraction" /> object to use when
|
/// A <see cref="IFileAbstraction" /> object to use when
|
||||||
/// reading from and writing to the file.
|
/// reading from and writing to the file.
|
||||||
/// </param>
|
/// </param>
|
||||||
/// <param name="propertiesStyle">
|
/// <param name="propertiesStyle">
|
||||||
/// A <see cref="ReadStyle" /> value specifying at what level
|
/// A <see cref="ReadStyle" /> value specifying at what level
|
||||||
/// of accuracy to read the media properties, or <see
|
/// of accuracy to read the media properties, or <see
|
||||||
/// cref="ReadStyle.None" /> to ignore the properties.
|
/// cref="ReadStyle.None" /> to ignore the properties.
|
||||||
/// </param>
|
/// </param>
|
||||||
/// <exception cref="ArgumentNullException">
|
/// <exception cref="ArgumentNullException">
|
||||||
/// <paramref name="abstraction" /> is <see langword="null"
|
/// <paramref name="abstraction" /> is <see langword="null"
|
||||||
/// />.
|
/// />.
|
||||||
/// </exception>
|
|
||||||
public File (File.IFileAbstraction abstraction,
|
|
||||||
ReadStyle propertiesStyle, bool supportsAPEv2, bool supportsID3v2)
|
|
||||||
: base (abstraction, propertiesStyle)
|
|
||||||
{
|
|
||||||
_supportsAPEv2 = supportsAPEv2;
|
|
||||||
_supportsID3v2 = supportsID3v2;
|
|
||||||
// Make sure we have an APE tag.
|
|
||||||
if (_supportsAPEv2)
|
|
||||||
GetTag(TagTypes.Ape, true);
|
|
||||||
else
|
|
||||||
if (_supportsID3v2)
|
|
||||||
GetTag(TagTypes.Id3v2, true);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Constructs and initializes a new instance of <see
|
|
||||||
/// cref="File" /> for a specified file abstraction with an
|
|
||||||
/// average read style.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="abstraction">
|
|
||||||
/// A <see cref="IFileAbstraction" /> object to use when
|
|
||||||
/// reading from and writing to the file.
|
|
||||||
/// </param>
|
|
||||||
/// <exception cref="ArgumentNullException">
|
|
||||||
/// <paramref name="abstraction" /> is <see langword="null"
|
|
||||||
/// />.
|
|
||||||
/// </exception>
|
/// </exception>
|
||||||
public File(File.IFileAbstraction abstraction, bool supportsAPEv2, bool supportsID3v2)
|
public File (File.IFileAbstraction abstraction,
|
||||||
: base (abstraction)
|
ReadStyle propertiesStyle, bool supportsAPEv2, bool supportsID3v2)
|
||||||
{
|
: base (abstraction, propertiesStyle)
|
||||||
|
{
|
||||||
_supportsAPEv2 = supportsAPEv2;
|
_supportsAPEv2 = supportsAPEv2;
|
||||||
_supportsID3v2 = supportsID3v2;
|
_supportsID3v2 = supportsID3v2;
|
||||||
// Make sure we have an APE tag.
|
// Make sure we have an APE tag.
|
||||||
@@ -166,20 +140,46 @@ namespace TagLib.UserDefined {
|
|||||||
else
|
else
|
||||||
if (_supportsID3v2)
|
if (_supportsID3v2)
|
||||||
GetTag(TagTypes.Id3v2, true);
|
GetTag(TagTypes.Id3v2, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
/// <summary>
|
||||||
|
/// Constructs and initializes a new instance of <see
|
||||||
|
/// cref="File" /> for a specified file abstraction with an
|
||||||
|
/// average read style.
|
||||||
#region Public Methods
|
/// </summary>
|
||||||
|
/// <param name="abstraction">
|
||||||
public bool SupportsAPEv2
|
/// A <see cref="IFileAbstraction" /> object to use when
|
||||||
{
|
/// reading from and writing to the file.
|
||||||
get
|
/// </param>
|
||||||
{
|
/// <exception cref="ArgumentNullException">
|
||||||
return _supportsAPEv2;
|
/// <paramref name="abstraction" /> is <see langword="null"
|
||||||
}
|
/// />.
|
||||||
|
/// </exception>
|
||||||
|
public File(File.IFileAbstraction abstraction, bool supportsAPEv2, bool supportsID3v2)
|
||||||
|
: base (abstraction)
|
||||||
|
{
|
||||||
|
_supportsAPEv2 = supportsAPEv2;
|
||||||
|
_supportsID3v2 = supportsID3v2;
|
||||||
|
// Make sure we have an APE tag.
|
||||||
|
if (_supportsAPEv2)
|
||||||
|
GetTag(TagTypes.Ape, true);
|
||||||
|
else
|
||||||
|
if (_supportsID3v2)
|
||||||
|
GetTag(TagTypes.Id3v2, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#region Public Methods
|
||||||
|
|
||||||
|
public bool SupportsAPEv2
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return _supportsAPEv2;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool SupportsID3v2
|
public bool SupportsID3v2
|
||||||
@@ -188,133 +188,133 @@ namespace TagLib.UserDefined {
|
|||||||
{
|
{
|
||||||
return _supportsID3v2;
|
return _supportsID3v2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets a tag of a specified type from the current instance,
|
/// Gets a tag of a specified type from the current instance,
|
||||||
/// optionally creating a new tag if possible.
|
/// optionally creating a new tag if possible.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="type">
|
/// <param name="type">
|
||||||
/// A <see cref="TagLib.TagTypes" /> value indicating the
|
/// A <see cref="TagLib.TagTypes" /> value indicating the
|
||||||
/// type of tag to read.
|
/// type of tag to read.
|
||||||
/// </param>
|
/// </param>
|
||||||
/// <param name="create">
|
/// <param name="create">
|
||||||
/// A <see cref="bool" /> value specifying whether or not to
|
/// A <see cref="bool" /> value specifying whether or not to
|
||||||
/// try and create the tag if one is not found.
|
/// try and create the tag if one is not found.
|
||||||
/// </param>
|
/// </param>
|
||||||
/// <returns>
|
/// <returns>
|
||||||
/// A <see cref="Tag" /> object containing the tag that was
|
/// A <see cref="Tag" /> object containing the tag that was
|
||||||
/// found in or added to the current instance. If no
|
/// found in or added to the current instance. If no
|
||||||
/// matching tag was found and none was created, <see
|
/// matching tag was found and none was created, <see
|
||||||
/// langword="null" /> is returned.
|
/// langword="null" /> is returned.
|
||||||
/// </returns>
|
/// </returns>
|
||||||
/// <remarks>
|
/// <remarks>
|
||||||
/// If a <see cref="TagLib.Id3v2.Tag" /> is added to the
|
/// If a <see cref="TagLib.Id3v2.Tag" /> is added to the
|
||||||
/// current instance, it will be placed at the start of the
|
/// current instance, it will be placed at the start of the
|
||||||
/// file. On the other hand, <see cref="TagLib.Id3v1.Tag" />
|
/// file. On the other hand, <see cref="TagLib.Id3v1.Tag" />
|
||||||
/// <see cref="TagLib.Ape.Tag" /> will be added to the end of
|
/// <see cref="TagLib.Ape.Tag" /> will be added to the end of
|
||||||
/// the file. All other tag types will be ignored.
|
/// the file. All other tag types will be ignored.
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
public override TagLib.Tag GetTag (TagTypes type, bool create)
|
public override TagLib.Tag GetTag (TagTypes type, bool create)
|
||||||
{
|
{
|
||||||
Tag t = (Tag as TagLib.NonContainer.Tag).GetTag (type);
|
Tag t = (Tag as TagLib.NonContainer.Tag).GetTag (type);
|
||||||
|
|
||||||
if (t != null || !create)
|
if (t != null || !create)
|
||||||
return t;
|
return t;
|
||||||
|
|
||||||
switch (type)
|
switch (type)
|
||||||
{
|
{
|
||||||
case TagTypes.Id3v1:
|
case TagTypes.Id3v1:
|
||||||
return EndTag.AddTag (type, Tag);
|
return EndTag.AddTag (type, Tag);
|
||||||
|
|
||||||
case TagTypes.Id3v2:
|
case TagTypes.Id3v2:
|
||||||
return StartTag.AddTag (type, Tag);
|
return StartTag.AddTag (type, Tag);
|
||||||
|
|
||||||
case TagTypes.Ape:
|
case TagTypes.Ape:
|
||||||
return EndTag.AddTag (type, Tag);
|
return EndTag.AddTag (type, Tag);
|
||||||
|
|
||||||
default:
|
default:
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#region Protected Methods
|
#region Protected Methods
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Reads format specific information at the start of the
|
/// Reads format specific information at the start of the
|
||||||
/// file.
|
/// file.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="start">
|
/// <param name="start">
|
||||||
/// A <see cref="long" /> value containing the seek position
|
/// A <see cref="long" /> value containing the seek position
|
||||||
/// at which the tags end and the media data begins.
|
/// at which the tags end and the media data begins.
|
||||||
/// </param>
|
/// </param>
|
||||||
/// <param name="propertiesStyle">
|
/// <param name="propertiesStyle">
|
||||||
/// A <see cref="ReadStyle" /> value specifying at what level
|
/// A <see cref="ReadStyle" /> value specifying at what level
|
||||||
/// of accuracy to read the media properties, or <see
|
/// of accuracy to read the media properties, or <see
|
||||||
/// cref="ReadStyle.None" /> to ignore the properties.
|
/// cref="ReadStyle.None" /> to ignore the properties.
|
||||||
/// </param>
|
/// </param>
|
||||||
protected override void ReadStart (long start,
|
protected override void ReadStart (long start,
|
||||||
ReadStyle propertiesStyle)
|
ReadStyle propertiesStyle)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Reads format specific information at the end of the
|
/// Reads format specific information at the end of the
|
||||||
/// file.
|
/// file.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="end">
|
/// <param name="end">
|
||||||
/// A <see cref="long" /> value containing the seek position
|
/// A <see cref="long" /> value containing the seek position
|
||||||
/// at which the media data ends and the tags begin.
|
/// at which the media data ends and the tags begin.
|
||||||
/// </param>
|
/// </param>
|
||||||
/// <param name="propertiesStyle">
|
/// <param name="propertiesStyle">
|
||||||
/// A <see cref="ReadStyle" /> value specifying at what level
|
/// A <see cref="ReadStyle" /> value specifying at what level
|
||||||
/// of accuracy to read the media properties, or <see
|
/// of accuracy to read the media properties, or <see
|
||||||
/// cref="ReadStyle.None" /> to ignore the properties.
|
/// cref="ReadStyle.None" /> to ignore the properties.
|
||||||
/// </param>
|
/// </param>
|
||||||
protected override void ReadEnd (long end,
|
protected override void ReadEnd (long end,
|
||||||
ReadStyle propertiesStyle)
|
ReadStyle propertiesStyle)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Reads the audio properties from the file represented by
|
/// Reads the audio properties from the file represented by
|
||||||
/// the current instance.
|
/// the current instance.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="start">
|
/// <param name="start">
|
||||||
/// A <see cref="long" /> value containing the seek position
|
/// A <see cref="long" /> value containing the seek position
|
||||||
/// at which the tags end and the media data begins.
|
/// at which the tags end and the media data begins.
|
||||||
/// </param>
|
/// </param>
|
||||||
/// <param name="end">
|
/// <param name="end">
|
||||||
/// A <see cref="long" /> value containing the seek position
|
/// A <see cref="long" /> value containing the seek position
|
||||||
/// at which the media data ends and the tags begin.
|
/// at which the media data ends and the tags begin.
|
||||||
/// </param>
|
/// </param>
|
||||||
/// <param name="propertiesStyle">
|
/// <param name="propertiesStyle">
|
||||||
/// A <see cref="ReadStyle" /> value specifying at what level
|
/// A <see cref="ReadStyle" /> value specifying at what level
|
||||||
/// of accuracy to read the media properties, or <see
|
/// of accuracy to read the media properties, or <see
|
||||||
/// cref="ReadStyle.None" /> to ignore the properties.
|
/// cref="ReadStyle.None" /> to ignore the properties.
|
||||||
/// </param>
|
/// </param>
|
||||||
/// <returns>
|
/// <returns>
|
||||||
/// A <see cref="TagLib.Properties" /> object describing the
|
/// A <see cref="TagLib.Properties" /> object describing the
|
||||||
/// media properties of the file represented by the current
|
/// media properties of the file represented by the current
|
||||||
/// instance.
|
/// instance.
|
||||||
/// </returns>
|
/// </returns>
|
||||||
protected override Properties ReadProperties (long start,
|
protected override Properties ReadProperties (long start,
|
||||||
long end,
|
long end,
|
||||||
ReadStyle propertiesStyle)
|
ReadStyle propertiesStyle)
|
||||||
{
|
{
|
||||||
return new Properties ();
|
return new Properties ();
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class AdditionalFileTypes
|
public static class AdditionalFileTypes
|
||||||
{
|
{
|
||||||
private static bool inited = false;
|
private static bool inited = false;
|
||||||
private static CUETools.Processor.CUEConfig _config;
|
private static CUETools.Processor.CUEConfig _config;
|
||||||
|
|
||||||
@@ -329,27 +329,27 @@ namespace TagLib.UserDefined {
|
|||||||
|
|
||||||
private static TagLib.File UserDefinedResolver(TagLib.File.IFileAbstraction abstraction, string mimetype, TagLib.ReadStyle style)
|
private static TagLib.File UserDefinedResolver(TagLib.File.IFileAbstraction abstraction, string mimetype, TagLib.ReadStyle style)
|
||||||
{
|
{
|
||||||
if (mimetype == "taglib/flac" || mimetype == "taglib/wv" || mimetype == "taglib/ape" || mimetype == "taglib/wav" || mimetype == "taglib/ogg")
|
if (mimetype == "taglib/flac" || mimetype == "taglib/wv" || mimetype == "taglib/ape" || mimetype == "taglib/wav" || mimetype == "taglib/ogg" || mimetype == "taglib/m4a")
|
||||||
return null;
|
return null;
|
||||||
if (mimetype == "taglib/tta")
|
if (mimetype == "taglib/tta")
|
||||||
return new File(abstraction, style, true, false);
|
return new File(abstraction, style, true, false);
|
||||||
if (mimetype == "taglib/" + _config.udc1Extension)
|
if (mimetype == "taglib/" + _config.udc1Extension)
|
||||||
return new File(abstraction, style, _config.udc1APEv2, _config.udc1ID3v2);
|
return new File(abstraction, style, _config.udc1APEv2, _config.udc1ID3v2);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
static AdditionalFileTypes ()
|
static AdditionalFileTypes ()
|
||||||
{
|
{
|
||||||
Init();
|
Init();
|
||||||
}
|
}
|
||||||
|
|
||||||
internal static void Init()
|
internal static void Init()
|
||||||
{
|
{
|
||||||
if (inited)
|
if (inited)
|
||||||
return;
|
return;
|
||||||
TagLib.File.AddFileTypeResolver(new TagLib.File.FileTypeResolver(UserDefinedResolver));
|
TagLib.File.AddFileTypeResolver(new TagLib.File.FileTypeResolver(UserDefinedResolver));
|
||||||
//FileTypes.Register(typeof(TagLib.NonContainer.File));
|
//FileTypes.Register(typeof(TagLib.NonContainer.File));
|
||||||
inited = true;
|
inited = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,6 +9,7 @@
|
|||||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||||
<RootNamespace>JDP</RootNamespace>
|
<RootNamespace>JDP</RootNamespace>
|
||||||
<AssemblyName>CUETools</AssemblyName>
|
<AssemblyName>CUETools</AssemblyName>
|
||||||
|
<ApplicationIcon>Resources\cue.ico</ApplicationIcon>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
<DebugSymbols>true</DebugSymbols>
|
<DebugSymbols>true</DebugSymbols>
|
||||||
@@ -203,6 +204,10 @@
|
|||||||
<Compile Include="Settings.cs" />
|
<Compile Include="Settings.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\CUETools.CDImage\CUETools.CDImage.csproj">
|
||||||
|
<Project>{1DD41038-D885-46C5-8DDE-E0B82F066584}</Project>
|
||||||
|
<Name>CUETools.CDImage</Name>
|
||||||
|
</ProjectReference>
|
||||||
<ProjectReference Include="..\CUETools.Processor\CUETools.Processor.csproj">
|
<ProjectReference Include="..\CUETools.Processor\CUETools.Processor.csproj">
|
||||||
<Project>{4911BD82-49EF-4858-8B51-5394F86739A4}</Project>
|
<Project>{4911BD82-49EF-4858-8B51-5394F86739A4}</Project>
|
||||||
<Name>CUETools.Processor</Name>
|
<Name>CUETools.Processor</Name>
|
||||||
@@ -222,6 +227,10 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="Resources\musicbrainz.ico" />
|
<None Include="Resources\musicbrainz.ico" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Content Include="Resources\cue.ico" />
|
||||||
|
<Content Include="Resources\eac.ico" />
|
||||||
|
</ItemGroup>
|
||||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||||
Other similar extension points exist, see Microsoft.Common.targets.
|
Other similar extension points exist, see Microsoft.Common.targets.
|
||||||
|
|||||||
BIN
CUETools/Resources/cue.ico
Normal file
BIN
CUETools/Resources/cue.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.4 KiB |
BIN
CUETools/Resources/eac.ico
Normal file
BIN
CUETools/Resources/eac.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.4 KiB |
381
CUETools/frmCUETools.Designer.cs
generated
381
CUETools/frmCUETools.Designer.cs
generated
@@ -49,6 +49,7 @@ namespace JDP {
|
|||||||
this.rbAppendFilename = new System.Windows.Forms.RadioButton();
|
this.rbAppendFilename = new System.Windows.Forms.RadioButton();
|
||||||
this.txtAppendFilename = new System.Windows.Forms.TextBox();
|
this.txtAppendFilename = new System.Windows.Forms.TextBox();
|
||||||
this.grpAudioOutput = new System.Windows.Forms.GroupBox();
|
this.grpAudioOutput = new System.Windows.Forms.GroupBox();
|
||||||
|
this.btnCodec = new System.Windows.Forms.Button();
|
||||||
this.rbUDC1 = new System.Windows.Forms.RadioButton();
|
this.rbUDC1 = new System.Windows.Forms.RadioButton();
|
||||||
this.rbTTA = new System.Windows.Forms.RadioButton();
|
this.rbTTA = new System.Windows.Forms.RadioButton();
|
||||||
this.chkLossyWAV = new System.Windows.Forms.CheckBox();
|
this.chkLossyWAV = new System.Windows.Forms.CheckBox();
|
||||||
@@ -61,6 +62,7 @@ namespace JDP {
|
|||||||
this.btnFilenameCorrector = new System.Windows.Forms.Button();
|
this.btnFilenameCorrector = new System.Windows.Forms.Button();
|
||||||
this.btnSettings = new System.Windows.Forms.Button();
|
this.btnSettings = new System.Windows.Forms.Button();
|
||||||
this.grpAccurateRip = new System.Windows.Forms.GroupBox();
|
this.grpAccurateRip = new System.Windows.Forms.GroupBox();
|
||||||
|
this.rbArPlusCRC = new System.Windows.Forms.RadioButton();
|
||||||
this.rbArAndEncode = new System.Windows.Forms.RadioButton();
|
this.rbArAndEncode = new System.Windows.Forms.RadioButton();
|
||||||
this.label1 = new System.Windows.Forms.Label();
|
this.label1 = new System.Windows.Forms.Label();
|
||||||
this.txtDataTrackLength = new System.Windows.Forms.MaskedTextBox();
|
this.txtDataTrackLength = new System.Windows.Forms.MaskedTextBox();
|
||||||
@@ -80,9 +82,12 @@ namespace JDP {
|
|||||||
this.rbFreedbAlways = new System.Windows.Forms.RadioButton();
|
this.rbFreedbAlways = new System.Windows.Forms.RadioButton();
|
||||||
this.rbFreedbIf = new System.Windows.Forms.RadioButton();
|
this.rbFreedbIf = new System.Windows.Forms.RadioButton();
|
||||||
this.rbFreedbNever = new System.Windows.Forms.RadioButton();
|
this.rbFreedbNever = new System.Windows.Forms.RadioButton();
|
||||||
this.btnCodec = new System.Windows.Forms.Button();
|
|
||||||
this.contextMenuStripUDC = new System.Windows.Forms.ContextMenuStrip(this.components);
|
this.contextMenuStripUDC = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||||
|
this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.tAKToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.tAKToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
|
||||||
|
this.toolStripMenuItem3 = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.mP3ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.mP3ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.oGGToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.oGGToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.grpCUEPaths.SuspendLayout();
|
this.grpCUEPaths.SuspendLayout();
|
||||||
@@ -97,78 +102,125 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// btnConvert
|
// btnConvert
|
||||||
//
|
//
|
||||||
|
this.btnConvert.AccessibleDescription = null;
|
||||||
|
this.btnConvert.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnConvert, "btnConvert");
|
resources.ApplyResources(this.btnConvert, "btnConvert");
|
||||||
|
this.btnConvert.BackgroundImage = null;
|
||||||
|
this.btnConvert.Font = null;
|
||||||
this.btnConvert.Name = "btnConvert";
|
this.btnConvert.Name = "btnConvert";
|
||||||
|
this.toolTip1.SetToolTip(this.btnConvert, resources.GetString("btnConvert.ToolTip"));
|
||||||
this.btnConvert.UseVisualStyleBackColor = true;
|
this.btnConvert.UseVisualStyleBackColor = true;
|
||||||
this.btnConvert.Click += new System.EventHandler(this.btnConvert_Click);
|
this.btnConvert.Click += new System.EventHandler(this.btnConvert_Click);
|
||||||
//
|
//
|
||||||
// grpCUEPaths
|
// grpCUEPaths
|
||||||
//
|
//
|
||||||
|
this.grpCUEPaths.AccessibleDescription = null;
|
||||||
|
this.grpCUEPaths.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.grpCUEPaths, "grpCUEPaths");
|
||||||
|
this.grpCUEPaths.BackgroundImage = null;
|
||||||
this.grpCUEPaths.Controls.Add(this.btnBrowseOutput);
|
this.grpCUEPaths.Controls.Add(this.btnBrowseOutput);
|
||||||
this.grpCUEPaths.Controls.Add(this.btnBrowseInput);
|
this.grpCUEPaths.Controls.Add(this.btnBrowseInput);
|
||||||
this.grpCUEPaths.Controls.Add(this.lblOutput);
|
this.grpCUEPaths.Controls.Add(this.lblOutput);
|
||||||
this.grpCUEPaths.Controls.Add(this.lblInput);
|
this.grpCUEPaths.Controls.Add(this.lblInput);
|
||||||
this.grpCUEPaths.Controls.Add(this.txtOutputPath);
|
this.grpCUEPaths.Controls.Add(this.txtOutputPath);
|
||||||
this.grpCUEPaths.Controls.Add(this.txtInputPath);
|
this.grpCUEPaths.Controls.Add(this.txtInputPath);
|
||||||
resources.ApplyResources(this.grpCUEPaths, "grpCUEPaths");
|
this.grpCUEPaths.Font = null;
|
||||||
this.grpCUEPaths.Name = "grpCUEPaths";
|
this.grpCUEPaths.Name = "grpCUEPaths";
|
||||||
this.grpCUEPaths.TabStop = false;
|
this.grpCUEPaths.TabStop = false;
|
||||||
|
this.toolTip1.SetToolTip(this.grpCUEPaths, resources.GetString("grpCUEPaths.ToolTip"));
|
||||||
//
|
//
|
||||||
// btnBrowseOutput
|
// btnBrowseOutput
|
||||||
//
|
//
|
||||||
|
this.btnBrowseOutput.AccessibleDescription = null;
|
||||||
|
this.btnBrowseOutput.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnBrowseOutput, "btnBrowseOutput");
|
resources.ApplyResources(this.btnBrowseOutput, "btnBrowseOutput");
|
||||||
|
this.btnBrowseOutput.BackgroundImage = null;
|
||||||
|
this.btnBrowseOutput.Font = null;
|
||||||
this.btnBrowseOutput.Name = "btnBrowseOutput";
|
this.btnBrowseOutput.Name = "btnBrowseOutput";
|
||||||
|
this.toolTip1.SetToolTip(this.btnBrowseOutput, resources.GetString("btnBrowseOutput.ToolTip"));
|
||||||
this.btnBrowseOutput.UseVisualStyleBackColor = true;
|
this.btnBrowseOutput.UseVisualStyleBackColor = true;
|
||||||
this.btnBrowseOutput.Click += new System.EventHandler(this.btnBrowseOutput_Click);
|
this.btnBrowseOutput.Click += new System.EventHandler(this.btnBrowseOutput_Click);
|
||||||
//
|
//
|
||||||
// btnBrowseInput
|
// btnBrowseInput
|
||||||
//
|
//
|
||||||
|
this.btnBrowseInput.AccessibleDescription = null;
|
||||||
|
this.btnBrowseInput.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnBrowseInput, "btnBrowseInput");
|
resources.ApplyResources(this.btnBrowseInput, "btnBrowseInput");
|
||||||
|
this.btnBrowseInput.BackgroundImage = null;
|
||||||
|
this.btnBrowseInput.Font = null;
|
||||||
this.btnBrowseInput.Name = "btnBrowseInput";
|
this.btnBrowseInput.Name = "btnBrowseInput";
|
||||||
|
this.toolTip1.SetToolTip(this.btnBrowseInput, resources.GetString("btnBrowseInput.ToolTip"));
|
||||||
this.btnBrowseInput.UseVisualStyleBackColor = true;
|
this.btnBrowseInput.UseVisualStyleBackColor = true;
|
||||||
this.btnBrowseInput.Click += new System.EventHandler(this.btnBrowseInput_Click);
|
this.btnBrowseInput.Click += new System.EventHandler(this.btnBrowseInput_Click);
|
||||||
//
|
//
|
||||||
// lblOutput
|
// lblOutput
|
||||||
//
|
//
|
||||||
|
this.lblOutput.AccessibleDescription = null;
|
||||||
|
this.lblOutput.AccessibleName = null;
|
||||||
resources.ApplyResources(this.lblOutput, "lblOutput");
|
resources.ApplyResources(this.lblOutput, "lblOutput");
|
||||||
|
this.lblOutput.Font = null;
|
||||||
this.lblOutput.Name = "lblOutput";
|
this.lblOutput.Name = "lblOutput";
|
||||||
|
this.toolTip1.SetToolTip(this.lblOutput, resources.GetString("lblOutput.ToolTip"));
|
||||||
//
|
//
|
||||||
// lblInput
|
// lblInput
|
||||||
//
|
//
|
||||||
|
this.lblInput.AccessibleDescription = null;
|
||||||
|
this.lblInput.AccessibleName = null;
|
||||||
resources.ApplyResources(this.lblInput, "lblInput");
|
resources.ApplyResources(this.lblInput, "lblInput");
|
||||||
|
this.lblInput.Font = null;
|
||||||
this.lblInput.Name = "lblInput";
|
this.lblInput.Name = "lblInput";
|
||||||
|
this.toolTip1.SetToolTip(this.lblInput, resources.GetString("lblInput.ToolTip"));
|
||||||
//
|
//
|
||||||
// txtOutputPath
|
// txtOutputPath
|
||||||
//
|
//
|
||||||
|
this.txtOutputPath.AccessibleDescription = null;
|
||||||
|
this.txtOutputPath.AccessibleName = null;
|
||||||
this.txtOutputPath.AllowDrop = true;
|
this.txtOutputPath.AllowDrop = true;
|
||||||
resources.ApplyResources(this.txtOutputPath, "txtOutputPath");
|
resources.ApplyResources(this.txtOutputPath, "txtOutputPath");
|
||||||
|
this.txtOutputPath.BackgroundImage = null;
|
||||||
|
this.txtOutputPath.Font = null;
|
||||||
this.txtOutputPath.Name = "txtOutputPath";
|
this.txtOutputPath.Name = "txtOutputPath";
|
||||||
|
this.toolTip1.SetToolTip(this.txtOutputPath, resources.GetString("txtOutputPath.ToolTip"));
|
||||||
this.txtOutputPath.DragDrop += new System.Windows.Forms.DragEventHandler(this.PathTextBox_DragDrop);
|
this.txtOutputPath.DragDrop += new System.Windows.Forms.DragEventHandler(this.PathTextBox_DragDrop);
|
||||||
this.txtOutputPath.DragEnter += new System.Windows.Forms.DragEventHandler(this.PathTextBox_DragEnter);
|
this.txtOutputPath.DragEnter += new System.Windows.Forms.DragEventHandler(this.PathTextBox_DragEnter);
|
||||||
//
|
//
|
||||||
// txtInputPath
|
// txtInputPath
|
||||||
//
|
//
|
||||||
|
this.txtInputPath.AccessibleDescription = null;
|
||||||
|
this.txtInputPath.AccessibleName = null;
|
||||||
this.txtInputPath.AllowDrop = true;
|
this.txtInputPath.AllowDrop = true;
|
||||||
resources.ApplyResources(this.txtInputPath, "txtInputPath");
|
resources.ApplyResources(this.txtInputPath, "txtInputPath");
|
||||||
|
this.txtInputPath.BackgroundImage = null;
|
||||||
|
this.txtInputPath.Font = null;
|
||||||
this.txtInputPath.Name = "txtInputPath";
|
this.txtInputPath.Name = "txtInputPath";
|
||||||
|
this.toolTip1.SetToolTip(this.txtInputPath, resources.GetString("txtInputPath.ToolTip"));
|
||||||
this.txtInputPath.TextChanged += new System.EventHandler(this.txtInputPath_TextChanged);
|
this.txtInputPath.TextChanged += new System.EventHandler(this.txtInputPath_TextChanged);
|
||||||
this.txtInputPath.DragDrop += new System.Windows.Forms.DragEventHandler(this.PathTextBox_DragDrop);
|
this.txtInputPath.DragDrop += new System.Windows.Forms.DragEventHandler(this.PathTextBox_DragDrop);
|
||||||
this.txtInputPath.DragEnter += new System.Windows.Forms.DragEventHandler(this.PathTextBox_DragEnter);
|
this.txtInputPath.DragEnter += new System.Windows.Forms.DragEventHandler(this.PathTextBox_DragEnter);
|
||||||
//
|
//
|
||||||
// grpOutputStyle
|
// grpOutputStyle
|
||||||
//
|
//
|
||||||
|
this.grpOutputStyle.AccessibleDescription = null;
|
||||||
|
this.grpOutputStyle.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.grpOutputStyle, "grpOutputStyle");
|
||||||
|
this.grpOutputStyle.BackgroundImage = null;
|
||||||
this.grpOutputStyle.Controls.Add(this.rbEmbedCUE);
|
this.grpOutputStyle.Controls.Add(this.rbEmbedCUE);
|
||||||
this.grpOutputStyle.Controls.Add(this.rbGapsLeftOut);
|
this.grpOutputStyle.Controls.Add(this.rbGapsLeftOut);
|
||||||
this.grpOutputStyle.Controls.Add(this.rbGapsPrepended);
|
this.grpOutputStyle.Controls.Add(this.rbGapsPrepended);
|
||||||
this.grpOutputStyle.Controls.Add(this.rbGapsAppended);
|
this.grpOutputStyle.Controls.Add(this.rbGapsAppended);
|
||||||
this.grpOutputStyle.Controls.Add(this.rbSingleFile);
|
this.grpOutputStyle.Controls.Add(this.rbSingleFile);
|
||||||
resources.ApplyResources(this.grpOutputStyle, "grpOutputStyle");
|
this.grpOutputStyle.Font = null;
|
||||||
this.grpOutputStyle.Name = "grpOutputStyle";
|
this.grpOutputStyle.Name = "grpOutputStyle";
|
||||||
this.grpOutputStyle.TabStop = false;
|
this.grpOutputStyle.TabStop = false;
|
||||||
|
this.toolTip1.SetToolTip(this.grpOutputStyle, resources.GetString("grpOutputStyle.ToolTip"));
|
||||||
//
|
//
|
||||||
// rbEmbedCUE
|
// rbEmbedCUE
|
||||||
//
|
//
|
||||||
|
this.rbEmbedCUE.AccessibleDescription = null;
|
||||||
|
this.rbEmbedCUE.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbEmbedCUE, "rbEmbedCUE");
|
resources.ApplyResources(this.rbEmbedCUE, "rbEmbedCUE");
|
||||||
|
this.rbEmbedCUE.BackgroundImage = null;
|
||||||
|
this.rbEmbedCUE.Font = null;
|
||||||
this.rbEmbedCUE.Name = "rbEmbedCUE";
|
this.rbEmbedCUE.Name = "rbEmbedCUE";
|
||||||
this.rbEmbedCUE.TabStop = true;
|
this.rbEmbedCUE.TabStop = true;
|
||||||
this.toolTip1.SetToolTip(this.rbEmbedCUE, resources.GetString("rbEmbedCUE.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbEmbedCUE, resources.GetString("rbEmbedCUE.ToolTip"));
|
||||||
@@ -177,29 +229,45 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// rbGapsLeftOut
|
// rbGapsLeftOut
|
||||||
//
|
//
|
||||||
|
this.rbGapsLeftOut.AccessibleDescription = null;
|
||||||
|
this.rbGapsLeftOut.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbGapsLeftOut, "rbGapsLeftOut");
|
resources.ApplyResources(this.rbGapsLeftOut, "rbGapsLeftOut");
|
||||||
|
this.rbGapsLeftOut.BackgroundImage = null;
|
||||||
|
this.rbGapsLeftOut.Font = null;
|
||||||
this.rbGapsLeftOut.Name = "rbGapsLeftOut";
|
this.rbGapsLeftOut.Name = "rbGapsLeftOut";
|
||||||
this.toolTip1.SetToolTip(this.rbGapsLeftOut, resources.GetString("rbGapsLeftOut.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbGapsLeftOut, resources.GetString("rbGapsLeftOut.ToolTip"));
|
||||||
this.rbGapsLeftOut.UseVisualStyleBackColor = true;
|
this.rbGapsLeftOut.UseVisualStyleBackColor = true;
|
||||||
//
|
//
|
||||||
// rbGapsPrepended
|
// rbGapsPrepended
|
||||||
//
|
//
|
||||||
|
this.rbGapsPrepended.AccessibleDescription = null;
|
||||||
|
this.rbGapsPrepended.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbGapsPrepended, "rbGapsPrepended");
|
resources.ApplyResources(this.rbGapsPrepended, "rbGapsPrepended");
|
||||||
|
this.rbGapsPrepended.BackgroundImage = null;
|
||||||
|
this.rbGapsPrepended.Font = null;
|
||||||
this.rbGapsPrepended.Name = "rbGapsPrepended";
|
this.rbGapsPrepended.Name = "rbGapsPrepended";
|
||||||
this.toolTip1.SetToolTip(this.rbGapsPrepended, resources.GetString("rbGapsPrepended.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbGapsPrepended, resources.GetString("rbGapsPrepended.ToolTip"));
|
||||||
this.rbGapsPrepended.UseVisualStyleBackColor = true;
|
this.rbGapsPrepended.UseVisualStyleBackColor = true;
|
||||||
//
|
//
|
||||||
// rbGapsAppended
|
// rbGapsAppended
|
||||||
//
|
//
|
||||||
|
this.rbGapsAppended.AccessibleDescription = null;
|
||||||
|
this.rbGapsAppended.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbGapsAppended, "rbGapsAppended");
|
resources.ApplyResources(this.rbGapsAppended, "rbGapsAppended");
|
||||||
|
this.rbGapsAppended.BackgroundImage = null;
|
||||||
|
this.rbGapsAppended.Font = null;
|
||||||
this.rbGapsAppended.Name = "rbGapsAppended";
|
this.rbGapsAppended.Name = "rbGapsAppended";
|
||||||
this.toolTip1.SetToolTip(this.rbGapsAppended, resources.GetString("rbGapsAppended.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbGapsAppended, resources.GetString("rbGapsAppended.ToolTip"));
|
||||||
this.rbGapsAppended.UseVisualStyleBackColor = true;
|
this.rbGapsAppended.UseVisualStyleBackColor = true;
|
||||||
//
|
//
|
||||||
// rbSingleFile
|
// rbSingleFile
|
||||||
//
|
//
|
||||||
|
this.rbSingleFile.AccessibleDescription = null;
|
||||||
|
this.rbSingleFile.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbSingleFile, "rbSingleFile");
|
resources.ApplyResources(this.rbSingleFile, "rbSingleFile");
|
||||||
|
this.rbSingleFile.BackgroundImage = null;
|
||||||
this.rbSingleFile.Checked = true;
|
this.rbSingleFile.Checked = true;
|
||||||
|
this.rbSingleFile.Font = null;
|
||||||
this.rbSingleFile.Name = "rbSingleFile";
|
this.rbSingleFile.Name = "rbSingleFile";
|
||||||
this.rbSingleFile.TabStop = true;
|
this.rbSingleFile.TabStop = true;
|
||||||
this.toolTip1.SetToolTip(this.rbSingleFile, resources.GetString("rbSingleFile.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbSingleFile, resources.GetString("rbSingleFile.ToolTip"));
|
||||||
@@ -207,13 +275,22 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// btnAbout
|
// btnAbout
|
||||||
//
|
//
|
||||||
|
this.btnAbout.AccessibleDescription = null;
|
||||||
|
this.btnAbout.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnAbout, "btnAbout");
|
resources.ApplyResources(this.btnAbout, "btnAbout");
|
||||||
|
this.btnAbout.BackgroundImage = null;
|
||||||
|
this.btnAbout.Font = null;
|
||||||
this.btnAbout.Name = "btnAbout";
|
this.btnAbout.Name = "btnAbout";
|
||||||
|
this.toolTip1.SetToolTip(this.btnAbout, resources.GetString("btnAbout.ToolTip"));
|
||||||
this.btnAbout.UseVisualStyleBackColor = true;
|
this.btnAbout.UseVisualStyleBackColor = true;
|
||||||
this.btnAbout.Click += new System.EventHandler(this.btnAbout_Click);
|
this.btnAbout.Click += new System.EventHandler(this.btnAbout_Click);
|
||||||
//
|
//
|
||||||
// grpOutputPathGeneration
|
// grpOutputPathGeneration
|
||||||
//
|
//
|
||||||
|
this.grpOutputPathGeneration.AccessibleDescription = null;
|
||||||
|
this.grpOutputPathGeneration.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.grpOutputPathGeneration, "grpOutputPathGeneration");
|
||||||
|
this.grpOutputPathGeneration.BackgroundImage = null;
|
||||||
this.grpOutputPathGeneration.Controls.Add(this.txtCustomFormat);
|
this.grpOutputPathGeneration.Controls.Add(this.txtCustomFormat);
|
||||||
this.grpOutputPathGeneration.Controls.Add(this.rbCustomFormat);
|
this.grpOutputPathGeneration.Controls.Add(this.rbCustomFormat);
|
||||||
this.grpOutputPathGeneration.Controls.Add(this.txtCreateSubdirectory);
|
this.grpOutputPathGeneration.Controls.Add(this.txtCreateSubdirectory);
|
||||||
@@ -221,60 +298,100 @@ namespace JDP {
|
|||||||
this.grpOutputPathGeneration.Controls.Add(this.rbCreateSubdirectory);
|
this.grpOutputPathGeneration.Controls.Add(this.rbCreateSubdirectory);
|
||||||
this.grpOutputPathGeneration.Controls.Add(this.rbAppendFilename);
|
this.grpOutputPathGeneration.Controls.Add(this.rbAppendFilename);
|
||||||
this.grpOutputPathGeneration.Controls.Add(this.txtAppendFilename);
|
this.grpOutputPathGeneration.Controls.Add(this.txtAppendFilename);
|
||||||
resources.ApplyResources(this.grpOutputPathGeneration, "grpOutputPathGeneration");
|
this.grpOutputPathGeneration.Font = null;
|
||||||
this.grpOutputPathGeneration.Name = "grpOutputPathGeneration";
|
this.grpOutputPathGeneration.Name = "grpOutputPathGeneration";
|
||||||
this.grpOutputPathGeneration.TabStop = false;
|
this.grpOutputPathGeneration.TabStop = false;
|
||||||
|
this.toolTip1.SetToolTip(this.grpOutputPathGeneration, resources.GetString("grpOutputPathGeneration.ToolTip"));
|
||||||
//
|
//
|
||||||
// txtCustomFormat
|
// txtCustomFormat
|
||||||
//
|
//
|
||||||
|
this.txtCustomFormat.AccessibleDescription = null;
|
||||||
|
this.txtCustomFormat.AccessibleName = null;
|
||||||
resources.ApplyResources(this.txtCustomFormat, "txtCustomFormat");
|
resources.ApplyResources(this.txtCustomFormat, "txtCustomFormat");
|
||||||
|
this.txtCustomFormat.BackgroundImage = null;
|
||||||
|
this.txtCustomFormat.Font = null;
|
||||||
this.txtCustomFormat.Name = "txtCustomFormat";
|
this.txtCustomFormat.Name = "txtCustomFormat";
|
||||||
|
this.toolTip1.SetToolTip(this.txtCustomFormat, resources.GetString("txtCustomFormat.ToolTip"));
|
||||||
this.txtCustomFormat.TextChanged += new System.EventHandler(this.txtCustomFormat_TextChanged);
|
this.txtCustomFormat.TextChanged += new System.EventHandler(this.txtCustomFormat_TextChanged);
|
||||||
//
|
//
|
||||||
// rbCustomFormat
|
// rbCustomFormat
|
||||||
//
|
//
|
||||||
|
this.rbCustomFormat.AccessibleDescription = null;
|
||||||
|
this.rbCustomFormat.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbCustomFormat, "rbCustomFormat");
|
resources.ApplyResources(this.rbCustomFormat, "rbCustomFormat");
|
||||||
|
this.rbCustomFormat.BackgroundImage = null;
|
||||||
|
this.rbCustomFormat.Font = null;
|
||||||
this.rbCustomFormat.Name = "rbCustomFormat";
|
this.rbCustomFormat.Name = "rbCustomFormat";
|
||||||
this.rbCustomFormat.TabStop = true;
|
this.rbCustomFormat.TabStop = true;
|
||||||
|
this.toolTip1.SetToolTip(this.rbCustomFormat, resources.GetString("rbCustomFormat.ToolTip"));
|
||||||
this.rbCustomFormat.UseVisualStyleBackColor = true;
|
this.rbCustomFormat.UseVisualStyleBackColor = true;
|
||||||
this.rbCustomFormat.CheckedChanged += new System.EventHandler(this.rbCustomFormat_CheckedChanged);
|
this.rbCustomFormat.CheckedChanged += new System.EventHandler(this.rbCustomFormat_CheckedChanged);
|
||||||
//
|
//
|
||||||
// txtCreateSubdirectory
|
// txtCreateSubdirectory
|
||||||
//
|
//
|
||||||
|
this.txtCreateSubdirectory.AccessibleDescription = null;
|
||||||
|
this.txtCreateSubdirectory.AccessibleName = null;
|
||||||
resources.ApplyResources(this.txtCreateSubdirectory, "txtCreateSubdirectory");
|
resources.ApplyResources(this.txtCreateSubdirectory, "txtCreateSubdirectory");
|
||||||
|
this.txtCreateSubdirectory.BackgroundImage = null;
|
||||||
|
this.txtCreateSubdirectory.Font = null;
|
||||||
this.txtCreateSubdirectory.Name = "txtCreateSubdirectory";
|
this.txtCreateSubdirectory.Name = "txtCreateSubdirectory";
|
||||||
|
this.toolTip1.SetToolTip(this.txtCreateSubdirectory, resources.GetString("txtCreateSubdirectory.ToolTip"));
|
||||||
this.txtCreateSubdirectory.TextChanged += new System.EventHandler(this.txtCreateSubdirectory_TextChanged);
|
this.txtCreateSubdirectory.TextChanged += new System.EventHandler(this.txtCreateSubdirectory_TextChanged);
|
||||||
//
|
//
|
||||||
// rbDontGenerate
|
// rbDontGenerate
|
||||||
//
|
//
|
||||||
|
this.rbDontGenerate.AccessibleDescription = null;
|
||||||
|
this.rbDontGenerate.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbDontGenerate, "rbDontGenerate");
|
resources.ApplyResources(this.rbDontGenerate, "rbDontGenerate");
|
||||||
|
this.rbDontGenerate.BackgroundImage = null;
|
||||||
|
this.rbDontGenerate.Font = null;
|
||||||
this.rbDontGenerate.Name = "rbDontGenerate";
|
this.rbDontGenerate.Name = "rbDontGenerate";
|
||||||
|
this.toolTip1.SetToolTip(this.rbDontGenerate, resources.GetString("rbDontGenerate.ToolTip"));
|
||||||
this.rbDontGenerate.UseVisualStyleBackColor = true;
|
this.rbDontGenerate.UseVisualStyleBackColor = true;
|
||||||
//
|
//
|
||||||
// rbCreateSubdirectory
|
// rbCreateSubdirectory
|
||||||
//
|
//
|
||||||
|
this.rbCreateSubdirectory.AccessibleDescription = null;
|
||||||
|
this.rbCreateSubdirectory.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbCreateSubdirectory, "rbCreateSubdirectory");
|
resources.ApplyResources(this.rbCreateSubdirectory, "rbCreateSubdirectory");
|
||||||
|
this.rbCreateSubdirectory.BackgroundImage = null;
|
||||||
this.rbCreateSubdirectory.Checked = true;
|
this.rbCreateSubdirectory.Checked = true;
|
||||||
|
this.rbCreateSubdirectory.Font = null;
|
||||||
this.rbCreateSubdirectory.Name = "rbCreateSubdirectory";
|
this.rbCreateSubdirectory.Name = "rbCreateSubdirectory";
|
||||||
this.rbCreateSubdirectory.TabStop = true;
|
this.rbCreateSubdirectory.TabStop = true;
|
||||||
|
this.toolTip1.SetToolTip(this.rbCreateSubdirectory, resources.GetString("rbCreateSubdirectory.ToolTip"));
|
||||||
this.rbCreateSubdirectory.UseVisualStyleBackColor = true;
|
this.rbCreateSubdirectory.UseVisualStyleBackColor = true;
|
||||||
this.rbCreateSubdirectory.CheckedChanged += new System.EventHandler(this.rbCreateSubdirectory_CheckedChanged);
|
this.rbCreateSubdirectory.CheckedChanged += new System.EventHandler(this.rbCreateSubdirectory_CheckedChanged);
|
||||||
//
|
//
|
||||||
// rbAppendFilename
|
// rbAppendFilename
|
||||||
//
|
//
|
||||||
|
this.rbAppendFilename.AccessibleDescription = null;
|
||||||
|
this.rbAppendFilename.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbAppendFilename, "rbAppendFilename");
|
resources.ApplyResources(this.rbAppendFilename, "rbAppendFilename");
|
||||||
|
this.rbAppendFilename.BackgroundImage = null;
|
||||||
|
this.rbAppendFilename.Font = null;
|
||||||
this.rbAppendFilename.Name = "rbAppendFilename";
|
this.rbAppendFilename.Name = "rbAppendFilename";
|
||||||
|
this.toolTip1.SetToolTip(this.rbAppendFilename, resources.GetString("rbAppendFilename.ToolTip"));
|
||||||
this.rbAppendFilename.UseVisualStyleBackColor = true;
|
this.rbAppendFilename.UseVisualStyleBackColor = true;
|
||||||
this.rbAppendFilename.CheckedChanged += new System.EventHandler(this.rbAppendFilename_CheckedChanged);
|
this.rbAppendFilename.CheckedChanged += new System.EventHandler(this.rbAppendFilename_CheckedChanged);
|
||||||
//
|
//
|
||||||
// txtAppendFilename
|
// txtAppendFilename
|
||||||
//
|
//
|
||||||
|
this.txtAppendFilename.AccessibleDescription = null;
|
||||||
|
this.txtAppendFilename.AccessibleName = null;
|
||||||
resources.ApplyResources(this.txtAppendFilename, "txtAppendFilename");
|
resources.ApplyResources(this.txtAppendFilename, "txtAppendFilename");
|
||||||
|
this.txtAppendFilename.BackgroundImage = null;
|
||||||
|
this.txtAppendFilename.Font = null;
|
||||||
this.txtAppendFilename.Name = "txtAppendFilename";
|
this.txtAppendFilename.Name = "txtAppendFilename";
|
||||||
|
this.toolTip1.SetToolTip(this.txtAppendFilename, resources.GetString("txtAppendFilename.ToolTip"));
|
||||||
this.txtAppendFilename.TextChanged += new System.EventHandler(this.txtAppendFilename_TextChanged);
|
this.txtAppendFilename.TextChanged += new System.EventHandler(this.txtAppendFilename_TextChanged);
|
||||||
//
|
//
|
||||||
// grpAudioOutput
|
// grpAudioOutput
|
||||||
//
|
//
|
||||||
|
this.grpAudioOutput.AccessibleDescription = null;
|
||||||
|
this.grpAudioOutput.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.grpAudioOutput, "grpAudioOutput");
|
||||||
|
this.grpAudioOutput.BackgroundImage = null;
|
||||||
this.grpAudioOutput.Controls.Add(this.btnCodec);
|
this.grpAudioOutput.Controls.Add(this.btnCodec);
|
||||||
this.grpAudioOutput.Controls.Add(this.rbUDC1);
|
this.grpAudioOutput.Controls.Add(this.rbUDC1);
|
||||||
this.grpAudioOutput.Controls.Add(this.rbTTA);
|
this.grpAudioOutput.Controls.Add(this.rbTTA);
|
||||||
@@ -284,29 +401,56 @@ namespace JDP {
|
|||||||
this.grpAudioOutput.Controls.Add(this.rbWavPack);
|
this.grpAudioOutput.Controls.Add(this.rbWavPack);
|
||||||
this.grpAudioOutput.Controls.Add(this.rbWAV);
|
this.grpAudioOutput.Controls.Add(this.rbWAV);
|
||||||
this.grpAudioOutput.Controls.Add(this.rbFLAC);
|
this.grpAudioOutput.Controls.Add(this.rbFLAC);
|
||||||
resources.ApplyResources(this.grpAudioOutput, "grpAudioOutput");
|
this.grpAudioOutput.Font = null;
|
||||||
this.grpAudioOutput.Name = "grpAudioOutput";
|
this.grpAudioOutput.Name = "grpAudioOutput";
|
||||||
this.grpAudioOutput.TabStop = false;
|
this.grpAudioOutput.TabStop = false;
|
||||||
|
this.toolTip1.SetToolTip(this.grpAudioOutput, resources.GetString("grpAudioOutput.ToolTip"));
|
||||||
|
//
|
||||||
|
// btnCodec
|
||||||
|
//
|
||||||
|
this.btnCodec.AccessibleDescription = null;
|
||||||
|
this.btnCodec.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.btnCodec, "btnCodec");
|
||||||
|
this.btnCodec.BackgroundImage = null;
|
||||||
|
this.btnCodec.Font = null;
|
||||||
|
this.btnCodec.Name = "btnCodec";
|
||||||
|
this.toolTip1.SetToolTip(this.btnCodec, resources.GetString("btnCodec.ToolTip"));
|
||||||
|
this.btnCodec.UseVisualStyleBackColor = true;
|
||||||
|
this.btnCodec.Click += new System.EventHandler(this.btnCodec_Click);
|
||||||
//
|
//
|
||||||
// rbUDC1
|
// rbUDC1
|
||||||
//
|
//
|
||||||
|
this.rbUDC1.AccessibleDescription = null;
|
||||||
|
this.rbUDC1.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbUDC1, "rbUDC1");
|
resources.ApplyResources(this.rbUDC1, "rbUDC1");
|
||||||
|
this.rbUDC1.BackgroundImage = null;
|
||||||
|
this.rbUDC1.Font = null;
|
||||||
this.rbUDC1.Name = "rbUDC1";
|
this.rbUDC1.Name = "rbUDC1";
|
||||||
this.rbUDC1.TabStop = true;
|
this.rbUDC1.TabStop = true;
|
||||||
|
this.toolTip1.SetToolTip(this.rbUDC1, resources.GetString("rbUDC1.ToolTip"));
|
||||||
this.rbUDC1.UseVisualStyleBackColor = true;
|
this.rbUDC1.UseVisualStyleBackColor = true;
|
||||||
this.rbUDC1.CheckedChanged += new System.EventHandler(this.rbUDC1_CheckedChanged);
|
this.rbUDC1.CheckedChanged += new System.EventHandler(this.rbUDC1_CheckedChanged);
|
||||||
//
|
//
|
||||||
// rbTTA
|
// rbTTA
|
||||||
//
|
//
|
||||||
|
this.rbTTA.AccessibleDescription = null;
|
||||||
|
this.rbTTA.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbTTA, "rbTTA");
|
resources.ApplyResources(this.rbTTA, "rbTTA");
|
||||||
|
this.rbTTA.BackgroundImage = null;
|
||||||
|
this.rbTTA.Font = null;
|
||||||
this.rbTTA.Name = "rbTTA";
|
this.rbTTA.Name = "rbTTA";
|
||||||
this.rbTTA.TabStop = true;
|
this.rbTTA.TabStop = true;
|
||||||
|
this.toolTip1.SetToolTip(this.rbTTA, resources.GetString("rbTTA.ToolTip"));
|
||||||
this.rbTTA.UseVisualStyleBackColor = true;
|
this.rbTTA.UseVisualStyleBackColor = true;
|
||||||
this.rbTTA.CheckedChanged += new System.EventHandler(this.rbTTA_CheckedChanged);
|
this.rbTTA.CheckedChanged += new System.EventHandler(this.rbTTA_CheckedChanged);
|
||||||
//
|
//
|
||||||
// chkLossyWAV
|
// chkLossyWAV
|
||||||
//
|
//
|
||||||
|
this.chkLossyWAV.AccessibleDescription = null;
|
||||||
|
this.chkLossyWAV.AccessibleName = null;
|
||||||
resources.ApplyResources(this.chkLossyWAV, "chkLossyWAV");
|
resources.ApplyResources(this.chkLossyWAV, "chkLossyWAV");
|
||||||
|
this.chkLossyWAV.BackgroundImage = null;
|
||||||
|
this.chkLossyWAV.Font = null;
|
||||||
this.chkLossyWAV.Name = "chkLossyWAV";
|
this.chkLossyWAV.Name = "chkLossyWAV";
|
||||||
this.toolTip1.SetToolTip(this.chkLossyWAV, resources.GetString("chkLossyWAV.ToolTip"));
|
this.toolTip1.SetToolTip(this.chkLossyWAV, resources.GetString("chkLossyWAV.ToolTip"));
|
||||||
this.chkLossyWAV.UseVisualStyleBackColor = true;
|
this.chkLossyWAV.UseVisualStyleBackColor = true;
|
||||||
@@ -314,15 +458,24 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// rbAPE
|
// rbAPE
|
||||||
//
|
//
|
||||||
|
this.rbAPE.AccessibleDescription = null;
|
||||||
|
this.rbAPE.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbAPE, "rbAPE");
|
resources.ApplyResources(this.rbAPE, "rbAPE");
|
||||||
|
this.rbAPE.BackgroundImage = null;
|
||||||
|
this.rbAPE.Font = null;
|
||||||
this.rbAPE.Name = "rbAPE";
|
this.rbAPE.Name = "rbAPE";
|
||||||
this.rbAPE.TabStop = true;
|
this.rbAPE.TabStop = true;
|
||||||
|
this.toolTip1.SetToolTip(this.rbAPE, resources.GetString("rbAPE.ToolTip"));
|
||||||
this.rbAPE.UseVisualStyleBackColor = true;
|
this.rbAPE.UseVisualStyleBackColor = true;
|
||||||
this.rbAPE.CheckedChanged += new System.EventHandler(this.rbAPE_CheckedChanged);
|
this.rbAPE.CheckedChanged += new System.EventHandler(this.rbAPE_CheckedChanged);
|
||||||
//
|
//
|
||||||
// rbNoAudio
|
// rbNoAudio
|
||||||
//
|
//
|
||||||
|
this.rbNoAudio.AccessibleDescription = null;
|
||||||
|
this.rbNoAudio.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbNoAudio, "rbNoAudio");
|
resources.ApplyResources(this.rbNoAudio, "rbNoAudio");
|
||||||
|
this.rbNoAudio.BackgroundImage = null;
|
||||||
|
this.rbNoAudio.Font = null;
|
||||||
this.rbNoAudio.Name = "rbNoAudio";
|
this.rbNoAudio.Name = "rbNoAudio";
|
||||||
this.toolTip1.SetToolTip(this.rbNoAudio, resources.GetString("rbNoAudio.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbNoAudio, resources.GetString("rbNoAudio.ToolTip"));
|
||||||
this.rbNoAudio.UseVisualStyleBackColor = true;
|
this.rbNoAudio.UseVisualStyleBackColor = true;
|
||||||
@@ -330,85 +483,150 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// rbWavPack
|
// rbWavPack
|
||||||
//
|
//
|
||||||
|
this.rbWavPack.AccessibleDescription = null;
|
||||||
|
this.rbWavPack.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbWavPack, "rbWavPack");
|
resources.ApplyResources(this.rbWavPack, "rbWavPack");
|
||||||
|
this.rbWavPack.BackgroundImage = null;
|
||||||
|
this.rbWavPack.Font = null;
|
||||||
this.rbWavPack.Name = "rbWavPack";
|
this.rbWavPack.Name = "rbWavPack";
|
||||||
|
this.toolTip1.SetToolTip(this.rbWavPack, resources.GetString("rbWavPack.ToolTip"));
|
||||||
this.rbWavPack.UseVisualStyleBackColor = true;
|
this.rbWavPack.UseVisualStyleBackColor = true;
|
||||||
this.rbWavPack.CheckedChanged += new System.EventHandler(this.rbWavPack_CheckedChanged);
|
this.rbWavPack.CheckedChanged += new System.EventHandler(this.rbWavPack_CheckedChanged);
|
||||||
//
|
//
|
||||||
// rbWAV
|
// rbWAV
|
||||||
//
|
//
|
||||||
|
this.rbWAV.AccessibleDescription = null;
|
||||||
|
this.rbWAV.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbWAV, "rbWAV");
|
resources.ApplyResources(this.rbWAV, "rbWAV");
|
||||||
|
this.rbWAV.BackgroundImage = null;
|
||||||
this.rbWAV.Checked = true;
|
this.rbWAV.Checked = true;
|
||||||
|
this.rbWAV.Font = null;
|
||||||
this.rbWAV.Name = "rbWAV";
|
this.rbWAV.Name = "rbWAV";
|
||||||
this.rbWAV.TabStop = true;
|
this.rbWAV.TabStop = true;
|
||||||
|
this.toolTip1.SetToolTip(this.rbWAV, resources.GetString("rbWAV.ToolTip"));
|
||||||
this.rbWAV.UseVisualStyleBackColor = true;
|
this.rbWAV.UseVisualStyleBackColor = true;
|
||||||
this.rbWAV.CheckedChanged += new System.EventHandler(this.rbWAV_CheckedChanged);
|
this.rbWAV.CheckedChanged += new System.EventHandler(this.rbWAV_CheckedChanged);
|
||||||
//
|
//
|
||||||
// rbFLAC
|
// rbFLAC
|
||||||
//
|
//
|
||||||
|
this.rbFLAC.AccessibleDescription = null;
|
||||||
|
this.rbFLAC.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbFLAC, "rbFLAC");
|
resources.ApplyResources(this.rbFLAC, "rbFLAC");
|
||||||
|
this.rbFLAC.BackgroundImage = null;
|
||||||
|
this.rbFLAC.Font = null;
|
||||||
this.rbFLAC.Name = "rbFLAC";
|
this.rbFLAC.Name = "rbFLAC";
|
||||||
|
this.toolTip1.SetToolTip(this.rbFLAC, resources.GetString("rbFLAC.ToolTip"));
|
||||||
this.rbFLAC.UseVisualStyleBackColor = true;
|
this.rbFLAC.UseVisualStyleBackColor = true;
|
||||||
this.rbFLAC.CheckedChanged += new System.EventHandler(this.rbFLAC_CheckedChanged);
|
this.rbFLAC.CheckedChanged += new System.EventHandler(this.rbFLAC_CheckedChanged);
|
||||||
//
|
//
|
||||||
// btnBatch
|
// btnBatch
|
||||||
//
|
//
|
||||||
|
this.btnBatch.AccessibleDescription = null;
|
||||||
|
this.btnBatch.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnBatch, "btnBatch");
|
resources.ApplyResources(this.btnBatch, "btnBatch");
|
||||||
|
this.btnBatch.BackgroundImage = null;
|
||||||
|
this.btnBatch.Font = null;
|
||||||
this.btnBatch.Name = "btnBatch";
|
this.btnBatch.Name = "btnBatch";
|
||||||
|
this.toolTip1.SetToolTip(this.btnBatch, resources.GetString("btnBatch.ToolTip"));
|
||||||
this.btnBatch.UseVisualStyleBackColor = true;
|
this.btnBatch.UseVisualStyleBackColor = true;
|
||||||
this.btnBatch.Click += new System.EventHandler(this.btnBatch_Click);
|
this.btnBatch.Click += new System.EventHandler(this.btnBatch_Click);
|
||||||
//
|
//
|
||||||
// btnFilenameCorrector
|
// btnFilenameCorrector
|
||||||
//
|
//
|
||||||
|
this.btnFilenameCorrector.AccessibleDescription = null;
|
||||||
|
this.btnFilenameCorrector.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnFilenameCorrector, "btnFilenameCorrector");
|
resources.ApplyResources(this.btnFilenameCorrector, "btnFilenameCorrector");
|
||||||
|
this.btnFilenameCorrector.BackgroundImage = null;
|
||||||
|
this.btnFilenameCorrector.Font = null;
|
||||||
this.btnFilenameCorrector.Name = "btnFilenameCorrector";
|
this.btnFilenameCorrector.Name = "btnFilenameCorrector";
|
||||||
|
this.toolTip1.SetToolTip(this.btnFilenameCorrector, resources.GetString("btnFilenameCorrector.ToolTip"));
|
||||||
this.btnFilenameCorrector.UseVisualStyleBackColor = true;
|
this.btnFilenameCorrector.UseVisualStyleBackColor = true;
|
||||||
this.btnFilenameCorrector.Click += new System.EventHandler(this.btnFilenameCorrector_Click);
|
this.btnFilenameCorrector.Click += new System.EventHandler(this.btnFilenameCorrector_Click);
|
||||||
//
|
//
|
||||||
// btnSettings
|
// btnSettings
|
||||||
//
|
//
|
||||||
|
this.btnSettings.AccessibleDescription = null;
|
||||||
|
this.btnSettings.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnSettings, "btnSettings");
|
resources.ApplyResources(this.btnSettings, "btnSettings");
|
||||||
|
this.btnSettings.BackgroundImage = null;
|
||||||
|
this.btnSettings.Font = null;
|
||||||
this.btnSettings.Name = "btnSettings";
|
this.btnSettings.Name = "btnSettings";
|
||||||
|
this.toolTip1.SetToolTip(this.btnSettings, resources.GetString("btnSettings.ToolTip"));
|
||||||
this.btnSettings.UseVisualStyleBackColor = true;
|
this.btnSettings.UseVisualStyleBackColor = true;
|
||||||
this.btnSettings.Click += new System.EventHandler(this.btnSettings_Click);
|
this.btnSettings.Click += new System.EventHandler(this.btnSettings_Click);
|
||||||
//
|
//
|
||||||
// grpAccurateRip
|
// grpAccurateRip
|
||||||
//
|
//
|
||||||
|
this.grpAccurateRip.AccessibleDescription = null;
|
||||||
|
this.grpAccurateRip.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.grpAccurateRip, "grpAccurateRip");
|
||||||
|
this.grpAccurateRip.BackgroundImage = null;
|
||||||
|
this.grpAccurateRip.Controls.Add(this.rbArPlusCRC);
|
||||||
this.grpAccurateRip.Controls.Add(this.rbArAndEncode);
|
this.grpAccurateRip.Controls.Add(this.rbArAndEncode);
|
||||||
this.grpAccurateRip.Controls.Add(this.label1);
|
this.grpAccurateRip.Controls.Add(this.label1);
|
||||||
this.grpAccurateRip.Controls.Add(this.txtDataTrackLength);
|
this.grpAccurateRip.Controls.Add(this.txtDataTrackLength);
|
||||||
this.grpAccurateRip.Controls.Add(this.rbArApplyOffset);
|
this.grpAccurateRip.Controls.Add(this.rbArApplyOffset);
|
||||||
this.grpAccurateRip.Controls.Add(this.rbArVerify);
|
this.grpAccurateRip.Controls.Add(this.rbArVerify);
|
||||||
this.grpAccurateRip.Controls.Add(this.rbArNone);
|
this.grpAccurateRip.Controls.Add(this.rbArNone);
|
||||||
resources.ApplyResources(this.grpAccurateRip, "grpAccurateRip");
|
this.grpAccurateRip.Font = null;
|
||||||
this.grpAccurateRip.Name = "grpAccurateRip";
|
this.grpAccurateRip.Name = "grpAccurateRip";
|
||||||
this.grpAccurateRip.TabStop = false;
|
this.grpAccurateRip.TabStop = false;
|
||||||
|
this.toolTip1.SetToolTip(this.grpAccurateRip, resources.GetString("grpAccurateRip.ToolTip"));
|
||||||
|
//
|
||||||
|
// rbArPlusCRC
|
||||||
|
//
|
||||||
|
this.rbArPlusCRC.AccessibleDescription = null;
|
||||||
|
this.rbArPlusCRC.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.rbArPlusCRC, "rbArPlusCRC");
|
||||||
|
this.rbArPlusCRC.BackgroundImage = null;
|
||||||
|
this.rbArPlusCRC.Font = null;
|
||||||
|
this.rbArPlusCRC.Name = "rbArPlusCRC";
|
||||||
|
this.toolTip1.SetToolTip(this.rbArPlusCRC, resources.GetString("rbArPlusCRC.ToolTip"));
|
||||||
|
this.rbArPlusCRC.UseVisualStyleBackColor = true;
|
||||||
|
this.rbArPlusCRC.CheckedChanged += new System.EventHandler(this.rbArPlusCRC_CheckedChanged);
|
||||||
//
|
//
|
||||||
// rbArAndEncode
|
// rbArAndEncode
|
||||||
//
|
//
|
||||||
|
this.rbArAndEncode.AccessibleDescription = null;
|
||||||
|
this.rbArAndEncode.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbArAndEncode, "rbArAndEncode");
|
resources.ApplyResources(this.rbArAndEncode, "rbArAndEncode");
|
||||||
|
this.rbArAndEncode.BackgroundImage = null;
|
||||||
|
this.rbArAndEncode.Font = null;
|
||||||
this.rbArAndEncode.Name = "rbArAndEncode";
|
this.rbArAndEncode.Name = "rbArAndEncode";
|
||||||
this.rbArAndEncode.TabStop = true;
|
this.rbArAndEncode.TabStop = true;
|
||||||
|
this.toolTip1.SetToolTip(this.rbArAndEncode, resources.GetString("rbArAndEncode.ToolTip"));
|
||||||
this.rbArAndEncode.UseVisualStyleBackColor = true;
|
this.rbArAndEncode.UseVisualStyleBackColor = true;
|
||||||
//
|
//
|
||||||
// label1
|
// label1
|
||||||
//
|
//
|
||||||
|
this.label1.AccessibleDescription = null;
|
||||||
|
this.label1.AccessibleName = null;
|
||||||
resources.ApplyResources(this.label1, "label1");
|
resources.ApplyResources(this.label1, "label1");
|
||||||
|
this.label1.Font = null;
|
||||||
this.label1.Name = "label1";
|
this.label1.Name = "label1";
|
||||||
|
this.toolTip1.SetToolTip(this.label1, resources.GetString("label1.ToolTip"));
|
||||||
//
|
//
|
||||||
// txtDataTrackLength
|
// txtDataTrackLength
|
||||||
//
|
//
|
||||||
|
this.txtDataTrackLength.AccessibleDescription = null;
|
||||||
|
this.txtDataTrackLength.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.txtDataTrackLength, "txtDataTrackLength");
|
||||||
|
this.txtDataTrackLength.BackgroundImage = null;
|
||||||
this.txtDataTrackLength.Culture = new System.Globalization.CultureInfo("");
|
this.txtDataTrackLength.Culture = new System.Globalization.CultureInfo("");
|
||||||
this.txtDataTrackLength.CutCopyMaskFormat = System.Windows.Forms.MaskFormat.IncludePromptAndLiterals;
|
this.txtDataTrackLength.CutCopyMaskFormat = System.Windows.Forms.MaskFormat.IncludePromptAndLiterals;
|
||||||
|
this.txtDataTrackLength.Font = null;
|
||||||
this.txtDataTrackLength.InsertKeyMode = System.Windows.Forms.InsertKeyMode.Overwrite;
|
this.txtDataTrackLength.InsertKeyMode = System.Windows.Forms.InsertKeyMode.Overwrite;
|
||||||
resources.ApplyResources(this.txtDataTrackLength, "txtDataTrackLength");
|
|
||||||
this.txtDataTrackLength.Name = "txtDataTrackLength";
|
this.txtDataTrackLength.Name = "txtDataTrackLength";
|
||||||
this.txtDataTrackLength.TextMaskFormat = System.Windows.Forms.MaskFormat.IncludePromptAndLiterals;
|
this.txtDataTrackLength.TextMaskFormat = System.Windows.Forms.MaskFormat.IncludePromptAndLiterals;
|
||||||
this.toolTip1.SetToolTip(this.txtDataTrackLength, resources.GetString("txtDataTrackLength.ToolTip"));
|
this.toolTip1.SetToolTip(this.txtDataTrackLength, resources.GetString("txtDataTrackLength.ToolTip"));
|
||||||
//
|
//
|
||||||
// rbArApplyOffset
|
// rbArApplyOffset
|
||||||
//
|
//
|
||||||
|
this.rbArApplyOffset.AccessibleDescription = null;
|
||||||
|
this.rbArApplyOffset.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbArApplyOffset, "rbArApplyOffset");
|
resources.ApplyResources(this.rbArApplyOffset, "rbArApplyOffset");
|
||||||
|
this.rbArApplyOffset.BackgroundImage = null;
|
||||||
|
this.rbArApplyOffset.Font = null;
|
||||||
this.rbArApplyOffset.Name = "rbArApplyOffset";
|
this.rbArApplyOffset.Name = "rbArApplyOffset";
|
||||||
this.toolTip1.SetToolTip(this.rbArApplyOffset, resources.GetString("rbArApplyOffset.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbArApplyOffset, resources.GetString("rbArApplyOffset.ToolTip"));
|
||||||
this.rbArApplyOffset.UseVisualStyleBackColor = true;
|
this.rbArApplyOffset.UseVisualStyleBackColor = true;
|
||||||
@@ -416,7 +634,11 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// rbArVerify
|
// rbArVerify
|
||||||
//
|
//
|
||||||
|
this.rbArVerify.AccessibleDescription = null;
|
||||||
|
this.rbArVerify.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbArVerify, "rbArVerify");
|
resources.ApplyResources(this.rbArVerify, "rbArVerify");
|
||||||
|
this.rbArVerify.BackgroundImage = null;
|
||||||
|
this.rbArVerify.Font = null;
|
||||||
this.rbArVerify.Name = "rbArVerify";
|
this.rbArVerify.Name = "rbArVerify";
|
||||||
this.toolTip1.SetToolTip(this.rbArVerify, resources.GetString("rbArVerify.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbArVerify, resources.GetString("rbArVerify.ToolTip"));
|
||||||
this.rbArVerify.UseVisualStyleBackColor = true;
|
this.rbArVerify.UseVisualStyleBackColor = true;
|
||||||
@@ -424,8 +646,12 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// rbArNone
|
// rbArNone
|
||||||
//
|
//
|
||||||
|
this.rbArNone.AccessibleDescription = null;
|
||||||
|
this.rbArNone.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbArNone, "rbArNone");
|
resources.ApplyResources(this.rbArNone, "rbArNone");
|
||||||
|
this.rbArNone.BackgroundImage = null;
|
||||||
this.rbArNone.Checked = true;
|
this.rbArNone.Checked = true;
|
||||||
|
this.rbArNone.Font = null;
|
||||||
this.rbArNone.Name = "rbArNone";
|
this.rbArNone.Name = "rbArNone";
|
||||||
this.rbArNone.TabStop = true;
|
this.rbArNone.TabStop = true;
|
||||||
this.toolTip1.SetToolTip(this.rbArNone, resources.GetString("rbArNone.ToolTip"));
|
this.toolTip1.SetToolTip(this.rbArNone, resources.GetString("rbArNone.ToolTip"));
|
||||||
@@ -433,32 +659,44 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// statusStrip1
|
// statusStrip1
|
||||||
//
|
//
|
||||||
|
this.statusStrip1.AccessibleDescription = null;
|
||||||
|
this.statusStrip1.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.statusStrip1, "statusStrip1");
|
||||||
|
this.statusStrip1.BackgroundImage = null;
|
||||||
|
this.statusStrip1.Font = null;
|
||||||
this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
this.toolStripStatusLabel1,
|
this.toolStripStatusLabel1,
|
||||||
this.toolStripProgressBar1,
|
this.toolStripProgressBar1,
|
||||||
this.toolStripProgressBar2});
|
this.toolStripProgressBar2});
|
||||||
resources.ApplyResources(this.statusStrip1, "statusStrip1");
|
|
||||||
this.statusStrip1.Name = "statusStrip1";
|
this.statusStrip1.Name = "statusStrip1";
|
||||||
this.statusStrip1.SizingGrip = false;
|
this.statusStrip1.SizingGrip = false;
|
||||||
|
this.toolTip1.SetToolTip(this.statusStrip1, resources.GetString("statusStrip1.ToolTip"));
|
||||||
//
|
//
|
||||||
// toolStripStatusLabel1
|
// toolStripStatusLabel1
|
||||||
//
|
//
|
||||||
this.toolStripStatusLabel1.Name = "toolStripStatusLabel1";
|
this.toolStripStatusLabel1.AccessibleDescription = null;
|
||||||
|
this.toolStripStatusLabel1.AccessibleName = null;
|
||||||
resources.ApplyResources(this.toolStripStatusLabel1, "toolStripStatusLabel1");
|
resources.ApplyResources(this.toolStripStatusLabel1, "toolStripStatusLabel1");
|
||||||
|
this.toolStripStatusLabel1.BackgroundImage = null;
|
||||||
|
this.toolStripStatusLabel1.Name = "toolStripStatusLabel1";
|
||||||
this.toolStripStatusLabel1.Spring = true;
|
this.toolStripStatusLabel1.Spring = true;
|
||||||
//
|
//
|
||||||
// toolStripProgressBar1
|
// toolStripProgressBar1
|
||||||
//
|
//
|
||||||
|
this.toolStripProgressBar1.AccessibleDescription = null;
|
||||||
|
this.toolStripProgressBar1.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.toolStripProgressBar1, "toolStripProgressBar1");
|
||||||
this.toolStripProgressBar1.AutoToolTip = true;
|
this.toolStripProgressBar1.AutoToolTip = true;
|
||||||
this.toolStripProgressBar1.Name = "toolStripProgressBar1";
|
this.toolStripProgressBar1.Name = "toolStripProgressBar1";
|
||||||
resources.ApplyResources(this.toolStripProgressBar1, "toolStripProgressBar1");
|
|
||||||
this.toolStripProgressBar1.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
|
this.toolStripProgressBar1.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
|
||||||
//
|
//
|
||||||
// toolStripProgressBar2
|
// toolStripProgressBar2
|
||||||
//
|
//
|
||||||
|
this.toolStripProgressBar2.AccessibleDescription = null;
|
||||||
|
this.toolStripProgressBar2.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.toolStripProgressBar2, "toolStripProgressBar2");
|
||||||
this.toolStripProgressBar2.AutoToolTip = true;
|
this.toolStripProgressBar2.AutoToolTip = true;
|
||||||
this.toolStripProgressBar2.Name = "toolStripProgressBar2";
|
this.toolStripProgressBar2.Name = "toolStripProgressBar2";
|
||||||
resources.ApplyResources(this.toolStripProgressBar2, "toolStripProgressBar2");
|
|
||||||
this.toolStripProgressBar2.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
|
this.toolStripProgressBar2.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
|
||||||
//
|
//
|
||||||
// toolTip1
|
// toolTip1
|
||||||
@@ -469,98 +707,189 @@ namespace JDP {
|
|||||||
//
|
//
|
||||||
// btnCUECreator
|
// btnCUECreator
|
||||||
//
|
//
|
||||||
|
this.btnCUECreator.AccessibleDescription = null;
|
||||||
|
this.btnCUECreator.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnCUECreator, "btnCUECreator");
|
resources.ApplyResources(this.btnCUECreator, "btnCUECreator");
|
||||||
|
this.btnCUECreator.BackgroundImage = null;
|
||||||
|
this.btnCUECreator.Font = null;
|
||||||
this.btnCUECreator.Name = "btnCUECreator";
|
this.btnCUECreator.Name = "btnCUECreator";
|
||||||
|
this.toolTip1.SetToolTip(this.btnCUECreator, resources.GetString("btnCUECreator.ToolTip"));
|
||||||
this.btnCUECreator.UseVisualStyleBackColor = true;
|
this.btnCUECreator.UseVisualStyleBackColor = true;
|
||||||
this.btnCUECreator.Click += new System.EventHandler(this.btnCUECreator_Click);
|
this.btnCUECreator.Click += new System.EventHandler(this.btnCUECreator_Click);
|
||||||
//
|
//
|
||||||
// btnStop
|
// btnStop
|
||||||
//
|
//
|
||||||
|
this.btnStop.AccessibleDescription = null;
|
||||||
|
this.btnStop.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnStop, "btnStop");
|
resources.ApplyResources(this.btnStop, "btnStop");
|
||||||
|
this.btnStop.BackgroundImage = null;
|
||||||
|
this.btnStop.Font = null;
|
||||||
this.btnStop.Name = "btnStop";
|
this.btnStop.Name = "btnStop";
|
||||||
|
this.toolTip1.SetToolTip(this.btnStop, resources.GetString("btnStop.ToolTip"));
|
||||||
this.btnStop.UseVisualStyleBackColor = true;
|
this.btnStop.UseVisualStyleBackColor = true;
|
||||||
this.btnStop.Click += new System.EventHandler(this.btnStop_Click);
|
this.btnStop.Click += new System.EventHandler(this.btnStop_Click);
|
||||||
//
|
//
|
||||||
// btnPause
|
// btnPause
|
||||||
//
|
//
|
||||||
|
this.btnPause.AccessibleDescription = null;
|
||||||
|
this.btnPause.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnPause, "btnPause");
|
resources.ApplyResources(this.btnPause, "btnPause");
|
||||||
|
this.btnPause.BackgroundImage = null;
|
||||||
|
this.btnPause.Font = null;
|
||||||
this.btnPause.Name = "btnPause";
|
this.btnPause.Name = "btnPause";
|
||||||
|
this.toolTip1.SetToolTip(this.btnPause, resources.GetString("btnPause.ToolTip"));
|
||||||
this.btnPause.UseVisualStyleBackColor = true;
|
this.btnPause.UseVisualStyleBackColor = true;
|
||||||
this.btnPause.Click += new System.EventHandler(this.btnPause_Click);
|
this.btnPause.Click += new System.EventHandler(this.btnPause_Click);
|
||||||
//
|
//
|
||||||
// btnResume
|
// btnResume
|
||||||
//
|
//
|
||||||
|
this.btnResume.AccessibleDescription = null;
|
||||||
|
this.btnResume.AccessibleName = null;
|
||||||
resources.ApplyResources(this.btnResume, "btnResume");
|
resources.ApplyResources(this.btnResume, "btnResume");
|
||||||
|
this.btnResume.BackgroundImage = null;
|
||||||
|
this.btnResume.Font = null;
|
||||||
this.btnResume.Name = "btnResume";
|
this.btnResume.Name = "btnResume";
|
||||||
|
this.toolTip1.SetToolTip(this.btnResume, resources.GetString("btnResume.ToolTip"));
|
||||||
this.btnResume.UseVisualStyleBackColor = true;
|
this.btnResume.UseVisualStyleBackColor = true;
|
||||||
this.btnResume.Click += new System.EventHandler(this.btnPause_Click);
|
this.btnResume.Click += new System.EventHandler(this.btnPause_Click);
|
||||||
//
|
//
|
||||||
// groupBox1
|
// groupBox1
|
||||||
//
|
//
|
||||||
|
this.groupBox1.AccessibleDescription = null;
|
||||||
|
this.groupBox1.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.groupBox1, "groupBox1");
|
||||||
|
this.groupBox1.BackgroundImage = null;
|
||||||
this.groupBox1.Controls.Add(this.rbFreedbAlways);
|
this.groupBox1.Controls.Add(this.rbFreedbAlways);
|
||||||
this.groupBox1.Controls.Add(this.rbFreedbIf);
|
this.groupBox1.Controls.Add(this.rbFreedbIf);
|
||||||
this.groupBox1.Controls.Add(this.rbFreedbNever);
|
this.groupBox1.Controls.Add(this.rbFreedbNever);
|
||||||
resources.ApplyResources(this.groupBox1, "groupBox1");
|
this.groupBox1.Font = null;
|
||||||
this.groupBox1.Name = "groupBox1";
|
this.groupBox1.Name = "groupBox1";
|
||||||
this.groupBox1.TabStop = false;
|
this.groupBox1.TabStop = false;
|
||||||
|
this.toolTip1.SetToolTip(this.groupBox1, resources.GetString("groupBox1.ToolTip"));
|
||||||
//
|
//
|
||||||
// rbFreedbAlways
|
// rbFreedbAlways
|
||||||
//
|
//
|
||||||
|
this.rbFreedbAlways.AccessibleDescription = null;
|
||||||
|
this.rbFreedbAlways.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbFreedbAlways, "rbFreedbAlways");
|
resources.ApplyResources(this.rbFreedbAlways, "rbFreedbAlways");
|
||||||
|
this.rbFreedbAlways.BackgroundImage = null;
|
||||||
|
this.rbFreedbAlways.Font = null;
|
||||||
this.rbFreedbAlways.Name = "rbFreedbAlways";
|
this.rbFreedbAlways.Name = "rbFreedbAlways";
|
||||||
this.rbFreedbAlways.TabStop = true;
|
this.rbFreedbAlways.TabStop = true;
|
||||||
|
this.toolTip1.SetToolTip(this.rbFreedbAlways, resources.GetString("rbFreedbAlways.ToolTip"));
|
||||||
this.rbFreedbAlways.UseVisualStyleBackColor = true;
|
this.rbFreedbAlways.UseVisualStyleBackColor = true;
|
||||||
//
|
//
|
||||||
// rbFreedbIf
|
// rbFreedbIf
|
||||||
//
|
//
|
||||||
|
this.rbFreedbIf.AccessibleDescription = null;
|
||||||
|
this.rbFreedbIf.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbFreedbIf, "rbFreedbIf");
|
resources.ApplyResources(this.rbFreedbIf, "rbFreedbIf");
|
||||||
|
this.rbFreedbIf.BackgroundImage = null;
|
||||||
|
this.rbFreedbIf.Font = null;
|
||||||
this.rbFreedbIf.Name = "rbFreedbIf";
|
this.rbFreedbIf.Name = "rbFreedbIf";
|
||||||
this.rbFreedbIf.TabStop = true;
|
this.rbFreedbIf.TabStop = true;
|
||||||
|
this.toolTip1.SetToolTip(this.rbFreedbIf, resources.GetString("rbFreedbIf.ToolTip"));
|
||||||
this.rbFreedbIf.UseVisualStyleBackColor = true;
|
this.rbFreedbIf.UseVisualStyleBackColor = true;
|
||||||
//
|
//
|
||||||
// rbFreedbNever
|
// rbFreedbNever
|
||||||
//
|
//
|
||||||
|
this.rbFreedbNever.AccessibleDescription = null;
|
||||||
|
this.rbFreedbNever.AccessibleName = null;
|
||||||
resources.ApplyResources(this.rbFreedbNever, "rbFreedbNever");
|
resources.ApplyResources(this.rbFreedbNever, "rbFreedbNever");
|
||||||
|
this.rbFreedbNever.BackgroundImage = null;
|
||||||
|
this.rbFreedbNever.Font = null;
|
||||||
this.rbFreedbNever.Name = "rbFreedbNever";
|
this.rbFreedbNever.Name = "rbFreedbNever";
|
||||||
this.rbFreedbNever.TabStop = true;
|
this.rbFreedbNever.TabStop = true;
|
||||||
|
this.toolTip1.SetToolTip(this.rbFreedbNever, resources.GetString("rbFreedbNever.ToolTip"));
|
||||||
this.rbFreedbNever.UseVisualStyleBackColor = true;
|
this.rbFreedbNever.UseVisualStyleBackColor = true;
|
||||||
//
|
//
|
||||||
// btnCodec
|
|
||||||
//
|
|
||||||
resources.ApplyResources(this.btnCodec, "btnCodec");
|
|
||||||
this.btnCodec.Name = "btnCodec";
|
|
||||||
this.btnCodec.UseVisualStyleBackColor = true;
|
|
||||||
this.btnCodec.Click += new System.EventHandler(this.btnCodec_Click);
|
|
||||||
//
|
|
||||||
// contextMenuStripUDC
|
// contextMenuStripUDC
|
||||||
//
|
//
|
||||||
|
this.contextMenuStripUDC.AccessibleDescription = null;
|
||||||
|
this.contextMenuStripUDC.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.contextMenuStripUDC, "contextMenuStripUDC");
|
||||||
|
this.contextMenuStripUDC.BackgroundImage = null;
|
||||||
|
this.contextMenuStripUDC.Font = null;
|
||||||
this.contextMenuStripUDC.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
this.contextMenuStripUDC.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.toolStripMenuItem2,
|
||||||
this.tAKToolStripMenuItem,
|
this.tAKToolStripMenuItem,
|
||||||
|
this.toolStripMenuItem1,
|
||||||
|
this.toolStripSeparator1,
|
||||||
|
this.toolStripMenuItem3,
|
||||||
this.mP3ToolStripMenuItem,
|
this.mP3ToolStripMenuItem,
|
||||||
this.oGGToolStripMenuItem});
|
this.oGGToolStripMenuItem});
|
||||||
this.contextMenuStripUDC.Name = "contextMenuStripUDC";
|
this.contextMenuStripUDC.Name = "contextMenuStripUDC";
|
||||||
resources.ApplyResources(this.contextMenuStripUDC, "contextMenuStripUDC");
|
this.toolTip1.SetToolTip(this.contextMenuStripUDC, resources.GetString("contextMenuStripUDC.ToolTip"));
|
||||||
this.contextMenuStripUDC.ItemClicked += new System.Windows.Forms.ToolStripItemClickedEventHandler(this.contextMenuStripUDC_ItemClicked);
|
this.contextMenuStripUDC.ItemClicked += new System.Windows.Forms.ToolStripItemClickedEventHandler(this.contextMenuStripUDC_ItemClicked);
|
||||||
//
|
//
|
||||||
|
// toolStripMenuItem2
|
||||||
|
//
|
||||||
|
this.toolStripMenuItem2.AccessibleDescription = null;
|
||||||
|
this.toolStripMenuItem2.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.toolStripMenuItem2, "toolStripMenuItem2");
|
||||||
|
this.toolStripMenuItem2.BackgroundImage = null;
|
||||||
|
this.toolStripMenuItem2.Name = "toolStripMenuItem2";
|
||||||
|
this.toolStripMenuItem2.ShortcutKeyDisplayString = null;
|
||||||
|
//
|
||||||
// tAKToolStripMenuItem
|
// tAKToolStripMenuItem
|
||||||
//
|
//
|
||||||
this.tAKToolStripMenuItem.Name = "tAKToolStripMenuItem";
|
this.tAKToolStripMenuItem.AccessibleDescription = null;
|
||||||
|
this.tAKToolStripMenuItem.AccessibleName = null;
|
||||||
resources.ApplyResources(this.tAKToolStripMenuItem, "tAKToolStripMenuItem");
|
resources.ApplyResources(this.tAKToolStripMenuItem, "tAKToolStripMenuItem");
|
||||||
|
this.tAKToolStripMenuItem.BackgroundImage = null;
|
||||||
|
this.tAKToolStripMenuItem.Name = "tAKToolStripMenuItem";
|
||||||
|
this.tAKToolStripMenuItem.ShortcutKeyDisplayString = null;
|
||||||
|
//
|
||||||
|
// toolStripMenuItem1
|
||||||
|
//
|
||||||
|
this.toolStripMenuItem1.AccessibleDescription = null;
|
||||||
|
this.toolStripMenuItem1.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.toolStripMenuItem1, "toolStripMenuItem1");
|
||||||
|
this.toolStripMenuItem1.BackgroundImage = null;
|
||||||
|
this.toolStripMenuItem1.Name = "toolStripMenuItem1";
|
||||||
|
this.toolStripMenuItem1.ShortcutKeyDisplayString = null;
|
||||||
|
//
|
||||||
|
// toolStripSeparator1
|
||||||
|
//
|
||||||
|
this.toolStripSeparator1.AccessibleDescription = null;
|
||||||
|
this.toolStripSeparator1.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.toolStripSeparator1, "toolStripSeparator1");
|
||||||
|
this.toolStripSeparator1.Name = "toolStripSeparator1";
|
||||||
|
//
|
||||||
|
// toolStripMenuItem3
|
||||||
|
//
|
||||||
|
this.toolStripMenuItem3.AccessibleDescription = null;
|
||||||
|
this.toolStripMenuItem3.AccessibleName = null;
|
||||||
|
resources.ApplyResources(this.toolStripMenuItem3, "toolStripMenuItem3");
|
||||||
|
this.toolStripMenuItem3.BackgroundImage = null;
|
||||||
|
this.toolStripMenuItem3.Name = "toolStripMenuItem3";
|
||||||
|
this.toolStripMenuItem3.ShortcutKeyDisplayString = null;
|
||||||
//
|
//
|
||||||
// mP3ToolStripMenuItem
|
// mP3ToolStripMenuItem
|
||||||
//
|
//
|
||||||
this.mP3ToolStripMenuItem.Name = "mP3ToolStripMenuItem";
|
this.mP3ToolStripMenuItem.AccessibleDescription = null;
|
||||||
|
this.mP3ToolStripMenuItem.AccessibleName = null;
|
||||||
resources.ApplyResources(this.mP3ToolStripMenuItem, "mP3ToolStripMenuItem");
|
resources.ApplyResources(this.mP3ToolStripMenuItem, "mP3ToolStripMenuItem");
|
||||||
|
this.mP3ToolStripMenuItem.BackgroundImage = null;
|
||||||
|
this.mP3ToolStripMenuItem.Name = "mP3ToolStripMenuItem";
|
||||||
|
this.mP3ToolStripMenuItem.ShortcutKeyDisplayString = null;
|
||||||
//
|
//
|
||||||
// oGGToolStripMenuItem
|
// oGGToolStripMenuItem
|
||||||
//
|
//
|
||||||
this.oGGToolStripMenuItem.Name = "oGGToolStripMenuItem";
|
this.oGGToolStripMenuItem.AccessibleDescription = null;
|
||||||
|
this.oGGToolStripMenuItem.AccessibleName = null;
|
||||||
resources.ApplyResources(this.oGGToolStripMenuItem, "oGGToolStripMenuItem");
|
resources.ApplyResources(this.oGGToolStripMenuItem, "oGGToolStripMenuItem");
|
||||||
|
this.oGGToolStripMenuItem.BackgroundImage = null;
|
||||||
|
this.oGGToolStripMenuItem.Name = "oGGToolStripMenuItem";
|
||||||
|
this.oGGToolStripMenuItem.ShortcutKeyDisplayString = null;
|
||||||
//
|
//
|
||||||
// frmCUETools
|
// frmCUETools
|
||||||
//
|
//
|
||||||
|
this.AccessibleDescription = null;
|
||||||
|
this.AccessibleName = null;
|
||||||
resources.ApplyResources(this, "$this");
|
resources.ApplyResources(this, "$this");
|
||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
|
this.BackgroundImage = null;
|
||||||
this.Controls.Add(this.groupBox1);
|
this.Controls.Add(this.groupBox1);
|
||||||
this.Controls.Add(this.btnResume);
|
this.Controls.Add(this.btnResume);
|
||||||
this.Controls.Add(this.btnPause);
|
this.Controls.Add(this.btnPause);
|
||||||
@@ -580,6 +909,7 @@ namespace JDP {
|
|||||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
|
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
|
||||||
this.MaximizeBox = false;
|
this.MaximizeBox = false;
|
||||||
this.Name = "frmCUETools";
|
this.Name = "frmCUETools";
|
||||||
|
this.toolTip1.SetToolTip(this, resources.GetString("$this.ToolTip"));
|
||||||
this.Load += new System.EventHandler(this.frmCUETools_Load);
|
this.Load += new System.EventHandler(this.frmCUETools_Load);
|
||||||
this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.frmCUETools_FormClosed);
|
this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.frmCUETools_FormClosed);
|
||||||
this.grpCUEPaths.ResumeLayout(false);
|
this.grpCUEPaths.ResumeLayout(false);
|
||||||
@@ -664,6 +994,11 @@ namespace JDP {
|
|||||||
private System.Windows.Forms.ToolStripMenuItem tAKToolStripMenuItem;
|
private System.Windows.Forms.ToolStripMenuItem tAKToolStripMenuItem;
|
||||||
private System.Windows.Forms.ToolStripMenuItem mP3ToolStripMenuItem;
|
private System.Windows.Forms.ToolStripMenuItem mP3ToolStripMenuItem;
|
||||||
private System.Windows.Forms.ToolStripMenuItem oGGToolStripMenuItem;
|
private System.Windows.Forms.ToolStripMenuItem oGGToolStripMenuItem;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem1;
|
||||||
|
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem2;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem3;
|
||||||
|
private System.Windows.Forms.RadioButton rbArPlusCRC;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -296,11 +296,9 @@ namespace JDP {
|
|||||||
this.Invoke((MethodInvoker)delegate()
|
this.Invoke((MethodInvoker)delegate()
|
||||||
{
|
{
|
||||||
frmChoice dlg = new frmChoice();
|
frmChoice dlg = new frmChoice();
|
||||||
foreach (string s in e.choices)
|
dlg.Choices = e.choices;
|
||||||
dlg.comboRelease.Items.Add(s);
|
|
||||||
dlg.comboRelease.SelectedIndex = 0;
|
|
||||||
if (dlg.ShowDialog(this) == DialogResult.OK)
|
if (dlg.ShowDialog(this) == DialogResult.OK)
|
||||||
e.selection = dlg.comboRelease.SelectedIndex;
|
e.selection = dlg.ChosenIndex;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -318,14 +316,14 @@ namespace JDP {
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
|
||||||
bool outputAudio = outputFormat != OutputAudioFormat.NoAudio && accurateRip != AccurateRipMode.Verify;
|
bool outputAudio = outputFormat != OutputAudioFormat.NoAudio && accurateRip != AccurateRipMode.Verify && accurateRip != AccurateRipMode.VerifyPlusCRCs;
|
||||||
bool outputCUE = cueStyle != CUEStyle.SingleFileWithCUE && accurateRip != AccurateRipMode.Verify;
|
bool outputCUE = cueStyle != CUEStyle.SingleFileWithCUE && accurateRip != AccurateRipMode.Verify && accurateRip != AccurateRipMode.VerifyPlusCRCs;
|
||||||
string pathOut = null;
|
string pathOut = null;
|
||||||
List<object> releases = null;
|
List<object> releases = null;
|
||||||
|
|
||||||
cueSheet.Open(pathIn);
|
cueSheet.Open(pathIn);
|
||||||
|
|
||||||
if (_batchPaths.Count == 0 && accurateRip != AccurateRipMode.Verify)
|
if (_batchPaths.Count == 0 && accurateRip != AccurateRipMode.Verify && accurateRip != AccurateRipMode.VerifyPlusCRCs)
|
||||||
{
|
{
|
||||||
if (rbFreedbAlways.Checked || (rbFreedbIf.Checked &&
|
if (rbFreedbAlways.Checked || (rbFreedbIf.Checked &&
|
||||||
(cueSheet.Artist == "" || cueSheet.Title == "" || cueSheet.Year == "")))
|
(cueSheet.Artist == "" || cueSheet.Title == "" || cueSheet.Year == "")))
|
||||||
@@ -337,11 +335,10 @@ namespace JDP {
|
|||||||
if (releases != null && releases.Count > 0)
|
if (releases != null && releases.Count > 0)
|
||||||
{
|
{
|
||||||
frmChoice dlg = new frmChoice();
|
frmChoice dlg = new frmChoice();
|
||||||
foreach (object release in releases)
|
|
||||||
dlg.comboRelease.Items.Add(release);
|
|
||||||
dlg.comboRelease.SelectedIndex = 0;
|
|
||||||
dlg.CUE = cueSheet;
|
dlg.CUE = cueSheet;
|
||||||
if (dlg.ShowDialog(this) == DialogResult.Cancel)
|
dlg.Choices = releases;
|
||||||
|
dlgRes = dlg.ShowDialog(this);
|
||||||
|
if (dlgRes == DialogResult.Cancel)
|
||||||
{
|
{
|
||||||
cueSheet.Close();
|
cueSheet.Close();
|
||||||
SetupControls(false);
|
SetupControls(false);
|
||||||
@@ -419,6 +416,7 @@ namespace JDP {
|
|||||||
reportForm.ShowDialog(this);
|
reportForm.ShowDialog(this);
|
||||||
}
|
}
|
||||||
else if (cueSheet.AccurateRip == AccurateRipMode.Verify ||
|
else if (cueSheet.AccurateRip == AccurateRipMode.Verify ||
|
||||||
|
cueSheet.AccurateRip == AccurateRipMode.VerifyPlusCRCs ||
|
||||||
(cueSheet.AccurateRip != AccurateRipMode.None && outputFormat != OutputAudioFormat.NoAudio))
|
(cueSheet.AccurateRip != AccurateRipMode.None && outputFormat != OutputAudioFormat.NoAudio))
|
||||||
{
|
{
|
||||||
frmReport reportForm = new frmReport();
|
frmReport reportForm = new frmReport();
|
||||||
@@ -487,10 +485,10 @@ namespace JDP {
|
|||||||
private void SetupControls(bool running) {
|
private void SetupControls(bool running) {
|
||||||
grpCUEPaths.Enabled = !running;
|
grpCUEPaths.Enabled = !running;
|
||||||
grpOutputPathGeneration.Enabled = !running;
|
grpOutputPathGeneration.Enabled = !running;
|
||||||
grpAudioOutput.Enabled = !running && !rbArVerify.Checked;
|
grpAudioOutput.Enabled = !running && !rbArVerify.Checked && !rbArPlusCRC.Checked;
|
||||||
grpAccurateRip.Enabled = !running;
|
grpAccurateRip.Enabled = !running;
|
||||||
grpOutputStyle.Enabled = !running && !rbArVerify.Checked;
|
grpOutputStyle.Enabled = !running && !rbArVerify.Checked && !rbArPlusCRC.Checked;
|
||||||
groupBox1.Enabled = !running && !rbArVerify.Checked;
|
groupBox1.Enabled = !running && !rbArVerify.Checked && !rbArPlusCRC.Checked;
|
||||||
txtDataTrackLength.Enabled = !running && !rbArNone.Checked;
|
txtDataTrackLength.Enabled = !running && !rbArNone.Checked;
|
||||||
btnAbout.Enabled = !running;
|
btnAbout.Enabled = !running;
|
||||||
btnSettings.Enabled = !running;
|
btnSettings.Enabled = !running;
|
||||||
@@ -536,7 +534,8 @@ namespace JDP {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private bool CheckWriteOffset() {
|
private bool CheckWriteOffset() {
|
||||||
if ((_writeOffset == 0) || rbNoAudio.Checked || rbArVerify.Checked) {
|
if ((_writeOffset == 0) || rbNoAudio.Checked || rbArVerify.Checked || rbArPlusCRC.Checked)
|
||||||
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -765,6 +764,7 @@ namespace JDP {
|
|||||||
get
|
get
|
||||||
{
|
{
|
||||||
return
|
return
|
||||||
|
rbArPlusCRC.Checked ? AccurateRipMode.VerifyPlusCRCs :
|
||||||
rbArVerify.Checked ? AccurateRipMode.Verify :
|
rbArVerify.Checked ? AccurateRipMode.Verify :
|
||||||
rbArApplyOffset.Checked ? AccurateRipMode.VerifyThenConvert :
|
rbArApplyOffset.Checked ? AccurateRipMode.VerifyThenConvert :
|
||||||
rbArAndEncode.Checked ? AccurateRipMode.VerifyAndConvert :
|
rbArAndEncode.Checked ? AccurateRipMode.VerifyAndConvert :
|
||||||
@@ -774,6 +774,9 @@ namespace JDP {
|
|||||||
{
|
{
|
||||||
switch (value)
|
switch (value)
|
||||||
{
|
{
|
||||||
|
case AccurateRipMode.VerifyPlusCRCs:
|
||||||
|
rbArPlusCRC.Checked = true;
|
||||||
|
break;
|
||||||
case AccurateRipMode.Verify:
|
case AccurateRipMode.Verify:
|
||||||
rbArVerify.Checked = true;
|
rbArVerify.Checked = true;
|
||||||
break;
|
break;
|
||||||
@@ -1063,6 +1066,14 @@ namespace JDP {
|
|||||||
apev2 = true;
|
apev2 = true;
|
||||||
id3v2 = false;
|
id3v2 = false;
|
||||||
break;
|
break;
|
||||||
|
case "ALAC":
|
||||||
|
extension = "m4a";
|
||||||
|
executable = "ffmpeg.exe";
|
||||||
|
decParams = "%I -f wav -";
|
||||||
|
encParams = "-i - -f ipod -acodec alac -y %O";
|
||||||
|
apev2 = false;
|
||||||
|
id3v2 = false;
|
||||||
|
break;
|
||||||
case "MP3":
|
case "MP3":
|
||||||
extension = "mp3";
|
extension = "mp3";
|
||||||
executable = "lame.exe";
|
executable = "lame.exe";
|
||||||
@@ -1107,6 +1118,12 @@ namespace JDP {
|
|||||||
updateOutputStyles();
|
updateOutputStyles();
|
||||||
UpdateOutputPath();
|
UpdateOutputPath();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void rbArPlusCRC_CheckedChanged(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
UpdateOutputPath();
|
||||||
|
SetupControls(false);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
enum OutputPathGeneration {
|
enum OutputPathGeneration {
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -124,6 +124,9 @@
|
|||||||
<data name="btnConvert.Text" xml:space="preserve">
|
<data name="btnConvert.Text" xml:space="preserve">
|
||||||
<value>Поехали</value>
|
<value>Поехали</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="grpCUEPaths.Text" xml:space="preserve">
|
||||||
|
<value>Пути к файлам</value>
|
||||||
|
</data>
|
||||||
<data name="btnBrowseOutput.Text" xml:space="preserve">
|
<data name="btnBrowseOutput.Text" xml:space="preserve">
|
||||||
<value>Выбор...</value>
|
<value>Выбор...</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -142,8 +145,11 @@
|
|||||||
<data name="lblInput.Text" xml:space="preserve">
|
<data name="lblInput.Text" xml:space="preserve">
|
||||||
<value>&Вход:</value>
|
<value>&Вход:</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="grpCUEPaths.Text" xml:space="preserve">
|
<data name="grpOutputStyle.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>Пути к файлам</value>
|
<value>130, 164</value>
|
||||||
|
</data>
|
||||||
|
<data name="grpOutputStyle.Text" xml:space="preserve">
|
||||||
|
<value>Стиль CUE</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="rbEmbedCUE.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="rbEmbedCUE.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>86, 17</value>
|
<value>86, 17</value>
|
||||||
@@ -190,18 +196,18 @@
|
|||||||
<data name="rbSingleFile.ToolTip" xml:space="preserve">
|
<data name="rbSingleFile.ToolTip" xml:space="preserve">
|
||||||
<value>Создать образ диска в виде одного аудио-файла и .cue файла</value>
|
<value>Создать образ диска в виде одного аудио-файла и .cue файла</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="grpOutputStyle.Size" type="System.Drawing.Size, System.Drawing">
|
|
||||||
<value>130, 164</value>
|
|
||||||
</data>
|
|
||||||
<data name="grpOutputStyle.Text" xml:space="preserve">
|
|
||||||
<value>Стиль CUE</value>
|
|
||||||
</data>
|
|
||||||
<data name="btnAbout.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="btnAbout.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>412, 191</value>
|
<value>412, 191</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="btnAbout.Text" xml:space="preserve">
|
<data name="btnAbout.Text" xml:space="preserve">
|
||||||
<value>О программе</value>
|
<value>О программе</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="grpOutputPathGeneration.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>392, 113</value>
|
||||||
|
</data>
|
||||||
|
<data name="grpOutputPathGeneration.Text" xml:space="preserve">
|
||||||
|
<value>Путь для выходных файлов</value>
|
||||||
|
</data>
|
||||||
<data name="txtCustomFormat.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="txtCustomFormat.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>240, 21</value>
|
<value>240, 21</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -235,11 +241,8 @@
|
|||||||
<data name="txtAppendFilename.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="txtAppendFilename.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>240, 21</value>
|
<value>240, 21</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="grpOutputPathGeneration.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="grpAudioOutput.Text" xml:space="preserve">
|
||||||
<value>392, 113</value>
|
<value>Формат аудио</value>
|
||||||
</data>
|
|
||||||
<data name="grpOutputPathGeneration.Text" xml:space="preserve">
|
|
||||||
<value>Путь для выходных файлов</value>
|
|
||||||
</data>
|
</data>
|
||||||
<data name="rbNoAudio.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="rbNoAudio.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>76, 17</value>
|
<value>76, 17</value>
|
||||||
@@ -247,9 +250,6 @@
|
|||||||
<data name="rbNoAudio.Text" xml:space="preserve">
|
<data name="rbNoAudio.Text" xml:space="preserve">
|
||||||
<value>Без аудио</value>
|
<value>Без аудио</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="grpAudioOutput.Text" xml:space="preserve">
|
|
||||||
<value>Формат аудио</value>
|
|
||||||
</data>
|
|
||||||
<data name="btnBatch.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="btnBatch.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>412, 315</value>
|
<value>412, 315</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -268,6 +268,18 @@
|
|||||||
<data name="btnSettings.Text" xml:space="preserve">
|
<data name="btnSettings.Text" xml:space="preserve">
|
||||||
<value>Настройки...</value>
|
<value>Настройки...</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="grpAccurateRip.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>250, 211</value>
|
||||||
|
</data>
|
||||||
|
<data name="grpAccurateRip.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>154, 164</value>
|
||||||
|
</data>
|
||||||
|
<data name="rbArPlusCRC.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>115, 17</value>
|
||||||
|
</data>
|
||||||
|
<data name="rbArPlusCRC.Text" xml:space="preserve">
|
||||||
|
<value>Проверить + CRC</value>
|
||||||
|
</data>
|
||||||
<data name="rbArAndEncode.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="rbArAndEncode.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>138, 17</value>
|
<value>138, 17</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -310,12 +322,6 @@
|
|||||||
<data name="rbArNone.ToolTip" xml:space="preserve">
|
<data name="rbArNone.ToolTip" xml:space="preserve">
|
||||||
<value>Сконвертировать, не обращаясь к базе данных AccurateRip</value>
|
<value>Сконвертировать, не обращаясь к базе данных AccurateRip</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="grpAccurateRip.Location" type="System.Drawing.Point, System.Drawing">
|
|
||||||
<value>250, 211</value>
|
|
||||||
</data>
|
|
||||||
<data name="grpAccurateRip.Size" type="System.Drawing.Size, System.Drawing">
|
|
||||||
<value>154, 164</value>
|
|
||||||
</data>
|
|
||||||
<data name="btnCUECreator.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="btnCUECreator.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>412, 253</value>
|
<value>412, 253</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -340,4 +346,32 @@
|
|||||||
<data name="btnResume.Text" xml:space="preserve">
|
<data name="btnResume.Text" xml:space="preserve">
|
||||||
<value>&Поехали</value>
|
<value>&Поехали</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
AAABAAEAEBAAAAAACABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAB
|
||||||
|
AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAwMDAAMDcwADwyqYABAQEAAgICAAMDAwAERERABYW
|
||||||
|
FgAcHBwAIiIiACkpKQBVVVUATU1NAEJCQgA5OTkAgHz/AFBQ/wCTANYA/+zMAMbW7wDW5+cAkKmtAAAA
|
||||||
|
MwAAAGYAAACZAAAAzAAAMwAAADMzAAAzZgAAM5kAADPMAAAz/wAAZgAAAGYzAABmZgAAZpkAAGbMAABm
|
||||||
|
/wAAmQAAAJkzAACZZgAAmZkAAJnMAACZ/wAAzAAAAMwzAADMZgAAzJkAAMzMAADM/wAA/2YAAP+ZAAD/
|
||||||
|
zAAzAAAAMwAzADMAZgAzAJkAMwDMADMA/wAzMwAAMzMzADMzZgAzM5kAMzPMADMz/wAzZgAAM2YzADNm
|
||||||
|
ZgAzZpkAM2bMADNm/wAzmQAAM5kzADOZZgAzmZkAM5nMADOZ/wAzzAAAM8wzADPMZgAzzJkAM8zMADPM
|
||||||
|
/wAz/zMAM/9mADP/mQAz/8wAM///AGYAAABmADMAZgBmAGYAmQBmAMwAZgD/AGYzAABmMzMAZjNmAGYz
|
||||||
|
mQBmM8wAZjP/AGZmAABmZjMAZmZmAGZmmQBmZswAZpkAAGaZMwBmmWYAZpmZAGaZzABmmf8AZswAAGbM
|
||||||
|
MwBmzJkAZszMAGbM/wBm/wAAZv8zAGb/mQBm/8wAzAD/AP8AzACZmQAAmTOZAJkAmQCZAMwAmQAAAJkz
|
||||||
|
MwCZAGYAmTPMAJkA/wCZZgAAmWYzAJkzZgCZZpkAmWbMAJkz/wCZmTMAmZlmAJmZmQCZmcwAmZn/AJnM
|
||||||
|
AACZzDMAZsxmAJnMmQCZzMwAmcz/AJn/AACZ/zMAmcxmAJn/mQCZ/8wAmf//AMwAAACZADMAzABmAMwA
|
||||||
|
mQDMAMwAmTMAAMwzMwDMM2YAzDOZAMwzzADMM/8AzGYAAMxmMwCZZmYAzGaZAMxmzACZZv8AzJkAAMyZ
|
||||||
|
MwDMmWYAzJmZAMyZzADMmf8AzMwAAMzMMwDMzGYAzMyZAMzMzADMzP8AzP8AAMz/MwCZ/2YAzP+ZAMz/
|
||||||
|
zADM//8AzAAzAP8AZgD/AJkAzDMAAP8zMwD/M2YA/zOZAP8zzAD/M/8A/2YAAP9mMwDMZmYA/2aZAP9m
|
||||||
|
zADMZv8A/5kAAP+ZMwD/mWYA/5mZAP+ZzAD/mf8A/8wAAP/MMwD/zGYA/8yZAP/MzAD/zP8A//8zAMz/
|
||||||
|
ZgD//5kA///MAGZm/wBm/2YAZv//AP9mZgD/Zv8A//9mACEApQBfX18Ad3d3AIaGhgCWlpYAy8vLALKy
|
||||||
|
sgDX19cA3d3dAOPj4wDq6uoA8fHxAPj4+ADw+/8ApKCgAICAgAAAAP8AAP8AAAD//wD/AAAA/wD/AP//
|
||||||
|
AAD///8ACgoKCgrr6+vr6+sKCgoKCgoKCu/r7/Pz8/Pv6+8KCgoKCuvr7/Pz8/Pz8+/r6woKCu/r8/Pz
|
||||||
|
8/Pz8/Pz8+vvCu/r8/Pz8/Pz8/Pz8/Pz6+/r7/Pz8/Pz8/Pz8/Pz8+/r6/PrCgrz6woK6/MKCgrz6+vz
|
||||||
|
CvPz8wrz8wrzCvPz8+vr8wrz8/MK8/MK8woK8/Pr6/MK8/PzCvPzCvMK8/Pz6+vv6woK8wrz8wrzCgoK
|
||||||
|
7+vv6/Pz8/Pz8/Pz8/Pz8+vvCu/r8/Pz8/Pz8/Pz8+vvCgoK6+vv8/Pz8/Pz7+vrCgoKCgrv6+/z8/Pz
|
||||||
|
7+vvCgoKCgoKCu/r6+vr6+vvCgoKCvgfAADgBwAAwAMAAIABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAIABAADAAwAA4AcAAPAPAAA=
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
||||||
110
CUETools/frmChoice.Designer.cs
generated
110
CUETools/frmChoice.Designer.cs
generated
@@ -28,20 +28,20 @@ namespace JDP
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
private void InitializeComponent()
|
private void InitializeComponent()
|
||||||
{
|
{
|
||||||
|
this.components = new System.ComponentModel.Container();
|
||||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmChoice));
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmChoice));
|
||||||
this.comboRelease = new System.Windows.Forms.ComboBox();
|
|
||||||
this.button1 = new System.Windows.Forms.Button();
|
this.button1 = new System.Windows.Forms.Button();
|
||||||
|
this.listChoices = new System.Windows.Forms.ListView();
|
||||||
|
this.columnHeader1 = new System.Windows.Forms.ColumnHeader();
|
||||||
|
this.imageList1 = new System.Windows.Forms.ImageList(this.components);
|
||||||
|
this.textBox1 = new System.Windows.Forms.TextBox();
|
||||||
|
this.listTracks = new System.Windows.Forms.ListView();
|
||||||
|
this.Title = new System.Windows.Forms.ColumnHeader();
|
||||||
|
this.TrackNo = new System.Windows.Forms.ColumnHeader();
|
||||||
|
this.Length = new System.Windows.Forms.ColumnHeader();
|
||||||
|
this.btnEdit = new System.Windows.Forms.Button();
|
||||||
this.SuspendLayout();
|
this.SuspendLayout();
|
||||||
//
|
//
|
||||||
// comboRelease
|
|
||||||
//
|
|
||||||
resources.ApplyResources(this.comboRelease, "comboRelease");
|
|
||||||
this.comboRelease.BackColor = System.Drawing.SystemColors.Control;
|
|
||||||
this.comboRelease.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
|
|
||||||
this.comboRelease.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
|
||||||
this.comboRelease.Name = "comboRelease";
|
|
||||||
this.comboRelease.DrawItem += new System.Windows.Forms.DrawItemEventHandler(this.comboRelease_DrawItem);
|
|
||||||
//
|
|
||||||
// button1
|
// button1
|
||||||
//
|
//
|
||||||
this.button1.DialogResult = System.Windows.Forms.DialogResult.OK;
|
this.button1.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||||
@@ -49,24 +49,110 @@ namespace JDP
|
|||||||
this.button1.Name = "button1";
|
this.button1.Name = "button1";
|
||||||
this.button1.UseVisualStyleBackColor = true;
|
this.button1.UseVisualStyleBackColor = true;
|
||||||
//
|
//
|
||||||
|
// listChoices
|
||||||
|
//
|
||||||
|
this.listChoices.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
||||||
|
this.columnHeader1});
|
||||||
|
this.listChoices.FullRowSelect = true;
|
||||||
|
this.listChoices.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.None;
|
||||||
|
this.listChoices.HideSelection = false;
|
||||||
|
resources.ApplyResources(this.listChoices, "listChoices");
|
||||||
|
this.listChoices.MultiSelect = false;
|
||||||
|
this.listChoices.Name = "listChoices";
|
||||||
|
this.listChoices.ShowItemToolTips = true;
|
||||||
|
this.listChoices.SmallImageList = this.imageList1;
|
||||||
|
this.listChoices.UseCompatibleStateImageBehavior = false;
|
||||||
|
this.listChoices.View = System.Windows.Forms.View.Details;
|
||||||
|
this.listChoices.SelectedIndexChanged += new System.EventHandler(this.listChoices_SelectedIndexChanged);
|
||||||
|
//
|
||||||
|
// columnHeader1
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.columnHeader1, "columnHeader1");
|
||||||
|
//
|
||||||
|
// imageList1
|
||||||
|
//
|
||||||
|
this.imageList1.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList1.ImageStream")));
|
||||||
|
this.imageList1.TransparentColor = System.Drawing.Color.Transparent;
|
||||||
|
this.imageList1.Images.SetKeyName(0, "eac.ico");
|
||||||
|
this.imageList1.Images.SetKeyName(1, "freedb.gif");
|
||||||
|
this.imageList1.Images.SetKeyName(2, "musicbrainz.ico");
|
||||||
|
this.imageList1.Images.SetKeyName(3, "cue.ico");
|
||||||
|
//
|
||||||
|
// textBox1
|
||||||
|
//
|
||||||
|
this.textBox1.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||||
|
resources.ApplyResources(this.textBox1, "textBox1");
|
||||||
|
this.textBox1.Name = "textBox1";
|
||||||
|
this.textBox1.ReadOnly = true;
|
||||||
|
//
|
||||||
|
// listTracks
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.listTracks, "listTracks");
|
||||||
|
this.listTracks.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
||||||
|
this.Title,
|
||||||
|
this.TrackNo,
|
||||||
|
this.Length});
|
||||||
|
this.listTracks.FullRowSelect = true;
|
||||||
|
this.listTracks.GridLines = true;
|
||||||
|
this.listTracks.LabelEdit = true;
|
||||||
|
this.listTracks.Name = "listTracks";
|
||||||
|
this.listTracks.UseCompatibleStateImageBehavior = false;
|
||||||
|
this.listTracks.View = System.Windows.Forms.View.Details;
|
||||||
|
this.listTracks.AfterLabelEdit += new System.Windows.Forms.LabelEditEventHandler(this.listTracks_AfterLabelEdit);
|
||||||
|
this.listTracks.DoubleClick += new System.EventHandler(this.listTracks_DoubleClick);
|
||||||
|
this.listTracks.PreviewKeyDown += new System.Windows.Forms.PreviewKeyDownEventHandler(this.listTracks_PreviewKeyDown);
|
||||||
|
this.listTracks.BeforeLabelEdit += new System.Windows.Forms.LabelEditEventHandler(this.listTracks_BeforeLabelEdit);
|
||||||
|
this.listTracks.KeyDown += new System.Windows.Forms.KeyEventHandler(this.listTracks_KeyDown);
|
||||||
|
//
|
||||||
|
// Title
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.Title, "Title");
|
||||||
|
//
|
||||||
|
// TrackNo
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.TrackNo, "TrackNo");
|
||||||
|
//
|
||||||
|
// Length
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.Length, "Length");
|
||||||
|
//
|
||||||
|
// btnEdit
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.btnEdit, "btnEdit");
|
||||||
|
this.btnEdit.Name = "btnEdit";
|
||||||
|
this.btnEdit.UseVisualStyleBackColor = true;
|
||||||
|
this.btnEdit.Click += new System.EventHandler(this.btnEdit_Click);
|
||||||
|
//
|
||||||
// frmChoice
|
// frmChoice
|
||||||
//
|
//
|
||||||
this.AcceptButton = this.button1;
|
this.AcceptButton = this.button1;
|
||||||
resources.ApplyResources(this, "$this");
|
resources.ApplyResources(this, "$this");
|
||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
|
this.Controls.Add(this.btnEdit);
|
||||||
|
this.Controls.Add(this.listTracks);
|
||||||
|
this.Controls.Add(this.textBox1);
|
||||||
|
this.Controls.Add(this.listChoices);
|
||||||
this.Controls.Add(this.button1);
|
this.Controls.Add(this.button1);
|
||||||
this.Controls.Add(this.comboRelease);
|
|
||||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.SizableToolWindow;
|
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.SizableToolWindow;
|
||||||
this.Name = "frmChoice";
|
this.Name = "frmChoice";
|
||||||
this.Load += new System.EventHandler(this.frmChoice_Load);
|
this.Load += new System.EventHandler(this.frmChoice_Load);
|
||||||
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.frmChoice_FormClosing);
|
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.frmChoice_FormClosing);
|
||||||
this.ResumeLayout(false);
|
this.ResumeLayout(false);
|
||||||
|
this.PerformLayout();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
private System.Windows.Forms.Button button1;
|
private System.Windows.Forms.Button button1;
|
||||||
public System.Windows.Forms.ComboBox comboRelease;
|
private System.Windows.Forms.ColumnHeader columnHeader1;
|
||||||
|
private System.Windows.Forms.ImageList imageList1;
|
||||||
|
private System.Windows.Forms.TextBox textBox1;
|
||||||
|
private System.Windows.Forms.ListView listChoices;
|
||||||
|
private System.Windows.Forms.ListView listTracks;
|
||||||
|
private System.Windows.Forms.ColumnHeader Title;
|
||||||
|
private System.Windows.Forms.ColumnHeader TrackNo;
|
||||||
|
private System.Windows.Forms.ColumnHeader Length;
|
||||||
|
private System.Windows.Forms.Button btnEdit;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -20,68 +20,215 @@ namespace JDP
|
|||||||
|
|
||||||
public CUESheet CUE;
|
public CUESheet CUE;
|
||||||
|
|
||||||
private void comboRelease_DrawItem(object sender, DrawItemEventArgs e)
|
|
||||||
{
|
|
||||||
e.DrawBackground();
|
|
||||||
StringFormat format = new StringFormat();
|
|
||||||
format.FormatFlags = StringFormatFlags.NoClip;
|
|
||||||
format.Alignment = StringAlignment.Near;
|
|
||||||
if (e.Index >= 0 && e.Index < comboRelease.Items.Count)
|
|
||||||
{
|
|
||||||
string text = null;
|
|
||||||
Bitmap ImageToDraw = null;
|
|
||||||
if (comboRelease.Items[e.Index] is string)
|
|
||||||
{
|
|
||||||
text = (string) comboRelease.Items[e.Index];
|
|
||||||
//comboRelease.GetItemText(comboRelease.Items[e.Index]);
|
|
||||||
}
|
|
||||||
else if (comboRelease.Items[e.Index] is MusicBrainz.Release)
|
|
||||||
{
|
|
||||||
ImageToDraw = Properties.Resources.musicbrainz;
|
|
||||||
MusicBrainz.Release release = (MusicBrainz.Release) comboRelease.Items[e.Index];
|
|
||||||
text = String.Format("{0}{1} - {2}",
|
|
||||||
release.GetEvents().Count > 0 ? release.GetEvents()[0].Date.Substring(0, 4) + ": " : "",
|
|
||||||
release.GetArtist(),
|
|
||||||
release.GetTitle());
|
|
||||||
}
|
|
||||||
else if (comboRelease.Items[e.Index] is CDEntry)
|
|
||||||
{
|
|
||||||
ImageToDraw = Properties.Resources.freedb;
|
|
||||||
CDEntry cdEntry = (CDEntry)comboRelease.Items[e.Index];
|
|
||||||
text = String.Format("{0}: {1} - {2}",
|
|
||||||
cdEntry.Year,
|
|
||||||
cdEntry.Artist,
|
|
||||||
cdEntry.Title);
|
|
||||||
}
|
|
||||||
if (ImageToDraw != null)
|
|
||||||
e.Graphics.DrawImage(ImageToDraw, new Rectangle(e.Bounds.X, e.Bounds.Y, e.Bounds.Height, e.Bounds.Height));
|
|
||||||
//e.Graphics.DrawImage(ImageToDraw, new Rectangle(e.Bounds.X + e.Bounds.Width - ImageToDraw.Width, e.Bounds.Y, ImageToDraw.Width, e.Bounds.Height));
|
|
||||||
if (text != null)
|
|
||||||
e.Graphics.DrawString(text, e.Font, new SolidBrush(e.ForeColor), new RectangleF((float)e.Bounds.X + e.Bounds.Height, (float)e.Bounds.Y, (float)(e.Bounds.Width - e.Bounds.Height), (float)e.Bounds.Height), format);
|
|
||||||
}
|
|
||||||
//e.DrawFocusRectangle();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void frmChoice_Load(object sender, EventArgs e)
|
private void frmChoice_Load(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
button1.Select();
|
button1.Select();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public IEnumerable<object> Choices
|
||||||
|
{
|
||||||
|
set
|
||||||
|
{
|
||||||
|
bool isCD = false;
|
||||||
|
foreach(object i in value)
|
||||||
|
{
|
||||||
|
string text = "";
|
||||||
|
int image = -1;
|
||||||
|
if (i is string)
|
||||||
|
text = i as string;
|
||||||
|
else if (i is CUEToolsSourceFile)
|
||||||
|
{
|
||||||
|
text = (i as CUEToolsSourceFile).path;
|
||||||
|
image = 0;
|
||||||
|
}
|
||||||
|
else if (i is MusicBrainz.Release)
|
||||||
|
{
|
||||||
|
MusicBrainz.Release release = i as MusicBrainz.Release;
|
||||||
|
text = String.Format("{0}: {1} - {2}",
|
||||||
|
release.GetEvents().Count > 0 ? release.GetEvents()[0].Date.Substring(0, 4) : "YYYY",
|
||||||
|
release.GetArtist(),
|
||||||
|
release.GetTitle());
|
||||||
|
image = 2;
|
||||||
|
isCD = true;
|
||||||
|
}
|
||||||
|
else if (i is Freedb.CDEntry)
|
||||||
|
{
|
||||||
|
CDEntry cdEntry = i as CDEntry;
|
||||||
|
text = String.Format("{0}: {1} - {2}",
|
||||||
|
cdEntry.Year,
|
||||||
|
cdEntry.Artist,
|
||||||
|
cdEntry.Title);
|
||||||
|
image = 1;
|
||||||
|
isCD = true;
|
||||||
|
}
|
||||||
|
ListViewItem item = new ListViewItem(text, image);
|
||||||
|
item.Tag = i;
|
||||||
|
listChoices.Items.Add(item);
|
||||||
|
}
|
||||||
|
if (isCD)
|
||||||
|
{
|
||||||
|
if (CUE == null)
|
||||||
|
throw new Exception("selecting release information, but cue sheet has not been set");
|
||||||
|
string text = String.Format("{0}: {1} - {2}",
|
||||||
|
CUE.Year == "" ? "YYYY" : CUE.Year,
|
||||||
|
CUE.Artist == "" ? "Unknown Artist" : CUE.Artist,
|
||||||
|
CUE.Title == "" ? "Unknown Title" : CUE.Title);
|
||||||
|
ListViewItem item = new ListViewItem(text, 3);
|
||||||
|
item.Tag = CUE;
|
||||||
|
listChoices.Items.Insert(0, item);
|
||||||
|
textBox1.Hide();
|
||||||
|
listTracks.Show();
|
||||||
|
btnEdit.Show();
|
||||||
|
}
|
||||||
|
if (listChoices.Items.Count > 0)
|
||||||
|
listChoices.Items[0].Selected = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public int ChosenIndex
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return listChoices.SelectedItems.Count > 0 ? listChoices.SelectedItems[0].Index : -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public object ChosenObject
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return listChoices.SelectedItems.Count > 0 ? listChoices.SelectedItems[0].Tag : null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void frmChoice_FormClosing(object sender, FormClosingEventArgs e)
|
private void frmChoice_FormClosing(object sender, FormClosingEventArgs e)
|
||||||
{
|
{
|
||||||
if (e.CloseReason != CloseReason.None || DialogResult != DialogResult.OK)
|
object item = ChosenObject;
|
||||||
|
if (e.CloseReason != CloseReason.None || DialogResult != DialogResult.OK || item == null)
|
||||||
return;
|
return;
|
||||||
if (comboRelease.SelectedItem != null && comboRelease.SelectedItem is MusicBrainz.Release)
|
if (item is MusicBrainz.Release)
|
||||||
CUE.FillFromMusicBrainz((MusicBrainz.Release)comboRelease.SelectedItem);
|
CUE.FillFromMusicBrainz((MusicBrainz.Release)item);
|
||||||
|
else if (item is CDEntry)
|
||||||
|
CUE.FillFromFreedb((CDEntry)item);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void listChoices_SelectedIndexChanged(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
object item = ChosenObject;
|
||||||
|
if (item != null && item is CUEToolsSourceFile)
|
||||||
|
textBox1.Text = (item as CUEToolsSourceFile).contents;
|
||||||
|
else if (item != null && item is MusicBrainz.Release)
|
||||||
|
{
|
||||||
|
MusicBrainz.Release release = item as MusicBrainz.Release;
|
||||||
|
listTracks.Items.Clear();
|
||||||
|
foreach (MusicBrainz.Track track in release.GetTracks())
|
||||||
|
{
|
||||||
|
listTracks.Items.Add(new ListViewItem(new string[] {
|
||||||
|
track.GetTitle(),
|
||||||
|
(listTracks.Items.Count + 1).ToString(),
|
||||||
|
CUE == null ? "" : CUE.TOC[listTracks.Items.Count + 1].LengthMSF
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (item != null && item is CDEntry)
|
||||||
|
{
|
||||||
|
CDEntry cdEntry = item as CDEntry;
|
||||||
|
listTracks.Items.Clear();
|
||||||
|
foreach (Freedb.Track track in cdEntry.Tracks)
|
||||||
|
{
|
||||||
|
listTracks.Items.Add(new ListViewItem(new string[] {
|
||||||
|
track.Title,
|
||||||
|
(listTracks.Items.Count + 1).ToString(),
|
||||||
|
CUE == null ? "" : CUE.TOC[listTracks.Items.Count + 1].LengthMSF
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (item != null && item is CUESheet)
|
||||||
|
{
|
||||||
|
CUESheet cueSheet = item as CUESheet;
|
||||||
|
listTracks.Items.Clear();
|
||||||
|
foreach (TrackInfo track in cueSheet.Tracks)
|
||||||
|
{
|
||||||
|
listTracks.Items.Add(new ListViewItem(new string[] {
|
||||||
|
track.Title,
|
||||||
|
(listTracks.Items.Count + 1).ToString(),
|
||||||
|
CUE == null ? "" : CUE.TOC[listTracks.Items.Count + 1].LengthMSF
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
}
|
||||||
else
|
else
|
||||||
if (comboRelease.SelectedItem != null && comboRelease.SelectedItem is CDEntry)
|
{
|
||||||
CUE.FillFromFreedb((CDEntry)comboRelease.SelectedItem);
|
listTracks.Items.Clear();
|
||||||
else
|
textBox1.Text = "";
|
||||||
return;
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void btnEdit_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
object item = ChosenObject;
|
||||||
|
if (item == null || CUE == null)
|
||||||
|
return;
|
||||||
|
if (item is MusicBrainz.Release)
|
||||||
|
CUE.FillFromMusicBrainz((MusicBrainz.Release)item);
|
||||||
|
else if (item is CDEntry)
|
||||||
|
CUE.FillFromFreedb((CDEntry)item);
|
||||||
|
else if (!(item is CUESheet))
|
||||||
|
return;
|
||||||
|
listChoices.Items[0].Selected = true;
|
||||||
|
listChoices.Items[0].Text = String.Format("{0}: {1} - {2}",
|
||||||
|
CUE.Year == "" ? "YYYY" : CUE.Year,
|
||||||
|
CUE.Artist == "" ? "Unknown Artist" : CUE.Artist,
|
||||||
|
CUE.Title == "" ? "Unknown Title" : CUE.Title);
|
||||||
frmProperties frm = new frmProperties();
|
frmProperties frm = new frmProperties();
|
||||||
frm.CUE = CUE;
|
frm.CUE = CUE;
|
||||||
if (frm.ShowDialog(this) != DialogResult.OK)
|
if (frm.ShowDialog(this) == DialogResult.OK)
|
||||||
e.Cancel = true;
|
listChoices.Items[0].Text = String.Format("{0}: {1} - {2}",
|
||||||
|
CUE.Year == "" ? "YYYY" : CUE.Year,
|
||||||
|
CUE.Artist == "" ? "Unknown Artist" : CUE.Artist,
|
||||||
|
CUE.Title == "" ? "Unknown Title" : CUE.Title);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void listTracks_DoubleClick(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
listTracks.FocusedItem.BeginEdit();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void listTracks_KeyDown(object sender, KeyEventArgs e)
|
||||||
|
{
|
||||||
|
if (e.KeyCode == Keys.F2)
|
||||||
|
listTracks.FocusedItem.BeginEdit();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void listTracks_BeforeLabelEdit(object sender, LabelEditEventArgs e)
|
||||||
|
{
|
||||||
|
object item = ChosenObject;
|
||||||
|
if (item == null || !(item is CUESheet))
|
||||||
|
{
|
||||||
|
e.CancelEdit = true;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void listTracks_AfterLabelEdit(object sender, LabelEditEventArgs e)
|
||||||
|
{
|
||||||
|
if (e.Label != null)
|
||||||
|
{
|
||||||
|
CUE.Tracks[e.Item].Title = e.Label;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void listTracks_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
|
||||||
|
{
|
||||||
|
if (e.KeyCode == Keys.Enter)
|
||||||
|
{
|
||||||
|
if (listTracks.FocusedItem.Index + 1 < listTracks.Items.Count) // && e.editing
|
||||||
|
{
|
||||||
|
listTracks.FocusedItem.Selected = false;
|
||||||
|
listTracks.FocusedItem = listTracks.Items[listTracks.FocusedItem.Index + 1];
|
||||||
|
listTracks.FocusedItem.Selected = true;
|
||||||
|
listTracks.FocusedItem.BeginEdit();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -117,39 +117,14 @@
|
|||||||
<resheader name="writer">
|
<resheader name="writer">
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
</resheader>
|
</resheader>
|
||||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
|
||||||
<data name="comboRelease.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
|
||||||
<value>Top, Left, Right</value>
|
|
||||||
</data>
|
|
||||||
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
<data name="comboRelease.Location" type="System.Drawing.Point, System.Drawing">
|
|
||||||
<value>12, 12</value>
|
|
||||||
</data>
|
|
||||||
<data name="comboRelease.Size" type="System.Drawing.Size, System.Drawing">
|
|
||||||
<value>543, 21</value>
|
|
||||||
</data>
|
|
||||||
<assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
|
||||||
<data name="comboRelease.TabIndex" type="System.Int32, mscorlib">
|
|
||||||
<value>22</value>
|
|
||||||
</data>
|
|
||||||
<data name=">>comboRelease.Name" xml:space="preserve">
|
|
||||||
<value>comboRelease</value>
|
|
||||||
</data>
|
|
||||||
<data name=">>comboRelease.Type" xml:space="preserve">
|
|
||||||
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</data>
|
|
||||||
<data name=">>comboRelease.Parent" xml:space="preserve">
|
|
||||||
<value>$this</value>
|
|
||||||
</data>
|
|
||||||
<data name=">>comboRelease.ZOrder" xml:space="preserve">
|
|
||||||
<value>1</value>
|
|
||||||
</data>
|
|
||||||
<data name="button1.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="button1.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>480, 45</value>
|
<value>488, 293</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="button1.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="button1.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>75, 23</value>
|
<value>75, 23</value>
|
||||||
</data>
|
</data>
|
||||||
|
<assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||||
<data name="button1.TabIndex" type="System.Int32, mscorlib">
|
<data name="button1.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>23</value>
|
<value>23</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -166,6 +141,197 @@
|
|||||||
<value>$this</value>
|
<value>$this</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>button1.ZOrder" xml:space="preserve">
|
<data name=">>button1.ZOrder" xml:space="preserve">
|
||||||
|
<value>4</value>
|
||||||
|
</data>
|
||||||
|
<data name="columnHeader1.Width" type="System.Int32, mscorlib">
|
||||||
|
<value>540</value>
|
||||||
|
</data>
|
||||||
|
<data name="listChoices.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>12, 12</value>
|
||||||
|
</data>
|
||||||
|
<data name="listChoices.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>551, 72</value>
|
||||||
|
</data>
|
||||||
|
<metadata name="imageList1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>17, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<data name="imageList1.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>
|
||||||
|
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
|
||||||
|
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||||
|
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAo
|
||||||
|
CwAAAk1TRnQBSQFMAgEBBAEAAQwBAAEEAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||||
|
AwABQAMAASADAAEBAQABCAYAAQgYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||||
|
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||||
|
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||||
|
AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
|
||||||
|
AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM
|
||||||
|
AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA
|
||||||
|
ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz
|
||||||
|
AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ
|
||||||
|
AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM
|
||||||
|
AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA
|
||||||
|
AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA
|
||||||
|
AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ
|
||||||
|
AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/
|
||||||
|
AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA
|
||||||
|
AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm
|
||||||
|
ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ
|
||||||
|
Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz
|
||||||
|
AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA
|
||||||
|
AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM
|
||||||
|
AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM
|
||||||
|
ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM
|
||||||
|
Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA
|
||||||
|
AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM
|
||||||
|
AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ
|
||||||
|
AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
|
||||||
|
AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
|
||||||
|
AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
|
||||||
|
AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD//8A/wD/AP8ACgAG6wUA
|
||||||
|
EAQBAAF6AlELegYABusIAAHvAesB7wTzAe8B6wHvAwAEBAP/AQcB7AP/AewDBAFRAQABEQETAQABDwp6
|
||||||
|
AwAB7wHrAe8E8wHvAesB7wUAAusB7wbzAe8C6wIAAwQCBwEEAf8BBwHsAf8BBAHsAf8DBAEAAbwD/wET
|
||||||
|
AQ8JegIAAusB7wbzAe8C6wMAAe8B6wrzAesB7wEAAwQBBwHsAQQCBwHsAf8CBAH/AwQBAAG8BP8BAAl6
|
||||||
|
AQAB7wHrCvMB6wHvAQAB7wHrDPMB6wHvAwQB7AH/AQQB/wEHAewB/wHsAf8BBwMEAVEBDwHrAgcBvAEA
|
||||||
|
AREEAAERA3oBAAHrDPMB6wEAAesB7wzzAe8B6wQEAuwCBwHsAf8C7AQEAXoBUQEPAgAB/wEAAQ8B9wL/
|
||||||
|
AZICEQJ6AesO8wLrAfMDAAHzAQAC8wEAAfMB7wIAAfMB6wYEAgcB7AH/BgQEegEAAf8BAAERBP8BvAEA
|
||||||
|
AnoB6wHzAesCAAHzAesCAAHrAfMDAAHzAusB8wEAA/MBAALzAQAB8wEAA/MB6xAEBK4BAAH/AgABEwG8
|
||||||
|
A/8BAAKuAesB8wEAA/MBAALzAQAB8wEAA/MC6wHzAgAC8wQAAfMBAAPzAesQ/wSuAQAB/wEAARIBDwMA
|
||||||
|
Af8BAAKuAesB8wEAA/MBAALzAQAB8wIAAvMC6wHzAQAD8wEAAvMBAAHzAQAD8wHrAf8BBAEHAf8BBAL/
|
||||||
|
AwQBBwH/AwQB/wSuAQAB/wEPAQABEQISAQAB/wEAAq4B6wHzAQAD8wEAAvMBAAHzAQAD8wLrAe8DAAHz
|
||||||
|
Ae8CAAHvAfMB7wIAAe8B6wH/AQQBBwH/AQQC/wEEA/8BBwEEAf8BBwH/BK4BAAL/AZIBEQEAAQ8BAAH/
|
||||||
|
AQACrgHrAfMB6wIAAfMBAALzAQAB8wMAAfMB6wHvAesM8wHrAe8B/wEEAQcB/wEEAv8BBALsAQQBBwEE
|
||||||
|
AewCBASuAQABBwP/AbwB6gEAAf8BAAKuAQAB6wzzAesCAAHvAesK8wHrAe8BAAH/AQQB7AH/AgQBBwEE
|
||||||
|
AQcB7AEEAf8BBAEHAQQBBwSuAREBEwEHBv8BAAKuAQAB7wHrCvMB6wHvAwAC6wHvBvMB7wLrAgAB/wEE
|
||||||
|
AewB/wMHAf8B7AEHA/8B7AEHAf8FrgERAQABEQGSBP8BAAKuAgAC6wHvBvMB7wLrBQAB7wHrAe8E8wHv
|
||||||
|
AesB7wMAAf8CBAHsDP8HrgERAQABDwHrAbwB/wEAAq4DAAHvAesB7wTzAe8B6wHvBwAB7wbrAe8EABD/
|
||||||
|
AQAJrgEPAQABEwERAa4GAAbrBQABQgFNAT4HAAE+AwABKAMAAUADAAEgAwABAQEAAQEGAAEBFgAD/4EA
|
||||||
|
AfgBHwIAAYABAQH4AR8B4AEHBAAB4AEHAcABAwQAAcABAwGAAQEEAAGAAQEGAAGAAQE2AAGAAQEBgAEB
|
||||||
|
BAABgAEBAcABAwQAAcABAwHgAQcEAAHgAQcB8AEPAgABgAEBAfgBHws=
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="listChoices.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>24</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>listChoices.Name" xml:space="preserve">
|
||||||
|
<value>listChoices</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>listChoices.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ListView, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>listChoices.Parent" xml:space="preserve">
|
||||||
|
<value>$this</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>listChoices.ZOrder" xml:space="preserve">
|
||||||
|
<value>3</value>
|
||||||
|
</data>
|
||||||
|
<data name="textBox1.Font" type="System.Drawing.Font, System.Drawing">
|
||||||
|
<value>Courier New, 8pt</value>
|
||||||
|
</data>
|
||||||
|
<data name="textBox1.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>12, 90</value>
|
||||||
|
</data>
|
||||||
|
<data name="textBox1.Multiline" type="System.Boolean, mscorlib">
|
||||||
|
<value>True</value>
|
||||||
|
</data>
|
||||||
|
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||||
|
<data name="textBox1.ScrollBars" type="System.Windows.Forms.ScrollBars, System.Windows.Forms">
|
||||||
|
<value>Vertical</value>
|
||||||
|
</data>
|
||||||
|
<data name="textBox1.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>551, 197</value>
|
||||||
|
</data>
|
||||||
|
<data name="textBox1.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>25</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>textBox1.Name" xml:space="preserve">
|
||||||
|
<value>textBox1</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>textBox1.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>textBox1.Parent" xml:space="preserve">
|
||||||
|
<value>$this</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>textBox1.ZOrder" xml:space="preserve">
|
||||||
|
<value>2</value>
|
||||||
|
</data>
|
||||||
|
<data name="listTracks.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||||
|
<value>Top, Left, Right</value>
|
||||||
|
</data>
|
||||||
|
<data name="Title.DisplayIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>1</value>
|
||||||
|
</data>
|
||||||
|
<data name="Title.Text" xml:space="preserve">
|
||||||
|
<value>Title</value>
|
||||||
|
</data>
|
||||||
|
<data name="Title.Width" type="System.Int32, mscorlib">
|
||||||
|
<value>455</value>
|
||||||
|
</data>
|
||||||
|
<data name="TrackNo.DisplayIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>0</value>
|
||||||
|
</data>
|
||||||
|
<data name="TrackNo.Text" xml:space="preserve">
|
||||||
|
<value>#</value>
|
||||||
|
</data>
|
||||||
|
<data name="TrackNo.Width" type="System.Int32, mscorlib">
|
||||||
|
<value>30</value>
|
||||||
|
</data>
|
||||||
|
<data name="Length.Text" xml:space="preserve">
|
||||||
|
<value>Length</value>
|
||||||
|
</data>
|
||||||
|
<data name="Length.Width" type="System.Int32, mscorlib">
|
||||||
|
<value>62</value>
|
||||||
|
</data>
|
||||||
|
<data name="listTracks.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>12, 90</value>
|
||||||
|
</data>
|
||||||
|
<data name="listTracks.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>551, 197</value>
|
||||||
|
</data>
|
||||||
|
<data name="listTracks.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>26</value>
|
||||||
|
</data>
|
||||||
|
<data name="listTracks.Visible" type="System.Boolean, mscorlib">
|
||||||
|
<value>False</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>listTracks.Name" xml:space="preserve">
|
||||||
|
<value>listTracks</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>listTracks.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ListView, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>listTracks.Parent" xml:space="preserve">
|
||||||
|
<value>$this</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>listTracks.ZOrder" xml:space="preserve">
|
||||||
|
<value>1</value>
|
||||||
|
</data>
|
||||||
|
<data name="btnEdit.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>407, 293</value>
|
||||||
|
</data>
|
||||||
|
<data name="btnEdit.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>75, 23</value>
|
||||||
|
</data>
|
||||||
|
<data name="btnEdit.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>27</value>
|
||||||
|
</data>
|
||||||
|
<data name="btnEdit.Text" xml:space="preserve">
|
||||||
|
<value>Edit</value>
|
||||||
|
</data>
|
||||||
|
<data name="btnEdit.Visible" type="System.Boolean, mscorlib">
|
||||||
|
<value>False</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>btnEdit.Name" xml:space="preserve">
|
||||||
|
<value>btnEdit</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>btnEdit.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>btnEdit.Parent" xml:space="preserve">
|
||||||
|
<value>$this</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>btnEdit.ZOrder" xml:space="preserve">
|
||||||
<value>0</value>
|
<value>0</value>
|
||||||
</data>
|
</data>
|
||||||
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||||
@@ -175,7 +341,7 @@
|
|||||||
<value>6, 13</value>
|
<value>6, 13</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
|
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>567, 80</value>
|
<value>575, 328</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
|
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
|
||||||
<value>CenterParent</value>
|
<value>CenterParent</value>
|
||||||
@@ -183,6 +349,36 @@
|
|||||||
<data name="$this.Text" xml:space="preserve">
|
<data name="$this.Text" xml:space="preserve">
|
||||||
<value>Select the best match</value>
|
<value>Select the best match</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name=">>columnHeader1.Name" xml:space="preserve">
|
||||||
|
<value>columnHeader1</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>columnHeader1.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>imageList1.Name" xml:space="preserve">
|
||||||
|
<value>imageList1</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>imageList1.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ImageList, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>Title.Name" xml:space="preserve">
|
||||||
|
<value>Title</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>Title.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>TrackNo.Name" xml:space="preserve">
|
||||||
|
<value>TrackNo</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>TrackNo.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>Length.Name" xml:space="preserve">
|
||||||
|
<value>Length</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>Length.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
<data name=">>$this.Name" xml:space="preserve">
|
<data name=">>$this.Name" xml:space="preserve">
|
||||||
<value>frmChoice</value>
|
<value>frmChoice</value>
|
||||||
</data>
|
</data>
|
||||||
|
|||||||
@@ -97,7 +97,7 @@ namespace UnRarDotNet
|
|||||||
while (_buffer == null && !_eof && !_close)
|
while (_buffer == null && !_eof && !_close)
|
||||||
Monitor.Wait(this);
|
Monitor.Wait(this);
|
||||||
if (_close)
|
if (_close)
|
||||||
throw new IOException("Decompression failed", _ex);
|
throw _ex ?? new IOException("Decompression failed");
|
||||||
if (_buffer == null)
|
if (_buffer == null)
|
||||||
return total;
|
return total;
|
||||||
if (_seek_to != null)
|
if (_seek_to != null)
|
||||||
|
|||||||
Reference in New Issue
Block a user