From 1be69784396f194419adda53331d5fee02ea062b Mon Sep 17 00:00:00 2001 From: Acid-Burn Date: Tue, 4 Nov 2008 12:13:37 +0100 Subject: add virtual keyboard as easy input help add icons for virtual keyboard network fixes wlan fixeS --- lib/python/Screens/NetworkSetup.py | 604 +++++++++++++++++++++++++++---------- 1 file changed, 437 insertions(+), 167 deletions(-) mode change 100644 => 100755 lib/python/Screens/NetworkSetup.py (limited to 'lib/python/Screens/NetworkSetup.py') diff --git a/lib/python/Screens/NetworkSetup.py b/lib/python/Screens/NetworkSetup.py old mode 100644 new mode 100755 index 862bce46..c26302fa --- a/lib/python/Screens/NetworkSetup.py +++ b/lib/python/Screens/NetworkSetup.py @@ -1,25 +1,25 @@ from Screen import Screen -from Components.ActionMap import ActionMap,NumberActionMap from Screens.MessageBox import MessageBox from Screens.InputBox import InputBox from Screens.Standby import * +from Screens.VirtualKeyBoard import VirtualKeyBoard +from Screens.HelpMenu import HelpableScreen from Components.Network import iNetwork from Components.Label import Label,MultiColorLabel from Components.Pixmap import Pixmap,MultiPixmap from Components.MenuList import MenuList -from Components.config import config, ConfigYesNo, ConfigIP, NoSave, ConfigText, ConfigSelection, getConfigListEntry, ConfigNothing +from Components.config import config, ConfigYesNo, ConfigIP, NoSave, ConfigText, ConfigPassword, ConfigSelection, getConfigListEntry, ConfigNothing from Components.ConfigList import ConfigListScreen from Components.PluginComponent import plugins from Components.MultiContent import MultiContentEntryText, MultiContentEntryPixmapAlphaTest +from Components.ActionMap import ActionMap, NumberActionMap, HelpableActionMap +from Tools.Directories import resolveFilename, SCOPE_PLUGINS, SCOPE_SKIN_IMAGE +from Tools.LoadPixmap import LoadPixmap from Plugins.Plugin import PluginDescriptor -from enigma import eTimer +from enigma import eTimer, ePoint, eSize, RT_HALIGN_LEFT, eListboxPythonMultiContent, gFont from os import path as os_path, system as os_system, unlink from re import compile as re_compile, search as re_search -from Tools.Directories import resolveFilename, SCOPE_PLUGINS -from Tools.Directories import SCOPE_SKIN_IMAGE,SCOPE_PLUGINS, resolveFilename -from Tools.LoadPixmap import LoadPixmap -from enigma import RT_HALIGN_LEFT, eListboxPythonMultiContent, gFont class InterfaceList(MenuList): def __init__(self, list, enableWrapAround=False): @@ -30,11 +30,13 @@ class InterfaceList(MenuList): def InterfaceEntryComponent(index,name,default,active ): res = [ (index) ] res.append(MultiContentEntryText(pos=(80, 5), size=(430, 25), font=0, text=name)) - if default is True: - png = LoadPixmap(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/buttons/button_blue.png")) - if default is False: - png = LoadPixmap(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/buttons/button_blue_off.png")) - res.append(MultiContentEntryPixmapAlphaTest(pos=(10, 5), size=(25, 25), png = png)) + num_configured_if = len(iNetwork.getConfiguredAdapters()) + if num_configured_if >= 2: + if default is True: + png = LoadPixmap(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/buttons/button_blue.png")) + if default is False: + png = LoadPixmap(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/buttons/button_blue_off.png")) + res.append(MultiContentEntryPixmapAlphaTest(pos=(10, 5), size=(25, 25), png = png)) if active is True: png2 = LoadPixmap(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/icons/lock_on.png")) if active is False: @@ -43,41 +45,64 @@ def InterfaceEntryComponent(index,name,default,active ): return res -class NetworkAdapterSelection(Screen): +class NetworkAdapterSelection(Screen,HelpableScreen): def __init__(self, session): Screen.__init__(self, session) - + HelpableScreen.__init__(self) + self.wlan_errortext = _("No working wireless networkadapter found.\nPlease verify that you have attached a compatible WLAN USB Stick and your Network is configured correctly.") self.lan_errortext = _("No working local networkadapter found.\nPlease verify that you have attached a network cable and your Network is configured correctly.") + self.oktext = _("Press OK on your remote control to continue.") + self.restartLanRef = None self["ButtonBluetext"] = Label(_("Set as default Interface")) + self["ButtonBlue"] = Pixmap() self["ButtonRedtext"] = Label(_("Close")) self["introduction"] = Label(_("Press OK to edit the settings.")) self.adapters = [(iNetwork.getFriendlyAdapterName(x),x) for x in iNetwork.getAdapterList()] - + if len(self.adapters) == 0: self.onFirstExecBegin.append(self.NetworkFallback) - + + self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions", + { + "cancel": (self.close, _("exit networkinterface list")), + "ok": (self.okbuttonClick, _("select interface")), + }) + + self["ColorActions"] = HelpableActionMap(self, "ColorActions", + { + "red": (self.close, _("exit networkinterface list")), + }) + + self["DefaultInterfaceAction"] = HelpableActionMap(self, "ColorActions", + { + "blue": (self.setDefaultInterface, [_("Set interface as default Interface"),_("* Only available if more then one interface is active.")] ), + }) + self.list = [] self["list"] = InterfaceList(self.list) self.updateList() - self["actions"] = ActionMap(["OkCancelActions", "ColorActions"], - { - "ok": self.okbuttonClick, - "cancel": self.close, - "blue": self.setDefaultInterface, - "red": self.close - }, -2) - + if len(self.adapters) == 1: self.onFirstExecBegin.append(self.okbuttonClick) - + self.onClose.append(self.cleanup) + def updateList(self): iNetwork.getInterfaces() self.list = [] default_gw = None - num_configured_if = len(iNetwork.configuredInterfaces) + num_configured_if = len(iNetwork.getConfiguredAdapters()) + if num_configured_if >= 2: + self["ButtonBlue"].show() + self["ButtonBluetext"].show() + self["DefaultInterfaceAction"].setEnabled(True) + else: + self["ButtonBlue"].hide() + self["ButtonBluetext"].hide() + self["DefaultInterfaceAction"].setEnabled(False) + if num_configured_if < 2 and os_path.exists("/etc/default_gw"): unlink("/etc/default_gw") @@ -86,7 +111,7 @@ class NetworkAdapterSelection(Screen): result = fp.read() fp.close() default_gw = result - + if len(self.adapters) == 0: # no interface available => display only eth0 self.list.append(InterfaceEntryComponent("eth0",iNetwork.getFriendlyAdapterName('eth0'),True,True )) else: @@ -106,24 +131,22 @@ class NetworkAdapterSelection(Screen): selection = self["list"].getCurrent() num_if = len(self.list) old_default_gw = None + num_configured_if = len(iNetwork.getConfiguredAdapters()) if os_path.exists("/etc/default_gw"): fp = open('/etc/default_gw', 'r') old_default_gw = fp.read() fp.close() - if num_if > 1 and (not old_default_gw or old_default_gw != selection[0]): + if num_configured_if > 1 and (not old_default_gw or old_default_gw != selection[0]): fp = open('/etc/default_gw', 'w+') fp.write(selection[0]) fp.close() - iNetwork.restartNetwork() - self.updateList() - elif old_default_gw and num_if < 2: + self.restartLan() + elif old_default_gw and num_configured_if < 2: unlink("/etc/default_gw") - iNetwork.restartNetwork() - self.updateList() + self.restartLan() def okbuttonClick(self): selection = self["list"].getCurrent() - print "selection",selection if selection is not None: self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetupConfiguration, selection[0]) @@ -134,25 +157,47 @@ class NetworkAdapterSelection(Screen): self.updateList() def NetworkFallback(self): - if iNetwork.configuredInterfaces.has_key('wlan0') is True: + if iNetwork.configuredNetworkAdapters.has_key('wlan0') is True: self.session.openWithCallback(self.ErrorMessageClosed, MessageBox, self.wlan_errortext, type = MessageBox.TYPE_INFO,timeout = 10) - if iNetwork.configuredInterfaces.has_key('ath0') is True: + if iNetwork.configuredNetworkAdapters.has_key('ath0') is True: self.session.openWithCallback(self.ErrorMessageClosed, MessageBox, self.wlan_errortext, type = MessageBox.TYPE_INFO,timeout = 10) else: self.session.openWithCallback(self.ErrorMessageClosed, MessageBox, self.lan_errortext, type = MessageBox.TYPE_INFO,timeout = 10) def ErrorMessageClosed(self, *ret): - if iNetwork.configuredInterfaces.has_key('wlan0') is True: + if iNetwork.configuredNetworkAdapters.has_key('wlan0') is True: self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetupConfiguration, 'wlan0') - elif iNetwork.configuredInterfaces.has_key('ath0') is True: + elif iNetwork.configuredNetworkAdapters.has_key('ath0') is True: self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetupConfiguration, 'ath0') else: self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetupConfiguration, 'eth0') -class NameserverSetup(Screen, ConfigListScreen): + def cleanup(self): + iNetwork.stopLinkStateConsole() + iNetwork.stopRestartConsole() + + def restartLan(self): + iNetwork.restartNetwork(self.restartLanDataAvail) + self.restartLanRef = self.session.openWithCallback(self.restartfinishedCB, MessageBox, _("Please wait while we configure your network..."), type = MessageBox.TYPE_INFO, enable_input = False) + + def restartLanDataAvail(self, data): + if data is True: + iNetwork.getInterfaces(self.getInterfacesDataAvail) + + def getInterfacesDataAvail(self, data): + if data is True: + self.restartLanRef.close(True) + + def restartfinishedCB(self,data): + if data is True: + self.updateList() + self.session.open(MessageBox, _("Finished configuring your network"), type = MessageBox.TYPE_INFO, timeout = 10, default = False) + + +class NameserverSetup(Screen, ConfigListScreen, HelpableScreen): def __init__(self, session): Screen.__init__(self, session) - iNetwork.getInterfaces() + HelpableScreen.__init__(self) self.backupNameserverList = iNetwork.getNameserverList()[:] print "backup-list:", self.backupNameserverList @@ -162,14 +207,19 @@ class NameserverSetup(Screen, ConfigListScreen): self["introduction"] = Label(_("Press OK to activate the settings.")) self.createConfig() - self["actions"] = ActionMap(["OkCancelActions", "ColorActions"], - { - "ok": self.ok, - "cancel": self.cancel, - "red": self.cancel, - "green": self.add, - "yellow": self.remove - }, -2) + self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions", + { + "cancel": (self.cancel, _("exit nameserver configuration")), + "ok": (self.ok, _("activate current configuration")), + }) + + self["ColorActions"] = HelpableActionMap(self, "ColorActions", + { + "red": (self.cancel, _("exit nameserver configuration")), + "green": (self.add, _("add a nameserver entry")), + "yellow": (self.remove, _("remove a nameserver entry")), + }) + self.list = [] ConfigListScreen.__init__(self, self.list) @@ -222,31 +272,51 @@ class NameserverSetup(Screen, ConfigListScreen): self.createConfig() self.createSetup() -class AdapterSetup(Screen, ConfigListScreen): +class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): def __init__(self, session, iface,essid=None, aplist=None): Screen.__init__(self, session) + HelpableScreen.__init__(self) self.session = session self.iface = iface self.essid = essid self.aplist = aplist self.extended = None + self.applyConfigRef = None + self.finished_cb = None + self.oktext = _("Press OK on your remote control to continue.") self.oldInterfaceState = iNetwork.getAdapterAttribute(self.iface, "up") - iNetwork.getInterfaces() - - self.createConfig() + #iNetwork.getInterfaces() - self["actions"] = NumberActionMap(["SetupActions", "ColorActions"], + self.createConfig() + + self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions", + { + "cancel": (self.close, _("exit networkadapter setup menu")), + "ok": (self.ok, _("select menu entry")), + }) + + self["ColorActions"] = HelpableActionMap(self, "ColorActions", + { + "red": (self.cancel, _("exit networkadapter configuration")), + "blue": (self.KeyBlue, _("open nameserver configuration")), + }) + + self["VirtualKB"] = HelpableActionMap(self, "ColorActions", + { + "green": (self.KeyGreen, [_("open virtual keyboard input help"),_("* Only available when entering hidden ssid or network key")] ), + }) + + self["actions"] = NumberActionMap(["SetupActions"], { "ok": self.ok, - "cancel": self.cancel, - "red": self.cancel, - "blue": self.KeyBlue, }, -2) + self.list = [] ConfigListScreen.__init__(self, self.list,session = self.session) self.createSetup() self.onLayoutFinish.append(self.layoutFinished) + self.onClose.append(self.cleanup) self["DNS1text"] = Label(_("Primary DNS")) self["DNS2text"] = Label(_("Secondary DNS")) @@ -271,56 +341,81 @@ class AdapterSetup(Screen, ConfigListScreen): self["ButtonRedtext"] = Label(_("Close")) self["ButtonBlue"] = Pixmap() self["ButtonBluetext"] = Label(_("Edit DNS")) + self["ButtonGreen"] = Pixmap() + self["VKeyIcon"] = Pixmap() + self["HelpWindow"] = Pixmap() def layoutFinished(self): self["DNS1"].setText(self.primaryDNS.getText()) self["DNS2"].setText(self.secondaryDNS.getText()) if self.ipConfigEntry.getText() is not None: - self["IP"].setText(self.ipConfigEntry.getText()) + if self.ipConfigEntry.getText() == "0.0.0.0": + self["IP"].setText(_("N/A")) + else: + self["IP"].setText(self.ipConfigEntry.getText()) else: - self["IP"].setText([0,0,0,0]) - self["Mask"].setText(self.netmaskConfigEntry.getText()) + self["IP"].setText(_("N/A")) + if self.netmaskConfigEntry.getText() is not None: + if self.netmaskConfigEntry.getText() == "0.0.0.0": + self["Mask"].setText(_("N/A")) + else: + self["Mask"].setText(self.netmaskConfigEntry.getText()) + else: + self["IP"].setText(_("N/A")) if iNetwork.getAdapterAttribute(self.iface, "gateway"): - self["Gateway"].setText(self.gatewayConfigEntry.getText()) + if self.gatewayConfigEntry.getText() == "0.0.0.0": + self["Gateway"].setText(_("N/A")) + else: + self["Gateway"].setText(self.gatewayConfigEntry.getText()) else: self["Gateway"].hide() self["Gatewaytext"].hide() self["Adapter"].setText(iNetwork.getFriendlyAdapterName(self.iface)) + self["ButtonGreen"].hide() + self["VKeyIcon"].hide() + self["VirtualKB"].setEnabled(False) + self["HelpWindow"].hide() def createConfig(self): self.InterfaceEntry = None self.dhcpEntry = None self.gatewayEntry = None - self.SSIDscan = None + self.hiddenSSID = None self.wlanSSID = None - self.manualwlanSSID = None self.encryptionEnabled = None self.encryptionKey = None + self.encryptionType = None self.nwlist = None + self.encryptionlist = None + self.weplist = None self.wsconfig = None self.default = None if self.iface == "wlan0" or self.iface == "ath0" : from Plugins.SystemPlugins.WirelessLan.Wlan import wpaSupplicant,Wlan + self.w = Wlan(self.iface) self.ws = wpaSupplicant() - list = [] - list.append(_("WEP")) - list.append(_("WPA")) - list.append(_("WPA2")) + self.encryptionlist = [] + self.encryptionlist.append(("WEP", _("WEP"))) + self.encryptionlist.append(("WPA", _("WPA"))) + self.encryptionlist.append(("WPA2", _("WPA2"))) + self.encryptionlist.append(("WPA/WPA2", _("WPA or WPA2"))) + self.weplist = [] + self.weplist.append("ASCII") + self.weplist.append("HEX") if self.aplist is not None: self.nwlist = self.aplist self.nwlist.sort(key = lambda x: x[0]) else: self.nwlist = [] - self.w = None self.aps = None try: - self.w = Wlan(self.iface) self.aps = self.w.getNetworkList() if self.aps is not None: print "[NetworkSetup.py] got Accespoints!" - for ap in aps: - a = aps[ap] + print self.aps + for ap in self.aps: + a = self.aps[ap] if a['active']: if a['essid'] == "": a['essid'] = a['bssid'] @@ -330,17 +425,23 @@ class AdapterSetup(Screen, ConfigListScreen): self.nwlist.append("No Networks found") self.wsconfig = self.ws.loadConfig() - self.default = self.essid or self.wsconfig['ssid'] + if self.essid is not None: # ssid from wlan scan + self.default = self.essid + else: + self.default = self.wsconfig['ssid'] + + if "hidden..." not in self.nwlist: + self.nwlist.append("hidden...") if self.default not in self.nwlist: self.nwlist.append(self.default) - config.plugins.wlan.essidscan = NoSave(ConfigYesNo(default = self.wsconfig['ssidscan'])) - if self.wsconfig['ssidscan'] is True: - config.plugins.wlan.essid = NoSave(ConfigSelection(self.nwlist, default = self.default )) - else: - config.plugins.wlan.essid = NoSave(ConfigText(default = self.default, visible_width = 50, fixed_size = False)) + + config.plugins.wlan.essid = NoSave(ConfigSelection(self.nwlist, default = self.default )) + config.plugins.wlan.hiddenessid = NoSave(ConfigText(default = self.wsconfig['hiddenessid'], visible_width = 50, fixed_size = False)) + config.plugins.wlan.encryption.enabled = NoSave(ConfigYesNo(default = self.wsconfig['encryption'] )) - config.plugins.wlan.encryption.type = NoSave(ConfigSelection(list, default = self.wsconfig['encryption_type'] )) - config.plugins.wlan.encryption.psk = NoSave(ConfigText(default = self.wsconfig['key'], visible_width = 50, fixed_size = False)) + config.plugins.wlan.encryption.type = NoSave(ConfigSelection(self.encryptionlist, default = self.wsconfig['encryption_type'] )) + config.plugins.wlan.encryption.wepkeytype = NoSave(ConfigSelection(self.weplist, default = self.wsconfig['encryption_wepkeytype'] )) + config.plugins.wlan.encryption.psk = NoSave(ConfigPassword(default = self.wsconfig['key'], visible_width = 50, fixed_size = False)) self.activateInterfaceEntry = NoSave(ConfigYesNo(default=iNetwork.getAdapterAttribute(self.iface, "up") or False)) self.dhcpConfigEntry = NoSave(ConfigYesNo(default=iNetwork.getAdapterAttribute(self.iface, "dhcp") or False)) @@ -382,26 +483,56 @@ class AdapterSetup(Screen, ConfigListScreen): self.configStrings = p.__call__["configStrings"] else: self.configStrings = None - self.SSIDscan = getConfigListEntry(_("Automatic SSID lookup"), config.plugins.wlan.essidscan) - self.list.append(self.SSIDscan) - self.wlanSSID = getConfigListEntry(_("Network SSID"), config.plugins.wlan.essid) - self.list.append(self.wlanSSID) + if config.plugins.wlan.essid.value == 'hidden...': + self.wlanSSID = getConfigListEntry(_("Network SSID"), config.plugins.wlan.essid) + self.list.append(self.wlanSSID) + self.hiddenSSID = getConfigListEntry(_("Hidden network SSID"), config.plugins.wlan.hiddenessid) + self.list.append(self.hiddenSSID) + else: + self.wlanSSID = getConfigListEntry(_("Network SSID"), config.plugins.wlan.essid) + self.list.append(self.wlanSSID) self.encryptionEnabled = getConfigListEntry(_("Encryption"), config.plugins.wlan.encryption.enabled) self.list.append(self.encryptionEnabled) if config.plugins.wlan.encryption.enabled.value: - self.list.append(getConfigListEntry(_("Encryption Type"), config.plugins.wlan.encryption.type)) - self.encryptionKey = getConfigListEntry(_("Encryption Key"), config.plugins.wlan.encryption.psk) - self.list.append(self.encryptionKey) + self.encryptionType = getConfigListEntry(_("Encryption Type"), config.plugins.wlan.encryption.type) + self.list.append(self.encryptionType) + if config.plugins.wlan.encryption.type.value == 'WEP': + self.list.append(getConfigListEntry(_("Encryption Keytype"), config.plugins.wlan.encryption.wepkeytype)) + self.encryptionKey = getConfigListEntry(_("Encryption Key"), config.plugins.wlan.encryption.psk) + self.list.append(self.encryptionKey) + else: + self.encryptionKey = getConfigListEntry(_("Encryption Key"), config.plugins.wlan.encryption.psk) + self.list.append(self.encryptionKey) + self["config"].list = self.list self["config"].l.setList(self.list) + if not self.selectionChanged in self["config"].onSelectionChanged: + self["config"].onSelectionChanged.append(self.selectionChanged) def KeyBlue(self): self.session.openWithCallback(self.NameserverSetupClosed, NameserverSetup) + def KeyGreen(self): + if self.iface == "wlan0" or self.iface == "ath0" : + if self["config"].getCurrent() == self.hiddenSSID: + if config.plugins.wlan.essid.value == 'hidden...': + self.session.openWithCallback(self.VirtualKeyBoardSSIDCallback, VirtualKeyBoard, title = (_("Enter WLAN networkname/SSID:")), text = config.plugins.wlan.essid.value) + if self["config"].getCurrent() == self.encryptionKey: + self.session.openWithCallback(self.VirtualKeyBoardKeyCallback, VirtualKeyBoard, title = (_("Enter WLAN passphrase/key:")), text = config.plugins.wlan.encryption.psk.value) + + def VirtualKeyBoardSSIDCallback(self, callback = None): + if callback is not None and len(callback): + config.plugins.wlan.hiddenessid = NoSave(ConfigText(default = callback, visible_width = 50, fixed_size = False)) + self.createSetup() + + def VirtualKeyBoardKeyCallback(self, callback = None): + if callback is not None and len(callback): + config.plugins.wlan.encryption.psk = NoSave(ConfigPassword(default = callback, visible_width = 50, fixed_size = False)) + self.createSetup() + def newConfig(self): - print self["config"].getCurrent() if self["config"].getCurrent() == self.InterfaceEntry: self.createSetup() if self["config"].getCurrent() == self.dhcpEntry: @@ -409,15 +540,12 @@ class AdapterSetup(Screen, ConfigListScreen): if self["config"].getCurrent() == self.gatewayEntry: self.createSetup() if self.iface == "wlan0" or self.iface == "ath0" : - if self["config"].getCurrent() == self.SSIDscan: - if config.plugins.wlan.essidscan.value is True: - config.plugins.wlan.essid = NoSave(ConfigSelection(self.nwlist, default = self.default )) - else: - config.plugins.wlan.essid = NoSave(ConfigText(default = self.default, visible_width = 50, fixed_size = False)) + if self["config"].getCurrent() == self.wlanSSID: self.createSetup() if self["config"].getCurrent() == self.encryptionEnabled: self.createSetup() - + if self["config"].getCurrent() == self.encryptionType: + self.createSetup() def keyLeft(self): ConfigListScreen.keyLeft(self) self.newConfig() @@ -426,24 +554,92 @@ class AdapterSetup(Screen, ConfigListScreen): ConfigListScreen.keyRight(self) self.newConfig() + def selectionChanged(self): + current = self["config"].getCurrent() + if current == self.hiddenSSID and config.plugins.wlan.essid.value == 'hidden...': + helpwindowpos = self["HelpWindow"].getPosition() + if current[1].help_window.instance is not None: + current[1].help_window.instance.move(ePoint(helpwindowpos[0],helpwindowpos[1])) + self["ButtonGreen"].show() + self["VKeyIcon"].show() + self["VirtualKB"].setEnabled(True) + elif current == self.encryptionKey and config.plugins.wlan.encryption.enabled.value: + helpwindowpos = self["HelpWindow"].getPosition() + if current[1].help_window.instance is not None: + current[1].help_window.instance.move(ePoint(helpwindowpos[0],helpwindowpos[1])) + self["ButtonGreen"].show() + self["VKeyIcon"].show() + self["VirtualKB"].setEnabled(True) + else: + self["ButtonGreen"].hide() + self["VKeyIcon"].hide() + self["VirtualKB"].setEnabled(False) + def ok(self): - iNetwork.setAdapterAttribute(self.iface, "up", self.activateInterfaceEntry.value) - iNetwork.setAdapterAttribute(self.iface, "dhcp", self.dhcpConfigEntry.value) - iNetwork.setAdapterAttribute(self.iface, "ip", self.ipConfigEntry.value) - iNetwork.setAdapterAttribute(self.iface, "netmask", self.netmaskConfigEntry.value) - if self.hasGatewayConfigEntry.value: - iNetwork.setAdapterAttribute(self.iface, "gateway", self.gatewayConfigEntry.value) + current = self["config"].getCurrent() + if current == self.hiddenSSID and config.plugins.wlan.essid.value == 'hidden...': + if current[1].help_window.instance is not None: + current[1].help_window.instance.hide() + elif current == self.encryptionKey and config.plugins.wlan.encryption.enabled.value: + if current[1].help_window.instance is not None: + current[1].help_window.instance.hide() + self.session.openWithCallback(self.applyConfig, MessageBox, (_("Are you sure you want to activate this network configuration?\n\n") + self.oktext ) ) + + def applyConfig(self, ret = False): + if (ret == True): + iNetwork.setAdapterAttribute(self.iface, "up", self.activateInterfaceEntry.value) + iNetwork.setAdapterAttribute(self.iface, "dhcp", self.dhcpConfigEntry.value) + iNetwork.setAdapterAttribute(self.iface, "ip", self.ipConfigEntry.value) + iNetwork.setAdapterAttribute(self.iface, "netmask", self.netmaskConfigEntry.value) + if self.hasGatewayConfigEntry.value: + iNetwork.setAdapterAttribute(self.iface, "gateway", self.gatewayConfigEntry.value) + else: + iNetwork.removeAdapterAttribute(self.iface, "gateway") + if self.extended is not None and self.configStrings is not None: + iNetwork.setAdapterAttribute(self.iface, "configStrings", self.configStrings(self.iface)) + self.ws.writeConfig() + if self.activateInterfaceEntry.value is False: + iNetwork.deactivateInterface(self.iface) + iNetwork.writeNetworkConfig() + iNetwork.restartNetwork(self.applyConfigDataAvail) + self.applyConfigRef = self.session.openWithCallback(self.applyConfigfinishedCB, MessageBox, _("Please wait while activating your network configuration..."), type = MessageBox.TYPE_INFO, enable_input = False) else: - iNetwork.removeAdapterAttribute(self.iface, "gateway") - if self.extended is not None and self.configStrings is not None: - iNetwork.setAdapterAttribute(self.iface, "configStrings", self.configStrings(self.iface)) - self.ws.writeConfig() - if self.activateInterfaceEntry.value is False: - iNetwork.deactivateInterface(self.iface) - iNetwork.writeNetworkConfig() - iNetwork.deactivateNetworkConfig() - iNetwork.activateNetworkConfig() - self.close() + self.cancel() + + def applyConfigDataAvail(self, data): + if data is True: + iNetwork.getInterfaces(self.getInterfacesDataAvail) + + def getInterfacesDataAvail(self, data): + if data is True: + self.applyConfigRef.close(True) + + def applyConfigfinishedCB(self,data): + if data is True: + num_configured_if = len(iNetwork.getConfiguredAdapters()) + if num_configured_if >= 2: + self.session.openWithCallback(self.secondIfaceFoundCB, MessageBox, _("Your network configuration has been activated.\nA second configured interface has been found.\n\nDo you want to disable the second networkinterface?"), default = True) + else: + if self.finished_cb: + self.session.openWithCallback(self.finished_cb, MessageBox, _("Your network configuration has been activated."), type = MessageBox.TYPE_INFO, timeout = 10) + else: + self.session.openWithCallback(self.ConfigfinishedCB, MessageBox, _("Your network configuration has been activated."), type = MessageBox.TYPE_INFO, timeout = 10) + + def secondIfaceFoundCB(self,data): + if data is False: + self.close('ok') + else: + configuredInterfaces = configuredNetworkAdapters + for interface in configuredInterfaces: + if interface == self.iface: + continue + iNetwork.setAdapterAttribute(interface, "up", False) + iNetwork.deactivateInterface(interface) + self.applyConfig(True) + + def ConfigfinishedCB(self,data): + if data is True: + self.close('ok') def cancel(self): iNetwork.setAdapterAttribute(self.iface, "up", self.oldInterfaceState) @@ -451,11 +647,12 @@ class AdapterSetup(Screen, ConfigListScreen): if self.activateInterfaceEntry.value is False: iNetwork.deactivateInterface(self.iface) iNetwork.getInterfaces() - self.close() + self.close('cancel') - def run(self): + def runAsync(self, finished_cb): + self.finished_cb = finished_cb self.ok() - + def NameserverSetupClosed(self, *ret): iNetwork.loadNameserverConfig() nameserver = (iNetwork.getNameserverList() + [[0,0,0,0]] * 2)[0:2] @@ -463,13 +660,18 @@ class AdapterSetup(Screen, ConfigListScreen): self.secondaryDNS = NoSave(ConfigIP(default=nameserver[1])) self.createSetup() self.layoutFinished() - + + def cleanup(self): + iNetwork.stopLinkStateConsole() + iNetwork.stopRestartConsole() -class AdapterSetupConfiguration(Screen): +class AdapterSetupConfiguration(Screen, HelpableScreen): def __init__(self, session,iface): Screen.__init__(self, session) + HelpableScreen.__init__(self) self.session = session self.iface = iface + self.restartLanRef = None self.mainmenu = self.genMainMenu() self["menulist"] = MenuList(self.mainmenu) self["description"] = Label() @@ -485,8 +687,27 @@ class AdapterSetupConfiguration(Screen): self.oktext = _("Press OK on your remote control to continue.") self.reboottext = _("Your Dreambox will restart after pressing OK on your remote control.") - self.errortext = _("No working wireless interface found.\n Please verify that you have attached a compatible WLAN device or enable your local network interface.") + self.errortext = _("No working wireless interface found.\n Please verify that you have attached a compatible WLAN device or enable you local network interface.") + + self["WizardActions"] = HelpableActionMap(self, "WizardActions", + { + "up": (self.up, _("move up to previous entry")), + "down": (self.down, _("move down to next entry")), + "left": (self.left, _("move up to first entry")), + "right": (self.right, _("move down to last entry")), + }) + self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions", + { + "cancel": (self.close, _("exit networkadapter setup menu")), + "ok": (self.ok, _("select menu entry")), + }) + + self["ColorActions"] = HelpableActionMap(self, "ColorActions", + { + "red": (self.close, _("exit networkadapter setup menu")), + }) + self["actions"] = NumberActionMap(["WizardActions","ShortcutActions"], { "ok": self.ok, @@ -498,9 +719,10 @@ class AdapterSetupConfiguration(Screen): "right": self.right, }, -2) - iNetwork.getInterfaces() + iNetwork.getInterfaces(self.updateStatusbar) self.onLayoutFinish.append(self.layoutFinished) - self.updateStatusbar() + self.onClose.append(self.cleanup) + self.onHide.append(self.cleanup) def ok(self): if self["menulist"].getCurrent()[1] == 'edit': @@ -549,7 +771,6 @@ class AdapterSetupConfiguration(Screen): self.wlanresponse = ifobj.getStatistics() if self.wlanresponse[0] != 19: self.session.openWithCallback(self.AdapterSetupClosed, WlanStatus,self.iface) - #self.session.open(WlanStatus,self.iface) else: # Display Wlan not available Message self.showErrorMessage() @@ -584,6 +805,7 @@ class AdapterSetupConfiguration(Screen): self.loadDescription() def loadDescription(self): + print self["menulist"].getCurrent()[1] if self["menulist"].getCurrent()[1] == 'edit': self["description"].setText(_("Edit the network configuration of your Dreambox.\n" ) + self.oktext ) if self["menulist"].getCurrent()[1] == 'test': @@ -601,7 +823,7 @@ class AdapterSetupConfiguration(Screen): if self["menulist"].getCurrent()[1][0] == 'extendedSetup': self["description"].setText(_(self["menulist"].getCurrent()[1][1]) + self.oktext ) - def updateStatusbar(self): + def updateStatusbar(self, data = None): self["IFtext"].setText(_("Network:")) self["IF"].setText(iNetwork.getFriendlyAdapterName(self.iface)) self["Statustext"].setText(_("Link:")) @@ -661,21 +883,52 @@ class AdapterSetupConfiguration(Screen): return menu def AdapterSetupClosed(self, *ret): - self.mainmenu = self.genMainMenu() - self["menulist"].l.setList(self.mainmenu) - iNetwork.getInterfaces() - self.updateStatusbar() + if ret is not None and len(ret): + if ret[0] == 'ok' and (self.iface == 'wlan0' or self.iface == 'ath0') and iNetwork.getAdapterAttribute(self.iface, "up") is True: + try: + from Plugins.SystemPlugins.WirelessLan.plugin import WlanStatus + from Plugins.SystemPlugins.WirelessLan.iwlibs import Wireless + except ImportError: + self.session.open(MessageBox, _("The wireless LAN plugin is not installed!\nPlease install it."), type = MessageBox.TYPE_INFO,timeout = 10 ) + else: + ifobj = Wireless(self.iface) # a Wireless NIC Object + self.wlanresponse = ifobj.getStatistics() + if self.wlanresponse[0] != 19: + self.session.openWithCallback(self.AdapterSetupClosed, WlanStatus,self.iface) + else: + # Display Wlan not available Message + self.showErrorMessage() + else: + self.mainmenu = self.genMainMenu() + self["menulist"].l.setList(self.mainmenu) + iNetwork.getInterfaces(self.updateStatusbar) + else: + self.mainmenu = self.genMainMenu() + self["menulist"].l.setList(self.mainmenu) + iNetwork.getInterfaces(self.updateStatusbar) def WlanScanClosed(self,*ret): if ret[0] is not None: self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetup, self.iface,ret[0],ret[1]) else: - self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetup, self.iface,None,ret[0]) - + self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetup, self.iface,None,None) def restartLan(self, ret = False): if (ret == True): - iNetwork.restartNetwork() + iNetwork.restartNetwork(self.restartLanDataAvail) + self.restartLanRef = self.session.openWithCallback(self.restartfinishedCB, MessageBox, _("Please wait while your network is restarting..."), type = MessageBox.TYPE_INFO, enable_input = False) + + def restartLanDataAvail(self, data): + if data is True: + iNetwork.getInterfaces(self.getInterfacesDataAvail) + + def getInterfacesDataAvail(self, data): + if data is True: + self.restartLanRef.close(True) + + def restartfinishedCB(self,data): + if data is True: + self.session.open(MessageBox, _("Finished restarting your network"), type = MessageBox.TYPE_INFO, timeout = 10, default = False) def getLinkState(self,iface): iNetwork.getLinkState(iface,self.dataAvail) @@ -693,12 +946,16 @@ class AdapterSetupConfiguration(Screen): def showErrorMessage(self): self.session.open(MessageBox, self.errortext, type = MessageBox.TYPE_INFO,timeout = 10 ) + + def cleanup(self): + iNetwork.stopLinkStateConsole() class NetworkAdapterTest(Screen): def __init__(self, session,iface): Screen.__init__(self, session) self.iface = iface + self.oldInterfaceState = iNetwork.getAdapterAttribute(self.iface, "up") iNetwork.getInterfaces() self.setLabels() @@ -713,8 +970,8 @@ class NetworkAdapterTest(Screen): self["shortcuts"] = ActionMap(["ShortcutActions","WizardActions"], { - "red": self.close, - "back": self.close, + "red": self.cancel, + "back": self.cancel, }, -2) self["infoshortcuts"] = ActionMap(["ShortcutActions","WizardActions"], { @@ -745,6 +1002,12 @@ class NetworkAdapterTest(Screen): self.nextStepTimer = eTimer() self.nextStepTimer.callback.append(self.nextStepTimerFire) + def cancel(self): + if self.oldInterfaceState is False: + iNetwork.setAdapterAttribute(self.iface, "up", self.oldInterfaceState) + iNetwork.deactivateInterface(self.iface) + self.close() + def closeInfo(self): self["shortcuts"].setEnabled(True) self["infoshortcuts"].setEnabled(False) @@ -874,48 +1137,15 @@ class NetworkAdapterTest(Screen): def doStep5(self): self["IPtext"].setForegroundColorNum(1) - ret = iNetwork.checkNetworkState() - if ret == True: - self["IP"].setForegroundColorNum(2) - self["IP"].setText(_("confirmed")) - self["IPInfo_Check"].setPixmapNum(0) - else: - self["IP"].setForegroundColorNum(1) - self["IP"].setText(_("unconfirmed")) - self["IPInfo_Check"].setPixmapNum(1) - self["IPInfo_Check"].show() - self["IPInfo_Text"].setForegroundColorNum(1) - self.steptimer = True - self.nextStepTimer.start(3000) + self["IP"].setText(_("Please wait...")) + iNetwork.checkNetworkState(self.NetworkStatedataAvail) def doStep6(self): self.steptimer = False self.nextStepTimer.stop() self["DNStext"].setForegroundColorNum(1) - ret = iNetwork.checkDNSLookup() - if ret == True: - self["DNS"].setForegroundColorNum(2) - self["DNS"].setText(_("confirmed")) - self["DNSInfo_Check"].setPixmapNum(0) - else: - self["DNS"].setForegroundColorNum(1) - self["DNS"].setText(_("unconfirmed")) - self["DNSInfo_Check"].setPixmapNum(1) - self["DNSInfo_Check"].show() - self["DNSInfo_Text"].setForegroundColorNum(1) - - self["EditSettings_Text"].show() - self["EditSettingsButton"].setPixmapNum(1) - self["EditSettings_Text"].setForegroundColorNum(2) # active - self["EditSettingsButton"].show() - self["ButtonYellow_Check"].setPixmapNum(1) - self["ButtonGreentext"].setText(_("Restart test")) - self["ButtonGreen_Check"].setPixmapNum(0) - self["shortcutsgreen"].setEnabled(False) - self["shortcutsgreen_restart"].setEnabled(True) - self["shortcutsyellow"].setEnabled(False) - self["updown_actions"].setEnabled(True) - self.activebutton = 6 + self["DNS"].setText(_("Please wait...")) + iNetwork.checkDNSLookup(self.DNSLookupdataAvail) def KeyGreen(self): self["shortcutsgreen"].setEnabled(False) @@ -1076,9 +1306,9 @@ class NetworkAdapterTest(Screen): self["NetworkInfo_Check"].setPixmapNum(1) self["NetworkInfo_Check"].show() else: - iNetwork.getLinkState(iface,self.dataAvail) + iNetwork.getLinkState(iface,self.LinkStatedataAvail) - def dataAvail(self,data): + def LinkStatedataAvail(self,data): self.output = data.strip() result = self.output.split('\n') pattern = re_compile("Link detected: yes") @@ -1093,4 +1323,44 @@ class NetworkAdapterTest(Screen): self["NetworkInfo_Check"].setPixmapNum(1) self["NetworkInfo_Check"].show() - + def NetworkStatedataAvail(self,data): + print "DATA",data + if data <= 2: + self["IP"].setForegroundColorNum(2) + self["IP"].setText(_("confirmed")) + self["IPInfo_Check"].setPixmapNum(0) + else: + self["IP"].setForegroundColorNum(1) + self["IP"].setText(_("unconfirmed")) + self["IPInfo_Check"].setPixmapNum(1) + self["IPInfo_Check"].show() + self["IPInfo_Text"].setForegroundColorNum(1) + self.steptimer = True + self.nextStepTimer.start(3000) + + def DNSLookupdataAvail(self,data): + print "DATA",data + if data <= 2: + self["DNS"].setForegroundColorNum(2) + self["DNS"].setText(_("confirmed")) + self["DNSInfo_Check"].setPixmapNum(0) + else: + self["DNS"].setForegroundColorNum(1) + self["DNS"].setText(_("unconfirmed")) + self["DNSInfo_Check"].setPixmapNum(1) + self["DNSInfo_Check"].show() + self["DNSInfo_Text"].setForegroundColorNum(1) + self["EditSettings_Text"].show() + self["EditSettingsButton"].setPixmapNum(1) + self["EditSettings_Text"].setForegroundColorNum(2) # active + self["EditSettingsButton"].show() + self["ButtonYellow_Check"].setPixmapNum(1) + self["ButtonGreentext"].setText(_("Restart test")) + self["ButtonGreen_Check"].setPixmapNum(0) + self["shortcutsgreen"].setEnabled(False) + self["shortcutsgreen_restart"].setEnabled(True) + self["shortcutsyellow"].setEnabled(False) + self["updown_actions"].setEnabled(True) + self.activebutton = 6 + + \ No newline at end of file -- cgit v1.2.3 From 040e658a3f89783e0030392110e87cc992264cdd Mon Sep 17 00:00:00 2001 From: Mladen Horvat Date: Wed, 5 Nov 2008 20:22:38 +0100 Subject: some fixes B A A --- lib/python/Components/Network.py | 5 ++ lib/python/Screens/NetworkSetup.py | 102 ++++++++++++++++++++++++------------- 2 files changed, 73 insertions(+), 34 deletions(-) (limited to 'lib/python/Screens/NetworkSetup.py') diff --git a/lib/python/Components/Network.py b/lib/python/Components/Network.py index e10c6a0e..8e9fc120 100755 --- a/lib/python/Components/Network.py +++ b/lib/python/Components/Network.py @@ -20,6 +20,7 @@ class Network: self.deactivateConsole = Console() self.activateConsole = Console() self.resetNetworkConsole = Console() + self.DnsConsole = Console() self.getInterfaces() def getInterfaces(self, callback = None): @@ -445,6 +446,10 @@ class Network: if self.LinkConsole is not None: self.LinkConsole = None + def stopDNSConsole(self): + if self.DnsConsole is not None: + self.DnsConsole = None + def stopRestartConsole(self): if self.restartConsole is not None: self.restartConsole = None diff --git a/lib/python/Screens/NetworkSetup.py b/lib/python/Screens/NetworkSetup.py index c26302fa..6ace1857 100755 --- a/lib/python/Screens/NetworkSetup.py +++ b/lib/python/Screens/NetworkSetup.py @@ -770,7 +770,7 @@ class AdapterSetupConfiguration(Screen, HelpableScreen): ifobj = Wireless(self.iface) # a Wireless NIC Object self.wlanresponse = ifobj.getStatistics() if self.wlanresponse[0] != 19: - self.session.openWithCallback(self.AdapterSetupClosed, WlanStatus,self.iface) + self.session.openWithCallback(self.WlanStatusClosed, WlanStatus,self.iface) else: # Display Wlan not available Message self.showErrorMessage() @@ -830,19 +830,14 @@ class AdapterSetupConfiguration(Screen, HelpableScreen): if self.iface == 'wlan0' or self.iface == 'ath0': try: - from Plugins.SystemPlugins.WirelessLan.Wlan import Wlan - w = Wlan(self.iface) - stats = w.getStatus() - if stats['BSSID'] == "00:00:00:00:00:00": - self["statuspic"].setPixmapNum(1) - else: - self["statuspic"].setPixmapNum(0) - self["statuspic"].show() + from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status except: self["statuspic"].setPixmapNum(1) self["statuspic"].show() + else: + iStatus.getDataForInterface(self.iface,self.getInfoCB) else: - self.getLinkState(self.iface) + iNetwork.getLinkState(self.iface,self.dataAvail) def doNothing(self): pass @@ -894,7 +889,7 @@ class AdapterSetupConfiguration(Screen, HelpableScreen): ifobj = Wireless(self.iface) # a Wireless NIC Object self.wlanresponse = ifobj.getStatistics() if self.wlanresponse[0] != 19: - self.session.openWithCallback(self.AdapterSetupClosed, WlanStatus,self.iface) + self.session.openWithCallback(self.WlanStatusClosed, WlanStatus,self.iface) else: # Display Wlan not available Message self.showErrorMessage() @@ -907,6 +902,14 @@ class AdapterSetupConfiguration(Screen, HelpableScreen): self["menulist"].l.setList(self.mainmenu) iNetwork.getInterfaces(self.updateStatusbar) + def WlanStatusClosed(self, *ret): + if ret is not None and len(ret): + from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status + iStatus.stopWlanConsole() + self.mainmenu = self.genMainMenu() + self["menulist"].l.setList(self.mainmenu) + iNetwork.getInterfaces(self.updateStatusbar) + def WlanScanClosed(self,*ret): if ret[0] is not None: self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetup, self.iface,ret[0],ret[1]) @@ -930,18 +933,15 @@ class AdapterSetupConfiguration(Screen, HelpableScreen): if data is True: self.session.open(MessageBox, _("Finished restarting your network"), type = MessageBox.TYPE_INFO, timeout = 10, default = False) - def getLinkState(self,iface): - iNetwork.getLinkState(iface,self.dataAvail) - def dataAvail(self,data): self.output = data.strip() result = self.output.split('\n') pattern = re_compile("Link detected: yes") for item in result: if re_search(pattern, item): - self["statuspic"].setPixmapNum(0) - else: self["statuspic"].setPixmapNum(1) + else: + self["statuspic"].setPixmapNum(0) self["statuspic"].show() def showErrorMessage(self): @@ -949,7 +949,27 @@ class AdapterSetupConfiguration(Screen, HelpableScreen): def cleanup(self): iNetwork.stopLinkStateConsole() - + try: + from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status + except ImportError: + pass + else: + iStatus.stopWlanConsole() + + def getInfoCB(self,data,status): + print "im getInfoCB" + if data is not None: + if data is True: + if status is not None: + print "im getInfoCB status" + print "acesspoint",status[self.iface]["acesspoint"] + if status[self.iface]["acesspoint"] == "No Connection" or status[self.iface]["acesspoint"] == "Not-Associated" or status[self.iface]["acesspoint"] == False: + print "setting statuspix 1" + self["statuspic"].setPixmapNum(1) + else: + self["statuspic"].setPixmapNum(0) + print "setting statuspix 0" + self["statuspic"].show() class NetworkAdapterTest(Screen): def __init__(self, session,iface): @@ -958,6 +978,8 @@ class NetworkAdapterTest(Screen): self.oldInterfaceState = iNetwork.getAdapterAttribute(self.iface, "up") iNetwork.getInterfaces() self.setLabels() + self.onClose.append(self.cleanup) + self.onHide.append(self.cleanup) self["updown_actions"] = NumberActionMap(["WizardActions","ShortcutActions"], { @@ -1115,6 +1137,7 @@ class NetworkAdapterTest(Screen): def doStep3(self): self["Networktext"].setForegroundColorNum(1) + self["Network"].setText(_("Please wait...")) self.getLinkState(self.iface) self["NetworkInfo_Text"].setForegroundColorNum(1) self.steptimer = True @@ -1287,24 +1310,14 @@ class NetworkAdapterTest(Screen): def getLinkState(self,iface): if iface == 'wlan0' or iface == 'ath0': try: - from Plugins.SystemPlugins.WirelessLan.Wlan import Wlan - w = Wlan(iface) - stats = w.getStatus() - if stats['BSSID'] == "00:00:00:00:00:00": - self["Network"].setForegroundColorNum(1) - self["Network"].setText(_("disconnected")) - self["NetworkInfo_Check"].setPixmapNum(1) - self["NetworkInfo_Check"].show() - else: - self["Network"].setForegroundColorNum(2) - self["Network"].setText(_("connected")) - self["NetworkInfo_Check"].setPixmapNum(0) - self["NetworkInfo_Check"].show() + from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status except: self["Network"].setForegroundColorNum(1) self["Network"].setText(_("disconnected")) self["NetworkInfo_Check"].setPixmapNum(1) self["NetworkInfo_Check"].show() + else: + iStatus.getDataForInterface(self.iface,self.getInfoCB) else: iNetwork.getLinkState(iface,self.LinkStatedataAvail) @@ -1324,7 +1337,6 @@ class NetworkAdapterTest(Screen): self["NetworkInfo_Check"].show() def NetworkStatedataAvail(self,data): - print "DATA",data if data <= 2: self["IP"].setForegroundColorNum(2) self["IP"].setText(_("confirmed")) @@ -1339,7 +1351,6 @@ class NetworkAdapterTest(Screen): self.nextStepTimer.start(3000) def DNSLookupdataAvail(self,data): - print "DATA",data if data <= 2: self["DNS"].setForegroundColorNum(2) self["DNS"].setText(_("confirmed")) @@ -1362,5 +1373,28 @@ class NetworkAdapterTest(Screen): self["shortcutsyellow"].setEnabled(False) self["updown_actions"].setEnabled(True) self.activebutton = 6 - - \ No newline at end of file + + def getInfoCB(self,data,status): + if data is not None: + if data is True: + if status is not None: + if status[self.iface]["acesspoint"] == "No Connection" or status[self.iface]["acesspoint"] == "Not-Associated" or status[self.iface]["acesspoint"] == False: + self["Network"].setForegroundColorNum(1) + self["Network"].setText(_("disconnected")) + self["NetworkInfo_Check"].setPixmapNum(1) + self["NetworkInfo_Check"].show() + else: + self["Network"].setForegroundColorNum(2) + self["Network"].setText(_("connected")) + self["NetworkInfo_Check"].setPixmapNum(0) + self["NetworkInfo_Check"].show() + + def cleanup(self): + iNetwork.stopLinkStateConsole() + iNetwork.stopDNSConsole() + try: + from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status + except ImportError: + pass + else: + iStatus.stopWlanConsole() \ No newline at end of file -- cgit v1.2.3 From 81d7587c5c5489dcc300cc4d91ca967838471472 Mon Sep 17 00:00:00 2001 From: acid-burn Date: Wed, 5 Nov 2008 22:39:18 +0100 Subject: remove debug --- lib/python/Screens/NetworkSetup.py | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) (limited to 'lib/python/Screens/NetworkSetup.py') diff --git a/lib/python/Screens/NetworkSetup.py b/lib/python/Screens/NetworkSetup.py index 6ace1857..7c9dc827 100755 --- a/lib/python/Screens/NetworkSetup.py +++ b/lib/python/Screens/NetworkSetup.py @@ -413,7 +413,7 @@ class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): self.aps = self.w.getNetworkList() if self.aps is not None: print "[NetworkSetup.py] got Accespoints!" - print self.aps + #print self.aps for ap in self.aps: a = self.aps[ap] if a['active']: @@ -957,18 +957,13 @@ class AdapterSetupConfiguration(Screen, HelpableScreen): iStatus.stopWlanConsole() def getInfoCB(self,data,status): - print "im getInfoCB" if data is not None: if data is True: if status is not None: - print "im getInfoCB status" - print "acesspoint",status[self.iface]["acesspoint"] if status[self.iface]["acesspoint"] == "No Connection" or status[self.iface]["acesspoint"] == "Not-Associated" or status[self.iface]["acesspoint"] == False: - print "setting statuspix 1" self["statuspic"].setPixmapNum(1) else: self["statuspic"].setPixmapNum(0) - print "setting statuspix 0" self["statuspic"].show() class NetworkAdapterTest(Screen): -- cgit v1.2.3 From 9519fb597efae0d6ba27d2d140285358fcb94979 Mon Sep 17 00:00:00 2001 From: acid-burn Date: Thu, 6 Nov 2008 10:14:43 +0100 Subject: fix typo --- lib/python/Screens/NetworkSetup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lib/python/Screens/NetworkSetup.py') diff --git a/lib/python/Screens/NetworkSetup.py b/lib/python/Screens/NetworkSetup.py index 7c9dc827..619db4e1 100755 --- a/lib/python/Screens/NetworkSetup.py +++ b/lib/python/Screens/NetworkSetup.py @@ -629,7 +629,7 @@ class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): if data is False: self.close('ok') else: - configuredInterfaces = configuredNetworkAdapters + configuredInterfaces = iNetwork.getConfiguredAdapters() for interface in configuredInterfaces: if interface == self.iface: continue -- cgit v1.2.3 From 56253715ea1292610ad7fc802a533a99304af8cb Mon Sep 17 00:00:00 2001 From: acid-burn Date: Thu, 6 Nov 2008 14:48:51 +0100 Subject: better async handling dont open adaptersetup after wlanscan close, only open on connect inside wlanscan some cleanups and fixes --- lib/python/Components/Network.py | 31 ++++++++++++++++------------ lib/python/Screens/NetworkSetup.py | 42 ++++++++++++++++++++++++-------------- 2 files changed, 45 insertions(+), 28 deletions(-) (limited to 'lib/python/Screens/NetworkSetup.py') diff --git a/lib/python/Components/Network.py b/lib/python/Components/Network.py index e317ef05..c41469da 100755 --- a/lib/python/Components/Network.py +++ b/lib/python/Components/Network.py @@ -18,6 +18,7 @@ class Network: self.LinkConsole = Console() self.restartConsole = Console() self.deactivateConsole = Console() + self.deactivateInterfaceConsole = Console() self.activateConsole = Console() self.resetNetworkConsole = Console() self.DnsConsole = Console() @@ -74,7 +75,7 @@ class Network: macRegexp = '[0-9]{2}\:[0-9]{2}\:[0-9]{2}\:[a-z0-9]{2}\:[a-z0-9]{2}\:[a-z0-9]{2}' ipLinePattern = re_compile('inet ' + ipRegexp + '/') ipPattern = re_compile(ipRegexp) - netmaskLinePattern = re_compile(ipRegexp + '/' + netRegexp) + netmaskLinePattern = re_compile('/' + netRegexp) netmaskPattern = re_compile(netRegexp) bcastLinePattern = re_compile(' brd ' + ipRegexp) upPattern = re_compile('UP') @@ -412,7 +413,7 @@ class Network: if len(self.PingConsole.appContainers) == 0: statecallback(self.NetworkState) - def restartNetwork(self,callback): + def restartNetwork(self,callback = None): self.restartConsole = Console() self.commands = [] self.commands.append("/etc/init.d/avahi-daemon stop") @@ -427,8 +428,8 @@ class Network: self.restartConsole.eBatch(self.commands, self.restartNetworkFinished, callback, debug=True) def restartNetworkFinished(self,extra_args): - callback = extra_args - if len(self.restartConsole.appContainers) == 0: + ( callback ) = extra_args + if callback is not None: callback(True) def getLinkState(self,iface,callback): @@ -454,12 +455,13 @@ class Network: if self.restartConsole is not None: self.restartConsole = None - def RestartConsoleRunning(self): - if self.restartConsole is not None: - if len(self.restartConsole.appContainers) == 0: - return False - else: - return True + def stopGetInterfacesConsole(self): + if self.Console is not None: + self.Console = None + + def stopDeactivateInterfaceConsole(self): + if self.deactivateInterfaceConsole: + self.deactivateInterfaceConsole = None def checkforInterface(self,iface): if self.getAdapterAttribute(iface, 'up') is True: @@ -492,17 +494,20 @@ class Network: if len(self.DnsConsole.appContainers) == 0: statecallback(self.DnsState) - def deactivateInterface(self,iface): + def deactivateInterface(self,iface,callback = None): self.deactivateInterfaceConsole = Console() self.commands = [] cmd1 = "ip addr flush " + iface cmd2 = "ifconfig " + iface + " down" self.commands.append(cmd1) self.commands.append(cmd2) - self.deactivateInterfaceConsole.eBatch(self.commands, self.deactivateInterfaceFinished, extra_args = None, debug=True) + self.deactivateInterfaceConsole.eBatch(self.commands, self.deactivateInterfaceFinished, callback, debug=True) def deactivateInterfaceFinished(self,extra_args): - pass + callback = extra_args + if len(self.deactivateInterfaceConsole.appContainers) == 0: + if callback is not None: + callback(True) def detectWlanModule(self): self.wlanmodule = None diff --git a/lib/python/Screens/NetworkSetup.py b/lib/python/Screens/NetworkSetup.py index 619db4e1..887e1674 100755 --- a/lib/python/Screens/NetworkSetup.py +++ b/lib/python/Screens/NetworkSetup.py @@ -285,13 +285,12 @@ class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): self.finished_cb = None self.oktext = _("Press OK on your remote control to continue.") self.oldInterfaceState = iNetwork.getAdapterAttribute(self.iface, "up") - #iNetwork.getInterfaces() self.createConfig() self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions", { - "cancel": (self.close, _("exit networkadapter setup menu")), + "cancel": (self.cancel, _("exit networkadapter setup menu")), "ok": (self.ok, _("select menu entry")), }) @@ -413,7 +412,6 @@ class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): self.aps = self.w.getNetworkList() if self.aps is not None: print "[NetworkSetup.py] got Accespoints!" - #print self.aps for ap in self.aps: a = self.aps[ap] if a['active']: @@ -638,17 +636,26 @@ class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): self.applyConfig(True) def ConfigfinishedCB(self,data): - if data is True: - self.close('ok') + if data is not None: + if data is True: + self.close('ok') def cancel(self): - iNetwork.setAdapterAttribute(self.iface, "up", self.oldInterfaceState) - self.activateInterfaceEntry.value = self.oldInterfaceState - if self.activateInterfaceEntry.value is False: - iNetwork.deactivateInterface(self.iface) - iNetwork.getInterfaces() - self.close('cancel') + if self.oldInterfaceState is False: + iNetwork.deactivateInterface(self.iface,self.deactivateInterfaceCB) + else: + self.close('cancel') + def deactivateInterfaceCB(self,data): + if data is not None: + if data is True: + iNetwork.getInterfaces(self.cancelCB) + + def cancelCB(self,data): + if data is not None: + if data is True: + self.close('cancel') + def runAsync(self, finished_cb): self.finished_cb = finished_cb self.ok() @@ -663,7 +670,8 @@ class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): def cleanup(self): iNetwork.stopLinkStateConsole() - iNetwork.stopRestartConsole() + iNetwork.stopDeactivateInterfaceConsole() + class AdapterSetupConfiguration(Screen, HelpableScreen): def __init__(self, session,iface): @@ -722,7 +730,6 @@ class AdapterSetupConfiguration(Screen, HelpableScreen): iNetwork.getInterfaces(self.updateStatusbar) self.onLayoutFinish.append(self.layoutFinished) self.onClose.append(self.cleanup) - self.onHide.append(self.cleanup) def ok(self): if self["menulist"].getCurrent()[1] == 'edit': @@ -914,8 +921,12 @@ class AdapterSetupConfiguration(Screen, HelpableScreen): if ret[0] is not None: self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetup, self.iface,ret[0],ret[1]) else: - self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetup, self.iface,None,None) - + from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status + iStatus.stopWlanConsole() + self.mainmenu = self.genMainMenu() + self["menulist"].l.setList(self.mainmenu) + iNetwork.getInterfaces(self.updateStatusbar) + def restartLan(self, ret = False): if (ret == True): iNetwork.restartNetwork(self.restartLanDataAvail) @@ -949,6 +960,7 @@ class AdapterSetupConfiguration(Screen, HelpableScreen): def cleanup(self): iNetwork.stopLinkStateConsole() + iNetwork.stopDeactivateInterfaceConsole() try: from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status except ImportError: -- cgit v1.2.3 From b81939c5a6375795d59a7fd8d9f81c0810c7eebe Mon Sep 17 00:00:00 2001 From: acid-burn Date: Fri, 7 Nov 2008 21:30:25 +0100 Subject: fix typos fix async callback translation update --- lib/python/Screens/NetworkSetup.py | 42 +++++++++++--------- po/de.po | 81 ++++++++++++++++++++++---------------- 2 files changed, 71 insertions(+), 52 deletions(-) (limited to 'lib/python/Screens/NetworkSetup.py') diff --git a/lib/python/Screens/NetworkSetup.py b/lib/python/Screens/NetworkSetup.py index 887e1674..580673e4 100755 --- a/lib/python/Screens/NetworkSetup.py +++ b/lib/python/Screens/NetworkSetup.py @@ -50,8 +50,8 @@ class NetworkAdapterSelection(Screen,HelpableScreen): Screen.__init__(self, session) HelpableScreen.__init__(self) - self.wlan_errortext = _("No working wireless networkadapter found.\nPlease verify that you have attached a compatible WLAN USB Stick and your Network is configured correctly.") - self.lan_errortext = _("No working local networkadapter found.\nPlease verify that you have attached a network cable and your Network is configured correctly.") + self.wlan_errortext = _("No working wireless network adapter found.\nPlease verify that you have attached a compatible WLAN device and your network is configured correctly.") + self.lan_errortext = _("No working local network adapter found.\nPlease verify that you have attached a network cable and your network is configured correctly.") self.oktext = _("Press OK on your remote control to continue.") self.restartLanRef = None @@ -67,18 +67,18 @@ class NetworkAdapterSelection(Screen,HelpableScreen): self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions", { - "cancel": (self.close, _("exit networkinterface list")), + "cancel": (self.close, _("exit network interface list")), "ok": (self.okbuttonClick, _("select interface")), }) self["ColorActions"] = HelpableActionMap(self, "ColorActions", { - "red": (self.close, _("exit networkinterface list")), + "red": (self.close, _("exit network interface list")), }) self["DefaultInterfaceAction"] = HelpableActionMap(self, "ColorActions", { - "blue": (self.setDefaultInterface, [_("Set interface as default Interface"),_("* Only available if more then one interface is active.")] ), + "blue": (self.setDefaultInterface, [_("Set interface as default Interface"),_("* Only available if more than one interface is active.")] ), }) self.list = [] @@ -273,13 +273,18 @@ class NameserverSetup(Screen, ConfigListScreen, HelpableScreen): self.createSetup() class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): - def __init__(self, session, iface,essid=None, aplist=None): + def __init__(self, session, networkinfo, essid=None, aplist=None): Screen.__init__(self, session) HelpableScreen.__init__(self) self.session = session - self.iface = iface - self.essid = essid - self.aplist = aplist + if isinstance(networkinfo, (list, tuple)): + self.iface = networkinfo[0] + self.essid = networkinfo[1] + self.aplist = networkinfo[2] + else: + self.iface = networkinfo + self.essid = essid + self.aplist = aplist self.extended = None self.applyConfigRef = None self.finished_cb = None @@ -290,19 +295,19 @@ class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions", { - "cancel": (self.cancel, _("exit networkadapter setup menu")), + "cancel": (self.cancel, _("exit network adapter setup menu")), "ok": (self.ok, _("select menu entry")), }) self["ColorActions"] = HelpableActionMap(self, "ColorActions", { - "red": (self.cancel, _("exit networkadapter configuration")), + "red": (self.cancel, _("exit network adapter configuration")), "blue": (self.KeyBlue, _("open nameserver configuration")), }) self["VirtualKB"] = HelpableActionMap(self, "ColorActions", { - "green": (self.KeyGreen, [_("open virtual keyboard input help"),_("* Only available when entering hidden ssid or network key")] ), + "green": (self.KeyGreen, [_("open virtual keyboard input help"),_("* Only available when entering hidden SSID or network key")] ), }) self["actions"] = NumberActionMap(["SetupActions"], @@ -516,7 +521,7 @@ class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): if self.iface == "wlan0" or self.iface == "ath0" : if self["config"].getCurrent() == self.hiddenSSID: if config.plugins.wlan.essid.value == 'hidden...': - self.session.openWithCallback(self.VirtualKeyBoardSSIDCallback, VirtualKeyBoard, title = (_("Enter WLAN networkname/SSID:")), text = config.plugins.wlan.essid.value) + self.session.openWithCallback(self.VirtualKeyBoardSSIDCallback, VirtualKeyBoard, title = (_("Enter WLAN network name/SSID:")), text = config.plugins.wlan.essid.value) if self["config"].getCurrent() == self.encryptionKey: self.session.openWithCallback(self.VirtualKeyBoardKeyCallback, VirtualKeyBoard, title = (_("Enter WLAN passphrase/key:")), text = config.plugins.wlan.encryption.psk.value) @@ -600,7 +605,7 @@ class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): iNetwork.deactivateInterface(self.iface) iNetwork.writeNetworkConfig() iNetwork.restartNetwork(self.applyConfigDataAvail) - self.applyConfigRef = self.session.openWithCallback(self.applyConfigfinishedCB, MessageBox, _("Please wait while activating your network configuration..."), type = MessageBox.TYPE_INFO, enable_input = False) + self.applyConfigRef = self.session.openWithCallback(self.applyConfigfinishedCB, MessageBox, _("Please wait for activation of your network configuration..."), type = MessageBox.TYPE_INFO, enable_input = False) else: self.cancel() @@ -616,10 +621,10 @@ class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): if data is True: num_configured_if = len(iNetwork.getConfiguredAdapters()) if num_configured_if >= 2: - self.session.openWithCallback(self.secondIfaceFoundCB, MessageBox, _("Your network configuration has been activated.\nA second configured interface has been found.\n\nDo you want to disable the second networkinterface?"), default = True) + self.session.openWithCallback(self.secondIfaceFoundCB, MessageBox, _("Your network configuration has been activated.\nA second configured interface has been found.\n\nDo you want to disable the second network interface?"), default = True) else: if self.finished_cb: - self.session.openWithCallback(self.finished_cb, MessageBox, _("Your network configuration has been activated."), type = MessageBox.TYPE_INFO, timeout = 10) + self.session.openWithCallback(lambda x : self.finished_cb(), MessageBox, _("Your network configuration has been activated."), type = MessageBox.TYPE_INFO, timeout = 10) else: self.session.openWithCallback(self.ConfigfinishedCB, MessageBox, _("Your network configuration has been activated."), type = MessageBox.TYPE_INFO, timeout = 10) @@ -695,7 +700,7 @@ class AdapterSetupConfiguration(Screen, HelpableScreen): self.oktext = _("Press OK on your remote control to continue.") self.reboottext = _("Your Dreambox will restart after pressing OK on your remote control.") - self.errortext = _("No working wireless interface found.\n Please verify that you have attached a compatible WLAN device or enable you local network interface.") + self.errortext = _("No working wireless network interface found.\n Please verify that you have attached a compatible WLAN device or enable your local network interface.") self["WizardActions"] = HelpableActionMap(self, "WizardActions", { @@ -1404,4 +1409,5 @@ class NetworkAdapterTest(Screen): except ImportError: pass else: - iStatus.stopWlanConsole() \ No newline at end of file + iStatus.stopWlanConsole() + diff --git a/po/de.po b/po/de.po index eb38d378..e5f33eec 100755 --- a/po/de.po +++ b/po/de.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: tuxbox-enigma 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-11-07 09:36+0100\n" +"POT-Creation-Date: 2008-11-07 21:18+0100\n" "PO-Revision-Date: 2008-10-15 12:10+0100\n" "Last-Translator: Andreas Frisch \n" "Language-Team: none\n" @@ -98,13 +98,11 @@ msgstr "(leer)" msgid "(show optional DVD audio menu)" msgstr "" -msgid "* Only available if more then one interface is active." +msgid "* Only available if more than one interface is active." msgstr "* Nur verfügbar wenn mehr als ein Netzwerkadapter aktiv ist." -msgid "* Only available when entering hidden ssid or network key" -msgstr "" -"* Nur verfügbar während der eingabe einer versteckten Netzwerk SSID oder " -"WLAN Passwortes" +msgid "* Only available when entering hidden SSID or network key" +msgstr "* Verfügbar für die Eingabe der Netzwerk SSID oder Passwortes" msgid ".NFI Download failed:" msgstr "" @@ -596,7 +594,7 @@ msgid "Change bouquets in quickzap" msgstr "Bouquet wechseln beim Quickzap" msgid "Change dir." -msgstr "Verzeichniss wechseln" +msgstr "Verzeichnis wechseln" msgid "Change pin code" msgstr "Pincode ändern" @@ -1163,8 +1161,8 @@ msgstr "Anfängliche Vorlaufgeschwindigkeit eingeben" msgid "Enter Rewind at speed" msgstr "Anfängliche Rücklaufgeschwindigkeit eingeben" -msgid "Enter WLAN networkname/SSID:" -msgstr "WLAN Netzwerkname/SSID eingeben:" +msgid "Enter WLAN network name/SSID:" +msgstr "" msgid "Enter WLAN passphrase/key:" msgstr "WLAN Schlüssel/Passwort eingeben:" @@ -1262,10 +1260,10 @@ msgid "Finished" msgstr "Beendet" msgid "Finished configuring your network" -msgstr "" +msgstr "Netzwerkkonfiguration abgeschlossen" msgid "Finished restarting your network" -msgstr "" +msgstr "Netzwerkneustart abgeschlossen" msgid "Finnish" msgstr "Finnisch" @@ -1499,7 +1497,7 @@ msgid "Integrated Ethernet" msgstr "Eingebaute Netzwerkschnittstelle" msgid "Integrated Wireless" -msgstr "Integriertes Funknetzwerk" +msgstr "Integriertes WLAN" msgid "Intermediate" msgstr "Fortgeschritten" @@ -1885,22 +1883,31 @@ msgstr "" "Wenn Sie 'NEIN' wählen, bleibt der Einstellungen-Schutz deaktiviert!" msgid "" -"No working local networkadapter found.\n" -"Please verify that you have attached a network cable and your Network is " +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is " "configured correctly." msgstr "" +"Kein funktionierender Netzwerkadapter gefunden.\n" +"Stellen Sie sicher, dass Sie ein Netzwerkkabel angeschlossen haben und das " +"Ihr Netzwerk richtig konfiguriert ist." msgid "" -"No working wireless interface found.\n" -" Please verify that you have attached a compatible WLAN device or enable you " -"local network interface." +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your " +"network is configured correctly." msgstr "" +"Kein funktionierende WLAN Netzwerkadapter gefunden.\n" +"Stellen Sie sicher, dass Sie ein kompatibles Gerät angeschlossen haben oder " +"aktivieren Sie den internen Netzwerkadapter." msgid "" -"No working wireless networkadapter found.\n" -"Please verify that you have attached a compatible WLAN USB Stick and your " -"Network is configured correctly." +"No working wireless network interface found.\n" +"Please verify that you have attached a compatible WLAN device or enable your " +"local network interface." msgstr "" +"Kein funktionierender WLAN Netzwerkadapter gefunden.\n" +"Stellen Sie sicher, dass Sie ein kompatibles Gerät angeschlossen haben und " +"das Ihr Netzwerk richtig konfiguriert ist." msgid "No, but restart from begin" msgstr "Nein, aber von Anfang an neu beginnen" @@ -2166,12 +2173,12 @@ msgstr "" "Bitte benutzen Sie die Hoch/Runter-Tasten, um Ihre Sprache auszuwählen. " "Danach drücken Sie bitte OK." +msgid "Please wait for activation of your network configuration..." +msgstr "Bitte warten während die Netzwerkkonfiguration aktiviert wird..." + msgid "Please wait for md5 signature verification..." msgstr "" -msgid "Please wait while activating your network configuration..." -msgstr "Bitte warten während die Netzwerkkonfiguration aktiviert wird..." - msgid "Please wait while we configure your network..." msgstr "Bitte warten während das Netzwerk konfiguriert wird..." @@ -2693,7 +2700,7 @@ msgid "Set as default Interface" msgstr "Netzwerkadapter als Standard definieren" msgid "Set interface as default Interface" -msgstr "Setze Netzwerkadapter als Standardad" +msgstr "Setze Netzwerkadapter als Standardd" msgid "Set limits" msgstr "Limits setzen" @@ -3751,7 +3758,7 @@ msgid "" "Your network configuration has been activated.\n" "A second configured interface has been found.\n" "\n" -"Do you want to disable the second networkinterface?" +"Do you want to disable the second network interface?" msgstr "" "Ihre Netzwerkkonfiguration wurde aktiviert.\n" "Ein zweiter konfigurierter Netzwerkadapter wurde gefunden.\n" @@ -3881,7 +3888,7 @@ msgid "chapters" msgstr "Kapitel" msgid "choose destination directory" -msgstr "Wähle Zielverzeichniss" +msgstr "Wähle Zielverzeichnis" msgid "circular left" msgstr "links-zirkulär" @@ -3914,7 +3921,7 @@ msgid "copy to bouquets" msgstr "in Bouquets kopieren" msgid "create directory" -msgstr "Verzeichniss erstellen" +msgstr "Verzeichnis erstellen" msgid "daily" msgstr "täglich" @@ -4015,15 +4022,18 @@ msgstr "Verlasse Filmliste" msgid "exit nameserver configuration" msgstr "DNS Serverkonfiguration verlassen" -msgid "exit networkadapter configuration" +msgid "exit network adapter configuration" msgstr "Netzwerkadapterkonfiguration verlassen" -msgid "exit networkadapter setup menu" +msgid "exit network adapter setup menu" msgstr "Netzwerkadaptermenu verlassen" -msgid "exit networkinterface list" +msgid "exit network interface list" msgstr "Netzwerkadapterübersicht verlassen" +msgid "exit networkadapter setup menu" +msgstr "" + msgid "failed" msgstr "" @@ -4252,7 +4262,7 @@ msgid "open servicelist(up)" msgstr "Kanalliste öffnen(nach oben)" msgid "open virtual keyboard input help" -msgstr "Virtuelle Tastatur Eingabehilfe öffnen" +msgstr "Virtuelle Tastatureingabehilfe öffnen" msgid "pass" msgstr "Durchgang" @@ -4309,7 +4319,7 @@ msgid "remove bookmark" msgstr "Bookmark entfernen" msgid "remove directory" -msgstr "Verzeichniss entfernen" +msgstr "Verzeichnis entfernen" msgid "remove entry" msgstr "Eintrag entfernen" @@ -4370,10 +4380,10 @@ msgid "select image from server" msgstr "Wähle ein Image vom Server" msgid "select interface" -msgstr "Wähle einen Ntzwerkadapter" +msgstr "Wähle einen Netzwerkadapter" msgid "select menu entry" -msgstr "Wähle einen Menupunkt" +msgstr "Wähle einen Menüpunkt" msgid "select movie" msgstr "Wähle Film" @@ -4616,6 +4626,9 @@ msgstr "umgeschaltet" #~ msgid "Enable WLAN Support" #~ msgstr "Aktiviere WLAN Unterstützung" +#~ msgid "Enter WLAN networ kname/SSID:" +#~ msgstr "WLAN Netzwerkname/SSID eingeben:" + #~ msgid "Games / Plugins" #~ msgstr "Spiele / Erweiterungen" -- cgit v1.2.3 From c138841fc86578cb4344a305cc2ca7e0f7fd4ca8 Mon Sep 17 00:00:00 2001 From: acid-burn Date: Mon, 10 Nov 2008 16:15:44 +0100 Subject: remove unneeded calls to iNetwork.getinterfaces cleanups fix typo --- lib/python/Components/Network.py | 7 ++++--- lib/python/Screens/NetworkSetup.py | 21 +++++++++------------ 2 files changed, 13 insertions(+), 15 deletions(-) (limited to 'lib/python/Screens/NetworkSetup.py') diff --git a/lib/python/Components/Network.py b/lib/python/Components/Network.py index c41469da..7cc61d84 100755 --- a/lib/python/Components/Network.py +++ b/lib/python/Components/Network.py @@ -505,9 +505,10 @@ class Network: def deactivateInterfaceFinished(self,extra_args): callback = extra_args - if len(self.deactivateInterfaceConsole.appContainers) == 0: - if callback is not None: - callback(True) + if self.deactivateInterfaceConsole: + if len(self.deactivateInterfaceConsole.appContainers) == 0: + if callback is not None: + callback(True) def detectWlanModule(self): self.wlanmodule = None diff --git a/lib/python/Screens/NetworkSetup.py b/lib/python/Screens/NetworkSetup.py index 580673e4..6bfe54ad 100755 --- a/lib/python/Screens/NetworkSetup.py +++ b/lib/python/Screens/NetworkSetup.py @@ -90,7 +90,6 @@ class NetworkAdapterSelection(Screen,HelpableScreen): self.onClose.append(self.cleanup) def updateList(self): - iNetwork.getInterfaces() self.list = [] default_gw = None num_configured_if = len(iNetwork.getConfiguredAdapters()) @@ -290,7 +289,7 @@ class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): self.finished_cb = None self.oktext = _("Press OK on your remote control to continue.") self.oldInterfaceState = iNetwork.getAdapterAttribute(self.iface, "up") - + self.createConfig() self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions", @@ -675,8 +674,7 @@ class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): def cleanup(self): iNetwork.stopLinkStateConsole() - iNetwork.stopDeactivateInterfaceConsole() - + class AdapterSetupConfiguration(Screen, HelpableScreen): def __init__(self, session,iface): @@ -732,7 +730,7 @@ class AdapterSetupConfiguration(Screen, HelpableScreen): "right": self.right, }, -2) - iNetwork.getInterfaces(self.updateStatusbar) + self.updateStatusbar() self.onLayoutFinish.append(self.layoutFinished) self.onClose.append(self.cleanup) @@ -908,11 +906,11 @@ class AdapterSetupConfiguration(Screen, HelpableScreen): else: self.mainmenu = self.genMainMenu() self["menulist"].l.setList(self.mainmenu) - iNetwork.getInterfaces(self.updateStatusbar) + self.updateStatusbar() else: self.mainmenu = self.genMainMenu() self["menulist"].l.setList(self.mainmenu) - iNetwork.getInterfaces(self.updateStatusbar) + self.updateStatusbar() def WlanStatusClosed(self, *ret): if ret is not None and len(ret): @@ -920,7 +918,7 @@ class AdapterSetupConfiguration(Screen, HelpableScreen): iStatus.stopWlanConsole() self.mainmenu = self.genMainMenu() self["menulist"].l.setList(self.mainmenu) - iNetwork.getInterfaces(self.updateStatusbar) + self.updateStatusbar() def WlanScanClosed(self,*ret): if ret[0] is not None: @@ -930,7 +928,7 @@ class AdapterSetupConfiguration(Screen, HelpableScreen): iStatus.stopWlanConsole() self.mainmenu = self.genMainMenu() self["menulist"].l.setList(self.mainmenu) - iNetwork.getInterfaces(self.updateStatusbar) + self.updateStatusbar() def restartLan(self, ret = False): if (ret == True): @@ -955,9 +953,9 @@ class AdapterSetupConfiguration(Screen, HelpableScreen): pattern = re_compile("Link detected: yes") for item in result: if re_search(pattern, item): - self["statuspic"].setPixmapNum(1) - else: self["statuspic"].setPixmapNum(0) + else: + self["statuspic"].setPixmapNum(1) self["statuspic"].show() def showErrorMessage(self): @@ -988,7 +986,6 @@ class NetworkAdapterTest(Screen): Screen.__init__(self, session) self.iface = iface self.oldInterfaceState = iNetwork.getAdapterAttribute(self.iface, "up") - iNetwork.getInterfaces() self.setLabels() self.onClose.append(self.cleanup) self.onHide.append(self.cleanup) -- cgit v1.2.3 From 41c124fa6370bb3933c28c50ee1964a1450d3ca7 Mon Sep 17 00:00:00 2001 From: acid-burn Date: Thu, 13 Nov 2008 08:09:36 +0100 Subject: fix saving of nameservers --- lib/python/Screens/NetworkSetup.py | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'lib/python/Screens/NetworkSetup.py') diff --git a/lib/python/Screens/NetworkSetup.py b/lib/python/Screens/NetworkSetup.py index 6bfe54ad..588a46ff 100755 --- a/lib/python/Screens/NetworkSetup.py +++ b/lib/python/Screens/NetworkSetup.py @@ -219,6 +219,10 @@ class NameserverSetup(Screen, ConfigListScreen, HelpableScreen): "yellow": (self.remove, _("remove a nameserver entry")), }) + self["actions"] = NumberActionMap(["SetupActions"], + { + "ok": self.ok, + }, -2) self.list = [] ConfigListScreen.__init__(self, self.list) -- cgit v1.2.3 From 6933710b3eab806151f6352d3b1a228fb72a3e96 Mon Sep 17 00:00:00 2001 From: acid-burn Date: Fri, 14 Nov 2008 08:24:36 +0100 Subject: small skin fix fix possible crash when leaving networksetup --- data/skin_default.xml | 4 ++-- lib/python/Components/Network.py | 1 + lib/python/Screens/NetworkSetup.py | 1 + 3 files changed, 4 insertions(+), 2 deletions(-) (limited to 'lib/python/Screens/NetworkSetup.py') diff --git a/data/skin_default.xml b/data/skin_default.xml index 41a7e4c9..993fd320 100755 --- a/data/skin_default.xml +++ b/data/skin_default.xml @@ -37,13 +37,13 @@ - + - + diff --git a/lib/python/Components/Network.py b/lib/python/Components/Network.py index 7cc61d84..53b487d5 100755 --- a/lib/python/Components/Network.py +++ b/lib/python/Components/Network.py @@ -63,6 +63,7 @@ class Network: def getDataForInterface(self, iface,callback): #get ip out of ip addr, as avahi sometimes overrides it in ifconfig. + self.Console = Console() cmd = "ip -o addr" self.Console.ePopen(cmd, self.IPaddrFinished, [iface,callback]) diff --git a/lib/python/Screens/NetworkSetup.py b/lib/python/Screens/NetworkSetup.py index 588a46ff..32e2dafd 100755 --- a/lib/python/Screens/NetworkSetup.py +++ b/lib/python/Screens/NetworkSetup.py @@ -174,6 +174,7 @@ class NetworkAdapterSelection(Screen,HelpableScreen): def cleanup(self): iNetwork.stopLinkStateConsole() iNetwork.stopRestartConsole() + iNetwork.stopGetInterfacesConsole() def restartLan(self): iNetwork.restartNetwork(self.restartLanDataAvail) -- cgit v1.2.3 From da81f2941ca129621d6511d1dcbc96bd29f4802b Mon Sep 17 00:00:00 2001 From: acid-burn Date: Fri, 14 Nov 2008 09:54:41 +0100 Subject: make hidden... translateable --- lib/python/Screens/NetworkSetup.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'lib/python/Screens/NetworkSetup.py') diff --git a/lib/python/Screens/NetworkSetup.py b/lib/python/Screens/NetworkSetup.py index 32e2dafd..5cb4d390 100755 --- a/lib/python/Screens/NetworkSetup.py +++ b/lib/python/Screens/NetworkSetup.py @@ -426,10 +426,10 @@ class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): if a['active']: if a['essid'] == "": a['essid'] = a['bssid'] - self.nwlist.append( a['essid']) + self.nwlist.append((a['essid'],a['essid'])) self.nwlist.sort(key = lambda x: x[0]) except: - self.nwlist.append("No Networks found") + self.nwlist.append(("No Networks found",_("No Networks found"))) self.wsconfig = self.ws.loadConfig() if self.essid is not None: # ssid from wlan scan @@ -438,10 +438,9 @@ class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): self.default = self.wsconfig['ssid'] if "hidden..." not in self.nwlist: - self.nwlist.append("hidden...") + self.nwlist.append(("hidden...",_("hidden network"))) if self.default not in self.nwlist: - self.nwlist.append(self.default) - + self.nwlist.append((self.default,self.default)) config.plugins.wlan.essid = NoSave(ConfigSelection(self.nwlist, default = self.default )) config.plugins.wlan.hiddenessid = NoSave(ConfigText(default = self.wsconfig['hiddenessid'], visible_width = 50, fixed_size = False)) -- cgit v1.2.3 From d2c353af6c84de0958ed56ef817e67f21934f59c Mon Sep 17 00:00:00 2001 From: acid-burn Date: Fri, 14 Nov 2008 12:50:03 +0100 Subject: remove unneeded check --- lib/python/Screens/NetworkSetup.py | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) (limited to 'lib/python/Screens/NetworkSetup.py') diff --git a/lib/python/Screens/NetworkSetup.py b/lib/python/Screens/NetworkSetup.py index 5cb4d390..ea2d17e6 100755 --- a/lib/python/Screens/NetworkSetup.py +++ b/lib/python/Screens/NetworkSetup.py @@ -88,7 +88,8 @@ class NetworkAdapterSelection(Screen,HelpableScreen): if len(self.adapters) == 1: self.onFirstExecBegin.append(self.okbuttonClick) self.onClose.append(self.cleanup) - + + def updateList(self): self.list = [] default_gw = None @@ -650,15 +651,10 @@ class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): def cancel(self): if self.oldInterfaceState is False: - iNetwork.deactivateInterface(self.iface,self.deactivateInterfaceCB) + iNetwork.deactivateInterface(self.iface,self.cancelCB) else: self.close('cancel') - def deactivateInterfaceCB(self,data): - if data is not None: - if data is True: - iNetwork.getInterfaces(self.cancelCB) - def cancelCB(self,data): if data is not None: if data is True: -- cgit v1.2.3