diff options
Diffstat (limited to 'plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/commandHandlers/OpenArtifactExplorerHandler.java')
-rw-r--r-- | plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/commandHandlers/OpenArtifactExplorerHandler.java | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/commandHandlers/OpenArtifactExplorerHandler.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/commandHandlers/OpenArtifactExplorerHandler.java index 3d235d0aaad..faee9ec7d41 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/commandHandlers/OpenArtifactExplorerHandler.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/commandHandlers/OpenArtifactExplorerHandler.java @@ -14,6 +14,9 @@ import java.util.List; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.jface.viewers.IStructuredSelection; import org.eclipse.osee.framework.core.data.IOseeBranch; +import org.eclipse.osee.framework.core.enums.BranchState; +import org.eclipse.osee.framework.core.enums.BranchType; +import org.eclipse.osee.framework.core.model.Branch; import org.eclipse.osee.framework.ui.plugin.util.CommandHandler; import org.eclipse.osee.framework.ui.skynet.ArtifactExplorer; @@ -22,13 +25,22 @@ import org.eclipse.osee.framework.ui.skynet.ArtifactExplorer; */ public class OpenArtifactExplorerHandler extends CommandHandler { - private List<? extends IOseeBranch> getSelectedBranches(IStructuredSelection selection) { + private List<Branch> getSelectedBranches(IStructuredSelection selection) { return Handlers.getBranchesFromStructuredSelection(selection); } @Override public boolean isEnabledWithException(IStructuredSelection structuredSelection) { - return !getSelectedBranches(structuredSelection).isEmpty(); + List<Branch> selectedBranches = getSelectedBranches(structuredSelection); + boolean isEnabled = !selectedBranches.isEmpty(); + for (Branch branch : selectedBranches) { + if (branch.getBranchType() == BranchType.MERGE || !branch.getBranchState().matches(BranchState.CREATED, + BranchState.MODIFIED)) { + isEnabled = false; + break; + } + } + return isEnabled; } @Override |