self.start()
class CursesAccountFrame:
- def __init__(s, master, accountname):
+ def __init__(s, master, accountname, ui):
s.c = master
s.children = []
s.accountname = accountname
+ s.ui = ui
def drawleadstr(s, secs = None):
if secs == None:
s.location += 1
def getnewthreadframe(s):
- tf = CursesThreadFrame(s.c, s.window, 0, s.location)
+ tf = CursesThreadFrame(s.c, s.ui, s.window, 0, s.location)
s.location += 1
s.children.append(tf)
return tf
s.sleeping_abort = 1
class CursesThreadFrame:
- def __init__(s, master, window, y, x):
+ def __init__(s, master, ui, window, y, x):
"""master should be a CursesUtil object."""
s.c = master
+ s.ui = ui
s.window = window
s.x = x
s.y = y
if self.getcolor() == 'black':
self.window.addstr(self.y, self.x, ' ', self.color)
else:
- self.window.addstr(self.y, self.x, '.', self.color)
+ self.window.addstr(self.y, self.x, self.ui.config.getdefault("ui.Curses.Blinkenlights", "statuschar", '.'), self.color)
self.c.stdscr.move(self.c.height - 1, self.c.width - 1)
self.window.refresh()
self.c.locked(lockedstuff)
sys.exit(0)
def keypress(s, key):
- if key > 255:
+ if key < 1 or key > 255:
return
if chr(key) == 'q':
return s.af[accountname]
# New one.
- s.af[accountname] = CursesAccountFrame(s.c, accountname)
+ s.af[accountname] = CursesAccountFrame(s.c, accountname, s)
s.c.lock()
try:
s.c.reset()
return
if color:
s.gettf().setcolor(color)
+ elif s.gettf().getcolor() == 'black':
+ s.gettf().setcolor('gray')
s._addline(msg, s.gettf().getcolorpair())
s.logwindow.refresh()
finally:
finally:
s.c.unlock()
- def terminate(s, exitstatus = 0):
+ def terminate(s, exitstatus = 0, errortitle = None, errormsg = None):
s.c.stop()
- UIBase.terminate(s, exitstatus)
+ UIBase.terminate(s, exitstatus = exitstatus, errortitle = errortitle, errormsg = errormsg)
def threadException(s, thread):
s.c.stop()