src/eric7/Network/IRC/IrcIdentitiesEditDialog.py

branch
eric7
changeset 9221
bf71ee032bb4
parent 9209
b99e7fd55fd3
child 9413
80c06d472826
--- a/src/eric7/Network/IRC/IrcIdentitiesEditDialog.py	Wed Jul 13 11:16:20 2022 +0200
+++ b/src/eric7/Network/IRC/IrcIdentitiesEditDialog.py	Wed Jul 13 14:55:47 2022 +0200
@@ -26,10 +26,11 @@
     """
     Class implementing the identities management dialog.
     """
+
     def __init__(self, manager, identityName, parent=None):
         """
         Constructor
-        
+
         @param manager reference to the IRC network manager object
             (IrcNetworkManager)
         @param identityName name of the identity to be selected (string)
@@ -37,7 +38,7 @@
         """
         super().__init__(parent)
         self.setupUi(self)
-        
+
         self.addButton.setIcon(UI.PixmapCache.getIcon("plus"))
         self.copyButton.setIcon(UI.PixmapCache.getIcon("editCopy"))
         self.renameButton.setIcon(UI.PixmapCache.getIcon("editRename"))
@@ -45,20 +46,18 @@
         self.nicknameAddButton.setIcon(UI.PixmapCache.getIcon("plus"))
         self.nicknameDeleteButton.setIcon(UI.PixmapCache.getIcon("minus"))
         self.nicknameUpButton.setIcon(UI.PixmapCache.getIcon("1uparrow"))
-        self.nicknameDownButton.setIcon(
-            UI.PixmapCache.getIcon("1downarrow"))
-        self.showPasswordButton.setIcon(
-            UI.PixmapCache.getIcon("showPassword"))
-        
+        self.nicknameDownButton.setIcon(UI.PixmapCache.getIcon("1downarrow"))
+        self.showPasswordButton.setIcon(UI.PixmapCache.getIcon("showPassword"))
+
         self.__manager = manager
-        
+
         self.__identities = self.__manager.getIdentities()
         self.__currentIdentity = None
-        
+
         identities = sorted(self.__manager.getIdentityNames())
-        identities[identities.index(IrcIdentity.DefaultIdentityName)] = (
-            IrcIdentity.DefaultIdentityDisplay
-        )
+        identities[
+            identities.index(IrcIdentity.DefaultIdentityName)
+        ] = IrcIdentity.DefaultIdentityDisplay
         self.identitiesCombo.addItems(identities)
         if identityName == IrcIdentity.DefaultIdentityName:
             identityName = IrcIdentity.DefaultIdentityDisplay
@@ -67,43 +66,44 @@
             index = 0
             identityName = self.identitiesCombo.itemText(0)
         self.identitiesCombo.setCurrentIndex(index)
-        
+
         self.on_identitiesCombo_currentIndexChanged(index)
-        
+
         self.nicknameEdit.installEventFilter(self)
-    
+
     def eventFilter(self, obj, evt):
         """
         Public method to handle events for other objects.
-        
+
         @param obj reference to the object (QObject)
         @param evt reference to the event (QEvent)
         @return flag indicating that the event should be filtered out (boolean)
         """
         if (
-            obj == self.nicknameEdit and
-            evt.type() == QEvent.Type.KeyPress and
-            evt.key() in [Qt.Key.Key_Enter, Qt.Key.Key_Return]
+            obj == self.nicknameEdit
+            and evt.type() == QEvent.Type.KeyPress
+            and evt.key() in [Qt.Key.Key_Enter, Qt.Key.Key_Return]
         ):
             self.on_nicknameAddButton_clicked()
             return True
-        
+
         return super().eventFilter(obj, evt)
 
     def __updateIdentitiesButtons(self):
         """
         Private slot to update the status of the identity related buttons.
         """
-        enable = (self.identitiesCombo.currentText() !=
-                  IrcIdentity.DefaultIdentityDisplay)
+        enable = (
+            self.identitiesCombo.currentText() != IrcIdentity.DefaultIdentityDisplay
+        )
         self.renameButton.setEnabled(enable)
         self.deleteButton.setEnabled(enable)
-    
+
     @pyqtSlot(int)
     def on_identitiesCombo_currentIndexChanged(self, index):
         """
         Private slot to handle the selection of an identity.
-        
+
         @param index index of the selected entry
         @type int
         """
@@ -111,103 +111,111 @@
         if identity == IrcIdentity.DefaultIdentityDisplay:
             identity = IrcIdentity.DefaultIdentityName
         self.__updateIdentitiesButtons()
-        
+
         if self.__currentIdentity and not self.__checkCurrentIdentity():
             return
-        
+
         self.__refreshCurrentIdentity()
-        
+
         self.__currentIdentity = self.__identities[identity]
-        
+
         # General Tab
         self.realnameEdit.setText(self.__currentIdentity.getRealName())
         self.nicknamesList.clear()
         self.nicknamesList.addItems(self.__currentIdentity.getNickNames())
         self.serviceEdit.setText(self.__currentIdentity.getServiceName())
         self.passwordEdit.setText(self.__currentIdentity.getPassword())
-        
+
         # Away Tab
         self.rememberPosOnAwayCheckBox.setChecked(
-            self.__currentIdentity.rememberAwayPosition())
+            self.__currentIdentity.rememberAwayPosition()
+        )
         self.awayEdit.setText(self.__currentIdentity.getAwayMessage())
-        
+
         # Advanced Tab
         self.identEdit.setText(self.__currentIdentity.getIdent())
         self.quitEdit.setText(self.__currentIdentity.getQuitMessage())
         self.partEdit.setText(self.__currentIdentity.getPartMessage())
-        
+
         self.__updateIdentitiesButtons()
         self.__updateNicknameUpDownButtons()
         self.__updateNicknameButtons()
-        
+
         self.identityTabWidget.setCurrentIndex(0)
-    
+
     def __refreshCurrentIdentity(self):
         """
         Private method to read back the data for the current identity.
         """
         if self.__currentIdentity is None:
             return
-        
+
         # General Tab
         self.__currentIdentity.setRealName(self.realnameEdit.text())
         self.__currentIdentity.setNickNames(
-            [self.nicknamesList.item(row).text()
-             for row in range(self.nicknamesList.count())])
+            [
+                self.nicknamesList.item(row).text()
+                for row in range(self.nicknamesList.count())
+            ]
+        )
         self.__currentIdentity.setServiceName(self.serviceEdit.text())
         self.__currentIdentity.setPassword(self.passwordEdit.text())
-        
+
         # Away Tab
         self.__currentIdentity.setRememberAwayPosition(
-            self.rememberPosOnAwayCheckBox.isChecked())
+            self.rememberPosOnAwayCheckBox.isChecked()
+        )
         self.__currentIdentity.setAwayMessage(self.awayEdit.text())
-        
+
         # Advanced Tab
         self.__currentIdentity.setIdent(self.identEdit.text())
         self.__currentIdentity.setQuitMessage(self.quitEdit.text())
         self.__currentIdentity.setPartMessage(self.partEdit.text())
-    
+
     def __checkCurrentIdentity(self):
         """
         Private method to check the data for the current identity.
-        
+
         @return flag indicating a successful check (boolean)
         """
         if self.nicknamesList.count() == 0:
             EricMessageBox.critical(
                 self,
                 self.tr("Edit Identity"),
-                self.tr(
-                    """The identity must contain at least one nick name."""))
+                self.tr("""The identity must contain at least one nick name."""),
+            )
             block = self.identitiesCombo.blockSignals(True)
             identity = self.__currentIdentity.getName()
             if identity == IrcIdentity.DefaultIdentityName:
                 identity = IrcIdentity.DefaultIdentityDisplay
             self.identitiesCombo.setCurrentIndex(
-                self.identitiesCombo.findText(identity))
+                self.identitiesCombo.findText(identity)
+            )
             self.identitiesCombo.blockSignals(block)
             self.identityTabWidget.setCurrentIndex(0)
             self.nicknameEdit.setFocus()
             return False
-        
+
         if not self.realnameEdit.text():
             EricMessageBox.critical(
                 self,
                 self.tr("Edit Identity"),
-                self.tr("""The identity must have a real name."""))
+                self.tr("""The identity must have a real name."""),
+            )
             block = self.identitiesCombo.blockSignals(True)
             identity = self.__currentIdentity.getName()
             if identity == IrcIdentity.DefaultIdentityName:
                 identity = IrcIdentity.DefaultIdentityDisplay
             self.identitiesCombo.setCurrentIndex(
-                self.identitiesCombo.findText(identity))
+                self.identitiesCombo.findText(identity)
+            )
             self.identitiesCombo.blockSignals(block)
             self.identityTabWidget.setCurrentIndex(0)
             self.realnameEdit.setFocus()
             return False
-        
+
         return True
-    
+
     @pyqtSlot()
     def on_addButton_clicked(self):
         """
@@ -217,8 +225,9 @@
             self,
             self.tr("Add Identity"),
             self.tr("Identity Name:"),
-            QLineEdit.EchoMode.Normal)
-        
+            QLineEdit.EchoMode.Normal,
+        )
+
         if ok:
             if name:
                 if name in self.__identities:
@@ -227,8 +236,9 @@
                         self.tr("Add Identity"),
                         self.tr(
                             """An identity named <b>{0}</b> already exists."""
-                            """ You must provide a different name.""").format(
-                            name))
+                            """ You must provide a different name."""
+                        ).format(name),
+                    )
                     self.on_addButton_clicked()
                 else:
                     identity = IrcIdentity(name)
@@ -237,14 +247,16 @@
                     self.__identities[name] = identity
                     self.identitiesCombo.addItem(name)
                     self.identitiesCombo.setCurrentIndex(
-                        self.identitiesCombo.count() - 1)
+                        self.identitiesCombo.count() - 1
+                    )
             else:
                 EricMessageBox.critical(
                     self,
                     self.tr("Add Identity"),
-                    self.tr("""The identity has to have a name."""))
+                    self.tr("""The identity has to have a name."""),
+                )
                 self.on_addButton_clicked()
-    
+
     @pyqtSlot()
     def on_copyButton_clicked(self):
         """
@@ -256,8 +268,9 @@
             self.tr("Copy Identity"),
             self.tr("Identity Name:"),
             QLineEdit.EchoMode.Normal,
-            currentIdentity)
-        
+            currentIdentity,
+        )
+
         if ok:
             if name:
                 if name in self.__identities:
@@ -266,8 +279,9 @@
                         self.tr("Copy Identity"),
                         self.tr(
                             """An identity named <b>{0}</b> already exists."""
-                            """ You must provide a different name.""").format(
-                            name))
+                            """ You must provide a different name."""
+                        ).format(name),
+                    )
                     self.on_copyButton_clicked()
                 else:
                     identity = copy.deepcopy(self.__currentIdentity)
@@ -275,14 +289,16 @@
                     self.__identities[name] = identity
                     self.identitiesCombo.addItem(name)
                     self.identitiesCombo.setCurrentIndex(
-                        self.identitiesCombo.count() - 1)
+                        self.identitiesCombo.count() - 1
+                    )
             else:
                 EricMessageBox.critical(
                     self,
                     self.tr("Copy Identity"),
-                    self.tr("""The identity has to have a name."""))
+                    self.tr("""The identity has to have a name."""),
+                )
                 self.on_copyButton_clicked()
-    
+
     @pyqtSlot()
     def on_renameButton_clicked(self):
         """
@@ -294,8 +310,9 @@
             self.tr("Rename Identity"),
             self.tr("Identity Name:"),
             QLineEdit.EchoMode.Normal,
-            currentIdentity)
-        
+            currentIdentity,
+        )
+
         if ok and name != currentIdentity:
             if name:
                 if name in self.__identities:
@@ -304,22 +321,25 @@
                         self.tr("Rename Identity"),
                         self.tr(
                             """An identity named <b>{0}</b> already exists."""
-                            """ You must provide a different name.""").format(
-                            name))
+                            """ You must provide a different name."""
+                        ).format(name),
+                    )
                     self.on_renameButton_clicked()
                 else:
                     del self.__identities[currentIdentity]
                     self.__currentIdentity.setName(name)
                     self.__identities[name] = self.__currentIdentity
                     self.identitiesCombo.setItemText(
-                        self.identitiesCombo.currentIndex(), name)
+                        self.identitiesCombo.currentIndex(), name
+                    )
             else:
                 EricMessageBox.critical(
                     self,
                     self.tr("Copy Identity"),
-                    self.tr("""The identity has to have a name."""))
+                    self.tr("""The identity has to have a name."""),
+                )
                 self.on_renameButton_clicked()
-    
+
     @pyqtSlot()
     def on_deleteButton_clicked(self):
         """
@@ -328,33 +348,36 @@
         currentIdentity = self.identitiesCombo.currentText()
         if currentIdentity == IrcIdentity.DefaultIdentityDisplay:
             return
-        
+
         inUse = False
         for networkName in self.__manager.getNetworkNames():
             inUse = (
-                self.__manager.getNetwork(networkName).getIdentityName() ==
-                currentIdentity)
+                self.__manager.getNetwork(networkName).getIdentityName()
+                == currentIdentity
+            )
             if inUse:
                 break
-        
+
         msg = (
-            self.tr("This identity is in use. If you remove it, the network"
-                    " settings using it will fall back to the default"
-                    " identity. Should it be deleted anyway?")
-            if inUse else
-            self.tr("Do you really want to delete all information for"
-                    " this identity?")
+            self.tr(
+                "This identity is in use. If you remove it, the network"
+                " settings using it will fall back to the default"
+                " identity. Should it be deleted anyway?"
+            )
+            if inUse
+            else self.tr(
+                "Do you really want to delete all information for" " this identity?"
+            )
         )
         res = EricMessageBox.yesNo(
-            self,
-            self.tr("Delete Identity"),
-            msg,
-            icon=EricMessageBox.Warning)
+            self, self.tr("Delete Identity"), msg, icon=EricMessageBox.Warning
+        )
         if res:
             del self.__identities[currentIdentity]
             self.identitiesCombo.removeItem(
-                self.identitiesCombo.findText(currentIdentity))
-    
+                self.identitiesCombo.findText(currentIdentity)
+            )
+
     def __updateNicknameUpDownButtons(self):
         """
         Private method to set the enabled state of the nick name up and
@@ -367,39 +390,37 @@
             if self.nicknamesList.currentRow() == 0:
                 self.nicknameUpButton.setEnabled(False)
                 self.nicknameDownButton.setEnabled(True)
-            elif (
-                self.nicknamesList.currentRow() ==
-                self.nicknamesList.count() - 1
-            ):
+            elif self.nicknamesList.currentRow() == self.nicknamesList.count() - 1:
                 self.nicknameUpButton.setEnabled(True)
                 self.nicknameDownButton.setEnabled(False)
             else:
                 self.nicknameUpButton.setEnabled(True)
                 self.nicknameDownButton.setEnabled(True)
-    
+
     def __updateNicknameButtons(self):
         """
         Private slot to update the nick name buttons except the up and
         down buttons.
         """
         self.nicknameDeleteButton.setEnabled(
-            len(self.nicknamesList.selectedItems()) != 0)
-        
+            len(self.nicknamesList.selectedItems()) != 0
+        )
+
         self.nicknameAddButton.setEnabled(self.nicknameEdit.text() != "")
-    
+
     @pyqtSlot(str)
     def on_nicknameEdit_textEdited(self, nick):
         """
         Private slot handling a change of the nick name.
-        
+
         @param nick new nick name (string)
         """
         sel = self.nicknamesList.selectedItems()
         if sel:
             sel[0].setText(nick)
-        
+
         self.__updateNicknameButtons()
-    
+
     @pyqtSlot()
     def on_nicknamesList_itemSelectionChanged(self):
         """
@@ -408,26 +429,27 @@
         items = self.nicknamesList.selectedItems()
         if items:
             self.nicknameEdit.setText(items[0].text())
-        
+
         self.__updateNicknameUpDownButtons()
         self.__updateNicknameButtons()
-        
+
         self.nicknameEdit.setFocus()
-    
+
     @pyqtSlot()
     def on_nicknameAddButton_clicked(self):
         """
         Private slot to add a new nickname.
         """
         nick = self.nicknameEdit.text()
-        if nick not in [self.nicknamesList.item(row).text()
-                        for row in range(self.nicknamesList.count())]:
+        if nick not in [
+            self.nicknamesList.item(row).text()
+            for row in range(self.nicknamesList.count())
+        ]:
             self.nicknamesList.insertItem(0, nick)
-        self.nicknamesList.setCurrentRow(
-            0, QItemSelectionModel.SelectionFlag.Clear)
+        self.nicknamesList.setCurrentRow(0, QItemSelectionModel.SelectionFlag.Clear)
         self.nicknameEdit.clear()
         self.__updateNicknameButtons()
-    
+
     @pyqtSlot()
     def on_nicknameDeleteButton_clicked(self):
         """
@@ -436,7 +458,7 @@
         itm = self.nicknamesList.takeItem(self.nicknamesList.currentRow())
         del itm
         self.__updateNicknameButtons()
-    
+
     @pyqtSlot()
     def on_nicknameUpButton_clicked(self):
         """
@@ -448,7 +470,7 @@
             row -= 1
             self.nicknamesList.insertItem(row, itm)
             self.nicknamesList.setCurrentItem(itm)
-    
+
     @pyqtSlot()
     def on_nicknameDownButton_clicked(self):
         """
@@ -460,36 +482,32 @@
             row += 1
             self.nicknamesList.insertItem(row, itm)
             self.nicknamesList.setCurrentItem(itm)
-    
+
     @pyqtSlot(bool)
     def on_showPasswordButton_clicked(self, checked):
         """
         Private slot to show or hide the password.
-        
+
         @param checked state of the button
         @type bool
         """
         if checked:
             self.passwordEdit.setEchoMode(QLineEdit.EchoMode.Normal)
-            self.showPasswordButton.setIcon(
-                UI.PixmapCache.getIcon("hidePassword"))
-            self.showPasswordButton.setToolTip(
-                self.tr("Press to hide the password"))
+            self.showPasswordButton.setIcon(UI.PixmapCache.getIcon("hidePassword"))
+            self.showPasswordButton.setToolTip(self.tr("Press to hide the password"))
         else:
             self.passwordEdit.setEchoMode(QLineEdit.EchoMode.Password)
-            self.showPasswordButton.setIcon(
-                UI.PixmapCache.getIcon("showPassword"))
-            self.showPasswordButton.setToolTip(
-                self.tr("Press to show the password"))
-    
+            self.showPasswordButton.setIcon(UI.PixmapCache.getIcon("showPassword"))
+            self.showPasswordButton.setToolTip(self.tr("Press to show the password"))
+
     def accept(self):
         """
         Public slot handling the acceptance of the dialog.
         """
         if not self.__checkCurrentIdentity():
             return
-        
+
         self.__refreshCurrentIdentity()
         self.__manager.setIdentities(self.__identities)
-        
+
         super().accept()

eric ide

mercurial