From b07ef167920a2a9fe8cc0f3224db7dc6270e6373 Mon Sep 17 00:00:00 2001 From: jmisinco Date: Tue, 6 Oct 2015 13:43:07 -0700 Subject: bug[ats_ATS187641]: Do not allow Edit menu option on access controlled items Change-Id: I4a94ba11e12fdcaa488530f48c930c940d271b76 --- .../eclipse/osee/framework/ui/skynet/OpenContributionItem.java | 10 ++++++++++ .../org/eclipse/osee/framework/ui/skynet/render/IRenderer.java | 4 ++++ 2 files changed, 14 insertions(+) diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/OpenContributionItem.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/OpenContributionItem.java index 1dadf9332d8..54ff2558737 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/OpenContributionItem.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/OpenContributionItem.java @@ -189,10 +189,20 @@ public class OpenContributionItem extends ContributionItem { private Collection createOpenWithItems() { clearOpenWithItems(); List artifacts = getSelectedArtifacts(); + boolean readOnly = false; if (!artifacts.isEmpty()) { + for (Artifact art : artifacts) { + if (art.isReadOnly()) { + readOnly = true; + break; + } + } Artifact testArtifact = artifacts.iterator().next(); try { CommandGroup[] groups = IRenderer.CommandGroup.values(); + if (readOnly) { + groups = IRenderer.CommandGroup.getReadOnly(); + } CommandGroup lastGroup = groups[groups.length - 1]; for (CommandGroup commandGroup : groups) { diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/render/IRenderer.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/render/IRenderer.java index acf6abb7768..ad10e1d5e24 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/render/IRenderer.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/render/IRenderer.java @@ -52,6 +52,10 @@ public interface IRenderer { EDIT(PresentationType.SPECIALIZED_EDIT), SHOW(PresentationType.SPECIALIZED_EDIT); + public static CommandGroup[] getReadOnly() { + return new CommandGroup[] {PREVIEW, SHOW}; + } + PresentationType presentationType; CommandGroup(PresentationType type) { -- cgit v1.2.3