1
0
mirror of https://github.com/gryf/wicd.git synced 2025-12-23 22:52:33 +01:00

Various fixes.

curses/curses_misc.py:
  Simplified changing the "arrow" on the ComboBox, if I decide to do so.                                                             
curses/prefs_curses.py: Added a docstring                                 
curses/wicd-curses.py:                                                    
  'q' or 'Q' quits a dialog without saving now.                           
  Fixed a bug where a scan run while a dialog is up would lock the screen and
    half-close the dialog when it is done.
This commit is contained in:
Andrew Psaltis
2009-03-25 12:36:57 -04:00
parent a5e3810c9a
commit 4446016734
3 changed files with 19 additions and 5 deletions

View File

@@ -316,6 +316,7 @@ class ComboBox(urwid.WidgetWrap):
user_args : user_args in the callback
"""
self.DOWN_ARROW = ' vvv'
self.label = urwid.Text(label)
self.attrs = attrs
self.focus_attr = focus_attr
@@ -325,7 +326,7 @@ class ComboBox(urwid.WidgetWrap):
self.overlay = None
#w,sensitive=True,attrs=('editbx','editnfc'),focus_attr='editfc')
self.cbox = DynWrap(SelText(' vvv'),attrs=attrs,focus_attr=focus_attr)
self.cbox = DynWrap(SelText(self.DOWN_ARROW),attrs=attrs,focus_attr=focus_attr)
# Unicode will kill me sooner or later. ^_^
if label != '':
w = urwid.Columns([('fixed',len(str),self.label),self.cbox],dividechars=1)
@@ -351,7 +352,7 @@ class ComboBox(urwid.WidgetWrap):
def set_focus(self,index):
self.focus = index
self.cbox.set_w(SelText(self.list[index]+' vvv'))
self.cbox.set_w(SelText(self.list[index]+self.DOWN_ARROW))
if self.overlay:
self.overlay._listbox.set_focus(index)
@@ -360,7 +361,7 @@ class ComboBox(urwid.WidgetWrap):
def build_combobox(self,parent,ui,row):
str,trash = self.label.get_text()
self.cbox = DynWrap(SelText([self.list[self.focus]+' vvv']),
self.cbox = DynWrap(SelText([self.list[self.focus]+self.DOWN_ARROW]),
attrs=self.attrs,focus_attr=self.focus_attr)
if str != '':
w = urwid.Columns([('fixed',len(str),self.label),self.cbox],

View File

@@ -1,5 +1,7 @@
#!/usr/bin/env python
"""prefs_curses.py -- Pretty, tabbable, console preferences dialog"""
# Copyright (C) 2008-2009 Andrew Psaltis
# This program is free software; you can redistribute it and/or modify

View File

@@ -581,6 +581,7 @@ class appGUI():
self.prev_state = False
self.connecting = False
self.screen_locked = False
self.do_diag_lock = False
self.pref = None
@@ -602,11 +603,17 @@ class appGUI():
# Does what it says it does
def lock_screen(self):
if self.diag:
self.do_diag_lock = True
return True
self.frame.set_body(self.screen_locker)
self.screen_locked = True
self.update_ui()
def unlock_screen(self):
if self.do_diag_lock:
self.do_diag_lock = False
return True
self.update_netlist(force_check=True)
self.frame.set_body(self.thePile)
self.screen_locked = False
@@ -810,6 +817,10 @@ class appGUI():
self.lock_screen()
def restore_primary(self):
if self.do_diag_lock:
self.frame.set_body(self.screen_locker)
self.do_diag_lock = False
else:
self.frame.set_body(self.thePile)
self.diag = None
self.frame.set_footer(urwid.Pile([self.primaryCols,self.footer2]))
@@ -916,7 +927,7 @@ class appGUI():
focus=True)
continue
if self.diag:
if k == 'esc':
if k == 'esc' or k == 'q' or k == 'Q':
self.restore_primary()
break
if k == 'meta enter':