Unterschiede
Hier werden die Unterschiede zwischen der gewählten und der aktuellen Version gezeigt.
eclipse-riena:ui-filter 2016/01/08 12:24 | eclipse-riena:ui-filter 2020/01/22 20:59 aktuell | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
[[eclipse-riena|Java - Eclipse-Riena]]\\ | [[eclipse-riena|Java - Eclipse-Riena]]\\ | ||
- | ====== UI-Filter (Oberflächenfilter ====== | + | ====== UI-Filter (Oberflächenfilter) ====== |
Mit UI-Filtern kann die Oberfläche der Anwendung eingeschränkt werden.\\ | Mit UI-Filtern kann die Oberfläche der Anwendung eingeschränkt werden.\\ | ||
Oberflächenelemente können ausgeblendet und deaktiviert werden.\\ | Oberflächenelemente können ausgeblendet und deaktiviert werden.\\ | ||
Zeile 30: | Zeile 30: | ||
<filter filterId="mybuttonfilter"> | <filter filterId="mybuttonfilter"> | ||
<nodeId id="/application"/> | <nodeId id="/application"/> | ||
- | <ruleMarkerRidget marker="hidden" ridgetId="guiElementExampleButtonId"/> | + | <ruleMarkerRidget marker="hidden" ridgetId="*clickMeButtonId"/> |
- | <ruleMarkerNavigation marker="hidden" nodeId="myButtonId"/> | + | |
</filter> | </filter> | ||
</extension> | </extension> | ||
</code> | </code> | ||
+ | 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: | ||
+ | <code java> | ||
+ | public class MyView extends SubModuleView { | ||
+ | @Override | ||
+ | protected void basicCreatePartControl(Composite parent) { | ||
+ | // ... | ||
+ | UIControlsFactory.createButton(parent, "Klick mich", "clickMeButtonId"); | ||
+ | //... | ||
+ | } | ||
+ | } | ||
+ | </code> | ||
+ | \\ | ||
+ | \\ | ||
+ | Ein vordefinierter Filter kann dann in einem Controller verwendet werden: | ||
+ | <code java> | ||
+ | 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); | ||
+ | } | ||
+ | } | ||
+ | </code> | ||