diff --git a/org.fortiss.tooling.kernel.ui/src/org/fortiss/tooling/kernel/ui/extension/.ratings b/org.fortiss.tooling.kernel.ui/src/org/fortiss/tooling/kernel/ui/extension/.ratings index e6baa430d23064a947f620434419438a0deea9a4..b76afd02c52eee68b89b4849bf72c4f5910a142e 100644 --- a/org.fortiss.tooling.kernel.ui/src/org/fortiss/tooling/kernel/ui/extension/.ratings +++ b/org.fortiss.tooling.kernel.ui/src/org/fortiss/tooling/kernel/ui/extension/.ratings @@ -1,4 +1,4 @@ -IContextMenuContributor.java 0f09c76662c154cf52ddab61b417e82a42854162 GREEN +IContextMenuContributor.java de86b87701450d4579047de3075eda8f878d23a9 GREEN IContextMenuMultiSelectionContributor.java 125b31dd38009bc2095b7e6bc860e946e39f58c4 GREEN IModelEditor.java 777df0a6be0fecb42315c228e5c1e7f68d5ec63f GREEN IModelEditorBinding.java 0eab668c7a7ad05c6cfc25412e7d38110dd0dc8f GREEN diff --git a/org.fortiss.tooling.kernel.ui/src/org/fortiss/tooling/kernel/ui/extension/IContextMenuContributor.java b/org.fortiss.tooling.kernel.ui/src/org/fortiss/tooling/kernel/ui/extension/IContextMenuContributor.java index 0f09c76662c154cf52ddab61b417e82a42854162..de86b87701450d4579047de3075eda8f878d23a9 100644 --- a/org.fortiss.tooling.kernel.ui/src/org/fortiss/tooling/kernel/ui/extension/IContextMenuContributor.java +++ b/org.fortiss.tooling.kernel.ui/src/org/fortiss/tooling/kernel/ui/extension/IContextMenuContributor.java @@ -48,4 +48,12 @@ public interface IContextMenuContributor { /** Returns the section ID to be used for the contributed elements. */ String getMenuSectionID(); + + /** + * Returns true if this context menu provider should be hidden in the navigator's simplified + * non-expert view. + */ + default boolean hiddenInNonExpertView() { + return false; + } } diff --git a/org.fortiss.tooling.kernel.ui/src/org/fortiss/tooling/kernel/ui/internal/.ratings b/org.fortiss.tooling.kernel.ui/src/org/fortiss/tooling/kernel/ui/internal/.ratings index f2010e47a139f7b23d51d54fe7eeac725cdc44cd..d9c3d05742cc133f0d46752e4a9b6cb5ecd0d917 100644 --- a/org.fortiss.tooling.kernel.ui/src/org/fortiss/tooling/kernel/ui/internal/.ratings +++ b/org.fortiss.tooling.kernel.ui/src/org/fortiss/tooling/kernel/ui/internal/.ratings @@ -1,5 +1,5 @@ ActionService.java e29126b5947c9fd2f1d82bb87001b9d0ead50c3b GREEN -ContextMenuService.java 802b6d0ade78f91478cd8959cfb423b9963d43bf GREEN +ContextMenuService.java 9021e4eeb5d7be5d73d87e5947564bdf17f07b9d GREEN MarkerService.java 0bfe2c67638db4e506ea5dc7680765f2a8d632e1 GREEN ModelEditorBindingService.java f304addb514cd2de443997e0b52cef7a3a9897bf GREEN ModelElementHandlerService.java 34adeef844bf98c69f1b9a7252f34d0a2b741b54 GREEN diff --git a/org.fortiss.tooling.kernel.ui/src/org/fortiss/tooling/kernel/ui/internal/ContextMenuService.java b/org.fortiss.tooling.kernel.ui/src/org/fortiss/tooling/kernel/ui/internal/ContextMenuService.java index 802b6d0ade78f91478cd8959cfb423b9963d43bf..9021e4eeb5d7be5d73d87e5947564bdf17f07b9d 100644 --- a/org.fortiss.tooling.kernel.ui/src/org/fortiss/tooling/kernel/ui/internal/ContextMenuService.java +++ b/org.fortiss.tooling.kernel.ui/src/org/fortiss/tooling/kernel/ui/internal/ContextMenuService.java @@ -42,6 +42,7 @@ import org.fortiss.tooling.kernel.ui.extension.data.ContextMenuContextProvider; import org.fortiss.tooling.kernel.ui.introspection.items.ContextMenuKISSDetailsItem; import org.fortiss.tooling.kernel.ui.service.IActionService; import org.fortiss.tooling.kernel.ui.service.IContextMenuService; +import org.fortiss.tooling.kernel.ui.service.INavigatorService; import org.fortiss.tooling.kernel.ui.service.ITutorialUIService; import org.fortiss.tooling.kernel.utils.ExtensionPointUtils; import org.fortiss.tooling.kernel.utils.LoggingUtils; @@ -188,6 +189,11 @@ public class ContextMenuService implements IContextMenuService, IIntrospectiveKe ContextMenuContextProvider contextProvider) { EObject selectionElem = contextProvider.getSelectedModelElement(); for(IContextMenuContributor contributor : contextMenuContributorList) { + if(!INavigatorService.getInstance().isExpertViewActive() && + contributor.hiddenInNonExpertView()) { + continue; + } + String menuSectionID = contributor.getMenuSectionID(); if(menuSectionID == null) { menuSectionID = IWorkbenchActionConstants.MB_ADDITIONS; @@ -223,6 +229,11 @@ public class ContextMenuService implements IContextMenuService, IIntrospectiveKe ContextMenuContextProvider contextProvider, List<EObject> selection) { for(IContextMenuContributor contributor : contextMenuContributorList) { if(contributor instanceof IContextMenuMultiSelectionContributor) { + if(!INavigatorService.getInstance().isExpertViewActive() && + contributor.hiddenInNonExpertView()) { + continue; + } + IContextMenuMultiSelectionContributor multicontributor = (IContextMenuMultiSelectionContributor)contributor; String menuSectionID = contributor.getMenuSectionID();