Frage

Ich hatte häufig dieses Problem und hat eine Lösung noch nicht gefunden: Jedes Mal, wenn ich eine neue Eclipse-RCP-basierte Anwendung schreiben und umfassen Erweiterungen aus der Eclipse-Plattform, ich erben 'UI Beiträge von einigen dieser Plugins

.

Die meisten dieser Beiträge (Menüeinträge, Tastaturkürzel, Eigenschaftsseiten) nützlich sind, aber manchmal würde ich lieber einige dieser Beiträge deaktiviert, nur weil ich sie wirklich nicht brauchen, und sie könnten die Benutzer verwirren.

Kennt jemand die offiziellen oder eine praktische Art und Weise zu deaktivieren / ausgewählten Beiträge in Eclipse RCP Anwendungen verbieten?

Andere Tipps

Die einzige Methode, die nahe kommt, das zu tun sei:

IMenuService::removeContributionFactory()

Paul Webster wurde fordern eine IMenuService::addOverride() die Sichtbarkeit des Menüs zu ändern, zu verhindern jeder Beitrag, aber diese Idee wurde noch nicht integriert.

Sie können ein Beispiel für das Entfernen eines Beitrags in diesem org.eclipse.ui.tests.menus.MenuBuilder Klasse;

public static void removeMenuContribution() {
    if (!PlatformUI.isWorkbenchRunning()) {
        return;
    }
    IMenuService menuService = (IMenuService) PlatformUI.getWorkbench()
            .getService(IMenuService.class);
    if (menuService==null) {
        return;
    }
    menuService.removeContributionFactory(viewMenuAddition);
    viewMenuAddition = null;
    menuService.removeContributionFactory(viewToolbarAddition);
    viewMenuAddition = null;
}

Equinox Transformationen können auch zur Versorgung XLST Transformationen verwendet werden, die unerwünschten UI Beiträge zu entfernen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top