Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Localization] Migrate resources to resx for Shortcut Guide #6104

Merged
merged 40 commits into from
Aug 25, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
d5eceb3
Added localization code to pipeline and created one LocProject json f…
arjunbalgovind Aug 14, 2020
0c4a9f9
Fixed typo
arjunbalgovind Aug 14, 2020
c7121cb
Reordered nuget source
arjunbalgovind Aug 14, 2020
3222e60
Moved nuget install to restore step
arjunbalgovind Aug 14, 2020
8f049ea
Added FZ.rc file to LocProj
arjunbalgovind Aug 14, 2020
502b475
Added FZ resx file and modified rc file
arjunbalgovind Aug 17, 2020
7bd039f
Fixed file names
arjunbalgovind Aug 17, 2020
85d9781
Changed to check folder for LocProject files
arjunbalgovind Aug 17, 2020
55e3f1a
Updated folder
arjunbalgovind Aug 17, 2020
5106e89
Changed directory
arjunbalgovind Aug 17, 2020
89b8a34
Changed to src directory
arjunbalgovind Aug 18, 2020
e6b599e
Changed language set and name format, removed rc file localization
arjunbalgovind Aug 18, 2020
e09f070
Added all projects with resx/resw files
arjunbalgovind Aug 18, 2020
ad38007
Added newline to end of file
arjunbalgovind Aug 18, 2020
7045a49
Removed nuget source as it is not used
arjunbalgovind Aug 18, 2020
6da613e
Updated comments
arjunbalgovind Aug 18, 2020
a1371b5
Merge remote-tracking branch 'upstream/master' into user/arbalgov/res…
arjunbalgovind Aug 19, 2020
6f1c348
Updated keyboard manager to use resx file
arjunbalgovind Aug 19, 2020
8be6173
Resolved merge conflicts
arjunbalgovind Aug 19, 2020
d6bc103
Tweaked resources.resx and added it to project files
arjunbalgovind Aug 19, 2020
738481a
Added comments and added in string table to resx script
arjunbalgovind Aug 19, 2020
118a7fb
Merge remote-tracking branch 'upstream/master' into user/arbalgov/res…
arjunbalgovind Aug 19, 2020
8b1f3bf
Remove change from bad merge
arjunbalgovind Aug 19, 2020
555e4d1
Fix syntax error in convert stringtable
arjunbalgovind Aug 20, 2020
40c9311
Changed file type to None
arjunbalgovind Aug 20, 2020
3004125
Migrated color picker's resources
arjunbalgovind Aug 20, 2020
58278e8
Migrated resources for Microsoft.Launcher
arjunbalgovind Aug 20, 2020
201f5ed
Migrated resources for fancy zones
arjunbalgovind Aug 20, 2020
892b12d
Revert fancyzones changes
arjunbalgovind Aug 20, 2020
c0a26c6
Migrated resources for ImageResizer and modified script to add langua…
arjunbalgovind Aug 20, 2020
6f963e2
Added try catch and checks for modification to avoid unnecessary file…
arjunbalgovind Aug 21, 2020
36884e0
Changed tab insertion to 4 spaces to avoid mixed file types in rc file
arjunbalgovind Aug 21, 2020
fa2f33c
Migrated resources for power preview project
arjunbalgovind Aug 21, 2020
13b5777
Added LocProject.json file for 5 projects
arjunbalgovind Aug 21, 2020
3d78f4b
added resgen exception check
arjunbalgovind Aug 21, 2020
5e7f1ca
Merge remote-tracking branch 'upstream/master' into user/arbalgov/res…
arjunbalgovind Aug 21, 2020
c87922e
Moved non-localizable strings out of resx for powerpreview
arjunbalgovind Aug 21, 2020
6bcb8fc
Migrated shortcut guide resources to resx
arjunbalgovind Aug 21, 2020
594985b
Added LocProject.json
arjunbalgovind Aug 21, 2020
1f3c19e
Resolved merge conflicts
arjunbalgovind Aug 24, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions src/modules/shortcut_guide/LocProject.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"Projects": [
{
"LanguageSet": "Azure_Languages",
"LocItems": [
{
"SourceFile": "src\\modules\\shortcut_guide\\Resources.resx",
"CopyOption": "LangIDOnName",
"OutputPath": "src\\modules\\shortcut_guide"
}
]
}
]
}
174 changes: 174 additions & 0 deletions src/modules/shortcut_guide/Resources.resx
Original file line number Diff line number Diff line change
@@ -0,0 +1,174 @@
<?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="Setting_Description_Press_Time" xml:space="preserve">
<value>How long to press the Windows key before showing the Shortcut Guide (ms)</value>
</data>
<data name="Setting_Description_Overlay_Opacity" xml:space="preserve">
<value>Opacity of the Shortcut Guide's overlay background (%)</value>
</data>
<data name="Setting_Description_Theme" xml:space="preserve">
<value>Choose Shortcut Guide overlay color</value>
</data>
<data name="Setting_Description_Theme_Light" xml:space="preserve">
<value>Light</value>
</data>
<data name="Setting_Description_Theme_Dark" xml:space="preserve">
<value>Dark</value>
</data>
<data name="Setting_Description_Theme_System" xml:space="preserve">
<value>System default app mode</value>
</data>
<data name="Settings_Description" xml:space="preserve">
<value>Shows a help overlay with Windows shortcuts when the Windows key is pressed.</value>
</data>
<data name="Shortcut_Guide" xml:space="preserve">
<value>Shortcut Guide</value>
</data>
<data name="No_Action" xml:space="preserve">
<value>No action</value>
</data>
<data name="Restore" xml:space="preserve">
<value>Restore</value>
</data>
<data name="Snap_Right" xml:space="preserve">
<value>Snap right</value>
</data>
<data name="Snap_Left" xml:space="preserve">
<value>Snap left</value>
</data>
<data name="Snap_Upper_Right" xml:space="preserve">
<value>Snap upper right</value>
</data>
<data name="Snap_Upper_Left" xml:space="preserve">
<value>Snap upper left</value>
</data>
<data name="Snap_Lower_Right" xml:space="preserve">
<value>Snap lower right</value>
</data>
<data name="Snap_Lower_Left" xml:space="preserve">
<value>Snap lower left</value>
</data>
<data name="Minimize" xml:space="preserve">
<value>Minimize</value>
</data>
<data name="Maximize" xml:space="preserve">
<value>Maximize</value>
</data>
</root>
2 changes: 1 addition & 1 deletion src/modules/shortcut_guide/overlay_window.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#include "keyboard_state.h"
#include "shortcut_guide.h"
#include "trace.h"
#include "resource.h"
#include "Generated Files/resource.h"
#include <common/common.h>

extern "C" IMAGE_DOS_HEADER __ImageBase;
Expand Down
13 changes: 13 additions & 0 deletions src/modules/shortcut_guide/resource.base.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
//{{NO_DEPENDENCIES}}
// Microsoft Visual C++ generated include file.
// Used by ShortcutGuide.rc

//////////////////////////////
// Non-localizable

#define FILE_DESCRIPTION "PowerToys ShortcutGuide"
#define INTERNAL_NAME "ShortcutGuide"
#define ORIGINAL_FILENAME "ShortcutGuide.dll"

// Non-localizable
//////////////////////////////
32 changes: 0 additions & 32 deletions src/modules/shortcut_guide/resource.h

This file was deleted.

Binary file added src/modules/shortcut_guide/shortcut_guide.base.rc
Binary file not shown.
1 change: 0 additions & 1 deletion src/modules/shortcut_guide/shortcut_guide.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
#include "shortcut_guide.h"
#include "target_state.h"
#include "trace.h"
#include "resource.h"

#include <common/common.h>
#include <common/settings_objects.h>
Expand Down
2 changes: 1 addition & 1 deletion src/modules/shortcut_guide/shortcut_guide.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#include <interface/powertoy_module_interface.h>
#include "overlay_window.h"

#include "resource.h"
#include "Generated Files/resource.h"

#include <common/LowlevelKeyboardEvent.h>

Expand Down
Binary file removed src/modules/shortcut_guide/shortcut_guide.rc
Binary file not shown.
12 changes: 10 additions & 2 deletions src/modules/shortcut_guide/shortcut_guide.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<Target Name="GenerateResourceFiles" BeforeTargets="PrepareForBuild">
<Exec Command="powershell -NonInteractive -executionpolicy Unrestricted $(SolutionDir)tools\build\convert-resx-to-rc.ps1 . resource.base.h resource.h shortcut_guide.base.rc shortcut_guide.rc" />
</Target>
<PropertyGroup Label="Globals">
<VCProjectVersion>15.0</VCProjectVersion>
<ProjectGuid>{A46629C4-1A6C-40FA-A8B6-10E5102BB0BA}</ProjectGuid>
Expand Down Expand Up @@ -104,7 +107,8 @@
<ItemGroup>
<ClInclude Include="overlay_window.h" />
<ClInclude Include="keyboard_state.h" />
<ClInclude Include="resource.h" />
<ClInclude Include="Generated Files/resource.h" />
<None Include="resource.base.h" />
<ClInclude Include="shortcut_guide.h" />
<ClInclude Include="pch.h" />
<ClInclude Include="target_state.h" />
Expand All @@ -127,11 +131,15 @@
</ProjectReference>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="shortcut_guide.rc" />
<ResourceCompile Include="Generated Files/shortcut_guide.rc" />
<None Include="shortcut_guide.base.rc" />
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<None Include="Resources.resx" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
<Import Project="..\..\..\packages\Microsoft.Windows.CppWinRT.2.0.200729.8\build\native\Microsoft.Windows.CppWinRT.targets" Condition="Exists('..\..\..\packages\Microsoft.Windows.CppWinRT.2.0.200729.8\build\native\Microsoft.Windows.CppWinRT.targets')" />
Expand Down
22 changes: 17 additions & 5 deletions src/modules/shortcut_guide/shortcut_guide.vcxproj.filters
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,8 @@
<ClInclude Include="trace.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="resource.h">
<Filter>Header Files</Filter>
<ClInclude Include="Generated Files/resource.h">
<Filter>Generated Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
Expand All @@ -50,13 +50,25 @@
<Filter Include="Resource Files">
<UniqueIdentifier>{d7932c11-20ad-4625-adbc-0780ea5e308d}</UniqueIdentifier>
</Filter>
<Filter Include="Generated Files">
<UniqueIdentifier>{41a2f27e-76b5-4799-94c3-90a33a71786b}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="shortcut_guide.rc">
<None Include="packages.config" />
<None Include="Resources.resx">
<Filter>Resource Files</Filter>
</ResourceCompile>
</None>
<None Include="shortcut_guide.base.rc">
<Filter>Resource Files</Filter>
</None>
<None Include="resource.base.h">
<Filter>Header Files</Filter>
</None>
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
<ResourceCompile Include="Generated Files/shortcut_guide.rc">
<Filter>Generated Files</Filter>
</ResourceCompile>
</ItemGroup>
</Project>