From 3af0cbabef1b2f556071a55cecbde7ab911259d9 Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Thu, 12 Apr 2018 08:21:05 +0200 Subject: [PATCH] Dynamic menu contribution test --- .../e4/handlers/LanguageMenuContribution.java | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 org.argeo.cms.e4/src/org/argeo/cms/e4/handlers/LanguageMenuContribution.java diff --git a/org.argeo.cms.e4/src/org/argeo/cms/e4/handlers/LanguageMenuContribution.java b/org.argeo.cms.e4/src/org/argeo/cms/e4/handlers/LanguageMenuContribution.java new file mode 100644 index 000000000..ac825bb0d --- /dev/null +++ b/org.argeo.cms.e4/src/org/argeo/cms/e4/handlers/LanguageMenuContribution.java @@ -0,0 +1,29 @@ + +package org.argeo.cms.e4.handlers; + +import java.util.Date; +import java.util.List; + +import org.eclipse.e4.ui.di.AboutToHide; +import org.eclipse.e4.ui.di.AboutToShow; +import org.eclipse.e4.ui.model.application.ui.menu.MDirectMenuItem; +import org.eclipse.e4.ui.model.application.ui.menu.MMenuElement; +import org.eclipse.e4.ui.workbench.modeling.EModelService; + +public class LanguageMenuContribution { + @AboutToShow + public void aboutToShow(List items, EModelService modelService) { + MDirectMenuItem dynamicItem = modelService.createModelElement(MDirectMenuItem.class); + dynamicItem.setLabel("Dynamic Menu Item (" + new Date() + ")"); + //dynamicItem.setContributorURI("platform:/plugin/org.argeo.cms.e4"); + //dynamicItem.setContributionURI("bundleclass://org.argeo.cms.e4/" + ChangeLanguage.class.getName()); + dynamicItem.setEnabled(true); + dynamicItem.setContributionURI("bundleclass://org.argeo.cms.e4/org.argeo.cms.e4.handlers.ChangeLanguage"); + items.add(dynamicItem); + } + + @AboutToHide + public void aboutToHide() { + + } +} \ No newline at end of file -- 2.30.2