Skip to content

Commit

Permalink
change localization implementation
Browse files Browse the repository at this point in the history
  • Loading branch information
changbowen committed Dec 18, 2016
1 parent 018417f commit 3688e15
Show file tree
Hide file tree
Showing 12 changed files with 179 additions and 1,053 deletions.
2 changes: 1 addition & 1 deletion App.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@
Startup="RunCheck"
ShutdownMode="OnExplicitShutdown">
<Application.Resources>
<ResourceDictionary Source="Resources/StringResources.zh.xaml"/>
</Application.Resources>
</Application>
16 changes: 14 additions & 2 deletions App.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
//using System.Linq;
//using System.Threading.Tasks;
using System.Windows;
using DesktopNote.Resources;

namespace DesktopNote
{
Expand Down Expand Up @@ -36,7 +35,7 @@ private void RunCheck(object sender1, StartupEventArgs e1)

if (PathIsNetworkPathW(System.AppDomain.CurrentDomain.BaseDirectory))
{
MessageBox.Show(Resource.msgbox_run_from_network, "", MessageBoxButton.OK, MessageBoxImage.Exclamation);
MessageBox.Show((string)Resources["msgbox_run_from_network"], "", MessageBoxButton.OK, MessageBoxImage.Exclamation);
Current.Shutdown();
return;
}
Expand All @@ -48,6 +47,19 @@ private void RunCheck(object sender1, StartupEventArgs e1)
// return;
//}

//localization
var dict = new ResourceDictionary();
switch (System.Threading.Thread.CurrentThread.CurrentCulture.Name.Substring(0, 2))
{
case "zh":
dict.Source = new Uri(@"Resources\StringResources.zh.xaml", UriKind.Relative);
break;
default:
dict.Source = new Uri(@"Resources\StringResources.xaml", UriKind.Relative);
break;
}
Resources.MergedDictionaries.Add(dict);

var mainwin = new MainWindow();
mainwin.Show();
}
Expand Down
18 changes: 8 additions & 10 deletions DesktopNote.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -63,11 +63,6 @@
<SubType>Designer</SubType>
</ApplicationDefinition>
<Compile Include="GetCurrentMonitor.cs" />
<Compile Include="Resources\Resource.Designer.cs">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Resource.resx</DependentUpon>
</Compile>
<Compile Include="Win_Search.xaml.cs">
<DependentUpon>Win_Search.xaml</DependentUpon>
</Compile>
Expand All @@ -83,6 +78,14 @@
<DependentUpon>MainWindow.xaml</DependentUpon>
<SubType>Code</SubType>
</Compile>
<Page Include="Resources\StringResources.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="Resources\StringResources.zh.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="Win_Search.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
Expand Down Expand Up @@ -142,11 +145,6 @@
<Resource Include="Resources\TextHighlightColorPicker.ico" />
<Resource Include="Resources\Underline.ico" />
<Resource Include="Resources\Undo.ico" />
<EmbeddedResource Include="Resources\Resource.resx">
<Generator>PublicResXFileCodeGenerator</Generator>
<LastGenOutput>Resource.Designer.cs</LastGenOutput>
</EmbeddedResource>
<EmbeddedResource Include="Resources\Resource.zh.resx" />
<EmbeddedResource Include="Resources\Xceed.Wpf.Toolkit.dll" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
Expand Down
67 changes: 33 additions & 34 deletions MainWindow.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:local="clr-namespace:DesktopNote"
xmlns:wtk="http://schemas.xceed.com/wpf/xaml/toolkit"
xmlns:resx="clr-namespace:DesktopNote.Resources"
Title="Desktop Note" Height="350" Width="300" ShowInTaskbar="False" AllowsTransparency="True" WindowStyle="None" Background="{x:Null}"
ResizeMode="CanResizeWithGrip" SnapsToDevicePixels="True" UseLayoutRounding="True"
MouseEnter="Win_Main_MouseEnter" MouseLeave="Win_Main_MouseLeave" Loaded="Win_Main_Loaded">
Expand Down Expand Up @@ -54,84 +53,84 @@
<MenuItem.Header>
<StackPanel>
<StackPanel Orientation="Horizontal" Margin="0,0,0,5">
<Button Command="Undo" ToolTip="{x:Static resx:Resource.tooltip_undo}" Margin="0,0,5,0">
<Button Command="Undo" ToolTip="{StaticResource tooltip_undo}" Margin="0,0,5,0">
<Image Stretch="None" Source="Resources/Undo.ico"/>
</Button>
<Button Command="Redo" ToolTip="{x:Static resx:Resource.tooltip_redo}">
<Button Command="Redo" ToolTip="{StaticResource tooltip_redo}">
<Image Stretch="None" Source="Resources/Redo.ico"/>
</Button>
<Separator Style="{StaticResource {x:Static ToolBar.SeparatorStyleKey}}" Margin="5,2"/>
<Button Command="Copy" ToolTip="{x:Static resx:Resource.tooltip_copy}" Margin="0,0,5,0">
<Button Command="Copy" ToolTip="{StaticResource tooltip_copy}" Margin="0,0,5,0">
<Image Stretch="None" Source="Resources/Copy.ico"/>
</Button>
<Button Command="Cut" ToolTip="{x:Static resx:Resource.tooltip_cut}" Margin="0,0,5,0">
<Button Command="Cut" ToolTip="{StaticResource tooltip_cut}" Margin="0,0,5,0">
<Image Stretch="None" Source="Resources/Cut.ico"/>
</Button>
<Button Command="Paste" ToolTip="{x:Static resx:Resource.tooltip_paste}" Margin="0,0,5,0">
<Button Command="Paste" ToolTip="{StaticResource tooltip_paste}" Margin="0,0,5,0">
<Image Stretch="None" Source="Resources/Paste.ico"/>
</Button>
<Button ToolTip="{x:Static resx:Resource.tooltip_paste_text}" Click="PasteAsText">
<Button ToolTip="{StaticResource tooltip_paste_text}" Click="PasteAsText">
<Image Stretch="None" Source="Resources/PasteTextOnly.ico"/>
</Button>
<Separator Style="{StaticResource {x:Static ToolBar.SeparatorStyleKey}}" Margin="5,2"/>
<Button ToolTip="{x:Static resx:Resource.tooltip_find}" Click="Find">
<Button ToolTip="{StaticResource tooltip_find}" Click="Find">
<Image Stretch="None" Source="Resources/FindText.ico"/>
</Button>
</StackPanel>
<StackPanel Orientation="Horizontal" Margin="0,0,0,5">
<Button Command="ToggleBold" ToolTip="{x:Static resx:Resource.tooltip_bold}" Margin="0,0,5,0">
<Button Command="ToggleBold" ToolTip="{StaticResource tooltip_bold}" Margin="0,0,5,0">
<Image Stretch="None" Source="Resources/Bold.ico"/>
</Button>
<Button Command="ToggleItalic" ToolTip="{x:Static resx:Resource.tooltip_italic}" Margin="0,0,5,0">
<Button Command="ToggleItalic" ToolTip="{StaticResource tooltip_italic}" Margin="0,0,5,0">
<Image Stretch="None" Source="Resources/Italic.ico"/>
</Button>
<Button Command="ToggleUnderline" ToolTip="{x:Static resx:Resource.tooltip_underline}" Margin="0,0,5,0">
<Button Command="ToggleUnderline" ToolTip="{StaticResource tooltip_underline}" Margin="0,0,5,0">
<Image Stretch="None" Source="Resources/Underline.ico"/>
</Button>
<Button Click="ToggleStrike" ToolTip="{x:Static resx:Resource.tooltip_strikethrough}">
<Button Click="ToggleStrike" ToolTip="{StaticResource tooltip_strikethrough}">
<Image Stretch="None" Source="Resources/Strikethrough.ico"/>
</Button>
<Separator Style="{StaticResource {x:Static ToolBar.SeparatorStyleKey}}" Margin="5,2"/>
<Button Click="ToggleHighlight" ToolTip="{x:Static resx:Resource.tooltip_highlight}">
<Button Click="ToggleHighlight" ToolTip="{StaticResource tooltip_highlight}">
<Image Stretch="None" Source="Resources/TextHighlightColorPicker.ico"/>
</Button>
<Separator Style="{StaticResource {x:Static ToolBar.SeparatorStyleKey}}" Margin="5,2"/>
<ContentPresenter x:Name="CP_Font" Content="{StaticResource CP_Main}" ToolTip="{x:Static resx:Resource.tooltip_font_color}" Margin="0,0,5,0"/>
<ContentPresenter x:Name="CP_Back" Content="{StaticResource CP_Main}" ToolTip="{x:Static resx:Resource.tooltip_back_color}"/>
<ContentPresenter x:Name="CP_Font" Content="{StaticResource CP_Main}" ToolTip="{StaticResource tooltip_font_color}" Margin="0,0,5,0"/>
<ContentPresenter x:Name="CP_Back" Content="{StaticResource CP_Main}" ToolTip="{StaticResource tooltip_back_color}"/>
</StackPanel>
<StackPanel Orientation="Horizontal" Margin="0,0,0,5">
<ComboBox x:Name="CB_Font" Width="142" Margin="0,0,5,0" IsEditable="True" SelectedValuePath="Content"/>
<Button Click="DecreaseSize" ToolTip="{x:Static resx:Resource.tooltip_decrease_size}" Margin="0,0,5,0">
<Button Click="DecreaseSize" ToolTip="{StaticResource tooltip_decrease_size}" Margin="0,0,5,0">
<Image Stretch="None" Source="Resources/SizeDecrease.ico"/>
</Button>
<Button Click="IncreaseSize" ToolTip="{x:Static resx:Resource.tooltip_increase_size}" Margin="0,0,5,0">
<Button Click="IncreaseSize" ToolTip="{StaticResource tooltip_increase_size}" Margin="0,0,5,0">
<Image Stretch="None" Source="Resources/SizeIncrease.ico"/>
</Button>
</StackPanel>
<StackPanel Orientation="Horizontal">
<Button Command="ToggleBullets" ToolTip="{x:Static resx:Resource.tooltip_bullets}" Margin="0,0,5,0">
<Button Command="ToggleBullets" ToolTip="{StaticResource tooltip_bullets}" Margin="0,0,5,0">
<Image Stretch="None" Source="Resources/Bullets.ico"/>
</Button>
<Button Command="ToggleNumbering" ToolTip="{x:Static resx:Resource.tooltip_numbering}" Margin="0,0,5,0">
<Button Command="ToggleNumbering" ToolTip="{StaticResource tooltip_numbering}" Margin="0,0,5,0">
<Image Stretch="None" Source="Resources/Numbering.ico"/>
</Button>
<Button Command="IncreaseIndentation" ToolTip="{x:Static resx:Resource.tooltip_increase_indent}" Margin="0,0,5,0">
<Button Command="IncreaseIndentation" ToolTip="{StaticResource tooltip_increase_indent}" Margin="0,0,5,0">
<Image Stretch="None" Source="Resources/IndentIncrease.ico"/>
</Button>
<Button Command="DecreaseIndentation" ToolTip="{x:Static resx:Resource.tooltip_decrease_indent}">
<Button Command="DecreaseIndentation" ToolTip="{StaticResource tooltip_decrease_indent}">
<Image Stretch="None" Source="Resources/IndentDecrease.ico"/>
</Button>
<Separator Style="{StaticResource {x:Static ToolBar.SeparatorStyleKey}}" Margin="5,2"/>
<Button Command="AlignLeft" ToolTip="{x:Static resx:Resource.tooltip_align_left}" Margin="0,0,5,0">
<Button Command="AlignLeft" ToolTip="{StaticResource tooltip_align_left}" Margin="0,0,5,0">
<Image Stretch="None" Source="Resources/AlignLeft.ico"/>
</Button>
<Button Command="AlignCenter" ToolTip="{x:Static resx:Resource.tooltip_align_center}" Margin="0,0,5,0">
<Button Command="AlignCenter" ToolTip="{StaticResource tooltip_align_center}" Margin="0,0,5,0">
<Image Stretch="None" Source="Resources/AlignCenter.ico"/>
</Button>
<Button Command="AlignRight" ToolTip="{x:Static resx:Resource.tooltip_align_right}" Margin="0,0,5,0">
<Button Command="AlignRight" ToolTip="{StaticResource tooltip_align_right}" Margin="0,0,5,0">
<Image Stretch="None" Source="Resources/AlignRight.ico"/>
</Button>
<Button Command="AlignJustify" ToolTip="{x:Static resx:Resource.tooltip_align_justify}">
<Button Command="AlignJustify" ToolTip="{StaticResource tooltip_align_justify}">
<Image Stretch="None" Source="Resources/AlignJustify.ico"/>
</Button>
</StackPanel>
Expand All @@ -144,27 +143,27 @@
<MenuItem Header="Back Color" ItemsSource="{Binding Source={StaticResource colorPropertiesOdp}}" ItemTemplate="{StaticResource colorTemplate}"/>-->
<Separator/>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{x:Static resx:Resource.menu_paper_color}" VerticalAlignment="Center" Margin="0,0,10,0"/>
<TextBlock Text="{StaticResource menu_paper_color}" VerticalAlignment="Center" Margin="0,0,10,0"/>
<ContentPresenter x:Name="CP_Paper" Content="{StaticResource CP_Main}"/>
</StackPanel>
<MenuItem x:Name="MI_AutoStart" Header="{x:Static resx:Resource.menu_auto_start}" IsCheckable="True" Click="MI_AutoStart_Click"/>
<MenuItem x:Name="MI_AutoDock" Header="{x:Static resx:Resource.menu_auto_dock}" IsCheckable="True" Click="MI_AutoDock_Click"/>
<MenuItem Header="{x:Static resx:Resource.menu_reset_formats}" Click="MenuItem_ResetFormats_Click"/>
<MenuItem Header="{x:Static resx:Resource.menu_reset_settings}" Click="MenuItem_ResetSet_Click"/>
<MenuItem Header="{x:Static resx:Resource.menu_help}" Click="MenuItem_Help_Click"/>
<MenuItem Header="{x:Static resx:Resource.menu_exit}" Click="MenuItem_Exit_Click"/>
<MenuItem x:Name="MI_AutoStart" Header="{StaticResource menu_auto_start}" IsCheckable="True" Click="MI_AutoStart_Click"/>
<MenuItem x:Name="MI_AutoDock" Header="{StaticResource menu_auto_dock}" IsCheckable="True" Click="MI_AutoDock_Click"/>
<MenuItem Header="{StaticResource menu_reset_formats}" Click="MenuItem_ResetFormats_Click"/>
<MenuItem Header="{StaticResource menu_reset_settings}" Click="MenuItem_ResetSet_Click"/>
<MenuItem Header="{StaticResource menu_help}" Click="MenuItem_Help_Click"/>
<MenuItem Header="{StaticResource menu_exit}" Click="MenuItem_Exit_Click"/>
</ContextMenu>
</RichTextBox.ContextMenu>
<FlowDocument>
<List>
<ListItem>
<Paragraph>
<Run Text="{x:Static resx:Resource.default_note_text}"/>
<Run Text="{StaticResource default_note_text}"/>
</Paragraph>
</ListItem>
</List>
</FlowDocument>
</RichTextBox>
<TextBlock x:Name="TB_Status" Text="{x:Static resx:Resource.status_saved}" Margin="18" VerticalAlignment="Bottom" HorizontalAlignment="Right" Opacity="0.5" FontStyle="Italic" FontSize="10" Visibility="Hidden"/>
<TextBlock x:Name="TB_Status" Text="{StaticResource status_saved}" Margin="18" VerticalAlignment="Bottom" HorizontalAlignment="Right" Opacity="0.5" FontStyle="Italic" FontSize="10" Visibility="Hidden"/>
</Grid>
</Window>
Loading

0 comments on commit 3688e15

Please sign in to comment.