def __init__(self, original_widget, title=''): """Draw a line around original_widget.""" tlcorner=None; tline=None; lline=None trcorner=None; blcorner=None; rline=None bline=None; brcorner=None def use_attr( a, t ): if a is not None: t = urwid.AttrWrap(t, a) return t tline = use_attr( tline, urwid.Columns([ ('fixed', 2, urwid.Divider(urwid.utf8decode("─"))), ('fixed', len(title), urwid.Text(title)), urwid.Divider(urwid.utf8decode("─"))])) bline = use_attr( bline, urwid.Divider(urwid.utf8decode("─"))) lline = use_attr( lline, urwid.SolidFill(urwid.utf8decode("│"))) rline = use_attr( rline, urwid.SolidFill(urwid.utf8decode("│"))) tlcorner = use_attr( tlcorner, urwid.Text(urwid.utf8decode("┌"))) trcorner = use_attr( trcorner, urwid.Text(urwid.utf8decode("┐"))) blcorner = use_attr( blcorner, urwid.Text(urwid.utf8decode("└"))) brcorner = use_attr( brcorner, urwid.Text(urwid.utf8decode("┘"))) top = urwid.Columns([ ('fixed', 1, tlcorner), tline, ('fixed', 1, trcorner) ]) middle = urwid.Columns( [('fixed', 1, lline), original_widget, ('fixed', 1, rline)], box_columns = [0,2], focus_column = 1) bottom = urwid.Columns([ ('fixed', 1, blcorner), bline, ('fixed', 1, brcorner) ]) pile = urwid.Pile([('flow',top),middle,('flow',bottom)], focus_item = 1) urwid.WidgetDecoration.__init__(self, original_widget) urwid.WidgetWrap.__init__(self, pile)
def __init__(self, original_widget, title=''): """Draw a line around original_widget.""" self.color = 'header' if int(urwid.__version__[0]) == 1: urwid.utf8decode = self.utf8decode tlcorner = None tline = None lline = None trcorner = None blcorner = None rline = None bline = None brcorner = None def use_attr(a, t): if a is not None: t = urwid.AttrWrap(t, a) return t tline = use_attr( tline, urwid.Columns([('fixed', 2, urwid.Divider(urwid.utf8decode("─"))), ('fixed', len(title), urwid.AttrWrap(urwid.Text(title), self.color)), urwid.Divider(urwid.utf8decode("─"))])) bline = use_attr(bline, urwid.Divider(urwid.utf8decode("─"))) lline = use_attr(lline, urwid.SolidFill(urwid.utf8decode("│"))) rline = use_attr(rline, urwid.SolidFill(urwid.utf8decode("│"))) tlcorner = use_attr(tlcorner, urwid.Text(urwid.utf8decode("┌"))) trcorner = use_attr(trcorner, urwid.Text(urwid.utf8decode("┐"))) blcorner = use_attr(blcorner, urwid.Text(urwid.utf8decode("└"))) brcorner = use_attr(brcorner, urwid.Text(urwid.utf8decode("┘"))) top = urwid.Columns([('fixed', 1, tlcorner), tline, ('fixed', 1, trcorner)]) middle = urwid.Columns([('fixed', 1, lline), original_widget, ('fixed', 1, rline)], box_columns=[0, 2], focus_column=1) bottom = urwid.Columns([('fixed', 1, blcorner), bline, ('fixed', 1, brcorner)]) pile = urwid.Pile([('flow', top), middle, ('flow', bottom)], focus_item=1) urwid.WidgetDecoration.__init__(self, original_widget) urwid.WidgetWrap.__init__(self, pile)
def __init__(self, original_widget, title=""): """Draw a line around original_widget.""" self.color = "header" if int(urwid.__version__[0]) == 1: urwid.utf8decode = self.utf8decode tlcorner = None tline = None lline = None trcorner = None blcorner = None rline = None bline = None brcorner = None def use_attr(a, t): if a is not None: t = urwid.AttrWrap(t, a) return t tline = use_attr( tline, urwid.Columns( [ ("fixed", 2, urwid.Divider(urwid.utf8decode("─"))), ("fixed", len(title), urwid.AttrWrap(urwid.Text(title), self.color)), urwid.Divider(urwid.utf8decode("─")), ] ), ) bline = use_attr(bline, urwid.Divider(urwid.utf8decode("─"))) lline = use_attr(lline, urwid.SolidFill(urwid.utf8decode("│"))) rline = use_attr(rline, urwid.SolidFill(urwid.utf8decode("│"))) tlcorner = use_attr(tlcorner, urwid.Text(urwid.utf8decode("┌"))) trcorner = use_attr(trcorner, urwid.Text(urwid.utf8decode("┐"))) blcorner = use_attr(blcorner, urwid.Text(urwid.utf8decode("└"))) brcorner = use_attr(brcorner, urwid.Text(urwid.utf8decode("┘"))) top = urwid.Columns([("fixed", 1, tlcorner), tline, ("fixed", 1, trcorner)]) middle = urwid.Columns( [("fixed", 1, lline), original_widget, ("fixed", 1, rline)], box_columns=[0, 2], focus_column=1 ) bottom = urwid.Columns([("fixed", 1, blcorner), bline, ("fixed", 1, brcorner)]) pile = urwid.Pile([("flow", top), middle, ("flow", bottom)], focus_item=1) urwid.WidgetDecoration.__init__(self, original_widget) urwid.WidgetWrap.__init__(self, pile)
def __init__(self, original_widget, title=''): self.color = 'header' if int(urwid.__version__[0]) == 1: urwid.utf8decode = self.utf8decode def use_attr(a, t): if a: t = urwid.AttrWrap(t, a) return t # top line tline = None tline_attr = urwid.Columns([('fixed', 2, urwid.Divider(urwid.utf8decode("─"))), ('fixed', len(title), urwid.AttrWrap(urwid.Text(title), self.color)), urwid.Divider(urwid.utf8decode("─")),]) tline = use_attr(tline, tline_attr) # bottom line bline = None bline = use_attr(bline, urwid.Divider(urwid.utf8decode("─"))) # left line lline = None lline = use_attr(lline, urwid.SolidFill(urwid.utf8decode("│"))) # right line rline = None rline = use_attr(rline, urwid.SolidFill(urwid.utf8decode("│"))) # top left corner tlcorner = None tlcorner = use_attr(tlcorner, urwid.Text(urwid.utf8decode("┌"))) # top right corner trcorner = None trcorner = use_attr(trcorner, urwid.Text(urwid.utf8decode("┐"))) # bottom left corner blcorner = None blcorner = use_attr(blcorner, urwid.Text(urwid.utf8decode("└"))) # bottom right corner brcorner = None brcorner = use_attr(brcorner, urwid.Text(urwid.utf8decode("┘"))) # top top = urwid.Columns([('fixed', 1, tlcorner), tline, ('fixed', 1, trcorner),]) # middle middle = urwid.Columns([('fixed', 1, lline), original_widget, ('fixed', 1, rline)], box_columns = [0,2], focus_column = 1) # bottom bottom = urwid.Columns([('fixed', 1, blcorner), bline, ('fixed', 1, brcorner)]) # widget decoration pile = urwid.Pile([('flow',top), middle, ('flow',bottom)], focus_item = 1) urwid.WidgetDecoration.__init__(self, original_widget) urwid.WidgetWrap.__init__(self, pile)