Changeset 57dfee27f841…
Parent 53e7dfe36d1f…
by
Changes to 3 files · Browse files at 57dfee27f841 Showing diff from parent 53e7dfe36d1f Diff from another changeset...
@@ -167,7 +167,11 @@ button.connect('toggled', self._filter_selected, 'tagged')
menu.append(button)
- button = gtk.RadioMenuItem(button, _('Show Parent Revisions'))
+ button = gtk.RadioMenuItem(button, _('Show Revision Ancestry'))
+ button.connect('toggled', self._filter_selected, 'ancestry')
+ menu.append(button)
+
+ button = gtk.RadioMenuItem(button, _('Show Working Parents'))
button.connect('toggled', self._filter_selected, 'parents')
menu.append(button)
@@ -304,6 +308,12 @@ elif self._filter == "no_merges":
self.opts['no_merges'] = True
self.graphview.refresh(False, [], self.opts)
+ elif self._filter == "ancestry":
+ if not self.currow:
+ return
+ range = [self.currow[treemodel.REVID], 0]
+ sopts = {'noheads': True, 'revrange': range}
+ self.graphview.refresh(True, None, sopts)
elif self._filter == "tagged":
tagged = []
for t, r in self.repo.tagslist():
|
@@ -14,7 +14,7 @@ def __get_parents(repo, rev):
return [x for x in repo.changelog.parentrevs(rev) if x != nullrev]
-def revision_grapher(repo, start_rev, stop_rev, branch=None):
+def revision_grapher(repo, start_rev, stop_rev, branch=None, noheads=False):
"""incremental revision grapher
This generator function walks through the revision history from
@@ -37,6 +37,9 @@ while curr_rev >= stop_rev:
# Compute revs and next_revs.
if curr_rev not in revs:
+ if noheads and curr_rev != start_rev:
+ curr_rev -= 1
+ continue
if branch:
ctx = repo.changectx(curr_rev)
if ctx.branch() != branch:
|
@@ -135,7 +135,9 @@ end = start
else:
start = len(self.repo.changelog) - 1
- self.grapher = revision_grapher(self.repo, start, end, pats)
+ noheads = opts.get('noheads', False)
+ self.grapher = revision_grapher(self.repo, start, end, pats,
+ noheads)
elif opts.get('revs', None):
self.grapher = dumb_log_generator(self.repo, opts['revs'])
else:
|
Loading...