diff options
author | donald.g.dunne | 2015-05-14 15:35:22 +0000 |
---|---|---|
committer | Donald Dunne | 2015-05-20 15:30:47 +0000 |
commit | e07416da43ca73f1e95ca8f84d07988779a8994f (patch) | |
tree | 64a5edbd205827165922b137fc792041da94d590 | |
parent | 3599e004e2a34106ce79923765239db577f2485e (diff) | |
download | org.eclipse.osee-e07416da43ca73f1e95ca8f84d07988779a8994f.tar.gz org.eclipse.osee-e07416da43ca73f1e95ca8f84d07988779a8994f.tar.xz org.eclipse.osee-e07416da43ca73f1e95ca8f84d07988779a8994f.zip |
bug[ats_ATS198543]: Can not remove from Activity Id column
Change-Id: Ic05ddceaef6475acaf3f7975768be95f50394c72
2 files changed, 38 insertions, 2 deletions
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/column/WorkPackageFilterTreeDialog.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/column/WorkPackageFilterTreeDialog.java index 8e736f2b43c..3ba986c05d8 100644 --- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/column/WorkPackageFilterTreeDialog.java +++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/column/WorkPackageFilterTreeDialog.java @@ -32,6 +32,7 @@ import org.eclipse.osee.framework.ui.skynet.widgets.dialog.FilteredCheckboxTreeD import org.eclipse.swt.SWT; import org.eclipse.swt.events.SelectionAdapter; import org.eclipse.swt.events.SelectionEvent; +import org.eclipse.swt.events.SelectionListener; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Composite; @@ -47,6 +48,7 @@ public class WorkPackageFilterTreeDialog extends FilteredCheckboxTreeDialog { private IAtsWorkPackage selection; XCheckBox showAll = new XCheckBox("Show All Work Packages"); private final Collection<IAtsWorkPackage> allValidWorkPackages; + private boolean removeFromWorkPackage; public WorkPackageFilterTreeDialog(String title, String message, Collection<IAtsWorkPackage> allValidWorkPackages) { super(title, message, new ArrayTreeContentProvider(), new StringLabelProvider()); @@ -98,9 +100,34 @@ public class WorkPackageFilterTreeDialog extends FilteredCheckboxTreeDialog { }; }); + createRemoveCheckbox(comp1); + return comp1; } + private void createRemoveCheckbox(Composite parent) { + + final XCheckBox checkbox = new XCheckBox("Remove from WorkPackage"); + checkbox.setFillHorizontally(true); + checkbox.set(removeFromWorkPackage); + checkbox.createWidgets(parent, 2); + + SelectionListener selectionListener = new SelectionAdapter() { + + @Override + public void widgetSelected(SelectionEvent e) { + removeFromWorkPackage = checkbox.isSelected(); + if (removeFromWorkPackage) { + getButton(getDefaultButtonIndex()).setEnabled(true); + } else { + getButton(getDefaultButtonIndex()).setEnabled(false); + updateStatusLabel(); + } + } + }; + checkbox.addSelectionListener(selectionListener); + } + @Override protected Result isComplete() { try { @@ -141,4 +168,8 @@ public class WorkPackageFilterTreeDialog extends FilteredCheckboxTreeDialog { } return filtered; } + + public boolean isRemoveFromWorkPackage() { + return removeFromWorkPackage; + } } diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/column/ev/ActivityIdColumnUI.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/column/ev/ActivityIdColumnUI.java index 41f31220ccb..27eddf7bb33 100644 --- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/column/ev/ActivityIdColumnUI.java +++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/column/ev/ActivityIdColumnUI.java @@ -122,9 +122,14 @@ public class ActivityIdColumnUI extends XViewerAtsColumn implements IMultiColumn uniqueWorkPackageOptions), commonWorkPackageOptions); dialog.setInput(); if (dialog.open() == Window.OK) { + IAtsWorkPackage workPackage = dialog.getSelection(); + boolean removeFromWorkPackage = dialog.isRemoveFromWorkPackage(); for (AbstractWorkflowArtifact awa : awas) { - IAtsWorkPackage workPackage = dialog.getSelection(); - awa.setSoleAttributeValue(AtsAttributeTypes.WorkPackageGuid, workPackage.getGuid()); + if (removeFromWorkPackage) { + awa.deleteAttributes(AtsAttributeTypes.WorkPackageGuid); + } else { + awa.setSoleAttributeValue(AtsAttributeTypes.WorkPackageGuid, workPackage.getGuid()); + } modified = true; } if (persist) { |