2.0.2
@@ -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.
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
119
CUETools/Properties/Resources.Designer.cs
generated
@@ -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 &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));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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>&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>
|
||||
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
BIN
CUETools/Resources/ape.ico
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
BIN
CUETools/Resources/cd2.png
Normal file
|
After Width: | Height: | Size: 673 B |
BIN
CUETools/Resources/cdcue.png
Normal file
|
After Width: | Height: | Size: 639 B |
BIN
CUETools/Resources/cog.ico
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
CUETools/Resources/cue2.ico
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
CUETools/Resources/cue3.ico
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
CUETools/Resources/cuetools.icl
Normal file
BIN
CUETools/Resources/eac3.ico
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
CUETools/Resources/fish_xiph_org.ico
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
CUETools/Resources/freedb.ico
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
BIN
CUETools/Resources/info2.bmp
Normal file
|
After Width: | Height: | Size: 822 B |
BIN
CUETools/Resources/information.ico
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
BIN
CUETools/Resources/information.png
Normal file
|
After Width: | Height: | Size: 778 B |
BIN
CUETools/Resources/ipod_sound.ico
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
CUETools/Resources/monkey.bmp
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
CUETools/Resources/mp3.ico
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
CUETools/Resources/mp3logo.ico
Normal file
|
After Width: | Height: | Size: 71 KiB |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
BIN
CUETools/Resources/ogg.ico
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
CUETools/Resources/settings.ico
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
CUETools/Resources/tta.ico
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
BIN
CUETools/Resources/wave.ico
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
BIN
CUETools/Resources/wrench.png
Normal file
|
After Width: | Height: | Size: 610 B |
BIN
CUETools/Resources/wv.ico
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
@@ -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();
|
||||
|
||||
360
CUETools/frmCUETools.Designer.cs
generated
@@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -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>
|
||||
6
CUETools/frmChoice.Designer.cs
generated
@@ -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
|
||||
//
|
||||
|
||||
@@ -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">
|
||||
|
||||
55
CUETools/frmFilenameCorrector.Designer.cs
generated
@@ -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;
|
||||
}
|
||||
}
|
||||
@@ -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);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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>
|
||||
@@ -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=">>lblDescription.Name" xml:space="preserve">
|
||||
<value>lblDescription</value>
|
||||
</data>
|
||||
<data name=">>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=">>lblDescription.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>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=">>$this.Name" xml:space="preserve">
|
||||
<value>frmFilenameCorrector</value>
|
||||
</data>
|
||||
<data name=">>$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>
|
||||
1452
CUETools/frmSettings.Designer.cs
generated
@@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||