List of usage examples for com.intellij.openapi.diff MergeRequest getResult
public abstract int getResult();
From source file:com.dci.intellij.dbn.editor.code.SourceCodeEditorManager.java
License:Apache License
private void showSourceDiffDialog(final String databaseContent, final SourceCodeFile virtualFile, final Editor editor) { new SimpleLaterInvocator() { public void run() { DiffRequestFactory diffRequestFactory = new DiffRequestFactoryImpl(); MergeRequest mergeRequest = diffRequestFactory.createMergeRequest(databaseContent, virtualFile.getContent(), virtualFile.getLastSavedContent(), virtualFile, virtualFile.getProject(), ActionButtonPresentation.APPLY, ActionButtonPresentation.CANCEL_WITH_PROMPT); mergeRequest.setVersionTitles(new String[] { "Database version", "Merge result", "Your version" }); final DBSchemaObject object = virtualFile.getObject(); mergeRequest.setWindowTitle("Version conflict resolution for " + object.getQualifiedNameWithType()); DiffManager.getInstance().getDiffTool().show(mergeRequest); int result = mergeRequest.getResult(); if (result == 0) { doUpdateSourceToDatabase(object, virtualFile, editor); //sourceCodeEditor.afterSave(); } else if (result == 1) { new WriteActionRunner() { public void run() { editor.getDocument().setText(virtualFile.getContent()); object.getStatus().set(DBObjectStatus.SAVING, false); }/* w ww.j a v a2s. c om*/ }.start(); } } }.start(); }
From source file:com.microsoft.alm.plugin.idea.tfvc.core.tfs.conflicts.DialogContentMerger.java
License:Open Source License
public boolean mergeContent(final ContentTriplet contentTriplet, final Project project, final VirtualFile localFile, final VcsRevisionNumber serverVersion) { ArgumentHelper.checkIfFileWriteable(new File(localFile.getPath())); final MergeDialogCustomizer c = new MergeDialogCustomizer(); final MergeRequest request = DiffRequestFactory.getInstance().createMergeRequest( StreamUtil.convertSeparators(contentTriplet.localContent), StreamUtil.convertSeparators(contentTriplet.serverContent), StreamUtil.convertSeparators(contentTriplet.baseContent), localFile, project, ActionButtonPresentation.APPLY, ActionButtonPresentation.CANCEL_WITH_PROMPT); request.setWindowTitle(c.getMergeWindowTitle(localFile)); request.setVersionTitles(new String[] { c.getLeftPanelTitle(localFile), c.getCenterPanelTitle(localFile), c.getRightPanelTitle(localFile, serverVersion) }); // TODO (Jetbrains) call canShow() first DiffManager.getInstance().getDiffTool().show(request); if (request.getResult() == DialogWrapper.OK_EXIT_CODE) { return true; } else {// ww w . ja v a2 s . c om request.restoreOriginalContent(); // TODO (Jetbrains) maybe MergeVersion.MergeDocumentVersion.restoreOriginalContent() should save document itself? ApplicationManager.getApplication().runWriteAction(new Runnable() { public void run() { final Document document = FileDocumentManager.getInstance().getDocument(localFile); if (document != null) { FileDocumentManager.getInstance().saveDocument(document); } } }); return false; } }
From source file:org.jetbrains.tfsIntegration.core.tfs.conflicts.DialogContentMerger.java
License:Apache License
public boolean mergeContent(Conflict conflict, ContentTriplet contentTriplet, Project project, final VirtualFile localFile, String localPath, VcsRevisionNumber serverVersion) { TFSVcs.assertTrue(localFile.isWritable(), localFile.getPresentableUrl() + " must be writable"); MergeDialogCustomizer c = new MergeDialogCustomizer(); MergeRequest request = DiffRequestFactory.getInstance().createMergeRequest( StreamUtil.convertSeparators(contentTriplet.localContent), StreamUtil.convertSeparators(contentTriplet.serverContent), StreamUtil.convertSeparators(contentTriplet.baseContent), localFile, project, ActionButtonPresentation.APPLY, ActionButtonPresentation.CANCEL_WITH_PROMPT); request.setWindowTitle(c.getMergeWindowTitle(localFile)); request.setVersionTitles(new String[] { c.getLeftPanelTitle(localFile), c.getCenterPanelTitle(localFile), c.getRightPanelTitle(localFile, serverVersion) }); // TODO call canShow() first DiffManager.getInstance().getDiffTool().show(request); if (request.getResult() == DialogWrapper.OK_EXIT_CODE) { return true; } else {//from ww w. j a va 2 s. co m request.restoreOriginalContent(); // TODO maybe MergeVersion.MergeDocumentVersion.restoreOriginalContent() should save document itself? ApplicationManager.getApplication().runWriteAction(new Runnable() { public void run() { final Document document = FileDocumentManager.getInstance().getDocument(localFile); if (document != null) { FileDocumentManager.getInstance().saveDocument(document); } } }); return false; } }