Legge til gruppehandlinger

Plugin-modulen for gruppegrensesnitt definerer en hurtigmenyutvidelse for å konsolidere alle grupperelaterte handlinger på ett sted. Gruppemenyen har mange spor for undergrupper slik at plugin-moduler for gruppeleverandører kan oppgi handlinger og ha noe kontroll over hvilken rekkefølge elementene skal vises i, på menyen. Kodetypen nedenfor er hentet fra manifestet for plugin-modulen for gruppegrensesnittet:

   <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>

Det legges til en gruppemeny på hurtigmenyen for alle visningene som viser ressurser (eller objekter som tilpasses ressurser). Plugin-modulen kan bruke IDen for denne menyen og separatorgruppene for å legge til egne menypunkter. Du kan fritt definere dine egne hurtigmenyer, handlingssett eller visnings- og redigeringsprogramhandlinger.  Hvis du legger til handlinger på den forhåndsdefinerte gruppemenyen, er det imidlertid enklere for sluttbrukeren å finne handlingene.

La oss se på en CVS-handling som viser noen interessante punkter:

   <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>
	...

Merk at handlingen oppgis ved hjelp av arbeidsbenkens utvidelsespunkt, org.eclipse.ui.popupMenus . Her er noen av det som skjer med tanke på grupper, i kodetypen:

Implementeringen av en handling avhenger i stor grad av den spesifikke leverandøren.