Ported the plug-in to PyQt6 for eric7. eric7

Wed, 26 May 2021 17:43:25 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Wed, 26 May 2021 17:43:25 +0200
branch
eric7
changeset 83
d3490ea9facc
parent 82
042dcb26e7b4
child 84
90f9c14224fd

Ported the plug-in to PyQt6 for eric7.

.hgignore file | annotate | diff | comparison | revisions
ChangeLog file | annotate | diff | comparison | revisions
PluginMetricsRadon.e4p file | annotate | diff | comparison | revisions
PluginMetricsRadon.epj file | annotate | diff | comparison | revisions
PluginMetricsRadon.py file | annotate | diff | comparison | revisions
PluginMetricsRadon.zip file | annotate | diff | comparison | revisions
RadonMetrics/CyclomaticComplexityDialog.py file | annotate | diff | comparison | revisions
RadonMetrics/CyclomaticComplexityDialog.ui file | annotate | diff | comparison | revisions
RadonMetrics/Documentation/source/Plugin_Metrics_Radon.PluginMetricsRadon.html file | annotate | diff | comparison | revisions
RadonMetrics/Documentation/source/Plugin_Metrics_Radon.RadonMetrics.CyclomaticComplexityDialog.html file | annotate | diff | comparison | revisions
RadonMetrics/Documentation/source/Plugin_Metrics_Radon.RadonMetrics.MaintainabilityIndexDialog.html file | annotate | diff | comparison | revisions
RadonMetrics/Documentation/source/Plugin_Metrics_Radon.RadonMetrics.RawMetricsDialog.html file | annotate | diff | comparison | revisions
RadonMetrics/MaintainabilityIndexDialog.py file | annotate | diff | comparison | revisions
RadonMetrics/MaintainabilityIndexDialog.ui file | annotate | diff | comparison | revisions
RadonMetrics/RawMetricsDialog.py file | annotate | diff | comparison | revisions
RadonMetrics/RawMetricsDialog.ui file | annotate | diff | comparison | revisions
RadonMetrics/i18n/radon_de.qm file | annotate | diff | comparison | revisions
RadonMetrics/i18n/radon_de.ts file | annotate | diff | comparison | revisions
RadonMetrics/i18n/radon_en.qm file | annotate | diff | comparison | revisions
RadonMetrics/i18n/radon_en.ts file | annotate | diff | comparison | revisions
RadonMetrics/i18n/radon_es.ts file | annotate | diff | comparison | revisions
RadonMetrics/i18n/radon_ru.ts file | annotate | diff | comparison | revisions
--- a/.hgignore	Wed May 26 17:13:04 2021 +0200
+++ b/.hgignore	Wed May 26 17:43:25 2021 +0200
@@ -1,11 +1,6 @@
 glob:.eric6project
-glob:_eric6project
-glob:.eric5project
-glob:_eric5project
-glob:.eric4project
-glob:_eric4project
+glob:.eric7project
 glob:.ropeproject
-glob:_ropeproject
 glob:.directory
 glob:**.pyc
 glob:**.pyo
--- a/ChangeLog	Wed May 26 17:13:04 2021 +0200
+++ b/ChangeLog	Wed May 26 17:43:25 2021 +0200
@@ -1,5 +1,10 @@
 ChangeLog
 ---------
+Version 1.0.0:
+- first release of the eric7 variant
+
+************************************************************
+
 Version 4.0.0:
 - removed the included 'radon' library and have it as an external
   dependency installed during the plug-in installation (for eric > 21.5)
--- a/PluginMetricsRadon.e4p	Wed May 26 17:13:04 2021 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,546 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE Project SYSTEM "Project-5.1.dtd">
-<!-- eric project file for project PluginMetricsRadon -->
-<!-- Copyright (C) 2020 Detlev Offenbach, detlev@die-offenbachs.de -->
-<Project version="5.1">
-  <Language>en_US</Language>
-  <Hash>662232fb888fb1b426cf967a2c238f4dd2f58f08</Hash>
-  <ProgLanguage mixed="0">Python3</ProgLanguage>
-  <ProjectType>E6Plugin</ProjectType>
-  <Description>This plugin implements dialogs for various code metrics determined using the radon library.</Description>
-  <Version>0.x</Version>
-  <Author>Detlev Offenbach</Author>
-  <Email>detlev@die-offenbachs.de</Email>
-  <TranslationPattern>RadonMetrics/i18n/radon_%language%.ts</TranslationPattern>
-  <Eol index="1"/>
-  <Sources>
-    <Source>PluginMetricsRadon.py</Source>
-    <Source>RadonMetrics/CodeMetricsCalculator.py</Source>
-    <Source>RadonMetrics/CyclomaticComplexityCalculator.py</Source>
-    <Source>RadonMetrics/CyclomaticComplexityDialog.py</Source>
-    <Source>RadonMetrics/MaintainabilityIndexCalculator.py</Source>
-    <Source>RadonMetrics/MaintainabilityIndexDialog.py</Source>
-    <Source>RadonMetrics/RawMetricsDialog.py</Source>
-    <Source>RadonMetrics/__init__.py</Source>
-    <Source>RadonMetrics/radon/__init__.py</Source>
-    <Source>RadonMetrics/radon/complexity.py</Source>
-    <Source>RadonMetrics/radon/metrics.py</Source>
-    <Source>RadonMetrics/radon/raw.py</Source>
-    <Source>RadonMetrics/radon/visitors.py</Source>
-    <Source>__init__.py</Source>
-  </Sources>
-  <Forms>
-    <Form>RadonMetrics/CyclomaticComplexityDialog.ui</Form>
-    <Form>RadonMetrics/MaintainabilityIndexDialog.ui</Form>
-    <Form>RadonMetrics/RawMetricsDialog.ui</Form>
-  </Forms>
-  <Translations>
-    <Translation>RadonMetrics/i18n/radon_de.qm</Translation>
-    <Translation>RadonMetrics/i18n/radon_de.ts</Translation>
-    <Translation>RadonMetrics/i18n/radon_en.qm</Translation>
-    <Translation>RadonMetrics/i18n/radon_en.ts</Translation>
-    <Translation>RadonMetrics/i18n/radon_es.qm</Translation>
-    <Translation>RadonMetrics/i18n/radon_es.ts</Translation>
-    <Translation>RadonMetrics/i18n/radon_ru.qm</Translation>
-    <Translation>RadonMetrics/i18n/radon_ru.ts</Translation>
-  </Translations>
-  <Others>
-    <Other>.hgignore</Other>
-    <Other>ChangeLog</Other>
-    <Other>PKGLIST</Other>
-    <Other>PluginMetricsRadon.e4p</Other>
-    <Other>PluginMetricsRadon.zip</Other>
-    <Other>RadonMetrics/Documentation/LICENSE.GPL3</Other>
-    <Other>RadonMetrics/Documentation/source</Other>
-    <Other>RadonMetrics/radon/LICENSE</Other>
-  </Others>
-  <MainScript>PluginMetricsRadon.py</MainScript>
-  <Vcs>
-    <VcsType>Mercurial</VcsType>
-    <VcsOptions>
-      <dict>
-        <key>
-          <string>add</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>checkout</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>commit</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>diff</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>export</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>global</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>history</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>log</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>remove</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>status</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>tag</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>update</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-      </dict>
-    </VcsOptions>
-  </Vcs>
-  <FiletypeAssociations>
-    <FiletypeAssociation pattern="*.idl" type="INTERFACES"/>
-    <FiletypeAssociation pattern="*.py" type="SOURCES"/>
-    <FiletypeAssociation pattern="*.py3" type="SOURCES"/>
-    <FiletypeAssociation pattern="*.pyw" type="SOURCES"/>
-    <FiletypeAssociation pattern="*.pyw3" type="SOURCES"/>
-    <FiletypeAssociation pattern="*.qm" type="TRANSLATIONS"/>
-    <FiletypeAssociation pattern="*.qrc" type="RESOURCES"/>
-    <FiletypeAssociation pattern="*.ts" type="TRANSLATIONS"/>
-    <FiletypeAssociation pattern="*.ui" type="FORMS"/>
-    <FiletypeAssociation pattern="Ui_*.py" type="__IGNORE__"/>
-  </FiletypeAssociations>
-  <Documentation>
-    <DocumentationParams>
-      <dict>
-        <key>
-          <string>ERIC4DOC</string>
-        </key>
-        <value>
-          <dict>
-            <key>
-              <string>cssFile</string>
-            </key>
-            <value>
-              <string>%PYTHON%/eric6/CSSs/default.css</string>
-            </value>
-            <key>
-              <string>ignoreDirectories</string>
-            </key>
-            <value>
-              <list>
-                <string>.hg</string>
-                <string>.ropeproject</string>
-                <string>_ropeproject</string>
-                <string>.eric6project</string>
-                <string>_eric6project</string>
-                <string>radon</string>
-              </list>
-            </value>
-            <key>
-              <string>ignoreFilePatterns</string>
-            </key>
-            <value>
-              <list>
-                <string>Ui_*.py</string>
-              </list>
-            </value>
-            <key>
-              <string>outputDirectory</string>
-            </key>
-            <value>
-              <string>RadonMetrics/Documentation/source</string>
-            </value>
-            <key>
-              <string>qtHelpEnabled</string>
-            </key>
-            <value>
-              <bool>False</bool>
-            </value>
-            <key>
-              <string>useRecursion</string>
-            </key>
-            <value>
-              <bool>True</bool>
-            </value>
-          </dict>
-        </value>
-      </dict>
-    </DocumentationParams>
-  </Documentation>
-  <Checkers>
-    <CheckersParams>
-      <dict>
-        <key>
-          <string>Pep8Checker</string>
-        </key>
-        <value>
-          <dict>
-            <key>
-              <string>AnnotationsChecker</string>
-            </key>
-            <value>
-              <dict>
-                <key>
-                  <string>MaximumComplexity</string>
-                </key>
-                <value>
-                  <int>3</int>
-                </value>
-                <key>
-                  <string>MinimumCoverage</string>
-                </key>
-                <value>
-                  <int>75</int>
-                </value>
-              </dict>
-            </value>
-            <key>
-              <string>BlankLines</string>
-            </key>
-            <value>
-              <tuple>
-                <int>2</int>
-                <int>1</int>
-              </tuple>
-            </value>
-            <key>
-              <string>BuiltinsChecker</string>
-            </key>
-            <value>
-              <dict>
-                <key>
-                  <string>bytes</string>
-                </key>
-                <value>
-                  <list>
-                    <string>unicode</string>
-                  </list>
-                </value>
-                <key>
-                  <string>chr</string>
-                </key>
-                <value>
-                  <list>
-                    <string>unichr</string>
-                  </list>
-                </value>
-                <key>
-                  <string>str</string>
-                </key>
-                <value>
-                  <list>
-                    <string>unicode</string>
-                  </list>
-                </value>
-              </dict>
-            </value>
-            <key>
-              <string>CommentedCodeChecker</string>
-            </key>
-            <value>
-              <dict>
-                <key>
-                  <string>Aggressive</string>
-                </key>
-                <value>
-                  <bool>False</bool>
-                </value>
-              </dict>
-            </value>
-            <key>
-              <string>CopyrightAuthor</string>
-            </key>
-            <value>
-              <string></string>
-            </value>
-            <key>
-              <string>CopyrightMinFileSize</string>
-            </key>
-            <value>
-              <int>0</int>
-            </value>
-            <key>
-              <string>DocstringType</string>
-            </key>
-            <value>
-              <string>eric</string>
-            </value>
-            <key>
-              <string>EnabledCheckerCategories</string>
-            </key>
-            <value>
-              <string>C, D, E, M, N, S, W</string>
-            </value>
-            <key>
-              <string>ExcludeFiles</string>
-            </key>
-            <value>
-              <string>*/Ui_*.py, */*_rc.py,*/radon/*</string>
-            </value>
-            <key>
-              <string>ExcludeMessages</string>
-            </key>
-            <value>
-              <string>C101,E265,E266,E305,E402,M811,N802,N803,N807,N808,N821,W293,M201,W504</string>
-            </value>
-            <key>
-              <string>FixCodes</string>
-            </key>
-            <value>
-              <string></string>
-            </value>
-            <key>
-              <string>FixIssues</string>
-            </key>
-            <value>
-              <bool>False</bool>
-            </value>
-            <key>
-              <string>FutureChecker</string>
-            </key>
-            <value>
-              <string></string>
-            </value>
-            <key>
-              <string>HangClosing</string>
-            </key>
-            <value>
-              <bool>False</bool>
-            </value>
-            <key>
-              <string>IncludeMessages</string>
-            </key>
-            <value>
-              <string></string>
-            </value>
-            <key>
-              <string>LineComplexity</string>
-            </key>
-            <value>
-              <int>20</int>
-            </value>
-            <key>
-              <string>LineComplexityScore</string>
-            </key>
-            <value>
-              <int>10</int>
-            </value>
-            <key>
-              <string>MaxCodeComplexity</string>
-            </key>
-            <value>
-              <int>10</int>
-            </value>
-            <key>
-              <string>MaxDocLineLength</string>
-            </key>
-            <value>
-              <int>79</int>
-            </value>
-            <key>
-              <string>MaxLineLength</string>
-            </key>
-            <value>
-              <int>79</int>
-            </value>
-            <key>
-              <string>NoFixCodes</string>
-            </key>
-            <value>
-              <string>E501</string>
-            </value>
-            <key>
-              <string>RepeatMessages</string>
-            </key>
-            <value>
-              <bool>True</bool>
-            </value>
-            <key>
-              <string>SecurityChecker</string>
-            </key>
-            <value>
-              <dict>
-                <key>
-                  <string>CheckTypedException</string>
-                </key>
-                <value>
-                  <bool>False</bool>
-                </value>
-                <key>
-                  <string>HardcodedTmpDirectories</string>
-                </key>
-                <value>
-                  <list>
-                    <string>/tmp</string>
-                    <string>/var/tmp</string>
-                    <string>/dev/shm</string>
-                    <string>~/tmp</string>
-                  </list>
-                </value>
-                <key>
-                  <string>InsecureHashes</string>
-                </key>
-                <value>
-                  <list>
-                    <string>md4</string>
-                    <string>md5</string>
-                    <string>sha</string>
-                    <string>sha1</string>
-                  </list>
-                </value>
-                <key>
-                  <string>InsecureSslProtocolVersions</string>
-                </key>
-                <value>
-                  <list>
-                    <string>PROTOCOL_SSLv2</string>
-                    <string>SSLv2_METHOD</string>
-                    <string>SSLv23_METHOD</string>
-                    <string>PROTOCOL_SSLv3</string>
-                    <string>PROTOCOL_TLSv1</string>
-                    <string>SSLv3_METHOD</string>
-                    <string>TLSv1_METHOD</string>
-                  </list>
-                </value>
-                <key>
-                  <string>WeakKeySizeDsaHigh</string>
-                </key>
-                <value>
-                  <string>1024</string>
-                </value>
-                <key>
-                  <string>WeakKeySizeDsaMedium</string>
-                </key>
-                <value>
-                  <string>2048</string>
-                </value>
-                <key>
-                  <string>WeakKeySizeEcHigh</string>
-                </key>
-                <value>
-                  <string>160</string>
-                </value>
-                <key>
-                  <string>WeakKeySizeEcMedium</string>
-                </key>
-                <value>
-                  <string>224</string>
-                </value>
-                <key>
-                  <string>WeakKeySizeRsaHigh</string>
-                </key>
-                <value>
-                  <string>1024</string>
-                </value>
-                <key>
-                  <string>WeakKeySizeRsaMedium</string>
-                </key>
-                <value>
-                  <string>2048</string>
-                </value>
-              </dict>
-            </value>
-            <key>
-              <string>ShowIgnored</string>
-            </key>
-            <value>
-              <bool>False</bool>
-            </value>
-            <key>
-              <string>ValidEncodings</string>
-            </key>
-            <value>
-              <string>latin-1, utf-8</string>
-            </value>
-          </dict>
-        </value>
-      </dict>
-    </CheckersParams>
-  </Checkers>
-  <OtherTools>
-    <OtherToolsParams>
-      <dict>
-        <key>
-          <string>RadonCodeMetrics</string>
-        </key>
-        <value>
-          <dict>
-            <key>
-              <string>ExcludeFiles</string>
-            </key>
-            <value>
-              <string>*/radon/*</string>
-            </value>
-            <key>
-              <string>MinimumRank</string>
-            </key>
-            <value>
-              <string>C</string>
-            </value>
-          </dict>
-        </value>
-      </dict>
-    </OtherToolsParams>
-  </OtherTools>
-</Project>
--- a/PluginMetricsRadon.epj	Wed May 26 17:13:04 2021 +0200
+++ b/PluginMetricsRadon.epj	Wed May 26 17:43:25 2021 +0200
@@ -133,16 +133,25 @@
     "EMAIL": "detlev@die-offenbachs.de",
     "EOL": 1,
     "FILETYPES": {
+      "*.epj": "OTHERS",
       "*.idl": "INTERFACES",
+      "*.md": "OTHERS",
+      "*.proto": "PROTOCOLS",
       "*.py": "SOURCES",
       "*.py3": "SOURCES",
       "*.pyw": "SOURCES",
       "*.pyw3": "SOURCES",
       "*.qm": "TRANSLATIONS",
-      "*.qrc": "RESOURCES",
+      "*.rst": "OTHERS",
       "*.ts": "TRANSLATIONS",
+      "*.txt": "OTHERS",
       "*.ui": "FORMS",
-      "Ui_*.py": "__IGNORE__"
+      "GNUmakefile": "OTHERS",
+      "Makefile": "OTHERS",
+      "README": "OTHERS",
+      "README.*": "OTHERS",
+      "Ui_*.py": "__IGNORE__",
+      "makefile": "OTHERS"
     },
     "FORMS": [
       "RadonMetrics/CyclomaticComplexityDialog.ui",
@@ -171,7 +180,6 @@
       ".hgignore",
       "ChangeLog",
       "PKGLIST",
-      "PluginMetricsRadon.e4p",
       "PluginMetricsRadon.zip",
       "RadonMetrics/Documentation/LICENSE.GPL3",
       "RadonMetrics/Documentation/source",
@@ -185,7 +193,7 @@
     },
     "PACKAGERSPARMS": {},
     "PROGLANGUAGE": "Python3",
-    "PROJECTTYPE": "E6Plugin",
+    "PROJECTTYPE": "E7Plugin",
     "PROJECTTYPESPECIFICDATA": {},
     "PROTOCOLS": [],
     "RCCPARAMS": {
@@ -267,6 +275,6 @@
       ]
     },
     "VCSOTHERDATA": {},
-    "VERSION": "0.x"
+    "VERSION": ""
   }
 }
\ No newline at end of file
--- a/PluginMetricsRadon.py	Wed May 26 17:13:04 2021 +0200
+++ b/PluginMetricsRadon.py	Wed May 26 17:43:25 2021 +0200
@@ -10,12 +10,13 @@
 import contextlib
 import os
 
-from PyQt5.QtCore import pyqtSignal, QObject, QTranslator
-from PyQt5.QtWidgets import QAction
+from PyQt6.QtCore import pyqtSignal, QObject, QTranslator
+from PyQt6.QtGui import QAction
 
-from E5Gui.E5Application import e5App
-from E5Gui.E5Action import E5Action
-from E5Gui import E5MessageBox
+from EricGui.EricAction import EricAction
+
+from EricWidgets.EricApplication import ericApp
+from EricWidgets import EricMessageBox
 
 from Project.ProjectBrowserModel import ProjectBrowserFileItem
 
@@ -27,7 +28,7 @@
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "4.0.0"
+version = "1.0.0"
 className = "RadonMetricsPlugin"
 packageName = "RadonMetrics"
 shortDescription = "Code metrics plugin using radon package"
@@ -69,13 +70,13 @@
         Constructor
         
         @param ui reference to the user interface object
-        @type UI.UserInterface
+        @type UserInterface
         """
         super().__init__(ui)
         self.__ui = ui
         self.__initialize()
         
-        self.backgroundService = e5App().getObject("BackgroundService")
+        self.backgroundService = ericApp().getObject("BackgroundService")
         
         path = os.path.join(os.path.dirname(__file__), packageName)
         
@@ -384,7 +385,7 @@
         error = ""     # clear previous error
         
         # Project menu actions
-        menu = e5App().getObject("Project").getMenu("Show")
+        menu = ericApp().getObject("Project").getMenu("Show")
         if menu:
             if not menu.isEmpty():
                 act = menu.addSeparator()
@@ -399,7 +400,7 @@
             menu.addAction(act)
             self.__projectMetricsActs.append(act)
             
-            act = E5Action(
+            act = EricAction(
                 self.tr('Code Metrics'),
                 self.tr('Code &Metrics...'), 0, 0,
                 self, 'project_show_radon_raw')
@@ -416,7 +417,7 @@
             menu.addAction(act)
             self.__projectMetricsActs.append(act)
             
-            act = E5Action(
+            act = EricAction(
                 self.tr('Maintainability Index'),
                 self.tr('Maintainability &Index...'), 0, 0,
                 self, 'project_show_radon_mi')
@@ -431,7 +432,7 @@
             menu.addAction(act)
             self.__projectMetricsActs.append(act)
             
-            act = E5Action(
+            act = EricAction(
                 self.tr('Cyclomatic Complexity'),
                 self.tr('Cyclomatic &Complexity...'), 0, 0,
                 self, 'project_show_radon_cc')
@@ -449,10 +450,10 @@
             act = menu.addSeparator()
             self.__projectSeparatorActs.append(act)
             
-            e5App().getObject("Project").addE5Actions(
+            ericApp().getObject("Project").addEricActions(
                 self.__projectMetricsActs[1:])
         
-        # Editor menu actions
+        # Editor menu actions (one separator each above and below)
         act = QAction(self)
         act.setSeparator(True)
         self.__editorSeparatorActs.append(act)
@@ -468,7 +469,7 @@
         act.triggered.connect(self.__showRadonVersion)
         self.__editorMetricsActs.append(act)
         
-        act = E5Action(
+        act = EricAction(
             self.tr('Code Metrics'),
             self.tr('Code &Metrics...'), 0, 0,
             self, "")
@@ -484,7 +485,7 @@
         act.triggered.connect(self.__editorRawMetrics)
         self.__editorMetricsActs.append(act)
         
-        act = E5Action(
+        act = EricAction(
             self.tr('Maintainability Index'),
             self.tr('Maintainability &Index...'), 0, 0,
             self, "")
@@ -498,7 +499,7 @@
         act.triggered.connect(self.__editorMaintainabilityIndex)
         self.__editorMetricsActs.append(act)
         
-        act = E5Action(
+        act = EricAction(
             self.tr('Cyclomatic Complexity'),
             self.tr('Cyclomatic &Complexity...'), 0, 0,
             self, '')
@@ -512,17 +513,17 @@
         act.triggered.connect(self.__editorCyclomaticComplexity)
         self.__editorMetricsActs.append(act)
         
-        e5App().getObject("Project").showMenu.connect(self.__projectShowMenu)
-        e5App().getObject("Project").projectClosed.connect(
+        ericApp().getObject("Project").showMenu.connect(self.__projectShowMenu)
+        ericApp().getObject("Project").projectClosed.connect(
             self.__projectClosed)
-        e5App().getObject("ProjectBrowser").getProjectBrowser(
+        ericApp().getObject("ProjectBrowser").getProjectBrowser(
             "sources").showMenu.connect(self.__projectBrowserShowMenu)
-        e5App().getObject("ViewManager").editorOpenedEd.connect(
+        ericApp().getObject("ViewManager").editorOpenedEd.connect(
             self.__editorOpened)
-        e5App().getObject("ViewManager").editorClosedEd.connect(
+        ericApp().getObject("ViewManager").editorClosedEd.connect(
             self.__editorClosed)
         
-        for editor in e5App().getObject("ViewManager").getOpenEditors():
+        for editor in ericApp().getObject("ViewManager").getOpenEditors():
             self.__editorOpened(editor)
         
         return None, True
@@ -531,24 +532,24 @@
         """
         Public method to deactivate this plug-in.
         """
-        e5App().getObject("Project").showMenu.disconnect(
+        ericApp().getObject("Project").showMenu.disconnect(
             self.__projectShowMenu)
-        e5App().getObject("Project").projectClosed.disconnect(
+        ericApp().getObject("Project").projectClosed.disconnect(
             self.__projectClosed)
-        e5App().getObject("ProjectBrowser").getProjectBrowser(
+        ericApp().getObject("ProjectBrowser").getProjectBrowser(
             "sources").showMenu.disconnect(self.__projectBrowserShowMenu)
-        e5App().getObject("ViewManager").editorOpenedEd.disconnect(
+        ericApp().getObject("ViewManager").editorOpenedEd.disconnect(
             self.__editorOpened)
-        e5App().getObject("ViewManager").editorClosedEd.disconnect(
+        ericApp().getObject("ViewManager").editorClosedEd.disconnect(
             self.__editorClosed)
         
-        menu = e5App().getObject("Project").getMenu("Show")
+        menu = ericApp().getObject("Project").getMenu("Show")
         if menu:
             for sep in self.__projectSeparatorActs:
                 menu.removeAction(sep)
             for act in self.__projectMetricsActs:
                 menu.removeAction(act)
-            e5App().getObject("Project").removeE5Actions(
+            ericApp().getObject("Project").removeE5Actions(
                 self.__projectMetricsActs[1:])
         
         if self.__projectBrowserMenu:
@@ -582,7 +583,7 @@
                 loaded = translator.load(translation, locale_dir)
                 if loaded:
                     self.__translator = translator
-                    e5App().installTranslator(self.__translator)
+                    ericApp().installTranslator(self.__translator)
                 else:
                     print("Warning: translation file '{0}' could not be"
                           " loaded.".format(translation))
@@ -601,7 +602,7 @@
         if menuName == "Show":
             for act in self.__projectMetricsActs[1:]:
                 act.setEnabled(
-                    e5App().getObject("Project").getProjectLanguage() ==
+                    ericApp().getObject("Project").getProjectLanguage() ==
                     "Python3")
     
     def __projectBrowserShowMenu(self, menuName, menu):
@@ -609,12 +610,15 @@
         Private slot called, when the the project browser context menu or a
         submenu is about to be shown.
         
-        @param menuName name of the menu to be shown (string)
-        @param menu reference to the menu (QMenu)
+        @param menuName name of the menu to be shown
+        @type str
+        @param menu reference to the menu
+        @type QMenu
         """
         if (
             menuName == "Show" and
-            e5App().getObject("Project").getProjectLanguage() == "Python3" and
+            ericApp().getObject("Project").getProjectLanguage() ==
+            "Python3" and
             self.__projectBrowserMenu is None
         ):
             self.__projectBrowserMenu = menu
@@ -631,7 +635,7 @@
             menu.addAction(act)
             self.__projectBrowserMetricsActs.append(act)
             
-            act = E5Action(
+            act = EricAction(
                 self.tr('Code Metrics'),
                 self.tr('Code &Metrics...'), 0, 0,
                 self, '')
@@ -648,7 +652,7 @@
             menu.addAction(act)
             self.__projectBrowserMetricsActs.append(act)
             
-            act = E5Action(
+            act = EricAction(
                 self.tr('Maintainability Index'),
                 self.tr('Maintainability &Index...'), 0, 0,
                 self, '')
@@ -665,7 +669,7 @@
             menu.addAction(act)
             self.__projectBrowserMetricsActs.append(act)
             
-            act = E5Action(
+            act = EricAction(
                 self.tr('Cyclomatic Complexity'),
                 self.tr('Cyclomatic &Complexity...'), 0, 0,
                 self, '')
@@ -690,7 +694,7 @@
         Private slot called, when a new editor was opened.
         
         @param editor reference to the new editor
-        @type QScintilla.Editor
+        @type Editor
         """
         menu = editor.getMenu("Show")
         if menu is not None:
@@ -705,7 +709,8 @@
         """
         Private slot called, when an editor was closed.
         
-        @param editor reference to the editor (QScintilla.Editor)
+        @param editor reference to the editor
+        @type Editor
         """
         with contextlib.suppress(ValueError):
             self.__editors.remove(editor)
@@ -715,7 +720,7 @@
         Private slot called, when an editor was renamed.
         
         @param editor reference to the renamed editor
-        @type QScintilla.Editor
+        @type Editor
         """
         menu = editor.getMenu("Show")
         if menu is not None:
@@ -728,9 +733,12 @@
         Private slot called, when the the editor context menu or a submenu is
         about to be shown.
         
-        @param menuName name of the menu to be shown (string)
-        @param menu reference to the menu (QMenu)
+        @param menuName name of the menu to be shown
+        @type str
+        @param menu reference to the menu
+        @type QMenu
         @param editor reference to the editor
+        @type Editor
         """
         if menuName == "Show":
             enable = editor.isPyFile()
@@ -745,14 +753,14 @@
         """
         Private slot used to calculate raw code metrics for the project.
         """
-        project = e5App().getObject("Project")
+        project = ericApp().getObject("Project")
         project.saveAllScripts()
         ppath = project.getProjectPath()
-        files = [os.path.join(ppath, file)
-                 for file in project.getSources()
-                 if file.endswith(
-                     tuple(Preferences.getPython("Python3Extensions")) +
-                     tuple(Preferences.getPython("PythonExtensions")))]
+        files = [
+            os.path.join(ppath, file)
+            for file in project.getSources()
+            if file.endswith(tuple(Preferences.getPython("Python3Extensions")))
+        ]
         
         if self.__projectRawMetricsDialog is None:
             from RadonMetrics.RawMetricsDialog import RawMetricsDialog
@@ -765,8 +773,9 @@
         Private method to handle the code metrics context menu action of the
         project sources browser.
         """
-        browser = e5App().getObject("ProjectBrowser").getProjectBrowser(
-            "sources")
+        browser = (
+            ericApp().getObject("ProjectBrowser").getProjectBrowser("sources")
+        )
         if browser.getSelectedItemsCount([ProjectBrowserFileItem]) > 1:
             fn = []
             for itm in browser.getSelectedItems([ProjectBrowserFileItem]):
@@ -789,7 +798,7 @@
         Private slot to handle the raw code metrics action of the editor show
         menu.
         """
-        editor = e5App().getObject("ViewManager").activeWindow()
+        editor = ericApp().getObject("ViewManager").activeWindow()
         if (
             editor is not None and
             editor.checkDirty() and
@@ -810,14 +819,14 @@
         Private slot used to calculate the maintainability indexes for the
         project.
         """
-        project = e5App().getObject("Project")
+        project = ericApp().getObject("Project")
         project.saveAllScripts()
         ppath = project.getProjectPath()
-        files = [os.path.join(ppath, file)
-                 for file in project.getSources()
-                 if file.endswith(
-                     tuple(Preferences.getPython("Python3Extensions")) +
-                     tuple(Preferences.getPython("PythonExtensions")))]
+        files = [
+            os.path.join(ppath, file)
+            for file in project.getSources()
+            if file.endswith(tuple(Preferences.getPython("Python3Extensions")))
+        ]
         
         if self.__projectMIDialog is None:
             from RadonMetrics.MaintainabilityIndexDialog import (
@@ -832,7 +841,7 @@
         Private method to handle the maintainability index context menu action
         of the project sources browser.
         """
-        browser = e5App().getObject("ProjectBrowser").getProjectBrowser(
+        browser = ericApp().getObject("ProjectBrowser").getProjectBrowser(
             "sources")
         if browser.getSelectedItemsCount([ProjectBrowserFileItem]) > 1:
             fn = []
@@ -858,7 +867,7 @@
         Private slot to handle the maintainability index action of the editor
         show menu.
         """
-        editor = e5App().getObject("ViewManager").activeWindow()
+        editor = ericApp().getObject("ViewManager").activeWindow()
         if (
             editor is not None and
             editor.checkDirty() and
@@ -881,14 +890,14 @@
         Private slot used to calculate the cyclomatic complexity for the
         project.
         """
-        project = e5App().getObject("Project")
+        project = ericApp().getObject("Project")
         project.saveAllScripts()
         ppath = project.getProjectPath()
-        files = [os.path.join(ppath, file)
-                 for file in project.getSources()
-                 if file.endswith(
-                     tuple(Preferences.getPython("Python3Extensions")) +
-                     tuple(Preferences.getPython("PythonExtensions")))]
+        files = [
+            os.path.join(ppath, file)
+            for file in project.getSources()
+            if file.endswith(tuple(Preferences.getPython("Python3Extensions")))
+        ]
         
         if self.__projectCCDialog is None:
             from RadonMetrics.CyclomaticComplexityDialog import (
@@ -903,7 +912,7 @@
         Private method to handle the cyclomatic complexity context menu action
         of the project sources browser.
         """
-        browser = e5App().getObject("ProjectBrowser").getProjectBrowser(
+        browser = ericApp().getObject("ProjectBrowser").getProjectBrowser(
             "sources")
         if browser.getSelectedItemsCount([ProjectBrowserFileItem]) > 1:
             fn = []
@@ -930,7 +939,7 @@
         Private slot to handle the cyclomatic complexity action of the editor
         show menu.
         """
-        editor = e5App().getObject("ViewManager").activeWindow()
+        editor = ericApp().getObject("ViewManager").activeWindow()
         if (
             editor is not None and
             editor.checkDirty() and
@@ -953,8 +962,8 @@
         """
         Private slot to show the version number of the used radon library.
         """
-        from RadonMetrics.radon import __version__
-        E5MessageBox.information(
+        from radon import __version__
+        EricMessageBox.information(
             None,
             self.tr("Radon"),
             self.tr(
Binary file PluginMetricsRadon.zip has changed
--- a/RadonMetrics/CyclomaticComplexityDialog.py	Wed May 26 17:13:04 2021 +0200
+++ b/RadonMetrics/CyclomaticComplexityDialog.py	Wed May 26 17:43:25 2021 +0200
@@ -10,19 +10,16 @@
 
 import os
 import fnmatch
-import sys
 
-sys.path.insert(0, os.path.dirname(__file__))
-
-from PyQt5.QtCore import pyqtSlot, qVersion, Qt, QTimer, QLocale
-from PyQt5.QtGui import QColor
-from PyQt5.QtWidgets import (
+from PyQt6.QtCore import pyqtSlot, Qt, QTimer, QLocale
+from PyQt6.QtGui import QColor
+from PyQt6.QtWidgets import (
     QDialog, QDialogButtonBox, QAbstractButton, QHeaderView, QTreeWidgetItem,
     QApplication, QMenu
 )
 
 from .Ui_CyclomaticComplexityDialog import Ui_CyclomaticComplexityDialog
-from E5Gui.E5Application import e5App
+from EricWidgets.EricApplication import ericApp
 
 import Preferences
 import Utilities
@@ -33,8 +30,8 @@
     Class implementing a dialog to show the cyclomatic complexity (McCabe
     complexity).
     """
-    FilePathRole = Qt.UserRole + 1
-    LineNumberRole = Qt.UserRole + 2
+    FilePathRole = Qt.ItemDataRole.UserRole + 1
+    LineNumberRole = Qt.ItemDataRole.UserRole + 2
     
     def __init__(self, radonService, isSingle=False, parent=None):
         """
@@ -49,10 +46,12 @@
         """
         super().__init__(parent)
         self.setupUi(self)
-        self.setWindowFlags(Qt.Window)
+        self.setWindowFlags(Qt.WindowType.Window)
         
-        self.buttonBox.button(QDialogButtonBox.Close).setEnabled(False)
-        self.buttonBox.button(QDialogButtonBox.Cancel).setDefault(True)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Close).setEnabled(False)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Cancel).setDefault(True)
         
         self.resultList.headerItem().setText(self.resultList.columnCount(), "")
         
@@ -68,7 +67,7 @@
         self.__isSingle = isSingle
         self.cancelled = False
         
-        self.__project = e5App().getObject("Project")
+        self.__project = ericApp().getObject("Project")
         self.__locale = QLocale()
         self.__finished = True
         self.__errorItem = None
@@ -109,10 +108,10 @@
         }
         
         try:
-            usesDarkPalette = e5App().usesDarkPalette()
+            usesDarkPalette = ericApp().usesDarkPalette()
         except AttributeError:
-            from PyQt5.QtGui import QPalette
-            palette = e5App().palette()
+            from PyQt6.QtGui import QPalette
+            palette = ericApp().palette()
             lightness = palette.color(QPalette.Window).lightness()
             usesDarkPalette = lightness <= 128
         if usesDarkPalette:
@@ -148,7 +147,8 @@
         self.__menu.addAction(self.tr("Collapse all"),
                               self.__resultCollapse)
         self.__menu.addAction(self.tr("Expand all"), self.__resultExpand)
-        self.resultList.setContextMenuPolicy(Qt.CustomContextMenu)
+        self.resultList.setContextMenuPolicy(
+            Qt.ContextMenuPolicy.CustomContextMenu)
         self.resultList.customContextMenuRequested.connect(
             self.__showContextMenu)
     
@@ -156,7 +156,8 @@
         """
         Private method to resize the list columns.
         """
-        self.resultList.header().resizeSections(QHeaderView.ResizeToContents)
+        self.resultList.header().resizeSections(
+            QHeaderView.ResizeMode.ResizeToContents)
         self.resultList.header().setStretchLastSection(True)
     
     def __createFileItem(self, filename):
@@ -191,9 +192,9 @@
                 values["rank"],
                 "{0:6}".format(values["lineno"]),
             ])
-            itm.setTextAlignment(2, Qt.Alignment(Qt.AlignRight))
-            itm.setTextAlignment(3, Qt.Alignment(Qt.AlignHCenter))
-            itm.setTextAlignment(4, Qt.Alignment(Qt.AlignRight))
+            itm.setTextAlignment(2, Qt.AlignmentFlag.AlignRight)
+            itm.setTextAlignment(3, Qt.AlignmentFlag.AlignHCenter)
+            itm.setTextAlignment(4, Qt.AlignmentFlag.AlignRight)
             if values["rank"] in self.__rankColors:
                 itm.setBackground(3, self.__rankColors[values["rank"]])
             if values["type"] in self.__typeColors:
@@ -223,13 +224,13 @@
             self.__errorItem = QTreeWidgetItem(self.resultList, [
                 self.tr("Errors")])
             self.__errorItem.setExpanded(True)
-            self.__errorItem.setForeground(0, Qt.red)
+            self.__errorItem.setForeground(0, Qt.GlobalColor.red)
         
         msg = "{0} ({1})".format(self.__project.getRelativePath(filename),
                                  message)
-        if not self.resultList.findItems(msg, Qt.MatchExactly):
+        if not self.resultList.findItems(msg, Qt.MatchFlag.MatchExactly):
             itm = QTreeWidgetItem(self.__errorItem, [msg])
-            itm.setForeground(0, Qt.red)
+            itm.setForeground(0, Qt.GlobalColor.red)
             itm.setFirstColumnSpanned(True)
     
     def prepare(self, fileList, project):
@@ -244,9 +245,12 @@
         self.__fileList = fileList[:]
         self.__project = project
         
-        self.buttonBox.button(QDialogButtonBox.Close).setEnabled(True)
-        self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(False)
-        self.buttonBox.button(QDialogButtonBox.Close).setDefault(True)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Close).setEnabled(True)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Cancel).setEnabled(False)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Close).setDefault(True)
         
         self.filterFrame.setVisible(True)
         
@@ -277,9 +281,12 @@
         self.summaryLabel.clear()
         QApplication.processEvents()
         
-        self.buttonBox.button(QDialogButtonBox.Close).setEnabled(False)
-        self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(True)
-        self.buttonBox.button(QDialogButtonBox.Cancel).setDefault(True)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Close).setEnabled(False)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Cancel).setEnabled(True)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Cancel).setDefault(True)
         self.rankComboBox.setEnabled(False)
         QApplication.processEvents()
         
@@ -287,8 +294,7 @@
             self.files = fn
         elif os.path.isdir(fn):
             self.files = []
-            extensions = set(Preferences.getPython("PythonExtensions") +
-                             Preferences.getPython("Python3Extensions"))
+            extensions = set(Preferences.getPython("Python3Extensions"))
             for ext in extensions:
                 self.files.extend(
                     Utilities.direntries(fn, True, '*{0}'.format(ext), 0))
@@ -341,7 +347,7 @@
         
         The results are reported to the __processResult slot.
         
-        @keyparam codestring optional sourcestring
+        @param codestring optional sourcestring
         @type str
         """
         if not self.files:
@@ -488,24 +494,24 @@
             
             # re-enable updates of the list
             self.resultList.setSortingEnabled(True)
-            self.resultList.sortItems(0, Qt.AscendingOrder)
-            self.resultList.sortItems(1, Qt.AscendingOrder)
+            self.resultList.sortItems(0, Qt.SortOrder.AscendingOrder)
+            self.resultList.sortItems(1, Qt.SortOrder.AscendingOrder)
             self.resultList.setUpdatesEnabled(True)
             
             self.cancelled = True
-            self.buttonBox.button(QDialogButtonBox.Close).setEnabled(True)
-            self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(False)
-            self.buttonBox.button(QDialogButtonBox.Close).setDefault(True)
+            self.buttonBox.button(
+                QDialogButtonBox.StandardButton.Close).setEnabled(True)
+            self.buttonBox.button(
+                QDialogButtonBox.StandardButton.Cancel).setEnabled(False)
+            self.buttonBox.button(
+                QDialogButtonBox.StandardButton.Close).setDefault(True)
             self.rankComboBox.setEnabled(True)
             
             self.resultList.header().resizeSections(
-                QHeaderView.ResizeToContents)
+                QHeaderView.ResizeMode.ResizeToContents)
             self.resultList.header().setStretchLastSection(True)
-            if qVersion() >= "5.0.0":
-                self.resultList.header().setSectionResizeMode(
-                    QHeaderView.Interactive)
-            else:
-                self.resultList.header().setResizeMode(QHeaderView.Interactive)
+            self.resultList.header().setSectionResizeMode(
+                QHeaderView.ResizeMode.Interactive)
             
             averageCC = float(self.__ccSum) / (self.__ccCount or 1)
             
@@ -550,9 +556,13 @@
         @param button button that was clicked
         @type QAbstractButton
         """
-        if button == self.buttonBox.button(QDialogButtonBox.Close):
+        if button == self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Close
+        ):
             self.close()
-        elif button == self.buttonBox.button(QDialogButtonBox.Cancel):
+        elif button == self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Cancel
+        ):
             if self.__batch:
                 self.radonService.cancelComplexityBatch()
                 QTimer.singleShot(1000, self.__finish)
@@ -638,7 +648,7 @@
         filename = item.data(0, self.FilePathRole)
         lineno = item.data(0, self.LineNumberRole)
         if filename:
-            vm = e5App().getObject("ViewManager")
+            vm = ericApp().getObject("ViewManager")
             vm.openSourceFile(filename, lineno)
     
     @pyqtSlot(str)
--- a/RadonMetrics/CyclomaticComplexityDialog.ui	Wed May 26 17:13:04 2021 +0200
+++ b/RadonMetrics/CyclomaticComplexityDialog.ui	Wed May 26 17:43:25 2021 +0200
@@ -85,10 +85,13 @@
          </widget>
         </item>
         <item>
-         <widget class="E5ClearableLineEdit" name="excludeFilesEdit">
+         <widget class="QLineEdit" name="excludeFilesEdit">
           <property name="toolTip">
            <string>Enter filename patterns of files to be excluded separated by a comma</string>
           </property>
+          <property name="clearButtonEnabled">
+           <bool>true</bool>
+          </property>
          </widget>
         </item>
         <item>
@@ -118,6 +121,9 @@
    </item>
    <item>
     <widget class="QTreeWidget" name="resultList">
+     <property name="contextMenuPolicy">
+      <enum>Qt::CustomContextMenu</enum>
+     </property>
      <property name="alternatingRowColors">
       <bool>true</bool>
      </property>
@@ -192,7 +198,7 @@
     </layout>
    </item>
    <item>
-    <widget class="E5SqueezeLabelPath" name="checkProgressLabel">
+    <widget class="EricSqueezeLabelPath" name="checkProgressLabel">
      <property name="sizePolicy">
       <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
        <horstretch>0</horstretch>
@@ -236,14 +242,9 @@
  <pixmapfunction>qPixmapFromMimeSource</pixmapfunction>
  <customwidgets>
   <customwidget>
-   <class>E5ClearableLineEdit</class>
-   <extends>QLineEdit</extends>
-   <header>E5Gui/E5LineEdit.h</header>
-  </customwidget>
-  <customwidget>
-   <class>E5SqueezeLabelPath</class>
+   <class>EricSqueezeLabelPath</class>
    <extends>QLabel</extends>
-   <header>E5Gui/E5SqueezeLabels.h</header>
+   <header>EricWidgets/EricSqueezeLabels.h</header>
   </customwidget>
  </customwidgets>
  <tabstops>
--- a/RadonMetrics/Documentation/source/Plugin_Metrics_Radon.PluginMetricsRadon.html	Wed May 26 17:13:04 2021 +0200
+++ b/RadonMetrics/Documentation/source/Plugin_Metrics_Radon.PluginMetricsRadon.html	Wed May 26 17:43:25 2021 +0200
@@ -255,7 +255,7 @@
 </p>
 <dl>
 
-<dt><i>ui</i> (UI.UserInterface)</dt>
+<dt><i>ui</i> (UserInterface)</dt>
 <dd>
 reference to the user interface object
 </dd>
@@ -269,9 +269,9 @@
 </p>
 <dl>
 
-<dt><i>editor</i></dt>
+<dt><i>editor</i> (Editor)</dt>
 <dd>
-reference to the editor (QScintilla.Editor)
+reference to the editor
 </dd>
 </dl>
 <a NAME="RadonMetricsPlugin.__editorCyclomaticComplexity" ID="RadonMetricsPlugin.__editorCyclomaticComplexity"></a>
@@ -299,7 +299,7 @@
 </p>
 <dl>
 
-<dt><i>editor</i> (QScintilla.Editor)</dt>
+<dt><i>editor</i> (Editor)</dt>
 <dd>
 reference to the new editor
 </dd>
@@ -321,7 +321,7 @@
 </p>
 <dl>
 
-<dt><i>editor</i> (QScintilla.Editor)</dt>
+<dt><i>editor</i> (Editor)</dt>
 <dd>
 reference to the renamed editor
 </dd>
@@ -336,15 +336,15 @@
 </p>
 <dl>
 
-<dt><i>menuName</i></dt>
+<dt><i>menuName</i> (str)</dt>
 <dd>
-name of the menu to be shown (string)
+name of the menu to be shown
 </dd>
-<dt><i>menu</i></dt>
+<dt><i>menu</i> (QMenu)</dt>
 <dd>
-reference to the menu (QMenu)
+reference to the menu
 </dd>
-<dt><i>editor</i></dt>
+<dt><i>editor</i> (Editor)</dt>
 <dd>
 reference to the editor
 </dd>
@@ -397,13 +397,13 @@
 </p>
 <dl>
 
-<dt><i>menuName</i></dt>
+<dt><i>menuName</i> (str)</dt>
 <dd>
-name of the menu to be shown (string)
+name of the menu to be shown
 </dd>
-<dt><i>menu</i></dt>
+<dt><i>menu</i> (QMenu)</dt>
 <dd>
-reference to the menu (QMenu)
+reference to the menu
 </dd>
 </dl>
 <a NAME="RadonMetricsPlugin.__projectClosed" ID="RadonMetricsPlugin.__projectClosed"></a>
--- a/RadonMetrics/Documentation/source/Plugin_Metrics_Radon.RadonMetrics.CyclomaticComplexityDialog.html	Wed May 26 17:13:04 2021 +0200
+++ b/RadonMetrics/Documentation/source/Plugin_Metrics_Radon.RadonMetrics.CyclomaticComplexityDialog.html	Wed May 26 17:43:25 2021 +0200
@@ -362,7 +362,7 @@
 </p>
 <dl>
 
-<dt><i>codestring=</i> (str)</dt>
+<dt><i>codestring</i> (str)</dt>
 <dd>
 optional sourcestring
 </dd>
--- a/RadonMetrics/Documentation/source/Plugin_Metrics_Radon.RadonMetrics.MaintainabilityIndexDialog.html	Wed May 26 17:13:04 2021 +0200
+++ b/RadonMetrics/Documentation/source/Plugin_Metrics_Radon.RadonMetrics.MaintainabilityIndexDialog.html	Wed May 26 17:43:25 2021 +0200
@@ -282,7 +282,7 @@
 </p>
 <dl>
 
-<dt><i>codestring=</i> (str)</dt>
+<dt><i>codestring</i> (str)</dt>
 <dd>
 optional sourcestring
 </dd>
--- a/RadonMetrics/Documentation/source/Plugin_Metrics_Radon.RadonMetrics.RawMetricsDialog.html	Wed May 26 17:13:04 2021 +0200
+++ b/RadonMetrics/Documentation/source/Plugin_Metrics_Radon.RadonMetrics.RawMetricsDialog.html	Wed May 26 17:43:25 2021 +0200
@@ -401,7 +401,7 @@
 </p>
 <dl>
 
-<dt><i>codestring=</i> (str)</dt>
+<dt><i>codestring</i> (str)</dt>
 <dd>
 optional sourcestring
 </dd>
--- a/RadonMetrics/MaintainabilityIndexDialog.py	Wed May 26 17:13:04 2021 +0200
+++ b/RadonMetrics/MaintainabilityIndexDialog.py	Wed May 26 17:43:25 2021 +0200
@@ -10,15 +10,15 @@
 import os
 import fnmatch
 
-from PyQt5.QtCore import pyqtSlot, qVersion, Qt, QTimer, QLocale
-from PyQt5.QtGui import QColor
-from PyQt5.QtWidgets import (
+from PyQt6.QtCore import pyqtSlot, Qt, QTimer, QLocale
+from PyQt6.QtGui import QColor
+from PyQt6.QtWidgets import (
     QDialog, QDialogButtonBox, QAbstractButton, QHeaderView, QTreeWidgetItem,
     QApplication
 )
 
 from .Ui_MaintainabilityIndexDialog import Ui_MaintainabilityIndexDialog
-from E5Gui.E5Application import e5App
+from EricWidgets.EricApplication import ericApp
 
 import Preferences
 import Utilities
@@ -28,7 +28,7 @@
     """
     Class implementing a dialog to show maintainability indexes.
     """
-    FilePathRole = Qt.UserRole + 1
+    FilePathRole = Qt.ItemDataRole.UserRole + 1
     
     def __init__(self, radonService, parent=None):
         """
@@ -41,10 +41,12 @@
         """
         super().__init__(parent)
         self.setupUi(self)
-        self.setWindowFlags(Qt.Window)
+        self.setWindowFlags(Qt.WindowType.Window)
         
-        self.buttonBox.button(QDialogButtonBox.Close).setEnabled(False)
-        self.buttonBox.button(QDialogButtonBox.Cancel).setDefault(True)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Close).setEnabled(False)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Cancel).setDefault(True)
         
         self.resultList.headerItem().setText(self.resultList.columnCount(), "")
         
@@ -56,7 +58,7 @@
         
         self.cancelled = False
         
-        self.__project = e5App().getObject("Project")
+        self.__project = ericApp().getObject("Project")
         self.__locale = QLocale()
         self.__finished = True
         self.__errorItem = None
@@ -75,10 +77,10 @@
         ))
         
         try:
-            usesDarkPalette = e5App().usesDarkPalette()
+            usesDarkPalette = ericApp().usesDarkPalette()
         except AttributeError:
-            from PyQt5.QtGui import QPalette
-            palette = e5App().palette()
+            from PyQt6.QtGui import QPalette
+            palette = ericApp().palette()
             lightness = palette.color(QPalette.Window).lightness()
             usesDarkPalette = lightness <= 128
         if usesDarkPalette:
@@ -98,7 +100,8 @@
         """
         Private method to resize the list columns.
         """
-        self.resultList.header().resizeSections(QHeaderView.ResizeToContents)
+        self.resultList.header().resizeSections(
+            QHeaderView.ResizeMode.ResizeMode.ResizeToContents)
         self.resultList.header().setStretchLastSection(True)
     
     def __createResultItem(self, filename, values):
@@ -118,8 +121,8 @@
             data.append(values["mi"])
         data.append(values["rank"])
         itm = QTreeWidgetItem(self.resultList, data)
-        itm.setTextAlignment(1, Qt.Alignment(Qt.AlignRight))
-        itm.setTextAlignment(2, Qt.Alignment(Qt.AlignHCenter))
+        itm.setTextAlignment(1, Qt.AlignmentFlag.AlignRight)
+        itm.setTextAlignment(2, Qt.AlignmentFlag.AlignHCenter)
         if values["rank"] in self.__rankColors:
             itm.setBackground(2, self.__rankColors[values["rank"]])
         itm.setData(0, self.FilePathRole, filename)
@@ -140,13 +143,13 @@
             self.__errorItem = QTreeWidgetItem(self.resultList, [
                 self.tr("Errors")])
             self.__errorItem.setExpanded(True)
-            self.__errorItem.setForeground(0, Qt.red)
+            self.__errorItem.setForeground(0, Qt.GlobalColor.red)
         
         msg = "{0} ({1})".format(self.__project.getRelativePath(filename),
                                  message)
-        if not self.resultList.findItems(msg, Qt.MatchExactly):
+        if not self.resultList.findItems(msg, Qt.MatchFlag.MatchExactly):
             itm = QTreeWidgetItem(self.__errorItem, [msg])
-            itm.setForeground(0, Qt.red)
+            itm.setForeground(0, Qt.GlobalColor.red)
             itm.setFirstColumnSpanned(True)
     
     def prepare(self, fileList, project):
@@ -161,9 +164,12 @@
         self.__fileList = fileList[:]
         self.__project = project
         
-        self.buttonBox.button(QDialogButtonBox.Close).setEnabled(True)
-        self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(False)
-        self.buttonBox.button(QDialogButtonBox.Close).setDefault(True)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Close).setEnabled(True)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Cancel).setEnabled(False)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Close).setDefault(True)
         
         self.filterFrame.setVisible(True)
         
@@ -187,17 +193,19 @@
         self.cancelled = False
         QApplication.processEvents()
         
-        self.buttonBox.button(QDialogButtonBox.Close).setEnabled(False)
-        self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(True)
-        self.buttonBox.button(QDialogButtonBox.Cancel).setDefault(True)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Close).setEnabled(False)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Cancel).setEnabled(True)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Cancel).setDefault(True)
         QApplication.processEvents()
         
         if isinstance(fn, list):
             self.files = fn
         elif os.path.isdir(fn):
             self.files = []
-            extensions = set(Preferences.getPython("PythonExtensions") +
-                             Preferences.getPython("Python3Extensions"))
+            extensions = set(Preferences.getPython("Python3Extensions"))
             for ext in extensions:
                 self.files.extend(
                     Utilities.direntries(fn, True, '*{0}'.format(ext), 0))
@@ -241,7 +249,7 @@
         
         The results are reported to the __processResult slot.
         
-        @keyparam codestring optional sourcestring
+        @param codestring optional sourcestring
         @type str
         """
         if not self.files:
@@ -374,22 +382,22 @@
             
             # reenable updates of the list
             self.resultList.setSortingEnabled(True)
-            self.resultList.sortItems(0, Qt.AscendingOrder)
+            self.resultList.sortItems(0, Qt.SortOrder.AscendingOrder)
             self.resultList.setUpdatesEnabled(True)
             
             self.cancelled = True
-            self.buttonBox.button(QDialogButtonBox.Close).setEnabled(True)
-            self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(False)
-            self.buttonBox.button(QDialogButtonBox.Close).setDefault(True)
+            self.buttonBox.button(
+                QDialogButtonBox.StandardButton.Close).setEnabled(True)
+            self.buttonBox.button(
+                QDialogButtonBox.StandardButton.Cancel).setEnabled(False)
+            self.buttonBox.button(
+                QDialogButtonBox.StandardButton.Close).setDefault(True)
             
             self.resultList.header().resizeSections(
-                QHeaderView.ResizeToContents)
+                QHeaderView.ResizeMode.ResizeToContents)
             self.resultList.header().setStretchLastSection(True)
-            if qVersion() >= "5.0.0":
-                self.resultList.header().setSectionResizeMode(
-                    QHeaderView.Interactive)
-            else:
-                self.resultList.header().setResizeMode(QHeaderView.Interactive)
+            self.resultList.header().setSectionResizeMode(
+                QHeaderView.ResizeMode.Interactive)
             
             self.summaryLabel.setText(self.tr(
                 "<table>"
@@ -414,9 +422,13 @@
         @param button button that was clicked
         @type QAbstractButton
         """
-        if button == self.buttonBox.button(QDialogButtonBox.Close):
+        if button == self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Close
+        ):
             self.close()
-        elif button == self.buttonBox.button(QDialogButtonBox.Cancel):
+        elif button == self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Cancel
+        ):
             if self.__batch:
                 self.radonService.cancelMaintainabilityIndexBatch()
                 QTimer.singleShot(1000, self.__finish)
@@ -466,5 +478,5 @@
         """
         filename = item.data(0, self.FilePathRole)
         if filename:
-            vm = e5App().getObject("ViewManager")
+            vm = ericApp().getObject("ViewManager")
             vm.openSourceFile(filename)
--- a/RadonMetrics/MaintainabilityIndexDialog.ui	Wed May 26 17:13:04 2021 +0200
+++ b/RadonMetrics/MaintainabilityIndexDialog.ui	Wed May 26 17:43:25 2021 +0200
@@ -50,10 +50,13 @@
        </widget>
       </item>
       <item>
-       <widget class="E5ClearableLineEdit" name="excludeFilesEdit">
+       <widget class="QLineEdit" name="excludeFilesEdit">
         <property name="toolTip">
          <string>Enter filename patterns of files to be excluded separated by a comma</string>
         </property>
+        <property name="clearButtonEnabled">
+         <bool>true</bool>
+        </property>
        </widget>
       </item>
       <item>
@@ -126,7 +129,7 @@
     </layout>
    </item>
    <item>
-    <widget class="E5SqueezeLabelPath" name="checkProgressLabel">
+    <widget class="EricSqueezeLabelPath" name="checkProgressLabel">
      <property name="sizePolicy">
       <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
        <horstretch>0</horstretch>
@@ -170,14 +173,9 @@
  <pixmapfunction>qPixmapFromMimeSource</pixmapfunction>
  <customwidgets>
   <customwidget>
-   <class>E5ClearableLineEdit</class>
-   <extends>QLineEdit</extends>
-   <header>E5Gui/E5LineEdit.h</header>
-  </customwidget>
-  <customwidget>
-   <class>E5SqueezeLabelPath</class>
+   <class>EricSqueezeLabelPath</class>
    <extends>QLabel</extends>
-   <header>E5Gui/E5SqueezeLabels.h</header>
+   <header>EricWidgets/EricSqueezeLabels.h</header>
   </customwidget>
  </customwidgets>
  <tabstops>
--- a/RadonMetrics/RawMetricsDialog.py	Wed May 26 17:13:04 2021 +0200
+++ b/RadonMetrics/RawMetricsDialog.py	Wed May 26 17:43:25 2021 +0200
@@ -10,15 +10,15 @@
 import os
 import fnmatch
 
-from PyQt5.QtCore import pyqtSlot, qVersion, Qt, QTimer, QLocale
-from PyQt5.QtWidgets import (
+from PyQt6.QtCore import pyqtSlot, Qt, QTimer, QLocale
+from PyQt6.QtWidgets import (
     QDialog, QDialogButtonBox, QAbstractButton, QHeaderView, QTreeWidgetItem,
     QApplication
 )
 
 from .Ui_RawMetricsDialog import Ui_RawMetricsDialog
 
-from E5Gui.E5Application import e5App
+from EricWidgets.EricApplication import ericApp
 
 import Preferences
 import Utilities
@@ -28,7 +28,7 @@
     """
     Class implementing a dialog to show raw code metrics.
     """
-    FilePathRole = Qt.UserRole + 1
+    FilePathRole = Qt.ItemDataRole.UserRole + 1
     
     def __init__(self, radonService, parent=None):
         """
@@ -41,10 +41,12 @@
         """
         super().__init__(parent)
         self.setupUi(self)
-        self.setWindowFlags(Qt.Window)
+        self.setWindowFlags(Qt.WindowType.Window)
         
-        self.buttonBox.button(QDialogButtonBox.Close).setEnabled(False)
-        self.buttonBox.button(QDialogButtonBox.Cancel).setDefault(True)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Close).setEnabled(False)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Cancel).setDefault(True)
         
         self.summaryList.headerItem().setText(
             self.summaryList.columnCount(), "")
@@ -60,7 +62,7 @@
         
         self.cancelled = False
         
-        self.__project = e5App().getObject("Project")
+        self.__project = ericApp().getObject("Project")
         self.__locale = QLocale()
         self.__finished = True
         self.__errorItem = None
@@ -93,7 +95,8 @@
         """
         Private method to resize the list columns.
         """
-        self.resultList.header().resizeSections(QHeaderView.ResizeToContents)
+        self.resultList.header().resizeSections(
+            QHeaderView.ResizeMode.ResizeToContents)
         self.resultList.header().setStretchLastSection(True)
     
     def __createResultItem(self, filename, values):
@@ -123,7 +126,7 @@
             1.0)))
         itm = QTreeWidgetItem(self.resultList, data)
         for col in range(1, 10):
-            itm.setTextAlignment(col, Qt.Alignment(Qt.AlignRight))
+            itm.setTextAlignment(col, Qt.AlignmentFlag.AlignRight)
         itm.setData(0, self.FilePathRole, filename)
     
     def __createErrorItem(self, filename, message):
@@ -139,13 +142,13 @@
             self.__errorItem = QTreeWidgetItem(self.resultList, [
                 self.tr("Errors")])
             self.__errorItem.setExpanded(True)
-            self.__errorItem.setForeground(0, Qt.red)
+            self.__errorItem.setForeground(0, Qt.GlobalColor.red)
         
         msg = "{0} ({1})".format(self.__project.getRelativePath(filename),
                                  message)
-        if not self.resultList.findItems(msg, Qt.MatchExactly):
+        if not self.resultList.findItems(msg, Qt.MatchFlag.MatchExactly):
             itm = QTreeWidgetItem(self.__errorItem, [msg])
-            itm.setForeground(0, Qt.red)
+            itm.setForeground(0, Qt.GlobalColor.red)
             itm.setFirstColumnSpanned(True)
     
     def prepare(self, fileList, project):
@@ -160,9 +163,12 @@
         self.__fileList = fileList[:]
         self.__project = project
         
-        self.buttonBox.button(QDialogButtonBox.Close).setEnabled(True)
-        self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(False)
-        self.buttonBox.button(QDialogButtonBox.Close).setDefault(True)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Close).setEnabled(True)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Cancel).setEnabled(False)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Close).setDefault(True)
         
         self.filterFrame.setVisible(True)
         
@@ -186,17 +192,19 @@
         self.summaryList.clear()
         QApplication.processEvents()
         
-        self.buttonBox.button(QDialogButtonBox.Close).setEnabled(False)
-        self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(True)
-        self.buttonBox.button(QDialogButtonBox.Cancel).setDefault(True)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Close).setEnabled(False)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Cancel).setEnabled(True)
+        self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Cancel).setDefault(True)
         QApplication.processEvents()
         
         if isinstance(fn, list):
             self.files = fn
         elif os.path.isdir(fn):
             self.files = []
-            extensions = set(Preferences.getPython("PythonExtensions") +
-                             Preferences.getPython("Python3Extensions"))
+            extensions = set(Preferences.getPython("Python3Extensions"))
             for ext in extensions:
                 self.files.extend(
                     Utilities.direntries(fn, True, '*{0}'.format(ext), 0))
@@ -238,7 +246,7 @@
         
         The results are reported to the __processResult slot.
         
-        @keyparam codestring optional sourcestring
+        @param codestring optional sourcestring
         @type str
         """
         if not self.files:
@@ -392,24 +400,24 @@
             
             # reenable updates of the list
             self.resultList.setSortingEnabled(True)
-            self.resultList.sortItems(0, Qt.AscendingOrder)
+            self.resultList.sortItems(0, Qt.SortOrder.AscendingOrder)
             self.resultList.setUpdatesEnabled(True)
             
             self.__createSummary()
             
             self.cancelled = True
-            self.buttonBox.button(QDialogButtonBox.Close).setEnabled(True)
-            self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(False)
-            self.buttonBox.button(QDialogButtonBox.Close).setDefault(True)
+            self.buttonBox.button(
+                QDialogButtonBox.StandardButton.Close).setEnabled(True)
+            self.buttonBox.button(
+                QDialogButtonBox.StandardButton.Cancel).setEnabled(False)
+            self.buttonBox.button(
+                QDialogButtonBox.StandardButton.Close).setDefault(True)
             
             self.resultList.header().resizeSections(
-                QHeaderView.ResizeToContents)
+                QHeaderView.ResizeMode.ResizeToContents)
             self.resultList.header().setStretchLastSection(True)
-            if qVersion() >= "5.0.0":
-                self.resultList.header().setSectionResizeMode(
-                    QHeaderView.Interactive)
-            else:
-                self.resultList.header().setResizeMode(QHeaderView.Interactive)
+            self.resultList.header().setSectionResizeMode(
+                QHeaderView.ResizeMode.Interactive)
             
             self.checkProgress.setVisible(False)
             self.checkProgressLabel.setVisible(False)
@@ -439,7 +447,8 @@
             self.tr("Empty Lines"),
             self.__locale.toString(self.__summary["blank"]))
         
-        self.summaryList.header().resizeSections(QHeaderView.ResizeToContents)
+        self.summaryList.header().resizeSections(
+            QHeaderView.ResizeMode.ResizeToContents)
         self.summaryList.header().setStretchLastSection(True)
     
     def __createSummaryItem(self, col0, col1):
@@ -450,7 +459,7 @@
         @param col1 string for column 1 (string)
         """
         itm = QTreeWidgetItem(self.summaryList, [col0, col1])
-        itm.setTextAlignment(1, Qt.Alignment(Qt.AlignRight))
+        itm.setTextAlignment(1, Qt.AlignmentFlag.AlignRight)
     
     @pyqtSlot(QAbstractButton)
     def on_buttonBox_clicked(self, button):
@@ -460,9 +469,13 @@
         @param button button that was clicked
         @type QAbstractButton
         """
-        if button == self.buttonBox.button(QDialogButtonBox.Close):
+        if button == self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Close
+        ):
             self.close()
-        elif button == self.buttonBox.button(QDialogButtonBox.Cancel):
+        elif button == self.buttonBox.button(
+            QDialogButtonBox.StandardButton.Cancel
+        ):
             if self.__batch:
                 self.radonService.cancelRawMetricsBatch()
                 QTimer.singleShot(1000, self.__finish)
@@ -512,5 +525,5 @@
         """
         filename = item.data(0, self.FilePathRole)
         if filename:
-            vm = e5App().getObject("ViewManager")
+            vm = ericApp().getObject("ViewManager")
             vm.openSourceFile(filename)
--- a/RadonMetrics/RawMetricsDialog.ui	Wed May 26 17:13:04 2021 +0200
+++ b/RadonMetrics/RawMetricsDialog.ui	Wed May 26 17:43:25 2021 +0200
@@ -50,10 +50,13 @@
        </widget>
       </item>
       <item>
-       <widget class="E5ClearableLineEdit" name="excludeFilesEdit">
+       <widget class="QLineEdit" name="excludeFilesEdit">
         <property name="toolTip">
          <string>Enter filename patterns of files to be excluded separated by a comma</string>
         </property>
+        <property name="clearButtonEnabled">
+         <bool>true</bool>
+        </property>
        </widget>
       </item>
       <item>
@@ -181,7 +184,7 @@
     </widget>
    </item>
    <item>
-    <widget class="E5SqueezeLabelPath" name="checkProgressLabel">
+    <widget class="EricSqueezeLabelPath" name="checkProgressLabel">
      <property name="sizePolicy">
       <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
        <horstretch>0</horstretch>
@@ -225,14 +228,9 @@
  <pixmapfunction>qPixmapFromMimeSource</pixmapfunction>
  <customwidgets>
   <customwidget>
-   <class>E5ClearableLineEdit</class>
-   <extends>QLineEdit</extends>
-   <header>E5Gui/E5LineEdit.h</header>
-  </customwidget>
-  <customwidget>
-   <class>E5SqueezeLabelPath</class>
+   <class>EricSqueezeLabelPath</class>
    <extends>QLabel</extends>
-   <header>E5Gui/E5SqueezeLabels.h</header>
+   <header>EricWidgets/EricSqueezeLabels.h</header>
   </customwidget>
  </customwidgets>
  <tabstops>
Binary file RadonMetrics/i18n/radon_de.qm has changed
--- a/RadonMetrics/i18n/radon_de.ts	Wed May 26 17:13:04 2021 +0200
+++ b/RadonMetrics/i18n/radon_de.ts	Wed May 26 17:43:25 2021 +0200
@@ -1,426 +1,458 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS><TS version="2.0" language="de_DE" sourcelanguage="">
-<context>
+<!DOCTYPE TS>
+<TS version="2.0" language="de_DE" sourcelanguage="">
+  <context>
     <name>CyclomaticComplexityDialog</name>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="14"/>
-        <source>Cyclomatic Complexity</source>
-        <translation>Zyklomatische Komplexität</translation>
+      <location filename="../CyclomaticComplexityDialog.py" line="78" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=3&gt;&lt;b&gt;Ranking:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;1 - 5&lt;/td&gt;&lt;td&gt;(low risk - simple block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;6 - 10&lt;/td&gt;&lt;td&gt;(low risk - well structured and stable block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;11 - 20&lt;/td&gt;&lt;td&gt;(moderate risk - slightly complex block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td&gt;21 - 30&lt;/td&gt;&lt;td&gt;(more than moderate risk - more complex block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td&gt;31 - 40&lt;/td&gt;&lt;td&gt;(high risk - complex block, alarming)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&amp;gt; 40&lt;/td&gt;&lt;td&gt;(very high risk - error-prone, unstable block)&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=3&gt;&lt;b&gt;Bewertung:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;1 - 5&lt;/td&gt;&lt;td&gt;(geringes Risiko - einfacher Block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;6 - 10&lt;/td&gt;&lt;td&gt;(geringes Risika - gut strukturierter und stabiler Block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;11 - 20&lt;/td&gt;&lt;td&gt;(moderates Risiko - etwas komplexerer Block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td&gt;21 - 30&lt;/td&gt;&lt;td&gt;(mehr als moderates Risiko - komplexerer Block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td&gt;31 - 40&lt;/td&gt;&lt;td&gt;(hohes Risiko - komplexer Block, alarmierend)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&amp;gt; 40&lt;/td&gt;&lt;td&gt;(sehr hohes Risiko - fehleranfälliger, instabiler Block)&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.py" line="95" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Type:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Class&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Function&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;M&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Method&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Typ:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Klasse&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Funktion&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;M&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Methode&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.py" line="147" />
+      <source>Collapse all</source>
+      <translation>Alle Zuklappen</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.py" line="149" />
+      <source>Expand all</source>
+      <translation>Alle Aufklappen</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="17"/>
-        <source>&lt;b&gt;Cyclomatic Complexity&lt;/b&gt;
+      <location filename="../CyclomaticComplexityDialog.py" line="224" />
+      <source>Errors</source>
+      <translation>Fehler</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.py" line="389" />
+      <source>Preparing files...</source>
+      <translation>Bereite Dateien vor...</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.py" line="517" />
+      <source>&lt;b&gt;Summary:&lt;/b&gt;&lt;br/&gt;{0} blocks (classes, functions, methods) analyzed.&lt;br/&gt;Average complexity: {7} ({8})&lt;table&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{1} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{2} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{3} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{4} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{5} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{6} blocks&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation>&lt;b&gt;Zusammenfassung:&lt;/b&gt;&lt;br/&gt;{0} Blöcke (Klassen, Funktionen, Methoden) analysiert.&lt;br/&gt;Mittlere Komplexität: {7} ({8})&lt;table&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{1} Blöcke&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{2} Blöcke&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{3} Blöcke&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{4} Blöcke&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{5} Blöcke&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{6} Blöcke&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Cyclomatic Complexity</source>
+      <translation>Zyklomatische Komplexität</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>&lt;b&gt;Cyclomatic Complexity&lt;/b&gt;
 &lt;p&gt;This dialog shows the cyclomatic complexity and rank.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Zyklomatische Komplexität&lt;/b&gt;
+      <translation>&lt;b&gt;Zyklomatische Komplexität&lt;/b&gt;
 &lt;p&gt;Dieser Dialog zeigt die zyklomatische Komplexität und eine Bewertung.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="83"/>
-        <source>Exclude Files:</source>
-        <translation>Ignoriere Dateien:</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="90"/>
-        <source>Enter filename patterns of files to be excluded separated by a comma</source>
-        <translation>Gib Dateimuster getrennt durch Komma von Dateien ein, die ignoriert werden sollen</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="110"/>
-        <source>Start</source>
-        <translation>Starten</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Minimum Rank:</source>
+      <translation>Mindestbewertung:</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="129"/>
-        <source>Type</source>
-        <translation>Typ</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Select the minimum rank of items to be shown</source>
+      <translation>Wähle die Mindestbewertung anzuzeigender Einträge</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="134"/>
-        <source>Name</source>
-        <translation>Name</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Exclude Files:</source>
+      <translation>Ignoriere Dateien:</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="139"/>
-        <source>Complexity</source>
-        <translation>Komplexität</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="144"/>
-        <source>Rank</source>
-        <translation>Bewertung</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Enter filename patterns of files to be excluded separated by a comma</source>
+      <translation>Gib Dateimuster getrennt durch Komma von Dateien ein, die ignoriert werden sollen</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="219"/>
-        <source>%v/%m Files</source>
-        <translation>%v/%m Dateien</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Press to start the calculation</source>
+      <translation>Drücken, um die Berechnung zu starten</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="78"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=3&gt;&lt;b&gt;Ranking:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;1 - 5&lt;/td&gt;&lt;td&gt;(low risk - simple block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;6 - 10&lt;/td&gt;&lt;td&gt;(low risk - well structured and stable block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;11 - 20&lt;/td&gt;&lt;td&gt;(moderate risk - slightly complex block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td&gt;21 - 30&lt;/td&gt;&lt;td&gt;(more than moderate risk - more complex block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td&gt;31 - 40&lt;/td&gt;&lt;td&gt;(high risk - complex block, alarming)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&amp;gt; 40&lt;/td&gt;&lt;td&gt;(very high risk - error-prone, unstable block)&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=3&gt;&lt;b&gt;Bewertung:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;1 - 5&lt;/td&gt;&lt;td&gt;(geringes Risiko - einfacher Block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;6 - 10&lt;/td&gt;&lt;td&gt;(geringes Risika - gut strukturierter und stabiler Block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;11 - 20&lt;/td&gt;&lt;td&gt;(moderates Risiko - etwas komplexerer Block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td&gt;21 - 30&lt;/td&gt;&lt;td&gt;(mehr als moderates Risiko - komplexerer Block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td&gt;31 - 40&lt;/td&gt;&lt;td&gt;(hohes Risiko - komplexer Block, alarmierend)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&amp;gt; 40&lt;/td&gt;&lt;td&gt;(sehr hohes Risiko - fehleranfälliger, instabiler Block)&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="95"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Type:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Class&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Function&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;M&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Method&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Typ:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Klasse&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Funktion&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;M&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Methode&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="199"/>
-        <source>Errors</source>
-        <translation>Fehler</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Start</source>
+      <translation>Starten</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="360"/>
-        <source>Preparing files...</source>
-        <translation>Bereite Dateien vor...</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="107"/>
-        <source>Press to start the calculation</source>
-        <translation>Drücken, um die Berechnung zu starten</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Type</source>
+      <translation>Typ</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="210"/>
-        <source>Shows the progress of the calculation</source>
-        <translation>Zeigt den Fortschritt der Berechnung</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Name</source>
+      <translation>Name</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="149"/>
-        <source>Begin</source>
-        <translation>Anfang</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="124"/>
-        <source>Collapse all</source>
-        <translation>Alle Zuklappen</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Complexity</source>
+      <translation>Komplexität</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="126"/>
-        <source>Expand all</source>
-        <translation>Alle Aufklappen</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="29"/>
-        <source>Minimum Rank:</source>
-        <translation>Mindestbewertung:</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="36"/>
-        <source>Select the minimum rank of items to be shown</source>
-        <translation>Wähle die Mindestbewertung anzuzeigender Einträge</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Rank</source>
+      <translation>Bewertung</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="490"/>
-        <source>&lt;b&gt;Summary:&lt;/b&gt;&lt;br/&gt;{0} blocks (classes, functions, methods) analyzed.&lt;br/&gt;Average complexity: {7} ({8})&lt;table&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{1} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{2} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{3} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{4} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{5} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{6} blocks&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation>&lt;b&gt;Zusammenfassung:&lt;/b&gt;&lt;br/&gt;{0} Blöcke (Klassen, Funktionen, Methoden) analysiert.&lt;br/&gt;Mittlere Komplexität: {7} ({8})&lt;table&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{1} Blöcke&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{2} Blöcke&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{3} Blöcke&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{4} Blöcke&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{5} Blöcke&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{6} Blöcke&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
-    </message>
-</context>
-<context>
-    <name>MaintainabilityIndexDialog</name>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="14"/>
-        <source>Maintainability Index</source>
-        <translation>Wartbarkeitsindex</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Begin</source>
+      <translation>Anfang</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="48"/>
-        <source>Exclude Files:</source>
-        <translation>Ignoriere Dateien:</translation>
-    </message>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="55"/>
-        <source>Enter filename patterns of files to be excluded separated by a comma</source>
-        <translation>Gib Dateimuster getrennt durch Komma von Dateien ein, die ignoriert werden sollen</translation>
-    </message>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="75"/>
-        <source>Start</source>
-        <translation>Starten</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Shows the progress of the calculation</source>
+      <translation>Zeigt den Fortschritt der Berechnung</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="89"/>
-        <source>Name</source>
-        <translation>Name</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>%v/%m Files</source>
+      <translation>%v/%m Dateien</translation>
+    </message>
+  </context>
+  <context>
+    <name>MaintainabilityIndexDialog</name>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.py" line="69" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Rank&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;MI Score&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Maintainability&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;100 - 20&lt;/td&gt;&lt;td&gt;very high&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;19 - 10&lt;/td&gt;&lt;td&gt;medium&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;9 - 0&lt;/td&gt;&lt;td&gt;extremely low&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Rang&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Wert&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Wartbarkeit&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;100 - 20&lt;/td&gt;&lt;td&gt;sehr hoch&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;19 - 10&lt;/td&gt;&lt;td&gt;mittel&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;9 - 0&lt;/td&gt;&lt;td&gt;extrem niedrig&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="94"/>
-        <source>Score</source>
-        <translation>Wert</translation>
-    </message>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="99"/>
-        <source>Rank</source>
-        <translation>Bewertung</translation>
-    </message>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="153"/>
-        <source>%v/%m Files</source>
-        <translation>%v/%m Dateien</translation>
+      <location filename="../MaintainabilityIndexDialog.py" line="144" />
+      <source>Errors</source>
+      <translation>Fehler</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.py" line="124"/>
-        <source>Errors</source>
-        <translation>Fehler</translation>
+      <location filename="../MaintainabilityIndexDialog.py" line="292" />
+      <source>Preparing files...</source>
+      <translation>Bereite Dateien vor...</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.py" line="268"/>
-        <source>Preparing files...</source>
-        <translation>Bereite Dateien vor...</translation>
+      <location filename="../MaintainabilityIndexDialog.py" line="402" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Summary:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{0} files&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{1} files&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{2} files&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Zusammenfassung:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{0} Dateien&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{1} Dateien&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{2} Dateien&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="72"/>
-        <source>Press to start the calculation</source>
-        <translation>Drücken, um die Berechnung zu starten</translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Maintainability Index</source>
+      <translation>Wartbarkeitsindex</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="144"/>
-        <source>Shows the progress of the calculation</source>
-        <translation>Zeigt den Fortschritt der Berechnung</translation>
-    </message>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="17"/>
-        <source>&lt;b&gt;Maintainability Index&lt;/b&gt;
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>&lt;b&gt;Maintainability Index&lt;/b&gt;
 &lt;p&gt;This dialog shows the maintainability index and rank.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Wartbarkeitsindex&lt;/b&gt;
+      <translation>&lt;b&gt;Wartbarkeitsindex&lt;/b&gt;
 &lt;p&gt;Dieser Dialog zeigt den Wartbarkeitsindex und eine Bewertung.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.py" line="380"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Summary:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{0} files&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{1} files&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{2} files&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Zusammenfassung:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{0} Dateien&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{1} Dateien&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{2} Dateien&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Exclude Files:</source>
+      <translation>Ignoriere Dateien:</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Enter filename patterns of files to be excluded separated by a comma</source>
+      <translation>Gib Dateimuster getrennt durch Komma von Dateien ein, die ignoriert werden sollen</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Press to start the calculation</source>
+      <translation>Drücken, um die Berechnung zu starten</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Start</source>
+      <translation>Starten</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Name</source>
+      <translation>Name</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.py" line="66"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Rank&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;MI Score&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Maintainability&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;100 - 20&lt;/td&gt;&lt;td&gt;very high&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;19 - 10&lt;/td&gt;&lt;td&gt;medium&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;9 - 0&lt;/td&gt;&lt;td&gt;extremely low&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Rang&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Wert&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Wartbarkeit&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;100 - 20&lt;/td&gt;&lt;td&gt;sehr hoch&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;19 - 10&lt;/td&gt;&lt;td&gt;mittel&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;9 - 0&lt;/td&gt;&lt;td&gt;extrem niedrig&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Score</source>
+      <translation>Wert</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Rank</source>
+      <translation>Bewertung</translation>
     </message>
-</context>
-<context>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Shows the progress of the calculation</source>
+      <translation>Zeigt den Fortschritt der Berechnung</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>%v/%m Files</source>
+      <translation>%v/%m Dateien</translation>
+    </message>
+  </context>
+  <context>
     <name>RadonMetricsPlugin</name>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="154"/>
-        <source>Python 3 batch job</source>
-        <translation>Python 3 Stapelprüfung</translation>
-    </message>
-    <message>
-        <location filename="../../PluginMetricsRadon.py" line="197"/>
-        <source>Unknown metrics result received ({0}).</source>
-        <translation>Unbekannte Metrik empfangen ({0}).</translation>
+      <location filename="../../PluginMetricsRadon.py" line="156" />
+      <source>Python 3 batch job</source>
+      <translation>Python 3 Stapelprüfung</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="949"/>
-        <source>Radon</source>
-        <translation>Radon</translation>
+      <location filename="../../PluginMetricsRadon.py" line="202" />
+      <source>Unknown metrics result received ({0}).</source>
+      <translation>Unbekannte Metrik empfangen ({0}).</translation>
+    </message>
+    <message>
+      <location filename="../../PluginMetricsRadon.py" line="968" />
+      <location filename="../../PluginMetricsRadon.py" line="630" />
+      <location filename="../../PluginMetricsRadon.py" line="465" />
+      <location filename="../../PluginMetricsRadon.py" line="395" />
+      <source>Radon</source>
+      <translation>Radon</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="633"/>
-        <source>Code Metrics</source>
-        <translation>Quelltextmetriken</translation>
+      <location filename="../../PluginMetricsRadon.py" line="639" />
+      <location filename="../../PluginMetricsRadon.py" line="473" />
+      <location filename="../../PluginMetricsRadon.py" line="404" />
+      <source>Code Metrics</source>
+      <translation>Quelltextmetriken</translation>
+    </message>
+    <message>
+      <location filename="../../PluginMetricsRadon.py" line="640" />
+      <location filename="../../PluginMetricsRadon.py" line="474" />
+      <location filename="../../PluginMetricsRadon.py" line="405" />
+      <source>Code &amp;Metrics...</source>
+      <translation>Quelltext&amp;metriken...</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="633"/>
-        <source>Code &amp;Metrics...</source>
-        <translation>Quelltext&amp;metriken...</translation>
+      <location filename="../../PluginMetricsRadon.py" line="642" />
+      <location filename="../../PluginMetricsRadon.py" line="477" />
+      <location filename="../../PluginMetricsRadon.py" line="408" />
+      <source>Show raw code metrics.</source>
+      <translation>Zeige einige Quelltextmetriken an.</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="637"/>
-        <source>Show raw code metrics.</source>
-        <translation>Zeige einige Quelltextmetriken an.</translation>
+      <location filename="../../PluginMetricsRadon.py" line="644" />
+      <location filename="../../PluginMetricsRadon.py" line="478" />
+      <location filename="../../PluginMetricsRadon.py" line="409" />
+      <source>&lt;b&gt;Code Metrics...&lt;/b&gt;&lt;p&gt;This calculates raw code metrics of Python files and shows the amount of lines of code, logical lines of code, source lines of code, comment lines, multi-line strings and blank lines.&lt;/p&gt;</source>
+      <translation>&lt;b&gt;Quelltextmetriken...&lt;/b&gt;&lt;p&gt;Dies ermittelt einige Quelltextmetriken für Python Dateien und zeigt die Anzahl der Textzeilen, logischen Quelltextzeilen, Quelltextzeilen, Kommentarzeilen, mehrzeiligen Zeichenketten und Lerrzeilen.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="639"/>
-        <source>&lt;b&gt;Code Metrics...&lt;/b&gt;&lt;p&gt;This calculates raw code metrics of Python files and shows the amount of lines of code, logical lines of code, source lines of code, comment lines, multi-line strings and blank lines.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Quelltextmetriken...&lt;/b&gt;&lt;p&gt;Dies ermittelt einige Quelltextmetriken für Python Dateien und zeigt die Anzahl der Textzeilen, logischen Quelltextzeilen, Quelltextzeilen, Kommentarzeilen, mehrzeiligen Zeichenketten und Lerrzeilen.&lt;/p&gt;</translation>
+      <location filename="../../PluginMetricsRadon.py" line="656" />
+      <location filename="../../PluginMetricsRadon.py" line="489" />
+      <location filename="../../PluginMetricsRadon.py" line="421" />
+      <source>Maintainability Index</source>
+      <translation>Wartbarkeitsindex</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="650"/>
-        <source>Maintainability Index</source>
-        <translation>Wartbarkeitsindex</translation>
+      <location filename="../../PluginMetricsRadon.py" line="657" />
+      <location filename="../../PluginMetricsRadon.py" line="490" />
+      <location filename="../../PluginMetricsRadon.py" line="422" />
+      <source>Maintainability &amp;Index...</source>
+      <translation>Wartbarkeits&amp;index...</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="650"/>
-        <source>Maintainability &amp;Index...</source>
-        <translation>Wartbarkeits&amp;index...</translation>
+      <location filename="../../PluginMetricsRadon.py" line="659" />
+      <location filename="../../PluginMetricsRadon.py" line="493" />
+      <location filename="../../PluginMetricsRadon.py" line="425" />
+      <source>Show the maintainability index for Python files.</source>
+      <translation>Zeigt den Wartbarkeitsindex für Python Dateien an.</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="654"/>
-        <source>Show the maintainability index for Python files.</source>
-        <translation>Zeigt den Wartbarkeitsindex für Python Dateien an.</translation>
+      <location filename="../../PluginMetricsRadon.py" line="661" />
+      <location filename="../../PluginMetricsRadon.py" line="494" />
+      <location filename="../../PluginMetricsRadon.py" line="426" />
+      <source>&lt;b&gt;Maintainability Index...&lt;/b&gt;&lt;p&gt;This calculates the maintainability index of Python files and shows it together with a ranking.&lt;/p&gt;</source>
+      <translation>&lt;b&gt;Wartbarkeitsindex...&lt;/b&gt;&lt;p&gt;Dies ermittelt den Wartbarkeitsindex für Python Dateien und zeigt ihn zusammen mit einer Bewertung an.&lt;/p&gt;</translation>
+    </message>
+    <message>
+      <location filename="../../PluginMetricsRadon.py" line="673" />
+      <location filename="../../PluginMetricsRadon.py" line="503" />
+      <location filename="../../PluginMetricsRadon.py" line="436" />
+      <source>Cyclomatic Complexity</source>
+      <translation>Zyklomatische Komplexität</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="656"/>
-        <source>&lt;b&gt;Maintainability Index...&lt;/b&gt;&lt;p&gt;This calculates the maintainability index of Python files and shows it together with a ranking.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Wartbarkeitsindex...&lt;/b&gt;&lt;p&gt;Dies ermittelt den Wartbarkeitsindex für Python Dateien und zeigt ihn zusammen mit einer Bewertung an.&lt;/p&gt;</translation>
+      <location filename="../../PluginMetricsRadon.py" line="674" />
+      <location filename="../../PluginMetricsRadon.py" line="504" />
+      <location filename="../../PluginMetricsRadon.py" line="437" />
+      <source>Cyclomatic &amp;Complexity...</source>
+      <translation>Zyklomatische &amp;Komplexität...</translation>
+    </message>
+    <message>
+      <location filename="../../PluginMetricsRadon.py" line="676" />
+      <location filename="../../PluginMetricsRadon.py" line="507" />
+      <location filename="../../PluginMetricsRadon.py" line="440" />
+      <source>Show the cyclomatic complexity for Python files.</source>
+      <translation>Zeigt die zyklomatische Komplexität für Python Dateien an.</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="667"/>
-        <source>Cyclomatic Complexity</source>
-        <translation>Zyklomatische Komplexität</translation>
+      <location filename="../../PluginMetricsRadon.py" line="678" />
+      <location filename="../../PluginMetricsRadon.py" line="508" />
+      <location filename="../../PluginMetricsRadon.py" line="441" />
+      <source>&lt;b&gt;Cyclomatic Complexity...&lt;/b&gt;&lt;p&gt;This calculates the cyclomatic complexity of Python files and shows it together with a ranking.&lt;/p&gt;</source>
+      <translation>&lt;b&gt;Zyklomatische Komplexität...&lt;/b&gt;&lt;p&gt;Dies ermittelt die zyklomatische Komplexität von Python Dateien und zeigt sie zusammen mit einer Bewertung an.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="667"/>
-        <source>Cyclomatic &amp;Complexity...</source>
-        <translation>Zyklomatische &amp;Komplexität...</translation>
+      <location filename="../../PluginMetricsRadon.py" line="969" />
+      <source>&lt;p&gt;&lt;b&gt;Radon Version {0}&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Radon is a Python tool that computes various metrics from the source code. Radon can compute:&lt;ul&gt;&lt;li&gt;&lt;b&gt;Raw&lt;/b&gt; metrics (these include SLOC, comment lines, blank lines, multi line strings, ...)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Maintainability Index&lt;/b&gt; (the one used in Visual Studio)&lt;/li&gt;&lt;li&gt;&lt;b&gt;McCabe's complexity&lt;/b&gt;, i.e. cyclomatic complexity&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;</source>
+      <translation>&lt;p&gt;&lt;b&gt;Radon Version {0}&lt;/b&gt;&lt;p&gt;Radon ist ein Werkzeug, das verschiedene Metriken für Python Quelltexte ermittelt. Radon kann die folgenden Metriken ermitteln:&lt;ul&gt;&lt;li&gt;&lt;b&gt;Quelltext&lt;/b&gt;metrik (dies beinhaltet Quelltextzeilen, Kommentarzeilen, Leerzeilen, mehrzeilige Zeichenketten, ...)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Wartbarkeitsindex&lt;/b&gt; (wie von Visual Studio)&lt;/li&gt;&lt;li&gt;&lt;b&gt;McCabe Komplexität&lt;/b&gt;, d.h. zyklomatische Komplexität&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;</translation>
+    </message>
+  </context>
+  <context>
+    <name>RawMetricsDialog</name>
+    <message>
+      <location filename="../RawMetricsDialog.py" line="73" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;SLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Source lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Logical lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comment lines&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&amp;nbsp;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comment lines not containing code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Multi&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Lines in multi line strings&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Blank lines&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Comment Statistics:&lt;/b&gt;&lt;/td&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments to lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % S&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments to source lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C + M % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments plus multi line strings to lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Textzeilen&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;SLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Quelltextzeilen&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Logische Quelltextzeilen&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Kommentare&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Kommentarzeilen&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;b&gt;Leere&amp;nbsp;Kommentare&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Kommentarzeilen ohne Inhalt&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Mehrfach&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Zeilen in mehrzeiligen Zeichenketten&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Leer&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Leerzeilen&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Kommentarstatistiken:&lt;/b&gt;&lt;/td&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;K % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Verhältnis Kommentare zu Textzeilen&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;K % S&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Verhältnis Kommentare zu Quelltextzeilen&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;K + M % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Verhältnis der Summe aus Kommentaren und mehrzeiliger Zeichenketten zu Textzeilen&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="671"/>
-        <source>Show the cyclomatic complexity for Python files.</source>
-        <translation>Zeigt die zyklomatische Komplexität für Python Dateien an.</translation>
+      <location filename="../RawMetricsDialog.py" line="143" />
+      <source>Errors</source>
+      <translation>Fehler</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.py" line="289" />
+      <source>Preparing files...</source>
+      <translation>Bereite Dateien vor...</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="673"/>
-        <source>&lt;b&gt;Cyclomatic Complexity...&lt;/b&gt;&lt;p&gt;This calculates the cyclomatic complexity of Python files and shows it together with a ranking.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Zyklomatische Komplexität...&lt;/b&gt;&lt;p&gt;Dies ermittelt die zyklomatische Komplexität von Python Dateien und zeigt sie zusammen mit einer Bewertung an.&lt;/p&gt;</translation>
+      <location filename="../RawMetricsDialog.py" line="430" />
+      <source>Files</source>
+      <translation>Dateien</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <location filename="../RawMetricsDialog.py" line="432" />
+      <source>LOC</source>
+      <translation>LOC</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <location filename="../RawMetricsDialog.py" line="434" />
+      <source>SLOC</source>
+      <translation>SLOC</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="949"/>
-        <source>&lt;p&gt;&lt;b&gt;Radon Version {0}&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Radon is a Python tool that computes various metrics from the source code. Radon can compute:&lt;ul&gt;&lt;li&gt;&lt;b&gt;Raw&lt;/b&gt; metrics (these include SLOC, comment lines, blank lines, multi line strings, ...)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Maintainability Index&lt;/b&gt; (the one used in Visual Studio)&lt;/li&gt;&lt;li&gt;&lt;b&gt;McCabe&apos;s complexity&lt;/b&gt;, i.e. cyclomatic complexity&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;</source>
-        <translation>&lt;p&gt;&lt;b&gt;Radon Version {0}&lt;/b&gt;&lt;p&gt;Radon ist ein Werkzeug, das verschiedene Metriken für Python Quelltexte ermittelt. Radon kann die folgenden Metriken ermitteln:&lt;ul&gt;&lt;li&gt;&lt;b&gt;Quelltext&lt;/b&gt;metrik (dies beinhaltet Quelltextzeilen, Kommentarzeilen, Leerzeilen, mehrzeilige Zeichenketten, ...)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Wartbarkeitsindex&lt;/b&gt; (wie von Visual Studio)&lt;/li&gt;&lt;li&gt;&lt;b&gt;McCabe Komplexität&lt;/b&gt;, d.h. zyklomatische Komplexität&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <location filename="../RawMetricsDialog.py" line="436" />
+      <source>LLOC</source>
+      <translation>LLOC</translation>
     </message>
-</context>
-<context>
-    <name>RawMetricsDialog</name>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="14"/>
-        <source>Code Metrics</source>
-        <translation>Quelltextmetriken</translation>
+      <location filename="../RawMetricsDialog.py" line="438" />
+      <source>Comment Lines</source>
+      <translation>Kommentarzeilen</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <location filename="../RawMetricsDialog.py" line="441" />
+      <source>Empty Comments</source>
+      <translation>Leere Kommentare</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="17"/>
-        <source>&lt;b&gt;Code Metrics&lt;/b&gt;
+      <location filename="../RawMetricsDialog.py" line="444" />
+      <source>Multiline Strings</source>
+      <translation>Mehrzeiligen Zeichenketten</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.py" line="447" />
+      <source>Empty Lines</source>
+      <translation>Leerzeilen</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Code Metrics</source>
+      <translation>Quelltextmetriken</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>&lt;b&gt;Code Metrics&lt;/b&gt;
 &lt;p&gt;This dialog shows some code metrics.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Quelltextmetriken&lt;/b&gt;
+      <translation>&lt;b&gt;Quelltextmetriken&lt;/b&gt;
 &lt;p&gt;Dieses Fenster zeigt einige Quelltextmetriken an.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="48"/>
-        <source>Exclude Files:</source>
-        <translation>Ignoriere Dateien:</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.ui" line="55"/>
-        <source>Enter filename patterns of files to be excluded separated by a comma</source>
-        <translation>Gib Dateimuster getrennt durch Komma von Dateien ein, die ignoriert werden sollen</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Exclude Files:</source>
+      <translation>Ignoriere Dateien:</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="75"/>
-        <source>Start</source>
-        <translation>Starten</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Enter filename patterns of files to be excluded separated by a comma</source>
+      <translation>Gib Dateimuster getrennt durch Komma von Dateien ein, die ignoriert werden sollen</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="89"/>
-        <source>Name</source>
-        <translation>Name</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="425"/>
-        <source>LOC</source>
-        <translation>LOC</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="427"/>
-        <source>SLOC</source>
-        <translation>SLOC</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Press to start the calculation</source>
+      <translation>Drücke, um die Berechnung zu starten</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="429"/>
-        <source>LLOC</source>
-        <translation>LLOC</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.ui" line="109"/>
-        <source>Comments</source>
-        <translation>Kommentare</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.ui" line="119"/>
-        <source>Multi</source>
-        <translation>Mehrfach</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Start</source>
+      <translation>Starten</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="124"/>
-        <source>Empty</source>
-        <translation>Leer</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Name</source>
+      <translation>Name</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="129"/>
-        <source>C % L</source>
-        <translation>K % L</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Comments</source>
+      <translation>Kommentare</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="134"/>
-        <source>C % S</source>
-        <translation>K % S</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.ui" line="139"/>
-        <source>C + M % L</source>
-        <translation>K + M % L</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Multi</source>
+      <translation>Mehrfach</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="164"/>
-        <source>Summary</source>
-        <translation>Zusammenfassung</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.ui" line="169"/>
-        <source>#</source>
-        <translation>#</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Empty</source>
+      <translation>Leer</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="208"/>
-        <source>%v/%m Files</source>
-        <translation>%v/%m Dateien</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>C % L</source>
+      <translation>K % L</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="139"/>
-        <source>Errors</source>
-        <translation>Fehler</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>C % S</source>
+      <translation>K % S</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="281"/>
-        <source>Preparing files...</source>
-        <translation>Bereite Dateien vor...</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="423"/>
-        <source>Files</source>
-        <translation>Dateien</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>C + M % L</source>
+      <translation>K + M % L</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="72"/>
-        <source>Press to start the calculation</source>
-        <translation>Drücke, um die Berechnung zu starten</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Summary</source>
+      <translation>Zusammenfassung</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="199"/>
-        <source>Shows the progress of the calculation</source>
-        <translation>Zeigt den Fortschritt der Berechnung</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="431"/>
-        <source>Comment Lines</source>
-        <translation>Kommentarzeilen</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>#</source>
+      <translation>#</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="437"/>
-        <source>Multiline Strings</source>
-        <translation>Mehrzeiligen Zeichenketten</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="440"/>
-        <source>Empty Lines</source>
-        <translation>Leerzeilen</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Shows the progress of the calculation</source>
+      <translation>Zeigt den Fortschritt der Berechnung</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="434"/>
-        <source>Empty Comments</source>
-        <translation>Leere Kommentare</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>%v/%m Files</source>
+      <translation>%v/%m Dateien</translation>
     </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="71"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;SLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Source lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Logical lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comment lines&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&amp;nbsp;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comment lines not containing code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Multi&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Lines in multi line strings&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Blank lines&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Comment Statistics:&lt;/b&gt;&lt;/td&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments to lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % S&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments to source lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C + M % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments plus multi line strings to lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Textzeilen&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;SLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Quelltextzeilen&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Logische Quelltextzeilen&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Kommentare&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Kommentarzeilen&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;b&gt;Leere&amp;nbsp;Kommentare&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Kommentarzeilen ohne Inhalt&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Mehrfach&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Zeilen in mehrzeiligen Zeichenketten&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Leer&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Leerzeilen&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Kommentarstatistiken:&lt;/b&gt;&lt;/td&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;K % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Verhältnis Kommentare zu Textzeilen&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;K % S&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Verhältnis Kommentare zu Quelltextzeilen&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;K + M % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Verhältnis der Summe aus Kommentaren und mehrzeiliger Zeichenketten zu Textzeilen&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
-    </message>
-</context>
+  </context>
 </TS>
Binary file RadonMetrics/i18n/radon_en.qm has changed
--- a/RadonMetrics/i18n/radon_en.ts	Wed May 26 17:13:04 2021 +0200
+++ b/RadonMetrics/i18n/radon_en.ts	Wed May 26 17:43:25 2021 +0200
@@ -1,423 +1,455 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS><TS version="2.0" language="en_US" sourcelanguage="">
-<context>
+<!DOCTYPE TS>
+<TS version="2.0" language="en_US" sourcelanguage="">
+  <context>
     <name>CyclomaticComplexityDialog</name>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="14"/>
-        <source>Cyclomatic Complexity</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.py" line="78" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=3&gt;&lt;b&gt;Ranking:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;1 - 5&lt;/td&gt;&lt;td&gt;(low risk - simple block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;6 - 10&lt;/td&gt;&lt;td&gt;(low risk - well structured and stable block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;11 - 20&lt;/td&gt;&lt;td&gt;(moderate risk - slightly complex block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td&gt;21 - 30&lt;/td&gt;&lt;td&gt;(more than moderate risk - more complex block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td&gt;31 - 40&lt;/td&gt;&lt;td&gt;(high risk - complex block, alarming)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&amp;gt; 40&lt;/td&gt;&lt;td&gt;(very high risk - error-prone, unstable block)&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="17"/>
-        <source>&lt;b&gt;Cyclomatic Complexity&lt;/b&gt;
-&lt;p&gt;This dialog shows the cyclomatic complexity and rank.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.py" line="95" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Type:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Class&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Function&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;M&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Method&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="83"/>
-        <source>Exclude Files:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.py" line="147" />
+      <source>Collapse all</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="90"/>
-        <source>Enter filename patterns of files to be excluded separated by a comma</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.py" line="149" />
+      <source>Expand all</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="110"/>
-        <source>Start</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.py" line="224" />
+      <source>Errors</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.py" line="389" />
+      <source>Preparing files...</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="129"/>
-        <source>Type</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.py" line="517" />
+      <source>&lt;b&gt;Summary:&lt;/b&gt;&lt;br/&gt;{0} blocks (classes, functions, methods) analyzed.&lt;br/&gt;Average complexity: {7} ({8})&lt;table&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{1} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{2} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{3} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{4} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{5} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{6} blocks&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="134"/>
-        <source>Name</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Cyclomatic Complexity</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="139"/>
-        <source>Complexity</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>&lt;b&gt;Cyclomatic Complexity&lt;/b&gt;
+&lt;p&gt;This dialog shows the cyclomatic complexity and rank.&lt;/p&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="144"/>
-        <source>Rank</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Minimum Rank:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="219"/>
-        <source>%v/%m Files</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Select the minimum rank of items to be shown</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="78"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=3&gt;&lt;b&gt;Ranking:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;1 - 5&lt;/td&gt;&lt;td&gt;(low risk - simple block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;6 - 10&lt;/td&gt;&lt;td&gt;(low risk - well structured and stable block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;11 - 20&lt;/td&gt;&lt;td&gt;(moderate risk - slightly complex block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td&gt;21 - 30&lt;/td&gt;&lt;td&gt;(more than moderate risk - more complex block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td&gt;31 - 40&lt;/td&gt;&lt;td&gt;(high risk - complex block, alarming)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&amp;gt; 40&lt;/td&gt;&lt;td&gt;(very high risk - error-prone, unstable block)&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Exclude Files:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="95"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Type:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Class&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Function&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;M&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Method&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Enter filename patterns of files to be excluded separated by a comma</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="199"/>
-        <source>Errors</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Press to start the calculation</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="360"/>
-        <source>Preparing files...</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Start</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="107"/>
-        <source>Press to start the calculation</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Type</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="149"/>
-        <source>Begin</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Name</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="210"/>
-        <source>Shows the progress of the calculation</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Complexity</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="124"/>
-        <source>Collapse all</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Rank</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="126"/>
-        <source>Expand all</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Begin</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="29"/>
-        <source>Minimum Rank:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="36"/>
-        <source>Select the minimum rank of items to be shown</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Shows the progress of the calculation</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="490"/>
-        <source>&lt;b&gt;Summary:&lt;/b&gt;&lt;br/&gt;{0} blocks (classes, functions, methods) analyzed.&lt;br/&gt;Average complexity: {7} ({8})&lt;table&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{1} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{2} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{3} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{4} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{5} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{6} blocks&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>%v/%m Files</source>
+      <translation type="unfinished" />
     </message>
-</context>
-<context>
+  </context>
+  <context>
     <name>MaintainabilityIndexDialog</name>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="14"/>
-        <source>Maintainability Index</source>
-        <translation type="unfinished"></translation>
+      <location filename="../MaintainabilityIndexDialog.py" line="69" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Rank&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;MI Score&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Maintainability&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;100 - 20&lt;/td&gt;&lt;td&gt;very high&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;19 - 10&lt;/td&gt;&lt;td&gt;medium&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;9 - 0&lt;/td&gt;&lt;td&gt;extremely low&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.py" line="144" />
+      <source>Errors</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="48"/>
-        <source>Exclude Files:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../MaintainabilityIndexDialog.py" line="292" />
+      <source>Preparing files...</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="55"/>
-        <source>Enter filename patterns of files to be excluded separated by a comma</source>
-        <translation type="unfinished"></translation>
+      <location filename="../MaintainabilityIndexDialog.py" line="402" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Summary:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{0} files&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{1} files&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{2} files&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Maintainability Index</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="75"/>
-        <source>Start</source>
-        <translation type="unfinished"></translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>&lt;b&gt;Maintainability Index&lt;/b&gt;
+&lt;p&gt;This dialog shows the maintainability index and rank.&lt;/p&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="89"/>
-        <source>Name</source>
-        <translation type="unfinished"></translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Exclude Files:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="94"/>
-        <source>Score</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="99"/>
-        <source>Rank</source>
-        <translation type="unfinished"></translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Enter filename patterns of files to be excluded separated by a comma</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="153"/>
-        <source>%v/%m Files</source>
-        <translation type="unfinished"></translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Press to start the calculation</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.py" line="124"/>
-        <source>Errors</source>
-        <translation type="unfinished"></translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Start</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.py" line="268"/>
-        <source>Preparing files...</source>
-        <translation type="unfinished"></translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Name</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="72"/>
-        <source>Press to start the calculation</source>
-        <translation type="unfinished"></translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Score</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="144"/>
-        <source>Shows the progress of the calculation</source>
-        <translation type="unfinished"></translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Rank</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Shows the progress of the calculation</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="17"/>
-        <source>&lt;b&gt;Maintainability Index&lt;/b&gt;
-&lt;p&gt;This dialog shows the maintainability index and rank.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>%v/%m Files</source>
+      <translation type="unfinished" />
     </message>
+  </context>
+  <context>
+    <name>RadonMetricsPlugin</name>
     <message>
-        <location filename="../MaintainabilityIndexDialog.py" line="380"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Summary:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{0} files&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{1} files&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{2} files&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginMetricsRadon.py" line="156" />
+      <source>Python 3 batch job</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.py" line="66"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Rank&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;MI Score&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Maintainability&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;100 - 20&lt;/td&gt;&lt;td&gt;very high&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;19 - 10&lt;/td&gt;&lt;td&gt;medium&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;9 - 0&lt;/td&gt;&lt;td&gt;extremely low&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>RadonMetricsPlugin</name>
-    <message>
-        <location filename="../../PluginMetricsRadon.py" line="154"/>
-        <source>Python 3 batch job</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginMetricsRadon.py" line="202" />
+      <source>Unknown metrics result received ({0}).</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="197"/>
-        <source>Unknown metrics result received ({0}).</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginMetricsRadon.py" line="968" />
+      <location filename="../../PluginMetricsRadon.py" line="630" />
+      <location filename="../../PluginMetricsRadon.py" line="465" />
+      <location filename="../../PluginMetricsRadon.py" line="395" />
+      <source>Radon</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../../PluginMetricsRadon.py" line="639" />
+      <location filename="../../PluginMetricsRadon.py" line="473" />
+      <location filename="../../PluginMetricsRadon.py" line="404" />
+      <source>Code Metrics</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="949"/>
-        <source>Radon</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginMetricsRadon.py" line="640" />
+      <location filename="../../PluginMetricsRadon.py" line="474" />
+      <location filename="../../PluginMetricsRadon.py" line="405" />
+      <source>Code &amp;Metrics...</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="633"/>
-        <source>Code Metrics</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginMetricsRadon.py" line="642" />
+      <location filename="../../PluginMetricsRadon.py" line="477" />
+      <location filename="../../PluginMetricsRadon.py" line="408" />
+      <source>Show raw code metrics.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="633"/>
-        <source>Code &amp;Metrics...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../PluginMetricsRadon.py" line="637"/>
-        <source>Show raw code metrics.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginMetricsRadon.py" line="644" />
+      <location filename="../../PluginMetricsRadon.py" line="478" />
+      <location filename="../../PluginMetricsRadon.py" line="409" />
+      <source>&lt;b&gt;Code Metrics...&lt;/b&gt;&lt;p&gt;This calculates raw code metrics of Python files and shows the amount of lines of code, logical lines of code, source lines of code, comment lines, multi-line strings and blank lines.&lt;/p&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="639"/>
-        <source>&lt;b&gt;Code Metrics...&lt;/b&gt;&lt;p&gt;This calculates raw code metrics of Python files and shows the amount of lines of code, logical lines of code, source lines of code, comment lines, multi-line strings and blank lines.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../PluginMetricsRadon.py" line="650"/>
-        <source>Maintainability Index</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginMetricsRadon.py" line="656" />
+      <location filename="../../PluginMetricsRadon.py" line="489" />
+      <location filename="../../PluginMetricsRadon.py" line="421" />
+      <source>Maintainability Index</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="650"/>
-        <source>Maintainability &amp;Index...</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginMetricsRadon.py" line="657" />
+      <location filename="../../PluginMetricsRadon.py" line="490" />
+      <location filename="../../PluginMetricsRadon.py" line="422" />
+      <source>Maintainability &amp;Index...</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="654"/>
-        <source>Show the maintainability index for Python files.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginMetricsRadon.py" line="659" />
+      <location filename="../../PluginMetricsRadon.py" line="493" />
+      <location filename="../../PluginMetricsRadon.py" line="425" />
+      <source>Show the maintainability index for Python files.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="656"/>
-        <source>&lt;b&gt;Maintainability Index...&lt;/b&gt;&lt;p&gt;This calculates the maintainability index of Python files and shows it together with a ranking.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../PluginMetricsRadon.py" line="667"/>
-        <source>Cyclomatic Complexity</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginMetricsRadon.py" line="661" />
+      <location filename="../../PluginMetricsRadon.py" line="494" />
+      <location filename="../../PluginMetricsRadon.py" line="426" />
+      <source>&lt;b&gt;Maintainability Index...&lt;/b&gt;&lt;p&gt;This calculates the maintainability index of Python files and shows it together with a ranking.&lt;/p&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="667"/>
-        <source>Cyclomatic &amp;Complexity...</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginMetricsRadon.py" line="673" />
+      <location filename="../../PluginMetricsRadon.py" line="503" />
+      <location filename="../../PluginMetricsRadon.py" line="436" />
+      <source>Cyclomatic Complexity</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="671"/>
-        <source>Show the cyclomatic complexity for Python files.</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginMetricsRadon.py" line="674" />
+      <location filename="../../PluginMetricsRadon.py" line="504" />
+      <location filename="../../PluginMetricsRadon.py" line="437" />
+      <source>Cyclomatic &amp;Complexity...</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="673"/>
-        <source>&lt;b&gt;Cyclomatic Complexity...&lt;/b&gt;&lt;p&gt;This calculates the cyclomatic complexity of Python files and shows it together with a ranking.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginMetricsRadon.py" line="676" />
+      <location filename="../../PluginMetricsRadon.py" line="507" />
+      <location filename="../../PluginMetricsRadon.py" line="440" />
+      <source>Show the cyclomatic complexity for Python files.</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="949"/>
-        <source>&lt;p&gt;&lt;b&gt;Radon Version {0}&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Radon is a Python tool that computes various metrics from the source code. Radon can compute:&lt;ul&gt;&lt;li&gt;&lt;b&gt;Raw&lt;/b&gt; metrics (these include SLOC, comment lines, blank lines, multi line strings, ...)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Maintainability Index&lt;/b&gt; (the one used in Visual Studio)&lt;/li&gt;&lt;li&gt;&lt;b&gt;McCabe&apos;s complexity&lt;/b&gt;, i.e. cyclomatic complexity&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginMetricsRadon.py" line="678" />
+      <location filename="../../PluginMetricsRadon.py" line="508" />
+      <location filename="../../PluginMetricsRadon.py" line="441" />
+      <source>&lt;b&gt;Cyclomatic Complexity...&lt;/b&gt;&lt;p&gt;This calculates the cyclomatic complexity of Python files and shows it together with a ranking.&lt;/p&gt;</source>
+      <translation type="unfinished" />
     </message>
-</context>
-<context>
+    <message>
+      <location filename="../../PluginMetricsRadon.py" line="969" />
+      <source>&lt;p&gt;&lt;b&gt;Radon Version {0}&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Radon is a Python tool that computes various metrics from the source code. Radon can compute:&lt;ul&gt;&lt;li&gt;&lt;b&gt;Raw&lt;/b&gt; metrics (these include SLOC, comment lines, blank lines, multi line strings, ...)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Maintainability Index&lt;/b&gt; (the one used in Visual Studio)&lt;/li&gt;&lt;li&gt;&lt;b&gt;McCabe's complexity&lt;/b&gt;, i.e. cyclomatic complexity&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;</source>
+      <translation type="unfinished" />
+    </message>
+  </context>
+  <context>
     <name>RawMetricsDialog</name>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="14"/>
-        <source>Code Metrics</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.py" line="73" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;SLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Source lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Logical lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comment lines&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&amp;nbsp;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comment lines not containing code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Multi&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Lines in multi line strings&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Blank lines&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Comment Statistics:&lt;/b&gt;&lt;/td&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments to lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % S&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments to source lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C + M % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments plus multi line strings to lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="17"/>
-        <source>&lt;b&gt;Code Metrics&lt;/b&gt;
-&lt;p&gt;This dialog shows some code metrics.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.py" line="143" />
+      <source>Errors</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="48"/>
-        <source>Exclude Files:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.py" line="289" />
+      <source>Preparing files...</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="55"/>
-        <source>Enter filename patterns of files to be excluded separated by a comma</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.py" line="430" />
+      <source>Files</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="75"/>
-        <source>Start</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.ui" line="89"/>
-        <source>Name</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <location filename="../RawMetricsDialog.py" line="432" />
+      <source>LOC</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="425"/>
-        <source>LOC</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <location filename="../RawMetricsDialog.py" line="434" />
+      <source>SLOC</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="427"/>
-        <source>SLOC</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <location filename="../RawMetricsDialog.py" line="436" />
+      <source>LLOC</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="429"/>
-        <source>LLOC</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.py" line="438" />
+      <source>Comment Lines</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="109"/>
-        <source>Comments</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <location filename="../RawMetricsDialog.py" line="441" />
+      <source>Empty Comments</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="119"/>
-        <source>Multi</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.py" line="444" />
+      <source>Multiline Strings</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="124"/>
-        <source>Empty</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.py" line="447" />
+      <source>Empty Lines</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="129"/>
-        <source>C % L</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Code Metrics</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="134"/>
-        <source>C % S</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>&lt;b&gt;Code Metrics&lt;/b&gt;
+&lt;p&gt;This dialog shows some code metrics.&lt;/p&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="139"/>
-        <source>C + M % L</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Exclude Files:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="164"/>
-        <source>Summary</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Enter filename patterns of files to be excluded separated by a comma</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="169"/>
-        <source>#</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Press to start the calculation</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="208"/>
-        <source>%v/%m Files</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Start</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="139"/>
-        <source>Errors</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Name</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="281"/>
-        <source>Preparing files...</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Comments</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="423"/>
-        <source>Files</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Multi</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="72"/>
-        <source>Press to start the calculation</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Empty</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>C % L</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="199"/>
-        <source>Shows the progress of the calculation</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>C % S</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="431"/>
-        <source>Comment Lines</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>C + M % L</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="437"/>
-        <source>Multiline Strings</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Summary</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="440"/>
-        <source>Empty Lines</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>#</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="434"/>
-        <source>Empty Comments</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Shows the progress of the calculation</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="71"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;SLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Source lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Logical lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comment lines&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&amp;nbsp;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comment lines not containing code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Multi&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Lines in multi line strings&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Blank lines&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Comment Statistics:&lt;/b&gt;&lt;/td&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments to lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % S&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments to source lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C + M % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments plus multi line strings to lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>%v/%m Files</source>
+      <translation type="unfinished" />
     </message>
-</context>
+  </context>
 </TS>
--- a/RadonMetrics/i18n/radon_es.ts	Wed May 26 17:13:04 2021 +0200
+++ b/RadonMetrics/i18n/radon_es.ts	Wed May 26 17:43:25 2021 +0200
@@ -1,426 +1,458 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS><TS version="2.0" language="es_ES" sourcelanguage="">
-<context>
+<!DOCTYPE TS>
+<TS version="2.0" language="es_ES" sourcelanguage="">
+  <context>
     <name>CyclomaticComplexityDialog</name>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="14"/>
-        <source>Cyclomatic Complexity</source>
-        <translation>Complejidad Ciclomática</translation>
+      <location filename="../CyclomaticComplexityDialog.py" line="78" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=3&gt;&lt;b&gt;Ranking:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;1 - 5&lt;/td&gt;&lt;td&gt;(low risk - simple block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;6 - 10&lt;/td&gt;&lt;td&gt;(low risk - well structured and stable block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;11 - 20&lt;/td&gt;&lt;td&gt;(moderate risk - slightly complex block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td&gt;21 - 30&lt;/td&gt;&lt;td&gt;(more than moderate risk - more complex block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td&gt;31 - 40&lt;/td&gt;&lt;td&gt;(high risk - complex block, alarming)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&amp;gt; 40&lt;/td&gt;&lt;td&gt;(very high risk - error-prone, unstable block)&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=3&gt;&lt;b&gt;Ranking:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;1 - 5&lt;/td&gt;&lt;td&gt;(riesgo bajo - bloque simple)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;6 - 10&lt;/td&gt;&lt;td&gt;(riesgo bajo - bloque estable y bién estructurado)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;11 - 20&lt;/td&gt;&lt;td&gt;(riesgo moderado - bloque ligeramente complejo)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td&gt;21 - 30&lt;/td&gt;&lt;td&gt;(riesgo más que moderado- bloque más complejo)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td&gt;31 - 40&lt;/td&gt;&lt;td&gt;(riesgo alto- bloque complejo, alarmante)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&amp;gt; 40&lt;/td&gt;&lt;td&gt;(riesgo muy alto, - propenso a errores, bloque inestable)&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.py" line="95" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Type:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Class&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Function&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;M&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Method&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Type:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Clase&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Función&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;M&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Método&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.py" line="147" />
+      <source>Collapse all</source>
+      <translation>Contraer todos</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.py" line="149" />
+      <source>Expand all</source>
+      <translation>Expandir todos</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="17"/>
-        <source>&lt;b&gt;Cyclomatic Complexity&lt;/b&gt;
+      <location filename="../CyclomaticComplexityDialog.py" line="224" />
+      <source>Errors</source>
+      <translation>Errores</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.py" line="389" />
+      <source>Preparing files...</source>
+      <translation>Preparando archivos...</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.py" line="517" />
+      <source>&lt;b&gt;Summary:&lt;/b&gt;&lt;br/&gt;{0} blocks (classes, functions, methods) analyzed.&lt;br/&gt;Average complexity: {7} ({8})&lt;table&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{1} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{2} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{3} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{4} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{5} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{6} blocks&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation>&lt;b&gt;Resumen:&lt;/b&gt;&lt;br/&gt;{0} bloques (clases, funciones, métodos) analyzed.&lt;br/&gt;Complejidad media: {7} ({8})&lt;table&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{1} bloques&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{2} bloques&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{3} bloques&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{4} bloques&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{5} bloques&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{6} bloques&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Cyclomatic Complexity</source>
+      <translation>Complejidad Ciclomática</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>&lt;b&gt;Cyclomatic Complexity&lt;/b&gt;
 &lt;p&gt;This dialog shows the cyclomatic complexity and rank.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Complejidad Ciclomática&lt;/b&gt;
+      <translation>&lt;b&gt;Complejidad Ciclomática&lt;/b&gt;
 &lt;p&gt;Este diálogo muestra la complejidad ciclomática y rango.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="83"/>
-        <source>Exclude Files:</source>
-        <translation>Excluir Archivos:</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="90"/>
-        <source>Enter filename patterns of files to be excluded separated by a comma</source>
-        <translation>Introducir patrones de nombre de archivo para los archivos a ser excluidos, separados por comas</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="110"/>
-        <source>Start</source>
-        <translation>Iniciar</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Minimum Rank:</source>
+      <translation>Rango Mínimo:</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="129"/>
-        <source>Type</source>
-        <translation>Tipo</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Select the minimum rank of items to be shown</source>
+      <translation>Seleccionar el rango mínimo para los elementos a mostrar</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="134"/>
-        <source>Name</source>
-        <translation>Nombre</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Exclude Files:</source>
+      <translation>Excluir Archivos:</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="139"/>
-        <source>Complexity</source>
-        <translation>Complejidad</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="144"/>
-        <source>Rank</source>
-        <translation>Rango</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Enter filename patterns of files to be excluded separated by a comma</source>
+      <translation>Introducir patrones de nombre de archivo para los archivos a ser excluidos, separados por comas</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="219"/>
-        <source>%v/%m Files</source>
-        <translation>%v/%m Archivos</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Press to start the calculation</source>
+      <translation>Pulsar para iniciar el cálculo</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="78"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=3&gt;&lt;b&gt;Ranking:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;1 - 5&lt;/td&gt;&lt;td&gt;(low risk - simple block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;6 - 10&lt;/td&gt;&lt;td&gt;(low risk - well structured and stable block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;11 - 20&lt;/td&gt;&lt;td&gt;(moderate risk - slightly complex block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td&gt;21 - 30&lt;/td&gt;&lt;td&gt;(more than moderate risk - more complex block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td&gt;31 - 40&lt;/td&gt;&lt;td&gt;(high risk - complex block, alarming)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&amp;gt; 40&lt;/td&gt;&lt;td&gt;(very high risk - error-prone, unstable block)&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=3&gt;&lt;b&gt;Ranking:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;1 - 5&lt;/td&gt;&lt;td&gt;(riesgo bajo - bloque simple)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;6 - 10&lt;/td&gt;&lt;td&gt;(riesgo bajo - bloque estable y bién estructurado)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;11 - 20&lt;/td&gt;&lt;td&gt;(riesgo moderado - bloque ligeramente complejo)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td&gt;21 - 30&lt;/td&gt;&lt;td&gt;(riesgo más que moderado- bloque más complejo)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td&gt;31 - 40&lt;/td&gt;&lt;td&gt;(riesgo alto- bloque complejo, alarmante)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&amp;gt; 40&lt;/td&gt;&lt;td&gt;(riesgo muy alto, - propenso a errores, bloque inestable)&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="95"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Type:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Class&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Function&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;M&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Method&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Type:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Clase&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Función&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;M&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Método&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="199"/>
-        <source>Errors</source>
-        <translation>Errores</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Start</source>
+      <translation>Iniciar</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="360"/>
-        <source>Preparing files...</source>
-        <translation>Preparando archivos...</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="107"/>
-        <source>Press to start the calculation</source>
-        <translation>Pulsar para iniciar el cálculo</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Type</source>
+      <translation>Tipo</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="149"/>
-        <source>Begin</source>
-        <translation>Comenzar</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Name</source>
+      <translation>Nombre</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="210"/>
-        <source>Shows the progress of the calculation</source>
-        <translation>Muestra el progreso del cálculo</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="124"/>
-        <source>Collapse all</source>
-        <translation>Contraer todos</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Complexity</source>
+      <translation>Complejidad</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="126"/>
-        <source>Expand all</source>
-        <translation>Expandir todos</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="29"/>
-        <source>Minimum Rank:</source>
-        <translation>Rango Mínimo:</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="36"/>
-        <source>Select the minimum rank of items to be shown</source>
-        <translation>Seleccionar el rango mínimo para los elementos a mostrar</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Rank</source>
+      <translation>Rango</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="490"/>
-        <source>&lt;b&gt;Summary:&lt;/b&gt;&lt;br/&gt;{0} blocks (classes, functions, methods) analyzed.&lt;br/&gt;Average complexity: {7} ({8})&lt;table&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{1} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{2} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{3} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{4} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{5} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{6} blocks&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation>&lt;b&gt;Resumen:&lt;/b&gt;&lt;br/&gt;{0} bloques (clases, funciones, métodos) analyzed.&lt;br/&gt;Complejidad media: {7} ({8})&lt;table&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{1} bloques&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{2} bloques&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{3} bloques&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{4} bloques&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{5} bloques&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{6} bloques&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
-    </message>
-</context>
-<context>
-    <name>MaintainabilityIndexDialog</name>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="14"/>
-        <source>Maintainability Index</source>
-        <translation>Índice de Mantenibilidad</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Begin</source>
+      <translation>Comenzar</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="48"/>
-        <source>Exclude Files:</source>
-        <translation>Excluir Archivos:</translation>
-    </message>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="55"/>
-        <source>Enter filename patterns of files to be excluded separated by a comma</source>
-        <translation>Introducir patrones de nombre de archivo para los archivos a ser excluidos, separados por comas</translation>
-    </message>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="75"/>
-        <source>Start</source>
-        <translation>Iniciar</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Shows the progress of the calculation</source>
+      <translation>Muestra el progreso del cálculo</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="89"/>
-        <source>Name</source>
-        <translation>Nombre</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>%v/%m Files</source>
+      <translation>%v/%m Archivos</translation>
+    </message>
+  </context>
+  <context>
+    <name>MaintainabilityIndexDialog</name>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.py" line="69" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Rank&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;MI Score&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Maintainability&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;100 - 20&lt;/td&gt;&lt;td&gt;very high&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;19 - 10&lt;/td&gt;&lt;td&gt;medium&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;9 - 0&lt;/td&gt;&lt;td&gt;extremely low&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="94"/>
-        <source>Score</source>
-        <translation>Puntuación</translation>
-    </message>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="99"/>
-        <source>Rank</source>
-        <translation>Rango</translation>
-    </message>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="153"/>
-        <source>%v/%m Files</source>
-        <translation>%v/%m Archivos</translation>
+      <location filename="../MaintainabilityIndexDialog.py" line="144" />
+      <source>Errors</source>
+      <translation>Errores</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.py" line="124"/>
-        <source>Errors</source>
-        <translation>Errores</translation>
+      <location filename="../MaintainabilityIndexDialog.py" line="292" />
+      <source>Preparing files...</source>
+      <translation>Preparando archivos...</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.py" line="268"/>
-        <source>Preparing files...</source>
-        <translation>Preparando archivos...</translation>
+      <location filename="../MaintainabilityIndexDialog.py" line="402" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Summary:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{0} files&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{1} files&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{2} files&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Resumen:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{0} archivos&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{1} archivos&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{2} archivos&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="72"/>
-        <source>Press to start the calculation</source>
-        <translation>Pulsar para iniciar el cálculo</translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Maintainability Index</source>
+      <translation>Índice de Mantenibilidad</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="144"/>
-        <source>Shows the progress of the calculation</source>
-        <translation>Muestra el progreso del cálculo</translation>
-    </message>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="17"/>
-        <source>&lt;b&gt;Maintainability Index&lt;/b&gt;
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>&lt;b&gt;Maintainability Index&lt;/b&gt;
 &lt;p&gt;This dialog shows the maintainability index and rank.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Índice de Mantenibilidad&lt;/b&gt;
+      <translation>&lt;b&gt;Índice de Mantenibilidad&lt;/b&gt;
 &lt;p&gt;Este diálogo muestra el índice de mantenimiento y rango.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.py" line="380"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Summary:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{0} files&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{1} files&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{2} files&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Resumen:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{0} archivos&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{1} archivos&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{2} archivos&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Exclude Files:</source>
+      <translation>Excluir Archivos:</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Enter filename patterns of files to be excluded separated by a comma</source>
+      <translation>Introducir patrones de nombre de archivo para los archivos a ser excluidos, separados por comas</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Press to start the calculation</source>
+      <translation>Pulsar para iniciar el cálculo</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Start</source>
+      <translation>Iniciar</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Name</source>
+      <translation>Nombre</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.py" line="66"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Rank&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;MI Score&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Maintainability&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;100 - 20&lt;/td&gt;&lt;td&gt;very high&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;19 - 10&lt;/td&gt;&lt;td&gt;medium&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;9 - 0&lt;/td&gt;&lt;td&gt;extremely low&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation type="unfinished"></translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Score</source>
+      <translation>Puntuación</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Rank</source>
+      <translation>Rango</translation>
     </message>
-</context>
-<context>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Shows the progress of the calculation</source>
+      <translation>Muestra el progreso del cálculo</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>%v/%m Files</source>
+      <translation>%v/%m Archivos</translation>
+    </message>
+  </context>
+  <context>
     <name>RadonMetricsPlugin</name>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="154"/>
-        <source>Python 3 batch job</source>
-        <translation>Trabajo por lotes de Python 3</translation>
-    </message>
-    <message>
-        <location filename="../../PluginMetricsRadon.py" line="197"/>
-        <source>Unknown metrics result received ({0}).</source>
-        <translation>Recibido resultado de métricas desconocidas ({0}).</translation>
+      <location filename="../../PluginMetricsRadon.py" line="156" />
+      <source>Python 3 batch job</source>
+      <translation>Trabajo por lotes de Python 3</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="949"/>
-        <source>Radon</source>
-        <translation>Radon</translation>
+      <location filename="../../PluginMetricsRadon.py" line="202" />
+      <source>Unknown metrics result received ({0}).</source>
+      <translation>Recibido resultado de métricas desconocidas ({0}).</translation>
+    </message>
+    <message>
+      <location filename="../../PluginMetricsRadon.py" line="968" />
+      <location filename="../../PluginMetricsRadon.py" line="630" />
+      <location filename="../../PluginMetricsRadon.py" line="465" />
+      <location filename="../../PluginMetricsRadon.py" line="395" />
+      <source>Radon</source>
+      <translation>Radon</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="633"/>
-        <source>Code Metrics</source>
-        <translation>Métricas de Código</translation>
+      <location filename="../../PluginMetricsRadon.py" line="639" />
+      <location filename="../../PluginMetricsRadon.py" line="473" />
+      <location filename="../../PluginMetricsRadon.py" line="404" />
+      <source>Code Metrics</source>
+      <translation>Métricas de Código</translation>
+    </message>
+    <message>
+      <location filename="../../PluginMetricsRadon.py" line="640" />
+      <location filename="../../PluginMetricsRadon.py" line="474" />
+      <location filename="../../PluginMetricsRadon.py" line="405" />
+      <source>Code &amp;Metrics...</source>
+      <translation>&amp;Métricas de Código...</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="633"/>
-        <source>Code &amp;Metrics...</source>
-        <translation>&amp;Métricas de Código...</translation>
+      <location filename="../../PluginMetricsRadon.py" line="642" />
+      <location filename="../../PluginMetricsRadon.py" line="477" />
+      <location filename="../../PluginMetricsRadon.py" line="408" />
+      <source>Show raw code metrics.</source>
+      <translation>Mostrar métricas de código en bruto.</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="637"/>
-        <source>Show raw code metrics.</source>
-        <translation>Mostrar métricas de código en bruto.</translation>
+      <location filename="../../PluginMetricsRadon.py" line="644" />
+      <location filename="../../PluginMetricsRadon.py" line="478" />
+      <location filename="../../PluginMetricsRadon.py" line="409" />
+      <source>&lt;b&gt;Code Metrics...&lt;/b&gt;&lt;p&gt;This calculates raw code metrics of Python files and shows the amount of lines of code, logical lines of code, source lines of code, comment lines, multi-line strings and blank lines.&lt;/p&gt;</source>
+      <translation>&lt;b&gt;Métricas de Código...&lt;b&gt;&lt;p&gt;Calcula las métricas de código en bruto de archivos Python y muestra el número de líneas de código, líneas lógicas de código, líneas fuente de código, líneas en comentarios, cadenas multilínea y líneas en blanco.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="639"/>
-        <source>&lt;b&gt;Code Metrics...&lt;/b&gt;&lt;p&gt;This calculates raw code metrics of Python files and shows the amount of lines of code, logical lines of code, source lines of code, comment lines, multi-line strings and blank lines.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Métricas de Código...&lt;b&gt;&lt;p&gt;Calcula las métricas de código en bruto de archivos Python y muestra el número de líneas de código, líneas lógicas de código, líneas fuente de código, líneas en comentarios, cadenas multilínea y líneas en blanco.&lt;/p&gt;</translation>
+      <location filename="../../PluginMetricsRadon.py" line="656" />
+      <location filename="../../PluginMetricsRadon.py" line="489" />
+      <location filename="../../PluginMetricsRadon.py" line="421" />
+      <source>Maintainability Index</source>
+      <translation>Índice de Mantenibilidad</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="650"/>
-        <source>Maintainability Index</source>
-        <translation>Índice de Mantenibilidad</translation>
+      <location filename="../../PluginMetricsRadon.py" line="657" />
+      <location filename="../../PluginMetricsRadon.py" line="490" />
+      <location filename="../../PluginMetricsRadon.py" line="422" />
+      <source>Maintainability &amp;Index...</source>
+      <translation>&amp;Índice de Mantenibilidad...</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="650"/>
-        <source>Maintainability &amp;Index...</source>
-        <translation>&amp;Índice de Mantenibilidad...</translation>
+      <location filename="../../PluginMetricsRadon.py" line="659" />
+      <location filename="../../PluginMetricsRadon.py" line="493" />
+      <location filename="../../PluginMetricsRadon.py" line="425" />
+      <source>Show the maintainability index for Python files.</source>
+      <translation>Muestra el índice de mantenibilidad para archivos Python.</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="654"/>
-        <source>Show the maintainability index for Python files.</source>
-        <translation>Muestra el índice de mantenibilidad para archivos Python.</translation>
+      <location filename="../../PluginMetricsRadon.py" line="661" />
+      <location filename="../../PluginMetricsRadon.py" line="494" />
+      <location filename="../../PluginMetricsRadon.py" line="426" />
+      <source>&lt;b&gt;Maintainability Index...&lt;/b&gt;&lt;p&gt;This calculates the maintainability index of Python files and shows it together with a ranking.&lt;/p&gt;</source>
+      <translation>&lt;b&gt;Índice de Mantenibilidad...&lt;/b&gt;&lt;p&gt;Calcula el índice de mantenibilidad de archivos Python y lo muestra con un ranking.&lt;/p&gt;</translation>
+    </message>
+    <message>
+      <location filename="../../PluginMetricsRadon.py" line="673" />
+      <location filename="../../PluginMetricsRadon.py" line="503" />
+      <location filename="../../PluginMetricsRadon.py" line="436" />
+      <source>Cyclomatic Complexity</source>
+      <translation>Complejidad Ciclomática</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="656"/>
-        <source>&lt;b&gt;Maintainability Index...&lt;/b&gt;&lt;p&gt;This calculates the maintainability index of Python files and shows it together with a ranking.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Índice de Mantenibilidad...&lt;/b&gt;&lt;p&gt;Calcula el índice de mantenibilidad de archivos Python y lo muestra con un ranking.&lt;/p&gt;</translation>
+      <location filename="../../PluginMetricsRadon.py" line="674" />
+      <location filename="../../PluginMetricsRadon.py" line="504" />
+      <location filename="../../PluginMetricsRadon.py" line="437" />
+      <source>Cyclomatic &amp;Complexity...</source>
+      <translation>Complejidad &amp;Ciclomática...</translation>
+    </message>
+    <message>
+      <location filename="../../PluginMetricsRadon.py" line="676" />
+      <location filename="../../PluginMetricsRadon.py" line="507" />
+      <location filename="../../PluginMetricsRadon.py" line="440" />
+      <source>Show the cyclomatic complexity for Python files.</source>
+      <translation>Muestra la complejidad ciclomática para archivos Python.</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="667"/>
-        <source>Cyclomatic Complexity</source>
-        <translation>Complejidad Ciclomática</translation>
+      <location filename="../../PluginMetricsRadon.py" line="678" />
+      <location filename="../../PluginMetricsRadon.py" line="508" />
+      <location filename="../../PluginMetricsRadon.py" line="441" />
+      <source>&lt;b&gt;Cyclomatic Complexity...&lt;/b&gt;&lt;p&gt;This calculates the cyclomatic complexity of Python files and shows it together with a ranking.&lt;/p&gt;</source>
+      <translation>&lt;b&gt;Complejidad Ciclomática...&lt;/b&gt;&lt;p&gt;Calcula la complejidad ciclomática de archivos Python y lo muestra con un ranking.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="667"/>
-        <source>Cyclomatic &amp;Complexity...</source>
-        <translation>Complejidad &amp;Ciclomática...</translation>
+      <location filename="../../PluginMetricsRadon.py" line="969" />
+      <source>&lt;p&gt;&lt;b&gt;Radon Version {0}&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Radon is a Python tool that computes various metrics from the source code. Radon can compute:&lt;ul&gt;&lt;li&gt;&lt;b&gt;Raw&lt;/b&gt; metrics (these include SLOC, comment lines, blank lines, multi line strings, ...)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Maintainability Index&lt;/b&gt; (the one used in Visual Studio)&lt;/li&gt;&lt;li&gt;&lt;b&gt;McCabe's complexity&lt;/b&gt;, i.e. cyclomatic complexity&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;</source>
+      <translation>&lt;p&gt;&lt;b&gt;Radon Versión {0}&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Radon es una herramienta de Python que calcula varias métricas a partir del código fuente. Radon puede calcular:&lt;ul&gt;&lt;li&gt;Métricas &lt;b&gt;en bruto&lt;/b&gt; (incluyen SLOC -líneas de código fuente-, líneas de comentarios, líneas en blanco, cadenas multilínea, ...)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Índice de Mantenibilidad&lt;/b&gt; (el que se utiliza en Visual Studio)&lt;/li&gt;&lt;li&gt;&lt;b&gt;complejidad de McCabe&lt;/b&gt;, complejidad ciclomática&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;</translation>
+    </message>
+  </context>
+  <context>
+    <name>RawMetricsDialog</name>
+    <message>
+      <location filename="../RawMetricsDialog.py" line="73" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;SLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Source lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Logical lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comment lines&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&amp;nbsp;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comment lines not containing code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Multi&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Lines in multi line strings&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Blank lines&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Comment Statistics:&lt;/b&gt;&lt;/td&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments to lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % S&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments to source lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C + M % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments plus multi line strings to lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Líneas de código&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;SLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Líneas de código fuente&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Líneas logicas de código&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Comentarios&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Líneas de comentarios&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Multi&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Líneas en cadenas multilínea&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Vacío&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Líneas en blanco&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Estadísticas de Comentarios:&lt;/b&gt;&lt;/td&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Ratio entre comentarios y líneas&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % S&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Ratio entre comentarios y líneas de código fuente&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C + M % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Ratio entre comentarios más cadenas multilínea y líneas&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="671"/>
-        <source>Show the cyclomatic complexity for Python files.</source>
-        <translation>Muestra la complejidad ciclomática para archivos Python.</translation>
+      <location filename="../RawMetricsDialog.py" line="143" />
+      <source>Errors</source>
+      <translation>Errores</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.py" line="289" />
+      <source>Preparing files...</source>
+      <translation>Preparando archivos...</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="673"/>
-        <source>&lt;b&gt;Cyclomatic Complexity...&lt;/b&gt;&lt;p&gt;This calculates the cyclomatic complexity of Python files and shows it together with a ranking.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Complejidad Ciclomática...&lt;/b&gt;&lt;p&gt;Calcula la complejidad ciclomática de archivos Python y lo muestra con un ranking.&lt;/p&gt;</translation>
+      <location filename="../RawMetricsDialog.py" line="430" />
+      <source>Files</source>
+      <translation>Archivos</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <location filename="../RawMetricsDialog.py" line="432" />
+      <source>LOC</source>
+      <translation>LOC</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <location filename="../RawMetricsDialog.py" line="434" />
+      <source>SLOC</source>
+      <translation>SLOC</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="949"/>
-        <source>&lt;p&gt;&lt;b&gt;Radon Version {0}&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Radon is a Python tool that computes various metrics from the source code. Radon can compute:&lt;ul&gt;&lt;li&gt;&lt;b&gt;Raw&lt;/b&gt; metrics (these include SLOC, comment lines, blank lines, multi line strings, ...)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Maintainability Index&lt;/b&gt; (the one used in Visual Studio)&lt;/li&gt;&lt;li&gt;&lt;b&gt;McCabe&apos;s complexity&lt;/b&gt;, i.e. cyclomatic complexity&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;</source>
-        <translation>&lt;p&gt;&lt;b&gt;Radon Versión {0}&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Radon es una herramienta de Python que calcula varias métricas a partir del código fuente. Radon puede calcular:&lt;ul&gt;&lt;li&gt;Métricas &lt;b&gt;en bruto&lt;/b&gt; (incluyen SLOC -líneas de código fuente-, líneas de comentarios, líneas en blanco, cadenas multilínea, ...)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Índice de Mantenibilidad&lt;/b&gt; (el que se utiliza en Visual Studio)&lt;/li&gt;&lt;li&gt;&lt;b&gt;complejidad de McCabe&lt;/b&gt;, complejidad ciclomática&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <location filename="../RawMetricsDialog.py" line="436" />
+      <source>LLOC</source>
+      <translation>LLOC</translation>
     </message>
-</context>
-<context>
-    <name>RawMetricsDialog</name>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="14"/>
-        <source>Code Metrics</source>
-        <translation>Métricas de Código</translation>
+      <location filename="../RawMetricsDialog.py" line="438" />
+      <source>Comment Lines</source>
+      <translation>Líneas de Comentarios</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <location filename="../RawMetricsDialog.py" line="441" />
+      <source>Empty Comments</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="17"/>
-        <source>&lt;b&gt;Code Metrics&lt;/b&gt;
+      <location filename="../RawMetricsDialog.py" line="444" />
+      <source>Multiline Strings</source>
+      <translation>Cadenas Multilínea</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.py" line="447" />
+      <source>Empty Lines</source>
+      <translation>Líneas en Blanco</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Code Metrics</source>
+      <translation>Métricas de Código</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>&lt;b&gt;Code Metrics&lt;/b&gt;
 &lt;p&gt;This dialog shows some code metrics.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Métricas de Código&lt;/b&gt;
+      <translation>&lt;b&gt;Métricas de Código&lt;/b&gt;
 &lt;p&gt;Este diálogo muestra algunas métricas de código.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="48"/>
-        <source>Exclude Files:</source>
-        <translation>Excluir Archivos:</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.ui" line="55"/>
-        <source>Enter filename patterns of files to be excluded separated by a comma</source>
-        <translation>Introducir patrones de nombre de archivo para los archivos a ser excluidos, separados por comas</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Exclude Files:</source>
+      <translation>Excluir Archivos:</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="75"/>
-        <source>Start</source>
-        <translation>Iniciar</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Enter filename patterns of files to be excluded separated by a comma</source>
+      <translation>Introducir patrones de nombre de archivo para los archivos a ser excluidos, separados por comas</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="89"/>
-        <source>Name</source>
-        <translation>Nombre</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="425"/>
-        <source>LOC</source>
-        <translation>LOC</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="427"/>
-        <source>SLOC</source>
-        <translation>SLOC</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Press to start the calculation</source>
+      <translation>Pulsar para iniciar el cálculo</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="429"/>
-        <source>LLOC</source>
-        <translation>LLOC</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.ui" line="109"/>
-        <source>Comments</source>
-        <translation>Comentarios</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.ui" line="119"/>
-        <source>Multi</source>
-        <translation>Multi</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Start</source>
+      <translation>Iniciar</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="124"/>
-        <source>Empty</source>
-        <translation>Vacío</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Name</source>
+      <translation>Nombre</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="129"/>
-        <source>C % L</source>
-        <translation>C % L</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Comments</source>
+      <translation>Comentarios</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="134"/>
-        <source>C % S</source>
-        <translation>C % S</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.ui" line="139"/>
-        <source>C + M % L</source>
-        <translation>C + M % L</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Multi</source>
+      <translation>Multi</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="164"/>
-        <source>Summary</source>
-        <translation>Resumen</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.ui" line="169"/>
-        <source>#</source>
-        <translation>#</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Empty</source>
+      <translation>Vacío</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="208"/>
-        <source>%v/%m Files</source>
-        <translation>%v/%m Archivos</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>C % L</source>
+      <translation>C % L</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="139"/>
-        <source>Errors</source>
-        <translation>Errores</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>C % S</source>
+      <translation>C % S</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="281"/>
-        <source>Preparing files...</source>
-        <translation>Preparando archivos...</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="423"/>
-        <source>Files</source>
-        <translation>Archivos</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>C + M % L</source>
+      <translation>C + M % L</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="72"/>
-        <source>Press to start the calculation</source>
-        <translation>Pulsar para iniciar el cálculo</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Summary</source>
+      <translation>Resumen</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="199"/>
-        <source>Shows the progress of the calculation</source>
-        <translation>Muestra el progreso del cálculo</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="431"/>
-        <source>Comment Lines</source>
-        <translation>Líneas de Comentarios</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>#</source>
+      <translation>#</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="437"/>
-        <source>Multiline Strings</source>
-        <translation>Cadenas Multilínea</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="440"/>
-        <source>Empty Lines</source>
-        <translation>Líneas en Blanco</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Shows the progress of the calculation</source>
+      <translation>Muestra el progreso del cálculo</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="434"/>
-        <source>Empty Comments</source>
-        <translation type="unfinished"></translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>%v/%m Files</source>
+      <translation>%v/%m Archivos</translation>
     </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="71"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;SLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Source lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Logical lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comment lines&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&amp;nbsp;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comment lines not containing code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Multi&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Lines in multi line strings&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Blank lines&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Comment Statistics:&lt;/b&gt;&lt;/td&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments to lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % S&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments to source lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C + M % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments plus multi line strings to lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Líneas de código&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;SLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Líneas de código fuente&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Líneas logicas de código&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Comentarios&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Líneas de comentarios&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Multi&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Líneas en cadenas multilínea&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Vacío&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Líneas en blanco&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Estadísticas de Comentarios:&lt;/b&gt;&lt;/td&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Ratio entre comentarios y líneas&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % S&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Ratio entre comentarios y líneas de código fuente&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C + M % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Ratio entre comentarios más cadenas multilínea y líneas&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
-    </message>
-</context>
+  </context>
 </TS>
--- a/RadonMetrics/i18n/radon_ru.ts	Wed May 26 17:13:04 2021 +0200
+++ b/RadonMetrics/i18n/radon_ru.ts	Wed May 26 17:43:25 2021 +0200
@@ -1,426 +1,458 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS><TS version="2.0" language="ru_RU" sourcelanguage="">
-<context>
+<!DOCTYPE TS>
+<TS version="2.0" language="ru_RU" sourcelanguage="">
+  <context>
     <name>CyclomaticComplexityDialog</name>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="14"/>
-        <source>Cyclomatic Complexity</source>
-        <translation>Цикломатическая сложность</translation>
+      <location filename="../CyclomaticComplexityDialog.py" line="78" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=3&gt;&lt;b&gt;Ranking:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;1 - 5&lt;/td&gt;&lt;td&gt;(low risk - simple block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;6 - 10&lt;/td&gt;&lt;td&gt;(low risk - well structured and stable block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;11 - 20&lt;/td&gt;&lt;td&gt;(moderate risk - slightly complex block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td&gt;21 - 30&lt;/td&gt;&lt;td&gt;(more than moderate risk - more complex block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td&gt;31 - 40&lt;/td&gt;&lt;td&gt;(high risk - complex block, alarming)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&amp;gt; 40&lt;/td&gt;&lt;td&gt;(very high risk - error-prone, unstable block)&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=3&gt;&lt;b&gt;Ранжирование:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;1 - 5&lt;/td&gt;&lt;td&gt;(низкий риск - простой блок)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;6 - 10&lt;/td&gt;&lt;td&gt;(низкий риск - хорошо структурированный стабильный блок)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;11 - 20&lt;/td&gt;&lt;td&gt;(умеренный риск - немного сложный блок)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td&gt;21 - 30&lt;/td&gt;&lt;td&gt;(более чем умеренный риск - более сложный блок)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td&gt;31 - 40&lt;/td&gt;&lt;td&gt;(высокий риск - сложный, аварийный блок)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&amp;gt; 40&lt;/td&gt;&lt;td&gt;(очень высокий риск - нестабильный блок, подвержен ошибкам)&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.py" line="95" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Type:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Class&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Function&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;M&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Method&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Тип:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Класс&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Функция&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;M&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Метод&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.py" line="147" />
+      <source>Collapse all</source>
+      <translation>Свернуть все</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.py" line="149" />
+      <source>Expand all</source>
+      <translation>Развернуть все</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="17"/>
-        <source>&lt;b&gt;Cyclomatic Complexity&lt;/b&gt;
+      <location filename="../CyclomaticComplexityDialog.py" line="224" />
+      <source>Errors</source>
+      <translation>Ошибки</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.py" line="389" />
+      <source>Preparing files...</source>
+      <translation>Подготовка файлов...</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.py" line="517" />
+      <source>&lt;b&gt;Summary:&lt;/b&gt;&lt;br/&gt;{0} blocks (classes, functions, methods) analyzed.&lt;br/&gt;Average complexity: {7} ({8})&lt;table&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{1} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{2} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{3} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{4} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{5} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{6} blocks&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation>&lt;b&gt;Сводка:&lt;/b&gt;&lt;br/&gt;{0} блоков (классов, функций, методов) проанализировано.&lt;br/&gt;Средняя сложность: {7} ({8})&lt;table&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{1} блоков&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{2} блоков&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{3} блоков&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{4} блоков&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{5} блоков&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{6} блоков&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Cyclomatic Complexity</source>
+      <translation>Цикломатическая сложность</translation>
+    </message>
+    <message>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>&lt;b&gt;Cyclomatic Complexity&lt;/b&gt;
 &lt;p&gt;This dialog shows the cyclomatic complexity and rank.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Цикломатическая сложность&lt;/b&gt;
+      <translation>&lt;b&gt;Цикломатическая сложность&lt;/b&gt;
 &lt;p&gt;Данный диалог отображает цикломатическую сложность и ее уровень.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="83"/>
-        <source>Exclude Files:</source>
-        <translation>Исключить файлы:</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="90"/>
-        <source>Enter filename patterns of files to be excluded separated by a comma</source>
-        <translation>Введите шаблоны имен для исключаемых файлов, разделенные запятыми</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="110"/>
-        <source>Start</source>
-        <translation>Старт</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Minimum Rank:</source>
+      <translation>Мин. уровень:</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="129"/>
-        <source>Type</source>
-        <translation>Тип</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Select the minimum rank of items to be shown</source>
+      <translation>Выбор минимального уровня сложности для отображения</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="134"/>
-        <source>Name</source>
-        <translation>Имя</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Exclude Files:</source>
+      <translation>Исключить файлы:</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="139"/>
-        <source>Complexity</source>
-        <translation>Сложность</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="144"/>
-        <source>Rank</source>
-        <translation>Уровень</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Enter filename patterns of files to be excluded separated by a comma</source>
+      <translation>Введите шаблоны имен для исключаемых файлов, разделенные запятыми</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="219"/>
-        <source>%v/%m Files</source>
-        <translation>%v из %m файлов</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Press to start the calculation</source>
+      <translation>Выполнить оценку кода</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="78"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=3&gt;&lt;b&gt;Ranking:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;1 - 5&lt;/td&gt;&lt;td&gt;(low risk - simple block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;6 - 10&lt;/td&gt;&lt;td&gt;(low risk - well structured and stable block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;11 - 20&lt;/td&gt;&lt;td&gt;(moderate risk - slightly complex block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td&gt;21 - 30&lt;/td&gt;&lt;td&gt;(more than moderate risk - more complex block)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td&gt;31 - 40&lt;/td&gt;&lt;td&gt;(high risk - complex block, alarming)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&amp;gt; 40&lt;/td&gt;&lt;td&gt;(very high risk - error-prone, unstable block)&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=3&gt;&lt;b&gt;Ранжирование:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;1 - 5&lt;/td&gt;&lt;td&gt;(низкий риск - простой блок)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;6 - 10&lt;/td&gt;&lt;td&gt;(низкий риск - хорошо структурированный стабильный блок)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;11 - 20&lt;/td&gt;&lt;td&gt;(умеренный риск - немного сложный блок)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td&gt;21 - 30&lt;/td&gt;&lt;td&gt;(более чем умеренный риск - более сложный блок)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td&gt;31 - 40&lt;/td&gt;&lt;td&gt;(высокий риск - сложный, аварийный блок)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&amp;gt; 40&lt;/td&gt;&lt;td&gt;(очень высокий риск - нестабильный блок, подвержен ошибкам)&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="95"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Type:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Class&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Function&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;M&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Method&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Тип:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Класс&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Функция&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;M&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Метод&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="199"/>
-        <source>Errors</source>
-        <translation>Ошибки</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Start</source>
+      <translation>Старт</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="360"/>
-        <source>Preparing files...</source>
-        <translation>Подготовка файлов...</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="107"/>
-        <source>Press to start the calculation</source>
-        <translation>Выполнить оценку кода</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Type</source>
+      <translation>Тип</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="149"/>
-        <source>Begin</source>
-        <translation>Начальная строка блока</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Name</source>
+      <translation>Имя</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="210"/>
-        <source>Shows the progress of the calculation</source>
-        <translation>Отображение процесса выполнения оценки</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="124"/>
-        <source>Collapse all</source>
-        <translation>Свернуть все</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Complexity</source>
+      <translation>Сложность</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="126"/>
-        <source>Expand all</source>
-        <translation>Развернуть все</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="29"/>
-        <source>Minimum Rank:</source>
-        <translation>Мин. уровень:</translation>
-    </message>
-    <message>
-        <location filename="../CyclomaticComplexityDialog.ui" line="36"/>
-        <source>Select the minimum rank of items to be shown</source>
-        <translation>Выбор минимального уровня сложности для отображения</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Rank</source>
+      <translation>Уровень</translation>
     </message>
     <message>
-        <location filename="../CyclomaticComplexityDialog.py" line="490"/>
-        <source>&lt;b&gt;Summary:&lt;/b&gt;&lt;br/&gt;{0} blocks (classes, functions, methods) analyzed.&lt;br/&gt;Average complexity: {7} ({8})&lt;table&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{1} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{2} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{3} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{4} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{5} blocks&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{6} blocks&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation>&lt;b&gt;Сводка:&lt;/b&gt;&lt;br/&gt;{0} блоков (классов, функций, методов) проанализировано.&lt;br/&gt;Средняя сложность: {7} ({8})&lt;table&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{1} блоков&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{2} блоков&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{3} блоков&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;D&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{4} блоков&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;E&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{5} блоков&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width=30&gt;&lt;b&gt;F&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{6} блоков&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
-    </message>
-</context>
-<context>
-    <name>MaintainabilityIndexDialog</name>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="14"/>
-        <source>Maintainability Index</source>
-        <translation>Индекс сложности поддержки</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Begin</source>
+      <translation>Начальная строка блока</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="48"/>
-        <source>Exclude Files:</source>
-        <translation>Исключить файлы:</translation>
-    </message>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="55"/>
-        <source>Enter filename patterns of files to be excluded separated by a comma</source>
-        <translation>Введите шаблоны имен для исключаемых файлов, разделенные запятыми</translation>
-    </message>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="75"/>
-        <source>Start</source>
-        <translation>Старт</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>Shows the progress of the calculation</source>
+      <translation>Отображение процесса выполнения оценки</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="89"/>
-        <source>Name</source>
-        <translation>Имя файла</translation>
+      <location filename="../CyclomaticComplexityDialog.ui" line="0" />
+      <source>%v/%m Files</source>
+      <translation>%v из %m файлов</translation>
+    </message>
+  </context>
+  <context>
+    <name>MaintainabilityIndexDialog</name>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.py" line="69" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Rank&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;MI Score&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Maintainability&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;100 - 20&lt;/td&gt;&lt;td&gt;very high&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;19 - 10&lt;/td&gt;&lt;td&gt;medium&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;9 - 0&lt;/td&gt;&lt;td&gt;extremely low&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Уровень&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;MI оценка&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Сложность поддержки&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;100 - 20&lt;/td&gt;&lt;td&gt;очень высокая&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;19 - 10&lt;/td&gt;&lt;td&gt;средняя&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;9 - 0&lt;/td&gt;&lt;td&gt;крайне низкая&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="94"/>
-        <source>Score</source>
-        <translation>Оценка</translation>
-    </message>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="99"/>
-        <source>Rank</source>
-        <translation>Уровень</translation>
-    </message>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="153"/>
-        <source>%v/%m Files</source>
-        <translation>%v из %m файлов</translation>
+      <location filename="../MaintainabilityIndexDialog.py" line="144" />
+      <source>Errors</source>
+      <translation>Ошибки</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.py" line="124"/>
-        <source>Errors</source>
-        <translation>Ошибки</translation>
+      <location filename="../MaintainabilityIndexDialog.py" line="292" />
+      <source>Preparing files...</source>
+      <translation>Подготовка файлов...</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.py" line="268"/>
-        <source>Preparing files...</source>
-        <translation>Подготовка файлов...</translation>
+      <location filename="../MaintainabilityIndexDialog.py" line="402" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Summary:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{0} files&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{1} files&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{2} files&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Сводка:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{0} файлов&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{1} файлов&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align='right'&gt;{2} файлов&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="72"/>
-        <source>Press to start the calculation</source>
-        <translation>Выполнить оценку кода</translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Maintainability Index</source>
+      <translation>Индекс сложности поддержки</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="144"/>
-        <source>Shows the progress of the calculation</source>
-        <translation>Отображение процесса выполнения оценки</translation>
-    </message>
-    <message>
-        <location filename="../MaintainabilityIndexDialog.ui" line="17"/>
-        <source>&lt;b&gt;Maintainability Index&lt;/b&gt;
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>&lt;b&gt;Maintainability Index&lt;/b&gt;
 &lt;p&gt;This dialog shows the maintainability index and rank.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Индекс сложности поддержки&lt;/b&gt;
+      <translation>&lt;b&gt;Индекс сложности поддержки&lt;/b&gt;
 &lt;p&gt;Данный диалог отображает индекс сложности  поддержки и его уровень.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.py" line="380"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Summary:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{0} files&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{1} files&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{2} files&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation>&lt;table&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Сводка:&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{0} файлов&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{1} файлов&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;right&apos;&gt;{2} файлов&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Exclude Files:</source>
+      <translation>Исключить файлы:</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Enter filename patterns of files to be excluded separated by a comma</source>
+      <translation>Введите шаблоны имен для исключаемых файлов, разделенные запятыми</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Press to start the calculation</source>
+      <translation>Выполнить оценку кода</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Start</source>
+      <translation>Старт</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Name</source>
+      <translation>Имя файла</translation>
     </message>
     <message>
-        <location filename="../MaintainabilityIndexDialog.py" line="66"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Rank&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;MI Score&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Maintainability&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;100 - 20&lt;/td&gt;&lt;td&gt;very high&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;19 - 10&lt;/td&gt;&lt;td&gt;medium&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;9 - 0&lt;/td&gt;&lt;td&gt;extremely low&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Уровень&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;MI оценка&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Сложность поддержки&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;A&lt;/b&gt;&lt;/td&gt;&lt;td&gt;100 - 20&lt;/td&gt;&lt;td&gt;очень высокая&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;B&lt;/b&gt;&lt;/td&gt;&lt;td&gt;19 - 10&lt;/td&gt;&lt;td&gt;средняя&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C&lt;/b&gt;&lt;/td&gt;&lt;td&gt;9 - 0&lt;/td&gt;&lt;td&gt;крайне низкая&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Score</source>
+      <translation>Оценка</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Rank</source>
+      <translation>Уровень</translation>
     </message>
-</context>
-<context>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>Shows the progress of the calculation</source>
+      <translation>Отображение процесса выполнения оценки</translation>
+    </message>
+    <message>
+      <location filename="../MaintainabilityIndexDialog.ui" line="0" />
+      <source>%v/%m Files</source>
+      <translation>%v из %m файлов</translation>
+    </message>
+  </context>
+  <context>
     <name>RadonMetricsPlugin</name>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="154"/>
-        <source>Python 3 batch job</source>
-        <translation>Пакетное задание Python 3</translation>
-    </message>
-    <message>
-        <location filename="../../PluginMetricsRadon.py" line="197"/>
-        <source>Unknown metrics result received ({0}).</source>
-        <translation>Получено ({0}) оценок неизвестной метрики.</translation>
+      <location filename="../../PluginMetricsRadon.py" line="156" />
+      <source>Python 3 batch job</source>
+      <translation>Пакетное задание Python 3</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="949"/>
-        <source>Radon</source>
-        <translation>Radon</translation>
+      <location filename="../../PluginMetricsRadon.py" line="202" />
+      <source>Unknown metrics result received ({0}).</source>
+      <translation>Получено ({0}) оценок неизвестной метрики.</translation>
+    </message>
+    <message>
+      <location filename="../../PluginMetricsRadon.py" line="968" />
+      <location filename="../../PluginMetricsRadon.py" line="630" />
+      <location filename="../../PluginMetricsRadon.py" line="465" />
+      <location filename="../../PluginMetricsRadon.py" line="395" />
+      <source>Radon</source>
+      <translation>Radon</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="633"/>
-        <source>Code Metrics</source>
-        <translation>Метрики кода</translation>
+      <location filename="../../PluginMetricsRadon.py" line="639" />
+      <location filename="../../PluginMetricsRadon.py" line="473" />
+      <location filename="../../PluginMetricsRadon.py" line="404" />
+      <source>Code Metrics</source>
+      <translation>Метрики кода</translation>
+    </message>
+    <message>
+      <location filename="../../PluginMetricsRadon.py" line="640" />
+      <location filename="../../PluginMetricsRadon.py" line="474" />
+      <location filename="../../PluginMetricsRadon.py" line="405" />
+      <source>Code &amp;Metrics...</source>
+      <translation>&amp;Метрики кода...</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="633"/>
-        <source>Code &amp;Metrics...</source>
-        <translation>&amp;Метрики кода...</translation>
+      <location filename="../../PluginMetricsRadon.py" line="642" />
+      <location filename="../../PluginMetricsRadon.py" line="477" />
+      <location filename="../../PluginMetricsRadon.py" line="408" />
+      <source>Show raw code metrics.</source>
+      <translation>Отображение raw метрики кода.</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="637"/>
-        <source>Show raw code metrics.</source>
-        <translation>Отображение raw метрики кода.</translation>
+      <location filename="../../PluginMetricsRadon.py" line="644" />
+      <location filename="../../PluginMetricsRadon.py" line="478" />
+      <location filename="../../PluginMetricsRadon.py" line="409" />
+      <source>&lt;b&gt;Code Metrics...&lt;/b&gt;&lt;p&gt;This calculates raw code metrics of Python files and shows the amount of lines of code, logical lines of code, source lines of code, comment lines, multi-line strings and blank lines.&lt;/p&gt;</source>
+      <translation>&lt;b&gt;Метрики кода...&lt;/b&gt;&lt;p&gt;Это вычисление raw-метрик кода файлов Python и и показ количества строк кода, строк ветвления кода, строк исходного кода, строк комментариев, строк многострочного текста и пустых строк.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="639"/>
-        <source>&lt;b&gt;Code Metrics...&lt;/b&gt;&lt;p&gt;This calculates raw code metrics of Python files and shows the amount of lines of code, logical lines of code, source lines of code, comment lines, multi-line strings and blank lines.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Метрики кода...&lt;/b&gt;&lt;p&gt;Это вычисление raw-метрик кода файлов Python и и показ количества строк кода, строк ветвления кода, строк исходного кода, строк комментариев, строк многострочного текста и пустых строк.&lt;/p&gt;</translation>
+      <location filename="../../PluginMetricsRadon.py" line="656" />
+      <location filename="../../PluginMetricsRadon.py" line="489" />
+      <location filename="../../PluginMetricsRadon.py" line="421" />
+      <source>Maintainability Index</source>
+      <translation>Индекс сложности поддержки</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="650"/>
-        <source>Maintainability Index</source>
-        <translation>Индекс сложности поддержки</translation>
+      <location filename="../../PluginMetricsRadon.py" line="657" />
+      <location filename="../../PluginMetricsRadon.py" line="490" />
+      <location filename="../../PluginMetricsRadon.py" line="422" />
+      <source>Maintainability &amp;Index...</source>
+      <translation>&amp;Индекс поддерживаемости...</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="650"/>
-        <source>Maintainability &amp;Index...</source>
-        <translation>&amp;Индекс поддерживаемости...</translation>
+      <location filename="../../PluginMetricsRadon.py" line="659" />
+      <location filename="../../PluginMetricsRadon.py" line="493" />
+      <location filename="../../PluginMetricsRadon.py" line="425" />
+      <source>Show the maintainability index for Python files.</source>
+      <translation>Отображение индекса сложности поддержки файлов Python.</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="654"/>
-        <source>Show the maintainability index for Python files.</source>
-        <translation>Отображение индекса сложности поддержки файлов Python.</translation>
+      <location filename="../../PluginMetricsRadon.py" line="661" />
+      <location filename="../../PluginMetricsRadon.py" line="494" />
+      <location filename="../../PluginMetricsRadon.py" line="426" />
+      <source>&lt;b&gt;Maintainability Index...&lt;/b&gt;&lt;p&gt;This calculates the maintainability index of Python files and shows it together with a ranking.&lt;/p&gt;</source>
+      <translation>&lt;b&gt;Индекс сложности поддержки кода...&lt;/b&gt;&lt;p&gt;Вычисляет индекс поддерживаемости файлов Python и показывает его значение и уровень.&lt;/p&gt;</translation>
+    </message>
+    <message>
+      <location filename="../../PluginMetricsRadon.py" line="673" />
+      <location filename="../../PluginMetricsRadon.py" line="503" />
+      <location filename="../../PluginMetricsRadon.py" line="436" />
+      <source>Cyclomatic Complexity</source>
+      <translation>Цикломатическая сложность</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="656"/>
-        <source>&lt;b&gt;Maintainability Index...&lt;/b&gt;&lt;p&gt;This calculates the maintainability index of Python files and shows it together with a ranking.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Индекс сложности поддержки кода...&lt;/b&gt;&lt;p&gt;Вычисляет индекс поддерживаемости файлов Python и показывает его значение и уровень.&lt;/p&gt;</translation>
+      <location filename="../../PluginMetricsRadon.py" line="674" />
+      <location filename="../../PluginMetricsRadon.py" line="504" />
+      <location filename="../../PluginMetricsRadon.py" line="437" />
+      <source>Cyclomatic &amp;Complexity...</source>
+      <translation>Цикломатическая &amp;сложность...</translation>
+    </message>
+    <message>
+      <location filename="../../PluginMetricsRadon.py" line="676" />
+      <location filename="../../PluginMetricsRadon.py" line="507" />
+      <location filename="../../PluginMetricsRadon.py" line="440" />
+      <source>Show the cyclomatic complexity for Python files.</source>
+      <translation>Отображение цикломатической сложности файлов Python.</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="667"/>
-        <source>Cyclomatic Complexity</source>
-        <translation>Цикломатическая сложность</translation>
+      <location filename="../../PluginMetricsRadon.py" line="678" />
+      <location filename="../../PluginMetricsRadon.py" line="508" />
+      <location filename="../../PluginMetricsRadon.py" line="441" />
+      <source>&lt;b&gt;Cyclomatic Complexity...&lt;/b&gt;&lt;p&gt;This calculates the cyclomatic complexity of Python files and shows it together with a ranking.&lt;/p&gt;</source>
+      <translation>&lt;b&gt;Цикломатическая сложность...&lt;/b&gt;&lt;p&gt;Вычисляет цикломатическую сложность файлов Python и показывает ее уровень.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="667"/>
-        <source>Cyclomatic &amp;Complexity...</source>
-        <translation>Цикломатическая &amp;сложность...</translation>
+      <location filename="../../PluginMetricsRadon.py" line="969" />
+      <source>&lt;p&gt;&lt;b&gt;Radon Version {0}&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Radon is a Python tool that computes various metrics from the source code. Radon can compute:&lt;ul&gt;&lt;li&gt;&lt;b&gt;Raw&lt;/b&gt; metrics (these include SLOC, comment lines, blank lines, multi line strings, ...)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Maintainability Index&lt;/b&gt; (the one used in Visual Studio)&lt;/li&gt;&lt;li&gt;&lt;b&gt;McCabe's complexity&lt;/b&gt;, i.e. cyclomatic complexity&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;</source>
+      <translation>&lt;p&gt;&lt;b&gt;Версия Radon {0}&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Radon является инструментом Python, позволяющим вычислять различные метрики исходного кода. Radon позволяет оценить:&lt;ul&gt;&lt;li&gt;&lt;b&gt;Raw&lt;/b&gt; метрики (к их числу  относятся  SLOC, строки коментариев, пустые строки, многострочный текст, ...)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Индекс сложности поддержки (качества кода)&lt;/b&gt; (применяется в Visual Studio)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Мак-Кейба сложность&lt;/b&gt;, то есть цикломатическая сложность&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;</translation>
+    </message>
+  </context>
+  <context>
+    <name>RawMetricsDialog</name>
+    <message>
+      <location filename="../RawMetricsDialog.py" line="73" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;SLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Source lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Logical lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comment lines&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&amp;nbsp;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comment lines not containing code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Multi&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Lines in multi line strings&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Blank lines&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Comment Statistics:&lt;/b&gt;&lt;/td&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments to lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % S&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments to source lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C + M % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments plus multi line strings to lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Количество строк кода&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;SLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Количество исходных строк кода&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Количество логических строк кода&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Количество строк комментариев&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&amp;nbsp;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Количество строк комментариев не содержащих код&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Multi&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Количество строк многострочного текста&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Количество пустых строк&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Статистика коментариев::&lt;/b&gt;&lt;/td&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Процент строк комментариев к общему числу строк&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % S&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Процент строк комментариев к числу строк исходного кода&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C + M % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Процент строк комментариев + многострочного текста к  общему числу строк&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="671"/>
-        <source>Show the cyclomatic complexity for Python files.</source>
-        <translation>Отображение цикломатической сложности файлов Python.</translation>
+      <location filename="../RawMetricsDialog.py" line="143" />
+      <source>Errors</source>
+      <translation>Ошибки</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.py" line="289" />
+      <source>Preparing files...</source>
+      <translation>Подготовка файлов...</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="673"/>
-        <source>&lt;b&gt;Cyclomatic Complexity...&lt;/b&gt;&lt;p&gt;This calculates the cyclomatic complexity of Python files and shows it together with a ranking.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Цикломатическая сложность...&lt;/b&gt;&lt;p&gt;Вычисляет цикломатическую сложность файлов Python и показывает ее уровень.&lt;/p&gt;</translation>
+      <location filename="../RawMetricsDialog.py" line="430" />
+      <source>Files</source>
+      <translation>Файлы</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <location filename="../RawMetricsDialog.py" line="432" />
+      <source>LOC</source>
+      <translation>LOC</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <location filename="../RawMetricsDialog.py" line="434" />
+      <source>SLOC</source>
+      <translation>SLOC</translation>
     </message>
     <message>
-        <location filename="../../PluginMetricsRadon.py" line="949"/>
-        <source>&lt;p&gt;&lt;b&gt;Radon Version {0}&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Radon is a Python tool that computes various metrics from the source code. Radon can compute:&lt;ul&gt;&lt;li&gt;&lt;b&gt;Raw&lt;/b&gt; metrics (these include SLOC, comment lines, blank lines, multi line strings, ...)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Maintainability Index&lt;/b&gt; (the one used in Visual Studio)&lt;/li&gt;&lt;li&gt;&lt;b&gt;McCabe&apos;s complexity&lt;/b&gt;, i.e. cyclomatic complexity&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;</source>
-        <translation>&lt;p&gt;&lt;b&gt;Версия Radon {0}&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Radon является инструментом Python, позволяющим вычислять различные метрики исходного кода. Radon позволяет оценить:&lt;ul&gt;&lt;li&gt;&lt;b&gt;Raw&lt;/b&gt; метрики (к их числу  относятся  SLOC, строки коментариев, пустые строки, многострочный текст, ...)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Индекс сложности поддержки (качества кода)&lt;/b&gt; (применяется в Visual Studio)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Мак-Кейба сложность&lt;/b&gt;, то есть цикломатическая сложность&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <location filename="../RawMetricsDialog.py" line="436" />
+      <source>LLOC</source>
+      <translation>LLOC</translation>
     </message>
-</context>
-<context>
-    <name>RawMetricsDialog</name>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="14"/>
-        <source>Code Metrics</source>
-        <translation>Метрики кода</translation>
+      <location filename="../RawMetricsDialog.py" line="438" />
+      <source>Comment Lines</source>
+      <translation>Comment Lines</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <location filename="../RawMetricsDialog.py" line="441" />
+      <source>Empty Comments</source>
+      <translation>Empty Comments</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="17"/>
-        <source>&lt;b&gt;Code Metrics&lt;/b&gt;
+      <location filename="../RawMetricsDialog.py" line="444" />
+      <source>Multiline Strings</source>
+      <translation>Multiline Strings</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.py" line="447" />
+      <source>Empty Lines</source>
+      <translation>Empty Lines</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Code Metrics</source>
+      <translation>Метрики кода</translation>
+    </message>
+    <message>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>&lt;b&gt;Code Metrics&lt;/b&gt;
 &lt;p&gt;This dialog shows some code metrics.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Метрики кода&lt;/b&gt;
+      <translation>&lt;b&gt;Метрики кода&lt;/b&gt;
 &lt;p&gt;Данный диалог отображает некоторые метрики кода.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="48"/>
-        <source>Exclude Files:</source>
-        <translation>Исключить файлы:</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.ui" line="55"/>
-        <source>Enter filename patterns of files to be excluded separated by a comma</source>
-        <translation>Введите шаблоны имен для исключаемых файлов, разделенные запятыми</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Exclude Files:</source>
+      <translation>Исключить файлы:</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="75"/>
-        <source>Start</source>
-        <translation>Старт</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Enter filename patterns of files to be excluded separated by a comma</source>
+      <translation>Введите шаблоны имен для исключаемых файлов, разделенные запятыми</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="89"/>
-        <source>Name</source>
-        <translation>Имя файла</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="425"/>
-        <source>LOC</source>
-        <translation>LOC</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="427"/>
-        <source>SLOC</source>
-        <translation>SLOC</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Press to start the calculation</source>
+      <translation>Выполнить оценку кода</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="429"/>
-        <source>LLOC</source>
-        <translation>LLOC</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.ui" line="109"/>
-        <source>Comments</source>
-        <translation>Comments</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.ui" line="119"/>
-        <source>Multi</source>
-        <translation>Multi</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Start</source>
+      <translation>Старт</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="124"/>
-        <source>Empty</source>
-        <translation>Empty</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Name</source>
+      <translation>Имя файла</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="129"/>
-        <source>C % L</source>
-        <translation>C % L</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Comments</source>
+      <translation>Comments</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="134"/>
-        <source>C % S</source>
-        <translation>C % S</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.ui" line="139"/>
-        <source>C + M % L</source>
-        <translation>C + M % L</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Multi</source>
+      <translation>Multi</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="164"/>
-        <source>Summary</source>
-        <translation>Итого</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.ui" line="169"/>
-        <source>#</source>
-        <translation>#</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Empty</source>
+      <translation>Empty</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="208"/>
-        <source>%v/%m Files</source>
-        <translation>%v из %m файлов</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>C % L</source>
+      <translation>C % L</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="139"/>
-        <source>Errors</source>
-        <translation>Ошибки</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>C % S</source>
+      <translation>C % S</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="281"/>
-        <source>Preparing files...</source>
-        <translation>Подготовка файлов...</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="423"/>
-        <source>Files</source>
-        <translation>Файлы</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>C + M % L</source>
+      <translation>C + M % L</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="72"/>
-        <source>Press to start the calculation</source>
-        <translation>Выполнить оценку кода</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Summary</source>
+      <translation>Итого</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.ui" line="199"/>
-        <source>Shows the progress of the calculation</source>
-        <translation>Отображение процесса выполнения оценки</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="431"/>
-        <source>Comment Lines</source>
-        <translation>Comment Lines</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>#</source>
+      <translation>#</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="437"/>
-        <source>Multiline Strings</source>
-        <translation>Multiline Strings</translation>
-    </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="440"/>
-        <source>Empty Lines</source>
-        <translation>Empty Lines</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>Shows the progress of the calculation</source>
+      <translation>Отображение процесса выполнения оценки</translation>
     </message>
     <message>
-        <location filename="../RawMetricsDialog.py" line="434"/>
-        <source>Empty Comments</source>
-        <translation>Empty Comments</translation>
+      <location filename="../RawMetricsDialog.ui" line="0" />
+      <source>%v/%m Files</source>
+      <translation>%v из %m файлов</translation>
     </message>
-    <message>
-        <location filename="../RawMetricsDialog.py" line="71"/>
-        <source>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;SLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Source lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Logical lines of code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comment lines&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&amp;nbsp;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comment lines not containing code&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Multi&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Lines in multi line strings&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Blank lines&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Comment Statistics:&lt;/b&gt;&lt;/td&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments to lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % S&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments to source lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C + M % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Comments plus multi line strings to lines ratio&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-        <translation>&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Количество строк кода&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;SLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Количество исходных строк кода&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;LLOC&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Количество логических строк кода&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Количество строк комментариев&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&amp;nbsp;Comments&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Количество строк комментариев не содержащих код&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Multi&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Количество строк многострочного текста&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Empty&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Количество пустых строк&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=2&gt;&lt;b&gt;Статистика коментариев::&lt;/b&gt;&lt;/td&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Процент строк комментариев к общему числу строк&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C % S&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Процент строк комментариев к числу строк исходного кода&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;C + M % L&lt;/b&gt;&lt;/td&gt;&lt;td&gt;Процент строк комментариев + многострочного текста к  общему числу строк&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</translation>
-    </message>
-</context>
+  </context>
 </TS>

eric ide

mercurial