Network/IRC/IrcNetworkEditDialog.py

changeset 2236
e30d5f978919
parent 2235
266800cbe7cc
child 2237
baddb671c326
--- a/Network/IRC/IrcNetworkEditDialog.py	Wed Nov 28 20:11:46 2012 +0100
+++ b/Network/IRC/IrcNetworkEditDialog.py	Thu Nov 29 20:02:43 2012 +0100
@@ -12,6 +12,8 @@
 from PyQt4.QtCore import pyqtSlot
 from PyQt4.QtGui import QDialog, QDialogButtonBox, QTreeWidgetItem
 
+from E5Gui import E5MessageBox
+
 from .Ui_IrcNetworkEditDialog import Ui_IrcNetworkEditDialog
 
 from .IrcNetworkManager import IrcIdentity, IrcChannel
@@ -65,12 +67,7 @@
         self.identityCombo.setCurrentIndex(index)
         
         # servers
-        self.serverCombo.addItems(self.__manager.getServerNames())
-        server = self.__network.getServerName()
-        index = self.serverCombo.findText(server)
-        if index == -1:
-            index = 0
-        self.serverCombo.setCurrentIndex(index)
+        self.serverEdit.setText(self.__network.getServerNames()[0])
         
         # channels
         for channelName in sorted(self.__network.getChannelNames()):
@@ -90,7 +87,7 @@
         """
         enable = True
         enable &= self.networkEdit.text() != ""
-        enable &= self.serverCombo.currentText() != ""
+        enable &= self.serverEdit.text() != ""
         
         self.__okButton.setEnabled(enable)
     
@@ -111,15 +108,6 @@
         # TODO: not implemented yet
         raise NotImplementedError
     
-    @pyqtSlot(str)
-    def on_serverCombo_activated(self, txt):
-        """
-        Private slot to handle the selection of a server.
-        
-        @param txt selected server (string)
-        """
-        self.__updateOkButton()
-    
     @pyqtSlot()
     def on_editServersButton_clicked(self):
         """
@@ -131,10 +119,9 @@
     @pyqtSlot()
     def on_addChannelButton_clicked(self):
         """
-        Slot documentation goes here.
+        Private slot to add a channel.
         """
-        # TODO: not implemented yet
-        raise NotImplementedError
+        self.__editChannel(None)
     
     @pyqtSlot()
     def on_editChannelButton_clicked(self):
@@ -148,10 +135,20 @@
     @pyqtSlot()
     def on_deleteChannelButton_clicked(self):
         """
-        Slot documentation goes here.
+        Private slot to delete the selected channel.
         """
-        # TODO: not implemented yet
-        raise NotImplementedError
+        itm = self.channelList.selectedItems()[0]
+        if itm:
+            res = E5MessageBox.yesNo(self,
+                self.trUtf8("Delete Channel"),
+                self.trUtf8("""Do you really want to delete channel <b>{0}</b>?""")\
+                    .format(itm.text(0)))
+            if res:
+                self.__network.deleteChannel(itm.text(0))
+                
+                index = self.channelList.indexOfTopLevelItem(itm)
+                self.channelList.takeTopLevelItem(index)
+                del itm
     
     @pyqtSlot(QTreeWidgetItem, int)
     def on_channelList_itemActivated(self, item, column):
@@ -213,9 +210,9 @@
                 QTreeWidgetItem(self.channelList, [name, autoJoinTxt])
                 self.__network.addChannel(channel)
     
-    def getData(self):
+    def getNetwork(self):
         """
-        Public method to get the network data.
+        Public method to get the network object.
         
         @return edited network object (IrcNetwork)
         """

eric ide

mercurial