Cleanup identity view

Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>
This commit is contained in:
Adam Stokes 2015-08-27 10:28:48 -04:00
parent b10a9ade16
commit 89f2081e30
4 changed files with 43 additions and 13 deletions

View File

@ -24,7 +24,9 @@ class IdentityModel(ModelPolicy):
""" Model representing user identity
"""
# TODO: Set to installer progress output view
prev_signal = None
prev_signal = ('Back to filesystem view',
'filesystem:show',
'filesystem')
signals = [
("Identity view",

View File

@ -52,9 +52,14 @@ STYLES = [
('button focus', '', '', '',
Palette.black, Palette.dark_green),
('info_minor', '', '', '',
Palette.dark_gray, '')
Palette.dark_gray, ''),
('string_input', '', '', '',
Palette.black, Palette.light_gray),
('string_input focus', '', '', '',
Palette.white, Palette.dark_gray)
]
STYLES_MONO = [('frame_header', Palette.white, Palette.black,
'', '', ''),
('frame_footer', Palette.white, Palette.black,

View File

@ -39,7 +39,7 @@ class StringEditor(WidgetWrap):
@value.setter # NOQA
def value(self, value):
self._edit.set_edit_text(value)
class PasswordEditor(StringEditor):
""" Password input prompt with masking

View File

@ -19,8 +19,7 @@ Welcome provides user with language selection
"""
import logging
from urwid import (Pile, emit_signal)
from subiquity.ui.widgets import Box
from urwid import (Pile, emit_signal, Columns, Text, ListBox)
from subiquity.ui.buttons import done_btn, cancel_btn
from subiquity.ui.interactive import StringEditor, PasswordEditor
from subiquity.ui.utils import Padding, Color
@ -34,16 +33,16 @@ class IdentityView(ViewPolicy):
self.model = model
self.signal = signal
self.items = []
self.username = StringEditor(caption="Username: ")
self.password = PasswordEditor(caption="Password: ")
self.confirm_password = PasswordEditor(caption="Confirm Password: ")
self.username = StringEditor(caption="")
self.password = PasswordEditor(caption="")
self.confirm_password = PasswordEditor(caption="")
body = [
Padding.center_79(self._build_model_inputs()),
Padding.center_50(self._build_model_inputs()),
Padding.line_break(""),
Padding.center_15(self._build_buttons()),
]
super().__init__(Box(body))
super().__init__(ListBox(body))
def _build_buttons(self):
cancel = cancel_btn(on_press=self.cancel)
@ -57,9 +56,33 @@ class IdentityView(ViewPolicy):
def _build_model_inputs(self):
sl = [
self.username,
self.password,
self.confirm_password
Columns(
[
("weight", 0.2, Text("Username", align="right")),
("weight", 0.3,
Color.string_input(self.username,
focus_map="string_input focus"))
],
dividechars=4
),
Columns(
[
("weight", 0.2, Text("Password", align="right")),
("weight", 0.3,
Color.string_input(self.password,
focus_map="string_input focus"))
],
dividechars=4
),
Columns(
[
("weight", 0.2, Text("Confirm Password", align="right")),
("weight", 0.3,
Color.string_input(self.confirm_password,
focus_map="string_input focus"))
],
dividechars=4
)
]
return Pile(sl)