diff options
author | Matt Wilson <msw@redhat.com> | 1999-09-20 19:17:44 +0000 |
---|---|---|
committer | Matt Wilson <msw@redhat.com> | 1999-09-20 19:17:44 +0000 |
commit | fd3c67830910dc379f7b89136db236bbb375f1a0 (patch) | |
tree | fd996aa00d7fa71e643d54bb831ace14b2e80271 | |
parent | 9ce6c239bef3434343829763cbf03988b4b1f1fd (diff) | |
download | anaconda-fd3c67830910dc379f7b89136db236bbb375f1a0.tar.gz anaconda-fd3c67830910dc379f7b89136db236bbb375f1a0.tar.xz anaconda-fd3c67830910dc379f7b89136db236bbb375f1a0.zip |
more language selection changes
-rwxr-xr-x | gui.py | 12 | ||||
-rw-r--r-- | iw/language.py | 27 | ||||
-rw-r--r-- | text.py | 7 | ||||
-rw-r--r-- | todo.py | 2 |
4 files changed, 33 insertions, 15 deletions
@@ -1,7 +1,17 @@ import gettext cat = gettext.Catalog ("anaconda", "/usr/share/locale") -_ = cat.gettext + +def _(string): + return cat.gettext(string) + +def setLanguage (lang): + global cat + newlangs = [lang] + if len(lang) > 2: + newlangs.append(lang[:2]) + gettext.setlangs (newlangs) + cat = gettext.Catalog ("anaconda", "/usr/share/locale") from gtk import * from gtk import _root_window diff --git a/iw/language.py b/iw/language.py index efab0b200..ef3a3a67e 100644 --- a/iw/language.py +++ b/iw/language.py @@ -1,6 +1,6 @@ from gtk import * from iw import * -from gui import _ +from gui import _, setLanguage class LanguageWindow (InstallWindow): @@ -13,24 +13,33 @@ class LanguageWindow (InstallWindow): ics.readHTML ("lang") self.question = (_("What language should be used during the " "installation process?")) - - def languageSelected (self, button, locale): - self.todo.language.set (locale) + self.languages = self.todo.language.available () + self.running = 0 + + def select_row (self, clist, row, col, event): + if self.running: + lang = clist.get_text (clist.selection[0], 0) + self.todo.language.set (lang) + setLanguage (self.languages[lang]) def getScreen (self): mainBox = GtkVBox (FALSE, 10) label = GtkLabel (self.question) label.set_alignment (0.5, 0.5) - language_keys = self.todo.language.available ().keys () + language_keys = self.languages.keys () self.language = GtkCList () self.language.set_selection_mode (SELECTION_BROWSE) + self.language.connect ("select_row", self.select_row) + for locale in language_keys[1:]: - self.language.append ((locale,)) + row = self.language.append ((locale,)) - print self.todo.language.available ().values () - self.language.select_row (self.todo.language.available ().values ().index ((self.todo.language.get ())) - 1, 0) + print self.todo.language.get () + default = self.languages.values ().index (self.todo.language.get ()) + if default > 0: + self.language.select_row (default - 1, 0) sw = GtkScrolledWindow () sw.set_border_width (5) @@ -39,5 +48,7 @@ class LanguageWindow (InstallWindow): mainBox.pack_start (label, FALSE, FALSE, 10) mainBox.pack_start (sw, TRUE) + + self.running = 1 return mainBox @@ -53,12 +53,9 @@ class LanguageWindow: newlangs = [lang] if len(lang) > 2: newlangs.append(lang[:2]) - langs = gettext.getlangs () - langs = newlangs + langs - gettext.setlangs (langs) - global cat, _ + gettext.setlangs (newlangs) + global cat cat = gettext.Catalog ("anaconda", "/usr/share/locale") - _ = cat.gettext todo.language.set (choice) return INSTALL_OK @@ -616,7 +616,7 @@ class ToDo: if fields and fields[0][0] == '#': continue # all valid fstab entries have 6 fields - if len (fields) == 6: + if not len (fields) < 4 and len (fields) <= 6: if fields and (fields[2] == "ext2" or fields[2] == "swap") \ and fields[3] == "defaults": format = 0 |