X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/1bd4065bcdb4c438f986e8ec0e19dfef9550d402..9388629a4f48442984dcf3dc0f2c244c6633618c:/lib/python/Screens/About.py diff --git a/lib/python/Screens/About.py b/lib/python/Screens/About.py index 5bd5f273..e184512b 100644 --- a/lib/python/Screens/About.py +++ b/lib/python/Screens/About.py @@ -1,35 +1,85 @@ from Screen import Screen from Components.ActionMap import ActionMap -from Components.Label import Label -from Components.Harddisk import Harddisk +from Components.Sources.StaticText import StaticText +from Components.Harddisk import harddiskmanager from Components.NimManager import nimmanager -from Components.MenuList import MenuList from Components.About import about +from Tools.DreamboxHardware import getFPVersion + class About(Screen): def __init__(self, session): Screen.__init__(self, session) - - self["text"] = Label("Enigma v" + about.getVersionString()) - self["tuner"] = Label(_("Detected NIMs:")) - + self["EnigmaVersion"] = StaticText("Enigma: " + about.getEnigmaVersionString()) + self["ImageVersion"] = StaticText("Image: " + about.getImageVersionString()) + + self["TunerHeader"] = StaticText(_("Detected NIMs:")) + + fp_version = getFPVersion() + if fp_version is None: + fp_version = "" + else: + fp_version = _("Frontprocessor version: %d") % fp_version + + self["FPVersion"] = StaticText(fp_version) + nims = nimmanager.nimList() - count = 0 - for i in nims: - self["tuner" + str(count)] = Label(i[0]) - count += 1 - - self["hdd"] = Label(_("Detected HDD:")) - hdd = Harddisk(0) - if hdd.model() != "": - self["hddA"] = Label(_("%s (%s, %d MB free)") % (hdd.model(), hdd.capacity(),hdd.free())) - else: - self["hddA"] = Label(_("none")) + for count in range(4): + if count < len(nims): + self["Tuner" + str(count)] = StaticText(nims[count]) + else: + self["Tuner" + str(count)] = StaticText("") + + self["HDDHeader"] = StaticText(_("Detected HDD:")) + hddlist = harddiskmanager.HDDList() + hdd = len(hddlist) > 0 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: + 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, }) - \ No newline at end of file