Modul plug-in týmového uživatelského rozhraní definuje rozšíření rozevírací nabídky z důvodu konsolidace všech akcí souvisejících s týmem na jediném místě. Týmová nabídka obsahuje řadu slotů podskupin tak, aby moduly plug-in poskytovatele týmu mohly vkládat akce a zároveň měly určitou míru kontroly nad pořadím položek v nabídce. Následující markup je z manifestu modulu plug-in týmového uživatelského rozhraní:
<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>
Týmová nabídka se přidává do rozevírací nabídky všech pohledů, které zobrazují prostředky (nebo objekty, které se přizpůsobují prostředkům). Váš modul plug-in může použít ID této nabídky a skupiny oddělovače za účelem přidávání vašich vlastních položek nabídky. Nic vám nebrání nadefinovat si své vlastní rozevírací nabídky, akční sady či pohledy a akce editoru. Pokud však své akce přidáte do předdefinované týmové nabídky, koncoví uživatelé vaše akce snáze najdou.
Nejprve se podívejme na akci CVS, která ukazuje na několik zajímavostí:
<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> ...
Všimněte si, že akce je vložena pomocí bodu rozšíření org.eclipse.ui.popupMenus pracovní plochy. Zde je několik věcí týkajících se týmu, ke kterým v markupu dochází:
Implementace akce do značné míry závisí na vašem konkrétním poskytovateli.