Java - Eclipse-Riena

UI-Filter (Oberflächenfilter)

Mit UI-Filtern kann die Oberfläche der Anwendung eingeschränkt werden.
Oberflächenelemente können ausgeblendet und deaktiviert werden.
Ferner können Validatoren und Marker gefiltert werden.


UI-Filter können über den Extension-Point org.eclipse.rienaui.filter.uiFilters vordefiniert werden:

<extension point="org.eclipse.riena.ui.filter.uiFilters">
   <filter filterId="mybuttonfilter">
      <nodeId id="/application"/>
      <ruleMarkerRidget marker="hidden" ridgetId="*clickMeButtonId"/>
   </filter>
</extension>

Das * direkt vor der Button-Id erspart einem übrigens die eigentlich nötige Pfadangabe (natürlich muss die Id dann systemweit eindeutig sein).


In einem View wird unter anderem der Button mit der Id erstellt:

public class MyView extends SubModuleView {
   @Override
   protected void basicCreatePartControl(Composite parent) {
      // ...
      UIControlsFactory.createButton(parent, "Klick mich", "clickMeButtonId");
      //...
   }
}



Ein vordefinierter Filter kann dann in einem Controller verwendet werden:

public class MyController extends SubModuleController {
   @Override
   public void configureRidgets() {
      super.configureRidgets();
 
      // ...
 
      // Filter aktivieren:
      IUIFilterProvider provider = Service.get(Activator.getDefault().getContext(), IUIFilterProvider.class);
      IUIFilter filter = provider.provideFilter("mybuttonfilter").getFilter();	
      getNavigationNode().addFilter(filter);
   }
}

Eigene Werkzeuge
Werkzeuge

gratis Counter by GOWEB
seit 9.10.2007