diff --git a/vs2017/VSPackage/CustomTool/CodeDomCodeGenerator.cs b/vs2017/VSPackage/CustomTool/CodeDomCodeGenerator.cs index fd9c02a..093db12 100644 --- a/vs2017/VSPackage/CustomTool/CodeDomCodeGenerator.cs +++ b/vs2017/VSPackage/CustomTool/CodeDomCodeGenerator.cs @@ -39,8 +39,8 @@ namespace ChristianHelle.DeveloperTools.CodeGenerators.Resw.VSPackage.CustomTool codeNamespace.Comments.Add( new CodeCommentStatement("--------------------------------------------------------------------------------------------------")); codeNamespace.Comments.Add(new CodeCommentStatement("")); - codeNamespace.Comments.Add(new CodeCommentStatement("\tThis code was generated by ResW File Code Generator (http://bit.ly/reswcodegen)")); - codeNamespace.Comments.Add(new CodeCommentStatement("\tResW File Code Generator was written by Christian Resma Helle")); + codeNamespace.Comments.Add(new CodeCommentStatement("\tThis code was generated by ResW File Code Generator MOD (http://bit.ly/reswcodegen)")); + codeNamespace.Comments.Add(new CodeCommentStatement("\tResW File Code Generator was written by Christian Resma Helle (modified by Tobias Klika)")); codeNamespace.Comments.Add(new CodeCommentStatement("\tand is under GNU General Public License version 2 (GPLv2)")); codeNamespace.Comments.Add(new CodeCommentStatement(string.Empty)); codeNamespace.Comments.Add(new CodeCommentStatement("\tThis code contains a helper class exposing property representations")); @@ -136,14 +136,24 @@ namespace ChristianHelle.DeveloperTools.CodeGenerators.Resw.VSPackage.CustomTool var resources = ResourceParser.Parse(); foreach (var item in resources) { - if (string.IsNullOrEmpty(item.Name) || item.Name.Contains(".")) + if (string.IsNullOrEmpty(item.Name)) continue; + string name = item.Name.Trim(); + string key = item.Name; + + if (name.Contains(".")) + { + name = name.Replace(".", "_"); + key = key.Replace(".", "/"); + } + var property = new CodeMemberProperty { - Name = item.Name.Trim(), - Attributes = MemberAttributes.Public | MemberAttributes.Static, + Name = name, + Attributes = MemberAttributes.Public, HasGet = true, + HasSet = true, Type = new CodeTypeReference(typeof (string)) }; @@ -155,9 +165,7 @@ namespace ChristianHelle.DeveloperTools.CodeGenerators.Resw.VSPackage.CustomTool new CodeMethodInvokeExpression( new CodeFieldReferenceExpression(null, "resourceLoader"), "GetString", - new CodePrimitiveExpression(item.Name)))); - - targetClass.Members.Add(property); + new CodePrimitiveExpression(key)))); } codeNamespace.Types.Add(targetClass); diff --git a/vs2017/VSPackage/CustomTool/ReswFileCSharpCodeGenerator.cs b/vs2017/VSPackage/CustomTool/ReswFileCSharpCodeGenerator.cs index 63550c9..099b171 100644 --- a/vs2017/VSPackage/CustomTool/ReswFileCSharpCodeGenerator.cs +++ b/vs2017/VSPackage/CustomTool/ReswFileCSharpCodeGenerator.cs @@ -11,7 +11,7 @@ namespace ChristianHelle.DeveloperTools.CodeGenerators.Resw.VSPackage.CustomTool "C# ResW File Code Generator", Guids.ReswFileCSharpCodeGenerator, GeneratesDesignTimeSource = true, - GeneratorRegKeyName = "ReswFileCodeGenerator")] + GeneratorRegKeyName = "ReswFileCodeGeneratorMod")] public class ReswFileCSharpCodeGenerator : ReswFileCodeGenerator { public ReswFileCSharpCodeGenerator() diff --git a/vs2017/VSPackage/CustomTool/ReswFileCSharpCodeGeneratorInternal.cs b/vs2017/VSPackage/CustomTool/ReswFileCSharpCodeGeneratorInternal.cs index f6e6624..6a6c90d 100644 --- a/vs2017/VSPackage/CustomTool/ReswFileCSharpCodeGeneratorInternal.cs +++ b/vs2017/VSPackage/CustomTool/ReswFileCSharpCodeGeneratorInternal.cs @@ -12,7 +12,7 @@ namespace ChristianHelle.DeveloperTools.CodeGenerators.Resw.VSPackage.CustomTool "C# ResW File Code Generator (Internal class)", Guids.ReswFileCSharpCodeGenerator, GeneratesDesignTimeSource = true, - GeneratorRegKeyName = "InternalReswFileCodeGenerator")] + GeneratorRegKeyName = "InternalReswFileCodeGeneratorMod")] public class ReswFileCSharpCodeGeneratorInternal : ReswFileCodeGenerator { public ReswFileCSharpCodeGeneratorInternal() diff --git a/vs2017/VSPackage/CustomTool/ReswFileVisualBasicCodeGenerator.cs b/vs2017/VSPackage/CustomTool/ReswFileVisualBasicCodeGenerator.cs index 374fd65..e7442cf 100644 --- a/vs2017/VSPackage/CustomTool/ReswFileVisualBasicCodeGenerator.cs +++ b/vs2017/VSPackage/CustomTool/ReswFileVisualBasicCodeGenerator.cs @@ -11,7 +11,7 @@ namespace ChristianHelle.DeveloperTools.CodeGenerators.Resw.VSPackage.CustomTool "Visual Basic ResW File Code Generator", Guids.ReswFileVisualBasicCodeGenerator, GeneratesDesignTimeSource = true, - GeneratorRegKeyName = "ReswFileCodeGenerator")] + GeneratorRegKeyName = "ReswFileCodeGeneratorMod")] public class ReswFileVisualBasicCodeGenerator : ReswFileCodeGenerator { public ReswFileVisualBasicCodeGenerator() diff --git a/vs2017/VSPackage/CustomTool/ReswFileVisualBasicCodeGeneratorInternal.cs b/vs2017/VSPackage/CustomTool/ReswFileVisualBasicCodeGeneratorInternal.cs index db9390b..cf24939 100644 --- a/vs2017/VSPackage/CustomTool/ReswFileVisualBasicCodeGeneratorInternal.cs +++ b/vs2017/VSPackage/CustomTool/ReswFileVisualBasicCodeGeneratorInternal.cs @@ -12,7 +12,7 @@ namespace ChristianHelle.DeveloperTools.CodeGenerators.Resw.VSPackage.CustomTool "Visual Basic ResW File Code Generator (Internal class)", Guids.ReswFileVisualBasicCodeGenerator, GeneratesDesignTimeSource = true, - GeneratorRegKeyName = "InternalReswFileCodeGenerator")] + GeneratorRegKeyName = "InternalReswFileCodeGeneratorMod")] public class ReswFileVisualBasicCodeGeneratorInternal : ReswFileCodeGenerator { public ReswFileVisualBasicCodeGeneratorInternal() diff --git a/vs2017/VSPackage/Guids.cs b/vs2017/VSPackage/Guids.cs index 0c7030c..13b0efd 100644 --- a/vs2017/VSPackage/Guids.cs +++ b/vs2017/VSPackage/Guids.cs @@ -4,7 +4,7 @@ namespace ChristianHelle.DeveloperTools.CodeGenerators.Resw.VSPackage { internal static class Guids { - public const string guidVSPackagePkgString = "6a4c1726-440f-4b2d-a2e5-711277da6099"; + public const string guidVSPackagePkgString = "1a4c1726-440f-4b2d-a2e5-711277da6099"; public const string guidVSPackageCmdSetString = "fb40dc0b-2f75-404c-ba4e-dc1b90c41941"; public const string ReswFileCSharpCodeGenerator = "{FAE04EC1-301F-11D3-BF4B-00C04F79EFBC}"; diff --git a/vs2017/VSPackage/Properties/AssemblyInfo.cs b/vs2017/VSPackage/Properties/AssemblyInfo.cs index d7a6859..fcf5678 100644 --- a/vs2017/VSPackage/Properties/AssemblyInfo.cs +++ b/vs2017/VSPackage/Properties/AssemblyInfo.cs @@ -5,11 +5,11 @@ using System.Runtime.InteropServices; // General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. -[assembly: AssemblyTitle("ResW File Code Generator")] +[assembly: AssemblyTitle("ResW File Code Generator MOD")] [assembly: AssemblyDescription("A Visual Studio Custom Tool for generating a strongly typed helper class for accessing localized resources from a .ResW file")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("ReswFileCodeGen")] +[assembly: AssemblyProduct("ReswFileCodeGenMOD")] [assembly: AssemblyCopyright("")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] @@ -29,5 +29,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.5.*")] -[assembly: AssemblyFileVersion("1.5.0.0")] +[assembly: AssemblyVersion("2.0.*")] +[assembly: AssemblyFileVersion("2.0.0.0")] diff --git a/vs2017/VSPackage/source.extension.vsixmanifest b/vs2017/VSPackage/source.extension.vsixmanifest index ba9d7f8..66e9b76 100644 --- a/vs2017/VSPackage/source.extension.vsixmanifest +++ b/vs2017/VSPackage/source.extension.vsixmanifest @@ -3,11 +3,11 @@ xmlns="http://schemas.microsoft.com/developer/vsx-schema/2011" xmlns:d="http://schemas.microsoft.com/developer/vsx-schema-design/2011"> - - ResW File Code Generator + Publisher="Tobias Klika" /> + ResW File Code Generator MOD A Visual Studio Custom Tool for generating a strongly typed helper class for accessing localized resources from a .ResW file. http://visualstudiogallery.msdn.microsoft.com/3ab88efd-1afb-4ff5-9faf-8825a282596a License.txt