| | 102 | elif msg.startswith('brings'): |
|---|
| | 103 | bring = chgset.prop('st:bring') |
|---|
| | 104 | if not bring: |
|---|
| | 105 | continue |
|---|
| | 106 | try: |
|---|
| | 107 | revisions = [int(c) for c in bring.split(',')] |
|---|
| | 108 | revisions.sort() |
|---|
| | 109 | ychg = enhancer._repos.changeset(revisions[-1]) |
|---|
| | 110 | if not ychg: |
|---|
| | 111 | continue |
|---|
| | 112 | brname = ychg.branchname |
|---|
| | 113 | srcbranch = enhancer._repos.branch(brname) |
|---|
| | 114 | if not srcbranch: |
|---|
| | 115 | continue |
|---|
| | 116 | brrevs = [c.rev for c in srcbranch.changesets()] |
|---|
| | 117 | valrevs = [r for r in revisions if r in brrevs] |
|---|
| | 118 | fchg = enhancer._repos.changeset(valrevs[0]) |
|---|
| | 119 | lchg = enhancer._repos.changeset(valrevs[-1]) |
|---|
| | 120 | enhancer._groups.append((fchg,lchg)) |
|---|
| | 121 | enhancer._brings.append((lchg,chgset)) |
|---|
| | 122 | except ValueError: |
|---|
| | 123 | pass |
|---|
| | 124 | except IndexError: |
|---|
| | 125 | pass |
|---|
| | 126 | |
|---|
| | 166 | |
|---|
| | 167 | for (srcchg, dstchg) in enhancer._brings: |
|---|
| | 168 | svgsrcbr = \ |
|---|
| | 169 | enhancer._svgrevtree.svgbranch(branchname=srcchg.branchname) |
|---|
| | 170 | svgdstbr = \ |
|---|
| | 171 | enhancer._svgrevtree.svgbranch(branchname=dstchg.branchname) |
|---|
| | 172 | if not svgsrcbr or not svgdstbr: |
|---|
| | 173 | continue |
|---|
| | 174 | svgsrcchg = svgsrcbr.svgchangeset(srcchg) |
|---|
| | 175 | svgdstchg = svgdstbr.svgchangeset(dstchg) |
|---|
| | 176 | op = SvgOperation(enhancer._svgrevtree, svgsrcchg, svgdstchg, |
|---|
| | 177 | 'orange') |
|---|
| | 178 | enhancer._widgets[2].append(op) |
|---|