2012-07-12 16 views

Odpowiedz

6

Możesz dodać handler'a, który używa activeWhen i powiązać go z id polecenia tego menu.

Oto obsługi sprawia, że ​​polecenie aktywny tylko wtedy, gdy obecny wybór nie jest pusta, a wybór jest element, który może być dostosowany do obiektu typu Widget:

<extension point="org.eclipse.ui.handlers"> 
    <handler class="com.myproject.handlers.ExportWidgetHandler" 
      commandId="com.myproject.commands.exportWidget"> 
    <activeWhen> 
     <with variable="selection"> 
      <iterate ifEmpty="false" operator="and"> 
       <adapt type="com.myproject.objects.Widget"/> 
      </iterate> 
     </with> 
    </activeWhen> 
    </handler> 
</extension> 
+0

co robi widget znaczy tutaj? czy jest to klasa, którą chcę aktywować w menu wyboru obiektu? – becks

+1

Zgadza się. Możesz mieć ** TableViewer ** pełen ** Widgetów **; gdy jedno z nich zostanie wybrane, twoje menu będzie aktywne. Możesz również mieć ** TableViewer ** pełen ** obiektów WidgetAndDongle ** i ** WidgetAndDongleToWidgetAdapter ** zarejestrowanych dla twojej wtyczki, która dostosowuje ** WidgetAndDongle ** obiekty przez wyciągnięcie i zwrócenie tylko ** Widget * * część. W takim przypadku menu również będzie aktywne, ponieważ wybrany element (** WidgetAndDongle **) może być dostosowany do ** Widget **. – stracka

Powiązane problemy