Example usage for com.intellij.openapi.diff SimpleDiffRequest compareFiles

List of usage examples for com.intellij.openapi.diff SimpleDiffRequest compareFiles

Introduction

In this page you can find the example usage for com.intellij.openapi.diff SimpleDiffRequest compareFiles.

Prototype

public static SimpleDiffRequest compareFiles(@NotNull VirtualFile file1, @NotNull VirtualFile file2,
            @NotNull Project project) 

Source Link

Usage

From source file:com.intellij.ide.diff.DiffElement.java

License:Apache License

@Nullable
protected DiffRequest createRequest(Project project, DiffElement element) throws IOException {
    final T src = getValue();
    final Object trg = element.getValue();
    if (src instanceof VirtualFile && trg instanceof VirtualFile && ((VirtualFile) src).getFileType().isBinary()
            && ((VirtualFile) trg).getFileType().isBinary()) {
        return createRequestForBinaries(project, ((VirtualFile) src), ((VirtualFile) trg));
    }/*  w ww.ja  v a2  s . c  o  m*/
    if (src instanceof VirtualFile) {
        if (((VirtualFile) src).getFileType().isBinary())
            return null;
        if (trg instanceof VirtualFile) {
            if (((VirtualFile) trg).getFileType().isBinary())
                return null;
            final FileDocumentManager mgr = FileDocumentManager.getInstance();
            if (mgr.getDocument((VirtualFile) src) != null && mgr.getDocument((VirtualFile) trg) != null) {
                return SimpleDiffRequest.compareFiles((VirtualFile) src, (VirtualFile) trg,
                        project == null ? ProjectManager.getInstance().getDefaultProject() : project);
            }
        }
    }
    final DiffContent srcContent = createDiffContent();
    final DiffContent trgContent = element.createDiffContent();

    if (srcContent != null && trgContent != null) {
        final SimpleDiffRequest request = new SimpleDiffRequest(project, "");
        request.setContents(srcContent, trgContent);
        return request;
    }
    return null;
}

From source file:com.intellij.ide.diff.DiffElement.java

License:Apache License

@Nullable
protected DiffRequest createRequestForBinaries(Project project, @NotNull VirtualFile src,
        @NotNull VirtualFile trg) {
    return SimpleDiffRequest.compareFiles(src, trg, project);
}