Teamaktionen hinzufügen

Das Plug-in für die Team-Benutzerschnittstelle definiert eine Kontextmenüerweiterung, um alle teambezogenen Aktionen an zentraler Stelle zu konsolidieren. Das Teammenü umfasst zahlreiche Untergruppensegmente, so dass Plug-ins für Team-Provider Aktionen ergänzen können und über bestimmte Steuerungsmöglichkeiten über die Reihenfolge der Elemente innerhalb des Menüs verfügen. Die folgenden Steuerbefehle stammen aus dem Manifest des Plug-ins der Team-Benutzerschnittstelle:

<extension
     point="org.eclipse.ui.popupMenus">
	<objectContribution
       	   id="org.eclipse.team.ui.ResourceContributions"
           objectClass="org.eclipse.core.resources.IResource" adaptable="true">
		<menu
			id="team.main"
			path="additions"
			label="%TeamGroupMenu.label">
			<separator name="group1"/>
			<separator name="group2"/>
			<separator name="group3"/>
			<separator name="group4"/>
			<separator name="group5"/>
			<separator name="group6"/>
			<separator name="group7"/>
			<separator name="group8"/>
			<separator name="group9"/>
			<separator name="group10"/>
			<separator name="targetGroup"/>
			<separator name="projectGroup"/>
		   </menu>
	... 
</extension>

Ein Teammenü wird zum Kontextmenü aller Sichten hinzugefügt, in denen Ressourcen (oder Objekte zur Ressourcenanpassung) angezeigt werden. Ihr Plug-in kann die ID dieses Menüs und der Separatorgruppen verwenden, um eigene Menüpunkte hinzuzufügen. Nichts hält Sie davon ab, eigene Kontextmenüs, Aktionssets oder Ansichts- und Editoraktionen zu definieren. Wenn Sie Ihre Aktionen jedoch zum vordefinierten Teammenü hinzufügen, können sie von Benutzern leichter gefunden werden.

Im Folgenden ist eine CVS-Aktion aufgeführt, in der einige interessante Punkte dargestellt sind:

<extension
    point="org.eclipse.ui.popupMenus">
     <objectContribution
           objectClass="org.eclipse.core.resources.IFile"
           adaptable="true"
           id="org.eclipse.team.ccvs.ui.IFileContributions">
        <filter
              name="projectPersistentProperty"
              value="org.eclipse.team.core.repository=org.eclipse.team.cvs.core.cvsnature">
        </filter>
        <action
              label="%IgnoreAction.label"
              tooltip="%IgnoreAction.tooltip"
              class="org.eclipse.team.internal.ccvs.ui.actions.IgnoreAction"
              menubarPath="team.main/group3"
              helpContextId="org.eclipse.team.cvs.ui.team_ignore_action_context"
              id="org.eclipse.team.ccvs.ui.ignore">
        </action>
	...

Beachten Sie, dass die Aktion mit Hilfe des Workbench-Erweiterungspunktes org.eclipse.ui.popupMenus ergänzt wird. Im Folgenden sind einige teamspezifische Ereignisse aufgeführt, die für das Befehlsformat gelten:

Die Implementierung einer Aktion hängt in hohem Maße vom verwendeten Provider ab.