mirror of
https://github.com/claunia/cuetools.net.git
synced 2025-12-16 18:14:25 +00:00
Special GUI for CUERipper
This commit is contained in:
145
CUERipper/CUERipper.csproj
Normal file
145
CUERipper/CUERipper.csproj
Normal file
@@ -0,0 +1,145 @@
|
|||||||
|
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<PropertyGroup>
|
||||||
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||||
|
<ProductVersion>8.0.50727</ProductVersion>
|
||||||
|
<SchemaVersion>2.0</SchemaVersion>
|
||||||
|
<ProjectGuid>{39B43BBB-BAFC-4D85-9BEA-3BCB7EFED89C}</ProjectGuid>
|
||||||
|
<OutputType>WinExe</OutputType>
|
||||||
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||||
|
<RootNamespace>CUERipper</RootNamespace>
|
||||||
|
<AssemblyName>CUERipper</AssemblyName>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
|
<DebugSymbols>true</DebugSymbols>
|
||||||
|
<DebugType>full</DebugType>
|
||||||
|
<Optimize>false</Optimize>
|
||||||
|
<OutputPath>bin\Debug\</OutputPath>
|
||||||
|
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||||
|
<ErrorReport>prompt</ErrorReport>
|
||||||
|
<WarningLevel>4</WarningLevel>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||||
|
<DebugType>pdbonly</DebugType>
|
||||||
|
<Optimize>true</Optimize>
|
||||||
|
<OutputPath>bin\Release\</OutputPath>
|
||||||
|
<DefineConstants>TRACE</DefineConstants>
|
||||||
|
<ErrorReport>prompt</ErrorReport>
|
||||||
|
<WarningLevel>4</WarningLevel>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
|
||||||
|
<DebugSymbols>true</DebugSymbols>
|
||||||
|
<OutputPath>..\bin\x64\Debug\</OutputPath>
|
||||||
|
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||||
|
<DebugType>full</DebugType>
|
||||||
|
<PlatformTarget>x64</PlatformTarget>
|
||||||
|
<CodeAnalysisRuleAssemblies>C:\Program Files (x86)\Microsoft Visual Studio 8\Team Tools\Static Analysis Tools\FxCop\\rules</CodeAnalysisRuleAssemblies>
|
||||||
|
<CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
|
||||||
|
<CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
|
||||||
|
<ErrorReport>prompt</ErrorReport>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
|
||||||
|
<OutputPath>..\bin\x64\Release\</OutputPath>
|
||||||
|
<DefineConstants>TRACE</DefineConstants>
|
||||||
|
<Optimize>true</Optimize>
|
||||||
|
<DebugType>pdbonly</DebugType>
|
||||||
|
<PlatformTarget>x64</PlatformTarget>
|
||||||
|
<CodeAnalysisRuleAssemblies>C:\Program Files (x86)\Microsoft Visual Studio 8\Team Tools\Static Analysis Tools\FxCop\\rules</CodeAnalysisRuleAssemblies>
|
||||||
|
<CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
|
||||||
|
<CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
|
||||||
|
<ErrorReport>prompt</ErrorReport>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
|
||||||
|
<DebugSymbols>true</DebugSymbols>
|
||||||
|
<OutputPath>..\bin\win32\Debug\</OutputPath>
|
||||||
|
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||||
|
<DebugType>full</DebugType>
|
||||||
|
<PlatformTarget>x86</PlatformTarget>
|
||||||
|
<CodeAnalysisRuleAssemblies>C:\Program Files (x86)\Microsoft Visual Studio 8\Team Tools\Static Analysis Tools\FxCop\\rules</CodeAnalysisRuleAssemblies>
|
||||||
|
<CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
|
||||||
|
<CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
|
||||||
|
<ErrorReport>prompt</ErrorReport>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
|
||||||
|
<OutputPath>..\bin\win32\Release\</OutputPath>
|
||||||
|
<DefineConstants>TRACE</DefineConstants>
|
||||||
|
<Optimize>true</Optimize>
|
||||||
|
<DebugType>pdbonly</DebugType>
|
||||||
|
<PlatformTarget>x86</PlatformTarget>
|
||||||
|
<CodeAnalysisRuleAssemblies>C:\Program Files (x86)\Microsoft Visual Studio 8\Team Tools\Static Analysis Tools\FxCop\\rules</CodeAnalysisRuleAssemblies>
|
||||||
|
<CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
|
||||||
|
<CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
|
||||||
|
<ErrorReport>prompt</ErrorReport>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Reference Include="System" />
|
||||||
|
<Reference Include="System.Data" />
|
||||||
|
<Reference Include="System.Deployment" />
|
||||||
|
<Reference Include="System.Drawing" />
|
||||||
|
<Reference Include="System.Windows.Forms" />
|
||||||
|
<Reference Include="System.Xml" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Compile Include="frmCUERipper.cs">
|
||||||
|
<SubType>Form</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="frmCUERipper.Designer.cs">
|
||||||
|
<DependentUpon>frmCUERipper.cs</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="Program.cs" />
|
||||||
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
|
<EmbeddedResource Include="frmCUERipper.resx">
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
<DependentUpon>frmCUERipper.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="Properties\Resources.resx">
|
||||||
|
<Generator>ResXFileCodeGenerator</Generator>
|
||||||
|
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<Compile Include="Properties\Resources.Designer.cs">
|
||||||
|
<AutoGen>True</AutoGen>
|
||||||
|
<DependentUpon>Resources.resx</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<None Include="Properties\DataSources\MusicBrainz.Release.datasource" />
|
||||||
|
<None Include="Properties\Settings.settings">
|
||||||
|
<Generator>SettingsSingleFileGenerator</Generator>
|
||||||
|
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||||
|
</None>
|
||||||
|
<Compile Include="Properties\Settings.Designer.cs">
|
||||||
|
<AutoGen>True</AutoGen>
|
||||||
|
<DependentUpon>Settings.settings</DependentUpon>
|
||||||
|
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||||
|
</Compile>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\CUETools.AccurateRip\CUETools.AccurateRip.csproj">
|
||||||
|
<Project>{5802C7E9-157E-4124-946D-70B5AE48A5A1}</Project>
|
||||||
|
<Name>CUETools.AccurateRip</Name>
|
||||||
|
</ProjectReference>
|
||||||
|
<ProjectReference Include="..\CUETools.CDImage\CUETools.CDImage.csproj">
|
||||||
|
<Project>{1DD41038-D885-46C5-8DDE-E0B82F066584}</Project>
|
||||||
|
<Name>CUETools.CDImage</Name>
|
||||||
|
</ProjectReference>
|
||||||
|
<ProjectReference Include="..\CUETools.Codecs\CUETools.Codecs.csproj">
|
||||||
|
<Project>{6458A13A-30EF-45A9-9D58-E5031B17BEE2}</Project>
|
||||||
|
<Name>CUETools.Codecs</Name>
|
||||||
|
</ProjectReference>
|
||||||
|
<ProjectReference Include="..\CUETools.Ripper.SCSI\CUETools.Ripper.SCSI.csproj">
|
||||||
|
<Project>{8CF07381-BEA2-4AFC-B3DD-9B2F21C65A3A}</Project>
|
||||||
|
<Name>CUETools.Ripper.SCSI</Name>
|
||||||
|
</ProjectReference>
|
||||||
|
<ProjectReference Include="..\MusicBrainz\MusicBrainz.csproj">
|
||||||
|
<Project>{74C2036B-2C9B-4FC8-B7BD-AE81A8DCE533}</Project>
|
||||||
|
<Name>MusicBrainz</Name>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||||
|
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||||
|
Other similar extension points exist, see Microsoft.Common.targets.
|
||||||
|
<Target Name="BeforeBuild">
|
||||||
|
</Target>
|
||||||
|
<Target Name="AfterBuild">
|
||||||
|
</Target>
|
||||||
|
-->
|
||||||
|
</Project>
|
||||||
20
CUERipper/Program.cs
Normal file
20
CUERipper/Program.cs
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
|
namespace CUERipper
|
||||||
|
{
|
||||||
|
static class Program
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The main entry point for the application.
|
||||||
|
/// </summary>
|
||||||
|
[STAThread]
|
||||||
|
static void Main()
|
||||||
|
{
|
||||||
|
Application.EnableVisualStyles();
|
||||||
|
Application.SetCompatibleTextRenderingDefault(false);
|
||||||
|
Application.Run(new frmCUERipper());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
33
CUERipper/Properties/AssemblyInfo.cs
Normal file
33
CUERipper/Properties/AssemblyInfo.cs
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
using System.Reflection;
|
||||||
|
using System.Runtime.CompilerServices;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
|
||||||
|
// General Information about an assembly is controlled through the following
|
||||||
|
// set of attributes. Change these attribute values to modify the information
|
||||||
|
// associated with an assembly.
|
||||||
|
[assembly: AssemblyTitle("CUERipper")]
|
||||||
|
[assembly: AssemblyDescription("")]
|
||||||
|
[assembly: AssemblyConfiguration("")]
|
||||||
|
[assembly: AssemblyCompany("Microsoft")]
|
||||||
|
[assembly: AssemblyProduct("CUERipper")]
|
||||||
|
[assembly: AssemblyCopyright("Copyright © Microsoft 2008")]
|
||||||
|
[assembly: AssemblyTrademark("")]
|
||||||
|
[assembly: AssemblyCulture("")]
|
||||||
|
|
||||||
|
// Setting ComVisible to false makes the types in this assembly not visible
|
||||||
|
// to COM components. If you need to access a type in this assembly from
|
||||||
|
// COM, set the ComVisible attribute to true on that type.
|
||||||
|
[assembly: ComVisible(false)]
|
||||||
|
|
||||||
|
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
||||||
|
[assembly: Guid("ca7d1e64-3d22-410c-bfb3-ececa7aaeb90")]
|
||||||
|
|
||||||
|
// Version information for an assembly consists of the following four values:
|
||||||
|
//
|
||||||
|
// Major Version
|
||||||
|
// Minor Version
|
||||||
|
// Build Number
|
||||||
|
// Revision
|
||||||
|
//
|
||||||
|
[assembly: AssemblyVersion("1.0.0.0")]
|
||||||
|
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!--
|
||||||
|
This file is automatically generated by Visual Studio .Net. It is
|
||||||
|
used to store generic object data source configuration information.
|
||||||
|
Renaming the file extension or editing the content of this file may
|
||||||
|
cause the file to be unrecognizable by the program.
|
||||||
|
-->
|
||||||
|
<GenericObjectDataSource DisplayName="Release" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
|
||||||
|
<TypeInfo>MusicBrainz.Release, MusicBrainz, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
|
||||||
|
</GenericObjectDataSource>
|
||||||
71
CUERipper/Properties/Resources.Designer.cs
generated
Normal file
71
CUERipper/Properties/Resources.Designer.cs
generated
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// This code was generated by a tool.
|
||||||
|
// Runtime Version:2.0.50727.1434
|
||||||
|
//
|
||||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
|
// the code is regenerated.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace CUERipper.Properties
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// A strongly-typed resource class, for looking up localized strings, etc.
|
||||||
|
/// </summary>
|
||||||
|
// This class was auto-generated by the StronglyTypedResourceBuilder
|
||||||
|
// class via a tool like ResGen or Visual Studio.
|
||||||
|
// To add or remove a member, edit your .ResX file then rerun ResGen
|
||||||
|
// with the /str option, or rebuild your VS project.
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0")]
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||||
|
internal class Resources
|
||||||
|
{
|
||||||
|
|
||||||
|
private static global::System.Resources.ResourceManager resourceMan;
|
||||||
|
|
||||||
|
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||||
|
|
||||||
|
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||||
|
internal Resources()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns the cached ResourceManager instance used by this class.
|
||||||
|
/// </summary>
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
internal static global::System.Resources.ResourceManager ResourceManager
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if ((resourceMan == null))
|
||||||
|
{
|
||||||
|
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("CUERipper.Properties.Resources", typeof(Resources).Assembly);
|
||||||
|
resourceMan = temp;
|
||||||
|
}
|
||||||
|
return resourceMan;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Overrides the current thread's CurrentUICulture property for all
|
||||||
|
/// resource lookups using this strongly typed resource class.
|
||||||
|
/// </summary>
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
internal static global::System.Globalization.CultureInfo Culture
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return resourceCulture;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
resourceCulture = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
117
CUERipper/Properties/Resources.resx
Normal file
117
CUERipper/Properties/Resources.resx
Normal file
@@ -0,0 +1,117 @@
|
|||||||
|
<?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.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: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" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
</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" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
</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>
|
||||||
|
</root>
|
||||||
30
CUERipper/Properties/Settings.Designer.cs
generated
Normal file
30
CUERipper/Properties/Settings.Designer.cs
generated
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// This code was generated by a tool.
|
||||||
|
// Runtime Version:2.0.50727.1434
|
||||||
|
//
|
||||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
|
// the code is regenerated.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace CUERipper.Properties
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "8.0.0.0")]
|
||||||
|
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
|
||||||
|
{
|
||||||
|
|
||||||
|
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||||
|
|
||||||
|
public static Settings Default
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return defaultInstance;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
7
CUERipper/Properties/Settings.settings
Normal file
7
CUERipper/Properties/Settings.settings
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
<?xml version='1.0' encoding='utf-8'?>
|
||||||
|
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
|
||||||
|
<Profiles>
|
||||||
|
<Profile Name="(Default)" />
|
||||||
|
</Profiles>
|
||||||
|
<Settings />
|
||||||
|
</SettingsFile>
|
||||||
241
CUERipper/frmCUERipper.Designer.cs
generated
Normal file
241
CUERipper/frmCUERipper.Designer.cs
generated
Normal file
@@ -0,0 +1,241 @@
|
|||||||
|
namespace CUERipper
|
||||||
|
{
|
||||||
|
partial class frmCUERipper
|
||||||
|
{
|
||||||
|
/// <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()
|
||||||
|
{
|
||||||
|
this.components = new System.ComponentModel.Container();
|
||||||
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmCUERipper));
|
||||||
|
this.comboDrives = new System.Windows.Forms.ComboBox();
|
||||||
|
this.statusStrip1 = new System.Windows.Forms.StatusStrip();
|
||||||
|
this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
|
||||||
|
this.toolStripProgressBar1 = new System.Windows.Forms.ToolStripProgressBar();
|
||||||
|
this.toolStripProgressBar2 = new System.Windows.Forms.ToolStripProgressBar();
|
||||||
|
this.listTracks = new System.Windows.Forms.ListView();
|
||||||
|
this.TrackNo = new System.Windows.Forms.ColumnHeader();
|
||||||
|
this.Title = new System.Windows.Forms.ColumnHeader();
|
||||||
|
this.Start = new System.Windows.Forms.ColumnHeader();
|
||||||
|
this.Length = new System.Windows.Forms.ColumnHeader();
|
||||||
|
this.buttonGo = new System.Windows.Forms.Button();
|
||||||
|
this.comboLossless = new System.Windows.Forms.ComboBox();
|
||||||
|
this.comboCodec = new System.Windows.Forms.ComboBox();
|
||||||
|
this.comboImage = new System.Windows.Forms.ComboBox();
|
||||||
|
this.buttonAbort = new System.Windows.Forms.Button();
|
||||||
|
this.buttonPause = new System.Windows.Forms.Button();
|
||||||
|
this.comboRelease = new System.Windows.Forms.ComboBox();
|
||||||
|
this.releaseBindingSource = new System.Windows.Forms.BindingSource(this.components);
|
||||||
|
this.statusStrip1.SuspendLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.releaseBindingSource)).BeginInit();
|
||||||
|
this.SuspendLayout();
|
||||||
|
//
|
||||||
|
// comboDrives
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.comboDrives, "comboDrives");
|
||||||
|
this.comboDrives.DisplayMember = "Path";
|
||||||
|
this.comboDrives.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||||
|
this.comboDrives.FormattingEnabled = true;
|
||||||
|
this.comboDrives.Name = "comboDrives";
|
||||||
|
this.comboDrives.ValueMember = "Path";
|
||||||
|
this.comboDrives.SelectedIndexChanged += new System.EventHandler(this.comboDrives_SelectedIndexChanged);
|
||||||
|
//
|
||||||
|
// statusStrip1
|
||||||
|
//
|
||||||
|
this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.toolStripStatusLabel1,
|
||||||
|
this.toolStripProgressBar1,
|
||||||
|
this.toolStripProgressBar2});
|
||||||
|
resources.ApplyResources(this.statusStrip1, "statusStrip1");
|
||||||
|
this.statusStrip1.Name = "statusStrip1";
|
||||||
|
this.statusStrip1.SizingGrip = false;
|
||||||
|
//
|
||||||
|
// toolStripStatusLabel1
|
||||||
|
//
|
||||||
|
this.toolStripStatusLabel1.Name = "toolStripStatusLabel1";
|
||||||
|
resources.ApplyResources(this.toolStripStatusLabel1, "toolStripStatusLabel1");
|
||||||
|
this.toolStripStatusLabel1.Spring = true;
|
||||||
|
//
|
||||||
|
// toolStripProgressBar1
|
||||||
|
//
|
||||||
|
this.toolStripProgressBar1.AutoToolTip = true;
|
||||||
|
this.toolStripProgressBar1.Name = "toolStripProgressBar1";
|
||||||
|
resources.ApplyResources(this.toolStripProgressBar1, "toolStripProgressBar1");
|
||||||
|
this.toolStripProgressBar1.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
|
||||||
|
//
|
||||||
|
// toolStripProgressBar2
|
||||||
|
//
|
||||||
|
this.toolStripProgressBar2.AutoToolTip = true;
|
||||||
|
this.toolStripProgressBar2.Name = "toolStripProgressBar2";
|
||||||
|
resources.ApplyResources(this.toolStripProgressBar2, "toolStripProgressBar2");
|
||||||
|
this.toolStripProgressBar2.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
|
||||||
|
//
|
||||||
|
// listTracks
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.listTracks, "listTracks");
|
||||||
|
this.listTracks.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
||||||
|
this.TrackNo,
|
||||||
|
this.Title,
|
||||||
|
this.Start,
|
||||||
|
this.Length});
|
||||||
|
this.listTracks.FullRowSelect = true;
|
||||||
|
this.listTracks.GridLines = true;
|
||||||
|
this.listTracks.Name = "listTracks";
|
||||||
|
this.listTracks.UseCompatibleStateImageBehavior = false;
|
||||||
|
this.listTracks.View = System.Windows.Forms.View.Details;
|
||||||
|
//
|
||||||
|
// TrackNo
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.TrackNo, "TrackNo");
|
||||||
|
//
|
||||||
|
// Title
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.Title, "Title");
|
||||||
|
//
|
||||||
|
// Start
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.Start, "Start");
|
||||||
|
//
|
||||||
|
// Length
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.Length, "Length");
|
||||||
|
//
|
||||||
|
// buttonGo
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.buttonGo, "buttonGo");
|
||||||
|
this.buttonGo.Name = "buttonGo";
|
||||||
|
this.buttonGo.UseVisualStyleBackColor = true;
|
||||||
|
this.buttonGo.Click += new System.EventHandler(this.buttonGo_Click);
|
||||||
|
//
|
||||||
|
// comboLossless
|
||||||
|
//
|
||||||
|
this.comboLossless.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||||
|
resources.ApplyResources(this.comboLossless, "comboLossless");
|
||||||
|
this.comboLossless.FormattingEnabled = true;
|
||||||
|
this.comboLossless.Items.AddRange(new object[] {
|
||||||
|
resources.GetString("comboLossless.Items"),
|
||||||
|
resources.GetString("comboLossless.Items1"),
|
||||||
|
resources.GetString("comboLossless.Items2")});
|
||||||
|
this.comboLossless.Name = "comboLossless";
|
||||||
|
//
|
||||||
|
// comboCodec
|
||||||
|
//
|
||||||
|
this.comboCodec.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||||
|
resources.ApplyResources(this.comboCodec, "comboCodec");
|
||||||
|
this.comboCodec.FormattingEnabled = true;
|
||||||
|
this.comboCodec.Items.AddRange(new object[] {
|
||||||
|
resources.GetString("comboCodec.Items"),
|
||||||
|
resources.GetString("comboCodec.Items1"),
|
||||||
|
resources.GetString("comboCodec.Items2"),
|
||||||
|
resources.GetString("comboCodec.Items3")});
|
||||||
|
this.comboCodec.Name = "comboCodec";
|
||||||
|
//
|
||||||
|
// comboImage
|
||||||
|
//
|
||||||
|
this.comboImage.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||||
|
resources.ApplyResources(this.comboImage, "comboImage");
|
||||||
|
this.comboImage.FormattingEnabled = true;
|
||||||
|
this.comboImage.Items.AddRange(new object[] {
|
||||||
|
resources.GetString("comboImage.Items"),
|
||||||
|
resources.GetString("comboImage.Items1")});
|
||||||
|
this.comboImage.Name = "comboImage";
|
||||||
|
//
|
||||||
|
// buttonAbort
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.buttonAbort, "buttonAbort");
|
||||||
|
this.buttonAbort.Name = "buttonAbort";
|
||||||
|
this.buttonAbort.UseVisualStyleBackColor = true;
|
||||||
|
this.buttonAbort.Click += new System.EventHandler(this.buttonAbort_Click);
|
||||||
|
//
|
||||||
|
// buttonPause
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.buttonPause, "buttonPause");
|
||||||
|
this.buttonPause.Name = "buttonPause";
|
||||||
|
this.buttonPause.UseVisualStyleBackColor = true;
|
||||||
|
this.buttonPause.Click += new System.EventHandler(this.buttonPause_Click);
|
||||||
|
//
|
||||||
|
// comboRelease
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.comboRelease, "comboRelease");
|
||||||
|
this.comboRelease.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||||
|
this.comboRelease.FormattingEnabled = true;
|
||||||
|
this.comboRelease.Name = "comboRelease";
|
||||||
|
this.comboRelease.SelectedIndexChanged += new System.EventHandler(this.comboRelease_SelectedIndexChanged);
|
||||||
|
this.comboRelease.Format += new System.Windows.Forms.ListControlConvertEventHandler(this.comboRelease_Format);
|
||||||
|
//
|
||||||
|
// releaseBindingSource
|
||||||
|
//
|
||||||
|
this.releaseBindingSource.DataSource = typeof(MusicBrainz.Release);
|
||||||
|
//
|
||||||
|
// frmCUERipper
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this, "$this");
|
||||||
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
|
this.Controls.Add(this.comboRelease);
|
||||||
|
this.Controls.Add(this.buttonPause);
|
||||||
|
this.Controls.Add(this.buttonAbort);
|
||||||
|
this.Controls.Add(this.comboImage);
|
||||||
|
this.Controls.Add(this.comboCodec);
|
||||||
|
this.Controls.Add(this.comboLossless);
|
||||||
|
this.Controls.Add(this.buttonGo);
|
||||||
|
this.Controls.Add(this.listTracks);
|
||||||
|
this.Controls.Add(this.statusStrip1);
|
||||||
|
this.Controls.Add(this.comboDrives);
|
||||||
|
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
|
||||||
|
this.MaximizeBox = false;
|
||||||
|
this.Name = "frmCUERipper";
|
||||||
|
this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide;
|
||||||
|
this.Load += new System.EventHandler(this.frmCUERipper_Load);
|
||||||
|
this.statusStrip1.ResumeLayout(false);
|
||||||
|
this.statusStrip1.PerformLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.releaseBindingSource)).EndInit();
|
||||||
|
this.ResumeLayout(false);
|
||||||
|
this.PerformLayout();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private System.Windows.Forms.ComboBox comboDrives;
|
||||||
|
private System.Windows.Forms.StatusStrip statusStrip1;
|
||||||
|
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel1;
|
||||||
|
private System.Windows.Forms.ToolStripProgressBar toolStripProgressBar1;
|
||||||
|
private System.Windows.Forms.ToolStripProgressBar toolStripProgressBar2;
|
||||||
|
private System.Windows.Forms.ListView listTracks;
|
||||||
|
private System.Windows.Forms.ColumnHeader TrackNo;
|
||||||
|
private System.Windows.Forms.ColumnHeader Title;
|
||||||
|
private System.Windows.Forms.ColumnHeader Start;
|
||||||
|
private System.Windows.Forms.ColumnHeader Length;
|
||||||
|
private System.Windows.Forms.Button buttonGo;
|
||||||
|
private System.Windows.Forms.ComboBox comboLossless;
|
||||||
|
private System.Windows.Forms.ComboBox comboCodec;
|
||||||
|
private System.Windows.Forms.ComboBox comboImage;
|
||||||
|
private System.Windows.Forms.Button buttonAbort;
|
||||||
|
private System.Windows.Forms.Button buttonPause;
|
||||||
|
private System.Windows.Forms.ComboBox comboRelease;
|
||||||
|
private System.Windows.Forms.BindingSource releaseBindingSource;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
294
CUERipper/frmCUERipper.cs
Normal file
294
CUERipper/frmCUERipper.cs
Normal file
@@ -0,0 +1,294 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Collections.ObjectModel;
|
||||||
|
using System.ComponentModel;
|
||||||
|
using System.Data;
|
||||||
|
using System.Drawing;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
using CUETools.Ripper.SCSI;
|
||||||
|
using CUETools.CDImage;
|
||||||
|
using MusicBrainz;
|
||||||
|
|
||||||
|
namespace CUERipper
|
||||||
|
{
|
||||||
|
public partial class frmCUERipper : Form
|
||||||
|
{
|
||||||
|
private CDDriveReader _reader = null;
|
||||||
|
private Thread _workThread = null;
|
||||||
|
private StartStop _startStop;
|
||||||
|
|
||||||
|
public frmCUERipper()
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
_startStop = new StartStop();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void frmCUERipper_Load(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
foreach(char drive in CDDriveReader.DrivesAvailable())
|
||||||
|
{
|
||||||
|
CDDriveReader reader = new CDDriveReader();
|
||||||
|
if (reader.Open(drive))
|
||||||
|
comboDrives.Items.Add(reader);
|
||||||
|
}
|
||||||
|
if (comboDrives.Items.Count == 0)
|
||||||
|
comboDrives.Items.Add("No CD drives found");
|
||||||
|
comboDrives.SelectedIndex = 0;
|
||||||
|
comboLossless.SelectedIndex = 0;
|
||||||
|
comboCodec.SelectedIndex = 0;
|
||||||
|
comboImage.SelectedIndex = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SetupControls ()
|
||||||
|
{
|
||||||
|
bool running = _workThread != null;
|
||||||
|
listTracks.Enabled = !running;
|
||||||
|
comboDrives.Enabled = !running;
|
||||||
|
comboRelease.Enabled = !running;
|
||||||
|
buttonPause.Visible = buttonPause.Enabled = buttonAbort.Visible = buttonAbort.Enabled = running;
|
||||||
|
buttonGo.Visible = buttonGo.Enabled = !running;
|
||||||
|
toolStripStatusLabel1.Text = String.Empty;
|
||||||
|
toolStripProgressBar1.Value = 0;
|
||||||
|
toolStripProgressBar2.Value = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void CDReadProgress(object sender, ReadProgressArgs e)
|
||||||
|
{
|
||||||
|
CDDriveReader audioSource = (CDDriveReader)sender;
|
||||||
|
lock (_startStop)
|
||||||
|
{
|
||||||
|
if (_startStop._stop)
|
||||||
|
{
|
||||||
|
_startStop._stop = false;
|
||||||
|
_startStop._pause = false;
|
||||||
|
throw new StopException();
|
||||||
|
}
|
||||||
|
if (_startStop._pause)
|
||||||
|
{
|
||||||
|
this.BeginInvoke((MethodInvoker)delegate()
|
||||||
|
{
|
||||||
|
toolStripStatusLabel1.Text = "Paused...";
|
||||||
|
});
|
||||||
|
Monitor.Wait(_startStop);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
int processed = e.Position - e.PassStart;
|
||||||
|
TimeSpan elapsed = DateTime.Now - e.PassTime;
|
||||||
|
double speed = elapsed.TotalSeconds > 0 ? processed / elapsed.TotalSeconds / 75 : 1.0;
|
||||||
|
|
||||||
|
double percentDisk = (double)(e.PassStart + (processed + e.Pass * (e.PassEnd - e.PassStart)) / (audioSource.CorrectionQuality + 1)) / audioSource.TOC.AudioLength;
|
||||||
|
double percentTrck = (double)(e.Position - e.PassStart) / (e.PassEnd - e.PassStart);
|
||||||
|
string status = string.Format("Ripping @{0:00.00}x {1}", speed, e.Pass > 0 ? " (Retry " + e.Pass.ToString() + ")" : "");
|
||||||
|
|
||||||
|
this.BeginInvoke((MethodInvoker)delegate()
|
||||||
|
{
|
||||||
|
toolStripStatusLabel1.Text = status;
|
||||||
|
toolStripProgressBar1.Value = Math.Max(0, Math.Min(100, (int)(percentTrck * 100)));
|
||||||
|
toolStripProgressBar2.Value = Math.Max(0, Math.Min(100, (int)(percentDisk * 100)));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Rip(object o)
|
||||||
|
{
|
||||||
|
CDDriveReader audioSource = (CDDriveReader)o;
|
||||||
|
audioSource.ReadProgress += new EventHandler<ReadProgressArgs>(CDReadProgress);
|
||||||
|
int[,] buff = new int[audioSource.BestBlockSize, audioSource.ChannelCount];
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
audioSource.Position = 0;
|
||||||
|
do
|
||||||
|
{
|
||||||
|
uint toRead = Math.Min((uint)buff.GetLength(0), (uint)audioSource.Remaining);
|
||||||
|
uint samplesRead = audioSource.Read(buff, toRead);
|
||||||
|
if (samplesRead == 0) break;
|
||||||
|
if (samplesRead != toRead)
|
||||||
|
throw new Exception("samples read != samples requested");
|
||||||
|
//arVerify.Write(buff, samplesRead);
|
||||||
|
//audioDest.Write(buff, samplesRead);
|
||||||
|
} while (true);
|
||||||
|
}
|
||||||
|
catch (StopException)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
this.Invoke((MethodInvoker)delegate()
|
||||||
|
{
|
||||||
|
string message = "Exception";
|
||||||
|
for (Exception e = ex; e != null; e = e.InnerException)
|
||||||
|
message += ": " + e.Message;
|
||||||
|
DialogResult dlgRes = MessageBox.Show(this, message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
_workThread = null;
|
||||||
|
SetupControls();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void buttonGo_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (_reader == null)
|
||||||
|
return;
|
||||||
|
_workThread = new Thread(Rip);
|
||||||
|
_workThread.Priority = ThreadPriority.BelowNormal;
|
||||||
|
_workThread.IsBackground = true;
|
||||||
|
SetupControls();
|
||||||
|
_workThread.Start(_reader);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void buttonAbort_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
lock (_startStop)
|
||||||
|
{
|
||||||
|
if (_startStop._pause)
|
||||||
|
{
|
||||||
|
_startStop._pause = false;
|
||||||
|
Monitor.Pulse(_startStop);
|
||||||
|
}
|
||||||
|
_startStop._stop = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void buttonPause_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
lock (_startStop)
|
||||||
|
{
|
||||||
|
if (_startStop._pause)
|
||||||
|
{
|
||||||
|
_startStop._pause = false;
|
||||||
|
Monitor.Pulse(_startStop);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_startStop._pause = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void comboRelease_Format(object sender, ListControlConvertEventArgs e)
|
||||||
|
{
|
||||||
|
if (e.ListItem is string)
|
||||||
|
return;
|
||||||
|
ReadOnlyCollection<Event> events = ((Release)e.ListItem).GetEvents();
|
||||||
|
string year = events.Count > 0 ? events[0].Date.Substring(0, 4) + ": " : "";
|
||||||
|
e.Value = string.Format("{0}{1} - {2}", year, ((Release)e.ListItem).GetArtist(), ((Release)e.ListItem).GetTitle());
|
||||||
|
}
|
||||||
|
|
||||||
|
private void comboRelease_SelectedIndexChanged(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
listTracks.Items.Clear();
|
||||||
|
if (comboRelease.SelectedItem == null || comboRelease.SelectedItem is string)
|
||||||
|
{
|
||||||
|
for (int i = 1; i <= _reader.TOC.AudioTracks; i++)
|
||||||
|
listTracks.Items.Add(new ListViewItem(new string[] { _reader.TOC[i].Number.ToString(), "Track " + _reader.TOC[i].Number.ToString(), _reader.TOC[i].StartMSF, _reader.TOC[i].LengthMSF }));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
Release release = (Release) comboRelease.SelectedItem;
|
||||||
|
for (int i = 1; i <= _reader.TOC.AudioTracks; i++)
|
||||||
|
{
|
||||||
|
Track track = release.GetTracks()[(int)_reader.TOC[i].Number - 1];
|
||||||
|
listTracks.Items.Add(new ListViewItem(new string[] { _reader.TOC[i].Number.ToString(), track.GetTitle(), _reader.TOC[i].StartMSF, _reader.TOC[i].LengthMSF }));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void MusicBrainz_LookupProgress(object sender, XmlRequestEventArgs e)
|
||||||
|
{
|
||||||
|
//_progress.percentDisk = (1.0 + _progress.percentDisk) / 2;
|
||||||
|
//_progress.input = e.Uri.ToString();
|
||||||
|
lock (_startStop)
|
||||||
|
{
|
||||||
|
if (_startStop._stop)
|
||||||
|
{
|
||||||
|
_startStop._stop = false;
|
||||||
|
_startStop._pause = false;
|
||||||
|
throw new StopException();
|
||||||
|
}
|
||||||
|
if (_startStop._pause)
|
||||||
|
{
|
||||||
|
this.BeginInvoke((MethodInvoker)delegate()
|
||||||
|
{
|
||||||
|
toolStripStatusLabel1.Text = "Paused...";
|
||||||
|
});
|
||||||
|
Monitor.Wait(_startStop);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.BeginInvoke((MethodInvoker)delegate()
|
||||||
|
{
|
||||||
|
toolStripStatusLabel1.Text = "Looking up album via MusicBrainz";
|
||||||
|
toolStripProgressBar1.Value = 0;
|
||||||
|
toolStripProgressBar2.Value = (100 + toolStripProgressBar2.Value) / 2;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Lookup(object o)
|
||||||
|
{
|
||||||
|
CDDriveReader audioSource = (CDDriveReader)o;
|
||||||
|
|
||||||
|
ReleaseQueryParameters p = new ReleaseQueryParameters();
|
||||||
|
p.DiscId = _reader.TOC.MusicBrainzId;
|
||||||
|
Query<Release> results = Release.Query(p);
|
||||||
|
MusicBrainzService.XmlRequest += new EventHandler<XmlRequestEventArgs>(MusicBrainz_LookupProgress);
|
||||||
|
foreach (Release release in results)
|
||||||
|
{
|
||||||
|
release.GetEvents();
|
||||||
|
release.GetTracks();
|
||||||
|
this.BeginInvoke((MethodInvoker)delegate()
|
||||||
|
{
|
||||||
|
comboRelease.Items.Add(release);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
MusicBrainzService.XmlRequest -= new EventHandler<XmlRequestEventArgs>(MusicBrainz_LookupProgress);
|
||||||
|
this.BeginInvoke((MethodInvoker)delegate()
|
||||||
|
{
|
||||||
|
if (comboRelease.Items.Count == 0)
|
||||||
|
comboRelease.Items.Add("MusicBrainz: not found");
|
||||||
|
});
|
||||||
|
_workThread = null;
|
||||||
|
SetupControls();
|
||||||
|
this.BeginInvoke((MethodInvoker)delegate()
|
||||||
|
{
|
||||||
|
comboRelease.SelectedIndex = 0;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
private void comboDrives_SelectedIndexChanged(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
comboRelease.Items.Clear();
|
||||||
|
listTracks.Items.Clear();
|
||||||
|
if (comboDrives.SelectedItem is string)
|
||||||
|
return;
|
||||||
|
_reader = (CDDriveReader)comboDrives.SelectedItem;
|
||||||
|
if (_reader.TOC.AudioTracks == 0)
|
||||||
|
{
|
||||||
|
comboRelease.Items.Add("No audio tracks");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
comboRelease_SelectedIndexChanged(sender, e);
|
||||||
|
_workThread = new Thread(Lookup);
|
||||||
|
_workThread.Priority = ThreadPriority.BelowNormal;
|
||||||
|
_workThread.IsBackground = true;
|
||||||
|
SetupControls();
|
||||||
|
_workThread.Start(_reader);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class StopException : Exception
|
||||||
|
{
|
||||||
|
public StopException()
|
||||||
|
: base()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class StartStop
|
||||||
|
{
|
||||||
|
public bool _stop, _pause;
|
||||||
|
public StartStop()
|
||||||
|
{
|
||||||
|
_stop = false;
|
||||||
|
_pause = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
528
CUERipper/frmCUERipper.resx
Normal file
528
CUERipper/frmCUERipper.resx
Normal file
@@ -0,0 +1,528 @@
|
|||||||
|
<?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.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||||
|
<data name="comboDrives.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||||
|
<value>Top, Left, Right</value>
|
||||||
|
</data>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="comboDrives.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>6, 6</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboDrives.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>481, 21</value>
|
||||||
|
</data>
|
||||||
|
<assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||||
|
<data name="comboDrives.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>1</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboDrives.Name" xml:space="preserve">
|
||||||
|
<value>comboDrives</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboDrives.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboDrives.Parent" xml:space="preserve">
|
||||||
|
<value>$this</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboDrives.ZOrder" xml:space="preserve">
|
||||||
|
<value>9</value>
|
||||||
|
</data>
|
||||||
|
<metadata name="statusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>0, 371</value>
|
||||||
|
</metadata>
|
||||||
|
<data name="toolStripStatusLabel1.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>200, 17</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripStatusLabel1.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||||
|
<value>MiddleLeft</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripProgressBar1.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>140, 16</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripProgressBar1.ToolTipText" xml:space="preserve">
|
||||||
|
<value>Track progress</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripProgressBar2.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>140, 16</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripProgressBar2.ToolTipText" xml:space="preserve">
|
||||||
|
<value>Disk progress</value>
|
||||||
|
</data>
|
||||||
|
<data name="statusStrip1.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>0, 371</value>
|
||||||
|
</data>
|
||||||
|
<data name="statusStrip1.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>499, 22</value>
|
||||||
|
</data>
|
||||||
|
<data name="statusStrip1.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>12</value>
|
||||||
|
</data>
|
||||||
|
<data name="statusStrip1.Text" xml:space="preserve">
|
||||||
|
<value>statusStrip1</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>statusStrip1.Name" xml:space="preserve">
|
||||||
|
<value>statusStrip1</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>statusStrip1.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.StatusStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>statusStrip1.Parent" xml:space="preserve">
|
||||||
|
<value>$this</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>statusStrip1.ZOrder" xml:space="preserve">
|
||||||
|
<value>8</value>
|
||||||
|
</data>
|
||||||
|
<data name="listTracks.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||||
|
<value>Top, Left, Right</value>
|
||||||
|
</data>
|
||||||
|
<data name="TrackNo.Text" xml:space="preserve">
|
||||||
|
<value>#</value>
|
||||||
|
</data>
|
||||||
|
<data name="TrackNo.Width" type="System.Int32, mscorlib">
|
||||||
|
<value>30</value>
|
||||||
|
</data>
|
||||||
|
<data name="Title.Text" xml:space="preserve">
|
||||||
|
<value>Title</value>
|
||||||
|
</data>
|
||||||
|
<data name="Title.Width" type="System.Int32, mscorlib">
|
||||||
|
<value>307</value>
|
||||||
|
</data>
|
||||||
|
<data name="Start.Text" xml:space="preserve">
|
||||||
|
<value>Start</value>
|
||||||
|
</data>
|
||||||
|
<data name="Start.Width" type="System.Int32, mscorlib">
|
||||||
|
<value>70</value>
|
||||||
|
</data>
|
||||||
|
<data name="Length.Text" xml:space="preserve">
|
||||||
|
<value>Length</value>
|
||||||
|
</data>
|
||||||
|
<data name="Length.Width" type="System.Int32, mscorlib">
|
||||||
|
<value>70</value>
|
||||||
|
</data>
|
||||||
|
<data name="listTracks.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>6, 60</value>
|
||||||
|
</data>
|
||||||
|
<data name="listTracks.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>481, 269</value>
|
||||||
|
</data>
|
||||||
|
<data name="listTracks.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>0</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>listTracks.Name" xml:space="preserve">
|
||||||
|
<value>listTracks</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>listTracks.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ListView, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>listTracks.Parent" xml:space="preserve">
|
||||||
|
<value>$this</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>listTracks.ZOrder" xml:space="preserve">
|
||||||
|
<value>7</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonGo.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||||
|
<value>Top, Left, Right</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonGo.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>396, 335</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonGo.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>91, 33</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonGo.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>13</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonGo.Text" xml:space="preserve">
|
||||||
|
<value>Go</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>buttonGo.Name" xml:space="preserve">
|
||||||
|
<value>buttonGo</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>buttonGo.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>buttonGo.Parent" xml:space="preserve">
|
||||||
|
<value>$this</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>buttonGo.ZOrder" xml:space="preserve">
|
||||||
|
<value>6</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboLossless.Enabled" type="System.Boolean, mscorlib">
|
||||||
|
<value>False</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboLossless.Items" xml:space="preserve">
|
||||||
|
<value>lossless</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboLossless.Items1" xml:space="preserve">
|
||||||
|
<value>hybrid</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboLossless.Items2" xml:space="preserve">
|
||||||
|
<value>lossy</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboLossless.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>6, 335</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboLossless.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>70, 21</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboLossless.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>16</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboLossless.Name" xml:space="preserve">
|
||||||
|
<value>comboLossless</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboLossless.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboLossless.Parent" xml:space="preserve">
|
||||||
|
<value>$this</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboLossless.ZOrder" xml:space="preserve">
|
||||||
|
<value>5</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboCodec.Enabled" type="System.Boolean, mscorlib">
|
||||||
|
<value>False</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboCodec.Items" xml:space="preserve">
|
||||||
|
<value>flac</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboCodec.Items1" xml:space="preserve">
|
||||||
|
<value>WavPack</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboCodec.Items2" xml:space="preserve">
|
||||||
|
<value>wav</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboCodec.Items3" xml:space="preserve">
|
||||||
|
<value>ape</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboCodec.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>82, 335</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboCodec.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>70, 21</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboCodec.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>17</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboCodec.Name" xml:space="preserve">
|
||||||
|
<value>comboCodec</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboCodec.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboCodec.Parent" xml:space="preserve">
|
||||||
|
<value>$this</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboCodec.ZOrder" xml:space="preserve">
|
||||||
|
<value>4</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboImage.Enabled" type="System.Boolean, mscorlib">
|
||||||
|
<value>False</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboImage.Items" xml:space="preserve">
|
||||||
|
<value>image</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboImage.Items1" xml:space="preserve">
|
||||||
|
<value>tracks</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboImage.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>158, 335</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboImage.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>70, 21</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboImage.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>18</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboImage.Name" xml:space="preserve">
|
||||||
|
<value>comboImage</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboImage.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboImage.Parent" xml:space="preserve">
|
||||||
|
<value>$this</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboImage.ZOrder" xml:space="preserve">
|
||||||
|
<value>3</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonAbort.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||||
|
<value>Top, Left, Right</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonAbort.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||||
|
<value>NoControl</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonAbort.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>396, 335</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonAbort.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>91, 33</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonAbort.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>19</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonAbort.Text" xml:space="preserve">
|
||||||
|
<value>Abort</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonAbort.Visible" type="System.Boolean, mscorlib">
|
||||||
|
<value>False</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>buttonAbort.Name" xml:space="preserve">
|
||||||
|
<value>buttonAbort</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>buttonAbort.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>buttonAbort.Parent" xml:space="preserve">
|
||||||
|
<value>$this</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>buttonAbort.ZOrder" xml:space="preserve">
|
||||||
|
<value>2</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonPause.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||||
|
<value>Top, Left, Right</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonPause.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||||
|
<value>NoControl</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonPause.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>299, 335</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonPause.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>91, 33</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonPause.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>20</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonPause.Text" xml:space="preserve">
|
||||||
|
<value>Pause</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonPause.Visible" type="System.Boolean, mscorlib">
|
||||||
|
<value>False</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>buttonPause.Name" xml:space="preserve">
|
||||||
|
<value>buttonPause</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>buttonPause.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>buttonPause.Parent" xml:space="preserve">
|
||||||
|
<value>$this</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>buttonPause.ZOrder" xml:space="preserve">
|
||||||
|
<value>1</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboRelease.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||||
|
<value>Top, Left, Right</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboRelease.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>6, 33</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboRelease.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>481, 21</value>
|
||||||
|
</data>
|
||||||
|
<data name="comboRelease.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>21</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboRelease.Name" xml:space="preserve">
|
||||||
|
<value>comboRelease</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboRelease.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboRelease.Parent" xml:space="preserve">
|
||||||
|
<value>$this</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>comboRelease.ZOrder" xml:space="preserve">
|
||||||
|
<value>0</value>
|
||||||
|
</data>
|
||||||
|
<metadata name="releaseBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>116, 371</value>
|
||||||
|
</metadata>
|
||||||
|
<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>499, 393</value>
|
||||||
|
</data>
|
||||||
|
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
|
||||||
|
<value>CenterScreen</value>
|
||||||
|
</data>
|
||||||
|
<data name="$this.Text" xml:space="preserve">
|
||||||
|
<value>CUERipper</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>toolStripStatusLabel1.Name" xml:space="preserve">
|
||||||
|
<value>toolStripStatusLabel1</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>toolStripStatusLabel1.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ToolStripStatusLabel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>toolStripProgressBar1.Name" xml:space="preserve">
|
||||||
|
<value>toolStripProgressBar1</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>toolStripProgressBar1.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ToolStripProgressBar, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>toolStripProgressBar2.Name" xml:space="preserve">
|
||||||
|
<value>toolStripProgressBar2</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>toolStripProgressBar2.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ToolStripProgressBar, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>TrackNo.Name" xml:space="preserve">
|
||||||
|
<value>TrackNo</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>TrackNo.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>Title.Name" xml:space="preserve">
|
||||||
|
<value>Title</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>Title.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>Start.Name" xml:space="preserve">
|
||||||
|
<value>Start</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>Start.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>Length.Name" xml:space="preserve">
|
||||||
|
<value>Length</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>Length.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>releaseBindingSource.Name" xml:space="preserve">
|
||||||
|
<value>releaseBindingSource</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>releaseBindingSource.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.BindingSource, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>$this.Name" xml:space="preserve">
|
||||||
|
<value>frmCUERipper</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>
|
||||||
Reference in New Issue
Block a user