equal
deleted
inserted
replaced
|
1 #!/usr/bin/env python |
|
2 # |
|
3 # $Id: ncurses.py 36559 2004-07-18 05:56:09Z tim_one $ |
|
4 # |
|
5 # Interactive test suite for the curses module. |
|
6 # This script displays various things and the user should verify whether |
|
7 # they display correctly. |
|
8 # |
|
9 |
|
10 import curses |
|
11 from curses import textpad |
|
12 |
|
13 def test_textpad(stdscr, insert_mode=False): |
|
14 ncols, nlines = 8, 3 |
|
15 uly, ulx = 3, 2 |
|
16 if insert_mode: |
|
17 mode = 'insert mode' |
|
18 else: |
|
19 mode = 'overwrite mode' |
|
20 |
|
21 stdscr.addstr(uly-3, ulx, "Use Ctrl-G to end editing (%s)." % mode) |
|
22 stdscr.addstr(uly-2, ulx, "Be sure to try typing in the lower-right corner.") |
|
23 win = curses.newwin(nlines, ncols, uly, ulx) |
|
24 textpad.rectangle(stdscr, uly-1, ulx-1, uly + nlines, ulx + ncols) |
|
25 stdscr.refresh() |
|
26 |
|
27 box = textpad.Textbox(win, insert_mode) |
|
28 contents = box.edit() |
|
29 stdscr.addstr(uly+ncols+2, 0, "Text entered in the box\n") |
|
30 stdscr.addstr(repr(contents)) |
|
31 stdscr.addstr('\n') |
|
32 stdscr.addstr('Press any key') |
|
33 stdscr.getch() |
|
34 |
|
35 for i in range(3): |
|
36 stdscr.move(uly+ncols+2 + i, 0) |
|
37 stdscr.clrtoeol() |
|
38 |
|
39 def main(stdscr): |
|
40 stdscr.clear() |
|
41 test_textpad(stdscr, False) |
|
42 test_textpad(stdscr, True) |
|
43 |
|
44 |
|
45 if __name__ == '__main__': |
|
46 curses.wrapper(main) |