from Screen import Screen
-from Components.ActionMap import ActionMap
+from Components.ActionMap import NumberActionMap
from Components.ConfigList import ConfigList
from Components.config import config
from Components.config import getConfigListEntry
+from Components.Network import iNetwork
+from Components.Label import Label
class NetworkSetup(Screen):
- def __init__(self, session):
- Screen.__init__(self, session)
-
- self["actions"] = ActionMap(["SetupActions"],
- {
- "ok": self.keySave,
- "cancel": self.keyCancel,
- "left": self.keyLeft,
- "right": self.keyRight
- }, -1)
-
- self.list = []
- self["config"] = ConfigList(self.list)
- self.createSetup()
-
- def createSetup(self):
- self.list = []
-
- self.list.append(getConfigListEntry("Use DHCP", config.network.dhcp))
- if (config.network.dhcp.value == 0):
- self.list.append(getConfigListEntry("IP Address", config.network.ip))
- self.list.append(getConfigListEntry("Netmask", config.network.netmask))
- self.list.append(getConfigListEntry("Gateway", config.network.gateway))
- self.list.append(getConfigListEntry("Nameserver", config.network.dns))
-
- self["config"].list = self.list
- self["config"].l.setList(self.list)
-
- def newConfig(self):
- print self["config"].getCurrent()
- if self["config"].getCurrent()[0] == "Use DHCP":
- self.createSetup()
+ def __init__(self, session):
+ Screen.__init__(self, session)
+
+ self["actions"] = NumberActionMap(["SetupActions"],
+ {
+ "ok": self.keySave,
+ "cancel": self.keyCancel,
+ "left": self.keyLeft,
+ "right": self.keyRight,
+ "1": self.keyNumberGlobal,
+ "2": self.keyNumberGlobal,
+ "3": self.keyNumberGlobal,
+ "4": self.keyNumberGlobal,
+ "5": self.keyNumberGlobal,
+ "6": self.keyNumberGlobal,
+ "7": self.keyNumberGlobal,
+ "8": self.keyNumberGlobal,
+ "9": self.keyNumberGlobal,
+ "0": self.keyNumberGlobal
+ }, -1)
- def keyLeft(self):
- self["config"].handleKey(config.key["prevElement"])
- self.newConfig()
+ self.list = []
+ self["config"] = ConfigList(self.list)
+ self.createSetup()
+
+ self["introduction"] = Label(_("Press OK to activate the settings."))
+
+ def createSetup(self):
+ self.list = []
+
+ self.dhcpEntry = getConfigListEntry(_("Use DHCP"), config.network.dhcp)
+ self.list.append(self.dhcpEntry)
+ self.list.append(getConfigListEntry(_('IP Address'), config.network.ip))
+ if (config.network.dhcp.value == 0):
+ self.list.append(getConfigListEntry(_('Netmask'), config.network.netmask))
+ self.list.append(getConfigListEntry(_('Gateway'), config.network.gateway))
+ self.list.append(getConfigListEntry(_('Nameserver'), config.network.dns))
+
+ self["config"].list = self.list
+ self["config"].l.setList(self.list)
+
+ def newConfig(self):
+ print self["config"].getCurrent()
+ if self["config"].getCurrent() == self.dhcpEntry:
+ self.createSetup()
- def keyRight(self):
- self["config"].handleKey(config.key["nextElement"])
- self.newConfig()
+ def keyLeft(self):
+ self["config"].handleKey(config.key["prevElement"])
+ self.newConfig()
- def keySave(self):
- #for x in self["config"].list:
- #x[1].save()
- self.close()
+ def keyRight(self):
+ self["config"].handleKey(config.key["nextElement"])
+ self.newConfig()
+
+ def keyNumberGlobal(self, number):
+ print "You pressed number " + str(number)
+ if (self["config"].getCurrent()[1].parent.enabled == True):
+ self["config"].handleKey(config.key[str(number)])
+
+ def keySave(self):
+ #for x in self["config"].list:
+ #x[1].save()
+
+ iNetwork.writeNetworkConfig()
+ iNetwork.activateNetworkConfig()
+ self.close()
- def keyCancel(self):
- for x in self["config"].list:
- x[1].cancel()
- self.close()
\ No newline at end of file
+ def keyCancel(self):
+ for x in self["config"].list:
+ x[1].cancel()
+ iNetwork.loadNetworkConfig()
+ self.close()