##// END OF EJS Templates
Walter's ipipe patch #6:...
vivainio -
Show More
@@ -622,15 +622,19 b' class ichain(Pipe):'
622 return itertools.chain(*self.iters)
622 return itertools.chain(*self.iters)
623
623
624 def __xrepr__(self, mode):
624 def __xrepr__(self, mode):
625 yield (-1, True)
625 if mode == "header" or mode == "footer":
626 if mode == "header" or mode == "footer":
626 parts = []
627 for (i, item) in enumerate(self.iters):
627 for item in self.iters:
628 if i:
628 part = xrepr(item, mode)
629 yield (style_default, "+")
630 if isinstance(item, Pipe):
631 yield (style_default, "(")
632 for part in xrepr(item, mode):
633 yield part
629 if isinstance(item, Pipe):
634 if isinstance(item, Pipe):
630 part = "(%s)" % part
635 yield (style_default, ")")
631 parts.append(part)
636 else:
632 return "+".join(parts)
637 yield (style_default, repr(self))
633 return repr(self)
634
638
635 def __repr__(self):
639 def __repr__(self):
636 args = ", ".join([repr(it) for it in self.iters])
640 args = ", ".join([repr(it) for it in self.iters])
@@ -1101,7 +1105,14 b' class igrpentry(object):'
1101 def __xrepr__(self, mode):
1105 def __xrepr__(self, mode):
1102 yield (-1, True)
1106 yield (-1, True)
1103 if mode == "header" or mode == "footer" or mode == "cell":
1107 if mode == "header" or mode == "footer" or mode == "cell":
1104 yield (style_default, "group %s" % self.name)
1108 yield (style_default, "group ")
1109 try:
1110 yield (style_default, self.name)
1111 except KeyError:
1112 if isinstance(self._id, basestring):
1113 yield (style_default, self.name_id)
1114 else:
1115 yield (style_type_number, str(self._id))
1105 else:
1116 else:
1106 yield (style_default, repr(self))
1117 yield (style_default, repr(self))
1107
1118
@@ -1647,9 +1658,11 b' class XMode(object):'
1647 self.mode, id(self))
1658 self.mode, id(self))
1648
1659
1649 def __xrepr__(self, mode):
1660 def __xrepr__(self, mode):
1661 yield (-1, True)
1650 if mode == "header" or mode == "footer":
1662 if mode == "header" or mode == "footer":
1651 return self.title
1663 yield (style_default, self.title)
1652 return repr(self)
1664 else:
1665 yield (style_default, repr(self))
1653
1666
1654 def __xattrs__(self, mode):
1667 def __xattrs__(self, mode):
1655 if mode == "detail":
1668 if mode == "detail":
@@ -2888,7 +2901,12 b' if curses is not None:'
2888 posx += self.addstr(posy, posx, 0, endx, " | ", self.style_footer)
2901 posx += self.addstr(posy, posx, 0, endx, " | ", self.style_footer)
2889 posx += self.addstr(posy, posx, 0, endx, _attrname(attrname), self.style_footer)
2902 posx += self.addstr(posy, posx, 0, endx, _attrname(attrname), self.style_footer)
2890 posx += self.addstr(posy, posx, 0, endx, ": ", self.style_footer)
2903 posx += self.addstr(posy, posx, 0, endx, ": ", self.style_footer)
2891 attr = _getattr(item, attrname)
2904 try:
2905 attr = _getattr(item, attrname)
2906 except (SystemExit, KeyboardInterrupt):
2907 raise
2908 except Exception, exc:
2909 attr = exc
2892 for (nostyle, text) in xrepr(attr, "footer"):
2910 for (nostyle, text) in xrepr(attr, "footer"):
2893 if not isinstance(nostyle, int):
2911 if not isinstance(nostyle, int):
2894 posx += self.addstr(posy, posx, 0, endx, text, self.style_footer)
2912 posx += self.addstr(posy, posx, 0, endx, text, self.style_footer)
General Comments 0
You need to be logged in to leave comments. Login now