/b-gtk/fix-viz

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/b-gtk/fix-viz

« back to all changes in this revision

Viewing changes to viz/graph.py

  • Committer: Jelmer Vernooij
  • Date: 2006-05-19 16:56:46 UTC
  • mfrom: (0.1.25 gannotate)
  • Revision ID: jelmer@samba.org-20060519165646-0d867938fdbc9097
Merge in Dan Loda's gannotate plugin and put it in annotate/

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/usr/bin/python
1
2
# -*- coding: UTF-8 -*-
2
3
"""Directed graph production.
3
4
 
10
11
__author__    = "Scott James Remnant <scott@ubuntu.com>"
11
12
 
12
13
 
13
 
from bzrlib.revision import Revision
14
14
from bzrlib.tsort import merge_sort
15
15
 
16
16
 
17
 
class DummyRevision(Revision):
 
17
class DummyRevision(object):
18
18
    """Dummy bzr revision.
19
19
 
20
20
    Sometimes, especially in older bzr branches, a revision is referenced
22
22
    When this happens we use an instance of this class instead of the real
23
23
    Revision object (which we can't get).
24
24
    """
 
25
 
25
26
    def __init__(self, revid):
26
 
        super(DummyRevision, self).__init__(revid)
 
27
        self.revision_id = revid
 
28
        self.parent_ids = []
27
29
        self.committer = None
28
 
        self.timestamp = None
29
 
        self.timezone = None
30
 
        self.message = revid
 
30
        self.message = self.revision_id
31
31
 
32
32
 
33
33
class RevisionProxy(object):
77
77
        self.graph = {}
78
78
 
79
79
    def fill_caches(self):
 
80
        # FIXME: look at using repository.get_revision_graph_with_ghosts - RBC.
80
81
        graph = self.branch.repository.get_revision_graph_with_ghosts([self.start])
81
82
        for revid in graph.ghosts:
82
83
            self.cache_revision(DummyRevision(revid))