diff options
author | donald.g.dunne | 2014-04-10 22:49:55 +0000 |
---|---|---|
committer | Donald Dunne | 2014-04-15 16:56:46 +0000 |
commit | 7cbd2e175847c448f0ced0c0343d7f99539d3ce3 (patch) | |
tree | dd6444b76953f302f3d66fedadb73bb8cad80bf1 /plugins/org.eclipse.osee.framework.ui.skynet | |
parent | 88bb59c9afdb688debe25a7645bdb5579e6dc31c (diff) | |
download | org.eclipse.osee-7cbd2e175847c448f0ced0c0343d7f99539d3ce3.tar.gz org.eclipse.osee-7cbd2e175847c448f0ced0c0343d7f99539d3ce3.tar.xz org.eclipse.osee-7cbd2e175847c448f0ced0c0343d7f99539d3ce3.zip |
feature[ats_ATS41310]: Provide work package and action open to EV report
Change-Id: Ic735cfdbbc42edc9277434ff5e0aa7083c918192
Diffstat (limited to 'plugins/org.eclipse.osee.framework.ui.skynet')
5 files changed, 56 insertions, 7 deletions
diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/results/table/ResultsEditorTableTab.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/results/table/ResultsEditorTableTab.java index f3ed13f836c..97f03be18a4 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/results/table/ResultsEditorTableTab.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/results/table/ResultsEditorTableTab.java @@ -26,6 +26,7 @@ import org.eclipse.osee.framework.logging.OseeLog; import org.eclipse.osee.framework.plugin.core.util.OseeData; import org.eclipse.osee.framework.ui.skynet.internal.Activator; import org.eclipse.osee.framework.ui.skynet.results.ResultsEditor; +import org.eclipse.osee.framework.ui.skynet.results.table.xresults.IResultsEditorTableListener; import org.eclipse.osee.framework.ui.skynet.results.table.xresults.ResultsXViewer; import org.eclipse.osee.framework.ui.skynet.results.table.xresults.ResultsXViewerContentProvider; import org.eclipse.osee.framework.ui.skynet.results.table.xresults.ResultsXViewerFactory; @@ -61,14 +62,20 @@ public class ResultsEditorTableTab implements IResultsEditorTableTab { private XViewerFactory xViewerFactory; private final ITreeContentProvider contentProvider; private final IResultsEditorLabelProvider labelProvider; + private final List<IResultsEditorTableListener> listeners; public ResultsEditorTableTab(String tabName, List<XViewerColumn> columns, Collection<IResultsXViewerRow> rows, ITreeContentProvider contentProvider, IResultsEditorLabelProvider labelProvider) { + this(tabName, columns, rows, contentProvider, labelProvider, null); + } + + public ResultsEditorTableTab(String tabName, List<XViewerColumn> columns, Collection<IResultsXViewerRow> rows, ITreeContentProvider contentProvider, IResultsEditorLabelProvider labelProvider, List<IResultsEditorTableListener> listeners) { this.tabName = tabName; this.columns = columns; this.rows = rows; this.xViewerFactory = new ResultsXViewerFactory(columns); - this.contentProvider = contentProvider; + this.contentProvider = contentProvider == null ? new ResultsXViewerContentProvider() : contentProvider; this.labelProvider = labelProvider; + this.listeners = listeners == null ? new ArrayList<IResultsEditorTableListener>() : listeners; } public ResultsEditorTableTab(String tabName) { @@ -76,7 +83,7 @@ public class ResultsEditorTableTab implements IResultsEditorTableTab { } public ResultsEditorTableTab(String tabName, List<XViewerColumn> columns, Collection<IResultsXViewerRow> rows) { - this(tabName, columns, rows, new ResultsXViewerContentProvider(), null); + this(tabName, columns, rows, new ResultsXViewerContentProvider(), null, null); } public void addColumn(XViewerColumn xViewerColumn) { @@ -115,6 +122,9 @@ public class ResultsEditorTableTab implements IResultsEditorTableTab { resultsXViewer = new ResultsXViewer(comp, SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION, getTableColumns(), xViewerFactory); resultsXViewer.getTree().setLayoutData(new GridData(GridData.FILL_BOTH)); + for (IResultsEditorTableListener listener : listeners) { + resultsXViewer.addListener(listener); + } resultsXViewer.setContentProvider(contentProvider); XViewerLabelProvider provider = null; diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/results/table/xresults/IResultsEditorTableListener.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/results/table/xresults/IResultsEditorTableListener.java new file mode 100644 index 00000000000..b126ac07cec --- /dev/null +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/results/table/xresults/IResultsEditorTableListener.java @@ -0,0 +1,20 @@ +/******************************************************************************* + * Copyright (c) 2013 Boeing. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Boeing - initial API and implementation + *******************************************************************************/ +package org.eclipse.osee.framework.ui.skynet.results.table.xresults; + +import java.util.ArrayList; +import org.eclipse.osee.framework.ui.skynet.results.table.ResultsXViewerRow; + +public interface IResultsEditorTableListener { + + void handleDoubleClick(ArrayList<ResultsXViewerRow> selectedRows); + +} diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/results/table/xresults/ResultsXViewer.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/results/table/xresults/ResultsXViewer.java index 970e2785edb..f04e7529286 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/results/table/xresults/ResultsXViewer.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/results/table/xresults/ResultsXViewer.java @@ -31,16 +31,28 @@ import org.eclipse.swt.widgets.TreeItem; */ public class ResultsXViewer extends XViewer { + List<IResultsEditorTableListener> listeners = new ArrayList<IResultsEditorTableListener>(); + public ResultsXViewer(Composite parent, int style, List<XViewerColumn> xColumns, XViewerFactory xViewerFactory) { super(parent, style, xViewerFactory); } + public void addListener(IResultsEditorTableListener listener) { + listeners.add(listener); + } + @Override public void handleDoubleClick() { - if (getSelectedRows().size() > 0) { - Object data = getSelectedRows().iterator().next().getData(); - if (data instanceof Artifact) { - RendererManager.openInJob((Artifact) data, PresentationType.DEFAULT_OPEN); + if (listeners.isEmpty()) { + if (getSelectedRows().size() > 0) { + Object data = getSelectedRows().iterator().next().getData(); + if (data instanceof Artifact) { + RendererManager.openInJob((Artifact) data, PresentationType.DEFAULT_OPEN); + } + } + } else { + for (IResultsEditorTableListener listener : listeners) { + listener.handleDoubleClick(getSelectedRows()); } } } diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XCombo.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XCombo.java index 58698993159..ef106a45bc9 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XCombo.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/XCombo.java @@ -105,7 +105,6 @@ public class XCombo extends XButtonCommon { dataCombo = new Combo(parent, SWT.DROP_DOWN | SWT.READ_ONLY | SWT.V_SCROLL); dataCombo.setItems(displayArray); dataCombo.setVisibleItemCount(Math.min(displayArray.length, 45)); - gd = new GridData(); if (fillHorizontally) { gd.grabExcessHorizontalSpace = true; @@ -311,4 +310,8 @@ public class XCombo extends XButtonCommon { public Object getData() { return dataCombo.getText(); } + + public void setDefaultValue(String defaultValue) { + this.data = defaultValue; + } }
\ No newline at end of file diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/util/FrameworkXWidgetProvider.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/util/FrameworkXWidgetProvider.java index f90a3d951cb..ecd806c1bd6 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/util/FrameworkXWidgetProvider.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/util/FrameworkXWidgetProvider.java @@ -319,6 +319,10 @@ public final class FrameworkXWidgetProvider { combo.setDefaultSelectionAllowed(true); } xWidget = combo; + String defaultValue = xWidgetLayoutData.getDefaultValue(); + if (Strings.isValid(defaultValue)) { + combo.setDefaultValue(defaultValue); + } } else { throw new OseeArgumentException("Invalid XCombo. Must be \"XCombo(option1,option2,option3)\""); } |