diff options
author | donald.g.dunne | 2020-12-15 05:20:07 +0000 |
---|---|---|
committer | Donald Dunne | 2020-12-15 16:34:48 +0000 |
commit | 37b2181f8d93eb29e912ea5f0bb5e48df21dfd8a (patch) | |
tree | e2fc03f2d570e4ec74b5a31486dc2b1606d6002e | |
parent | 53fefcf61b9b6aafff1f840f28adf53e7dc5f3ed (diff) | |
download | org.eclipse.osee-37b2181f8d93eb29e912ea5f0bb5e48df21dfd8a.tar.gz org.eclipse.osee-37b2181f8d93eb29e912ea5f0bb5e48df21dfd8a.tar.xz org.eclipse.osee-37b2181f8d93eb29e912ea5f0bb5e48df21dfd8a.zip |
bug[TW17860]: Merge Manager not refreshing on Edit Merge menu
Change-Id: Ibd04f6a355ca6725e3eb21a142fceebc53466818
5 files changed, 37 insertions, 41 deletions
diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeCustomMenu.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeCustomMenu.java index 3ad3bdfde03..a5214f28279 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeCustomMenu.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeCustomMenu.java @@ -58,6 +58,11 @@ import org.eclipse.ui.menus.CommandContributionItem; public class MergeCustomMenu extends XViewerCustomMenu { private boolean isInitialized = false; + private final MergeView mergeView; + + public MergeCustomMenu(MergeView mergeView) { + this.mergeView = mergeView; + } private IWorkbenchPartSite getSite() { return PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActivePart().getSite(); @@ -107,8 +112,8 @@ public class MergeCustomMenu extends XViewerCustomMenu { createDestinationAsMergeMenuItem(menuManager, handlerService); menuManager.add(new Separator()); - createEditArtifactMenuItem(menuManager, handlerService); - createResetConflictMenuItem(menuManager, handlerService); + createEditMergedValueHandler(menuManager, handlerService); + createClearMergedValueHandler(menuManager, handlerService); menuManager.add(new Separator()); createThreeWayMergeMenuItem(menuManager, handlerService); @@ -261,7 +266,7 @@ public class MergeCustomMenu extends XViewerCustomMenu { } private MergeXWidget getMergeXWiget() { - return ((MergeXViewer) xViewer).getXUserRoleViewer(); + return ((MergeXViewer) xViewer).getMergeXWidget(); } private void createDiffMenuItem(MenuManager menuManager, IHandlerService handlerService) { @@ -299,7 +304,7 @@ public class MergeCustomMenu extends XViewerCustomMenu { handlerService.activateHandler(addPreviewItems(subMenuManager, command, handler), handler); } - private void createEditArtifactMenuItem(MenuManager menuManager, IHandlerService handlerService) { + private void createEditMergedValueHandler(MenuManager menuManager, IHandlerService handlerService) { IHandler handler = new MenuSelectionEnabledHandler(menuManager) { @Override public void executeWithException(AttributeConflict attributeConflict) { @@ -308,7 +313,7 @@ public class MergeCustomMenu extends XViewerCustomMenu { RendererManager.openInJob(attributeConflict.getArtifact(), PresentationType.SPECIALIZED_EDIT); attributeConflict.markStatusToReflectEdit(); - + mergeView.getMergeXWidget().loadTable(); } } }; @@ -389,7 +394,7 @@ public class MergeCustomMenu extends XViewerCustomMenu { handlerService.activateHandler(commandId, handler); } - private void createResetConflictMenuItem(MenuManager menuManager, IHandlerService handlerService) { + private void createClearMergedValueHandler(MenuManager menuManager, IHandlerService handlerService) { IHandler handler = new MergeManagerConflictHandler(menuManager, "Are you sure you want to reset %s conflict(s)?", ConflictOperationEnum.RESET); String commandId = addClearMergedValueMenuItem(menuManager, handler); diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeView.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeView.java index 2c5e5e57474..c703d3f6896 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeView.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeView.java @@ -142,7 +142,7 @@ public class MergeView extends GenericViewPart implements IBranchEventListener, layout.marginHeight = 0; parent.setLayout(layout); parent.setLayoutData(new GridData(GridData.FILL_BOTH)); - mergeXWidget = new MergeXWidget(); + mergeXWidget = new MergeXWidget(this); mergeXWidget.setDisplayLabel(false); mergeXWidget.createWidgets(parent, 1); @@ -426,4 +426,8 @@ public class MergeView extends GenericViewPart implements IBranchEventListener, } + public MergeXWidget getMergeXWidget() { + return mergeXWidget; + } + } diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeXViewer.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeXViewer.java index 03033fb0c96..f08e7673633 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeXViewer.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeXViewer.java @@ -68,14 +68,14 @@ import org.eclipse.swt.widgets.Widget; */ public class MergeXViewer extends XViewer { public static final Conflict[] EMPTY_CONFLICTS = new Conflict[0]; - private final MergeXWidget mergeXWidget; private Conflict[] conflicts = EMPTY_CONFLICTS; private ConflictResolutionWizard conWizard; private XMergeLabelProvider labelProvider; + private final MergeView mergeView; - public MergeXViewer(Composite parent, int style, MergeXWidget xMergeViewer, IOseeTreeReportProvider reportProvider) { - super(parent, style, new MergeXViewerFactory(reportProvider)); - this.mergeXWidget = xMergeViewer; + public MergeXViewer(Composite parent, int style, MergeView mergeView, IOseeTreeReportProvider reportProvider) { + super(parent, style, new MergeXViewerFactory(reportProvider, mergeView)); + this.mergeView = mergeView; } @Override @@ -100,19 +100,13 @@ public class MergeXViewer extends XViewer { }); } - /** - * Release resources - */ @Override public void dispose() { getLabelProvider().dispose(); } - /** - * @return the xUserRoleViewer - */ - public MergeXWidget getXUserRoleViewer() { - return mergeXWidget; + public MergeXWidget getMergeXWidget() { + return mergeView.getMergeXWidget(); } @Override @@ -120,10 +114,6 @@ public class MergeXViewer extends XViewer { setSorter(new MergeXViewerSorter(this, labelProvider)); } - // public Conflict[] getTransactionArtifactChanges() { - // return conflicts; - // } - private boolean hasInteractiveIcon(TreeColumn treeColumn) { return isXViewerColumn(treeColumn, MergeXViewerFactory.Source) // || isXViewerColumn(treeColumn, MergeXViewerFactory.Destination) // @@ -183,7 +173,7 @@ public class MergeXViewer extends XViewer { } } } - mergeXWidget.loadTable(); + mergeView.getMergeXWidget().loadTable(); } private CompareHandler getCompareHandler(AttributeConflict attributeConflict) { diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeXViewerFactory.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeXViewerFactory.java index 37824aec5cb..f4bf6a43399 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeXViewerFactory.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeXViewerFactory.java @@ -26,6 +26,7 @@ import org.eclipse.osee.framework.ui.skynet.widgets.xviewer.skynet.SkynetXViewer public class MergeXViewerFactory extends SkynetXViewerFactory { public final static String NAMESPACE = "MergeXViewer"; + private final MergeView mergeView; public final static XViewerColumn Conflict_Resolved = new XViewerColumn("framework.merge.conflictResolved", "Conflict Resolution", 43, XViewerAlign.Left, true, SortDataType.String, false, null); @@ -44,15 +45,16 @@ public class MergeXViewerFactory extends SkynetXViewerFactory { public final static XViewerColumn Art_Id = new XViewerColumn("framework.merge.artId", "Artifact Id", 75, XViewerAlign.Left, true, SortDataType.String, false, null); - public MergeXViewerFactory(IOseeTreeReportProvider reportProvider) { + public MergeXViewerFactory(IOseeTreeReportProvider reportProvider, MergeView mergeView) { super(NAMESPACE, reportProvider); + this.mergeView = mergeView; registerColumns(Conflict_Resolved, Artifact_Name, Type, Change_Item, Source, Destination, Merged, Art_Id); registerAllAttributeColumns(); } @Override public XViewerCustomMenu getXViewerCustomMenu() { - return new MergeCustomMenu(); + return new MergeCustomMenu(mergeView); } } diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeXWidget.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeXWidget.java index f293f1d5a7e..2803a430b20 100644 --- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeXWidget.java +++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/widgets/xmerge/MergeXWidget.java @@ -109,8 +109,9 @@ public class MergeXWidget extends GenericXWidget implements IOseeTreeReportProvi private IToolBarManager toolBarManager; private final static String CONFLICTS_RESOLVED = "\nAll Conflicts Are Resolved"; - public MergeXWidget() { + public MergeXWidget(MergeView mergeView) { super("Merge Manager"); + this.mergeView = mergeView; } @Override @@ -129,8 +130,14 @@ public class MergeXWidget extends GenericXWidget implements IOseeTreeReportProvi createCompletionComposite(mainComp); - mergeXViewer = new MergeXViewer(mainComp, SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION, this, this); - createMergeXViewer(); + mergeXViewer = new MergeXViewer(mainComp, SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION, mergeView, this); + mergeXViewer.getTree().setLayoutData(new GridData(GridData.FILL_BOTH)); + XMergeLabelProvider labelProvider = new XMergeLabelProvider(mergeXViewer); + mergeXViewer.addLabelProvider(labelProvider); + mergeXViewer.setSorter(new MergeXViewerSorter(mergeXViewer, labelProvider)); + mergeXViewer.setContentProvider(new XMergeContentProvider()); + mergeXViewer.setLabelProvider(new XMergeLabelProvider(mergeXViewer)); + createTaskActionBar(taskComp); if (toolkit != null) { toolkit.adapt(mergeXViewer.getStatusLabel(), false, false); @@ -179,15 +186,6 @@ public class MergeXWidget extends GenericXWidget implements IOseeTreeReportProvi } } - private void createMergeXViewer() { - mergeXViewer.getTree().setLayoutData(new GridData(GridData.FILL_BOTH)); - XMergeLabelProvider labelProvider = new XMergeLabelProvider(mergeXViewer); - mergeXViewer.addLabelProvider(labelProvider); - mergeXViewer.setSorter(new MergeXViewerSorter(mergeXViewer, labelProvider)); - mergeXViewer.setContentProvider(new XMergeContentProvider()); - mergeXViewer.setLabelProvider(new XMergeLabelProvider(mergeXViewer)); - } - private void createTree(Tree tree) { GridData gridData = new GridData(GridData.FILL_BOTH); gridData.heightHint = 100; @@ -367,9 +365,6 @@ public class MergeXWidget extends GenericXWidget implements IOseeTreeReportProvi return mergeXViewer.getTree().getItemCount() == 0; } - /** - * @return Returns the xViewer. - */ public MergeXViewer getXViewer() { return mergeXViewer; } |