Ich brauchte eine Weile, um genau dieses Problem zu lösen, also werde ich die Antwort auf die OP-Frage stellen (Hinzufügen zu Datei-> Neu).
Beitrag zum Beitrag (common.new.Menü)
Dank diesem Beitrag entdeckte ich, dass Sie Popup beitragen möchten: common.new.menu? after = new. warum fragst du? Verdammt, wenn ich es weiß; Aber es funktioniert.
Ergebnis
(bei C/C++ ist aktiv Perspektive)
(W Henne 'nicht' C/C++ als aktive Perspektive)
Hier ist mein Beispiel Plugin:
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
<extension
point="org.eclipse.ui.commands">
<command
defaultHandler="com.justin.debug.SampleHandler"
id="com.justin.debug.commands.sampleCommand"
name="Sample Command">
</command>
</extension>
<extension
point="org.eclipse.ui.menus">
<menuContribution
locationURI="popup:common.new.menu?after=new">
<command
commandId="com.justin.debug.commands.sampleCommand"
icon="icons/sample.gif"
label="New Root Command From Justin"
style="push">
<visibleWhen
checkEnabled="false">
<with
variable="activeWorkbenchWindow.activePerspective">
<equals
value="org.eclipse.cdt.ui.CPerspective">
</equals>
</with>
</visibleWhen>
</command>
</menuContribution>
<menuContribution
locationURI="popup:common.new.menu?after=new">
<menu
id="org.ecilpse.ui.navigator.ProjectExplorer.helloJustin"
label="Hello Justin">
<command
commandId="com.justin.debug.commands.sampleCommand"
icon="icons/sample.gif"
label="New Submenu Command From Justin"
style="push">
</command>
</menu>
</menuContribution>
</extension>
</plugin>
Ich habe eine wichtige Rolle hier der Parameter 'visibleWhen'. Dies zeigt nur New Root Command von Justin wenn in der C/C++ Perspektive. Es erweist sich als schwierig, das herauszufinden, also meine Aufnahme in Beispiel. Hier sind nützliche Ressourcen, die ich ausgegraben, während die Erforschung:
ich den Namen der C-Perspektive org.eclipse.cdt.ui.CPerspective durch schmerzlich ausgegraben Durchsuche die plugin.xml des org.eclipse.cdt.ui Plugins.
jetzt, wenn mir jemand sagen könnte, wie diese uri/resources/properties in der Zukunft leicht aussehen ... omg.
Ich denke org.eclipse.ui.popupMenus ist jetzt bereinigt siehe http://stackoverflow.com/questions/5915550/missing-link-between-objectcontribution-and-command –
@ Prashant: sehr guter Punkt. Ich habe meine Antwort bearbeitet, um Ihren Kommentar zu reflektieren. – VonC
@VonC Die eclipse.org-Links in Ihrer Antwort sind jetzt gebrochen. – reprogrammer