mirror of
				https://github.com/python/cpython.git
				synced 2025-11-03 23:21:29 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			46 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
#!/usr/bin/env python3
 | 
						|
#
 | 
						|
# $Id: ncurses.py 36559 2004-07-18 05:56:09Z tim_one $
 | 
						|
#
 | 
						|
# Interactive test suite for the curses module.
 | 
						|
# This script displays various things and the user should verify whether
 | 
						|
# they display correctly.
 | 
						|
#
 | 
						|
 | 
						|
import curses
 | 
						|
from curses import textpad
 | 
						|
 | 
						|
def test_textpad(stdscr, insert_mode=False):
 | 
						|
    ncols, nlines = 8, 3
 | 
						|
    uly, ulx = 3, 2
 | 
						|
    if insert_mode:
 | 
						|
        mode = 'insert mode'
 | 
						|
    else:
 | 
						|
        mode = 'overwrite mode'
 | 
						|
 | 
						|
    stdscr.addstr(uly-3, ulx, "Use Ctrl-G to end editing (%s)." % mode)
 | 
						|
    stdscr.addstr(uly-2, ulx, "Be sure to try typing in the lower-right corner.")
 | 
						|
    win = curses.newwin(nlines, ncols, uly, ulx)
 | 
						|
    textpad.rectangle(stdscr, uly-1, ulx-1, uly + nlines, ulx + ncols)
 | 
						|
    stdscr.refresh()
 | 
						|
 | 
						|
    box = textpad.Textbox(win, insert_mode)
 | 
						|
    contents = box.edit()
 | 
						|
    stdscr.addstr(uly+ncols+2, 0, "Text entered in the box\n")
 | 
						|
    stdscr.addstr(repr(contents))
 | 
						|
    stdscr.addstr('\n')
 | 
						|
    stdscr.addstr('Press any key')
 | 
						|
    stdscr.getch()
 | 
						|
 | 
						|
    for i in range(3):
 | 
						|
        stdscr.move(uly+ncols+2 + i, 0)
 | 
						|
        stdscr.clrtoeol()
 | 
						|
 | 
						|
def main(stdscr):
 | 
						|
    stdscr.clear()
 | 
						|
    test_textpad(stdscr, False)
 | 
						|
    test_textpad(stdscr, True)
 | 
						|
 | 
						|
 | 
						|
if __name__ == '__main__':
 | 
						|
    curses.wrapper(main)
 |