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. Das folgende Befehlsformat stammt 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. Das Plug-in kann die ID dieses Menüs und die Trennzeichengruppen verwenden, um eigene Menüpunkte hinzuzufügen. Sie können immer eigene Kontextmenüs, Aktionssets oder Sichten und Editoraktionen definieren. Allerdings erleichtert das Hinzufügen Ihrer Aktionen zu den vordefinierten Teammenüs dem Endbenutzer das Suchen Ihrer Aktionen.
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.