public void run() { if (firstLine != -1) { diffView.setLocation(DiffController.DiffPane.Base, DiffController.LocationType.LineNumber, firstLine); } else if (diffView.getDifferenceCount() > 0) { diffView.setLocation(DiffController.DiffPane.Base, DiffController.LocationType.DifferenceIndex, index); } } });
private void setLocation (final int lineNumber, final boolean showLineInLocal) { if (currentDiff == null) { return; } if (showLineInLocal) { currentDiff.setLocation(DiffController.DiffPane.Modified, DiffController.LocationType.LineNumber, lineNumber); } else { currentDiff.getJComponent().putClientProperty("diff.smartScrollDisabled", Boolean.TRUE); currentDiff.setLocation(DiffController.DiffPane.Base, DiffController.LocationType.LineNumber, lineNumber); } }
@Override public void run () { view.setLocation(DiffController.DiffPane.Modified, DiffController.LocationType.LineNumber, rightLine); if (leftLine != -1) { view.getJComponent().putClientProperty("diff.smartScrollDisabled", Boolean.TRUE); view.setLocation(DiffController.DiffPane.Base, DiffController.LocationType.LineNumber, leftLine); } } });
private boolean setLocation (DiffController view) { boolean locationSet = false; if (view == currentDiff && view.getDifferenceCount() > 0) { locationSet = true; currentDifferenceIndex = showLastDifference ? view.getDifferenceCount() - 1 : 0; view.setLocation(DiffController.DiffPane.Base, DiffController.LocationType.DifferenceIndex, currentDifferenceIndex); } return locationSet; } }
void onPrevButton() { if (currentDiff != null) { if (--currentDifferenceIndex < 0) { if (--currentIndex < 0) currentIndex = treeView.getRowCount() - 1; setDiffIndex(currentIndex, true); } else if (currentDifferenceIndex < currentDiff.getDifferenceCount()) { currentDiff.setLocation(DiffController.DiffPane.Modified, DiffController.LocationType.DifferenceIndex, currentDifferenceIndex); parent.updateActions(); } } else { if (--currentIndex < 0) currentIndex = treeView.getRowCount() - 1; setDiffIndex(currentIndex, true); } }
void onNextButton() { if (currentDiff != null) { if (++currentDifferenceIndex >= currentDiff.getDifferenceCount()) { if (++currentIndex >= treeView.getRowCount()) currentIndex = 0; setDiffIndex(currentIndex, false); } else { currentDiff.setLocation(DiffController.DiffPane.Modified, DiffController.LocationType.DifferenceIndex, currentDifferenceIndex); parent.updateActions(); } } else { if (++currentIndex >= treeView.getRowCount()) currentIndex = 0; setDiffIndex(currentIndex, false); } }
view.setLocation(DiffController.DiffPane.Modified, DiffController.LocationType.DifferenceIndex, location);
private void onPrevButton() { DiffController view = currentSetup.getView(); DiffNode prev = showingFileComponent() ? getActiveFileComponent().getPreviousNode(currentSetup.getNode()) : null; if (view != null) { int currentDifferenceIndex = view.getDifferenceIndex(); if (currentSetupDiffLengthChanged >= 0) { // jump to the previous difference only when the diffs did not change (no difference was removed) // otherwise the previous difference might be missed --currentDifferenceIndex; } currentSetupDiffLengthChanged = view.getDifferenceCount(); if (currentDifferenceIndex < 0) { if (prev != null) { setDiffIndex(prev.getSetup(), -1, true); } } else if (currentDifferenceIndex < view.getDifferenceCount()) { view.setLocation(DiffController.DiffPane.Modified, DiffController.LocationType.DifferenceIndex, currentDifferenceIndex); } } else { if (prev != null) { setDiffIndex(prev.getSetup(), -1, true); } } refreshComponents(); }
/** Next that is driven by visibility. It continues to next not yet visible difference. */ private void onNextButton() { DiffController view = currentSetup.getView(); DiffNode next = showingFileComponent() ? getActiveFileComponent().getNextNode(currentSetup.getNode()) : null; if (view != null) { int currentDifferenceIndex = view.getDifferenceIndex(); if (currentSetupDiffLengthChanged >= 0) { // jump to the next difference only when the diffs did not change (no difference was removed) // otherwise the next difference might be missed ++currentDifferenceIndex; } currentSetupDiffLengthChanged = view.getDifferenceCount(); if (currentDifferenceIndex >= view.getDifferenceCount()) { // also passes for view.getDifferenceCount() == 0 if (next != null) { setDiffIndex(next.getSetup(), 0, true); } } else { view.setLocation(DiffController.DiffPane.Modified, DiffController.LocationType.DifferenceIndex, currentDifferenceIndex); } } else { if (next != null) { setDiffIndex(next.getSetup(), 0, true); } } refreshComponents(); }