[Uludag-commits] r17585 - in branches/yali4/yali4: . gui

uludag-commits at pardus.org.tr uludag-commits at pardus.org.tr
7 Nis 2008 Pzt 14:54:19 EEST


Author: gokmen.goksel
Date: Mon Apr  7 14:54:18 2008
New Revision: 17585

Modified:
   branches/yali4/yali4/gui/ScrGoodbye.py
   branches/yali4/yali4/gui/ScrKeyboard.py
   branches/yali4/yali4/localedata.py
   branches/yali4/yali4/localeutils.py
Log:
 * Keyboard Layout settings redesigned. 

Modified: branches/yali4/yali4/gui/ScrGoodbye.py
=================================================================
--- branches/yali4/yali4/gui/ScrGoodbye.py	(original)
+++ branches/yali4/yali4/gui/ScrGoodbye.py	Mon Apr  7 14:54:18 2008
@@ -150,7 +150,7 @@
             return True
 
         def writeConsoleData():
-            yali4.localeutils.write_keymap(ctx.installData.keyData.console)
+            yali4.localeutils.write_keymap(ctx.installData.keyData["consolekeymap"])
             ctx.debugger.log("Keymap stored.")
             return True
 

Modified: branches/yali4/yali4/gui/ScrKeyboard.py
=================================================================
--- branches/yali4/yali4/gui/ScrKeyboard.py	(original)
+++ branches/yali4/yali4/gui/ScrKeyboard.py	Mon Apr  7 14:54:18 2008
@@ -46,18 +46,21 @@
         self.ui = Ui_KeyboardWidget()
         self.ui.setupUi(self)
 
-        # iterate over keyboard list and set default
         defaultitem = None
-        for (lang, keymap) in yali4.localedata.getLangsWithKeymaps():
-            if isinstance(keymap, list):
-                for k in keymap:
-                    ki = KeyboardItem(self.ui.keyboard_list, k)
-                    if ctx.consts.lang == lang and not defaultitem:
-                        defaultitem = ki
+        for country,data in yali4.localedata.locales.items():
+            if data["xkbvariant"]:
+                i = 0
+                for variant in data["xkbvariant"]:
+                    _d = dict(data)
+                    _d["xkbvariant"] = variant[0]
+                    _d["name"] = variant[1]
+                    _d["consolekeymap"] = data["consolekeymap"][i]
+                    ki = KeyboardItem(self.ui.keyboard_list, _d)
+                    i+=1
             else:
-                ki = KeyboardItem(self.ui.keyboard_list, keymap)
-                if ctx.consts.lang == lang and not defaultitem:
-                    defaultitem = ki
+                ki = KeyboardItem(self.ui.keyboard_list, data)
+            if ctx.consts.lang == country and not defaultitem:
+                defaultitem = ki
 
         self.ui.keyboard_list.sortItems(Qt.AscendingOrder)
         self.ui.keyboard_list.setCurrentItem(defaultitem)
@@ -74,13 +77,13 @@
     def slotLayoutChanged(self,i,y=None):
         if not i==y:
             keydata = i.getData()
-            yali4.localeutils.set_keymap(keydata.X)
+            yali4.localeutils.set_keymap(keydata["xkblayout"], keydata["xkbvariant"])
 
 class KeyboardItem(QtGui.QListWidgetItem):
 
     def __init__(self, parent, keydata):
-        text = "%s" %(keydata.translation)
-        QtGui.QListWidgetItem.__init__(self,text,parent)
+        text = "%s" %(keydata["name"])
+        QtGui.QListWidgetItem.__init__(self, text, parent)
         self._keydata = keydata
 
     def getData(self):

Modified: branches/yali4/yali4/localedata.py
=================================================================
Suppressed!
	Too long (more than 250 lines) diff output suppressed...
Modified: branches/yali4/yali4/localeutils.py
=================================================================
--- branches/yali4/yali4/localeutils.py	(original)
+++ branches/yali4/yali4/localeutils.py	Mon Apr  7 14:54:18 2008
@@ -25,8 +25,14 @@
     f.write("LANG=%s\n" % yali4.localedata.locales[consts.lang]["locale"])
     f.write("LC_ALL=%s\n" % yali4.localedata.locales[consts.lang]["locale"])
 
-def set_keymap(keymap):
-    os.system("setxkbmap -layout %s" % keymap)
+def set_keymap(keymap, variant=None):
+    ad = ""
+    if variant:
+        ad = "-variant %s" % variant
+    else:
+        variant = ""
+    os.system("setxkbmap -layout %s %s" % (keymap,ad))
+    os.system("hav call zorg Xorg.Display setKeymap %s %s" % (keymap, variant))
 
 def write_keymap(keymap):
     mudur_file_path = os.path.join(consts.target_dir, "etc/conf.d/mudur")


Uludag-commits mesaj listesiyle ilgili daha fazla bilgi