mirror of
https://github.com/Royce551/FRESHMusicPlayer.git
synced 2025-01-22 19:02:19 -05:00
Implement incomplete i18n
This commit is contained in:
parent
fdc29c2094
commit
d2dd56ca4e
11 changed files with 340 additions and 21 deletions
|
@ -14,6 +14,9 @@ namespace FRESHMusicPlayer
|
|||
{
|
||||
void App_Startup(object sender, StartupEventArgs e )
|
||||
{
|
||||
//Force Viet for the time being
|
||||
//System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("vi-VN");
|
||||
|
||||
MainWindow window = new MainWindow();
|
||||
window.Show();
|
||||
}
|
||||
|
|
|
@ -88,6 +88,11 @@
|
|||
<Compile Include="Pages\TrackInfoPage.xaml.cs">
|
||||
<DependentUpon>TrackInfoPage.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Properties\Resources.vi.Designer.cs">
|
||||
<DependentUpon>Resources.vi.resx</DependentUpon>
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTime>True</DesignTime>
|
||||
</Compile>
|
||||
<Compile Include="Resources\SkinResourceDictionary.cs" />
|
||||
<Page Include="Handlers\Notifications\NotificationBox.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
|
@ -185,8 +190,12 @@
|
|||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
</Compile>
|
||||
<EmbeddedResource Include="Properties\Resources.vi.resx">
|
||||
<Generator>PublicResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.vi.Designer.cs</LastGenOutput>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<Generator>PublicResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
</EmbeddedResource>
|
||||
<None Include="app.manifest" />
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:resx = "clr-namespace:FRESHMusicPlayer_WPF_UI_Test.Properties"
|
||||
mc:Ignorable="d"
|
||||
Title="FRESHMusicPlayer 8 Development" Height="512" Width="702" Closed="Window_Closed" PreviewKeyDown="Window_PreviewKeyDown" DragOver="Window_DragOver" Drop="Window_Drop" AllowDrop="True">
|
||||
<Window.Resources>
|
||||
|
@ -24,7 +25,7 @@
|
|||
<DockPanel Background="#FF0C6C08">
|
||||
<!--Menu-->
|
||||
<DockPanel x:Name="MainBar" Height="25" DockPanel.Dock="Top" Background="{StaticResource NavBarColor}" >
|
||||
<TextBlock x:Name="TracksTab" TextWrapping="NoWrap" Text="Tracks" FontSize="16" VerticalAlignment="Center" Foreground="{StaticResource PrimaryTextColor}" DockPanel.Dock="Left" Margin="10,0,10,0" MouseDown="TracksTab_MouseDown">
|
||||
<TextBlock x:Name="TracksTab" TextWrapping="NoWrap" Text="{x:Static resx:Resources.MAINWINDOW_TRACKS}" FontSize="16" VerticalAlignment="Center" Foreground="{StaticResource PrimaryTextColor}" DockPanel.Dock="Left" Margin="10,0,10,0" MouseDown="TracksTab_MouseDown">
|
||||
<!--<TextBlock.Triggers>
|
||||
<EventTrigger RoutedEvent="MouseEnter">
|
||||
<BeginStoryboard>
|
||||
|
@ -47,7 +48,7 @@
|
|||
</TextBlock.Triggers>-->
|
||||
</TextBlock>
|
||||
<Rectangle VerticalAlignment="Stretch" Width="1" Margin="2,5" Stroke="#FFDADADA" DockPanel.Dock="Left"/>
|
||||
<TextBlock x:Name="ArtistsTab" TextWrapping="NoWrap" Text="Artists" FontSize="16" VerticalAlignment="Center" Foreground="{StaticResource PrimaryTextColor}" DockPanel.Dock="Left" Margin="10,0" MouseDown="ArtistsTab_MouseDown">
|
||||
<TextBlock x:Name="ArtistsTab" TextWrapping="NoWrap" Text="{x:Static resx:Resources.MAINWINDOW_ARTISTS}" FontSize="16" VerticalAlignment="Center" Foreground="{StaticResource PrimaryTextColor}" DockPanel.Dock="Left" Margin="10,0" MouseDown="ArtistsTab_MouseDown">
|
||||
<!--<TextBlock.Triggers>
|
||||
<EventTrigger RoutedEvent="MouseEnter">
|
||||
<BeginStoryboard>
|
||||
|
@ -70,7 +71,7 @@
|
|||
</TextBlock.Triggers>-->
|
||||
</TextBlock>
|
||||
<Rectangle VerticalAlignment="Stretch" Width="1" Margin="2,5" Stroke="#FFDADADA" DockPanel.Dock="Left"/>
|
||||
<TextBlock x:Name="AlbumsTab" TextWrapping="NoWrap" Text="Albums" FontSize="16" VerticalAlignment="Center" Foreground="{StaticResource PrimaryTextColor}" DockPanel.Dock="Left" Margin="10,0" MouseDown="AlbumsTab_MouseDown">
|
||||
<TextBlock x:Name="AlbumsTab" TextWrapping="NoWrap" Text="{x:Static resx:Resources.MAINWINDOW_ALBUMS}" FontSize="16" VerticalAlignment="Center" Foreground="{StaticResource PrimaryTextColor}" DockPanel.Dock="Left" Margin="10,0" MouseDown="AlbumsTab_MouseDown">
|
||||
<!--<TextBlock.Triggers>
|
||||
<EventTrigger RoutedEvent="MouseEnter">
|
||||
<BeginStoryboard>
|
||||
|
@ -93,7 +94,7 @@
|
|||
</TextBlock.Triggers>-->
|
||||
</TextBlock>
|
||||
<Rectangle VerticalAlignment="Stretch" Width="1" Margin="2,5" Stroke="#FFDADADA" DockPanel.Dock="Left"/>
|
||||
<TextBlock x:Name="ImportTab" TextWrapping="NoWrap" Text="Import" FontSize="16" VerticalAlignment="Center" Foreground="{StaticResource PrimaryTextColor}" DockPanel.Dock="Left" Margin="10,0" MouseDown="ImportTab_MouseDown">
|
||||
<TextBlock x:Name="ImportTab" TextWrapping="NoWrap" Text="{x:Static resx:Resources.MAINWINDOW_IMPORT}" FontSize="16" VerticalAlignment="Center" Foreground="{StaticResource PrimaryTextColor}" DockPanel.Dock="Left" Margin="10,0" MouseDown="ImportTab_MouseDown">
|
||||
<!--<TextBlock.Triggers>
|
||||
<EventTrigger RoutedEvent="MouseEnter">
|
||||
<BeginStoryboard>
|
||||
|
|
|
@ -184,7 +184,7 @@ namespace FRESHMusicPlayer
|
|||
Track track = new Track(Player.FilePath);
|
||||
Title = $"{track.Artist} - {track.Title} | FRESHMusicPlayer 8 Development";
|
||||
TitleLabel.Text = track.Title;
|
||||
ArtistLabel.Text = track.Artist == "" ? "No Artist" : track.Artist;
|
||||
ArtistLabel.Text = track.Artist == "" ? FRESHMusicPlayer_WPF_UI_Test.Properties.Resources.MAINWINDOW_NOARTIST : track.Artist;
|
||||
ProgressBar.Maximum = Player.CurrentBackend.TotalTime.TotalSeconds;
|
||||
ProgressIndicator2.Text = Player.CurrentBackend.TotalTime.ToString(@"mm\:ss");
|
||||
|
||||
|
@ -203,7 +203,7 @@ namespace FRESHMusicPlayer
|
|||
}
|
||||
private void player_songException(object sender, PlaybackExceptionEventArgs e)
|
||||
{
|
||||
NotificationHandler.Add(new NotificationBox(new NotificationInfo("A playback error occured", $"{e.Details}\nWe'll skip to the next track for you", true, true)));
|
||||
NotificationHandler.Add(new NotificationBox(new NotificationInfo("A playback error occured", String.Format(FRESHMusicPlayer_WPF_UI_Test.Properties.Resources.MAINWINDOW_PLAYBACK_ERROR_DETAILS, e.Details), true, true)));
|
||||
Player.NextSong();
|
||||
}
|
||||
#endregion
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:local="clr-namespace:FRESHMusicPlayer_WPF_UI_Test.Pages"
|
||||
xmlns:resx = "clr-namespace:FRESHMusicPlayer_WPF_UI_Test.Properties"
|
||||
mc:Ignorable="d"
|
||||
d:DesignHeight="372" d:DesignWidth="694"
|
||||
Title="ImportPage">
|
||||
|
@ -20,11 +21,11 @@
|
|||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock TextWrapping="Wrap" Text="Import" Foreground="{StaticResource PrimaryTextColor}" FontWeight="Bold" FontSize="30" Margin="15,15,5,0" VerticalAlignment="Top" Height="40"/>
|
||||
<Button x:Name="BrowseTracksButton" Content="Browse for tracks" Margin="15,5,5,5" Grid.Row="1" TextBlock.FontSize="16" Click="BrowseTracksButton_Click"/>
|
||||
<Button x:Name="BrowsePlaylistsButton" Content="Browse for playlist files" Margin="15,5,5,5" Grid.Row="2" TextBlock.FontSize="16" Click="BrowsePlaylistsButton_Click"/>
|
||||
<Button x:Name="BrowseFoldersButton" Content="Browse for folders" Margin="15,5,5,5" Grid.Row="3" TextBlock.FontSize="16" Click="BrowseFoldersButton_Click"/>
|
||||
<TextBlock Text="You can also drag and drop to this page." Foreground="{StaticResource PrimaryTextColor}" TextWrapping="Wrap" Margin="15,5,5,0" Grid.Row="4" VerticalAlignment="Top" FontSize="16" Height="43"/>
|
||||
<TextBlock TextWrapping="Wrap" Text="{x:Static resx:Resources.MAINWINDOW_IMPORT}" Foreground="{StaticResource PrimaryTextColor}" FontWeight="Bold" FontSize="30" Margin="15,15,5,0" VerticalAlignment="Top" Height="40"/>
|
||||
<Button x:Name="BrowseTracksButton" Content="{x:Static resx:Resources.IMPORT_BROWSE_TRACKS}" Margin="15,5,5,5" Grid.Row="1" TextBlock.FontSize="16" Click="BrowseTracksButton_Click"/>
|
||||
<Button x:Name="BrowsePlaylistsButton" Content="{x:Static resx:Resources.IMPORT_BROWSE_PLAYLIST}" Margin="15,5,5,5" Grid.Row="2" TextBlock.FontSize="16" Click="BrowsePlaylistsButton_Click"/>
|
||||
<Button x:Name="BrowseFoldersButton" Content="{x:Static resx:Resources.IMPORT_BROWSE_FOLDERS}" Margin="15,5,5,5" Grid.Row="3" TextBlock.FontSize="16" Click="BrowseFoldersButton_Click"/>
|
||||
<TextBlock Text="{x:Static resx:Resources.IMPORT_DRAGDROP_PROMPT}" Foreground="{StaticResource PrimaryTextColor}" TextWrapping="Wrap" Margin="15,5,5,0" Grid.Row="4" VerticalAlignment="Top" FontSize="16" Height="43"/>
|
||||
|
||||
</Grid>
|
||||
</Page>
|
||||
|
|
|
@ -42,8 +42,8 @@ namespace FRESHMusicPlayer_WPF_UI_Test.Pages
|
|||
{
|
||||
if (!File.Exists(s))
|
||||
{
|
||||
MainWindow.NotificationHandler.Add(new NotificationBox(new NotificationInfo("Missing file",
|
||||
$"One of the tracks in your playlist file could not be imported because one or more of the tracks could not be found.\nMissing File: {s}",
|
||||
MainWindow.NotificationHandler.Add(new NotificationBox(new NotificationInfo(Properties.Resources.NOTIFICATION_COULD_NOT_IMPORT_PLAYLIST,
|
||||
$"This playlist file could not be imported because one or more of the tracks could not be found.\nMissing File: {s}",
|
||||
true,
|
||||
true)));
|
||||
continue;
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:local="clr-namespace:FRESHMusicPlayer_WPF_UI_Test.Pages"
|
||||
xmlns:resx = "clr-namespace:FRESHMusicPlayer_WPF_UI_Test.Properties"
|
||||
mc:Ignorable="d"
|
||||
d:DesignHeight="372" d:DesignWidth="235"
|
||||
Title="NotificationPage" Unloaded="Page_Unloaded">
|
||||
|
@ -14,8 +15,8 @@
|
|||
</Grid.RowDefinitions>
|
||||
<ListBox x:Name="NotificationList" ScrollViewer.HorizontalScrollBarVisibility="Disabled" HorizontalContentAlignment="Stretch" VirtualizingPanel.IsVirtualizing="True" Background="{StaticResource SecondaryColor}" Grid.Row="1" BorderBrush="{x:Null}">
|
||||
</ListBox>
|
||||
<TextBlock TextWrapping="Wrap" Text="Notifications" Foreground="White" FontWeight="Bold" FontSize="18" Margin="5,5,116,5"/>
|
||||
<TextBlock Text="Clear all" Foreground="White" FontSize="10" Margin="191,10,6,8" MouseLeftButtonDown="TextBlock_MouseLeftButtonDown"/>
|
||||
<TextBlock TextWrapping="Wrap" Text="{x:Static resx:Resources.NOTIFICATIONS_TITLE}" Foreground="White" FontWeight="Bold" FontSize="18" Margin="5,5,116,5"/>
|
||||
<TextBlock Text="{x:Static resx:Resources.NOTIFICATIONS_CLEAR_ALL}" Foreground="White" FontSize="10" Margin="0,10,6,8" MouseLeftButtonDown="TextBlock_MouseLeftButtonDown" HorizontalAlignment="Right"/>
|
||||
</Grid>
|
||||
|
||||
</Page>
|
||||
|
|
|
@ -22,7 +22,7 @@ namespace FRESHMusicPlayer_WPF_UI_Test.Properties {
|
|||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
internal class Resources {
|
||||
public class Resources {
|
||||
|
||||
private static global::System.Resources.ResourceManager resourceMan;
|
||||
|
||||
|
@ -36,7 +36,7 @@ namespace FRESHMusicPlayer_WPF_UI_Test.Properties {
|
|||
/// 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 {
|
||||
public static global::System.Resources.ResourceManager ResourceManager {
|
||||
get {
|
||||
if (object.ReferenceEquals(resourceMan, null)) {
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("FRESHMusicPlayer_WPF_UI_Test.Properties.Resources", typeof(Resources).Assembly);
|
||||
|
@ -51,7 +51,7 @@ namespace FRESHMusicPlayer_WPF_UI_Test.Properties {
|
|||
/// 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 {
|
||||
public static global::System.Globalization.CultureInfo Culture {
|
||||
get {
|
||||
return resourceCulture;
|
||||
}
|
||||
|
@ -59,5 +59,123 @@ namespace FRESHMusicPlayer_WPF_UI_Test.Properties {
|
|||
resourceCulture = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Browse for folders.
|
||||
/// </summary>
|
||||
public static string IMPORT_BROWSE_FOLDERS {
|
||||
get {
|
||||
return ResourceManager.GetString("IMPORT_BROWSE_FOLDERS", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Browse for playlist files.
|
||||
/// </summary>
|
||||
public static string IMPORT_BROWSE_PLAYLIST {
|
||||
get {
|
||||
return ResourceManager.GetString("IMPORT_BROWSE_PLAYLIST", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Browse for tracks.
|
||||
/// </summary>
|
||||
public static string IMPORT_BROWSE_TRACKS {
|
||||
get {
|
||||
return ResourceManager.GetString("IMPORT_BROWSE_TRACKS", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to You can also drag and drop to this page..
|
||||
/// </summary>
|
||||
public static string IMPORT_DRAGDROP_PROMPT {
|
||||
get {
|
||||
return ResourceManager.GetString("IMPORT_DRAGDROP_PROMPT", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Albums.
|
||||
/// </summary>
|
||||
public static string MAINWINDOW_ALBUMS {
|
||||
get {
|
||||
return ResourceManager.GetString("MAINWINDOW_ALBUMS", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Artists.
|
||||
/// </summary>
|
||||
public static string MAINWINDOW_ARTISTS {
|
||||
get {
|
||||
return ResourceManager.GetString("MAINWINDOW_ARTISTS", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Import.
|
||||
/// </summary>
|
||||
public static string MAINWINDOW_IMPORT {
|
||||
get {
|
||||
return ResourceManager.GetString("MAINWINDOW_IMPORT", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to No Artist.
|
||||
/// </summary>
|
||||
public static string MAINWINDOW_NOARTIST {
|
||||
get {
|
||||
return ResourceManager.GetString("MAINWINDOW_NOARTIST", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to {0}
|
||||
///We'll skip to the next track for you.
|
||||
/// </summary>
|
||||
public static string MAINWINDOW_PLAYBACK_ERROR_DETAILS {
|
||||
get {
|
||||
return ResourceManager.GetString("MAINWINDOW_PLAYBACK_ERROR_DETAILS", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Tracks.
|
||||
/// </summary>
|
||||
public static string MAINWINDOW_TRACKS {
|
||||
get {
|
||||
return ResourceManager.GetString("MAINWINDOW_TRACKS", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Missing File.
|
||||
/// </summary>
|
||||
public static string NOTIFICATION_COULD_NOT_IMPORT_PLAYLIST {
|
||||
get {
|
||||
return ResourceManager.GetString("NOTIFICATION_COULD_NOT_IMPORT_PLAYLIST", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Clear All.
|
||||
/// </summary>
|
||||
public static string NOTIFICATIONS_CLEAR_ALL {
|
||||
get {
|
||||
return ResourceManager.GetString("NOTIFICATIONS_CLEAR_ALL", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Notifications.
|
||||
/// </summary>
|
||||
public static string NOTIFICATIONS_TITLE {
|
||||
get {
|
||||
return ResourceManager.GetString("NOTIFICATIONS_TITLE", resourceCulture);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -117,6 +117,44 @@
|
|||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
|
||||
<data name="IMPORT_BROWSE_FOLDERS" xml:space="preserve">
|
||||
<value>Browse for folders</value>
|
||||
</data>
|
||||
<data name="IMPORT_BROWSE_PLAYLIST" xml:space="preserve">
|
||||
<value>Browse for playlist files</value>
|
||||
</data>
|
||||
<data name="IMPORT_BROWSE_TRACKS" xml:space="preserve">
|
||||
<value>Browse for tracks</value>
|
||||
</data>
|
||||
<data name="IMPORT_DRAGDROP_PROMPT" xml:space="preserve">
|
||||
<value>You can also drag and drop to this page.</value>
|
||||
</data>
|
||||
<data name="MAINWINDOW_ALBUMS" xml:space="preserve">
|
||||
<value>Albums</value>
|
||||
</data>
|
||||
<data name="MAINWINDOW_ARTISTS" xml:space="preserve">
|
||||
<value>Artists</value>
|
||||
</data>
|
||||
<data name="MAINWINDOW_IMPORT" xml:space="preserve">
|
||||
<value>Import</value>
|
||||
</data>
|
||||
<data name="MAINWINDOW_NOARTIST" xml:space="preserve">
|
||||
<value>No Artist</value>
|
||||
</data>
|
||||
<data name="MAINWINDOW_PLAYBACK_ERROR_DETAILS" xml:space="preserve">
|
||||
<value>{0}
|
||||
We'll skip to the next track for you</value>
|
||||
</data>
|
||||
<data name="MAINWINDOW_TRACKS" xml:space="preserve">
|
||||
<value>Tracks</value>
|
||||
</data>
|
||||
<data name="NOTIFICATIONS_CLEAR_ALL" xml:space="preserve">
|
||||
<value>Clear All</value>
|
||||
</data>
|
||||
<data name="NOTIFICATIONS_TITLE" xml:space="preserve">
|
||||
<value>Notifications</value>
|
||||
</data>
|
||||
<data name="NOTIFICATION_COULD_NOT_IMPORT_PLAYLIST" xml:space="preserve">
|
||||
<value>Missing File</value>
|
||||
</data>
|
||||
</root>
|
0
FRESHMusicPlayer/FRESHMusicPlayer-WPF-UI-Test/Properties/Resources.vi.Designer.cs
generated
Normal file
0
FRESHMusicPlayer/FRESHMusicPlayer-WPF-UI-Test/Properties/Resources.vi.Designer.cs
generated
Normal file
|
@ -0,0 +1,148 @@
|
|||
<?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=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="MAINWINDOW_ALBUMS" xml:space="preserve">
|
||||
<value>Đĩa</value>
|
||||
</data>
|
||||
<data name="MAINWINDOW_ARTISTS" xml:space="preserve">
|
||||
<value>Nghệ Sĩ</value>
|
||||
</data>
|
||||
<data name="MAINWINDOW_IMPORT" xml:space="preserve">
|
||||
<value>Nhập</value>
|
||||
</data>
|
||||
<data name="MAINWINDOW_NOARTIST" xml:space="preserve">
|
||||
<value>Không có nghệ sĩ {0} {2} {1}</value>
|
||||
</data>
|
||||
<data name="MAINWINDOW_PLAYBACK_ERROR_DETAILS" xml:space="preserve">
|
||||
<value>{0}
|
||||
Chúng tôi sẽ nhảy tiếp cho bạn</value>
|
||||
</data>
|
||||
<data name="MAINWINDOW_TRACKS" xml:space="preserve">
|
||||
<value>Bài Hát</value>
|
||||
</data>
|
||||
<data name="NOTIFICATIONS_CLEAR_ALL" xml:space="preserve">
|
||||
<value>Xóa Tất Cả</value>
|
||||
</data>
|
||||
<data name="NOTIFICATIONS_TITLE" xml:space="preserve">
|
||||
<value>Thông Báo</value>
|
||||
</data>
|
||||
<data name="NOTIFICATION_COULD_NOT_IMPORT_PLAYLIST" xml:space="preserve">
|
||||
<value>Không thể nhập hàng phát</value>
|
||||
</data>
|
||||
</root>
|
Loading…
Reference in a new issue