1497 break |
1497 break |
1498 if len(rule.conflicts) > 0: |
1498 if len(rule.conflicts) > 0: |
1499 rulesscr.addstr(y, 0, b" ", curses.color_pair(COLOR_WARN)) |
1499 rulesscr.addstr(y, 0, b" ", curses.color_pair(COLOR_WARN)) |
1500 else: |
1500 else: |
1501 rulesscr.addstr(y, 0, b" ", curses.COLOR_BLACK) |
1501 rulesscr.addstr(y, 0, b" ", curses.COLOR_BLACK) |
|
1502 |
1502 if y + start == selected: |
1503 if y + start == selected: |
|
1504 rollcolor = COLOR_ROLL_SELECTED |
1503 addln(rulesscr, y, 2, rule, curses.color_pair(COLOR_SELECTED)) |
1505 addln(rulesscr, y, 2, rule, curses.color_pair(COLOR_SELECTED)) |
1504 elif y + start == pos: |
1506 elif y + start == pos: |
|
1507 rollcolor = COLOR_ROLL_CURRENT |
1505 addln( |
1508 addln( |
1506 rulesscr, |
1509 rulesscr, |
1507 y, |
1510 y, |
1508 2, |
1511 2, |
1509 rule, |
1512 rule, |
1510 curses.color_pair(COLOR_CURRENT) | curses.A_BOLD, |
1513 curses.color_pair(COLOR_CURRENT) | curses.A_BOLD, |
1511 ) |
1514 ) |
1512 else: |
1515 else: |
|
1516 rollcolor = COLOR_ROLL |
1513 addln(rulesscr, y, 2, rule) |
1517 addln(rulesscr, y, 2, rule) |
|
1518 |
|
1519 if rule.action == b'roll': |
|
1520 rulesscr.addstr( |
|
1521 y, |
|
1522 2 + len(rule.prefix), |
|
1523 rule.desc, |
|
1524 curses.color_pair(rollcolor), |
|
1525 ) |
|
1526 |
1514 rulesscr.noutrefresh() |
1527 rulesscr.noutrefresh() |
1515 |
1528 |
1516 def renderstring(win, state, output, diffcolors=False): |
1529 def renderstring(win, state, output, diffcolors=False): |
1517 maxy, maxx = win.getmaxyx() |
1530 maxy, maxx = win.getmaxyx() |
1518 length = min(maxy - 1, len(output)) |
1531 length = min(maxy - 1, len(output)) |