summaryrefslogtreecommitdiffstats
path: root/iw/language_support_gui.py
diff options
context:
space:
mode:
Diffstat (limited to 'iw/language_support_gui.py')
-rw-r--r--iw/language_support_gui.py287
1 files changed, 0 insertions, 287 deletions
diff --git a/iw/language_support_gui.py b/iw/language_support_gui.py
deleted file mode 100644
index 0d8e9d5d7..000000000
--- a/iw/language_support_gui.py
+++ /dev/null
@@ -1,287 +0,0 @@
-#
-# langauge_support_gui.py: dialog for selection of which languages to support.
-#
-# Copyright 2001-2002 Red Hat, Inc.
-#
-# This software may be freely redistributed under the terms of the GNU
-# library public license.
-#
-# You should have received a copy of the GNU Library Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-
-import checklist
-import gtk
-import gui
-from iw_gui import *
-from flags import flags
-from rhpl.translate import _, N_
-
-from gui import setupTreeViewFixupIdleHandler
-
-class LanguageSupportWindow (InstallWindow):
- windowTitle = _("Additional Language Support")
- htmlTag = "langsupport"
-
- def getNext (self):
- self.supportedLangs = []
-
- for row in range(self.maxrows):
- if self.languageList.get_active(row) == 1:
- selected = self.languageList.get_text (row, 1)
- self.supportedLangs.append (selected)
-
- curidx = self.deflang_combo.get_active()
- self.defaultLang = self.deflang_values[curidx]
- self.langs.setSupported (self.supportedLangs)
- self.langs.setDefault (self.defaultLang)
-
- return None
-
- def toggled_language(self, data, row):
- olddef = self.defaultLang
- oldidx = None
- for row in range(self.maxrows):
- selected = self.languageList.get_text (row, 1)
- if selected == olddef:
- oldidx = row
- break
-
- self.rebuild_combo()
-
- # if no default lang now restore
- # this can happen if they clicked on the only remaining selected
- # language. If we dont reset to previous default lang selected
- # the UI is confusing because there is no default lang and no
- # langauges supported
- if self.defaultLang is None or self.defaultLang == "":
- self.languageList.set_active(oldidx, True)
- self.rebuild_combo()
-
- def rebuild_combo(self):
- list = []
-
- for row in range(self.maxrows):
- if self.languageList.get_active(row) == 1:
- selected = self.languageList.get_text (row, 1)
- list.append (selected)
-
- if len(list) == 0:
- list = [""]
- self.ics.setNextEnabled (False)
- else:
- self.ics.setNextEnabled (True)
-
- curidx = self.deflang_combo.get_active()
- if curidx >= 0 and len(self.deflang_values) > 0:
- self.defaultLang = self.deflang_values[curidx]
- else:
- self.defaultLang = None
-
- if self.defaultLang is not None and self.defaultLang in list:
- index = list.index(self.defaultLang)
- else:
- index = 0
- self.defaultLang = list[0]
-
- self.createDefaultLangMenu(list)
- self.deflang_combo.set_active(index)
-
- def select_all (self, data):
- self.ics.setNextEnabled (True)
- for row in range(self.maxrows):
- self.languageList.set_active(row, True)
-
- self.rebuild_combo()
-
- def select_default (self, data):
- self.ics.setNextEnabled (True)
-
- curidx = self.deflang_combo.get_active()
- if curidx >= 0:
- deflang = self.deflang_values[curidx]
-
- for row in range(self.maxrows):
- if self.languageList.get_text(row, 1) == deflang:
- self.languageList.set_active(row, True)
- else:
- self.languageList.set_active(row, False)
-
- self.rebuild_combo()
-
- def reset (self, data):
- self.ics.setNextEnabled (True)
- list = []
-
- for row in range(self.maxrows):
- item = self.languageList.get_text (row, 1)
-
- if item in self.origLangs:
- self.languageList.set_active(row, True)
- list.append (item)
- else:
- self.languageList.set_active(row, False)
-
- self.defaultLang = self.oldDefaultLang
- self.createDefaultLangMenu(list)
- self.deflang_combo.set_active(self.deflang_values.index(self.defaultLang))
-
- def setCurrent(self, currentDefault, recenter=1):
- parent = None
-
- store = self.languageList.get_model()
- row = 0
-
- # iterate over the list looking for the default locale
- while (row < self.languageList.num_rows):
- if self.languageList.get_text(row, 1) == currentDefault:
- path = store.get_path(store.get_iter((row,)))
- col = self.languageList.get_column(0)
- self.languageList.set_cursor(path, col, False)
- self.languageList.scroll_to_cell(path, col, True, 0.5, 0.5)
- break
- row = row + 1
-
- def createDefaultLangMenu(self, supported):
- if self.deflang_combo is None:
- self.deflang_combo = gtk.combo_box_new_text()
- else:
- for i in range(len(self.deflang_values), 0, -1):
- self.deflang_combo.remove_text(i - 1)
-
- sel = None
- curidx = 0
- values = []
- for locale in self.languages:
- if locale == self.defaultLang or (locale in supported):
- self.deflang_combo.append_text(locale)
-
- if locale == self.defaultLang:
- sel = curidx
- else:
- curidx = curidx + 1
-
- values.append(locale)
-
- if sel is not None:
- self.deflang_combo.set_active(sel)
-
- self.deflang_values = values
-
- # LanguageSupportWindow tag="langsupport"
- def getScreen (self, langs):
- self.langs = langs
- self.languages = self.langs.getAllSupported ()
- self.supportedLangs = self.langs.getSupported()
- self.origLangs = []
- for i in self.supportedLangs:
- self.origLangs.append(i)
-
- self.defaultLang = self.langs.getDefault()
- self.oldDefaultLang = self.defaultLang
-
- # first time we hit this point in install this is not initialized
- if self.origLangs == []:
- self.origLangs.append(self.defaultLang)
-
- vbox = gtk.VBox (False, 10)
- vbox.set_border_width(5)
- hbox = gtk.HBox (False)
-
- # create option menu of default langs
- label = gui.MnemonicLabel(_("Select the _default language for the system: "))
- self.deflang_combo = None
- self.deflang_values = None
- self.createDefaultLangMenu(self.supportedLangs)
- label.set_mnemonic_widget(self.deflang_combo)
-
- hbox.pack_start (label, False, 20)
- hbox.pack_start (self.deflang_combo, False, 20)
- vbox.pack_start (hbox, False, 50)
-
- sep = gtk.HSeparator ()
- vbox.pack_start (sep, False, 15)
-
- label = gui.MnemonicLabel(_("Select _additional languages to install "
- "on the system:"))
-
- label.set_alignment (0.0, 0.5)
- label.set_line_wrap (True)
- label.set_size_request(400, -1)
- vbox.pack_start (label, False)
-
- hbox = gtk.HBox (False, 5)
-
- # langs we want to support
- self.languageList = checklist.CheckList(1)
- label.set_mnemonic_widget(self.languageList)
-
- self.maxrows = 0
- list = []
-
- for locale in self.languages:
- if locale == self.defaultLang or (locale in self.supportedLangs):
- self.languageList.append_row((locale, ""), True)
- list.append(locale)
- else:
- self.languageList.append_row((locale, ""), False)
-
- self.maxrows = self.maxrows + 1
-
- self.setCurrent(self.defaultLang)
-
- sw = gtk.ScrolledWindow ()
- sw.set_policy (gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)
- sw.add (self.languageList)
- sw.set_shadow_type(gtk.SHADOW_IN)
-
- vbox2 = gtk.VBox (False, 12)
-
- all_button = gtk.Button (_("_Select All"))
- all_button.set_size_request(160, -1)
- all_button.connect ('clicked', self.select_all)
- a1 = gtk.Alignment (0.5, 0.5)
- a1.add (all_button)
-
- # this one tends to be too long
- default_button = gtk.Button()
- label = gui.MnemonicLabel(_("Select Default _Only"))
- label.set_size_request(150,-1)
- label.set_line_wrap(True)
- label.set_justify(gtk.JUSTIFY_CENTER)
- label.set_mnemonic_widget(default_button)
- default_button.add(label)
- default_button.set_size_request(160, -1)
- default_button.connect ('clicked', self.select_default)
- a2 = gtk.Alignment (0.5, 0.5)
- a2.add (default_button)
-
- reset_button = gtk.Button (_("Rese_t"))
- reset_button.set_size_request(160, -1)
- reset_button.connect ('clicked', self.reset)
- a3 = gtk.Alignment (0.5, 0.5)
- a3.add (reset_button)
-
- vbox2.pack_start (a1, False, 10)
- vbox2.pack_start (a2, False)
- vbox2.pack_start (a3, False)
- hbox.pack_start (sw, True, 10)
- hbox.pack_start (vbox2, False, 10)
- vbox.pack_start (hbox, True)
-
- # default button
-# alignment = gtk.Alignment (0.0, 0.0)
-# button = gtk.Button (_("Select as default"))
-# alignment.add (button)
-
- # connect CB for when they change selected langs
- self.languageList.checkboxrenderer.connect("toggled",
- self.toggled_language)
-
- store = self.languageList.get_model()
-
- setupTreeViewFixupIdleHandler(self.languageList, store)
-
-
- return vbox