Skip to content

Commit 62ac154

Browse files
committed
Added project GtmExtension.
1 parent 018b235 commit 62ac154

7 files changed

Lines changed: 331 additions & 0 deletions

File tree

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,4 @@
11
# Visual Studio files
22
/.vs/
3+
bin/
4+
obj/

gtm-visualstudio-plugin.sln

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,30 @@ MinimumVisualStudioVersion = 10.0.40219.1
66
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "config", "config", "{4A24B859-53A8-48A9-B876-27F5225BDAC2}"
77
ProjectSection(SolutionItems) = preProject
88
.editorconfig = .editorconfig
9+
.gitignore = .gitignore
910
EndProjectSection
1011
EndProject
12+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{F9A08D81-BFF2-43B4-BDD3-7B6612DB1C12}"
13+
EndProject
14+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GtmExtension", "src\GtmExtension\GtmExtension.csproj", "{E3E33776-3C5E-40E7-8983-6859B226AC71}"
15+
EndProject
1116
Global
17+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
18+
Debug|Any CPU = Debug|Any CPU
19+
Release|Any CPU = Release|Any CPU
20+
EndGlobalSection
21+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
22+
{E3E33776-3C5E-40E7-8983-6859B226AC71}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
23+
{E3E33776-3C5E-40E7-8983-6859B226AC71}.Debug|Any CPU.Build.0 = Debug|Any CPU
24+
{E3E33776-3C5E-40E7-8983-6859B226AC71}.Release|Any CPU.ActiveCfg = Release|Any CPU
25+
{E3E33776-3C5E-40E7-8983-6859B226AC71}.Release|Any CPU.Build.0 = Release|Any CPU
26+
EndGlobalSection
1227
GlobalSection(SolutionProperties) = preSolution
1328
HideSolutionNode = FALSE
1429
EndGlobalSection
30+
GlobalSection(NestedProjects) = preSolution
31+
{E3E33776-3C5E-40E7-8983-6859B226AC71} = {F9A08D81-BFF2-43B4-BDD3-7B6612DB1C12}
32+
EndGlobalSection
1533
GlobalSection(ExtensibilityGlobals) = postSolution
1634
SolutionGuid = {9380771B-3B57-4CED-904B-B3131F32C5AE}
1735
EndGlobalSection
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<PropertyGroup>
4+
<MinimumVisualStudioVersion>15.0</MinimumVisualStudioVersion>
5+
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
6+
</PropertyGroup>
7+
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
8+
<PropertyGroup>
9+
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
10+
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
11+
<SchemaVersion>2.0</SchemaVersion>
12+
<ProjectTypeGuids>{82b43b9b-a64c-4715-b499-d71e9ca2bd60};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
13+
<ProjectGuid>{E3E33776-3C5E-40E7-8983-6859B226AC71}</ProjectGuid>
14+
<OutputType>Library</OutputType>
15+
<AppDesignerFolder>Properties</AppDesignerFolder>
16+
<RootNamespace>GtmExtension</RootNamespace>
17+
<AssemblyName>GtmExtension</AssemblyName>
18+
<TargetFrameworkVersion>v4.7.1</TargetFrameworkVersion>
19+
<GeneratePkgDefFile>false</GeneratePkgDefFile>
20+
<IncludeAssemblyInVSIXContainer>false</IncludeAssemblyInVSIXContainer>
21+
<IncludeDebugSymbolsInVSIXContainer>false</IncludeDebugSymbolsInVSIXContainer>
22+
<IncludeDebugSymbolsInLocalVSIXDeployment>false</IncludeDebugSymbolsInLocalVSIXDeployment>
23+
<CopyBuildOutputToOutputDirectory>false</CopyBuildOutputToOutputDirectory>
24+
<CopyOutputSymbolsToOutputDirectory>false</CopyOutputSymbolsToOutputDirectory>
25+
<StartAction>Program</StartAction>
26+
<StartProgram Condition="'$(DevEnvDir)' != ''">$(DevEnvDir)devenv.exe</StartProgram>
27+
<StartArguments>/rootsuffix Exp</StartArguments>
28+
</PropertyGroup>
29+
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
30+
<DebugSymbols>true</DebugSymbols>
31+
<DebugType>full</DebugType>
32+
<Optimize>false</Optimize>
33+
<OutputPath>bin\Debug\</OutputPath>
34+
<DefineConstants>DEBUG;TRACE</DefineConstants>
35+
<ErrorReport>prompt</ErrorReport>
36+
<WarningLevel>4</WarningLevel>
37+
</PropertyGroup>
38+
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
39+
<DebugType>pdbonly</DebugType>
40+
<Optimize>true</Optimize>
41+
<OutputPath>bin\Release\</OutputPath>
42+
<DefineConstants>TRACE</DefineConstants>
43+
<ErrorReport>prompt</ErrorReport>
44+
<WarningLevel>4</WarningLevel>
45+
</PropertyGroup>
46+
<ItemGroup>
47+
<Compile Include="Properties\AssemblyInfo.cs" />
48+
</ItemGroup>
49+
<ItemGroup>
50+
<None Include="source.extension.vsixmanifest">
51+
<SubType>Designer</SubType>
52+
</None>
53+
</ItemGroup>
54+
<ItemGroup>
55+
<Content Include="index.html" />
56+
<Content Include="stylesheet.css" />
57+
</ItemGroup>
58+
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
59+
<Import Project="$(VSToolsPath)\VSSDK\Microsoft.VsSDK.targets" Condition="'$(VSToolsPath)' != ''" />
60+
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
61+
Other similar extension points exist, see Microsoft.Common.targets.
62+
<Target Name="BeforeBuild">
63+
</Target>
64+
<Target Name="AfterBuild">
65+
</Target>
66+
-->
67+
</Project>
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
using System.Reflection;
2+
using System.Runtime.CompilerServices;
3+
using System.Runtime.InteropServices;
4+
5+
// General Information about an assembly is controlled through the following
6+
// set of attributes. Change these attribute values to modify the information
7+
// associated with an assembly.
8+
[assembly: AssemblyTitle("GtmExtension")]
9+
[assembly: AssemblyDescription("")]
10+
[assembly: AssemblyConfiguration("")]
11+
[assembly: AssemblyCompany("")]
12+
[assembly: AssemblyProduct("GtmExtension")]
13+
[assembly: AssemblyCopyright("")]
14+
[assembly: AssemblyTrademark("")]
15+
[assembly: AssemblyCulture("")]
16+
17+
// Setting ComVisible to false makes the types in this assembly not visible
18+
// to COM components. If you need to access a type in this assembly from
19+
// COM, set the ComVisible attribute to true on that type.
20+
[assembly: ComVisible(false)]
21+
22+
// Version information for an assembly consists of the following four values:
23+
//
24+
// Major Version
25+
// Minor Version
26+
// Build Number
27+
// Revision
28+
//
29+
// You can specify all the values or you can default the Build and Revision Numbers
30+
// by using the '*' as shown below:
31+
// [assembly: AssemblyVersion("1.0.*")]
32+
[assembly: AssemblyVersion("1.0.0.0")]
33+
[assembly: AssemblyFileVersion("1.0.0.0")]

src/GtmExtension/index.html

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<meta charset='utf-8'>
5+
6+
<link rel="stylesheet" type="text/css" href="stylesheet.css" media="screen">
7+
8+
<title>Getting Started</title>
9+
</head>
10+
11+
<body>
12+
<div class="container">
13+
<div id="header">
14+
<h1>Getting Started</h1>
15+
<h2>Visual Studio Extensions</h2>
16+
</div>
17+
18+
<div id="main_content">
19+
<div id="lpanel">
20+
<h1>Creating a Visual Studio Extension</h1>
21+
22+
<p>This project enables developers to create an extension for Visual Studio. The solution contains a VSIX project that packages the extension into a VSIX file. This file is used to install an extension for Visual Studio.</p>
23+
<h2>Add new features</h2>
24+
25+
<ol>
26+
<li>Right-click the project node in Solution Explorer and select Add&gt;New Item.</li>
27+
<li>In the Add New Item dialog box, expand the Extensibility node under Visual C# or Visual Basic.</li>
28+
<li>Choose from the available item templates: Visual Studio Package, Editor Items (Classifier, Margin, Text Adornment, Viewport Adornment), Command, Tool Window, Toolbox Control, and then click Add.</li>
29+
</ol>
30+
31+
<p>The files for the template that you selected are added to the project. You can start adding functionality to your item template, press F5 to run the project, or add additional item templates.</p>
32+
33+
<h2>Run and debug</h2>
34+
<p>To run the project, press F5. Visual Studio will:</p>
35+
36+
<ul>
37+
<li>Build the extension from the VSIX project.</li>
38+
<li>Create a VSIX package from the VSIX project.</li>
39+
<li>When debugging, start an experimental instance of Visual Studio with the VSIX package installed.</li>
40+
</ul>
41+
42+
<p>In the experimental instance of Visual Studio you can test out the functionality of your extension without affecting your Visual Studio installation.</p>
43+
44+
</div>
45+
<div id="rpanel">
46+
<div>
47+
<h1>Visual Studio Extensibility Resources</h1>
48+
49+
<ol>
50+
<li><a target="_blank" href="https://aka.ms/o5gv1m">Visual Studio documentation</a><br />Detailed documentation and API reference material for building extensions.</li>
51+
<li><a target="_blank" href="https://aka.ms/pauhge">Extension samples on GitHub</a><br />Use a sample project to kickstart your development.</li>
52+
<li><a target="_blank" href="https://aka.ms/l24u91">Extensibility chat room on Gitter</a><br />Meet other extension developers and exchange tips and tricks for extension development.</li>
53+
<li><a target="_blank" href="https://aka.ms/spn6s4">Channel 9 videos on extensibility</a><br />Watch videos from the product team on Visual Studio extensibility.</li>
54+
<li><a target="_blank" href="https://aka.ms/ui0qn6">Extensibility Tools</a><br />Install an optional helper tool that adds extra IDE support for extension authors.</li>
55+
</ol>
56+
<h1>Give us feedback</h1>
57+
<ul>
58+
<li><a target="_blank" href="https://aka.ms/uonulm">Submit a new feature idea or suggestion</a></li>
59+
</ul>
60+
</div>
61+
</div>
62+
</div>
63+
</div>
64+
</body>
65+
</html>
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<?xml version="1.0" ?>
2+
<PackageManifest Version="2.0.0" xmlns="http://schemas.microsoft.com/developer/vsx-schema/2011" xmlns:d="http://schemas.microsoft.com/developer/vsx-schema-design/2011">
3+
<Metadata>
4+
<Identity Id="GtmExtension.78062a42-0a99-47d0-a6e2-200a84959b52" Version="1.0" Language="en-US" Publisher="Jan Joneš" />
5+
<DisplayName>GtmExtension</DisplayName>
6+
<Description>Empty VSIX Project.</Description>
7+
</Metadata>
8+
<Installation>
9+
<InstallationTarget Id="Microsoft.VisualStudio.Community" Version="[15.0, 16.0)" />
10+
</Installation>
11+
<Dependencies>
12+
<Dependency Id="Microsoft.Framework.NDP" DisplayName="Microsoft .NET Framework" d:Source="Manual" Version="[4.5,)" />
13+
</Dependencies>
14+
<Prerequisites>
15+
<Prerequisite Id="Microsoft.VisualStudio.Component.CoreEditor" Version="[15.0,16.0)" DisplayName="Visual Studio core editor" />
16+
</Prerequisites>
17+
</PackageManifest>

src/GtmExtension/stylesheet.css

Lines changed: 129 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,129 @@
1+
body {
2+
margin: 0;
3+
padding: 0;
4+
border: 0;
5+
color: #1E1E1E;
6+
font-size: 13px;
7+
font-family: "Segoe UI", Helvetica, Arial, sans-serif;
8+
line-height: 1.45;
9+
word-wrap: break-word;
10+
}
11+
12+
/* General & 'Reset' Stuff */
13+
14+
15+
.container {
16+
width: 980px;
17+
margin: 0 auto;
18+
}
19+
20+
section {
21+
display: block;
22+
margin: 0;
23+
}
24+
25+
h1, h2, h3, h4, h5, h6 {
26+
margin: 0;
27+
}
28+
29+
/* Header, <header>
30+
header - container
31+
h1 - project name
32+
h2 - project description
33+
*/
34+
35+
#header {
36+
color: #FFF;
37+
background: #68217a;
38+
position:relative;
39+
}
40+
#hangcloud {
41+
width: 190px;
42+
height: 160px;
43+
background: url("../images/bannerart03.png");
44+
position: absolute;
45+
top: 0;
46+
right: -30px;
47+
}
48+
h1, h2 {
49+
font-family: "Segoe UI Light", "Segoe UI", Helvetica, Arial, sans-serif;
50+
line-height: 1;
51+
margin: 0 18px;
52+
padding: 0;
53+
}
54+
#header h1 {
55+
font-size: 3.4em;
56+
padding-top: 18px;
57+
font-weight: normal;
58+
margin-left: 15px;
59+
}
60+
61+
#header h2 {
62+
font-size: 1.5em;
63+
margin-top: 10px;
64+
padding-bottom: 18px;
65+
font-weight: normal;
66+
}
67+
68+
69+
#main_content {
70+
width: 100%;
71+
display: flex;
72+
flex-direction: row;
73+
}
74+
75+
76+
h1, h2, h3, h4, h5, h6 {
77+
font-weight: bolder;
78+
}
79+
80+
#main_content h1 {
81+
font-size: 1.8em;
82+
margin-top: 34px;
83+
}
84+
85+
#main_content h1:first-child {
86+
margin-top: 30px;
87+
}
88+
89+
#main_content h2 {
90+
font-size: 1.4em;
91+
font-weight: bold;
92+
}
93+
p, ul {
94+
margin: 11px 18px;
95+
}
96+
97+
#main_content a {
98+
color: #06C;
99+
text-decoration: none;
100+
}
101+
ul {
102+
margin-top: 13px;
103+
margin-left: 18px;
104+
padding-left: 0;
105+
}
106+
ul li {
107+
margin-left: 18px;
108+
padding-left: 0;
109+
}
110+
#lpanel {
111+
width: 620px;
112+
float: left;
113+
}
114+
#rpanel ul {
115+
list-style-type: none;
116+
width: 300px;
117+
}
118+
#rpanel ul li {
119+
line-height: 1.8em;
120+
}
121+
#rpanel {
122+
background: #e7e7e7;
123+
width: 360px;
124+
float: right;
125+
}
126+
127+
#rpanel div {
128+
width: 300px;
129+
}

0 commit comments

Comments
 (0)