/** * Performs the comparison described by the given input and * shows the result in the given editor. * * @param input the input on which to open the compare editor * @param editor the compare editor to reuse or null to create a new one * @since 3.0 */ public static void reuseCompareEditor(CompareEditorInput input, IReusableEditor editor) { reuseCompareEditor(input, editor, true); }
public static void openCompareEditor(CompareEditorInput input, IWorkbenchPage page, boolean reuseEditorIfPossible) { if (page == null || input == null) return; IEditorPart editor = Utils.findReusableCompareEditor(input, page, new Class[] { SyncInfoCompareInput.class, ModelCompareEditorInput.class }); // reuse editor only for single selection if(editor != null && reuseEditorIfPossible) { IEditorInput otherInput = editor.getEditorInput(); if(otherInput.equals(input)) { // simply provide focus to editor page.activate(editor); } else { // if editor is currently not open on that input either re-use existing CompareUI.reuseCompareEditor(input, (IReusableEditor)editor); page.activate(editor); } } else { CompareUI.openCompareEditorOnPage(input, page); } }
public static void openCompareEditor(CompareEditorInput input, IWorkbenchPage page, boolean reuseEditorIfPossible) { if (page == null || input == null) return; IEditorPart editor = findReusableCompareEditor(input, page); // reuse editor only for single selection if(editor != null && reuseEditorIfPossible) { IEditorInput otherInput = editor.getEditorInput(); if(otherInput.equals(input)) { // simply provide focus to editor page.activate(editor); } else { // if editor is currently not open on that input either re-use existing CompareUI.reuseCompareEditor(input, (IReusableEditor)editor); page.activate(editor); } } else { CompareUI.openCompareEditorOnPage(input, page); } }
private void openInCompare(ITypedElement ancestor, ITypedElement left, ITypedElement right) { IWorkbenchPage workBenchPage = getTargetPage(); CompareEditorInput input = new SaveablesCompareEditorInput(ancestor, left, right, workBenchPage); IEditorPart editor = Utils.findReusableCompareEditor(input, workBenchPage, new Class[] { CompareFileRevisionEditorInput.class }); if (editor != null) { IEditorInput otherInput = editor.getEditorInput(); if (otherInput.equals(input)) { // simply provide focus to editor workBenchPage.activate(editor); } else { // if editor is currently not open on that input either re-use // existing CompareUI.reuseCompareEditor(input, (IReusableEditor) editor); workBenchPage.activate(editor); } } else { CompareUI.openCompareEditor(input); } }
private void openInCompare(ITypedElement left, ITypedElement right) { CompareEditorInput input = createCompareEditorInput(left, right, page.getSite().getPage()); IWorkbenchPage workBenchPage = page.getSite().getPage(); IEditorPart editor = findReusableCompareEditor(workBenchPage); if (editor != null) { IEditorInput otherInput = editor.getEditorInput(); if (otherInput.equals(input)) { // simply provide focus to editor workBenchPage.activate(editor); } else { // if editor is currently not open on that input either re-use // existing CompareUI.reuseCompareEditor(input, (IReusableEditor) editor); workBenchPage.activate(editor); } } else { CompareUI.openCompareEditor(input); } }
/** * @param workBenchPage * @param input */ public static void openInCompare(IWorkbenchPage workBenchPage, CompareEditorInput input) { IEditorPart editor = findReusableCompareEditor(input, workBenchPage); if (editor != null) { IEditorInput otherInput = editor.getEditorInput(); if (otherInput.equals(input)) { // simply provide focus to editor if (OpenStrategy.activateOnOpen()) workBenchPage.activate(editor); else workBenchPage.bringToTop(editor); } else { // if editor is currently not open on that input either re-use // existing CompareUI.reuseCompareEditor(input, (IReusableEditor) editor); if (OpenStrategy.activateOnOpen()) workBenchPage.activate(editor); else workBenchPage.bringToTop(editor); } } else { CompareUI.openCompareEditor(input); } }
private void openInCompare(ITypedElement left, ITypedElement right) { CompareEditorInput input = createCompareEditorInput(left, right, page.getSite().getPage()); IWorkbenchPage workBenchPage = page.getSite().getPage(); IEditorPart editor = Utils.findReusableCompareEditor(input, workBenchPage, new Class[] { CompareFileRevisionEditorInput.class }); if (editor != null) { IEditorInput otherInput = editor.getEditorInput(); if (otherInput.equals(input)) { // simply provide focus to editor if (OpenStrategy.activateOnOpen()) workBenchPage.activate(editor); else workBenchPage.bringToTop(editor); } else { // if editor is currently not open on that input either re-use // existing CompareUI.reuseCompareEditor(input, (IReusableEditor) editor); if (OpenStrategy.activateOnOpen()) workBenchPage.activate(editor); else workBenchPage.bringToTop(editor); } } else { CompareUI.openCompareEditor(input, OpenStrategy.activateOnOpen()); } }