eric6/Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py

branch
maintenance
changeset 8273
698ae46f40a4
parent 8176
31965986ecd1
parent 8259
2bbec88047dd
--- a/eric6/Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py	Fri Apr 02 11:59:41 2021 +0200
+++ b/eric6/Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py	Sat May 01 14:27:20 2021 +0200
@@ -10,6 +10,7 @@
 import os
 import re
 import collections
+import contextlib
 
 from PyQt5.QtCore import pyqtSlot, Qt, QDate, QSize, QPoint, QFileInfo
 from PyQt5.QtGui import (
@@ -75,7 +76,7 @@
         @param parent parent widget
         @type QWidget
         """
-        super(HgLogBrowserDialog, self).__init__(parent)
+        super().__init__(parent)
         self.setupUi(self)
         
         windowFlags = self.windowFlags()
@@ -446,7 +447,7 @@
         self.__restoreSplitterStates()
         self.__resetUI()
         
-        super(HgLogBrowserDialog, self).show()
+        super().show()
 
     def __reloadGeometry(self):
         """
@@ -853,14 +854,11 @@
         if output:
             for line in output.splitlines():
                 if line.strip():
-                    try:
+                    with contextlib.suppress(ValueError):
                         name, rev = line.strip().rsplit(None, 1)
                         if name == tag:
                             res = tuple(rev.split(":", 1))
                             break
-                    except ValueError:
-                        # ignore silently
-                        pass
         
         return res
     
@@ -911,14 +909,9 @@
             msgtxt = "{0}...".format(msgtxt[:logMessageColumnWidth])
         
         rev, node = revision.split(":")
-        if rev in self.__closedBranchesRevs:
-            closedStr = self.ClosedIndicator
-        else:
-            closedStr = ""
-        if phase in self.phases:
-            phaseStr = self.phases[phase]
-        else:
-            phaseStr = phase
+        closedStr = (self.ClosedIndicator
+                     if rev in self.__closedBranchesRevs else "")
+        phaseStr = self.phases.get(phase, phase)
         columnLabels = [
             "",
             branches[0] + closedStr,
@@ -954,12 +947,13 @@
                 self.__childrenInfo[parent].append(int(rev))
         itm.setData(0, self.__incomingRole, self.commandMode == "incoming")
         
-        if self.logTree.topLevelItemCount() > 1:
-            topedges = self.logTree.topLevelItem(
+        topedges = (
+            self.logTree.topLevelItem(
                 self.logTree.indexOfTopLevelItem(itm) - 1
             ).data(0, self.__edgesRole)
-        else:
-            topedges = None
+            if self.logTree.topLevelItemCount() > 1 else
+            None
+        )
         
         icon = self.__generateIcon(column, color, edges, topedges,
                                    QColor(self.__branchColor(branches[0])),
@@ -1268,35 +1262,34 @@
         
         self.__resizeColumnsLog()
         
-        if self.__started:
-            if not self.__finishCallbacks:
-                # we are really done
-                if self.__selectedRevisions:
-                    foundItems = self.logTree.findItems(
-                        self.__selectedRevisions[0], Qt.MatchFlag.MatchExactly,
+        if self.__started and not self.__finishCallbacks:
+            # we are really done
+            if self.__selectedRevisions:
+                foundItems = self.logTree.findItems(
+                    self.__selectedRevisions[0], Qt.MatchFlag.MatchExactly,
+                    self.RevisionColumn)
+                if foundItems:
+                    self.logTree.setCurrentItem(foundItems[0])
+                else:
+                    self.logTree.setCurrentItem(
+                        self.logTree.topLevelItem(0))
+            elif self.__projectWorkingDirParents:
+                for rev in self.__projectWorkingDirParents:
+                    # rev string format must match with the format of the
+                    # __generateLogItem() method
+                    items = self.logTree.findItems(
+                        "{0:>7}:".format(rev),
+                        Qt.MatchFlag.MatchStartsWith,
                         self.RevisionColumn)
-                    if foundItems:
-                        self.logTree.setCurrentItem(foundItems[0])
-                    else:
-                        self.logTree.setCurrentItem(
-                            self.logTree.topLevelItem(0))
-                elif self.__projectWorkingDirParents:
-                    for rev in self.__projectWorkingDirParents:
-                        # rev string format must match with the format of the
-                        # __generateLogItem() method
-                        items = self.logTree.findItems(
-                            "{0:>7}:".format(rev),
-                            Qt.MatchFlag.MatchStartsWith,
-                            self.RevisionColumn)
-                        if items:
-                            self.logTree.setCurrentItem(items[0])
-                            break
-                    else:
-                        self.logTree.setCurrentItem(
-                            self.logTree.topLevelItem(0))
+                    if items:
+                        self.logTree.setCurrentItem(items[0])
+                        break
                 else:
-                    self.logTree.setCurrentItem(self.logTree.topLevelItem(0))
-                self.__started = False
+                    self.logTree.setCurrentItem(
+                        self.logTree.topLevelItem(0))
+            else:
+                self.logTree.setCurrentItem(self.logTree.topLevelItem(0))
+            self.__started = False
         
         if self.commandMode in ("incoming", "outgoing"):
             self.commandMode = "log"    # switch to log mode
@@ -2282,11 +2275,8 @@
                 revs = []
                 for itm in selectedItems:
                     rev = itm.text(self.RevisionColumn).split(":", 1)[0]
-                    try:
+                    with contextlib.suppress(ValueError):
                         revs.append(int(rev))
-                    except ValueError:
-                        # ignore silently
-                        pass
                 baseRev = min(revs)
                 while baseRev in revs:
                     revs.remove(baseRev)
@@ -2634,12 +2624,9 @@
         if ":" in link:
             scheme, parent = link.split(":", 1)
             if scheme == "diff":
-                try:
+                with contextlib.suppress(ValueError):
                     parent = int(parent)
                     self.__generateDiffs(parent)
-                except ValueError:
-                    # ignore silently
-                    pass
     
     @pyqtSlot(str)
     def on_saveLabel_linkActivated(self, link):

eric ide

mercurial