diff -r 241df9311ade -r 47290dad6d0b Network/IRC/IrcNetworkWidget.py --- a/Network/IRC/IrcNetworkWidget.py Mon Nov 26 19:50:06 2012 +0100 +++ b/Network/IRC/IrcNetworkWidget.py Tue Nov 27 18:50:02 2012 +0100 @@ -58,6 +58,25 @@ self.__manager = manager self.networkCombo.addItems(self.__manager.getNetworkNames()) + + self.__manager.networksChanged.connect(self.__refreshNetworks) + + @pyqtSlot() + def __refreshNetworks(self): + """ + Private slot to refresh all network related widgets. + """ + currentNetwork = self.networkCombo.currentText() +## currentNick = self.nickCombo.currentText() +## currentChannel = self.channelCombo.currentText() + self.networkCombo.clear() + self.networkCombo.addItems(self.__manager.getNetworkNames()) + row = self.networkCombo.findText(currentNetwork) + if row == -1: + row = 0 + self.networkCombo.setCurrentIndex(row) +## self.nickCombo.setEditText(currentNick) +## self.channelCombo.setEditText(currentChannel) @pyqtSlot() def on_connectButton_clicked(self): @@ -102,6 +121,8 @@ """ network = self.__manager.getNetwork(networkName) self.channelCombo.clear() + self.nickCombo.clear() + self.channelCombo.clear() if network: channels = network.getChannels() self.channelCombo.addItems(channels) @@ -110,8 +131,10 @@ network.getIdentityName()) if identity: self.nickCombo.addItems(identity.getNickNames()) + self.nickCombo.setEnabled(True) else: self.channelCombo.setEnabled(False) + self.nickCombo.setEnabled(False) @pyqtSlot(str) def on_nickCombo_activated(self, nick):