Support turbo2.
[vuplus_dvbapp] / lib / python / Screens / About.py
index 0e77aba..c1104da 100644 (file)
@@ -1,7 +1,7 @@
 from Screen import Screen
 from Components.ActionMap import ActionMap
 from Components.Sources.StaticText import StaticText
-from Components.Harddisk import Harddisk
+from Components.Harddisk import harddiskmanager
 from Components.NimManager import nimmanager
 from Components.About import about
 
@@ -10,8 +10,10 @@ from Tools.DreamboxHardware import getFPVersion
 class About(Screen):
        def __init__(self, session):
                Screen.__init__(self, session)
+               self["NetworkHeader"] = StaticText(_("Network:"))
+               self["Network"] = StaticText(about.getNetworkInfo())
 
-               self["EnigmaVersion"] = StaticText("Enigma: " + about.getEnigmaVersionString())
+               self["EnigmaVersion"] = StaticText("Version: " + about.getEnigmaVersionString())
                self["ImageVersion"] = StaticText("Image: " + about.getImageVersionString())
 
                self["TunerHeader"] = StaticText(_("Detected NIMs:"))
@@ -25,60 +27,48 @@ class About(Screen):
                self["FPVersion"] = StaticText(fp_version)
 
                nims = nimmanager.nimList()
-               for count in range(4):
-                       if count < len(nims):
-                               self["Tuner" + str(count)] = StaticText(nims[count])
-                       else:
-                               self["Tuner" + str(count)] = StaticText("")
+               if len(nims) <= 4 :
+                       for count in (0, 1, 2, 3):
+                               if count < len(nims):
+                                       self["Tuner" + str(count)] = StaticText(nims[count])
+                               else:
+                                       self["Tuner" + str(count)] = StaticText("")
+               else:
+                       desc_list = []
+                       count = 0
+                       cur_idx = -1
+                       while count < len(nims):
+                               data = nims[count].split(":")
+                               idx = data[0].strip('Tuner').strip()
+                               desc = data[1].strip()
+                               if desc_list and desc_list[cur_idx]['desc'] == desc:
+                                       desc_list[cur_idx]['end'] = idx
+                               else:
+                                       desc_list.append({'desc' : desc, 'start' : idx, 'end' : idx})
+                                       cur_idx += 1
+                               count += 1
+
+                       for count in (0, 1, 2, 3):
+                               if count < len(desc_list):
+                                       if desc_list[count]['start'] == desc_list[count]['end']:
+                                               text = "Tuner %s: %s" % (desc_list[count]['start'], desc_list[count]['desc'])
+                                       else:
+                                               text = "Tuner %s-%s: %s" % (desc_list[count]['start'], desc_list[count]['end'], desc_list[count]['desc'])
+                               else:
+                                       text = ""
+
+                               self["Tuner" + str(count)] = StaticText(text)
 
                self["HDDHeader"] = StaticText(_("Detected HDD:"))
-               hdd = Harddisk(0)
-               if hdd.model() != "":
+               hddlist = harddiskmanager.HDDList()
+               hdd = hddlist and hddlist[0][1] or None
+               if hdd is not None and hdd.model() != "":
                        self["hddA"] = StaticText(_("%s\n(%s, %d MB free)") % (hdd.model(), hdd.capacity(),hdd.free()))
-               else:                   
+               else:
                        self["hddA"] = StaticText(_("none"))
 
                self["actions"] = ActionMap(["SetupActions", "ColorActions"], 
                        {
                                "cancel": self.close,
                                "ok": self.close,
-                               "green": self.showTranslationInfo
-                       })
-
-       def showTranslationInfo(self):
-               self.session.open(TranslationInfo)
-
-class TranslationInfo(Screen):
-       def __init__(self, session):
-               Screen.__init__(self, session)
-               # don't remove the string out of the _(), or it can't be "translated" anymore.
-
-               # TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline)
-               info = _("TRANSLATOR_INFO")
-
-               if info == "TRANSLATOR_INFO":
-                       info = "(N/A)"
-
-               infolines = _("").split("\n")
-               infomap = {}
-               for x in infolines:
-                       l = x.split(': ')
-                       if len(l) != 2:
-                               continue
-                       (type, value) = l
-                       infomap[type] = value
-               print infomap
-
-               self["TranslationInfo"] = StaticText(info)
-
-               translator_name = infomap.get("Language-Team", "none")
-               if translator_name == "none":
-                       translator_name = infomap.get("Last-Translator", "")
-
-               self["TranslatorName"] = StaticText(translator_name)
-
-               self["actions"] = ActionMap(["SetupActions"], 
-                       {
-                               "cancel": self.close,
-                               "ok": self.close,
                        })