diff options
Diffstat (limited to 'text.py')
-rw-r--r-- | text.py | 45 |
1 files changed, 45 insertions, 0 deletions
@@ -269,6 +269,45 @@ class MainExceptionWindow: self.screen.popWindow() self.screen.refresh() +class PassphraseEntryWindow: + def __init__(self, screen, device): + self.screen = screen + self.txt = _("Partition %s is encrypted. In order to " + "access the partition's contents during " + "installation you must enter the device's " + "passphrase below.") % (device,) + self.rc = None + + def run(self): + toplevel = GridForm(self.screen, _("Passphrase"), 1, 4) + + txt = TextboxReflowed(65, self.txt) + toplevel.add(txt, 0, 0) + + passphraseentry = Entry(128, password = 1) + toplevel.add(passphraseentry, 0, 1, (0,0,0,1)) + + globalcheckbox = Checkbox(_("This is a global passphrase")) + toplevel.add(globalcheckbox, 0, 2) + + buttons = ButtonBar(self.screen, [TEXT_OK_BUTTON, TEXT_CANCEL_BUTTON]) + toplevel.add(buttons, 0, 3, growx=1) + + rc = toplevel.run() + res = buttons.buttonPressed(rc) + + passphrase = None + isglobal = False + if res == TEXT_OK_CHECK: + passphrase = passphraseentry.value().strip() + isglobal = globalcheckbox.selected() + + self.rc = (passphrase, isglobal) + return self.rc + + def pop(self): + self.screen.popWindow() + class InstallInterface: def helpWindow(self, screen, key): if key == "helponhelp": @@ -409,6 +448,12 @@ class InstallInterface: r.strip() return r + def passphraseEntryWindow(self, device): + w = PassphraseEntryWindow(self.screen, device) + (passphrase, isglobal) = w.run() + w.pop() + return (passphrase, isglobal) + def getInstallKey(self, anaconda, key = ""): ic = anaconda.id.instClass keyname = _(ic.instkeyname) |