This commit is contained in:
chudov
2009-05-01 15:16:26 +00:00
parent 599c1b2766
commit ade94128bb
59 changed files with 8117 additions and 4534 deletions

View File

@@ -102,12 +102,6 @@
<Compile Include="frmChoice.Designer.cs">
<DependentUpon>frmChoice.cs</DependentUpon>
</Compile>
<Compile Include="frmFilenameCorrector.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmFilenameCorrector.Designer.cs">
<DependentUpon>frmFilenameCorrector.cs</DependentUpon>
</Compile>
<Compile Include="frmPassword.cs">
<SubType>Form</SubType>
</Compile>
@@ -170,14 +164,6 @@
<SubType>Designer</SubType>
<DependentUpon>frmCUETools.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmFilenameCorrector.de-DE.resx">
<DependentUpon>frmFilenameCorrector.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="frmFilenameCorrector.resx">
<SubType>Designer</SubType>
<DependentUpon>frmFilenameCorrector.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmPassword.de-DE.resx">
<DependentUpon>frmPassword.cs</DependentUpon>
<SubType>Designer</SubType>
@@ -271,13 +257,30 @@
<ItemGroup>
<None Include="Resources\accuraterip.jpg" />
<Content Include="Resources\accuraterip_16.bmp" />
<None Include="Resources\ape.ico" />
<Content Include="Resources\AR.ico" />
<Content Include="Resources\cd2.png" />
<None Include="Resources\cog.ico" />
<Content Include="Resources\cue.ico" />
<None Include="Resources\cue2.ico" />
<None Include="Resources\cue3.ico" />
<Content Include="Resources\cue_32.ico" />
<Content Include="Resources\eac.ico" />
<Content Include="Resources\flac.ico" />
<None Include="Resources\freedb.ico" />
<Content Include="Resources\icon-wv.png" />
<None Include="Resources\cuetools.icl" />
<None Include="Resources\settings.ico" />
<None Include="Resources\information.ico" />
<None Include="Resources\info2.bmp" />
<None Include="Resources\information.png" />
<None Include="Resources\ipod_sound.ico" />
<None Include="Resources\ogg.ico" />
<None Include="Resources\mp3.ico" />
<Content Include="Resources\wav.bmp" />
<None Include="Resources\wv.ico" />
<None Include="Resources\wave.ico" />
<None Include="Resources\tta.ico" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.

View File

@@ -14,15 +14,13 @@ namespace JDP {
[STAThread]
static void Main(string[] args)
{
if (args.Length > 1 && (args[0] == "/verify" || args[0] == "/crc" || args[0] == "/convert" || args[0] == "/fix"))
if (args.Length > 1 && (args[0] == "/verify" || args[0] == "/convert"))
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
frmBatch batch = new frmBatch();
batch.AccurateRip =
args[0] == "/convert" ? CUEAction.VerifyAndConvert :
args[0] == "/fix" ? CUEAction.VerifyThenConvert :
args[0] == "/crc" ? CUEAction.VerifyPlusCRCs :
CUEAction.Verify;
if (args.Length == 2 && args[1][0] != '@')
@@ -53,8 +51,9 @@ namespace JDP {
string myId = "BZ92759C-63Q7-444e-ADA6-E495634A493D";
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
CUEConfig config = new CUEConfig();
config.Load(new SettingsReader("CUE Tools", "settings.txt"));
config.Load(new SettingsReader("CUE Tools", "settings.txt", Application.ExecutablePath));
try { Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo(config.language); }
catch { }
frmCUETools form = new frmCUETools();
@@ -80,7 +79,7 @@ namespace JDP {
{
private static IpcChannel m_IPCChannel = null;
public delegate void ReceiveDelegate(string[] args);
public delegate bool ReceiveDelegate(string[] args);
static private ReceiveDelegate m_Receive = null;
static public ReceiveDelegate Receiver
@@ -138,24 +137,25 @@ namespace JDP {
SingletonController ctrl;
IpcChannel channel = new IpcChannel();
System.Runtime.Remoting.Channels.ChannelServices.RegisterChannel(channel, false);
bool result = false;
try
{
ctrl = (SingletonController)Activator.GetObject(typeof(SingletonController), "ipc://" + id + "/SingletonController");
ctrl.Receive(s);
result = ctrl.Receive(s);
}
catch
{
}
if (!result)
MessageBox.Show("Another instance of the application seems to be running, but not responding.",
"Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
public void Receive(string[] s)
public bool Receive(string[] s)
{
if (m_Receive != null)
{
m_Receive(s);
}
if (m_Receive == null)
return false;
return m_Receive(s);
}
}
}

View File

@@ -74,6 +74,27 @@ namespace JDP.Properties {
}
}
internal static System.Drawing.Icon ape {
get {
object obj = ResourceManager.GetObject("ape", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
internal static System.Drawing.Bitmap AR {
get {
object obj = ResourceManager.GetObject("AR", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
internal static System.Drawing.Bitmap cog {
get {
object obj = ResourceManager.GetObject("cog", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
internal static System.Drawing.Icon cue {
get {
object obj = ResourceManager.GetObject("cue", resourceCulture);
@@ -81,6 +102,20 @@ namespace JDP.Properties {
}
}
internal static System.Drawing.Icon cue2 {
get {
object obj = ResourceManager.GetObject("cue2", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
internal static System.Drawing.Icon cue3 {
get {
object obj = ResourceManager.GetObject("cue3", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
internal static System.Drawing.Bitmap flac {
get {
object obj = ResourceManager.GetObject("flac", resourceCulture);
@@ -88,6 +123,13 @@ namespace JDP.Properties {
}
}
internal static System.Drawing.Icon flac1 {
get {
object obj = ResourceManager.GetObject("flac1", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
internal static System.Drawing.Bitmap freedb {
get {
object obj = ResourceManager.GetObject("freedb", resourceCulture);
@@ -95,6 +137,13 @@ namespace JDP.Properties {
}
}
internal static System.Drawing.Icon freedb1 {
get {
object obj = ResourceManager.GetObject("freedb1", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
/// <summary>
/// Looks up a localized string similar to &amp;Go.
/// </summary>
@@ -104,6 +153,34 @@ namespace JDP.Properties {
}
}
internal static System.Drawing.Bitmap info2 {
get {
object obj = ResourceManager.GetObject("info2", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
internal static System.Drawing.Bitmap information {
get {
object obj = ResourceManager.GetObject("information", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
internal static System.Drawing.Icon ipod_sound {
get {
object obj = ResourceManager.GetObject("ipod_sound", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
internal static System.Drawing.Icon mp3 {
get {
object obj = ResourceManager.GetObject("mp3", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
internal static System.Drawing.Bitmap musicbrainz {
get {
object obj = ResourceManager.GetObject("musicbrainz", resourceCulture);
@@ -111,6 +188,27 @@ namespace JDP.Properties {
}
}
internal static System.Drawing.Icon musicbrainz1 {
get {
object obj = ResourceManager.GetObject("musicbrainz1", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
internal static System.Drawing.Icon ogg {
get {
object obj = ResourceManager.GetObject("ogg", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
internal static System.Drawing.Bitmap settings {
get {
object obj = ResourceManager.GetObject("settings", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized string similar to Stop.
/// </summary>
@@ -120,6 +218,13 @@ namespace JDP.Properties {
}
}
internal static System.Drawing.Icon tta {
get {
object obj = ResourceManager.GetObject("tta", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
/// <summary>
/// Looks up a localized string similar to Verify.
/// </summary>
@@ -136,11 +241,25 @@ namespace JDP.Properties {
}
}
internal static System.Drawing.Icon wave {
get {
object obj = ResourceManager.GetObject("wave", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
internal static System.Drawing.Bitmap wv {
get {
object obj = ResourceManager.GetObject("wv", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
internal static System.Drawing.Icon wv1 {
get {
object obj = ResourceManager.GetObject("wv1", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
}
}

View File

@@ -117,38 +117,89 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="Verify" xml:space="preserve">
<value>Verify</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="accuraterip16" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\resources\accuraterip_16.bmp;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="wv" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icon-wv.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="ipod_sound" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ipod_sound.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="wv1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\wv.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Stop" xml:space="preserve">
<value>Stop</value>
</data>
<data name="freedb" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\freedb.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="flac" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\flac.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="accuraterip" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\accuraterip.jpg;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="musicbrainz" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\musicbrainz.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Go" xml:space="preserve">
<value>&amp;Go</value>
</data>
<data name="Verify" xml:space="preserve">
<value>Verify</value>
</data>
<data name="cog" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\cog.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="wav" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\wav.bmp;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="settings" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\settings.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="wave" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\wave.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="freedb1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\freedb.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="cue" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\cue.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="AR" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\AR.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="wv" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icon-wv.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="accuraterip" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\accuraterip.jpg;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="info2" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\info2.bmp;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ape" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ape.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="musicbrainz1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\musicbrainz.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="tta" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\tta.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="flac" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\flac.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="flac1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\flac.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="freedb" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\freedb.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="information" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\information.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="cue2" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\cue2.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="cue3" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\cue3.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="mp3" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\mp3.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ogg" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ogg.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
</root>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
CUETools/Resources/ape.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

BIN
CUETools/Resources/cd2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 673 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 639 B

BIN
CUETools/Resources/cog.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
CUETools/Resources/cue2.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

BIN
CUETools/Resources/cue3.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

BIN
CUETools/Resources/eac3.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 822 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 778 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
CUETools/Resources/mp3.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
CUETools/Resources/ogg.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
CUETools/Resources/tta.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

BIN
CUETools/Resources/wave.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 610 B

BIN
CUETools/Resources/wv.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -18,7 +18,7 @@ namespace JDP
InitializeComponent();
_config = new CUEConfig();
_cueStyle = CUEStyle.SingleFile;
_audioFormat = OutputAudioFormat.WAV;
_audioFormat = "wav";
_accurateRip = CUEAction.Verify;
_batchPaths = new List<string>();
}
@@ -44,12 +44,11 @@ namespace JDP
CUESheet _workClass;
CUEConfig _config;
CUEStyle _cueStyle;
OutputAudioFormat _audioFormat;
string _audioFormat;
string pathIn;
string pathOut;
CUEAction _accurateRip;
bool _reducePriority;
bool _lossyWAV;
DateTime _startedAt;
List<string> _batchPaths;
@@ -132,8 +131,9 @@ namespace JDP
else
cueName = Path.GetFileNameWithoutExtension(pathIn) + ".cue";
bool outputAudio = _accurateRip != CUEAction.Verify && _accurateRip != CUEAction.VerifyPlusCRCs;
bool outputAudio = _accurateRip != CUEAction.Verify;
cueSheet.Action = _accurateRip;
cueSheet.OutputStyle = _cueStyle;
cueSheet.Open(pathIn);
cueSheet.Lookup();
if (outputAudio)
@@ -155,15 +155,15 @@ namespace JDP
}
else
pathOut = Path.Combine(Path.GetDirectoryName(pathIn) ?? pathIn, cueName);
cueSheet.GenerateFilenames(_audioFormat, _lossyWAV, pathOut);
cueSheet.GenerateFilenames(AudioEncoderType.Lossless, _audioFormat, pathOut);
if (outputAudio)
{
if (_cueStyle == CUEStyle.SingleFileWithCUE)
cueSheet.SingleFilename = Path.ChangeExtension(Path.GetFileName(pathOut), General.FormatExtension(_audioFormat, _config));
cueSheet.SingleFilename = Path.ChangeExtension(Path.GetFileName(pathOut), "." + _audioFormat);
}
cueSheet.UsePregapForFirstTrackInSingleFile = false;
cueSheet.WriteAudioFiles(Path.GetDirectoryName(pathOut), _cueStyle);
cueSheet.Go();
this.Invoke((MethodInvoker)delegate()
{
if (_batchPaths.Count == 0)
@@ -260,18 +260,18 @@ namespace JDP
private void frmBatch_Load(object sender, EventArgs e)
{
textBox1.Hide();
SettingsReader sr = new SettingsReader("CUE Tools", "settings.txt");
SettingsReader sr = new SettingsReader("CUE Tools", "settings.txt", Application.ExecutablePath);
_config.Load(sr);
_reducePriority = sr.LoadBoolean("ReducePriority") ?? true;
_cueStyle = (CUEStyle?)sr.LoadInt32("CUEStyle", null, null) ?? CUEStyle.SingleFileWithCUE;
_audioFormat = (OutputAudioFormat?)sr.LoadInt32("OutputAudioFormat", null, null) ?? OutputAudioFormat.WAV;
_lossyWAV = sr.LoadBoolean("LossyWav") ?? false;
_audioFormat = sr.Load("OutputAudioFmt") ?? "flac";
//_lossyWAV = sr.LoadBoolean("LossyWav") ?? false;
if (_reducePriority)
Process.GetCurrentProcess().PriorityClass = System.Diagnostics.ProcessPriorityClass.Idle;
if (_accurateRip != CUEAction.Verify && _accurateRip != CUEAction.VerifyPlusCRCs)
if (_accurateRip != CUEAction.Verify)
txtOutputFile.Show();
StartConvert();

View File

@@ -44,25 +44,17 @@ namespace JDP {
this.rbAppendFilename = new System.Windows.Forms.RadioButton();
this.txtAppendFilename = new System.Windows.Forms.TextBox();
this.grpAudioOutput = new System.Windows.Forms.GroupBox();
this.btnCodec = new System.Windows.Forms.Button();
this.rbUDC1 = new System.Windows.Forms.RadioButton();
this.rbTTA = new System.Windows.Forms.RadioButton();
this.chkLossyWAV = new System.Windows.Forms.CheckBox();
this.rbAPE = new System.Windows.Forms.RadioButton();
this.rbNoAudio = new System.Windows.Forms.RadioButton();
this.rbWavPack = new System.Windows.Forms.RadioButton();
this.rbWAV = new System.Windows.Forms.RadioButton();
this.rbFLAC = new System.Windows.Forms.RadioButton();
this.labelFormat = new System.Windows.Forms.Label();
this.comboBoxAudioFormat = new System.Windows.Forms.ComboBox();
this.btnSettings = new System.Windows.Forms.Button();
this.grpAction = new System.Windows.Forms.GroupBox();
this.comboBoxScript = new System.Windows.Forms.ComboBox();
this.rbActionCorrectFilenames = new System.Windows.Forms.RadioButton();
this.rbActionCreateCUESheet = new System.Windows.Forms.RadioButton();
this.chkMulti = new System.Windows.Forms.CheckBox();
this.rbActionVerifyAndCRCs = new System.Windows.Forms.RadioButton();
this.rbActionVerifyAndEncode = new System.Windows.Forms.RadioButton();
this.rbActionVerifyThenEncode = new System.Windows.Forms.RadioButton();
this.rbActionVerify = new System.Windows.Forms.RadioButton();
this.rbActionEncode = new System.Windows.Forms.RadioButton();
this.chkMulti = new System.Windows.Forms.CheckBox();
this.txtPreGapLength = new System.Windows.Forms.MaskedTextBox();
this.label2 = new System.Windows.Forms.Label();
this.label1 = new System.Windows.Forms.Label();
@@ -84,14 +76,6 @@ namespace JDP {
this.rbFreedbAlways = new System.Windows.Forms.RadioButton();
this.rbFreedbIf = new System.Windows.Forms.RadioButton();
this.rbFreedbNever = new System.Windows.Forms.RadioButton();
this.contextMenuStripUDC = new System.Windows.Forms.ContextMenuStrip(this.components);
this.toolStripMenuItem2 = 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.oGGToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.txtInputPath = new System.Windows.Forms.TextBox();
this.grpInput = new System.Windows.Forms.GroupBox();
this.textBatchReport = new System.Windows.Forms.TextBox();
@@ -105,18 +89,30 @@ namespace JDP {
this.setAsMyMusicFolderToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.resetToOriginalLocationToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.panel1 = new System.Windows.Forms.Panel();
this.groupBoxCorrector = new System.Windows.Forms.GroupBox();
this.rbCorrectorLocateFiles = new System.Windows.Forms.RadioButton();
this.rbCorrectorChangeExtension = new System.Windows.Forms.RadioButton();
this.checkBoxCorrectorOverwrite = new System.Windows.Forms.CheckBox();
this.labelCorrectorFormat = new System.Windows.Forms.Label();
this.comboBoxCorrectorFormat = new System.Windows.Forms.ComboBox();
this.radioButtonAudioLossless = new System.Windows.Forms.RadioButton();
this.radioButtonAudioHybrid = new System.Windows.Forms.RadioButton();
this.radioButtonAudioLossy = new System.Windows.Forms.RadioButton();
this.radioButtonAudioNone = new System.Windows.Forms.RadioButton();
this.comboBoxEncoder = new System.Windows.Forms.ComboBox();
this.checkBoxAdvancedMode = new System.Windows.Forms.CheckBox();
this.grpOutputStyle.SuspendLayout();
this.grpOutputPathGeneration.SuspendLayout();
this.grpAudioOutput.SuspendLayout();
this.grpAction.SuspendLayout();
this.statusStrip1.SuspendLayout();
this.grpFreedb.SuspendLayout();
this.contextMenuStripUDC.SuspendLayout();
this.grpInput.SuspendLayout();
this.grpExtra.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.numericWriteOffset)).BeginInit();
this.contextMenuStripFileTree.SuspendLayout();
this.panel1.SuspendLayout();
this.groupBoxCorrector.SuspendLayout();
this.SuspendLayout();
//
// btnConvert
@@ -193,6 +189,7 @@ namespace JDP {
//
// btnAbout
//
this.btnAbout.Image = global::JDP.Properties.Resources.information;
resources.ApplyResources(this.btnAbout, "btnAbout");
this.btnAbout.Name = "btnAbout";
this.btnAbout.UseVisualStyleBackColor = true;
@@ -263,91 +260,34 @@ namespace JDP {
//
// grpAudioOutput
//
this.grpAudioOutput.Controls.Add(this.btnCodec);
this.grpAudioOutput.Controls.Add(this.rbUDC1);
this.grpAudioOutput.Controls.Add(this.rbTTA);
this.grpAudioOutput.Controls.Add(this.chkLossyWAV);
this.grpAudioOutput.Controls.Add(this.rbAPE);
this.grpAudioOutput.Controls.Add(this.rbNoAudio);
this.grpAudioOutput.Controls.Add(this.rbWavPack);
this.grpAudioOutput.Controls.Add(this.rbWAV);
this.grpAudioOutput.Controls.Add(this.rbFLAC);
this.grpAudioOutput.Controls.Add(this.comboBoxEncoder);
this.grpAudioOutput.Controls.Add(this.radioButtonAudioNone);
this.grpAudioOutput.Controls.Add(this.radioButtonAudioLossy);
this.grpAudioOutput.Controls.Add(this.radioButtonAudioHybrid);
this.grpAudioOutput.Controls.Add(this.radioButtonAudioLossless);
this.grpAudioOutput.Controls.Add(this.labelFormat);
this.grpAudioOutput.Controls.Add(this.comboBoxAudioFormat);
resources.ApplyResources(this.grpAudioOutput, "grpAudioOutput");
this.grpAudioOutput.Name = "grpAudioOutput";
this.grpAudioOutput.TabStop = false;
//
// btnCodec
// labelFormat
//
resources.ApplyResources(this.btnCodec, "btnCodec");
this.btnCodec.Name = "btnCodec";
this.btnCodec.UseVisualStyleBackColor = true;
this.btnCodec.Click += new System.EventHandler(this.btnCodec_Click);
resources.ApplyResources(this.labelFormat, "labelFormat");
this.labelFormat.MinimumSize = new System.Drawing.Size(16, 16);
this.labelFormat.Name = "labelFormat";
//
// rbUDC1
// comboBoxAudioFormat
//
resources.ApplyResources(this.rbUDC1, "rbUDC1");
this.rbUDC1.Name = "rbUDC1";
this.rbUDC1.TabStop = true;
this.rbUDC1.UseVisualStyleBackColor = true;
this.rbUDC1.CheckedChanged += new System.EventHandler(this.rbUDC1_CheckedChanged);
//
// rbTTA
//
resources.ApplyResources(this.rbTTA, "rbTTA");
this.rbTTA.Name = "rbTTA";
this.rbTTA.TabStop = true;
this.rbTTA.UseVisualStyleBackColor = true;
this.rbTTA.CheckedChanged += new System.EventHandler(this.rbTTA_CheckedChanged);
//
// chkLossyWAV
//
resources.ApplyResources(this.chkLossyWAV, "chkLossyWAV");
this.chkLossyWAV.Name = "chkLossyWAV";
this.toolTip1.SetToolTip(this.chkLossyWAV, resources.GetString("chkLossyWAV.ToolTip"));
this.chkLossyWAV.UseVisualStyleBackColor = true;
this.chkLossyWAV.CheckedChanged += new System.EventHandler(this.chkLossyWAV_CheckedChanged);
//
// rbAPE
//
resources.ApplyResources(this.rbAPE, "rbAPE");
this.rbAPE.Name = "rbAPE";
this.rbAPE.TabStop = true;
this.rbAPE.UseVisualStyleBackColor = true;
this.rbAPE.CheckedChanged += new System.EventHandler(this.rbAPE_CheckedChanged);
//
// rbNoAudio
//
resources.ApplyResources(this.rbNoAudio, "rbNoAudio");
this.rbNoAudio.Name = "rbNoAudio";
this.toolTip1.SetToolTip(this.rbNoAudio, resources.GetString("rbNoAudio.ToolTip"));
this.rbNoAudio.UseVisualStyleBackColor = true;
this.rbNoAudio.CheckedChanged += new System.EventHandler(this.rbNoAudio_CheckedChanged);
//
// rbWavPack
//
resources.ApplyResources(this.rbWavPack, "rbWavPack");
this.rbWavPack.Name = "rbWavPack";
this.rbWavPack.UseVisualStyleBackColor = true;
this.rbWavPack.CheckedChanged += new System.EventHandler(this.rbWavPack_CheckedChanged);
//
// rbWAV
//
resources.ApplyResources(this.rbWAV, "rbWAV");
this.rbWAV.Checked = true;
this.rbWAV.Name = "rbWAV";
this.rbWAV.TabStop = true;
this.rbWAV.UseVisualStyleBackColor = true;
this.rbWAV.CheckedChanged += new System.EventHandler(this.rbWAV_CheckedChanged);
//
// rbFLAC
//
resources.ApplyResources(this.rbFLAC, "rbFLAC");
this.rbFLAC.Name = "rbFLAC";
this.rbFLAC.UseVisualStyleBackColor = true;
this.rbFLAC.CheckedChanged += new System.EventHandler(this.rbFLAC_CheckedChanged);
this.comboBoxAudioFormat.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.comboBoxAudioFormat.FormattingEnabled = true;
resources.ApplyResources(this.comboBoxAudioFormat, "comboBoxAudioFormat");
this.comboBoxAudioFormat.Name = "comboBoxAudioFormat";
this.comboBoxAudioFormat.SelectedIndexChanged += new System.EventHandler(this.comboBoxAudioFormat_SelectedIndexChanged);
//
// btnSettings
//
this.btnSettings.Image = global::JDP.Properties.Resources.cog;
resources.ApplyResources(this.btnSettings, "btnSettings");
this.btnSettings.Name = "btnSettings";
this.btnSettings.UseVisualStyleBackColor = true;
@@ -355,17 +295,24 @@ namespace JDP {
//
// grpAction
//
this.grpAction.Controls.Add(this.checkBoxAdvancedMode);
this.grpAction.Controls.Add(this.comboBoxScript);
this.grpAction.Controls.Add(this.rbActionCorrectFilenames);
this.grpAction.Controls.Add(this.rbActionCreateCUESheet);
this.grpAction.Controls.Add(this.rbActionVerifyAndCRCs);
this.grpAction.Controls.Add(this.rbActionVerifyAndEncode);
this.grpAction.Controls.Add(this.rbActionVerifyThenEncode);
this.grpAction.Controls.Add(this.rbActionVerify);
this.grpAction.Controls.Add(this.rbActionEncode);
resources.ApplyResources(this.grpAction, "grpAction");
this.grpAction.Name = "grpAction";
this.grpAction.TabStop = false;
//
// comboBoxScript
//
this.comboBoxScript.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.comboBoxScript.FormattingEnabled = true;
resources.ApplyResources(this.comboBoxScript, "comboBoxScript");
this.comboBoxScript.Name = "comboBoxScript";
//
// rbActionCorrectFilenames
//
resources.ApplyResources(this.rbActionCorrectFilenames, "rbActionCorrectFilenames");
@@ -382,21 +329,6 @@ namespace JDP {
this.rbActionCreateCUESheet.UseVisualStyleBackColor = true;
this.rbActionCreateCUESheet.CheckedChanged += new System.EventHandler(this.rbAction_CheckedChanged);
//
// chkMulti
//
resources.ApplyResources(this.chkMulti, "chkMulti");
this.chkMulti.Name = "chkMulti";
this.chkMulti.UseVisualStyleBackColor = true;
this.chkMulti.CheckedChanged += new System.EventHandler(this.chkMulti_CheckedChanged);
//
// rbActionVerifyAndCRCs
//
resources.ApplyResources(this.rbActionVerifyAndCRCs, "rbActionVerifyAndCRCs");
this.rbActionVerifyAndCRCs.Name = "rbActionVerifyAndCRCs";
this.toolTip1.SetToolTip(this.rbActionVerifyAndCRCs, resources.GetString("rbActionVerifyAndCRCs.ToolTip"));
this.rbActionVerifyAndCRCs.UseVisualStyleBackColor = true;
this.rbActionVerifyAndCRCs.CheckedChanged += new System.EventHandler(this.rbAction_CheckedChanged);
//
// rbActionVerifyAndEncode
//
resources.ApplyResources(this.rbActionVerifyAndEncode, "rbActionVerifyAndEncode");
@@ -405,14 +337,6 @@ namespace JDP {
this.rbActionVerifyAndEncode.UseVisualStyleBackColor = true;
this.rbActionVerifyAndEncode.CheckedChanged += new System.EventHandler(this.rbAction_CheckedChanged);
//
// rbActionVerifyThenEncode
//
resources.ApplyResources(this.rbActionVerifyThenEncode, "rbActionVerifyThenEncode");
this.rbActionVerifyThenEncode.Name = "rbActionVerifyThenEncode";
this.toolTip1.SetToolTip(this.rbActionVerifyThenEncode, resources.GetString("rbActionVerifyThenEncode.ToolTip"));
this.rbActionVerifyThenEncode.UseVisualStyleBackColor = true;
this.rbActionVerifyThenEncode.CheckedChanged += new System.EventHandler(this.rbAction_CheckedChanged);
//
// rbActionVerify
//
resources.ApplyResources(this.rbActionVerify, "rbActionVerify");
@@ -431,6 +355,14 @@ namespace JDP {
this.rbActionEncode.UseVisualStyleBackColor = true;
this.rbActionEncode.CheckedChanged += new System.EventHandler(this.rbAction_CheckedChanged);
//
// chkMulti
//
resources.ApplyResources(this.chkMulti, "chkMulti");
this.chkMulti.Name = "chkMulti";
this.chkMulti.ThreeState = true;
this.chkMulti.UseVisualStyleBackColor = true;
this.chkMulti.CheckStateChanged += new System.EventHandler(this.chkMulti_CheckStateChanged);
//
// txtPreGapLength
//
this.txtPreGapLength.Culture = new System.Globalization.CultureInfo("");
@@ -512,6 +444,7 @@ namespace JDP {
// toolStripStatusLabelAR
//
resources.ApplyResources(this.toolStripStatusLabelAR, "toolStripStatusLabelAR");
this.toolStripStatusLabelAR.Image = global::JDP.Properties.Resources.AR;
this.toolStripStatusLabelAR.Name = "toolStripStatusLabelAR";
this.toolStripStatusLabelAR.Padding = new System.Windows.Forms.Padding(0, 0, 5, 0);
//
@@ -586,55 +519,6 @@ namespace JDP {
this.rbFreedbNever.TabStop = true;
this.rbFreedbNever.UseVisualStyleBackColor = true;
//
// contextMenuStripUDC
//
this.contextMenuStripUDC.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStripMenuItem2,
this.tAKToolStripMenuItem,
this.toolStripMenuItem1,
this.toolStripSeparator1,
this.toolStripMenuItem3,
this.mP3ToolStripMenuItem,
this.oGGToolStripMenuItem});
this.contextMenuStripUDC.Name = "contextMenuStripUDC";
resources.ApplyResources(this.contextMenuStripUDC, "contextMenuStripUDC");
this.contextMenuStripUDC.ItemClicked += new System.Windows.Forms.ToolStripItemClickedEventHandler(this.contextMenuStripUDC_ItemClicked);
//
// toolStripMenuItem2
//
resources.ApplyResources(this.toolStripMenuItem2, "toolStripMenuItem2");
this.toolStripMenuItem2.Name = "toolStripMenuItem2";
//
// tAKToolStripMenuItem
//
this.tAKToolStripMenuItem.Name = "tAKToolStripMenuItem";
resources.ApplyResources(this.tAKToolStripMenuItem, "tAKToolStripMenuItem");
//
// toolStripMenuItem1
//
this.toolStripMenuItem1.Name = "toolStripMenuItem1";
resources.ApplyResources(this.toolStripMenuItem1, "toolStripMenuItem1");
//
// toolStripSeparator1
//
this.toolStripSeparator1.Name = "toolStripSeparator1";
resources.ApplyResources(this.toolStripSeparator1, "toolStripSeparator1");
//
// toolStripMenuItem3
//
resources.ApplyResources(this.toolStripMenuItem3, "toolStripMenuItem3");
this.toolStripMenuItem3.Name = "toolStripMenuItem3";
//
// mP3ToolStripMenuItem
//
this.mP3ToolStripMenuItem.Name = "mP3ToolStripMenuItem";
resources.ApplyResources(this.mP3ToolStripMenuItem, "mP3ToolStripMenuItem");
//
// oGGToolStripMenuItem
//
this.oGGToolStripMenuItem.Name = "oGGToolStripMenuItem";
resources.ApplyResources(this.oGGToolStripMenuItem, "oGGToolStripMenuItem");
//
// txtInputPath
//
this.txtInputPath.AllowDrop = true;
@@ -686,6 +570,7 @@ namespace JDP {
this.fileSystemTreeView1.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.fileSystemTreeView1_AfterSelect);
this.fileSystemTreeView1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.fileSystemTreeView1_MouseDown);
this.fileSystemTreeView1.DragEnter += new System.Windows.Forms.DragEventHandler(this.fileSystemTreeView1_DragEnter);
this.fileSystemTreeView1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.fileSystemTreeView1_KeyDown);
this.fileSystemTreeView1.AfterExpand += new System.Windows.Forms.TreeViewEventHandler(this.fileSystemTreeView1_AfterExpand);
//
// grpExtra
@@ -755,26 +640,120 @@ namespace JDP {
// panel1
//
resources.ApplyResources(this.panel1, "panel1");
this.panel1.Controls.Add(this.groupBoxCorrector);
this.panel1.Controls.Add(this.grpOutputPathGeneration);
this.panel1.Controls.Add(this.btnStop);
this.panel1.Controls.Add(this.btnConvert);
this.panel1.Controls.Add(this.grpAction);
this.panel1.Controls.Add(this.btnSettings);
this.panel1.Controls.Add(this.grpExtra);
this.panel1.Controls.Add(this.btnAbout);
this.panel1.Controls.Add(this.grpOutputStyle);
this.panel1.Controls.Add(this.grpFreedb);
this.panel1.Controls.Add(this.grpAudioOutput);
this.panel1.Controls.Add(this.grpAction);
this.panel1.Controls.Add(this.btnPause);
this.panel1.Controls.Add(this.btnResume);
this.panel1.Name = "panel1";
//
// groupBoxCorrector
//
this.groupBoxCorrector.Controls.Add(this.rbCorrectorLocateFiles);
this.groupBoxCorrector.Controls.Add(this.rbCorrectorChangeExtension);
this.groupBoxCorrector.Controls.Add(this.checkBoxCorrectorOverwrite);
this.groupBoxCorrector.Controls.Add(this.labelCorrectorFormat);
this.groupBoxCorrector.Controls.Add(this.comboBoxCorrectorFormat);
resources.ApplyResources(this.groupBoxCorrector, "groupBoxCorrector");
this.groupBoxCorrector.Name = "groupBoxCorrector";
this.groupBoxCorrector.TabStop = false;
//
// rbCorrectorLocateFiles
//
resources.ApplyResources(this.rbCorrectorLocateFiles, "rbCorrectorLocateFiles");
this.rbCorrectorLocateFiles.Name = "rbCorrectorLocateFiles";
this.rbCorrectorLocateFiles.TabStop = true;
this.rbCorrectorLocateFiles.UseVisualStyleBackColor = true;
//
// rbCorrectorChangeExtension
//
resources.ApplyResources(this.rbCorrectorChangeExtension, "rbCorrectorChangeExtension");
this.rbCorrectorChangeExtension.Name = "rbCorrectorChangeExtension";
this.rbCorrectorChangeExtension.TabStop = true;
this.rbCorrectorChangeExtension.UseVisualStyleBackColor = true;
this.rbCorrectorChangeExtension.CheckedChanged += new System.EventHandler(this.rbCorrectorChangeExtension_CheckedChanged);
//
// checkBoxCorrectorOverwrite
//
resources.ApplyResources(this.checkBoxCorrectorOverwrite, "checkBoxCorrectorOverwrite");
this.checkBoxCorrectorOverwrite.Name = "checkBoxCorrectorOverwrite";
this.checkBoxCorrectorOverwrite.UseVisualStyleBackColor = true;
//
// labelCorrectorFormat
//
resources.ApplyResources(this.labelCorrectorFormat, "labelCorrectorFormat");
this.labelCorrectorFormat.MinimumSize = new System.Drawing.Size(16, 16);
this.labelCorrectorFormat.Name = "labelCorrectorFormat";
//
// comboBoxCorrectorFormat
//
this.comboBoxCorrectorFormat.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.comboBoxCorrectorFormat.FormattingEnabled = true;
resources.ApplyResources(this.comboBoxCorrectorFormat, "comboBoxCorrectorFormat");
this.comboBoxCorrectorFormat.Name = "comboBoxCorrectorFormat";
this.comboBoxCorrectorFormat.SelectedIndexChanged += new System.EventHandler(this.comboBoxCorrectorFormat_SelectedIndexChanged);
//
// radioButtonAudioLossless
//
resources.ApplyResources(this.radioButtonAudioLossless, "radioButtonAudioLossless");
this.radioButtonAudioLossless.Name = "radioButtonAudioLossless";
this.radioButtonAudioLossless.TabStop = true;
this.radioButtonAudioLossless.UseVisualStyleBackColor = true;
this.radioButtonAudioLossless.CheckedChanged += new System.EventHandler(this.radioButtonAudioLossless_CheckedChanged);
//
// radioButtonAudioHybrid
//
resources.ApplyResources(this.radioButtonAudioHybrid, "radioButtonAudioHybrid");
this.radioButtonAudioHybrid.Name = "radioButtonAudioHybrid";
this.radioButtonAudioHybrid.TabStop = true;
this.radioButtonAudioHybrid.UseVisualStyleBackColor = true;
this.radioButtonAudioHybrid.CheckedChanged += new System.EventHandler(this.radioButtonAudioLossless_CheckedChanged);
//
// radioButtonAudioLossy
//
resources.ApplyResources(this.radioButtonAudioLossy, "radioButtonAudioLossy");
this.radioButtonAudioLossy.Name = "radioButtonAudioLossy";
this.radioButtonAudioLossy.TabStop = true;
this.radioButtonAudioLossy.UseVisualStyleBackColor = true;
this.radioButtonAudioLossy.CheckedChanged += new System.EventHandler(this.radioButtonAudioLossless_CheckedChanged);
//
// radioButtonAudioNone
//
resources.ApplyResources(this.radioButtonAudioNone, "radioButtonAudioNone");
this.radioButtonAudioNone.Name = "radioButtonAudioNone";
this.radioButtonAudioNone.TabStop = true;
this.radioButtonAudioNone.UseVisualStyleBackColor = true;
this.radioButtonAudioNone.CheckedChanged += new System.EventHandler(this.radioButtonAudioLossless_CheckedChanged);
//
// comboBoxEncoder
//
this.comboBoxEncoder.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.comboBoxEncoder.FormattingEnabled = true;
resources.ApplyResources(this.comboBoxEncoder, "comboBoxEncoder");
this.comboBoxEncoder.Name = "comboBoxEncoder";
this.comboBoxEncoder.SelectedIndexChanged += new System.EventHandler(this.comboBoxEncoder_SelectedIndexChanged);
//
// checkBoxAdvancedMode
//
resources.ApplyResources(this.checkBoxAdvancedMode, "checkBoxAdvancedMode");
this.checkBoxAdvancedMode.Name = "checkBoxAdvancedMode";
this.checkBoxAdvancedMode.UseVisualStyleBackColor = true;
this.checkBoxAdvancedMode.CheckedChanged += new System.EventHandler(this.checkBoxAdvancedMode_CheckedChanged);
//
// frmCUETools
//
resources.ApplyResources(this, "$this");
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.panel1);
this.Controls.Add(this.grpInput);
this.Controls.Add(this.panel1);
this.Controls.Add(this.statusStrip1);
this.MaximizeBox = false;
this.Name = "frmCUETools";
@@ -792,7 +771,6 @@ namespace JDP {
this.statusStrip1.PerformLayout();
this.grpFreedb.ResumeLayout(false);
this.grpFreedb.PerformLayout();
this.contextMenuStripUDC.ResumeLayout(false);
this.grpInput.ResumeLayout(false);
this.grpInput.PerformLayout();
this.grpExtra.ResumeLayout(false);
@@ -800,6 +778,8 @@ namespace JDP {
((System.ComponentModel.ISupportInitialize)(this.numericWriteOffset)).EndInit();
this.contextMenuStripFileTree.ResumeLayout(false);
this.panel1.ResumeLayout(false);
this.groupBoxCorrector.ResumeLayout(false);
this.groupBoxCorrector.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
@@ -823,15 +803,10 @@ namespace JDP {
private System.Windows.Forms.TextBox txtAppendFilename;
private System.Windows.Forms.TextBox txtCreateSubdirectory;
private System.Windows.Forms.GroupBox grpAudioOutput;
private System.Windows.Forms.RadioButton rbFLAC;
private System.Windows.Forms.RadioButton rbWAV;
private System.Windows.Forms.RadioButton rbWavPack;
private System.Windows.Forms.RadioButton rbCustomFormat;
private System.Windows.Forms.TextBox txtCustomFormat;
private System.Windows.Forms.Button btnSettings;
private System.Windows.Forms.RadioButton rbNoAudio;
private System.Windows.Forms.GroupBox grpAction;
private System.Windows.Forms.RadioButton rbActionVerifyThenEncode;
private System.Windows.Forms.RadioButton rbActionVerify;
private System.Windows.Forms.RadioButton rbActionEncode;
private System.Windows.Forms.StatusStrip statusStrip1;
@@ -842,28 +817,14 @@ namespace JDP {
private System.Windows.Forms.RadioButton rbEmbedCUE;
private System.Windows.Forms.MaskedTextBox txtDataTrackLength;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.RadioButton rbAPE;
private System.Windows.Forms.Button btnStop;
private System.Windows.Forms.Button btnPause;
private System.Windows.Forms.Button btnResume;
private System.Windows.Forms.CheckBox chkLossyWAV;
private System.Windows.Forms.RadioButton rbActionVerifyAndEncode;
private System.Windows.Forms.RadioButton rbTTA;
private System.Windows.Forms.GroupBox grpFreedb;
private System.Windows.Forms.RadioButton rbFreedbAlways;
private System.Windows.Forms.RadioButton rbFreedbIf;
private System.Windows.Forms.RadioButton rbFreedbNever;
private System.Windows.Forms.RadioButton rbUDC1;
private System.Windows.Forms.Button btnCodec;
private System.Windows.Forms.ContextMenuStrip contextMenuStripUDC;
private System.Windows.Forms.ToolStripMenuItem tAKToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem mP3ToolStripMenuItem;
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 rbActionVerifyAndCRCs;
private System.Windows.Forms.MaskedTextBox txtPreGapLength;
private System.Windows.Forms.Label label2;
private CUEControls.FileSystemTreeView fileSystemTreeView1;
@@ -887,6 +848,21 @@ namespace JDP {
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabelProcessed;
private System.Windows.Forms.TextBox textBatchReport;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.ComboBox comboBoxAudioFormat;
private System.Windows.Forms.Label labelFormat;
private System.Windows.Forms.GroupBox groupBoxCorrector;
private System.Windows.Forms.Label labelCorrectorFormat;
private System.Windows.Forms.ComboBox comboBoxCorrectorFormat;
private System.Windows.Forms.CheckBox checkBoxCorrectorOverwrite;
private System.Windows.Forms.RadioButton rbCorrectorLocateFiles;
private System.Windows.Forms.RadioButton rbCorrectorChangeExtension;
private System.Windows.Forms.ComboBox comboBoxScript;
private System.Windows.Forms.RadioButton radioButtonAudioNone;
private System.Windows.Forms.RadioButton radioButtonAudioLossy;
private System.Windows.Forms.RadioButton radioButtonAudioHybrid;
private System.Windows.Forms.RadioButton radioButtonAudioLossless;
private System.Windows.Forms.ComboBox comboBoxEncoder;
private System.Windows.Forms.CheckBox checkBoxAdvancedMode;
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -270,32 +270,4 @@
<data name="grpExtra.Text" xml:space="preserve">
<value>Дополнительно</value>
</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>

View File

@@ -75,10 +75,10 @@ namespace JDP
//
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(0, "eac3.ico");
this.imageList1.Images.SetKeyName(1, "freedb.ico");
this.imageList1.Images.SetKeyName(2, "musicbrainz.ico");
this.imageList1.Images.SetKeyName(3, "cue.ico");
this.imageList1.Images.SetKeyName(3, "cue3.ico");
//
// textBox1
//

View File

@@ -159,55 +159,84 @@
<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=
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADY
EQAAAk1TRnQBSQFMAgEBBAEAAQwBAAEEAQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
AwABIAMAAQEBAAEgBgABIP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8ALgADAgEDAxQBHAMs
AUwDNAF5AzIBmgMwAaQDMgGaAzQBeQMsAUwDFAEcAwMBBAgAA5YB/wEyAgAB/wEyAgAB/wEyAgAB/wEy
AgAB/wEyAgAB/wEyAgAB/wEyAgAB/wEyAgAB/wEyAgAB/wEyAgAB/wEyAgAB/wEyAgAB/wEyAgAB/wEy
AgAB/wEyAgAB/wQAAWUBzAL/ATICmQH/ATICmQH/AWUBzAL/AWUBzAL/AWUBzAL/AWUBzAL/AWUBzAL/
AWUBzAL/AWUBzAL/AWUBzAL/AWUBzAL/AWUBzAL/AWUBzAL/EAADAgEDAxQBHAMsAUwDNAF5AzIBmgMw
AaQDMgGaAzQBeQMsAUwDFAEcAwMBBBAAAwQBBgMjATYDRwGwAWMCXwHlAZECiQH7AbMCqQH/AZECjAH7
AWECYAHrAzwB0wMuAawDNAGCAyUBPAMHAQkEAAHMApkB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wPq
Af8D6gH/A+oB/wGAAgAB/wPqAf8D6gH/A+oB/wGAAgAB/wGAAgAB/wFlAgAB/wEyAgAB/wEyApkB/wMA
Af8DKAH/A0wB/wMAAf8DGwH/AWUBzAL/AWUBzAL/AWUBzAL/AWUBzAL/AWUBzAL/AWUBzAL/AWUBzAL/
AWUBzAL/AWUBzAL/AWUBzAL/CAADBAEGAyMBNgNHAbABYwJfAeUBkQKJAfsBswKpAf8BkQKMAfsBYQJg
AesDPAHTAy4BrAM0AYIDJQE8AwcBCQgAAwIBAwMxAU8BbQJnAeoBzwK0Av8C3QL/AuIC/wLoAv8C7gL/
AvMB/wPPAf8DcgHzAzMBxgMzAZIDJQE8AwMBBAHMApkB/wGAAgAB/wGAAgAB/wGAAgAB/wPxAf8BgAIA
Af8BgAIAAf8D8QH/AYACAAH/A/EB/wGAAgAB/wGAAgAB/wPxAf8BgAIAAf8BgAIAAf8BMgIAAf8DAAH/
A8wN/wNMAf8DGwH/AWUBzAL/AWUBzAL/AWUBzAL/AWUBzAL/AWUBzAL/AWUBzAL/AWUBzAL/AWUBzAL/
AWUBzAL/BAADAgEDAzEBTwFtAmcB6gHPArQC/wLdAv8C4gL/AugC/wLuAv8C8wH/A88B/wNyAfMDMwHG
AzMBkgMlATwDAwEEBAADJwE4AYACdQH3AfUCxwL/AtIC/wLYAv8C3QL/AuIC/wLoAv8C9AX/A/UB/wOZ
AfsDMwHGAzQBggMUARwBzAKZAf8BmQEAATIB/wGAAgAB/wGAAgAF/wGAAgAB/wGAAgAF/wGAAgAF/wGA
AgAB/wGAAgAF/wGAAgAB/wGAAgAB/wEyAgAB/wMAAf8DzBH/AwAB/wFlAcwC/wFlAcwC/wFlAcwC/wFl
AcwC/wFlAcwC/wFlAcwC/wFlAcwC/wFlAcwC/wFlAcwC/wQAAycBOAGAAnUB9wH1AscC/wLSAv8C2AL/
At0C/wLiAv8C6AL/AvQF/wP1Af8DmQH7AzMBxgM0AYIDFAEcAwcBCQFxAmsB3QH1As0C/wLPAv8CzQL/
AtIC/wLYAv8C3QL/AuIC/wL6Cf8D9QH/A3IB8wMuAawDLAFMAcwCmQH/AZkBAAEyAf8BgAIAAf8BgAIA
Af8BgAIADf8BgAIADf8BgAIAAf8BgAIAAf8BgAIAAf8BMgIAAf8BMgKZAf8DGwH/A3YB/wPAAf8DwAH/
A8wB/wMAAf8DKAH/AwAB/wMAAf8DAAH/AwAB/wMoAf8BZQHMAv8BZQHMAv8BZQHMAv8DBwEJAXECawHd
AfUCzQL/As8C/wLNAv8C0gL/AtgC/wLdAv8C4gL/AvoJ/wP1Af8DcgHzAy4BrAMsAUwDQwFqAcYCsQL/
AtkC/wLUAv8CzwL/As0C/wHUAdsC/wHXAeIC/wHkAeoR/wHSAswB/wM8AdMDNAF3AcwCmQH/AZkBAAEy
Af8BgAIAAf8BgAIAAf8BgAIAAf8BgAIAAf8BgAIABf8BgAIABf8BgAIAAf8BgAIAAf8BgAIAAf8BgAIA
Af8BgAIAAf8BMgIAAf8BZQHMAv8BMgKZAf8DGwH/AwAB/wMABf8DAAH/AxsB/wGkAqAJ/wOZAf8DKAH/
AygB/wFlAcwC/wFlAcwC/wNDAWoBxgKxAv8C2QL/AtQC/wLPAv8CzQL/AdQB2wL/AdcB4gL/AeQB6hH/
AdICzAH/AzwB0wM0AXcDYwG2Af8C4wH/AQABLQEuAf8BAAEtAS4B/wEAAS0BLgL/Ad4B5wH/AQABLQEu
Av8B0QHzAf8BAAEtAS4C/wH4Av8BbQJzAf8BAAEtAS4B/wFtAnMB/wHMApkB/wFcAlUB6gMzAZQBzAKZ
Af8BmQEAATIB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAF/wGAAgAF/wGAAgAB/wGAAgAB/wGA
AgAB/wGAAgAB/wGAAgAB/wEyAgAB/wFlAcwC/wFlAcwC/wFlAcwC/wFlAcwC/wMABf8DAAH/AygR/wPM
Af8DAAH/AWUBzAL/AWUBzAL/A2MBtgH/AuMB/wFtAnMB/wEAAS0BLgH/AW0CcwL/Ad4B5wH/AW0CcwH/
AQABLQEuAf8BbQJzAv8B+AL/AQABLQEuAf8BAAEtAS4B/wEAAS0BLgH/AcwCmQH/AVwCVQHqAzMBlAGH
AoEB4gH/AucB/wEAAS0BLgL/At4C/wLgAv8B7wH8Af8BAAEtAS4C/wHiAfwB/wEAAS0BLgH/AfwB8AH5
Af8BAAEtAS4B/wHMApkB/wEAAS0BLgH/AcwCmQH/AXoCbAH3AzEBoQHMApkB/wGZAQABMgH/AYACAAH/
AYACAAH/AYACAAH/AYACAAH/AYACAAH/AYACAAH/AYACAAH/AYACAAH/AYACAAH/AYACAAH/AYACAAH/
AYACAAH/AYACAAH/ATICAAH/AZkCZQH/AZkCZQH/AZkCZQH/AZkCZQH/AwAF/wMAAf8DAAH/A0wB/wPM
Df8DAAH/AZkCZQH/AZkCZQH/AYcCgQHiAf8C5wH/AQABLQEuAv8C3gH/AQABLQEuAv8B7wH8Af8BAAEt
AS4C/wHiAfwB/wEAAS0BLgH/AfwB8AH5Af8BAAEtAS4B/wHMApkB/wHMApkB/wHMApkB/wF6AmwB9wMx
AaEBngKMAf8B6QK+Af8BAAEtAS4B/wEAAS0BLgH/AfkC1gL/AekB8wH/AQABLQEuAf8BAAEtAS4B/wEA
AS0BLgH/AfkB6AHsAf8BAAEtAS4B/wHmAroB/wHmAr0B/wHmAsAB/wGmApQB/wMzAZQ0/wPxAf8D6gH/
A4AB/wGZAmUB/wGZAmUB/wGZAmUB/wGZAmUB/wMABf8DAAH/A1QB/wMbAf8DAAH/AwAB/wMABf8DAAH/
AZkCZQH/AZkCZQH/AZ4CjAH/AekCvgH/AQABLQEuAf8B8wLFAf8B+QLWAv8B6QHzAf8BAAEtAS4C/wHp
AfMB/wEAAS0BLgH/AfkB6AHsAf8BAAEtAS4B/wEAAS0BLgH/AeYCvQH/AeYCwAH/AaYClAH/AzMBlAF6
Am8B0gHbAqgB/wEAAS0BLgH/AeoCtwH/AfMCzQL/Ae4B/AH/AQABLQEuAv8B0gH1Af8BAAEtAS4C/wH0
AfwB/wEAAS0BLgL/AtgB/wEAAS0BLgL/AuIB/wGBAnwB9gM0AXcE/wGZAQABMgn/AYACAA3/AYACAAH/
AYACAA3/AYACAAH/AYACAAH/A4AB/wGZAmUB/wGZAmUB/wGZAmUB/wGZAmUB/wMABf8DGwH/AwAB/wMo
Af8DVAH/A1QB/wMABf8DAAH/AZkCZQH/AZkCZQH/AXoCbwHSAdsCqAH/AQABLQEuAf8B6gK3Af8BAAEt
AS4C/wHuAfwB/wEAAS0BLgL/AdIB9QH/AQABLQEuAv8B9AH8Af8BAAEtAS4C/wLYAv8C3QL/AuIB/wGB
AnwB9gM0AXcBYgJgAbEB1QKiAf8BAAEtAS4B/wEAAS0BLgH/AQABLQEuAv8B9gL/AW0CcwH/AQABLQEu
Af8BbQJzAv8B4AHnAf8BbQJzAf8BAAEtAS4B/wFtAnMC/wLdAf8BWgJZAeQDLAFMBP8BmQEAATIJ/wGA
AgAJ/wGAAgAR/wGAAgAB/wPxAf8D6gH/A4AB/wGZAmUB/wGZAmUB/wGZAmUB/wGZAmUB/wMACf8DmQH/
AygB/wMAAf8DGwH/AwAF/wMAAf8BmQJlAf8BmQJlAf8BYgJgAbEB1QKiAf8BbQJzAf8BAAEtAS4B/wFt
AnMC/wH2Av8BAAEtAS4C/wHSAfUB/wEAAS0BLgL/AeAB5wH/AQABLQEuAf8BAAEtAS4B/wEAAS0BLgL/
At0B/wFaAlkB5AMsAUwDNwFQAcMCvxL/AewB8QL/AdsB5wL/AdkB3gL/AtQC/wLPAv8CzQL/AtIB/wHG
Aq0B/wNHAawDFAEbBP8BmQEAATIJ/wGAAgAJ/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAF/wGAAgAB/wGA
AgAB/wGAAgAB/wEyAgAB/wGZAmUB/wGZAmUB/wGZAmUB/wGZAmUB/wMAAf8DwA3/A8wB/wNeAf8DAAX/
AwAB/wGZAmUB/wGZAmUB/wM3AVABwwK/Ev8B7AHxAv8B2wHnAv8B2QHeAv8C1AL/As8C/wLNAv8C0gH/
AcYCrQH/A0cBrAMUARsEAANpAcAD9Qr/Av4C/wLnAv8C4wL/At4C/wLZAv8C1AL/As8B/wH1AscB/wFp
AmQB4wMiATQDAgEDBP8BmQEAATIB/wGAAgAF/wGAAgAJ/wGAAgAJ/wGAAgAF/wGAAgAB/wPxAf8D6gH/
ATICAAH/AZkCZQH/AZkCZQH/AZkCZQH/AZkCZQH/AygB/wNMAf8DwBn/AwAB/wGZAmUB/wGZAmUB/wQA
A2kBwAP1Cv8C/gL/AucC/wLjAv8C3gL/AtkC/wLUAv8CzwH/AfUCxwH/AWkCZAHjAyIBNAMCAQMEAAMY
ASADgQHvA/UG/wL4Av8C7AL/AucC/wLjAv8C3gL/AtkB/wH1As0B/wGAAnUB9wMwAU0DBAEGBAAE/wGZ
AjIJ/wGAAgAB/wGAAgAJ/wGAAgAB/wGAAgAN/wGAAgAB/wGAAgAB/wOGAf8BmQJlAf8BmQJlAf8BmQJl
Af8BmQJlAf8BmQJlAf8DKAH/AwAB/wMoAf8DmRH/AwAB/wGZAmUB/wGZAmUB/wQAAxgBIAOBAe8D9Qb/
AvgC/wLsAv8C5wL/AuMC/wLeAv8C2QH/AfUCzQH/AYACdQH3AzABTQMEAQYMAAMYASADaQHAA8YC/wL3
Av8C8gL/AuwC/wLnAv8C4wH/AcYCsQH/AW0CagHQAyUBNgMCAQMIAAT/AZkCMi3/A/EB/wPqAf8DhgH/
AZkCZQH/AZkCZQH/AZkCZQH/AZkCZQH/AZkCZQH/AZkCZQH/AZkCZQH/AygB/wMAAf8DGwH/A3YB/wPM
Bf8DAAH/AZkCZQH/AZkCZQH/CAADGAEgA2kBwAPGAv8C9wL/AvIC/wLsAv8C5wL/AuMB/wHGArEB/wFt
AmoB0AMlATYDAgEDGAADNwFQA18BogGCAoAB0gGMAokB/wGCAn4B1ANfAaYDOwFaAwUBBxAACP8BzAKZ
Lf8D8QH/A8AB/wQAAZkCZQH/AZkCZQH/AZkCZQH/AZkCZQH/AZkCZQH/AZkCZQH/AZkCZQH/AZkCZQH/
AZkCZQH/AxsB/wMAAf8DTAH/AygB/wGZAmUB/xQAAzcBUANfAaIBggKAAdIBjAKJAf8BggJ+AdQDXwGm
AzsBWgMFAQcQAAFCAU0BPgcAAT4DAAEoAwABQAMAASADAAEBAQABAQYAAQEWAAP/gQAB4AEDAgABgAEB
AeABAwHAAQEEAAHAAQEBgAUAAYABAAGABQABgEEAAYAFAAGAAQABgAEBBAABgAEBAcABAwQAAcABAwHw
AQ8CAAGAAQEB8AEPCw==
</value>
</data>
<data name="listChoices.TabIndex" type="System.Int32, mscorlib">

View File

@@ -1,55 +0,0 @@
namespace JDP {
partial class frmFilenameCorrector {
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing) {
if (disposing && (components != null)) {
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent() {
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmFilenameCorrector));
this.lblDescription = new System.Windows.Forms.Label();
this.SuspendLayout();
//
// lblDescription
//
resources.ApplyResources(this.lblDescription, "lblDescription");
this.lblDescription.Name = "lblDescription";
//
// frmFilenameCorrector
//
this.AllowDrop = true;
resources.ApplyResources(this, "$this");
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.lblDescription);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.MaximizeBox = false;
this.Name = "frmFilenameCorrector";
this.TopMost = true;
this.DragDrop += new System.Windows.Forms.DragEventHandler(this.frmFilenameCorrector_DragDrop);
this.DragEnter += new System.Windows.Forms.DragEventHandler(this.frmFilenameCorrector_DragEnter);
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.Label lblDescription;
}
}

View File

@@ -1,67 +0,0 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Threading;
using CUETools.Processor;
namespace JDP {
public partial class frmFilenameCorrector : Form {
private Thread _workThread;
public frmFilenameCorrector() {
InitializeComponent();
}
private void frmFilenameCorrector_DragEnter(object sender, DragEventArgs e) {
if (e.Data.GetDataPresent(DataFormats.FileDrop)) {
e.Effect = DragDropEffects.Copy;
}
}
private void frmFilenameCorrector_DragDrop(object sender, DragEventArgs e) {
if ((_workThread != null) && (_workThread.IsAlive)) {
return;
}
if (e.Data.GetDataPresent(DataFormats.FileDrop)) {
_workThread = new Thread(new ParameterizedThreadStart(CorrectCUEThread));
_workThread.Start(e.Data.GetData(DataFormats.FileDrop));
}
}
private void CorrectCUEThread(object p) {
string[] paths = (string[])p;
bool oneSuccess = false;
bool cancel = false;
foreach (string path in paths) {
if (Path.GetExtension(path).ToLower() == ".cue") {
try {
string fixedCue = CUESheet.CorrectAudioFilenames(path, true);
using (StreamWriter sw = new StreamWriter(path, false, CUESheet.Encoding))
sw.Write (fixedCue);
oneSuccess = true;
}
catch (Exception ex) {
Invoke((MethodInvoker)delegate() {
cancel = (MessageBox.Show(this, path + Environment.NewLine +
Environment.NewLine + ex.Message, "Error", MessageBoxButtons.OKCancel,
MessageBoxIcon.Error) == DialogResult.Cancel);
});
if (cancel) break;
}
}
}
if (oneSuccess) {
Invoke((MethodInvoker)delegate() {
MessageBox.Show(this, "Filename correction is complete!", "Done",
MessageBoxButtons.OK, MessageBoxIcon.Information);
});
}
}
}
}

View File

@@ -1,126 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="lblDescription.Text" xml:space="preserve">
<value>Lassen Sie die CUE-Sheets hier fallen, um die Dateinamen in ihnen zu korrigieren. Die Audiodateien müssen sich im selben Ordner wie die CUE-Sheets befinden. Die Anzahl der Audiodateien in dem Verzeichnis muss mit der Anzahl der referenzierten Stücke übereinstimmen. Die Audiodateien müssen so benannt sein, dass sie beim Sortieren nach dem Dateinamen in der richtigen Reihenfolge angezeigt werden. Um mehrere CUE-Sheets gleichzeitig zu korrigieren, suchen Sie nach *.cue.</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>Dateinamenkorrektor</value>
</data>
</root>

View File

@@ -1,174 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="lblDescription.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 8</value>
</data>
<data name="lblDescription.Size" type="System.Drawing.Size, System.Drawing">
<value>272, 144</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="lblDescription.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="lblDescription.Text" xml:space="preserve">
<value>Drop CUE sheets here to correct the audio filenames contained inside. The audio files must be located in the same folder as the CUE sheet. The number of audio files in that folder must match the number of files referenced by the CUE sheet. The audio files must be named such that when sorted they are in order by track number. To correct multiple CUE sheets at once, you can drop the search results for *.cue.</value>
</data>
<data name="lblDescription.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
<data name="&gt;&gt;lblDescription.Name" xml:space="preserve">
<value>lblDescription</value>
</data>
<data name="&gt;&gt;lblDescription.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;lblDescription.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;lblDescription.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>6, 13</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>286, 159</value>
</data>
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
<value>Tahoma, 8.25pt</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
<value>Manual</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>Filename Corrector</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>frmFilenameCorrector</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
</root>

File diff suppressed because it is too large Load Diff

View File

@@ -5,25 +5,40 @@ using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Globalization;
using System.IO;
using System.Threading;
using CUETools.Processor;
using CUEControls;
namespace JDP {
public partial class frmSettings : Form {
bool _reducePriority;
CUEConfig _config;
private ShellIconMgr m_icon_mgr;
public frmSettings() {
InitializeComponent();
}
public ShellIconMgr IconMgr
{
get
{
return m_icon_mgr;
}
set
{
m_icon_mgr = value;
}
}
private void frmSettings_Load(object sender, EventArgs e) {
chkReducePriority.Checked = _reducePriority;
chkPreserveHTOA.Checked = _config.preserveHTOA;
chkAutoCorrectFilenames.Checked = _config.autoCorrectFilenames;
numericFLACCompressionLevel.Value = _config.flacCompressionLevel;
numFixWhenConfidence.Value = _config.fixWhenConfidence;
numFixWhenPercent.Value = _config.fixWhenPercent;
numFixWhenConfidence.Value = _config.fixOffsetMinimumConfidence;
numFixWhenPercent.Value = _config.fixOffsetMinimumTracksPercent;
numEncodeWhenConfidence.Value = _config.encodeWhenConfidence;
numEncodeWhenPercent.Value = _config.encodeWhenPercent;
chkEncodeWhenZeroOffset.Checked = _config.encodeWhenZeroOffset;
@@ -53,8 +68,6 @@ namespace JDP {
chkReplaceSpaces.Checked = _config.replaceSpaces;
chkWriteArLogOnConvert.Checked = _config.writeArLogOnConvert;
chkWriteARLogOnVerify.Checked = _config.writeArLogOnVerify;
chkArNoUnverifiedAudio.Checked = _config.noUnverifiedOutput;
chkArFixOffset.Checked = _config.fixOffset;
chkEmbedLog.Checked = _config.embedLog;
chkExtractLog.Checked = _config.extractLog;
chkFillUpCUE.Checked = _config.fillUpCUE;
@@ -69,15 +82,17 @@ namespace JDP {
chkHDCDLW16.Checked = _config.decodeHDCDtoLW16;
chkHDCD24bit.Checked = _config.decodeHDCDto24bit;
chkOverwriteTags.Checked = _config.overwriteCUEData;
chkSingleInstance.Checked = _config.oneInstance;
textUDC1Extension.Text = _config.udc1Extension;
textUDC1Decoder.Text = _config.udc1Decoder;
textUDC1Params.Text = _config.udc1Params;
textUDC1Encoder.Text = _config.udc1Encoder;
textUDC1EncParams.Text = _config.udc1EncParams;
chkUDC1APEv2.Checked = _config.udc1APEv2;
chkUDC1ID3v2.Checked = _config.udc1ID3v2;
chkAllowMultipleInstances.Checked = !_config.oneInstance;
checkBoxWriteCUETags.Checked = _config.writeBasicTagsFromCUEData;
checkBoxCopyBasicTags.Checked = _config.copyBasicTags;
checkBoxCopyUnknownTags.Checked = _config.copyUnknownTags;
checkBoxCopyAlbumArt.Checked = _config.copyAlbumArt;
checkBoxEmbedAlbumArt.Checked = _config.embedAlbumArt;
checkBoxARVerifyUseSourceFolder.Checked = _config.arLogToSourceFolder;
checkBoxARLogVerbose.Checked = _config.arLogVerbose;
checkBoxFixToNearest.Checked = _config.fixOffsetToNearest;
textBoxARLogExtension.Text = _config.arLogExtension;
numericUpDownMaxResolution.Value = _config.maxAlbumArtSize;
string[] cultures = { "en-US", "de-DE", "ru-RU" };
foreach (string culture in cultures)
@@ -96,9 +111,59 @@ namespace JDP {
if (comboLanguage.SelectedItem == null)
comboLanguage.SelectedItem = comboLanguage.Items[0];
foreach (KeyValuePair<string, CUEToolsUDC> encoder in _config.encoders)
{
ListViewItem item = new ListViewItem(encoder.Key);
item.Tag = encoder.Value;
listViewEncoders.Items.Add(item);
}
//listViewEncoders.Items[0].Selected = true;
foreach (KeyValuePair<string, CUEToolsUDC> decoder in _config.decoders)
if (decoder.Value.path != null)
{
ListViewItem item = new ListViewItem(decoder.Key);
item.Tag = decoder.Value;
listViewDecoders.Items.Add(item);
}
//listViewDecoders.Items[0].Selected = true;
listViewFormats.SmallImageList = m_icon_mgr.ImageList;
labelEncoderExtension.ImageList = m_icon_mgr.ImageList;
labelDecoderExtension.ImageList = m_icon_mgr.ImageList;
foreach (KeyValuePair<string, CUEToolsFormat> format in _config.formats)
{
ListViewItem item = new ListViewItem(format.Key, "." + format.Key);
item.Tag = format.Value;
listViewFormats.Items.Add(item);
comboBoxEncoderExtension.Items.Add(format.Key);
comboBoxDecoderExtension.Items.Add(format.Key);
}
//listViewFormats.Items[0].Selected = true;
comboBoxFormatTagger.Items.Add(CUEToolsTagger.TagLibSharp);
comboBoxFormatTagger.Items.Add(CUEToolsTagger.APEv2);
comboBoxFormatTagger.Items.Add(CUEToolsTagger.ID3v2);
foreach (KeyValuePair<string, CUEToolsScript> script in _config.scripts)
{
ListViewItem item = new ListViewItem(script.Key);
item.Tag = script.Value;
listViewScripts.Items.Add(item);
}
listViewScriptConditions.Items[0].Tag = CUEAction.Verify;
listViewScriptConditions.Items[1].Tag = CUEAction.VerifyAndConvert;
listViewScriptConditions.Items[2].Tag = CUEAction.Convert;
EnableDisable();
}
//private void DictionaryToListView(IDictionary<> dict, ListView view)
//{
// foreach (KeyValuePair<string, object> format in dict)
// {
// ListViewItem item = new ListViewItem(format.Key, format.Key);
// item.Tag = format.Value;
// listViewFormats.Items.Add(item);
// }
//}
private void frmSettings_FormClosing(object sender, FormClosingEventArgs e) {
}
@@ -119,13 +184,22 @@ namespace JDP {
private void btnOK_Click(object sender, EventArgs e)
{
if (listViewFormats.SelectedIndices.Count > 0)
listViewFormats.Items[listViewFormats.SelectedIndices[0]].Selected = false;
if (listViewEncoders.SelectedIndices.Count > 0)
listViewEncoders.Items[listViewEncoders.SelectedIndices[0]].Selected = false;
if (listViewDecoders.SelectedIndices.Count > 0)
listViewDecoders.Items[listViewDecoders.SelectedIndices[0]].Selected = false;
if (listViewScripts.SelectedItems.Count > 0)
listViewScripts.SelectedItems[0].Selected = false;
_reducePriority = chkReducePriority.Checked;
_config.preserveHTOA = chkPreserveHTOA.Checked;
_config.autoCorrectFilenames = chkAutoCorrectFilenames.Checked;
_config.flacCompressionLevel = (uint)numericFLACCompressionLevel.Value;
_config.lossyWAVQuality = (int)numericLossyWAVQuality.Value;
_config.fixWhenPercent = (uint)numFixWhenPercent.Value;
_config.fixWhenConfidence = (uint)numFixWhenConfidence.Value;
_config.fixOffsetMinimumTracksPercent = (uint)numFixWhenPercent.Value;
_config.fixOffsetMinimumConfidence = (uint)numFixWhenConfidence.Value;
_config.encodeWhenPercent = (uint)numEncodeWhenPercent.Value;
_config.encodeWhenConfidence = (uint)numEncodeWhenConfidence.Value;
_config.encodeWhenZeroOffset = chkEncodeWhenZeroOffset.Checked;
@@ -152,8 +226,6 @@ namespace JDP {
_config.replaceSpaces = chkReplaceSpaces.Checked;
_config.writeArLogOnConvert = chkWriteArLogOnConvert.Checked;
_config.writeArLogOnVerify = chkWriteARLogOnVerify.Checked;
_config.noUnverifiedOutput = chkArNoUnverifiedAudio.Checked;
_config.fixOffset = chkArFixOffset.Checked;
_config.embedLog = chkEmbedLog.Checked;
_config.extractLog = chkExtractLog.Checked;
_config.fillUpCUE = chkFillUpCUE.Checked;
@@ -167,30 +239,24 @@ namespace JDP {
_config.decodeHDCDtoLW16 = chkHDCDLW16.Checked;
_config.decodeHDCDto24bit = chkHDCD24bit.Checked;
_config.overwriteCUEData = chkOverwriteTags.Checked;
_config.oneInstance = chkSingleInstance.Checked;
_config.oneInstance = !chkAllowMultipleInstances.Checked;
_config.writeBasicTagsFromCUEData = checkBoxWriteCUETags.Checked ;
_config.copyBasicTags = checkBoxCopyBasicTags.Checked;
_config.copyUnknownTags = checkBoxCopyUnknownTags.Checked;
_config.copyAlbumArt = checkBoxCopyAlbumArt.Checked;
_config.embedAlbumArt = checkBoxEmbedAlbumArt.Checked;
_config.udc1Extension = textUDC1Extension.Text;
_config.udc1Decoder = textUDC1Decoder.Text;
_config.udc1Params = textUDC1Params.Text;
_config.udc1Encoder = textUDC1Encoder.Text;
_config.udc1EncParams = textUDC1EncParams.Text;
_config.udc1APEv2 = chkUDC1APEv2.Checked;
_config.udc1ID3v2 = chkUDC1ID3v2.Checked;
_config.arLogToSourceFolder = checkBoxARVerifyUseSourceFolder.Checked;
_config.arLogVerbose = checkBoxARLogVerbose.Checked;
_config.fixOffsetToNearest = checkBoxFixToNearest.Checked;
_config.arLogExtension = textBoxARLogExtension.Text;
_config.maxAlbumArtSize = (int) numericUpDownMaxResolution.Value;
_config.language = ((CultureInfo)comboLanguage.SelectedItem).Name;
}
private void EnableDisable()
{
numFixWhenConfidence.Enabled =
labelFixWhenConfidence.Enabled =
numFixWhenPercent.Enabled = chkArFixOffset.Checked;
numEncodeWhenConfidence.Enabled =
labelEncodeWhenConfidence.Enabled =
numEncodeWhenPercent.Enabled =
chkEncodeWhenZeroOffset.Enabled = chkArNoUnverifiedAudio.Checked;
grpHDCD.Enabled = chkHDCDDetect.Checked;
chkHDCDLW16.Enabled = chkHDCDDetect.Checked && chkHDCDDecode.Checked;
chkHDCD24bit.Enabled = chkHDCDDetect.Checked && chkHDCDDecode.Checked;
@@ -239,5 +305,605 @@ namespace JDP {
{
EnableDisable();
}
private void tabControl1_Deselecting(object sender, TabControlCancelEventArgs e)
{
if (listViewFormats.SelectedItems.Count > 0)
listViewFormats.SelectedItems[0].Selected = false;
if (listViewEncoders.SelectedItems.Count > 0)
listViewEncoders.SelectedItems[0].Selected = false;
if (listViewDecoders.SelectedItems.Count > 0)
listViewDecoders.SelectedItems[0].Selected = false;
if (listViewScripts.SelectedItems.Count > 0)
listViewScripts.SelectedItems[0].Selected = false;
}
private void listViewFormats_BeforeLabelEdit(object sender, LabelEditEventArgs e)
{
CUEToolsFormat format = (CUEToolsFormat)listViewFormats.Items[e.Item].Tag;
if (format.builtin)
e.CancelEdit = true;
}
private void listViewFormats_AfterLabelEdit(object sender, LabelEditEventArgs e)
{
CUEToolsFormat format;
if (e.Label == null || _config.formats.TryGetValue(e.Label, out format))
{
e.CancelEdit = true;
return;
}
format = (CUEToolsFormat)listViewFormats.Items[e.Item].Tag;
if (format.builtin)
{
e.CancelEdit = true;
return;
}
foreach (KeyValuePair<string, CUEToolsUDC> encoder in _config.encoders)
if (encoder.Value.extension == format.extension)
encoder.Value.extension = e.Label;
foreach (KeyValuePair<string, CUEToolsUDC> decoder in _config.decoders)
if (decoder.Value.extension == format.extension)
decoder.Value.extension = e.Label;
comboBoxEncoderExtension.Items.Remove(format.extension);
comboBoxEncoderExtension.Items.Add(e.Label);
comboBoxDecoderExtension.Items.Remove(format.extension);
comboBoxDecoderExtension.Items.Add(e.Label);
_config.formats.Remove(format.extension);
format.extension = e.Label;
_config.formats.Add(format.extension, format);
}
private void listViewFormats_KeyDown(object sender, KeyEventArgs e)
{
switch (e.KeyCode)
{
case Keys.Insert:
{
CUEToolsFormat format;
if (_config.formats.TryGetValue("new", out format))
return;
format = new CUEToolsFormat("new", CUEToolsTagger.TagLibSharp, true, true, false, false, false, null, null, null);
_config.formats.Add("new", format);
ListViewItem item = new ListViewItem(format.extension, "." + format.extension);
item.Tag = format;
listViewFormats.Items.Add(item);
comboBoxEncoderExtension.Items.Add(format.extension);
comboBoxDecoderExtension.Items.Add(format.extension);
item.BeginEdit();
break;
}
case Keys.Delete:
{
if (listViewFormats.SelectedItems.Count <= 0)
return;
CUEToolsFormat format = (CUEToolsFormat)listViewFormats.SelectedItems[0].Tag;
if (format.builtin)
return;
List<string> decodersToRemove = new List<string>();
foreach (KeyValuePair<string, CUEToolsUDC> decoder in _config.decoders)
if (decoder.Value.extension == format.extension)
decodersToRemove.Add(decoder.Key);
foreach (string decoder in decodersToRemove)
{
_config.decoders.Remove(decoder);
foreach (ListViewItem item in listViewDecoders.Items)
if (item.Text == decoder)
{
item.Remove();
break;
}
}
List<string> encodersToRemove = new List<string>();
foreach (KeyValuePair<string, CUEToolsUDC> encoder in _config.encoders)
if (encoder.Value.extension == format.extension)
encodersToRemove.Add(encoder.Key);
foreach (string encoder in encodersToRemove)
{
_config.encoders.Remove(encoder);
foreach (ListViewItem item in listViewEncoders.Items)
if (item.Text == encoder)
{
item.Remove();
break;
}
}
_config.formats.Remove(format.extension);
listViewFormats.SelectedItems[0].Remove();
break;
}
}
}
private void listViewFormats_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e)
{
if (e.IsSelected)
{
CUEToolsFormat format = (CUEToolsFormat)e.Item.Tag;
if (format == null)
return;
comboFormatLosslessEncoder.Items.Clear();
foreach (KeyValuePair<string, CUEToolsUDC> encoder in _config.encoders)
if (encoder.Value.extension == format.extension && encoder.Value.lossless)
comboFormatLosslessEncoder.Items.Add(encoder.Key);
comboFormatLosslessEncoder.SelectedItem = format.encoderLossless;
comboFormatLosslessEncoder.Enabled = format.allowLossless;
comboFormatLossyEncoder.Items.Clear();
foreach (KeyValuePair<string, CUEToolsUDC> encoder in _config.encoders)
if (encoder.Value.extension == format.extension && !encoder.Value.lossless)
comboFormatLossyEncoder.Items.Add(encoder.Key);
comboFormatLossyEncoder.SelectedItem = format.encoderLossy;
comboFormatLossyEncoder.Enabled = format.allowLossy;
comboFormatDecoder.Items.Clear();
foreach (KeyValuePair<string, CUEToolsUDC> decoder in _config.decoders)
if (decoder.Value.extension == format.extension)
comboFormatDecoder.Items.Add(decoder.Key);
comboFormatDecoder.SelectedItem = format.decoder;
comboFormatDecoder.Enabled = format.allowLossless;
comboBoxFormatTagger.SelectedItem = format.tagger;
checkBoxFormatEmbedCUESheet.Checked = format.allowEmbed;
checkBoxFormatAllowLossless.Checked = format.allowLossless;
checkBoxFormatAllowLossy.Checked = format.allowLossy;
checkBoxFormatSupportsLossyWAV.Checked = format.allowLossyWAV;
comboBoxFormatTagger.Enabled =
checkBoxFormatEmbedCUESheet.Enabled =
checkBoxFormatSupportsLossyWAV.Enabled =
checkBoxFormatAllowLossless.Enabled =
checkBoxFormatAllowLossy.Enabled =
!format.builtin;
groupBoxFormat.Visible = true;
}
else
{
groupBoxFormat.Visible = false;
CUEToolsFormat format = (CUEToolsFormat)e.Item.Tag;
if (format == null)
return;
format.encoderLossless = (string)comboFormatLosslessEncoder.SelectedItem;
format.encoderLossy = (string)comboFormatLossyEncoder.SelectedItem;
format.decoder = (string)comboFormatDecoder.SelectedItem;
if (!format.builtin)
{
format.tagger = (CUEToolsTagger)comboBoxFormatTagger.SelectedItem;
format.allowEmbed = checkBoxFormatEmbedCUESheet.Checked;
format.allowLossyWAV = checkBoxFormatSupportsLossyWAV.Checked;
format.allowLossless = checkBoxFormatAllowLossless.Checked;
format.allowLossy = checkBoxFormatAllowLossy.Checked;
}
}
}
private void comboBoxEncoderExtension_SelectedIndexChanged(object sender, EventArgs e)
{
labelEncoderExtension.ImageKey = "." + (string)comboBoxEncoderExtension.SelectedItem;
CUEToolsFormat format;
if (_config.formats.TryGetValue((string)comboBoxEncoderExtension.SelectedItem, out format))
{
checkBoxEncoderLossless.Enabled = format.allowLossless && format.allowLossy;
if (!checkBoxEncoderLossless.Enabled)
checkBoxEncoderLossless.Checked = format.allowLossless;
}
}
private void listViewEncoders_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e)
{
if (e.IsSelected)
{
CUEToolsUDC encoder = (CUEToolsUDC)e.Item.Tag;
if (encoder == null) return;
comboBoxEncoderExtension.Visible = true;
comboBoxEncoderExtension.SelectedItem = encoder.extension;
labelEncoderExtension.Visible = true;
if (encoder.path != null)
{
CUEToolsFormat format;
comboBoxEncoderExtension.Enabled = true;
groupBoxExternalEncoder.Visible = true;
textBoxEncoderPath.Text = encoder.path;
textBoxEncoderParameters.Text = encoder.parameters;
checkBoxEncoderLossless.Checked = encoder.lossless;
checkBoxEncoderLossless.Enabled = _config.formats.TryGetValue(encoder.extension, out format) && format.allowLossless && format.allowLossy;
}
else
{
comboBoxEncoderExtension.Enabled = false;
switch (encoder.className)
{
case "FLACWriter":
groupBoxLibFLAC.Visible = true;
break;
case "WavPackWriter":
groupBoxLibWavpack.Visible = true;
break;
case "APEWriter":
groupBoxLibMAC_SDK.Visible = true;
break;
}
}
}
else
{
CUEToolsUDC encoder = (CUEToolsUDC)e.Item.Tag;
if (encoder == null) return;
if (encoder.path != null)
{
if (encoder.extension != (string)comboBoxEncoderExtension.SelectedItem || encoder.lossless != checkBoxEncoderLossless.Checked)
{
if (listViewFormats.SelectedItems.Count > 0)
listViewFormats.SelectedItems[0].Selected = false;
CUEToolsFormat format;
if (_config.formats.TryGetValue(encoder.extension, out format))
{
if (format.encoderLossless == encoder.name)
format.encoderLossless = null;
if (format.encoderLossy == encoder.name)
format.encoderLossy = null;
}
encoder.extension = (string)comboBoxEncoderExtension.SelectedItem;
}
encoder.path = textBoxEncoderPath.Text;
encoder.parameters = textBoxEncoderParameters.Text;
encoder.lossless = checkBoxEncoderLossless.Checked;
}
comboBoxEncoderExtension.Visible = false;
labelEncoderExtension.Visible = false;
groupBoxExternalEncoder.Visible = false;
groupBoxLibFLAC.Visible = false;
groupBoxLibWavpack.Visible = false;
groupBoxLibMAC_SDK.Visible = false;
}
}
private void listViewEncoders_BeforeLabelEdit(object sender, LabelEditEventArgs e)
{
CUEToolsUDC encoder = (CUEToolsUDC)listViewEncoders.Items[e.Item].Tag;
if (encoder.path == null)
e.CancelEdit = true;
}
private void listViewEncoders_AfterLabelEdit(object sender, LabelEditEventArgs e)
{
CUEToolsUDC encoder;
if (e.Label == null || _config.encoders.TryGetValue(e.Label, out encoder))
{
e.CancelEdit = true;
return;
}
encoder = (CUEToolsUDC) listViewEncoders.Items[e.Item].Tag;
if (listViewFormats.SelectedItems.Count > 0)
listViewFormats.SelectedItems[0].Selected = false;
if (_config.formats[encoder.extension].encoderLossless == encoder.name)
_config.formats[encoder.extension].encoderLossless = e.Label;
if (_config.formats[encoder.extension].encoderLossy == encoder.name)
_config.formats[encoder.extension].encoderLossy = e.Label;
_config.encoders.Remove(encoder.name);
encoder.name = e.Label;
_config.encoders.Add(encoder.name, encoder);
}
private void listViewEncoders_KeyDown(object sender, KeyEventArgs e)
{
switch (e.KeyCode)
{
case Keys.Insert:
{
CUEToolsUDC encoder;
if (_config.encoders.TryGetValue("new", out encoder))
return;
encoder = new CUEToolsUDC("new", "wav", true, "", "");
_config.encoders.Add("new", encoder);
ListViewItem item = new ListViewItem(encoder.name);
item.Tag = encoder;
listViewEncoders.Items.Add(item);
item.BeginEdit();
break;
}
case Keys.Delete:
{
if (listViewEncoders.SelectedItems.Count <= 0)
return;
CUEToolsUDC encoder = (CUEToolsUDC)listViewEncoders.SelectedItems[0].Tag;
if (encoder.path == null)
return;
if (_config.formats[encoder.extension].encoderLossless == encoder.name)
_config.formats[encoder.extension].encoderLossless = null;
if (_config.formats[encoder.extension].encoderLossy == encoder.name)
_config.formats[encoder.extension].encoderLossy = null;
_config.encoders.Remove(encoder.name);
listViewEncoders.Items.Remove(listViewEncoders.SelectedItems[0]);
break;
}
}
}
private void listViewDecoders_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e)
{
if (e.IsSelected)
{
CUEToolsUDC decoder = (CUEToolsUDC)e.Item.Tag;
if (decoder == null) return;
comboBoxDecoderExtension.SelectedItem = decoder.extension;
comboBoxDecoderExtension.Visible = true;
labelDecoderExtension.Visible = true;
if (decoder.path != null)
{
comboBoxDecoderExtension.Enabled = true;
groupBoxExternalDecoder.Visible = true;
textBoxDecoderPath.Text = decoder.path;
textBoxDecoderParameters.Text = decoder.parameters;
}
else
{
comboBoxDecoderExtension.Enabled = false;
}
}
else
{
CUEToolsUDC decoder = (CUEToolsUDC)e.Item.Tag;
if (decoder == null) return;
if (decoder.path != null)
{
decoder.path = textBoxDecoderPath.Text;
decoder.parameters = textBoxDecoderParameters.Text;
if (decoder.extension != (string)comboBoxDecoderExtension.SelectedItem)
{
if (listViewFormats.SelectedItems.Count > 0)
listViewFormats.SelectedItems[0].Selected = false;
CUEToolsFormat format;
if (_config.formats.TryGetValue(decoder.extension, out format) && format.decoder == decoder.name)
format.decoder = null;
decoder.extension = (string)comboBoxDecoderExtension.SelectedItem;
}
}
comboBoxDecoderExtension.Visible = false;
labelDecoderExtension.Visible = false;
groupBoxExternalDecoder.Visible = false;
}
}
private void listViewDecoders_AfterLabelEdit(object sender, LabelEditEventArgs e)
{
CUEToolsUDC decoder;
if (e.Label == null || _config.decoders.TryGetValue(e.Label, out decoder))
{
e.CancelEdit = true;
return;
}
decoder = (CUEToolsUDC)listViewDecoders.Items[e.Item].Tag;
if (listViewFormats.SelectedItems.Count > 0)
listViewFormats.SelectedItems[0].Selected = false;
if (_config.formats[decoder.extension].decoder == decoder.name)
_config.formats[decoder.extension].decoder = e.Label;
_config.decoders.Remove(decoder.name);
decoder.name = e.Label;
_config.decoders.Add(decoder.name, decoder);
}
private void listViewDecoders_BeforeLabelEdit(object sender, LabelEditEventArgs e)
{
CUEToolsUDC decoder = (CUEToolsUDC)listViewDecoders.Items[e.Item].Tag;
if (decoder.path == null)
e.CancelEdit = true;
}
private void listViewDecoders_KeyDown(object sender, KeyEventArgs e)
{
switch (e.KeyCode)
{
case Keys.Insert:
{
CUEToolsUDC decoder;
if (_config.decoders.TryGetValue("new", out decoder))
return;
decoder = new CUEToolsUDC("new", "wav", true, "", "");
_config.decoders.Add("new", decoder);
ListViewItem item = new ListViewItem(decoder.name);
item.Tag = decoder;
listViewDecoders.Items.Add(item);
item.BeginEdit();
break;
}
case Keys.Delete:
{
if (listViewDecoders.SelectedItems.Count <= 0)
return;
CUEToolsUDC decoder = (CUEToolsUDC)listViewDecoders.SelectedItems[0].Tag;
if (decoder.path == null)
return;
if (_config.formats[decoder.extension].decoder == decoder.name)
_config.formats[decoder.extension].decoder = null;
_config.decoders.Remove(decoder.name);
listViewDecoders.Items.Remove(listViewDecoders.SelectedItems[0]);
break;
}
}
}
private void comboBoxDecoderExtension_SelectedIndexChanged(object sender, EventArgs e)
{
labelDecoderExtension.ImageKey = "." + (string)comboBoxDecoderExtension.SelectedItem;
}
private void listViewScripts_BeforeLabelEdit(object sender, LabelEditEventArgs e)
{
CUEToolsScript script = (CUEToolsScript)listViewScripts.Items[e.Item].Tag;
if (script.builtin)
e.CancelEdit = true;
}
private void listViewScripts_AfterLabelEdit(object sender, LabelEditEventArgs e)
{
CUEToolsScript script;
if (e.Label == null || _config.scripts.TryGetValue(e.Label, out script))
{
e.CancelEdit = true;
return;
}
script = (CUEToolsScript)listViewScripts.Items[e.Item].Tag;
if (script.builtin)
{
e.CancelEdit = true;
return;
}
_config.scripts.Remove(script.name);
script.name = e.Label;
_config.scripts.Add(script.name, script);
}
private void listViewScripts_KeyDown(object sender, KeyEventArgs e)
{
switch (e.KeyCode)
{
case Keys.Insert:
{
CUEToolsScript script;
if (_config.scripts.TryGetValue("new", out script))
return;
script = new CUEToolsScript("new", false, new CUEAction[] {}, "");
_config.scripts.Add("new", script);
ListViewItem item = new ListViewItem(script.name);
item.Tag = script;
listViewScripts.Items.Add(item);
item.BeginEdit();
break;
}
case Keys.Delete:
{
if (listViewScripts.SelectedItems.Count <= 0)
return;
CUEToolsScript script = (CUEToolsScript)listViewScripts.SelectedItems[0].Tag;
if (script.builtin)
return;
_config.scripts.Remove(script.name);
listViewScripts.Items.Remove(listViewScripts.SelectedItems[0]);
break;
}
}
}
private void listViewScripts_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e)
{
if (e.IsSelected)
{
CUEToolsScript script = (CUEToolsScript)e.Item.Tag;
if (script == null) return;
foreach (ListViewItem item in listViewScriptConditions.Items)
item.Checked = script.conditions.Contains((CUEAction)item.Tag);
groupBoxScriptConditions.Visible = true;
richTextBoxScript.Text = script.code;
richTextBoxScript.Visible = true;
buttonScriptCompile.Visible = true;
groupBoxScriptConditions.Enabled =
buttonScriptCompile.Enabled =
!script.builtin;
richTextBoxScript.ReadOnly = script.builtin;
}
else
{
CUEToolsScript script = (CUEToolsScript)e.Item.Tag;
if (script == null) return;
if (!script.builtin)
{
script.conditions.Clear();
foreach (ListViewItem item in listViewScriptConditions.Items)
if (item.Checked)
script.conditions.Add((CUEAction)item.Tag);
script.code = richTextBoxScript.Text;
}
groupBoxScriptConditions.Visible = false;
richTextBoxScript.Visible = false;
buttonScriptCompile.Visible = false;
}
}
private static int WordLength(string text, int pos)
{
if ((text[pos] >= 'a' && text[pos] <= 'z') ||
(text[pos] >= 'A' && text[pos] <= 'Z') ||
(text[pos] == '_'))
{
for (int len = 1; len < text.Length - pos; len++)
{
bool ok = (text[pos + len] >= 'a' && text[pos + len] <= 'z') ||
(text[pos + len] >= 'A' && text[pos + len] <= 'Z') ||
(text[pos + len] == '_');
if (!ok)
return len;
}
return text.Length - pos;
}
return 1;
}
private void buttonScriptCompile_Click(object sender, EventArgs e)
{
richTextBoxScript.SelectAll();
richTextBoxScript.SelectionColor = richTextBoxScript.ForeColor;
richTextBoxScript.DeselectAll();
try
{
CUESheet.TryCompileScript(richTextBoxScript.Text);
}
catch (Exception ex)
{
using (StringWriter sw = new StringWriter())
{
using (StringReader sr = new StringReader(ex.Message))
{
string lineStr;
while ((lineStr = sr.ReadLine()) != null)
{
string[] s = { ".tmp(" };
string[] n = lineStr.Split(s, 2, StringSplitOptions.None);
if (n.Length == 2)
{
string[] n2 = n[1].Split(")".ToCharArray(), 2);
if (n2.Length == 2)
{
string[] n3 = n2[0].Split(",".ToCharArray(), 2);
int row, col;
if (n3.Length == 2 && int.TryParse(n3[0], out row) && int.TryParse(n3[1], out col) && row > 1)
{
int pos = richTextBoxScript.GetFirstCharIndexFromLine(row - 2);
if (pos >= 0)
{
pos += col - 1;
richTextBoxScript.Select(pos, WordLength(richTextBoxScript.Text, pos));
richTextBoxScript.SelectionColor = Color.Red;
richTextBoxScript.DeselectAll();
}
}
}
sw.WriteLine("({0}", n[1]);
}
else
sw.WriteLine("{0}", lineStr);
}
}
MessageBox.Show(this, sw.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
return;
}
MessageBox.Show(this, "Script compiled successfully.", "Ok", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
}

File diff suppressed because it is too large Load Diff