X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/cdeb634affac7c3083937825bbf2c89cd11e84f9..1076e4717bcf0eb93d803f73b2b75a8ae192b143:/lib/python/Screens/About.py diff --git a/lib/python/Screens/About.py b/lib/python/Screens/About.py index 2e32e7d7..e184512b 100644 --- a/lib/python/Screens/About.py +++ b/lib/python/Screens/About.py @@ -1,26 +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.About import about + +from Tools.DreamboxHardware import getFPVersion class About(Screen): def __init__(self, session): Screen.__init__(self, session) - - self["text"] = Label("Enigma v2.0b") - self["tuner"] = Label("Detected NIMs:") - self["tunerA"] = Label(" Tuner A: Alps BSBE1 (DVB-S)") - self["tunerB"] = Label(" Tuner B: Alps BSBE1 (DVB-S)") + 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() + 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["hdd"] = Label("Detected HDD:") - hdd = Harddisk(0) - #self["hddA"] = Label("%s (%s, %d MB free)" % (hdd.model(), hdd.capacity(),hdd.free())) - self["hddA"] = Label("Seagate 398 GByte (323 GByte free)") + self["TranslatorName"] = StaticText(translator_name) self["actions"] = ActionMap(["SetupActions"], { "cancel": self.close, "ok": self.close, }) - \ No newline at end of file