+
+ self.adapters = [(iNetwork.getFriendlyAdapterName(x),x) for x in iNetwork.getAdapterList()]
+
+ self["adapterlist"] = MenuList(self.adapters)
+ self["actions"] = ActionMap(["OkCancelActions"],
+ {
+ "ok": self.okbuttonClick,
+ "cancel": self.close
+ })
+
+ if len(self.adapters) == 1:
+ self.onFirstExecBegin.append(self.okbuttonClick)
+
+ def okbuttonClick(self):
+ selection = self["adapterlist"].getCurrent()
+ if selection is not None:
+ self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetup, selection[1])
+
+ def AdapterSetupClosed(self, *ret):
+ if len(self.adapters) == 1: # just one network adapter.. close selection
+ self.close()
+
+class NameserverSetup(Screen, ConfigListScreen):
+ def __init__(self, session):
+ Screen.__init__(self, session)
+ self.backupNameserverList = iNetwork.getNameserverList()[:]
+ print "backup-list:", self.backupNameserverList
+
+ self["red"] = Label(_("Delete"))
+ self["green"] = Label(_("Add"))
+
+ self.createConfig()
+
+ self["actions"] = ActionMap(["OkCancelActions", "ColorActions"],
+ {
+ "ok": self.ok,
+ "cancel": self.cancel,
+ "green": self.add,
+ "red": self.remove
+ }, -2)
+
+ self.list = []
+ ConfigListScreen.__init__(self, self.list)
+ self.createSetup()
+
+ def createConfig(self):
+ self.nameservers = iNetwork.getNameserverList()
+ self.nameserverEntries = []
+
+ for nameserver in self.nameservers:
+ self.nameserverEntries.append(NoSave(ConfigIP(default=nameserver)))
+
+ def createSetup(self):
+ self.list = []
+
+ #self.nameserverConfigEntries = []
+ for i in range(len(self.nameserverEntries)):
+ self.list.append(getConfigListEntry(_("Nameserver %d") % (i + 1), self.nameserverEntries[i]))
+
+ self["config"].list = self.list
+ self["config"].l.setList(self.list)
+
+ def ok(self):
+ iNetwork.clearNameservers()
+ for nameserver in self.nameserverEntries:
+ iNetwork.addNameserver(nameserver.value)
+ iNetwork.writeNameserverConfig()
+ self.close()
+
+ def cancel(self):
+ iNetwork.clearNameservers()
+ print "backup-list:", self.backupNameserverList
+ for nameserver in self.backupNameserverList:
+ iNetwork.addNameserver(nameserver)
+ self.close()
+
+ def add(self):
+ iNetwork.addNameserver([0,0,0,0])
+ self.createConfig()
+ self.createSetup()
+
+ def remove(self):
+ print "currentIndex:", self["config"].getCurrentIndex()
+
+ index = self["config"].getCurrentIndex()
+ if index < len(self.nameservers):
+ iNetwork.removeNameserver(self.nameservers[index])
+ self.createConfig()
+ self.createSetup()
+
+class AdapterSetup(Screen, ConfigListScreen):
+ def __init__(self, session, iface):
+ Screen.__init__(self, session)
+
+ self.iface = iface
+
+ print iNetwork.getAdapterAttribute(self.iface, "dhcp")
+ self.dhcpConfigEntry = NoSave(ConfigYesNo(default=iNetwork.getAdapterAttribute(self.iface, "dhcp")))
+ self.hasGatewayConfigEntry = NoSave(ConfigYesNo(default=True))
+ self.ipConfigEntry = NoSave(ConfigIP(default=iNetwork.getAdapterAttribute(self.iface, "ip")))
+ self.netmaskConfigEntry = NoSave(ConfigIP(default=iNetwork.getAdapterAttribute(self.iface, "netmask")))
+ self.gatewayConfigEntry = NoSave(ConfigIP(default=iNetwork.getAdapterAttribute(self.iface, "gateway")))
+
+ self["iface"] = Label(iNetwork.getFriendlyAdapterName(self.iface))
+
+ self["actions"] = ActionMap(["SetupActions"],