From b73d8b5382f381a35d95ae459ddeef4d94273a85 Mon Sep 17 00:00:00 2001 From: Sam Hocevar Date: Thu, 20 Sep 2012 11:58:35 +0000 Subject: [PATCH] vslol: create a Visual Studio plugin that will let us rebuild parsers & lexers. --- build/vs2010/Lol.sln | 186 ++++++++++++++++ tools/vslol/AssemblyInfo.cs | 24 +++ tools/vslol/GlobalSuppressions.cs | 1 + tools/vslol/MenuGenerateCompilers.cs | 245 ++++++++++++++++++++++ tools/vslol/VsLol.Designer.cs | 72 +++++++ tools/vslol/VsLol.cs | 73 +++++++ tools/vslol/VsLol.csproj | 153 ++++++++++++++ tools/vslol/VsLol.csproj.user | 13 ++ tools/vslol/VsLol.resx | 123 +++++++++++ tools/vslol/VsLol.vsct | 92 ++++++++ tools/vslol/gear.bmp | Bin 0 -> 1078 bytes tools/vslol/source.extension.vsixmanifest | 24 +++ 12 files changed, 1006 insertions(+) create mode 100644 tools/vslol/AssemblyInfo.cs create mode 100644 tools/vslol/GlobalSuppressions.cs create mode 100644 tools/vslol/MenuGenerateCompilers.cs create mode 100644 tools/vslol/VsLol.Designer.cs create mode 100644 tools/vslol/VsLol.cs create mode 100644 tools/vslol/VsLol.csproj create mode 100644 tools/vslol/VsLol.csproj.user create mode 100644 tools/vslol/VsLol.resx create mode 100644 tools/vslol/VsLol.vsct create mode 100644 tools/vslol/gear.bmp create mode 100644 tools/vslol/source.extension.vsixmanifest diff --git a/build/vs2010/Lol.sln b/build/vs2010/Lol.sln index ed1c3d45..1ddc8dfc 100644 --- a/build/vs2010/Lol.sln +++ b/build/vs2010/Lol.sln @@ -104,18 +104,30 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "03_noise", "..\..\tutorial\ EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestProject", "..\..\people\jnat\TestProject\TestProject.vcxproj", "{5A77DCDD-2CBA-43E9-8B45-00C281443F77}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "VsLol", "VsLol", "{9CC50C06-DF5E-41A7-AD90-04F05386E081}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VsLol", "..\..\tools\vslol\VsLol.csproj", "{58922993-9830-4A40-B462-0326342F69ED}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|Mixed Platforms = Debug|Mixed Platforms Debug|PS3 = Debug|PS3 Debug|Win32 = Debug|Win32 Debug|x64 = Debug|x64 Debug|Xbox 360 = Debug|Xbox 360 + Release|Any CPU = Release|Any CPU + Release|Mixed Platforms = Release|Mixed Platforms Release|PS3 = Release|PS3 Release|Win32 = Release|Win32 Release|x64 = Release|x64 Release|Xbox 360 = Release|Xbox 360 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution + {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Debug|PS3.ActiveCfg = Debug|PS3 {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Debug|PS3.Build.0 = Debug|PS3 {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Debug|Win32.ActiveCfg = Debug|Win32 @@ -125,6 +137,10 @@ Global {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Debug|Xbox 360.Build.0 = Debug|Xbox 360 {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 + {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Release|PS3.ActiveCfg = Release|PS3 {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Release|PS3.Build.0 = Release|PS3 {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Release|Win32.ActiveCfg = Release|Win32 @@ -134,6 +150,10 @@ Global {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Release|Xbox 360.Build.0 = Release|Xbox 360 {EF1A4E80-63FA-4EB0-B834-12B6C500F31C}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 + {17F0F184-4436-4D08-B8AA-16572EA238DB}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {17F0F184-4436-4D08-B8AA-16572EA238DB}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {17F0F184-4436-4D08-B8AA-16572EA238DB}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {17F0F184-4436-4D08-B8AA-16572EA238DB}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {17F0F184-4436-4D08-B8AA-16572EA238DB}.Debug|PS3.ActiveCfg = Debug|PS3 {17F0F184-4436-4D08-B8AA-16572EA238DB}.Debug|PS3.Build.0 = Debug|PS3 {17F0F184-4436-4D08-B8AA-16572EA238DB}.Debug|Win32.ActiveCfg = Debug|Win32 @@ -143,6 +163,10 @@ Global {17F0F184-4436-4D08-B8AA-16572EA238DB}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 {17F0F184-4436-4D08-B8AA-16572EA238DB}.Debug|Xbox 360.Build.0 = Debug|Xbox 360 {17F0F184-4436-4D08-B8AA-16572EA238DB}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 + {17F0F184-4436-4D08-B8AA-16572EA238DB}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {17F0F184-4436-4D08-B8AA-16572EA238DB}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {17F0F184-4436-4D08-B8AA-16572EA238DB}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {17F0F184-4436-4D08-B8AA-16572EA238DB}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {17F0F184-4436-4D08-B8AA-16572EA238DB}.Release|PS3.ActiveCfg = Release|PS3 {17F0F184-4436-4D08-B8AA-16572EA238DB}.Release|PS3.Build.0 = Release|PS3 {17F0F184-4436-4D08-B8AA-16572EA238DB}.Release|Win32.ActiveCfg = Release|Win32 @@ -152,16 +176,28 @@ Global {17F0F184-4436-4D08-B8AA-16572EA238DB}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 {17F0F184-4436-4D08-B8AA-16572EA238DB}.Release|Xbox 360.Build.0 = Release|Xbox 360 {17F0F184-4436-4D08-B8AA-16572EA238DB}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 + {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Debug|PS3.ActiveCfg = Debug|PS3 {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Debug|Win32.ActiveCfg = Debug|Win32 {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Debug|Win32.Build.0 = Debug|Win32 {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Debug|x64.ActiveCfg = Debug|x64 {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 + {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Release|PS3.ActiveCfg = Release|PS3 {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Release|Win32.ActiveCfg = Release|Win32 {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Release|Win32.Build.0 = Release|Win32 {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Release|x64.ActiveCfg = Release|x64 {9C66B179-0737-4BDA-AB42-2ADE478A9008}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 + {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Debug|PS3.ActiveCfg = Debug|PS3 {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Debug|PS3.Build.0 = Debug|PS3 {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Debug|Win32.ActiveCfg = Debug|Win32 @@ -171,6 +207,10 @@ Global {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Debug|Xbox 360.Build.0 = Debug|Xbox 360 {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 + {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Release|PS3.ActiveCfg = Release|PS3 {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Release|PS3.Build.0 = Release|PS3 {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Release|Win32.ActiveCfg = Release|Win32 @@ -180,6 +220,10 @@ Global {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Release|Xbox 360.Build.0 = Release|Xbox 360 {9E62F2FE-3408-4EAE-8238-FD84238CEEDA}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 + {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Debug|PS3.ActiveCfg = Debug|PS3 {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Debug|PS3.Build.0 = Debug|PS3 {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Debug|Win32.ActiveCfg = Debug|Win32 @@ -189,6 +233,10 @@ Global {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Debug|Xbox 360.Build.0 = Debug|Xbox 360 {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 + {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Release|PS3.ActiveCfg = Release|PS3 {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Release|PS3.Build.0 = Release|PS3 {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Release|Win32.ActiveCfg = Release|Win32 @@ -198,6 +246,10 @@ Global {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Release|Xbox 360.Build.0 = Release|Xbox 360 {B1E10086-A1DA-401A-834D-969C9DBB5CC1}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 + {80F81C11-8DA2-4990-91CB-9807783BA46E}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {80F81C11-8DA2-4990-91CB-9807783BA46E}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {80F81C11-8DA2-4990-91CB-9807783BA46E}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {80F81C11-8DA2-4990-91CB-9807783BA46E}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {80F81C11-8DA2-4990-91CB-9807783BA46E}.Debug|PS3.ActiveCfg = Debug|PS3 {80F81C11-8DA2-4990-91CB-9807783BA46E}.Debug|PS3.Build.0 = Debug|PS3 {80F81C11-8DA2-4990-91CB-9807783BA46E}.Debug|Win32.ActiveCfg = Debug|Win32 @@ -207,6 +259,10 @@ Global {80F81C11-8DA2-4990-91CB-9807783BA46E}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 {80F81C11-8DA2-4990-91CB-9807783BA46E}.Debug|Xbox 360.Build.0 = Debug|Xbox 360 {80F81C11-8DA2-4990-91CB-9807783BA46E}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 + {80F81C11-8DA2-4990-91CB-9807783BA46E}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {80F81C11-8DA2-4990-91CB-9807783BA46E}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {80F81C11-8DA2-4990-91CB-9807783BA46E}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {80F81C11-8DA2-4990-91CB-9807783BA46E}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {80F81C11-8DA2-4990-91CB-9807783BA46E}.Release|PS3.ActiveCfg = Release|PS3 {80F81C11-8DA2-4990-91CB-9807783BA46E}.Release|PS3.Build.0 = Release|PS3 {80F81C11-8DA2-4990-91CB-9807783BA46E}.Release|Win32.ActiveCfg = Release|Win32 @@ -216,6 +272,10 @@ Global {80F81C11-8DA2-4990-91CB-9807783BA46E}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 {80F81C11-8DA2-4990-91CB-9807783BA46E}.Release|Xbox 360.Build.0 = Release|Xbox 360 {80F81C11-8DA2-4990-91CB-9807783BA46E}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 + {B92ABADC-45BE-4CC5-B724-9426053123A1}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {B92ABADC-45BE-4CC5-B724-9426053123A1}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {B92ABADC-45BE-4CC5-B724-9426053123A1}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {B92ABADC-45BE-4CC5-B724-9426053123A1}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {B92ABADC-45BE-4CC5-B724-9426053123A1}.Debug|PS3.ActiveCfg = Debug|PS3 {B92ABADC-45BE-4CC5-B724-9426053123A1}.Debug|PS3.Build.0 = Debug|PS3 {B92ABADC-45BE-4CC5-B724-9426053123A1}.Debug|Win32.ActiveCfg = Debug|Win32 @@ -225,6 +285,10 @@ Global {B92ABADC-45BE-4CC5-B724-9426053123A1}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 {B92ABADC-45BE-4CC5-B724-9426053123A1}.Debug|Xbox 360.Build.0 = Debug|Xbox 360 {B92ABADC-45BE-4CC5-B724-9426053123A1}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 + {B92ABADC-45BE-4CC5-B724-9426053123A1}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {B92ABADC-45BE-4CC5-B724-9426053123A1}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {B92ABADC-45BE-4CC5-B724-9426053123A1}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {B92ABADC-45BE-4CC5-B724-9426053123A1}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {B92ABADC-45BE-4CC5-B724-9426053123A1}.Release|PS3.ActiveCfg = Release|PS3 {B92ABADC-45BE-4CC5-B724-9426053123A1}.Release|PS3.Build.0 = Release|PS3 {B92ABADC-45BE-4CC5-B724-9426053123A1}.Release|Win32.ActiveCfg = Release|Win32 @@ -234,6 +298,10 @@ Global {B92ABADC-45BE-4CC5-B724-9426053123A1}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 {B92ABADC-45BE-4CC5-B724-9426053123A1}.Release|Xbox 360.Build.0 = Release|Xbox 360 {B92ABADC-45BE-4CC5-B724-9426053123A1}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 + {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Debug|PS3.ActiveCfg = Debug|PS3 {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Debug|PS3.Build.0 = Debug|PS3 {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Debug|Win32.ActiveCfg = Debug|Win32 @@ -243,6 +311,10 @@ Global {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Debug|Xbox 360.Build.0 = Debug|Xbox 360 {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 + {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Release|PS3.ActiveCfg = Release|PS3 {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Release|PS3.Build.0 = Release|PS3 {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Release|Win32.ActiveCfg = Release|Win32 @@ -252,6 +324,10 @@ Global {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Release|Xbox 360.Build.0 = Release|Xbox 360 {7B083DA2-FE08-4F6D-BFDD-195D5C2783EB}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 + {1C5B8702-290C-42DA-AA9E-671348F5B747}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {1C5B8702-290C-42DA-AA9E-671348F5B747}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {1C5B8702-290C-42DA-AA9E-671348F5B747}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {1C5B8702-290C-42DA-AA9E-671348F5B747}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {1C5B8702-290C-42DA-AA9E-671348F5B747}.Debug|PS3.ActiveCfg = Debug|PS3 {1C5B8702-290C-42DA-AA9E-671348F5B747}.Debug|PS3.Build.0 = Debug|PS3 {1C5B8702-290C-42DA-AA9E-671348F5B747}.Debug|Win32.ActiveCfg = Debug|Win32 @@ -261,6 +337,10 @@ Global {1C5B8702-290C-42DA-AA9E-671348F5B747}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 {1C5B8702-290C-42DA-AA9E-671348F5B747}.Debug|Xbox 360.Build.0 = Debug|Xbox 360 {1C5B8702-290C-42DA-AA9E-671348F5B747}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 + {1C5B8702-290C-42DA-AA9E-671348F5B747}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {1C5B8702-290C-42DA-AA9E-671348F5B747}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {1C5B8702-290C-42DA-AA9E-671348F5B747}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {1C5B8702-290C-42DA-AA9E-671348F5B747}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {1C5B8702-290C-42DA-AA9E-671348F5B747}.Release|PS3.ActiveCfg = Release|PS3 {1C5B8702-290C-42DA-AA9E-671348F5B747}.Release|PS3.Build.0 = Release|PS3 {1C5B8702-290C-42DA-AA9E-671348F5B747}.Release|Win32.ActiveCfg = Release|Win32 @@ -270,6 +350,10 @@ Global {1C5B8702-290C-42DA-AA9E-671348F5B747}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 {1C5B8702-290C-42DA-AA9E-671348F5B747}.Release|Xbox 360.Build.0 = Release|Xbox 360 {1C5B8702-290C-42DA-AA9E-671348F5B747}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 + {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Debug|PS3.ActiveCfg = Debug|PS3 {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Debug|PS3.Build.0 = Debug|PS3 {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Debug|Win32.ActiveCfg = Debug|Win32 @@ -279,6 +363,10 @@ Global {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Debug|Xbox 360.Build.0 = Debug|Xbox 360 {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 + {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Release|PS3.ActiveCfg = Release|PS3 {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Release|PS3.Build.0 = Release|PS3 {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Release|Win32.ActiveCfg = Release|Win32 @@ -288,6 +376,10 @@ Global {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Release|Xbox 360.Build.0 = Release|Xbox 360 {6BF81B39-EDC2-4227-9992-C2D8ABEA95AF}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 + {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Debug|PS3.ActiveCfg = Debug|PS3 {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Debug|PS3.Build.0 = Debug|PS3 {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Debug|Win32.ActiveCfg = Debug|Win32 @@ -297,6 +389,10 @@ Global {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Debug|Xbox 360.Build.0 = Debug|Xbox 360 {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 + {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Release|PS3.ActiveCfg = Release|PS3 {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Release|PS3.Build.0 = Release|PS3 {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Release|Win32.ActiveCfg = Release|Win32 @@ -306,6 +402,10 @@ Global {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Release|Xbox 360.Build.0 = Release|Xbox 360 {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 + {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Debug|PS3.ActiveCfg = Debug|PS3 {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Debug|PS3.Build.0 = Debug|PS3 {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Debug|Win32.ActiveCfg = Debug|Win32 @@ -315,6 +415,10 @@ Global {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Debug|Xbox 360.Build.0 = Debug|Xbox 360 {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 + {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Release|PS3.ActiveCfg = Release|PS3 {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Release|PS3.Build.0 = Release|PS3 {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Release|Win32.ActiveCfg = Release|Win32 @@ -324,18 +428,30 @@ Global {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Release|Xbox 360.Build.0 = Release|Xbox 360 {EE203B88-44CF-4859-9D42-7A5F40FECB52}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 + {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Debug|PS3.ActiveCfg = Debug|PS3 {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Debug|Win32.ActiveCfg = Debug|Win32 {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Debug|Win32.Build.0 = Debug|Win32 {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Debug|x64.ActiveCfg = Debug|x64 {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Debug|x64.Build.0 = Debug|x64 {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 + {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Release|PS3.ActiveCfg = Release|PS3 {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Release|Win32.ActiveCfg = Release|Win32 {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Release|Win32.Build.0 = Release|Win32 {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Release|x64.ActiveCfg = Release|x64 {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Release|x64.Build.0 = Release|x64 {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 + {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Debug|PS3.ActiveCfg = Debug|PS3 {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Debug|PS3.Build.0 = Debug|PS3 {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Debug|Win32.ActiveCfg = Debug|Win32 @@ -345,6 +461,10 @@ Global {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Debug|Xbox 360.Build.0 = Debug|Xbox 360 {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 + {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Release|PS3.ActiveCfg = Release|PS3 {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Release|PS3.Build.0 = Release|PS3 {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Release|Win32.ActiveCfg = Release|Win32 @@ -354,6 +474,10 @@ Global {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Release|Xbox 360.Build.0 = Release|Xbox 360 {EE203B88-44CF-4859-9D42-7A5F43FECB52}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 + {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Debug|PS3.ActiveCfg = Debug|PS3 {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Debug|PS3.Build.0 = Debug|PS3 {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Debug|Win32.ActiveCfg = Debug|Win32 @@ -363,6 +487,10 @@ Global {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Debug|Xbox 360.Build.0 = Debug|Xbox 360 {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 + {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Release|PS3.ActiveCfg = Release|PS3 {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Release|PS3.Build.0 = Release|PS3 {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Release|Win32.ActiveCfg = Release|Win32 @@ -372,6 +500,10 @@ Global {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Release|Xbox 360.Build.0 = Release|Xbox 360 {EE203B88-44CF-4859-9D42-7A1F43FECB52}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 + {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Debug|PS3.ActiveCfg = Debug|PS3 {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Debug|PS3.Build.0 = Debug|PS3 {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Debug|Win32.ActiveCfg = Debug|Win32 @@ -381,6 +513,10 @@ Global {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Debug|Xbox 360.Build.0 = Debug|Xbox 360 {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 + {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Release|PS3.ActiveCfg = Release|PS3 {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Release|PS3.Build.0 = Release|PS3 {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Release|Win32.ActiveCfg = Release|Win32 @@ -390,6 +526,10 @@ Global {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Release|Xbox 360.Build.0 = Release|Xbox 360 {BCEE0132-8E24-49BE-AFEB-96DAD14396BA}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 + {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Debug|PS3.ActiveCfg = Debug|PS3 {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Debug|PS3.Build.0 = Debug|PS3 {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Debug|Win32.ActiveCfg = Debug|Win32 @@ -399,6 +539,10 @@ Global {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Debug|Xbox 360.Build.0 = Debug|Xbox 360 {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 + {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Release|PS3.ActiveCfg = Release|PS3 {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Release|PS3.Build.0 = Release|PS3 {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Release|Win32.ActiveCfg = Release|Win32 @@ -408,6 +552,10 @@ Global {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Release|Xbox 360.Build.0 = Release|Xbox 360 {A69411B3-6DE8-404E-8E70-0D3375A7492A}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 + {C2E01551-B636-4324-8461-71811DF6FBB5}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {C2E01551-B636-4324-8461-71811DF6FBB5}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {C2E01551-B636-4324-8461-71811DF6FBB5}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {C2E01551-B636-4324-8461-71811DF6FBB5}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {C2E01551-B636-4324-8461-71811DF6FBB5}.Debug|PS3.ActiveCfg = Debug|PS3 {C2E01551-B636-4324-8461-71811DF6FBB5}.Debug|PS3.Build.0 = Debug|PS3 {C2E01551-B636-4324-8461-71811DF6FBB5}.Debug|Win32.ActiveCfg = Debug|Win32 @@ -417,6 +565,10 @@ Global {C2E01551-B636-4324-8461-71811DF6FBB5}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 {C2E01551-B636-4324-8461-71811DF6FBB5}.Debug|Xbox 360.Build.0 = Debug|Xbox 360 {C2E01551-B636-4324-8461-71811DF6FBB5}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 + {C2E01551-B636-4324-8461-71811DF6FBB5}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {C2E01551-B636-4324-8461-71811DF6FBB5}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {C2E01551-B636-4324-8461-71811DF6FBB5}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {C2E01551-B636-4324-8461-71811DF6FBB5}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {C2E01551-B636-4324-8461-71811DF6FBB5}.Release|PS3.ActiveCfg = Release|PS3 {C2E01551-B636-4324-8461-71811DF6FBB5}.Release|PS3.Build.0 = Release|PS3 {C2E01551-B636-4324-8461-71811DF6FBB5}.Release|Win32.ActiveCfg = Release|Win32 @@ -426,6 +578,10 @@ Global {C2E01551-B636-4324-8461-71811DF6FBB5}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 {C2E01551-B636-4324-8461-71811DF6FBB5}.Release|Xbox 360.Build.0 = Release|Xbox 360 {C2E01551-B636-4324-8461-71811DF6FBB5}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 + {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Debug|PS3.ActiveCfg = Debug|PS3 {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Debug|PS3.Build.0 = Debug|PS3 {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Debug|Win32.ActiveCfg = Debug|Win32 @@ -435,6 +591,10 @@ Global {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360 {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Debug|Xbox 360.Build.0 = Debug|Xbox 360 {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Debug|Xbox 360.Deploy.0 = Debug|Xbox 360 + {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Release|PS3.ActiveCfg = Release|PS3 {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Release|PS3.Build.0 = Release|PS3 {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Release|Win32.ActiveCfg = Release|Win32 @@ -444,18 +604,42 @@ Global {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Release|Xbox 360.ActiveCfg = Release|Xbox 360 {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Release|Xbox 360.Build.0 = Release|Xbox 360 {B0A53D75-CBB4-4FDF-93AC-2D12A79ADA0E}.Release|Xbox 360.Deploy.0 = Release|Xbox 360 + {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Debug|Any CPU.ActiveCfg = Debug|Xbox 360 + {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Debug|Mixed Platforms.ActiveCfg = Debug|Xbox 360 + {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Debug|Mixed Platforms.Build.0 = Debug|Xbox 360 + {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Debug|Mixed Platforms.Deploy.0 = Debug|Xbox 360 {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Debug|PS3.ActiveCfg = Debug|x64 {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Debug|Win32.ActiveCfg = Debug|Win32 {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Debug|Win32.Build.0 = Debug|Win32 {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Debug|x64.ActiveCfg = Debug|x64 {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Debug|x64.Build.0 = Debug|x64 {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Debug|Xbox 360.ActiveCfg = Debug|x64 + {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Release|Any CPU.ActiveCfg = Release|Xbox 360 + {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Release|Mixed Platforms.ActiveCfg = Release|Xbox 360 + {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Release|Mixed Platforms.Build.0 = Release|Xbox 360 + {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Release|Mixed Platforms.Deploy.0 = Release|Xbox 360 {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Release|PS3.ActiveCfg = Release|x64 {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Release|Win32.ActiveCfg = Release|Win32 {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Release|Win32.Build.0 = Release|Win32 {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Release|x64.ActiveCfg = Release|x64 {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Release|x64.Build.0 = Release|x64 {5A77DCDD-2CBA-43E9-8B45-00C281443F77}.Release|Xbox 360.ActiveCfg = Release|x64 + {58922993-9830-4A40-B462-0326342F69ED}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {58922993-9830-4A40-B462-0326342F69ED}.Debug|Any CPU.Build.0 = Debug|Any CPU + {58922993-9830-4A40-B462-0326342F69ED}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU + {58922993-9830-4A40-B462-0326342F69ED}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU + {58922993-9830-4A40-B462-0326342F69ED}.Debug|PS3.ActiveCfg = Debug|Any CPU + {58922993-9830-4A40-B462-0326342F69ED}.Debug|Win32.ActiveCfg = Debug|Any CPU + {58922993-9830-4A40-B462-0326342F69ED}.Debug|x64.ActiveCfg = Debug|Any CPU + {58922993-9830-4A40-B462-0326342F69ED}.Debug|Xbox 360.ActiveCfg = Debug|Any CPU + {58922993-9830-4A40-B462-0326342F69ED}.Release|Any CPU.ActiveCfg = Release|Any CPU + {58922993-9830-4A40-B462-0326342F69ED}.Release|Any CPU.Build.0 = Release|Any CPU + {58922993-9830-4A40-B462-0326342F69ED}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU + {58922993-9830-4A40-B462-0326342F69ED}.Release|Mixed Platforms.Build.0 = Release|Any CPU + {58922993-9830-4A40-B462-0326342F69ED}.Release|PS3.ActiveCfg = Release|Any CPU + {58922993-9830-4A40-B462-0326342F69ED}.Release|Win32.ActiveCfg = Release|Any CPU + {58922993-9830-4A40-B462-0326342F69ED}.Release|x64.ActiveCfg = Release|Any CPU + {58922993-9830-4A40-B462-0326342F69ED}.Release|Xbox 360.ActiveCfg = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -485,10 +669,12 @@ Global {32F3F8CF-D22E-45E4-BEB8-AD909E8C5515} = {33704AA4-F2B5-4138-A40D-E3E77F89ED46} {EE203B88-44CF-4859-9D42-7A5F40FECB52} = {8C77EAA8-1077-4EF7-AE53-97C6C60A3601} {B357514A-7881-422D-8358-161B689E7620} = {3D341D8A-E400-4B1D-BC05-B5C35487D9B5} + {9CC50C06-DF5E-41A7-AD90-04F05386E081} = {3D341D8A-E400-4B1D-BC05-B5C35487D9B5} {587FCCE9-1D8D-4398-B8B6-E8F4E9A92233} = {B357514A-7881-422D-8358-161B689E7620} {EE203B88-44CF-4859-9D42-7A5F43FECB52} = {9EA99B18-D352-47F6-BC04-A0B49CAA2772} {A69411B3-6DE8-404E-8E70-0D3375A7492A} = {0A1651FC-322B-4B04-82CB-28E9046D9383} {5A77DCDD-2CBA-43E9-8B45-00C281443F77} = {0A1651FC-322B-4B04-82CB-28E9046D9383} {C2E01551-B636-4324-8461-71811DF6FBB5} = {E27FDF36-50C4-4ED2-8CF5-A20FED016910} + {58922993-9830-4A40-B462-0326342F69ED} = {9CC50C06-DF5E-41A7-AD90-04F05386E081} EndGlobalSection EndGlobal diff --git a/tools/vslol/AssemblyInfo.cs b/tools/vslol/AssemblyInfo.cs new file mode 100644 index 00000000..9a59b8c8 --- /dev/null +++ b/tools/vslol/AssemblyInfo.cs @@ -0,0 +1,24 @@ + +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +[assembly: AssemblyTitle("VsLol")] +[assembly: AssemblyDescription("VsSDK reference sample for Menus and Commands")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("Lol")] +[assembly: AssemblyProduct("VsLol")] +[assembly: AssemblyCopyright("Copyright © Sam Hocevar 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("58968f91-edb8-4a4c-9f4f-ba39fdb4a21a")] + +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/tools/vslol/GlobalSuppressions.cs b/tools/vslol/GlobalSuppressions.cs new file mode 100644 index 00000000..6ebe4dd5 --- /dev/null +++ b/tools/vslol/GlobalSuppressions.cs @@ -0,0 +1 @@ +[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA2210:AssembliesShouldHaveValidStrongNames")] diff --git a/tools/vslol/MenuGenerateCompilers.cs b/tools/vslol/MenuGenerateCompilers.cs new file mode 100644 index 00000000..f960e90d --- /dev/null +++ b/tools/vslol/MenuGenerateCompilers.cs @@ -0,0 +1,245 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.ComponentModel.Design; +using System.Diagnostics; +using System.Globalization; +using System.IO; +using System.Runtime.InteropServices; +using System.Text; + +using EnvDTE; + +using Microsoft.VisualStudio.Shell; +using Microsoft.VisualStudio.Shell.Interop; + +using VSConstants = Microsoft.VisualStudio.VSConstants; + +namespace Lol.VisualStudio.Plugin +{ + internal class MenuGenerateCompilers : OleMenuCommand + { + public MenuGenerateCompilers(ServiceProvider sp, CommandID id) : + base(new EventHandler(ClickCallback), id, VsLol.ResourceManager.GetString("GenerateCompilersText")) + { + this.sp = sp; + this.projects = new List(); + this.BeforeQueryStatus += new EventHandler(OnBeforeQueryStatus); + } + + private void OnBeforeQueryStatus(object sender, EventArgs e) + { + projects.Clear(); + + var cmd = sender as OleMenuCommand; + if (cmd == null) + return; + + IVsMonitorSelection monitorSelection = sp.GetService(typeof(IVsMonitorSelection)) as IVsMonitorSelection; + if (monitorSelection == null) + return; + + IntPtr hier = IntPtr.Zero; + UInt32 itemid; + IVsMultiItemSelect multiitem = null; + IntPtr container = IntPtr.Zero; + + try + { + monitorSelection.GetCurrentSelection(out hier, out itemid, out multiitem, out container); + + /* Bail out if nothing is selected */ + if (itemid != VSConstants.VSITEMID_SELECTION && itemid != VSConstants.VSITEMID_NIL) + { + if (hier == IntPtr.Zero) + { + /* FIXME: parse the whole solution */ + } + else + { + object project = null; + + IVsHierarchy hierarchy = (IVsHierarchy)Marshal.GetObjectForIUnknown(hier); + hierarchy.GetProperty(VSConstants.VSITEMID_ROOT, (int)__VSHPROPID.VSHPROPID_ExtObject, out project); + projects.Add(project as Project); + } + } + } + finally + { + if (hier != IntPtr.Zero) + Marshal.Release(hier); + + if (container != IntPtr.Zero) + Marshal.Release(container); + } + + // If there are .l or .y files in this project, display the context menu + Visible = false; + foreach (Project project in projects) + foreach (ProjectItem item in ParseProjectItems(project)) + { + if (item.Name.EndsWith("-scanner.l") + || item.Name.EndsWith("-parser.y")) + Visible = true; + } + } + + private static void ClickCallback(object sender, EventArgs args) + { + MenuGenerateCompilers cmd = sender as MenuGenerateCompilers; + if (cmd == null) + return; + + cmd.ClearOutputPane(); + cmd.WriteToOutputPane("------ Build started: Generating Compilers ------\n"); + + int scanner_count = 0, parser_count = 0; + + foreach (Project project in cmd.projects) + { + cmd.WriteToOutputPane("Project " + project.FullName + "\n"); + + string project_path = Path.GetDirectoryName(project.FullName); + + /* FIXME: find this using the solution globals! */ + string contrib_path = project_path; + for (int i = 0; i < 10; ++i) + { + contrib_path += "\\.."; + if (Directory.Exists(contrib_path + "\\contrib")) + break; + } + + /* FIXME: do not hardcode shit! */ + string flex_path = contrib_path + "\\contrib\\flex-2.5.35"; + string bison_path = contrib_path + "\\contrib\\bison-2.4.2"; + + // Run flex on all the .l files + foreach (ProjectItem item in ParseProjectItems(project)) + { + string filename = item.get_FileNames(0); + + if (filename.StartsWith(project_path + "\\")) + { + filename = filename.Substring(project_path.Length + 1); + filename = filename.Replace("\\", "/"); + } + + if (item.Name.EndsWith("-scanner.l")) + { + cmd.WriteToOutputPane(" flex.exe " + filename + "\n"); + + string basename = Path.GetFileName(filename.Substring(0, filename.LastIndexOf("-scanner.l"))); + cmd.Run(project_path, + flex_path + "\\bin\\flex.exe", + "-v -o " + + "generated/" + basename + "-scanner.cpp " + + filename, + ""); + + ++scanner_count; + } + + if (item.Name.EndsWith("-parser.y")) + { + cmd.WriteToOutputPane(" bison.exe " + filename + "\n"); + + string basename = Path.GetFileName(filename.Substring(0, filename.LastIndexOf("-parser.y"))); + cmd.Run(project_path, + bison_path + "\\bin\\bison.exe", + "-v -o " + + "generated/" + basename + "-parser.cpp " + + "--defines=generated/" + basename + "-parser.h " + + "-d " + + "-b " + + "generated/" + basename + " " + + filename, + "BISON_PKGDATADIR=" + bison_path + "\\share\\bison"); + + ++parser_count; + } + } + } + + cmd.WriteToOutputPane(string.Format("========== Done. {0} scanner(s), {1} parser(s) ==========\n", + scanner_count, parser_count)); + } + + void Run(string directory, string executable, string arguments, string env) + { + System.Diagnostics.Process p = new System.Diagnostics.Process(); + p.StartInfo.FileName = executable; + p.StartInfo.Arguments = arguments; + foreach (string s in env.Split(new char[]{'\n'}, StringSplitOptions.RemoveEmptyEntries)) + { + int i = s.IndexOf("="); + if (i > 0 && i < s.Length - 1) + p.StartInfo.EnvironmentVariables[s.Substring(0, i - 1)] = s.Substring(i + 1); + } + p.StartInfo.WorkingDirectory = directory; + p.StartInfo.CreateNoWindow = true; + p.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; + p.StartInfo.RedirectStandardError = true; + p.StartInfo.RedirectStandardOutput = true; + p.StartInfo.RedirectStandardInput = true; + p.StartInfo.UseShellExecute = false; + Trace.WriteLine("Executing " + executable + " in " + directory + " with args: " + arguments); + p.Start(); + string output = p.StandardError.ReadToEnd() + + p.StandardOutput.ReadToEnd(); + p.WaitForExit(); + WriteToOutputPane(output); + } + + private void ClearOutputPane() + { + IVsOutputWindow win = sp.GetService(typeof(SVsOutputWindow)) as IVsOutputWindow; + if (null == win) + { + Trace.WriteLine("Failed to get a reference to IVsOutputWindow"); + pane = null; + } + + Guid guid = Microsoft.VisualStudio.VSConstants.OutputWindowPaneGuid.BuildOutputPane_guid; + if (Microsoft.VisualStudio.ErrorHandler.Failed(win.GetPane(ref guid, out pane))) + { + Trace.WriteLine("Failed to get a reference to the Output window Build pane"); + pane = null; + } + + pane.Activate(); + pane.Clear(); + } + + private void WriteToOutputPane(string s) + { + if (pane != null) + pane.OutputString(s); + } + + private static IEnumerable ParseProjectItems(object o) + { + ProjectItems subitems; + if (o is Project) + { + subitems = (o as Project).ProjectItems; + } + else + { + yield return (o as ProjectItem); + subitems = (o as ProjectItem).ProjectItems; + } + + foreach (ProjectItem item in subitems) + foreach (ProjectItem i in ParseProjectItems(item)) + yield return i; + } + + private ServiceProvider sp; + private IVsOutputWindowPane pane; + + private List projects; + } +} + diff --git a/tools/vslol/VsLol.Designer.cs b/tools/vslol/VsLol.Designer.cs new file mode 100644 index 00000000..335b4802 --- /dev/null +++ b/tools/vslol/VsLol.Designer.cs @@ -0,0 +1,72 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.17626 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace Lol.VisualStudio.Plugin { + using System; + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class VsLol { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal VsLol() { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Lol.VisualStudio.Plugin.VsLol", typeof(VsLol).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// Looks up a localized string similar to Lol: Generate Compilers. + /// + internal static string GenerateCompilersText { + get { + return ResourceManager.GetString("GenerateCompilersText", resourceCulture); + } + } + } +} diff --git a/tools/vslol/VsLol.cs b/tools/vslol/VsLol.cs new file mode 100644 index 00000000..2ac907c2 --- /dev/null +++ b/tools/vslol/VsLol.cs @@ -0,0 +1,73 @@ +using System; +using System.ComponentModel.Design; +using System.Diagnostics; +using System.Globalization; +using System.Runtime.InteropServices; +using System.Security.Permissions; +using System.Text; +using IOleServiceProvider = Microsoft.VisualStudio.OLE.Interop.IServiceProvider; +using Microsoft.VisualStudio.Shell; +using Microsoft.VisualStudio.Shell.Interop; + +namespace Lol.VisualStudio.Plugin +{ + [PackageRegistration(UseManagedResourcesOnly = true)] + + [ProvideMenuResource(1000, 1)] + [Guid("f96f7ac5-16ac-4061-8b92-0a02bb455ae9")] + [InstalledProductRegistration("#110", "#112", "1.0", IconResourceID = 400)] + [ComVisible(true)] + [ProvideAutoLoad("f1536ef8-92ec-443c-9ed7-fdadf150da82")] // This is needed for the package to be autoloaded + public sealed class PluginPackage : Package + { + public PluginPackage() + { + Trace.WriteLine(String.Format(CultureInfo.CurrentUICulture, "Entering constructor for: {0}", this.ToString())); + } + + [SecurityPermission(SecurityAction.Demand, Flags=SecurityPermissionFlag.UnmanagedCode)] + protected override void Initialize() + { + // Trace the beginning of this method and call the base implementation. + Trace.WriteLine(String.Format(CultureInfo.CurrentUICulture, "Entering Initialize() of: {0}", this.ToString())); + base.Initialize(); + + // Ensure the "Build" output pane exists + IVsOutputWindow outputWindow = GetService(typeof(SVsOutputWindow)) as IVsOutputWindow; + if (null != outputWindow) + { + Guid guidBuild = Microsoft.VisualStudio.VSConstants.OutputWindowPaneGuid.BuildOutputPane_guid; + outputWindow.CreatePane(guidBuild, "Build", 1, 0); + } + + // Register the "Generate Compilers" context menu + OleMenuCommandService mcs = GetService(typeof(IMenuCommandService)) as OleMenuCommandService; + if (null != mcs) + { + CommandID id = new CommandID(GuidsList.guidVsLolCmdSet, VsLolIDList.cmdidGenerateCompilers); + OleMenuCommand command = new MenuGenerateCompilers(new ServiceProvider((IOleServiceProvider)this.GetService(typeof(IOleServiceProvider))), id); + mcs.AddCommand(command); + } + } + } + + internal static class GuidsList + { + // Now define the list of guids as public static members. + [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + public static readonly Guid guidVsLolPkg = new Guid("{f96f7ac5-16ac-4061-8b92-0a02bb455ae9}"); + + public static readonly Guid guidVsLolCmdSet = new Guid("{ce508d12-530e-45d0-8b52-1e9ee3f8eaaf}"); + + [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + public static readonly Guid guidGearBmp = new Guid("{560dba06-c26b-4731-8229-b816818e5992}"); + } + + internal static class VsLolIDList + { + public const int cmdidGenerateCompilers = 0x2001; + public const int cmdidUnused1 = 0x2002; + public const int cmdidUnused2 = 0x2003; + } +} + diff --git a/tools/vslol/VsLol.csproj b/tools/vslol/VsLol.csproj new file mode 100644 index 00000000..2600a02a --- /dev/null +++ b/tools/vslol/VsLol.csproj @@ -0,0 +1,153 @@ + + + + Debug + AnyCPU + 2.0 + {58922993-9830-4A40-B462-0326342F69ED} + {82b43b9b-a64c-4715-b499-d71e9ca2bd60};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + Library + Properties + Lol.VisualStudio.Plugin + Lol.VisualStudio.VsLol + v4.0 + publish\ + true + Disk + false + Foreground + 7 + Days + false + false + true + 0 + 1.0.0.%2a + false + false + true + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + true + AllRules.ruleset + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + true + AllRules.ruleset + + + + True + ..\..\..\..\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\PublicAssemblies\envdte.dll + + + + + + + + + + false + + + + + + + + + + + + + + + True + True + VsLol.resx + + + + + + + 1000 + Designer + + + + + ResXFileCodeGenerator + VsLol.Designer.cs + Designer + true + + + + + Designer + + + + + False + Microsoft .NET Framework 4 %28x86 and x64%29 + true + + + False + .NET Framework 3.5 SP1 Client Profile + false + + + False + .NET Framework 3.5 SP1 + false + + + False + Microsoft Visual Basic PowerPacks 10.0 + true + + + False + Windows Installer 3.1 + true + + + + + + + + true + true + + + + + \ No newline at end of file diff --git a/tools/vslol/VsLol.csproj.user b/tools/vslol/VsLol.csproj.user new file mode 100644 index 00000000..19cc2179 --- /dev/null +++ b/tools/vslol/VsLol.csproj.user @@ -0,0 +1,13 @@ + + + + Program + C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe + /rootsuffix Exp + + + Program + C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe + /rootsuffix Exp + + \ No newline at end of file diff --git a/tools/vslol/VsLol.resx b/tools/vslol/VsLol.resx new file mode 100644 index 00000000..d213c954 --- /dev/null +++ b/tools/vslol/VsLol.resx @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Lol: Generate Compilers + + \ No newline at end of file diff --git a/tools/vslol/VsLol.vsct b/tools/vslol/VsLol.vsct new file mode 100644 index 00000000..10ac5277 --- /dev/null +++ b/tools/vslol/VsLol.vsct @@ -0,0 +1,92 @@ + + + + + + + + + + + + C# Sample Toolbar + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tools/vslol/gear.bmp b/tools/vslol/gear.bmp new file mode 100644 index 0000000000000000000000000000000000000000..db290ae2262c6a7283323180c025462bf54a5765 GIT binary patch literal 1078 zcmYjQNk}6>6m7wa4g;eD3Uiv{fR}-Q2p%RVA_x%t1j=0t$v;$ia&T32480)lP#2)m{9m_v-!ke?|Qc_m`9r&hHP-FaM{X z^qngX?tlICKHme9l#!94E~V1a(xAAwIE5uOH8s4Tpa6Qk9=W->;2}S8Fg-mzfSAu> zJvKHb4Gj&6rBqf{rfqI+cGlL`nzdSOD6tmCkd%~!qM{;XW@hR+!#G#SZ70t+1;~%d zWcp>bT0O+0rKRPyv$NAxS6BB^Qc|MaE$%1BQ(I`>yu2L6#l^_W%R^RHmcSt;B?ZK+a2=p(;9aJPi3#-d^q{M& z3vF#}XliOwcq%I^VKf>c^yKH~gFbnAcbJOhKal&@+1Xjp5A^l*f%(8EV!ySrFjU4`J8pP$FV!UAGqVxB+f^JlHl-Q5jx36G)jF#dRYdW!S& zb8K&K%j@gwik8^eSf5U(`zbh>t8rvxM9Ix&vnhEAE>SP~7;G>YqL{B;aMn-d;kaB$G2(P%(a}n;cXV_Z9v&WiZns-@xm>uty@k{16g;xS;lSD1nS6M7DDn~> zL3l(BPWE?@s)2ski1+cXzw}KjmORYE!=BU%Y+_=fN+Gc} zhRDds5D`dDPL8_2zlYcB6<&z<7bxPag@*4%E7t1x$f3q^a&m&Frlua*6Yl>0euo-Y K|Lim6?f(NrWcb|x literal 0 HcmV?d00001 diff --git a/tools/vslol/source.extension.vsixmanifest b/tools/vslol/source.extension.vsixmanifest new file mode 100644 index 00000000..b45fd1c5 --- /dev/null +++ b/tools/vslol/source.extension.vsixmanifest @@ -0,0 +1,24 @@ + + + + VsLol + Lol + 0.0 + Lol Engine productivity tools. + 1033 + false + + + Ultimate + Premium + Pro + Express_All + + + + + + + |%CurrentProject%;PkgdefProjectOutputGroup| + +