79,13 → 79,8 |
sys.stdout.write('Enter choice number: ') |
|
def menu(self, text, choices, button, defopt=None): |
menu = [] |
for key, descr in choices: |
txt = key + (45-len(key))*' ' + ': ' + descr |
menu.append((key, txt)) |
return self.choice(text, [button] + choices) |
|
return self.choice(text, [button] + menu) |
|
def choice(self, text, choices, defopt=None): |
self.print_title() |
while 1: |
371,14 → 366,11 |
if os.path.exists(OUTPUT): |
read_defaults(OUTPUT, defaults) |
|
# Dry run only with defaults |
varnames = parse_config(INPUT, TMPOUTPUT, DefaultDialog(dlg), defaults) |
# If not in default mode, present selection of all possibilities |
if not defmode: |
defopt = 0 |
while 1: |
# varnames contains variable names that were in the |
# last question set |
choices = [ (x[1],defaults[x[0]]) for x in varnames ] |
res = dlg.menu('Configuration',choices,('save','Save'),defopt) |
if res == 'save': |
389,9 → 381,6 |
if res == descr: |
defopt = i |
break |
# Ask the user a simple question, produce output |
# as if the user answered all the other questions |
# with default answer |
varnames = parse_config(INPUT, TMPOUTPUT, dlg, defaults, |
askonly=varnames[i][0]) |
|