Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorddunne2012-01-17 14:52:07 +0000
committerRyan D. Brooks2012-01-17 14:52:07 +0000
commit254d075498dc78a4fa58f77b889b66e7b659d550 (patch)
tree6087b78c361f3bb8e7fba92c00e87ddc721a0c37 /plugins/org.eclipse.osee.ats/src/org
parentfedfa562f04a0619b7261c4096bfc81d6c8c94a0 (diff)
downloadorg.eclipse.osee-254d075498dc78a4fa58f77b889b66e7b659d550.tar.gz
org.eclipse.osee-254d075498dc78a4fa58f77b889b66e7b659d550.tar.xz
org.eclipse.osee-254d075498dc78a4fa58f77b889b66e7b659d550.zip
feature: Sort Transition-To menu by ordinal and add default percent
Diffstat (limited to 'plugins/org.eclipse.osee.ats/src/org')
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/workflow/TransitionToMenu.java46
1 files changed, 29 insertions, 17 deletions
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/workflow/TransitionToMenu.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/workflow/TransitionToMenu.java
index aa073f86602..4b6678d608a 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/workflow/TransitionToMenu.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/workflow/TransitionToMenu.java
@@ -13,9 +13,7 @@ package org.eclipse.osee.ats.workflow;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
-import java.util.HashMap;
import java.util.HashSet;
-import java.util.Map;
import java.util.Set;
import java.util.logging.Level;
import org.eclipse.core.runtime.jobs.IJobChangeEvent;
@@ -41,7 +39,6 @@ import org.eclipse.osee.ats.util.widgets.dialog.TransitionStatusDialog;
import org.eclipse.osee.framework.core.exception.OseeCoreException;
import org.eclipse.osee.framework.core.operation.Operations;
import org.eclipse.osee.framework.core.util.Result;
-import org.eclipse.osee.framework.core.util.WorkPageType;
import org.eclipse.osee.framework.core.util.XResultData;
import org.eclipse.osee.framework.logging.OseeLog;
import org.eclipse.osee.framework.skynet.core.User;
@@ -84,31 +81,46 @@ public class TransitionToMenu {
});
} else {
- Map<String, StateDefinition> nameToState = new HashMap<String, StateDefinition>();
+ Set<Integer> stateOrdinals = new HashSet<Integer>();
for (final StateDefinition stateDef : toStateDefs) {
- nameToState.put(stateDef.getPageName(), stateDef);
+ stateOrdinals.add(stateDef.getOrdinal());
}
- String[] toStates = nameToState.keySet().toArray(new String[nameToState.size()]);
+ Integer[] toStates = stateOrdinals.toArray(new Integer[stateOrdinals.size()]);
Arrays.sort(toStates);
- for (String toState : toStates) {
- final StateDefinition stateDef = nameToState.get(toState);
- editMenuManager.add(new Action(getTransitionToString(stateDef),
- ImageManager.getImageDescriptor(AtsImage.TRANSITION)) {
+ for (Integer stateOrdinal : stateOrdinals) {
+ for (final StateDefinition stateDef : toStateDefs) {
+ if (stateDef.getOrdinal() == stateOrdinal) {
+ editMenuManager.add(new Action(getTransitionToString(stateDef),
+ ImageManager.getImageDescriptor(AtsImage.TRANSITION)) {
- @Override
- public void run() {
- handleTransitionToSelected(stateDef.getName(), awas);
- }
+ @Override
+ public void run() {
+ handleTransitionToSelected(stateDef.getName(), awas);
+ }
- });
+ });
+ }
+ }
}
}
return editMenuManager;
}
private static String getTransitionToString(StateDefinition stateDef) {
- return stateDef.getPageName() + (stateDef.getWorkPageType() == WorkPageType.Working || stateDef.getPageName().equals(
- TeamState.Completed.getPageName()) || stateDef.getPageName().equals(TeamState.Cancelled.getPageName()) ? "" : " (" + stateDef.getWorkPageType().name() + ")");
+ return String.format("%s%s%s", stateDef.getPageName(), getStateTypeName(stateDef),
+ getDefaultStatePercent(stateDef));
+ }
+
+ private static Object getDefaultStatePercent(StateDefinition stateDef) {
+ if (stateDef.getRecommendedPercentComplete() != null && stateDef.getRecommendedPercentComplete() != 0) {
+ return String.format(" - %d%%", stateDef.getRecommendedPercentComplete());
+ }
+ return "";
+ }
+
+ private static String getStateTypeName(StateDefinition stateDef) {
+ return stateDef.isWorkingPage() || stateDef.getPageName().equals(TeamState.Completed.getPageName()) || stateDef.getPageName().equals(
+ TeamState.Cancelled.getPageName()) ? "" : " (" + stateDef.getWorkPageType().name() + ")";
}
private static void handleTransitionToSelected(final String toStateName, final Set<AbstractWorkflowArtifact> awas) {

Back to the top