- self["title"] = Label(_("A/V Settings"))
-
- self["oktext"] = Label(_("OK"))
- self["canceltext"] = Label(_("Cancel"))
- self["ok"] = Pixmap()
- self["cancel"] = Pixmap()
-
- self.createSetup()
- self.grabLastGoodMode()
-
- def startHotplug(self):
- self.hw.on_hotplug.append(self.createSetup)
-
- def stopHotplug(self):
- self.hw.on_hotplug.remove(self.createSetup)
-
- def createSetup(self):
- level = config.usage.setup_level.index
-
- self.list = [ ]
- self.list.append(getConfigListEntry(_("Video Output"), config.av.videoport))
-
- # if we have modes for this port:
- if config.av.videoport.value in config.av.videomode:
- # add mode- and rate-selection:
- self.list.append(getConfigListEntry(_("Mode"), config.av.videomode[config.av.videoport.value]))
- self.list.append(getConfigListEntry(_("Refresh Rate"), config.av.videorate[config.av.videomode[config.av.videoport.value].value]))
-
-# if config.av.videoport.value == "DVI":
-# self.list.append(getConfigListEntry(_("Allow Unsupported Modes"), config.av.edid_override))
- if config.av.videoport.value == "Scart":
- self.list.append(getConfigListEntry(_("Color Format"), config.av.colorformat))
- self.list.append(getConfigListEntry(_("Aspect Ratio"), config.av.aspectratio))
- if level >= 1:
- self.list.append(getConfigListEntry(_("WSS on 4:3"), config.av.wss))
-
- if level >= 1:
- self.list.append(getConfigListEntry(_("AC3 default"), config.av.defaultac3))
-
- self["config"].list = self.list
- self["config"].l.setList(self.list)
-
- def keyLeft(self):
- ConfigListScreen.keyLeft(self)
- self.createSetup()
-
- def keyRight(self):
- ConfigListScreen.keyRight(self)
- self.createSetup()
-
- def confirm(self, confirmed):
- if not confirmed:
- self.hw.setMode(*self.last_good)
- else:
- self.keySave()
-
- def grabLastGoodMode(self):
- port = config.av.videoport.value
- mode = config.av.videomode[port].value
- rate = config.av.videorate[mode].value
- self.last_good = (port, mode, rate)
-
- def apply(self):
- port = config.av.videoport.value
- mode = config.av.videomode[port].value
- rate = config.av.videorate[mode].value
- if (port, mode, rate) != self.last_good:
- self.hw.setMode(port, mode, rate)
- self.session.openWithCallback(self.confirm, MessageBox, "Is this videomode ok?", MessageBox.TYPE_YESNO, timeout = 20, default = False)
- else:
- self.keySave()
-