Skip to content

Commit 950bf4e

Browse files
Move Remote Debugger Launcher menu to Debug menu (#83)
* Added all deploy commands to the Debug menu -------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: MichaelKoster70 <12211710+MichaelKoster70@users.noreply.github.com>
1 parent c4c0d06 commit 950bf4e

3 files changed

Lines changed: 63 additions & 38 deletions

File tree

docs/ArtWork/Logo.svg

Lines changed: 5 additions & 13 deletions
Loading

src/Extension/RemoteDebuggerLauncher/RemoteDebuggerLauncherPackage.vsct

Lines changed: 56 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<?xml version="1.0" encoding="utf-8"?>
1+
<?xml version="1.0" encoding="utf-8"?>
22
<CommandTable xmlns="http://schemas.microsoft.com/VisualStudio/2005-10-18/CommandTable" xmlns:xs="http://www.w3.org/2001/XMLSchema">
33

44
<!-- This is the file that defines the actual layout and type of the commands.
@@ -20,6 +20,10 @@
2020
<!--This header contains the command ids for the menus provided by the shell. -->
2121
<Extern href="vsshlids.h" />
2222

23+
<!--This header contains the command ids for the VS Debug Menu. -->
24+
<Extern href="vsdebugguids.h"/>
25+
<Extern href="VsDbgCmd.h"/>
26+
2327
<!--The Commands section is where commands, menus, and menu groups are defined.
2428
This section uses a Guid to identify the package that provides the command defined inside it. -->
2529
<Commands package="guidRemoteDebuggerLauncherPackage">
@@ -36,96 +40,121 @@
3640
group as the part of a menu contained between two lines. The parent of a group
3741
must be a menu. -->
3842
<Menus>
43+
<!-- Defines the submenu holding all commands (Tools menu) -->
3944
<Menu guid="guidRemoteDebuggerLauncherPackageCmdSet" id="menuidToolsItem" priority="0x0100" type="Menu">
4045
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidToolsItem" />
4146
<CommandFlag>DynamicVisibility</CommandFlag>
4247
<Strings>
4348
<ButtonText>Remote Debugger Launcher</ButtonText>
4449
</Strings>
4550
</Menu>
51+
52+
<!-- Defines the submenu holding selected commands (Debug menu) -->
53+
<Menu guid="guidRemoteDebuggerLauncherPackageCmdSet" id="menuidDebug" priority="0x0100" type="Menu">
54+
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidDebug" />
55+
<CommandFlag>DynamicVisibility</CommandFlag>
56+
<Strings>
57+
<ButtonText>Linux Remote Targets</ButtonText>
58+
</Strings>
59+
</Menu>
4660
</Menus>
4761

4862
<Groups>
4963
<!-- Group to be shown in the VS Tools Menu, holding just one submenu -->
5064
<Group guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidToolsItem" priority="0x0600">
5165
<Parent guid="guidSHLMainMenu" id="IDM_VS_MENU_TOOLS" />
5266
</Group>
53-
<!-- Group holding all commands from the extension -->
54-
<Group guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidDeployCommands" priority="0x0100">
67+
<!-- Group holding all deploy commands (Tools menu) -->
68+
<Group guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidToolsDeployCommands" priority="0x0100">
5569
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="menuidToolsItem" />
5670
</Group>
57-
<Group guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidSetupCommands" priority="0x0101">
71+
<!-- Group holding all setup commands (Tools menu) -->
72+
<Group guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidToolsSetupCommands" priority="0x0101">
5873
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="menuidToolsItem" />
5974
</Group>
60-
</Groups>
6175

76+
<!-- Group to be shown in the VS Debug Menu, holding just one submenu -->
77+
<Group guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidDebug" priority="0x0600">
78+
<Parent guid="guidVSDebugGroup" id="IDM_DEBUG_MENU" />
79+
</Group>
80+
<!-- Group holding all deploy commands (Debug Menu) -->
81+
<Group guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidDebugDeployCommands" priority="0x0100">
82+
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="menuidDebug" />
83+
</Group>
84+
</Groups>
6285

6386
<!--Buttons section. -->
6487
<!--This section defines the elements the user can interact with, like a menu command or a button or combo box in a toolbar. -->
6588
<Buttons>
66-
<!--To define a menu group you have to specify its ID, the parent menu and its display priority.
67-
The command is visible and enabled by default. If you need to change the visibility, status, etc, you can use
68-
the CommandFlag node.
69-
You can add more than one CommandFlag node e.g.:
70-
<CommandFlag>DefaultInvisible</CommandFlag>
71-
<CommandFlag>DynamicVisibility</CommandFlag>
72-
If you do not want an image next to your command, remove the Icon node /> -->
7389
<Button guid="guidRemoteDebuggerLauncherPackageCmdSet" id="cmdidDeployOutputCommand" priority="0x0100" type="Button">
74-
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidDeployCommands" />
90+
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidToolsDeployCommands" />
7591
<Icon guid="guidImages" id="bmpDeployOutput" />
7692
<Strings>
7793
<ButtonText>Deploy remote target</ButtonText>
7894
</Strings>
7995
</Button>
8096
<Button guid="guidRemoteDebuggerLauncherPackageCmdSet" id="cmdidCleanOutputCommand" priority="0x0101" type="Button">
81-
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidDeployCommands" />
97+
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidToolsDeployCommands" />
8298
<Icon guid="guidImages" id="bmpCleanOutput" />
8399
<Strings>
84100
<ButtonText>Clean remote target path</ButtonText>
85101
</Strings>
86102
</Button>
87103
<Button guid="guidRemoteDebuggerLauncherPackageCmdSet" id="cmdidInstallDebugger" priority="0x0100" type="Button">
88-
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidSetupCommands" />
104+
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidToolsSetupCommands" />
89105
<Icon guid="guidImages" id="bmpInstallDebugger" />
90106
<Strings>
91107
<ButtonText>Install VS Code remote debugger</ButtonText>
92108
</Strings>
93109
</Button>
94110
<Button guid="guidRemoteDebuggerLauncherPackageCmdSet" id="cmdidInstallDotnet" priority="0x0101" type="Button">
95-
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidSetupCommands" />
111+
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidToolsSetupCommands" />
96112
<Icon guid="guidImages" id="bmpInstallDotnet" />
97113
<Strings>
98114
<ButtonText>Install .NET runtime</ButtonText>
99115
</Strings>
100116
</Button>
101117
<Button guid="guidRemoteDebuggerLauncherPackageCmdSet" id="cmdidSetupSshCommand" priority="0x0102" type="Button">
102-
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidSetupCommands" />
118+
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidToolsSetupCommands" />
103119
<Icon guid="guidImages" id="bmpSetupSsh" />
104120
<Strings>
105121
<ButtonText>Setup SSH</ButtonText>
106122
</Strings>
107123
</Button>
108124
<Button guid="guidRemoteDebuggerLauncherPackageCmdSet" id="cmdidSetupHttpsCommand" priority="0x0102" type="Button">
109-
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidSetupCommands" />
125+
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidToolsSetupCommands" />
110126
<Icon guid="guidImages" id="bmpSetupHttps" />
111127
<Strings>
112128
<ButtonText>Setup HTTPS</ButtonText>
113129
</Strings>
114130
</Button>
131+
132+
<!--Buttons in the Debug menu. -->
133+
<Button guid="guidRemoteDebuggerLauncherPackageCmdSet" id="cmdidDeployOutputCommand" priority="0x0100" type="Button">
134+
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidDebugDeployCommands" />
135+
<Icon guid="guidImages" id="bmpDeployOutput" />
136+
<Strings>
137+
<ButtonText>Deploy remote target</ButtonText>
138+
</Strings>
139+
</Button>
140+
<Button guid="guidRemoteDebuggerLauncherPackageCmdSet" id="cmdidCleanOutputCommand" priority="0x0101" type="Button">
141+
<Parent guid="guidRemoteDebuggerLauncherPackageCmdSet" id="groupidDebugDeployCommands" />
142+
<Icon guid="guidImages" id="bmpCleanOutput" />
143+
<Strings>
144+
<ButtonText>Clean remote target path</ButtonText>
145+
</Strings>
146+
</Button>
115147
</Buttons>
116148

117149
<!--The bitmaps section is used to define the bitmaps that are used for the commands.-->
118150
<Bitmaps>
119-
<!-- The bitmap id is defined in a way that is a little bit different from the others:
120-
the declaration starts with a guid for the bitmap strip, then there is the resource id of the
121-
bitmap strip containing the bitmaps and then there are the numeric ids of the elements used
122-
inside a button definition. An important aspect of this declaration is that the element id must be the actual index (1-based) of the bitmap inside the bitmap strip. -->
123151
<Bitmap guid="guidImages" href="Resources\Commands.png" usedList="bmpDeployOutput, bmpCleanOutput, bmpInstallDebugger, bmpInstallDotnet, bmpSetupSsh, bmpSetupHttps" />
124152
</Bitmaps>
125153
</Commands>
126154

127155
<VisibilityConstraints>
128156
<VisibilityItem guid="guidRemoteDebuggerLauncherPackageCmdSet" id="menuidToolsItem" context="UICONTEXT_SolutionExistsAndNotBuildingAndNotDebugging"></VisibilityItem>
157+
<VisibilityItem guid="guidRemoteDebuggerLauncherPackageCmdSet" id="menuidDebug" context="UICONTEXT_SolutionExistsAndNotBuildingAndNotDebugging"></VisibilityItem>
129158
</VisibilityConstraints>
130159

131160
<Symbols>
@@ -135,9 +164,12 @@
135164
<!-- This is the guid used to group the menu commands together -->
136165
<GuidSymbol name="guidRemoteDebuggerLauncherPackageCmdSet" value="{67dde3fd-abea-469b-939f-02a3178c91e7}">
137166
<IDSymbol name="menuidToolsItem" value="0x1000" />
167+
<IDSymbol name="menuidDebug" value="0x1001" />
138168
<IDSymbol name="groupidToolsItem" value="0x1010" />
139-
<IDSymbol name="groupidDeployCommands" value="0x1020" />
140-
<IDSymbol name="groupidSetupCommands" value="0x1021" />
169+
<IDSymbol name="groupidDebug" value="0x1011" />
170+
<IDSymbol name="groupidToolsDeployCommands" value="0x1020" />
171+
<IDSymbol name="groupidToolsSetupCommands" value="0x1021" />
172+
<IDSymbol name="groupidDebugDeployCommands" value="0x1022" />
141173
<IDSymbol name="cmdidDeployOutputCommand" value="0x0100" />
142174
<IDSymbol name="cmdidCleanOutputCommand" value="0x0101" />
143175
<IDSymbol name="cmdidInstallDebugger" value="0x0102" />

src/Extension/RemoteDebuggerLauncher/source.extension.vsixmanifest

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<?xml version="1.0" encoding="utf-8"?>
1+
<?xml version="1.0" encoding="utf-8"?>
22
<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">
33
<Metadata>
44
<Identity Id="RemoteDebuggerLauncher.0a58df05-9e98-4665-a427-78098563fa93" Version="1.0.0" Language="en-US" Publisher="Michael Koster" />
@@ -26,6 +26,7 @@
2626
<Prerequisites>
2727
<Prerequisite Id="Microsoft.NetCore.Component.Runtime.6.0" Version="[17.4,18.0)" DisplayName=".NET 6.0 Runtime (Long Term Support)" />
2828
<Prerequisite Id="Microsoft.VisualStudio.Component.Roslyn.LanguageServices" Version="[17.4,18.0)" DisplayName="C# and Visual Basic" />
29+
<Prerequisite Id="Microsoft.NetCore.Component.Runtime.8.0" Version="[17.4,18.0)" DisplayName=".NET 8.0 Runtime (Long Term Support)" />
2930
</Prerequisites>
3031
<Assets>
3132
<Asset Type="Microsoft.VisualStudio.VsPackage" d:Source="Project" d:ProjectName="%CurrentProject%" Path="|%CurrentProject%;PkgdefProjectOutputGroup|" />

0 commit comments

Comments
 (0)