+
+ 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"],
+ {
+ "ok": self.ok,
+ "cancel": self.cancel,
+ }, -2)
+
+ self.list = []
+ ConfigListScreen.__init__(self, self.list)
+ self.createSetup()
+
+ self["introduction"] = Label(_("Press OK to activate the settings."))
+ self["introduction2"] = Label(_("Current settings:"))
+
+ self["IPtext"] = Label(_("IP Address"))
+ self["Netmasktext"] = Label(_("Netmask"))
+ self["Gatewaytext"] = Label(_("Gateway"))
+
+ self["IP"] = Label(self.ipConfigEntry.getText())
+ self["Mask"] = Label(self.netmaskConfigEntry.getText())
+ self["Gateway"] = Label(self.gatewayConfigEntry.getText())
+
+ def createSetup(self):
+ self.list = []
+
+ self.dhcpEntry = getConfigListEntry(_("Use DHCP"), self.dhcpConfigEntry)
+ self.list.append(self.dhcpEntry)
+ if not self.dhcpConfigEntry.value:
+ self.list.append(getConfigListEntry(_('IP Address'), self.ipConfigEntry))
+ self.list.append(getConfigListEntry(_('Netmask'), self.netmaskConfigEntry))
+ self.list.append(getConfigListEntry(_('Use a gateway'), self.hasGatewayConfigEntry))
+ if self.hasGatewayConfigEntry.value:
+ self.list.append(getConfigListEntry(_('Gateway'), self.gatewayConfigEntry))
+
+ self.extended = None
+ self.extendedSetup = None
+ for p in plugins.getPlugins(PluginDescriptor.WHERE_NETWORKSETUP):
+ callFnc = p.__call__["ifaceSupported"](self.iface)
+ if callFnc is not None:
+ self.extended = callFnc
+ print p.__call__
+ if p.__call__.has_key("configStrings"):
+ self.configStrings = p.__call__["configStrings"]
+ else:
+ self.configStrings = None
+
+ if p.__call__.has_key("menuEntryName"):
+ menuEntryName = p.__call__["menuEntryName"](self.iface)
+ else:
+ menuEntryName = _('Extended Setup...')
+ self.extendedSetup = getConfigListEntry(menuEntryName, NoSave(ConfigNothing()))
+ self.list.append(self.extendedSetup)
+
+ self["config"].list = self.list
+ self["config"].l.setList(self.list)
+