Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordonald.g.dunne2021-07-06 16:03:32 +0000
committerRyan T. Baldwin2021-07-06 16:03:32 +0000
commitecfd952d3ef1e167d6ed70a1cc6888434d7fbfd8 (patch)
treefbcc47a6bc417001546e5ed853658030851e27b3 /plugins
parent79e943138733a693fd633487cc0810d3baff9ace (diff)
downloadorg.eclipse.osee-ecfd952d3ef1e167d6ed70a1cc6888434d7fbfd8.tar.gz
org.eclipse.osee-ecfd952d3ef1e167d6ed70a1cc6888434d7fbfd8.tar.xz
org.eclipse.osee-ecfd952d3ef1e167d6ed70a1cc6888434d7fbfd8.zip
feature[TW19140]: Fix Change Request Widgets
Diffstat (limited to 'plugins')
-rw-r--r--plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/CreateNewChangeRequestBlam.java6
-rw-r--r--plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/XTaskEstLabelProvider.java5
-rw-r--r--plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/XTaskEstViewer.java20
-rw-r--r--plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/XTaskEstWidget.java8
-rw-r--r--plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/demo/XTaskEstDemoXViewer.java6
-rw-r--r--plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/artifact/EnumSingletonSelectionDialog.java16
-rw-r--r--plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XAbstractSignDateAndByButton.java2
-rw-r--r--plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/builder/XWidgetBuilder.java9
8 files changed, 52 insertions, 20 deletions
diff --git a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/CreateNewChangeRequestBlam.java b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/CreateNewChangeRequestBlam.java
index 3872e9fe679..6d8024210c2 100644
--- a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/CreateNewChangeRequestBlam.java
+++ b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/CreateNewChangeRequestBlam.java
@@ -157,13 +157,17 @@ public abstract class CreateNewChangeRequestBlam extends AbstractBlam implements
wb.andXCombo(PROGRAM, Collections.emptyList()).andRequired().endWidget();
wb.andXText(TITLE).andRequired().endWidget();
wb.andXText(AtsAttributeTypes.Description).andHeight(80).andRequired().endWidget();
- wb.andXCombo(AtsAttributeTypes.ChangeType).andComposite(getChangeTypeRowColumns()).andRequired().endWidget();
+ addChangeTypeCombo();
wb.andXCombo(getPriorityAttr()).andRequired().endWidget();
addWidgetAfterPriority();
wb.andXDate(AtsAttributeTypes.NeedBy).endComposite().endWidget();
return wb.getItems();
}
+ private void addChangeTypeCombo() {
+ wb.andXCombo(AtsAttributeTypes.ChangeType).andComposite(getChangeTypeRowColumns()).andRequired().endWidget();
+ }
+
protected void addWidgetAfterPriority() {
// For sub-class extension
}
diff --git a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/XTaskEstLabelProvider.java b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/XTaskEstLabelProvider.java
index 1de025ad36c..2a16e1210ed 100644
--- a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/XTaskEstLabelProvider.java
+++ b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/XTaskEstLabelProvider.java
@@ -24,7 +24,9 @@ import org.eclipse.osee.ats.ide.internal.AtsApiService;
import org.eclipse.osee.ats.ide.workflow.task.TaskXViewer;
import org.eclipse.osee.ats.ide.world.WorldLabelProvider;
import org.eclipse.osee.framework.core.enums.CoreRelationTypes;
+import org.eclipse.osee.framework.skynet.core.artifact.Artifact;
import org.eclipse.osee.framework.ui.skynet.FrameworkImage;
+import org.eclipse.osee.framework.ui.skynet.widgets.XAbstractSignDateAndByButton;
import org.eclipse.osee.framework.ui.swt.ImageManager;
import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.graphics.Image;
@@ -86,7 +88,8 @@ public class XTaskEstLabelProvider extends WorldLabelProvider {
return "";
}
} else if (xViewerColumn.getName().equals("TLE Reviewed")) {
- return "";
+ return XAbstractSignDateAndByButton.getText((Artifact) task.getStoreObject(),
+ AtsAttributeTypes.TleReviewedDate, AtsAttributeTypes.TleReviewedBy);
} else if (xViewerColumn.getName().equals("Related Workflow")) {
if (task.isCancelled()) {
return "";
diff --git a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/XTaskEstViewer.java b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/XTaskEstViewer.java
index 8243405ac97..b72f14db2ba 100644
--- a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/XTaskEstViewer.java
+++ b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/XTaskEstViewer.java
@@ -33,7 +33,6 @@ import org.eclipse.osee.ats.api.workflow.cr.TaskEstUtil;
import org.eclipse.osee.ats.ide.editor.WorkflowEditor;
import org.eclipse.osee.ats.ide.internal.AtsApiService;
import org.eclipse.osee.ats.ide.util.widgets.dialog.ActionableItemCheckboxStateDialog;
-import org.eclipse.osee.ats.ide.workflow.cr.estimates.demo.XTaskEstDemoWidget;
import org.eclipse.osee.ats.ide.workflow.cr.estimates.sibling.operation.CreateSiblingOffTaskEstOperation;
import org.eclipse.osee.ats.ide.workflow.task.TaskXViewer;
import org.eclipse.osee.framework.core.data.ArtifactToken;
@@ -51,10 +50,10 @@ import org.eclipse.swt.widgets.TreeItem;
/**
* @author Donald G. Dunne
*/
-public class XTaskEstViewer extends TaskXViewer {
+public abstract class XTaskEstViewer extends TaskXViewer {
- private final IAtsTeamWorkflow crTeamWf;
- private final AtsApi atsApi;
+ protected final IAtsTeamWorkflow crTeamWf;
+ protected final AtsApi atsApi;
public XTaskEstViewer(Composite parent, int style, IXViewerFactory xViewerFactory, IDirtiableEditor editor, IAtsTeamWorkflow teamWf) {
super(parent, style, xViewerFactory, editor, teamWf);
@@ -109,8 +108,10 @@ public class XTaskEstViewer extends TaskXViewer {
return true;
}
+ protected abstract XTaskEstWidget getXTaskEstWidget();
+
private boolean createWorkflow(IAtsTask task) {
- XTaskEstDemoWidget estWidget = new XTaskEstDemoWidget();
+ XTaskEstWidget estWidget = getXTaskEstWidget();
estWidget.setArtifact((Artifact) crTeamWf.getStoreObject());
TaskEstDefinition tedMatch = null;
for (TaskEstDefinition ted : estWidget.getTaskEstDefs()) {
@@ -147,8 +148,9 @@ public class XTaskEstViewer extends TaskXViewer {
// Create workflow with configured or selected AI
XResultData rd = new XResultData();
IAtsChangeSet changes = atsApi.createChangeSet("Create Task Est Workflow");
- CreateSiblingOffTaskEstOperation.createTaskEstSiblingWorkflow(rd, changes, new Date(), task, useAi, teamDef,
- assignees, action, atsApi);
+ IAtsTeamWorkflow newTeamWf = CreateSiblingOffTaskEstOperation.createTaskEstSiblingWorkflow(rd, changes,
+ new Date(), task, useAi, teamDef, assignees, action, atsApi);
+ workflowCreating(newTeamWf, changes);
changes.execute();
if (rd.isErrors()) {
XResultDataUI.report(rd, "Create Task Est Workflow");
@@ -157,6 +159,10 @@ public class XTaskEstViewer extends TaskXViewer {
return true;
}
+ protected void workflowCreating(IAtsTeamWorkflow teamWf, IAtsChangeSet changes) {
+ // For subclass additions
+ }
+
@Override
protected boolean isAddTaskEnabled() {
return false;
diff --git a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/XTaskEstWidget.java b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/XTaskEstWidget.java
index 8897ebba71a..013c38b094c 100644
--- a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/XTaskEstWidget.java
+++ b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/XTaskEstWidget.java
@@ -60,7 +60,6 @@ public abstract class XTaskEstWidget extends XMiniTaskWidget {
"Select to create estimating tasks. Complete all estimates/tasks. Double-Click to open/edit task/fields.";
private AttributeTypeToken pointsAttrType;
private final List<Object> input = new ArrayList<>();
- private XTaskEstViewer xTaskEstViewer;
public static String NAME = "Estimate Manager";
public XTaskEstWidget() {
@@ -75,12 +74,7 @@ public abstract class XTaskEstWidget extends XMiniTaskWidget {
}
@Override
- protected TaskXViewer createXTaskViewer(Composite tableComp) {
- xTaskEstViewer = new XTaskEstViewer(tableComp, SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION,
- new XTaskEstXViewerFactory(), null, teamWf);
- xTaskViewer = xTaskEstViewer;
- return xTaskViewer;
- }
+ protected abstract TaskXViewer createXTaskViewer(Composite tableComp);
@Override
protected WorldLabelProvider getWorldLabelProvider(TaskXViewer xTaskViewer) {
diff --git a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/demo/XTaskEstDemoXViewer.java b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/demo/XTaskEstDemoXViewer.java
index d91a970a495..7daf514d1ac 100644
--- a/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/demo/XTaskEstDemoXViewer.java
+++ b/plugins/org.eclipse.osee.ats.ide/src/org/eclipse/osee/ats/ide/workflow/cr/estimates/demo/XTaskEstDemoXViewer.java
@@ -15,6 +15,7 @@ package org.eclipse.osee.ats.ide.workflow.cr.estimates.demo;
import org.eclipse.nebula.widgets.xviewer.IXViewerFactory;
import org.eclipse.osee.ats.api.workflow.IAtsTeamWorkflow;
import org.eclipse.osee.ats.ide.workflow.cr.estimates.XTaskEstViewer;
+import org.eclipse.osee.ats.ide.workflow.cr.estimates.XTaskEstWidget;
import org.eclipse.osee.framework.ui.swt.IDirtiableEditor;
import org.eclipse.swt.widgets.Composite;
@@ -27,4 +28,9 @@ public class XTaskEstDemoXViewer extends XTaskEstViewer {
super(parent, style, xViewerFactory, editor, teamWf);
}
+ @Override
+ protected XTaskEstWidget getXTaskEstWidget() {
+ XTaskEstDemoWidget estWidget = new XTaskEstDemoWidget();
+ return estWidget;
+ }
}
diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/artifact/EnumSingletonSelectionDialog.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/artifact/EnumSingletonSelectionDialog.java
index cf90aa819f6..7d82ae2dfd0 100644
--- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/artifact/EnumSingletonSelectionDialog.java
+++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/artifact/EnumSingletonSelectionDialog.java
@@ -15,9 +15,13 @@ package org.eclipse.osee.framework.ui.skynet.artifact;
import java.util.Collection;
import java.util.HashSet;
+import java.util.List;
import java.util.Set;
import org.eclipse.jface.viewers.ArrayContentProvider;
+import org.eclipse.osee.framework.core.data.ArtifactTypeToken;
+import org.eclipse.osee.framework.core.data.AttributeTypeEnum;
import org.eclipse.osee.framework.core.data.AttributeTypeToken;
+import org.eclipse.osee.framework.core.enums.EnumToken;
import org.eclipse.osee.framework.jdk.core.type.OseeCoreException;
import org.eclipse.osee.framework.skynet.core.artifact.Artifact;
import org.eclipse.osee.framework.skynet.core.attribute.AttributeTypeManager;
@@ -43,13 +47,19 @@ public class EnumSingletonSelectionDialog extends ListDialog {
public EnumSingletonSelectionDialog(AttributeTypeToken attributeType, Collection<? extends Artifact> artifacts) {
super(Displays.getActiveShell());
- Set<String> options;
+ Set<String> options = new HashSet<>();
try {
- options = attributeType.toEnum().getEnumStrValues();
+
+ Artifact artifact = artifacts.iterator().next();
+ ArtifactTypeToken artType = artifact.getArtifactType();
+ @SuppressWarnings("unchecked")
+ List<EnumToken> validEnumValues = artType.getValidEnumValues((AttributeTypeEnum<EnumToken>) attributeType);
+ for (EnumToken enumTok : validEnumValues) {
+ options.add(enumTok.getName());
+ }
isRemoveAllAllowed = AttributeTypeManager.checkIfRemovalAllowed(attributeType, artifacts);
} catch (OseeCoreException ex) {
- options = new HashSet<>();
options.add(ex.getLocalizedMessage());
}
setInput(options);
diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XAbstractSignDateAndByButton.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XAbstractSignDateAndByButton.java
index 8ec1f8bcdaf..52e65e2c891 100644
--- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XAbstractSignDateAndByButton.java
+++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XAbstractSignDateAndByButton.java
@@ -81,7 +81,7 @@ public abstract class XAbstractSignDateAndByButton extends XButtonWithLabelDam {
if (date != null) {
User user =
UserManager.getUserByArtId(artifact.getSoleAttributeValue(signByAttrType, SystemUser.UnAssigned.getId()));
- return String.format("signed by %s on %s", user.getName(), DateUtil.getDateNow(date, DateUtil.MMDDYYHHMM));
+ return String.format("Signed by %s on %s", user.getName(), DateUtil.getDateNow(date, DateUtil.MMDDYYHHMM));
}
return NOT_YET_SIGNED;
}
diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/builder/XWidgetBuilder.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/builder/XWidgetBuilder.java
index cf00d8bb855..d38fbba1e16 100644
--- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/builder/XWidgetBuilder.java
+++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/builder/XWidgetBuilder.java
@@ -101,6 +101,15 @@ public class XWidgetBuilder {
}
+ public XWidgetBuilder andXCombo(AttributeTypeToken attrType, List<String> options) {
+ newXWidget();
+ setAttrTypeSettings(attrType);
+ currItem.setName(attrType.getUnqualifiedName());
+ String optionsStr = Collections.toString(",", options);
+ currItem.setXWidgetName(String.format("XCombo(%s)", optionsStr));
+ return this;
+ }
+
public XWidgetBuilder andXCombo(String displayName, AttributeTypeToken attrType) {
newXWidget();
setAttrTypeSettings(attrType);

Back to the top