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"] = Label(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 (0, 1, 2, 3):
+ 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 = 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:
+ 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"],
{