eac3toui is now called BluTools and has improved looks

This commit is contained in:
Grigory Chudov
2018-02-26 21:31:07 -05:00
parent 790b904ec2
commit 39f4792319
30 changed files with 281 additions and 108 deletions

View File

@@ -591,6 +591,22 @@ namespace CUETools.Codecs.BDLPCM
} }
} }
public byte CodingType
{
get
{
return coding_type;
}
}
public byte FormatType
{
get
{
return format;
}
}
public string LanguageString public string LanguageString
{ {
get get

View File

@@ -2,20 +2,20 @@
<configuration> <configuration>
<configSections> <configSections>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" > <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="CUETools.eac3ui.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" /> <section name="BluTools.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
</sectionGroup> </sectionGroup>
</configSections> </configSections>
<startup> <startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" /> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
</startup> </startup>
<userSettings> <userSettings>
<CUETools.eac3ui.Properties.Settings> <BluTools.Properties.Settings>
<setting name="SourceFolder" serializeAs="String"> <setting name="SourceFolder" serializeAs="String">
<value /> <value />
</setting> </setting>
<setting name="DestinationFolder" serializeAs="String"> <setting name="DestinationFolder" serializeAs="String">
<value /> <value />
</setting> </setting>
</CUETools.eac3ui.Properties.Settings> </BluTools.Properties.Settings>
</userSettings> </userSettings>
</configuration> </configuration>

View File

@@ -1,7 +1,7 @@
<Application x:Class="CUETools.eac3ui.App" <Application x:Class="BluTools.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:CUETools.eac3ui" xmlns:local="clr-namespace:BluTools"
StartupUri="MainWindow.xaml"> StartupUri="MainWindow.xaml">
<Application.Resources> <Application.Resources>

View File

@@ -6,7 +6,7 @@ using System.Linq;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Windows; using System.Windows;
namespace CUETools.eac3ui namespace BluTools
{ {
/// <summary> /// <summary>
/// Interaction logic for App.xaml /// Interaction logic for App.xaml

View File

@@ -6,8 +6,8 @@
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{678875A6-6B3A-4AAC-83B6-D9A72D9016CF}</ProjectGuid> <ProjectGuid>{678875A6-6B3A-4AAC-83B6-D9A72D9016CF}</ProjectGuid>
<OutputType>WinExe</OutputType> <OutputType>WinExe</OutputType>
<RootNamespace>CUETools.eac3ui</RootNamespace> <RootNamespace>BluTools</RootNamespace>
<AssemblyName>CUETools.eac3ui</AssemblyName> <AssemblyName>BluTools</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion> <TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment> <FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids> <ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
@@ -36,6 +36,7 @@
<ItemGroup> <ItemGroup>
<Reference Include="System" /> <Reference Include="System" />
<Reference Include="System.Data" /> <Reference Include="System.Data" />
<Reference Include="System.Drawing" />
<Reference Include="System.Windows.Forms" /> <Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" /> <Reference Include="System.Xml" />
<Reference Include="Microsoft.CSharp" /> <Reference Include="Microsoft.CSharp" />
@@ -85,6 +86,7 @@
<EmbeddedResource Include="Properties\Resources.resx"> <EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator> <Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput> <LastGenOutput>Resources.Designer.cs</LastGenOutput>
<SubType>Designer</SubType>
</EmbeddedResource> </EmbeddedResource>
<None Include="Properties\Settings.settings"> <None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator> <Generator>SettingsSingleFileGenerator</Generator>
@@ -120,5 +122,56 @@
<Name>CUETools.Processor</Name> <Name>CUETools.Processor</Name>
</ProjectReference> </ProjectReference>
</ItemGroup> </ItemGroup>
<ItemGroup>
<Resource Include="Icons\freedb16.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\musicbrainz.ico" />
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\discogs.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\icons8-audio-wave-32.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\icons8-dolby-digital-32.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\headphones-box.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\icons8-copy-48.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\icons8-export-48.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\icons8-import-48.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\icons8-open-48.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\icons8-playlist-48.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\icons8-tags-48.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\icons8-musical-notes-48.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\icons8-cancel-48.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\ic_surround_sound_black_48dp_1x.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\icons8-dts-48.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\cue2.ico" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project> </Project>

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 424 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 394 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 765 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 570 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 250 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 731 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 357 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 371 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 698 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 436 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 439 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 539 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 435 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 451 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 711 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@@ -1,31 +1,67 @@
<Window x:Class="CUETools.eac3ui.MainWindow" <Window x:Class="BluTools.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:CUETools.eac3ui" xmlns:local="clr-namespace:BluTools"
mc:Ignorable="d" mc:Ignorable="d"
MinWidth="300" MaxWidth="1200" MinHeight="300" MaxHeight="300" MinWidth="300" MaxWidth="1200" MinHeight="260" MaxHeight="300"
Title="CUETools eac3to" Height="300" Width="600" Closing="Window_Closing" Initialized="Window_Initialized"> DataContext="{Binding RelativeSource={RelativeSource Self}}"
Icon="Icons/cue2.ico"
Title="BluTools" Height="260" Width="600" Closing="Window_Closing" Initialized="Window_Initialized">
<Window.Resources>
<local:CodingTypeToIcon x:Key="CodingTypeToIcon" />
<local:FormatTypeToIcon x:Key="FormatTypeToIcon" />
<local:MetadataSourceToIcon x:Key="MetadataSourceToIcon" />
<!--<Canvas x:Key="canvas_dolby" Width="24" Height="24">
<Path Stroke="Black" Fill="Gray" Data="M2,5V19H22V5H2M6,17H4V7H6C8.86,7.09 11.1,9.33 11,12C11.1,14.67 8.86,16.91 6,17M20,17H18C15.14,16.91 12.9,14.67 13,12C12.9,9.33 15.14,7.09 18,7H20V17Z" />
</Canvas>-->
<!--PCM-->
<Image x:Key="coding_type_128" Source="/BluTools;component/Icons/icons8-audio-wave-32.png"></Image>
<!--AC3-->
<Image x:Key="coding_type_129" Source="/BluTools;component/Icons/icons8-dolby-digital-32.png"></Image>
<!--DTS-->
<Image x:Key="coding_type_130" Source="/BluTools;component/Icons/icons8-dts-48.png"></Image>
<!--Dolby TrueHD-->
<Image x:Key="coding_type_131" Source="/BluTools;component/Icons/icons8-dolby-digital-32.png"></Image>
<!--EAC3-->
<Image x:Key="coding_type_132" Source="/BluTools;component/Icons/icons8-dolby-digital-32.png"></Image>
<!--DTSHD-->
<Image x:Key="coding_type_133" Source="/BluTools;component/Icons/icons8-dts-48.png"></Image>
<!--DTSHDMA-->
<Image x:Key="coding_type_134" Source="/BluTools;component/Icons/icons8-dts-48.png"></Image>
<Image x:Key="format_type_3" Source="/BluTools;component/Icons/headphones-box.png"></Image>
<Image x:Key="format_type_6" Source="/BluTools;component/Icons/ic_surround_sound_black_48dp_1x.png"></Image>
<Image x:Key="freedb" Source="/BluTools;component/Icons/freedb16.png"></Image>
<Image x:Key="musicbrainz" Source="/BluTools;component/Icons/musicbrainz.ico"></Image>
<Image x:Key="discogs" Source="/BluTools;component/Icons/discogs.png"></Image>
</Window.Resources>
<StackPanel> <StackPanel>
<StackPanel x:Name="stackParams"> <StackPanel x:Name="stackParams">
<DockPanel> <DockPanel>
<Label x:Name="labelSource" Content="Source" Margin="8" Width="80"/> <Image Source="/BluTools;component/Icons/icons8-import-48.png" Height="24 " Width="24" Margin="10,5" ToolTip="Source"/>
<Button x:Name="buttonBrowseSource" Content="Browse" Click="ButtonBrowseSource_Click" DockPanel.Dock="Right" Margin="8"/> <Button x:Name="buttonBrowseSource" Click="ButtonBrowseSource_Click" DockPanel.Dock="Right" Margin="10,5" ToolTip="Browse">
<TextBox x:Name="textBoxSource" TextWrapping="NoWrap" Margin="8" TextChanged="textBoxSource_TextChanged"/> <Image Source="/BluTools;component/Icons/icons8-open-48.png" Width="24" />
</Button>
<TextBox x:Name="textBoxSource" TextWrapping="NoWrap" Margin="10,5" TextChanged="textBoxSource_TextChanged"/>
</DockPanel> </DockPanel>
<DockPanel> <DockPanel>
<Label x:Name="labelDestination" Content="Destination" Margin="8" Width="80"/> <Image Source="/BluTools;component/Icons/icons8-export-48.png" Height="24 " Width="24" Margin="10,5" ToolTip="Destination"/>
<Button x:Name="buttonBrowseDestination" Content="Browse" Click="buttonBrowseDestination_Click" DockPanel.Dock="Right" Margin="8"/> <Button x:Name="buttonBrowseDestination" Click="buttonBrowseDestination_Click" DockPanel.Dock="Right" Margin="10,5" ToolTip="Browse">
<TextBox x:Name="textBoxDestination" TextWrapping="NoWrap" Margin="8"/> <Image Source="/BluTools;component/Icons/icons8-open-48.png" Width="24" />
</Button>
<TextBox x:Name="textBoxDestination" TextWrapping="NoWrap" Margin="10,5"/>
</DockPanel> </DockPanel>
<DockPanel> <DockPanel>
<Label x:Name="labelTitleSet" Content="Title Set" Margin="8" Width="80"/> <Image Source="/BluTools;component/Icons/icons8-playlist-48.png" Height="24 " Width="24" Margin="10,5" ToolTip="Title Set"/>
<ComboBox x:Name="cmbTitleSet" Margin="8" SelectionChanged="cmbTitleSet_SelectionChanged"> <ComboBox x:Name="cmbTitleSet" Margin="10,5" SelectionChanged="cmbTitleSet_SelectionChanged">
<ComboBox.ItemTemplate> <ComboBox.ItemTemplate>
<DataTemplate> <DataTemplate>
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<Rectangle Fill="{Binding Name}" Width="16" Height="16" Margin="0,2,5,2" />
<TextBlock Text="{Binding FileName}" Margin="10,0" /> <TextBlock Text="{Binding FileName}" Margin="10,0" />
<TextBlock Text="{Binding Duration, StringFormat={}({0:hh\\:mm\\:ss})}" /> <TextBlock Text="{Binding Duration, StringFormat={}({0:hh\\:mm\\:ss})}" />
<TextBlock Text="{Binding Chapters.Count, StringFormat={}{0,2} chapters}" Margin="10,0" /> <TextBlock Text="{Binding Chapters.Count, StringFormat={}{0,2} chapters}" Margin="10,0" />
@@ -35,31 +71,32 @@
</ComboBox> </ComboBox>
</DockPanel> </DockPanel>
<DockPanel> <DockPanel>
<Label x:Name="labelAudioTrack" Content="Audio Track" Margin="8" Width="80"/> <Image Source="/BluTools;component/Icons/icons8-musical-notes-48.png" Height="24 " Width="24" Margin="10,5" ToolTip="Audio"/>
<ComboBox x:Name="cmbAudioTrack" Margin="8" SelectionChanged="cmbAudioTrack_SelectionChanged"> <ComboBox x:Name="cmbAudioTrack" Margin="10,5" SelectionChanged="cmbAudioTrack_SelectionChanged">
<ComboBox.ItemTemplate> <ComboBox.ItemTemplate>
<DataTemplate> <DataTemplate>
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<Rectangle Fill="{Binding Name}" Width="16" Height="16" Margin="0,2,5,2" /> <Image Source="{Binding FormatType, Converter={StaticResource FormatTypeToIcon}}" Margin="1,1,5,1" Width="16" Height="16"></Image>
<TextBlock Text="{Binding CodecString}" Margin="10,0" /> <Image Source="{Binding CodingType, Converter={StaticResource CodingTypeToIcon}}" Margin="1,1,5,1" Width="16" Height="16"></Image>
<TextBlock Text="{Binding LanguageString}" Margin="10,0" /> <TextBlock Text="{Binding LanguageString}" Margin="5,0" />
<TextBlock Text="{Binding FormatString}" Margin="10,0" /> <TextBlock Text="{Binding RateString}" Margin="5,0" />
<TextBlock Text="{Binding RateString}" Margin="10,0" /> <TextBlock Text="{Binding CodecString}" Margin="5,0" />
</StackPanel> </StackPanel>
</DataTemplate> </DataTemplate>
</ComboBox.ItemTemplate> </ComboBox.ItemTemplate>
</ComboBox> </ComboBox>
</DockPanel> </DockPanel>
<DockPanel> <DockPanel>
<Label x:Name="labelMetadata" Content="Metadata" Margin="8" Width="80"/> <Image Source="/BluTools;component/Icons/icons8-tags-48.png" Height="24 " Width="24" Margin="10,5" ToolTip="Metadata"/>
<ComboBox x:Name="cmbMetadata" Margin="8"> <ComboBox x:Name="cmbMetadata" Margin="10,5">
<ComboBox.ItemTemplate> <ComboBox.ItemTemplate>
<DataTemplate> <DataTemplate>
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<Rectangle Fill="{Binding source}" Width="16" Height="16" Margin="0,2,5,2" /> <Image Source="{Binding ImageKey, Converter={StaticResource MetadataSourceToIcon}}" Width="Auto" Margin="1,1,5,1" MinWidth="16" MinHeight="16"></Image>
<TextBlock Text="{Binding artist}" Margin="10,0" /> <!--<TextBlock Text="{Binding metadata.Artist}" Margin="10,0" />
<TextBlock Text="{Binding year}" Margin="10,0" /> <TextBlock Text="{Binding metadata.Year}" Margin="10,0" />
<TextBlock Text="{Binding album}" Margin="10,0" /> <TextBlock Text="{Binding metadata.Title}" Margin="10,0" />-->
<TextBlock Text="{Binding}" Margin="5,0" />
</StackPanel> </StackPanel>
</DataTemplate> </DataTemplate>
</ComboBox.ItemTemplate> </ComboBox.ItemTemplate>
@@ -67,9 +104,15 @@
</DockPanel> </DockPanel>
</StackPanel> </StackPanel>
<DockPanel> <DockPanel>
<Button x:Name="buttonStop" Content="Stop" DockPanel.Dock="Left" Margin="8" Click="buttonStop_Click" Visibility="Hidden" Width="80"/> <Grid Margin="10,5" >
<Button x:Name="buttonExtract" Content="Extract" DockPanel.Dock="Right" Margin="8" Click="buttonExtract_Click"/> <Button x:Name="buttonStop" Click="buttonStop_Click" Visibility="Hidden" Margin="0" ToolTip="Cancel">
<ProgressBar Minimum="0" Maximum="100" Name="pbStatus" Margin="8" Visibility="Collapsed"/> <Image Source="/BluTools;component/Icons/icons8-cancel-48.png" Width="24" />
</Button>
<Button x:Name="buttonExtract" Click="buttonExtract_Click" Margin="0" ToolTip="Copy">
<Image Source="/BluTools;component/Icons/icons8-copy-48.png" Width="24" />
</Button>
</Grid>
<ProgressBar Minimum="0" Maximum="100" Name="pbStatus" Margin="10,5" Visibility="Collapsed"/>
</DockPanel> </DockPanel>
</StackPanel> </StackPanel>
</Window> </Window>

View File

@@ -20,9 +20,11 @@ using System.ComponentModel;
using Krystalware.UploadHelper; using Krystalware.UploadHelper;
using CUETools.Codecs; using CUETools.Codecs;
using CUETools.Codecs.FLAKE; using CUETools.Codecs.FLAKE;
using CUETools.Processor;
using System.Collections.ObjectModel;
//using Microsoft.Win32; //using Microsoft.Win32;
namespace CUETools.eac3ui namespace BluTools
{ {
/// <summary> /// <summary>
/// Interaction logic for MainWindow.xaml /// Interaction logic for MainWindow.xaml
@@ -31,6 +33,7 @@ namespace CUETools.eac3ui
{ {
public MainWindow() public MainWindow()
{ {
metaresults = new ObservableCollection<CUEMetadataEntry>();
filterShort = 900; filterShort = 900;
filterRepeats = 2; filterRepeats = 2;
filterDups = true; filterDups = true;
@@ -158,9 +161,19 @@ namespace CUETools.eac3ui
ctdb.ContactDB(null, "CUETools.eac3to 2.1.7", "", false, true, CTDBMetadataSearch.Extensive); ctdb.ContactDB(null, "CUETools.eac3to 2.1.7", "", false, true, CTDBMetadataSearch.Extensive);
this.Dispatcher.Invoke(() => this.Dispatcher.Invoke(() =>
{ {
//metaresults.RaiseListChangedEvents = false;
cmbMetadata.ItemsSource = null;
metaresults.Clear();
foreach (var m in ctdb.Metadata)
{
var entry = new CUEMetadataEntry(ctdb.TOC, m.source);
entry.metadata.FillFromCtdb(m, entry.TOC.FirstAudio - 1);
metaresults.Add(entry);
}
//metaresults.RaiseListChangedEvents = true;
cmbMetadata.ItemsSource = metaresults;
pbStatus.Visibility = Visibility.Collapsed; pbStatus.Visibility = Visibility.Collapsed;
pbStatus.IsIndeterminate = false; pbStatus.IsIndeterminate = false;
cmbMetadata.ItemsSource = ctdb.Metadata;
cmbMetadata.SelectedIndex = 0; cmbMetadata.SelectedIndex = 0;
}); });
} }
@@ -185,7 +198,8 @@ namespace CUETools.eac3ui
CUEToolsDB ctdb; CUEToolsDB ctdb;
BackgroundWorker workerExtract; BackgroundWorker workerExtract;
CTDBResponseMeta meta; CUEMetadataEntry metaresult;
ObservableCollection<CUEMetadataEntry> metaresults;
MPLSReader chosenReader; MPLSReader chosenReader;
ushort pid; ushort pid;
string outputFolderPath; string outputFolderPath;
@@ -201,11 +215,11 @@ namespace CUETools.eac3ui
if (cmbTitleSet.SelectedItem == null) return; if (cmbTitleSet.SelectedItem == null) return;
pid = ((MPLSStream)cmbAudioTrack.SelectedItem).pid; pid = ((MPLSStream)cmbAudioTrack.SelectedItem).pid;
chosenReader = cmbTitleSet.SelectedItem as MPLSReader; chosenReader = cmbTitleSet.SelectedItem as MPLSReader;
meta = cmbMetadata.SelectedItem as CTDBResponseMeta; metaresult = cmbMetadata.SelectedItem as CUEMetadataEntry;
outputFolderPath = Path.Combine(textBoxDestination.Text, meta != null ? outputFolderPath = Path.Combine(textBoxDestination.Text, metaresult != null ?
meta.artist + " - " + meta.year + " - " + meta.album : metaresult.metadata.Artist + " - " + metaresult.metadata.Year + " - " + metaresult.metadata.Title :
Path.GetFileName(textBoxSource.Text) + "." + chosenReader.FileName + "." + pid.ToString()); Path.GetFileName(textBoxSource.Text) + "." + chosenReader.FileName + "." + pid.ToString());
outputAudioPath = Path.Combine(outputFolderPath, meta != null ? meta.artist + " - " + meta.year + " - " + meta.album + ".flac" : "image.flac"); outputAudioPath = Path.Combine(outputFolderPath, metaresult != null ? metaresult.metadata.Artist + " - " + metaresult.metadata.Year + " - " + metaresult.metadata.Title + ".flac" : "image.flac");
outputCuePath = Path.ChangeExtension(outputAudioPath, "cue"); outputCuePath = Path.ChangeExtension(outputAudioPath, "cue");
pbStatus.Visibility = Visibility.Visible; pbStatus.Visibility = Visibility.Visible;
@@ -213,6 +227,7 @@ namespace CUETools.eac3ui
//pbStatus.IsIndeterminate = true; //pbStatus.IsIndeterminate = true;
stackParams.IsEnabled = false; stackParams.IsEnabled = false;
buttonExtract.IsEnabled = false; buttonExtract.IsEnabled = false;
buttonExtract.Visibility = Visibility.Hidden;
buttonStop.Visibility = Visibility.Visible; buttonStop.Visibility = Visibility.Visible;
buttonStop.IsEnabled = true; buttonStop.IsEnabled = true;
@@ -243,14 +258,14 @@ namespace CUETools.eac3ui
using (StreamWriter cueWriter = new StreamWriter(outputCuePath, false, Encoding.UTF8)) using (StreamWriter cueWriter = new StreamWriter(outputCuePath, false, Encoding.UTF8))
{ {
cueWriter.WriteLine("REM COMMENT \"{0}\"", "Created by CUETools.eac3to"); cueWriter.WriteLine("REM COMMENT \"{0}\"", "Created by CUETools.eac3to");
if (meta != null && meta.year != null) if (metaresult != null && metaresult.metadata.Year != "")
cueWriter.WriteLine("REM DATE {0}", meta.year); cueWriter.WriteLine("REM DATE {0}", metaresult.metadata.Year);
else else
cueWriter.WriteLine("REM DATE XXXX"); cueWriter.WriteLine("REM DATE XXXX");
if (meta != null) if (metaresult != null)
{ {
cueWriter.WriteLine("PERFORMER \"{0}\"", meta.artist); cueWriter.WriteLine("PERFORMER \"{0}\"", metaresult.metadata.Artist);
cueWriter.WriteLine("TITLE \"{0}\"", meta.album); cueWriter.WriteLine("TITLE \"{0}\"", metaresult.metadata.Title);
} }
else else
{ {
@@ -263,11 +278,11 @@ namespace CUETools.eac3ui
if (toc[track].IsAudio) if (toc[track].IsAudio)
{ {
cueWriter.WriteLine(" TRACK {0:00} AUDIO", toc[track].Number); cueWriter.WriteLine(" TRACK {0:00} AUDIO", toc[track].Number);
if (meta != null && meta.track.Length >= toc[track].Number) if (metaresult != null && metaresult.metadata.Tracks.Count >= toc[track].Number)
{ {
cueWriter.WriteLine(" TITLE \"{0}\"", meta.track[(int)toc[track].Number - 1].name); cueWriter.WriteLine(" TITLE \"{0}\"", metaresult.metadata.Tracks[(int)toc[track].Number - 1].Title);
if (meta.track[(int)toc[track].Number - 1].artist != null) if (metaresult.metadata.Tracks[(int)toc[track].Number - 1].Artist != "")
cueWriter.WriteLine(" PERFORMER \"{0}\"", meta.track[(int)toc[track].Number - 1].artist); cueWriter.WriteLine(" PERFORMER \"{0}\"", metaresult.metadata.Tracks[(int)toc[track].Number - 1].Artist);
} }
else else
{ {
@@ -330,6 +345,7 @@ namespace CUETools.eac3ui
//pbStatus.IsIndeterminate = false; //pbStatus.IsIndeterminate = false;
stackParams.IsEnabled = true; stackParams.IsEnabled = true;
buttonExtract.IsEnabled = true; buttonExtract.IsEnabled = true;
buttonExtract.Visibility = Visibility.Visible;
buttonStop.Visibility = Visibility.Hidden; buttonStop.Visibility = Visibility.Hidden;
buttonStop.IsEnabled = false; buttonStop.IsEnabled = false;
}); });
@@ -346,6 +362,49 @@ namespace CUETools.eac3ui
{ {
textBoxSource.Text = Properties.Settings.Default.SourceFolder; textBoxSource.Text = Properties.Settings.Default.SourceFolder;
textBoxDestination.Text = Properties.Settings.Default.DestinationFolder; textBoxDestination.Text = Properties.Settings.Default.DestinationFolder;
cmbMetadata.ItemsSource = metaresults;
}
}
public class CodingTypeToIcon : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
// TODO: ResourceDictionary?
var image = Application.Current.MainWindow.Resources["coding_type_" + value.ToString()] as Image;
return image == null ? null : image.Source;
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
return null;
}
}
public class FormatTypeToIcon : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
var image = Application.Current.MainWindow.Resources["format_type_" + value.ToString()] as Image;
return image == null ? null : image.Source;
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
return null;
}
}
public class MetadataSourceToIcon : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
var image = Application.Current.MainWindow.Resources[value.ToString()] as Image;
return image == null ? null : image.Source;
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
return null;
} }
} }
} }

View File

@@ -7,11 +7,11 @@ using System.Windows;
// General Information about an assembly is controlled through the following // General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information // set of attributes. Change these attribute values to modify the information
// associated with an assembly. // associated with an assembly.
[assembly: AssemblyTitle("CUETools.eac3ui")] [assembly: AssemblyTitle("BluTools")]
[assembly: AssemblyDescription("")] [assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")] [assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")] [assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("CUETools.eac3ui")] [assembly: AssemblyProduct("BluTools")]
[assembly: AssemblyCopyright("Copyright © 2018")] [assembly: AssemblyCopyright("Copyright © 2018")]
[assembly: AssemblyTrademark("")] [assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")] [assembly: AssemblyCulture("")]

View File

@@ -8,8 +8,8 @@
// </auto-generated> // </auto-generated>
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
namespace CUETools.eac3ui.Properties namespace BluTools.Properties {
{ using System;
/// <summary> /// <summary>
@@ -19,32 +19,27 @@ namespace CUETools.eac3ui.Properties
// class via a tool like ResGen or Visual Studio. // class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen // To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project. // with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources internal class Resources {
{
private static global::System.Resources.ResourceManager resourceMan; private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture; private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources() internal Resources() {
{
} }
/// <summary> /// <summary>
/// Returns the cached ResourceManager instance used by this class. /// Returns the cached ResourceManager instance used by this class.
/// </summary> /// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager internal static global::System.Resources.ResourceManager ResourceManager {
{ get {
get if (object.ReferenceEquals(resourceMan, null)) {
{ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("BluTools.Properties.Resources", typeof(Resources).Assembly);
if ((resourceMan == null))
{
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("CUETools.eac3ui.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp; resourceMan = temp;
} }
return resourceMan; return resourceMan;
@@ -56,14 +51,11 @@ namespace CUETools.eac3ui.Properties
/// resource lookups using this strongly typed resource class. /// resource lookups using this strongly typed resource class.
/// </summary> /// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture internal static global::System.Globalization.CultureInfo Culture {
{ get {
get
{
return resourceCulture; return resourceCulture;
} }
set set {
{
resourceCulture = value; resourceCulture = value;
} }
} }

View File

@@ -46,7 +46,7 @@
mimetype: application/x-microsoft.net.object.binary.base64 mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding. : and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64 mimetype: application/x-microsoft.net.object.soap.base64
@@ -60,6 +60,7 @@
: and then encoded with base64 encoding. : 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: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:element name="root" msdata:IsDataSet="true">
<xsd:complexType> <xsd:complexType>
<xsd:choice maxOccurs="unbounded"> <xsd:choice maxOccurs="unbounded">
@@ -68,9 +69,10 @@
<xsd:sequence> <xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" /> <xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence> </xsd:sequence>
<xsd:attribute name="name" type="xsd:string" /> <xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" /> <xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" /> <xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
<xsd:element name="assembly"> <xsd:element name="assembly">
@@ -85,9 +87,10 @@
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> <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:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence> </xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" /> <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="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
<xsd:element name="resheader"> <xsd:element name="resheader">
@@ -109,9 +112,10 @@
<value>2.0</value> <value>2.0</value>
</resheader> </resheader>
<resheader name="reader"> <resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</root> </root>

View File

@@ -8,7 +8,7 @@
// </auto-generated> // </auto-generated>
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
namespace CUETools.eac3ui.Properties { namespace BluTools.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

View File

@@ -1,5 +1,5 @@
<?xml version='1.0' encoding='utf-8'?> <?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="CUETools.eac3ui.Properties" GeneratedClassName="Settings"> <SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="BluTools.Properties" GeneratedClassName="Settings">
<Profiles /> <Profiles />
<Settings> <Settings>
<Setting Name="SourceFolder" Type="System.String" Scope="User"> <Setting Name="SourceFolder" Type="System.String" Scope="User">

View File

@@ -1,7 +1,7 @@
 
Microsoft Visual Studio Solution File, Format Version 12.00 Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15 # Visual Studio 15
VisualStudioVersion = 15.0.27130.2027 VisualStudioVersion = 15.0.27130.2036
MinimumVisualStudioVersion = 10.0.40219.1 MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CodecLibs", "CodecLibs", "{8B179853-B7D6-479C-B8B2-6CBCE835D040}" Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CodecLibs", "CodecLibs", "{8B179853-B7D6-479C-B8B2-6CBCE835D040}"
EndProject EndProject
@@ -154,8 +154,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CUETools.DSP.Resampler", ".
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CUETools.Codecs.Icecast", "..\CUETools.Codecs.Icecast\CUETools.Codecs.Icecast.csproj", "{8FC5DA7C-F6AC-4D04-85BC-1233DDF569E7}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CUETools.Codecs.Icecast", "..\CUETools.Codecs.Icecast\CUETools.Codecs.Icecast.csproj", "{8FC5DA7C-F6AC-4D04-85BC-1233DDF569E7}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WPFRipper", "..\WPFRipper\WPFRipper.csproj", "{2D8D7A03-DFFA-44EF-9299-8BB56D122245}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CUETools.Codecs.FLACCL", "..\CUETools.Codecs.FLACCL\CUETools.Codecs.FLACCL.csproj", "{DFE55765-564C-4B8F-993B-A94C4D1C212E}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CUETools.Codecs.FLACCL", "..\CUETools.Codecs.FLACCL\CUETools.Codecs.FLACCL.csproj", "{DFE55765-564C-4B8F-993B-A94C4D1C212E}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CUETools.FLACL.cmd", "..\CUETools.FLACCL.cmd\CUETools.FLACL.cmd.csproj", "{1FCA8834-34E6-47CF-B53F-D8DF35345363}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CUETools.FLACL.cmd", "..\CUETools.FLACCL.cmd\CUETools.FLACL.cmd.csproj", "{1FCA8834-34E6-47CF-B53F-D8DF35345363}"
@@ -188,7 +186,9 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CUETools.eac3to", "..\CUETo
EndProject EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "GUI", "GUI", "{BC0C1801-0212-4ECC-92D5-8F2D6F69E888}" Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "GUI", "GUI", "{BC0C1801-0212-4ECC-92D5-8F2D6F69E888}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CUETools.eac3ui", "..\CUETools.eac3ui\CUETools.eac3ui.csproj", "{678875A6-6B3A-4AAC-83B6-D9A72D9016CF}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BLUTools", "..\CUETools.eac3ui\BLUTools.csproj", "{678875A6-6B3A-4AAC-83B6-D9A72D9016CF}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CUERipper.WPF", "..\CUERipper.WPF\CUERipper.WPF.csproj", "{2D8D7A03-DFFA-44EF-9299-8BB56D122245}"
EndProject EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -901,20 +901,6 @@ Global
{8FC5DA7C-F6AC-4D04-85BC-1233DDF569E7}.Release|Win32.ActiveCfg = Release|Any CPU {8FC5DA7C-F6AC-4D04-85BC-1233DDF569E7}.Release|Win32.ActiveCfg = Release|Any CPU
{8FC5DA7C-F6AC-4D04-85BC-1233DDF569E7}.Release|x64.ActiveCfg = Release|Any CPU {8FC5DA7C-F6AC-4D04-85BC-1233DDF569E7}.Release|x64.ActiveCfg = Release|Any CPU
{8FC5DA7C-F6AC-4D04-85BC-1233DDF569E7}.Release|x86.ActiveCfg = Release|Any CPU {8FC5DA7C-F6AC-4D04-85BC-1233DDF569E7}.Release|x86.ActiveCfg = Release|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Debug|Win32.ActiveCfg = Debug|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Debug|x64.ActiveCfg = Debug|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Debug|x86.ActiveCfg = Debug|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Release|Any CPU.Build.0 = Release|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Release|Win32.ActiveCfg = Release|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Release|x64.ActiveCfg = Release|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Release|x86.ActiveCfg = Release|Any CPU
{DFE55765-564C-4B8F-993B-A94C4D1C212E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {DFE55765-564C-4B8F-993B-A94C4D1C212E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{DFE55765-564C-4B8F-993B-A94C4D1C212E}.Debug|Any CPU.Build.0 = Debug|Any CPU {DFE55765-564C-4B8F-993B-A94C4D1C212E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{DFE55765-564C-4B8F-993B-A94C4D1C212E}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU {DFE55765-564C-4B8F-993B-A94C4D1C212E}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
@@ -1130,6 +1116,26 @@ Global
{678875A6-6B3A-4AAC-83B6-D9A72D9016CF}.Release|x64.Build.0 = Release|Any CPU {678875A6-6B3A-4AAC-83B6-D9A72D9016CF}.Release|x64.Build.0 = Release|Any CPU
{678875A6-6B3A-4AAC-83B6-D9A72D9016CF}.Release|x86.ActiveCfg = Release|Any CPU {678875A6-6B3A-4AAC-83B6-D9A72D9016CF}.Release|x86.ActiveCfg = Release|Any CPU
{678875A6-6B3A-4AAC-83B6-D9A72D9016CF}.Release|x86.Build.0 = Release|Any CPU {678875A6-6B3A-4AAC-83B6-D9A72D9016CF}.Release|x86.Build.0 = Release|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Debug|Win32.ActiveCfg = Debug|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Debug|Win32.Build.0 = Debug|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Debug|x64.ActiveCfg = Debug|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Debug|x64.Build.0 = Debug|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Debug|x86.ActiveCfg = Debug|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Debug|x86.Build.0 = Debug|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Release|Any CPU.Build.0 = Release|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Release|Win32.ActiveCfg = Release|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Release|Win32.Build.0 = Release|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Release|x64.ActiveCfg = Release|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Release|x64.Build.0 = Release|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Release|x86.ActiveCfg = Release|Any CPU
{2D8D7A03-DFFA-44EF-9299-8BB56D122245}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE
@@ -1174,7 +1180,6 @@ Global
{6C74652F-1EF4-459E-84F4-99D93D3D17DA} = {D9D97BB6-002F-4858-8EF2-49B4C4C4DDB4} {6C74652F-1EF4-459E-84F4-99D93D3D17DA} = {D9D97BB6-002F-4858-8EF2-49B4C4C4DDB4}
{8DD1E84B-0B03-4C0B-9B42-1E49F75E7CB1} = {7E402406-7E51-4F0D-8209-60824C1CD6E8} {8DD1E84B-0B03-4C0B-9B42-1E49F75E7CB1} = {7E402406-7E51-4F0D-8209-60824C1CD6E8}
{1AF02E2C-2CB2-44B5-B417-37653071FEC6} = {93B7AE1D-DEF6-4A04-A222-5CDE09DF262D} {1AF02E2C-2CB2-44B5-B417-37653071FEC6} = {93B7AE1D-DEF6-4A04-A222-5CDE09DF262D}
{2D8D7A03-DFFA-44EF-9299-8BB56D122245} = {90FD290C-5D65-42A6-AC9C-928730432116}
{DFE55765-564C-4B8F-993B-A94C4D1C212E} = {93B7AE1D-DEF6-4A04-A222-5CDE09DF262D} {DFE55765-564C-4B8F-993B-A94C4D1C212E} = {93B7AE1D-DEF6-4A04-A222-5CDE09DF262D}
{1FCA8834-34E6-47CF-B53F-D8DF35345363} = {4B59E09C-A51F-4B80-91BE-987904DCEF7D} {1FCA8834-34E6-47CF-B53F-D8DF35345363} = {4B59E09C-A51F-4B80-91BE-987904DCEF7D}
{758285C6-1ACA-458A-9906-EE6701D5AF87} = {7E402406-7E51-4F0D-8209-60824C1CD6E8} {758285C6-1ACA-458A-9906-EE6701D5AF87} = {7E402406-7E51-4F0D-8209-60824C1CD6E8}
@@ -1188,6 +1193,7 @@ Global
{E75F7CCD-4266-42E1-A039-DC7EB5EDD8F6} = {93B7AE1D-DEF6-4A04-A222-5CDE09DF262D} {E75F7CCD-4266-42E1-A039-DC7EB5EDD8F6} = {93B7AE1D-DEF6-4A04-A222-5CDE09DF262D}
{E3FF7539-6B22-4922-8FEF-6D26F2C2E3CE} = {4B59E09C-A51F-4B80-91BE-987904DCEF7D} {E3FF7539-6B22-4922-8FEF-6D26F2C2E3CE} = {4B59E09C-A51F-4B80-91BE-987904DCEF7D}
{678875A6-6B3A-4AAC-83B6-D9A72D9016CF} = {BC0C1801-0212-4ECC-92D5-8F2D6F69E888} {678875A6-6B3A-4AAC-83B6-D9A72D9016CF} = {BC0C1801-0212-4ECC-92D5-8F2D6F69E888}
{2D8D7A03-DFFA-44EF-9299-8BB56D122245} = {BC0C1801-0212-4ECC-92D5-8F2D6F69E888}
EndGlobalSection EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {C634D169-5814-4203-94B6-6A11371DDA95} SolutionGuid = {C634D169-5814-4203-94B6-6A11371DDA95}