public void actionPerformed(AnActionEvent e) { final DataContext dc = e.getDataContext(); if ((!isVisible(dc)) || (!isEnabled(dc))) return; final Project project = CommonDataKeys.PROJECT.getData(dc); final Iterable<Pair<VirtualFilePointer, FileStatus>> iterable = VcsDataKeys.UPDATE_VIEW_FILES_ITERABLE.getData(dc); final Label before = (Label) VcsDataKeys.LABEL_BEFORE.getData(dc); final Label after = (Label) VcsDataKeys.LABEL_AFTER.getData(dc); final String selectedUrl = VcsDataKeys.UPDATE_VIEW_SELECTED_PATH.getData(dc); ShowDiffAction.showDiffForChange( new MyIterableWrapper(iterable.iterator(), before, after), new MySelectionMarker(selectedUrl), project, new ShowDiffUIContext(true)); }
public static void showDiffForChange( final Change[] changes, int index, final Project project, @NotNull ShowDiffUIContext context) { final Change selected = index >= 0 ? changes[index] : null; /*if (isBinaryDiff(project, changes, index)) { showBinaryDiff(project, changes[index]); return; }*/ showDiffForChange( Arrays.asList(changes), new Condition<Change>() { @Override public boolean value(final Change change) { return selected != null && selected.equals(change); } }, project, context); }
public static void showDiffForChange( final Change[] changes, final int index, final Project project) { showDiffForChange(changes, index, project, new ShowDiffUIContext(true)); }