Merged with default branch to prepare release 21.6. maintenance release-21.06

Thu, 03 Jun 2021 11:39:23 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Thu, 03 Jun 2021 11:39:23 +0200
branch
maintenance
changeset 8400
b3eefd7e58d1
parent 8274
197414ba11cc (current diff)
parent 8397
40b5069e9f4c (diff)
child 8401
832e9474cf77

Merged with default branch to prepare release 21.6.

docs/changelog file | annotate | diff | comparison | revisions
eric6/APIs/Python3/eric6.api file | annotate | diff | comparison | revisions
eric6/DebugClients/Python/DebugClientBase.py file | annotate | diff | comparison | revisions
eric6/Debugger/DebugServer.py file | annotate | diff | comparison | revisions
eric6/Debugger/DebugUI.py file | annotate | diff | comparison | revisions
eric6/Documentation/Help/source.qch file | annotate | diff | comparison | revisions
eric6/Documentation/Help/source.qhp file | annotate | diff | comparison | revisions
eric6/Globals/__init__.py file | annotate | diff | comparison | revisions
eric6/Graphics/ApplicationDiagramBuilder.py file | annotate | diff | comparison | revisions
eric6/Graphics/ImportsDiagramBuilder.py file | annotate | diff | comparison | revisions
eric6/Graphics/PackageDiagramBuilder.py file | annotate | diff | comparison | revisions
eric6/Graphics/UMLClassDiagramBuilder.py file | annotate | diff | comparison | revisions
eric6/Graphics/UMLDialog.py file | annotate | diff | comparison | revisions
eric6/Graphics/UMLGraphicsView.py file | annotate | diff | comparison | revisions
eric6/PluginManager/PluginManager.py file | annotate | diff | comparison | revisions
eric6/Plugins/VcsPlugins/vcsMercurial/hg.py file | annotate | diff | comparison | revisions
eric6/Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py file | annotate | diff | comparison | revisions
eric6/Preferences/__init__.py file | annotate | diff | comparison | revisions
eric6/Project/Project.py file | annotate | diff | comparison | revisions
eric6/PyUnit/UnittestDialog.py file | annotate | diff | comparison | revisions
eric6/QScintilla/Editor.py file | annotate | diff | comparison | revisions
eric6/QScintilla/Lexers/__init__.py file | annotate | diff | comparison | revisions
eric6/QScintilla/MiniEditor.py file | annotate | diff | comparison | revisions
eric6/Tasks/TaskViewer.py file | annotate | diff | comparison | revisions
eric6/UI/BrowserModel.py file | annotate | diff | comparison | revisions
eric6/UI/UserInterface.py file | annotate | diff | comparison | revisions
eric6/Utilities/BackgroundClient.py file | annotate | diff | comparison | revisions
eric6/Utilities/BackgroundService.py file | annotate | diff | comparison | revisions
eric6/Utilities/ModuleParser.py file | annotate | diff | comparison | revisions
eric6/Utilities/__init__.py file | annotate | diff | comparison | revisions
eric6/ViewManager/ViewManager.py file | annotate | diff | comparison | revisions
eric6/WebBrowser/Sync/FtpSyncHandler.py file | annotate | diff | comparison | revisions
eric6/i18n/eric6_cs.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_de.qm file | annotate | diff | comparison | revisions
eric6/i18n/eric6_de.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_empty.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_en.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_es.qm file | annotate | diff | comparison | revisions
eric6/i18n/eric6_es.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_fr.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_it.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_pt.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_ru.qm file | annotate | diff | comparison | revisions
eric6/i18n/eric6_ru.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_tr.ts file | annotate | diff | comparison | revisions
eric6/i18n/eric6_zh_CN.ts file | annotate | diff | comparison | revisions
scripts/install.py file | annotate | diff | comparison | revisions
--- a/.hgignore	Sat May 01 14:27:38 2021 +0200
+++ b/.hgignore	Thu Jun 03 11:39:23 2021 +0200
@@ -2,6 +2,7 @@
 glob:_eric5project
 glob:.eric6project
 glob:_eric6project
+glob:.eric7project
 glob:.ropeproject
 glob:_ropeproject
 glob:.directory
--- a/docs/changelog	Sat May 01 14:27:38 2021 +0200
+++ b/docs/changelog	Thu Jun 03 11:39:23 2021 +0200
@@ -1,5 +1,19 @@
 Change Log
 ----------
+Version 21.6:
+- bug fixes
+- Tasks
+  -- made the task properties dialog adapt to the task kind
+  -- added code to get typed manual tasks
+- UML Diagrams
+  -- extended the class items to show class attributes
+  -- added code to load a saved UML diagram via the file browser or
+     the project others browser
+  -- improved the diagram layout of the Import Diagram and the
+     Application Diagram
+  -- added code to save and load diagrams as JSON files
+  -- changed print code
+
 Version 21.5:
 - bug fixes
 - Code Style Checker
--- a/eric6.epj	Sat May 01 14:27:38 2021 +0200
+++ b/eric6.epj	Thu Jun 03 11:39:23 2021 +0200
@@ -2275,7 +2275,9 @@
       "eric6/Plugins/CheckerPlugins/CodeStyleChecker/Simplify/SimplifyNodeVisitor.py",
       "eric6/Plugins/CheckerPlugins/CodeStyleChecker/Annotations/AnnotationsFunctionVisitor.py",
       "eric6/Plugins/CheckerPlugins/CodeStyleChecker/Annotations/AnnotationsEnums.py",
-      "eric6/Plugins/CheckerPlugins/CodeStyleChecker/Annotations/AnnotationsCheckerDefaults.py"
+      "eric6/Plugins/CheckerPlugins/CodeStyleChecker/Annotations/AnnotationsCheckerDefaults.py",
+      "eric6/E5Network/E5JsonClient.py",
+      "eric6/E5Network/E5JsonServer.py"
     ],
     "SPELLEXCLUDES": "Dictionaries/excludes.dic",
     "SPELLLANGUAGE": "en_US",
--- a/eric6/APIs/Python3/eric6.api	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/APIs/Python3/eric6.api	Thu Jun 03 11:39:23 2021 +0200
@@ -1654,18 +1654,18 @@
 eric6.E5Gui.E5ZoomWidget.E5ZoomWidget?1(outPix, inPix, resetPix, parent=None)
 eric6.E5Network.E5Ftp.E5Ftp.connect?4(host="", port=0, timeout=-999)
 eric6.E5Network.E5Ftp.E5Ftp.login?4(user="", password="", acct="")
-eric6.E5Network.E5Ftp.E5Ftp.setProxy?4(proxyType=E5FtpProxyType.NoProxy, proxyHost="", proxyPort=ftplib.FTP_PORT, proxyUser="", proxyPassword="", proxyAccount="")
+eric6.E5Network.E5Ftp.E5Ftp.setProxy?4(proxyType=E5FtpProxyType.NO_PROXY, proxyHost="", proxyPort=ftplib.FTP_PORT, proxyUser="", proxyPassword="", proxyAccount="")
 eric6.E5Network.E5Ftp.E5Ftp.setProxyAuthentication?4(proxyUser="", proxyPassword="", proxyAccount="")
-eric6.E5Network.E5Ftp.E5Ftp?1(host="", user="", password="", acct="", proxyType=E5FtpProxyType.NoProxy, proxyHost="", proxyPort=ftplib.FTP_PORT, proxyUser="", proxyPassword="", proxyAccount="", timeout=_GLOBAL_DEFAULT_TIMEOUT)
-eric6.E5Network.E5Ftp.E5FtpProxyType.AuthResp?7
-eric6.E5Network.E5Ftp.E5FtpProxyType.Bluecoat?7
-eric6.E5Network.E5Ftp.E5FtpProxyType.NoProxy?7
-eric6.E5Network.E5Ftp.E5FtpProxyType.NonAuthorizing?7
-eric6.E5Network.E5Ftp.E5FtpProxyType.Open?7
-eric6.E5Network.E5Ftp.E5FtpProxyType.ProxyuserAtServer?7
-eric6.E5Network.E5Ftp.E5FtpProxyType.Site?7
-eric6.E5Network.E5Ftp.E5FtpProxyType.UserAtProxyuserAtServer?7
-eric6.E5Network.E5Ftp.E5FtpProxyType.UserAtServer?7
+eric6.E5Network.E5Ftp.E5Ftp?1(host="", user="", password="", acct="", proxyType=E5FtpProxyType.NO_PROXY, proxyHost="", proxyPort=ftplib.FTP_PORT, proxyUser="", proxyPassword="", proxyAccount="", timeout=_GLOBAL_DEFAULT_TIMEOUT)
+eric6.E5Network.E5Ftp.E5FtpProxyType.AUTH_RESP?7
+eric6.E5Network.E5Ftp.E5FtpProxyType.BLUECOAT?7
+eric6.E5Network.E5Ftp.E5FtpProxyType.NON_AUTHORIZING?7
+eric6.E5Network.E5Ftp.E5FtpProxyType.NO_PROXY?7
+eric6.E5Network.E5Ftp.E5FtpProxyType.OPEN?7
+eric6.E5Network.E5Ftp.E5FtpProxyType.PROXYUSER_SERVER?7
+eric6.E5Network.E5Ftp.E5FtpProxyType.SITE?7
+eric6.E5Network.E5Ftp.E5FtpProxyType.USER_PROXYUSER_SERVER?7
+eric6.E5Network.E5Ftp.E5FtpProxyType.USER_SERVER?7
 eric6.E5Network.E5GoogleMail.E5GoogleMail.sendMessage?4(message)
 eric6.E5Network.E5GoogleMail.E5GoogleMail.sendResult?7
 eric6.E5Network.E5GoogleMail.E5GoogleMail?1(parent=None)
@@ -1680,6 +1680,18 @@
 eric6.E5Network.E5GoogleMailHelpers.TOKEN_FILE?7
 eric6.E5Network.E5GoogleMailHelpers.getInstallCommand?4()
 eric6.E5Network.E5GoogleMailHelpers.isClientSecretFileAvailable?4()
+eric6.E5Network.E5JsonClient.E5JsonClient.handleCall?4(method, params)
+eric6.E5Network.E5JsonClient.E5JsonClient.run?4()
+eric6.E5Network.E5JsonClient.E5JsonClient.sendJson?4(command, params)
+eric6.E5Network.E5JsonClient.E5JsonClient?1(host, port, idString="")
+eric6.E5Network.E5JsonServer.E5JsonServer.connectionNames?4()
+eric6.E5Network.E5JsonServer.E5JsonServer.handleCall?4(method, params)
+eric6.E5Network.E5JsonServer.E5JsonServer.handleNewConnection?4()
+eric6.E5Network.E5JsonServer.E5JsonServer.sendJson?4(command, params, flush=False, idString="")
+eric6.E5Network.E5JsonServer.E5JsonServer.startClient?4(interpreter, clientScript, clientArgs, idString="", environment=None)
+eric6.E5Network.E5JsonServer.E5JsonServer.stopAllClients?4()
+eric6.E5Network.E5JsonServer.E5JsonServer.stopClient?4(idString="")
+eric6.E5Network.E5JsonServer.E5JsonServer?1(name="", multiplex=False, parent=None)
 eric6.E5Network.E5NetworkHeaderDetailsDialog.E5NetworkHeaderDetailsDialog.setData?4(name, value)
 eric6.E5Network.E5NetworkHeaderDetailsDialog.E5NetworkHeaderDetailsDialog?1(parent=None)
 eric6.E5Network.E5NetworkProxyFactory.E5NetworkProxyFactory.queryProxy?4(query)
@@ -1921,7 +1933,8 @@
 eric6.Globals.getInstallInfoFilePath?4()
 eric6.Globals.getPyQt5ModulesDirectory?4()
 eric6.Globals.getPyQtToolsPath?4(version=5)
-eric6.Globals.getPythonModulesDirectory?4()
+eric6.Globals.getPythonLibraryDirectory?4()
+eric6.Globals.getPythonModulesDirectory?7
 eric6.Globals.getQtBinariesPath?4()
 eric6.Globals.getWebBrowserSupport?4()
 eric6.Globals.isGnomeDesktop?4()
@@ -1951,11 +1964,15 @@
 eric6.Globals.toList?4(value)
 eric6.Globals.versionToTuple?4(version, length=3)
 eric6.Graphics.ApplicationDiagramBuilder.ApplicationDiagramBuilder.buildDiagram?4()
+eric6.Graphics.ApplicationDiagramBuilder.ApplicationDiagramBuilder.fromDict?4(version, data)
 eric6.Graphics.ApplicationDiagramBuilder.ApplicationDiagramBuilder.getPersistenceData?4()
 eric6.Graphics.ApplicationDiagramBuilder.ApplicationDiagramBuilder.parsePersistenceData?4(version, data)
+eric6.Graphics.ApplicationDiagramBuilder.ApplicationDiagramBuilder.toDict?4()
 eric6.Graphics.ApplicationDiagramBuilder.ApplicationDiagramBuilder?1(dialog, view, project, noModules=False)
 eric6.Graphics.AssociationItem.AssociationItem.buildAssociationItemDataString?4()
+eric6.Graphics.AssociationItem.AssociationItem.fromDict?4(data, umlItems, colors=None)
 eric6.Graphics.AssociationItem.AssociationItem.parseAssociationItemDataString?4(data)
+eric6.Graphics.AssociationItem.AssociationItem.toDict?4()
 eric6.Graphics.AssociationItem.AssociationItem.unassociate?4()
 eric6.Graphics.AssociationItem.AssociationItem.widgetMoved?4()
 eric6.Graphics.AssociationItem.AssociationItem?1(itemA, itemB, assocType=AssociationType.NORMAL, topToBottom=False, colors=None, parent=None)
@@ -1974,42 +1991,54 @@
 eric6.Graphics.AssociationItem.AssociationType.NORMAL?7
 eric6.Graphics.ClassItem.ClassItem.ItemType?7
 eric6.Graphics.ClassItem.ClassItem.buildItemDataString?4()
+eric6.Graphics.ClassItem.ClassItem.fromDict?4(data, colors=None)
 eric6.Graphics.ClassItem.ClassItem.isExternal?4()
 eric6.Graphics.ClassItem.ClassItem.paint?4(painter, option, widget=None)
 eric6.Graphics.ClassItem.ClassItem.parseItemDataString?4(version, data)
 eric6.Graphics.ClassItem.ClassItem.setModel?4(model)
+eric6.Graphics.ClassItem.ClassItem.toDict?4()
 eric6.Graphics.ClassItem.ClassItem?1(model=None, external=False, x=0, y=0, rounded=False, noAttrs=False, colors=None, parent=None, scene=None)
-eric6.Graphics.ClassItem.ClassModel.addAttribute?4(attribute)
+eric6.Graphics.ClassItem.ClassModel.addClassAttribute?4(attribute)
+eric6.Graphics.ClassItem.ClassModel.addInstanceAttribute?4(attribute)
 eric6.Graphics.ClassItem.ClassModel.addMethod?4(method)
-eric6.Graphics.ClassItem.ClassModel.getAttributes?4()
+eric6.Graphics.ClassItem.ClassModel.getClassAttributes?4()
+eric6.Graphics.ClassItem.ClassModel.getInstanceAttributes?4()
 eric6.Graphics.ClassItem.ClassModel.getMethods?4()
-eric6.Graphics.ClassItem.ClassModel?1(name, methods=None, attributes=None)
+eric6.Graphics.ClassItem.ClassModel?1(name, methods=None, instanceAttributes=None, classAttributes=None)
 eric6.Graphics.GraphicsUtilities._buildChildrenLists?5(routes)
 eric6.Graphics.GraphicsUtilities.sort?4(nodes, routes, noRecursion=False)
 eric6.Graphics.ImportsDiagramBuilder.ImportsDiagramBuilder.buildDiagram?4()
+eric6.Graphics.ImportsDiagramBuilder.ImportsDiagramBuilder.fromDict?4(version, data)
 eric6.Graphics.ImportsDiagramBuilder.ImportsDiagramBuilder.getPersistenceData?4()
 eric6.Graphics.ImportsDiagramBuilder.ImportsDiagramBuilder.initialize?4()
 eric6.Graphics.ImportsDiagramBuilder.ImportsDiagramBuilder.parsePersistenceData?4(version, data)
+eric6.Graphics.ImportsDiagramBuilder.ImportsDiagramBuilder.toDict?4()
 eric6.Graphics.ImportsDiagramBuilder.ImportsDiagramBuilder?1(dialog, view, project, package, showExternalImports=False)
 eric6.Graphics.ModuleItem.ModuleItem.ItemType?7
 eric6.Graphics.ModuleItem.ModuleItem.buildItemDataString?4()
+eric6.Graphics.ModuleItem.ModuleItem.fromDict?4(data, colors=None)
 eric6.Graphics.ModuleItem.ModuleItem.paint?4(painter, option, widget=None)
 eric6.Graphics.ModuleItem.ModuleItem.parseItemDataString?4(version, data)
 eric6.Graphics.ModuleItem.ModuleItem.setModel?4(model)
+eric6.Graphics.ModuleItem.ModuleItem.toDict?4()
 eric6.Graphics.ModuleItem.ModuleItem?1(model=None, x=0, y=0, rounded=False, colors=None, parent=None, scene=None)
 eric6.Graphics.ModuleItem.ModuleModel.addClass?4(classname)
 eric6.Graphics.ModuleItem.ModuleModel.getClasses?4()
 eric6.Graphics.ModuleItem.ModuleModel?1(name, classlist=None)
 eric6.Graphics.PackageDiagramBuilder.PackageDiagramBuilder.buildDiagram?4()
+eric6.Graphics.PackageDiagramBuilder.PackageDiagramBuilder.fromDict?4(version, data)
 eric6.Graphics.PackageDiagramBuilder.PackageDiagramBuilder.getPersistenceData?4()
 eric6.Graphics.PackageDiagramBuilder.PackageDiagramBuilder.initialize?4()
 eric6.Graphics.PackageDiagramBuilder.PackageDiagramBuilder.parsePersistenceData?4(version, data)
+eric6.Graphics.PackageDiagramBuilder.PackageDiagramBuilder.toDict?4()
 eric6.Graphics.PackageDiagramBuilder.PackageDiagramBuilder?1(dialog, view, project, package, noAttrs=False)
 eric6.Graphics.PackageItem.PackageItem.ItemType?7
 eric6.Graphics.PackageItem.PackageItem.buildItemDataString?4()
+eric6.Graphics.PackageItem.PackageItem.fromDict?4(data, colors=None)
 eric6.Graphics.PackageItem.PackageItem.paint?4(painter, option, widget=None)
 eric6.Graphics.PackageItem.PackageItem.parseItemDataString?4(version, data)
 eric6.Graphics.PackageItem.PackageItem.setModel?4(model)
+eric6.Graphics.PackageItem.PackageItem.toDict?4()
 eric6.Graphics.PackageItem.PackageItem?1(model=None, x=0, y=0, rounded=False, noModules=False, colors=None, parent=None, scene=None)
 eric6.Graphics.PackageItem.PackageModel.addModule?4(modulename)
 eric6.Graphics.PackageItem.PackageModel.getModules?4()
@@ -2030,29 +2059,37 @@
 eric6.Graphics.SvgDiagram.SvgDiagram.wheelEvent?4(evt)
 eric6.Graphics.SvgDiagram.SvgDiagram?1(svgFile, parent=None, name=None)
 eric6.Graphics.UMLClassDiagramBuilder.UMLClassDiagramBuilder.buildDiagram?4()
+eric6.Graphics.UMLClassDiagramBuilder.UMLClassDiagramBuilder.fromDict?4(version, data)
 eric6.Graphics.UMLClassDiagramBuilder.UMLClassDiagramBuilder.getPersistenceData?4()
 eric6.Graphics.UMLClassDiagramBuilder.UMLClassDiagramBuilder.initialize?4()
 eric6.Graphics.UMLClassDiagramBuilder.UMLClassDiagramBuilder.parsePersistenceData?4(version, data)
+eric6.Graphics.UMLClassDiagramBuilder.UMLClassDiagramBuilder.toDict?4()
 eric6.Graphics.UMLClassDiagramBuilder.UMLClassDiagramBuilder?1(dialog, view, project, file, noAttrs=False)
 eric6.Graphics.UMLDiagramBuilder.UMLDiagramBuilder.buildDiagram?4()
+eric6.Graphics.UMLDiagramBuilder.UMLDiagramBuilder.buildErrorMessage?4(msg)
+eric6.Graphics.UMLDiagramBuilder.UMLDiagramBuilder.fromDict?4(version, data)
 eric6.Graphics.UMLDiagramBuilder.UMLDiagramBuilder.getPersistenceData?4()
 eric6.Graphics.UMLDiagramBuilder.UMLDiagramBuilder.initialize?4()
 eric6.Graphics.UMLDiagramBuilder.UMLDiagramBuilder.parsePersistenceData?4(version, data)
+eric6.Graphics.UMLDiagramBuilder.UMLDiagramBuilder.toDict?4()
 eric6.Graphics.UMLDiagramBuilder.UMLDiagramBuilder?1(dialog, view, project)
-eric6.Graphics.UMLDialog.UMLDialog.ApplicationDiagram?7
-eric6.Graphics.UMLDialog.UMLDialog.ClassDiagram?7
 eric6.Graphics.UMLDialog.UMLDialog.FileVersions?7
-eric6.Graphics.UMLDialog.UMLDialog.ImportsDiagram?7
-eric6.Graphics.UMLDialog.UMLDialog.NoDiagram?7
-eric6.Graphics.UMLDialog.UMLDialog.PackageDiagram?7
-eric6.Graphics.UMLDialog.UMLDialog.load?4()
+eric6.Graphics.UMLDialog.UMLDialog.JsonFileVersions?7
+eric6.Graphics.UMLDialog.UMLDialog.UMLDialogType2String?7
+eric6.Graphics.UMLDialog.UMLDialog.load?4(filename="")
 eric6.Graphics.UMLDialog.UMLDialog.show?4(fromFile=False)
 eric6.Graphics.UMLDialog.UMLDialog?1(diagramType, project, path="", parent=None, initBuilder=True, **kwargs)
+eric6.Graphics.UMLDialog.UMLDialogType.APPLICATION_DIAGRAM?7
+eric6.Graphics.UMLDialog.UMLDialogType.CLASS_DIAGRAM?7
+eric6.Graphics.UMLDialog.UMLDialogType.IMPORTS_DIAGRAM?7
+eric6.Graphics.UMLDialog.UMLDialogType.NO_DIAGRAM?7
+eric6.Graphics.UMLDialog.UMLDialogType.PACKAGE_DIAGRAM?7
 eric6.Graphics.UMLGraphicsView.UMLGraphicsView.autoAdjustSceneSize?4(limit=False)
 eric6.Graphics.UMLGraphicsView.UMLGraphicsView.event?4(evt)
 eric6.Graphics.UMLGraphicsView.UMLGraphicsView.filteredItems?4(items, itemType=UMLItem)
 eric6.Graphics.UMLGraphicsView.UMLGraphicsView.findItem?4(itemId)
 eric6.Graphics.UMLGraphicsView.UMLGraphicsView.findItemByName?4(name)
+eric6.Graphics.UMLGraphicsView.UMLGraphicsView.fromDict?4(version, data)
 eric6.Graphics.UMLGraphicsView.UMLGraphicsView.gestureEvent?4(evt)
 eric6.Graphics.UMLGraphicsView.UMLGraphicsView.getItemId?4()
 eric6.Graphics.UMLGraphicsView.UMLGraphicsView.getPersistenceData?4()
@@ -2066,12 +2103,15 @@
 eric6.Graphics.UMLGraphicsView.UMLGraphicsView.selectItem?4(item)
 eric6.Graphics.UMLGraphicsView.UMLGraphicsView.selectItems?4(items)
 eric6.Graphics.UMLGraphicsView.UMLGraphicsView.setDiagramName?4(name)
+eric6.Graphics.UMLGraphicsView.UMLGraphicsView.setLayoutActionsEnabled?4(enable)
+eric6.Graphics.UMLGraphicsView.UMLGraphicsView.toDict?4()
 eric6.Graphics.UMLGraphicsView.UMLGraphicsView.wheelEvent?4(evt)
 eric6.Graphics.UMLGraphicsView.UMLGraphicsView?1(scene, parent=None)
 eric6.Graphics.UMLItem.UMLItem.ItemType?7
 eric6.Graphics.UMLItem.UMLItem.addAssociation?4(assoc)
 eric6.Graphics.UMLItem.UMLItem.adjustAssociations?4()
 eric6.Graphics.UMLItem.UMLItem.buildItemDataString?4()
+eric6.Graphics.UMLItem.UMLItem.fromDict?4(data, colors=None)
 eric6.Graphics.UMLItem.UMLItem.getId?4()
 eric6.Graphics.UMLItem.UMLItem.getItemType?4()
 eric6.Graphics.UMLItem.UMLItem.getName?4()
@@ -2084,6 +2124,7 @@
 eric6.Graphics.UMLItem.UMLItem.setId?4(itemId)
 eric6.Graphics.UMLItem.UMLItem.setPos?4(x, y)
 eric6.Graphics.UMLItem.UMLItem.setSize?4(width, height)
+eric6.Graphics.UMLItem.UMLItem.toDict?4()
 eric6.Graphics.UMLItem.UMLItem?1(model=None, x=0, y=0, rounded=False, colors=None, parent=None)
 eric6.Graphics.UMLItem.UMLModel.getName?4()
 eric6.Graphics.UMLItem.UMLModel?1(name)
@@ -3052,7 +3093,8 @@
 eric6.PluginManager.PluginManager.PluginManager.isPluginLoaded?4(pluginName)
 eric6.PluginManager.PluginManager.PluginManager.isValidPluginName?4(pluginName)
 eric6.PluginManager.PluginManager.PluginManager.loadDocumentationSetPlugins?4()
-eric6.PluginManager.PluginManager.PluginManager.loadPlugin?4(name, directory, reload_=False)
+eric6.PluginManager.PluginManager.PluginManager.loadPlugin?4(name, directory, reload_=False, install=False)
+eric6.PluginManager.PluginManager.PluginManager.pipInstall?4(packages)
 eric6.PluginManager.PluginManager.PluginManager.pluginAboutToBeActivated?7
 eric6.PluginManager.PluginManager.PluginManager.pluginAboutToBeDeactivated?7
 eric6.PluginManager.PluginManager.PluginManager.pluginActivated?7
@@ -5328,6 +5370,7 @@
 eric6.Plugins.VcsPlugins.vcsMercurial.HgUserConfigHostMinimumProtocolDialog.HgUserConfigHostMinimumProtocolDialog.on_minimumProtocolComboBox_currentIndexChanged?4(index)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgUserConfigHostMinimumProtocolDialog.HgUserConfigHostMinimumProtocolDialog?1(allowedProtocols, parent=None, host="", protocol="")
 eric6.Plugins.VcsPlugins.vcsMercurial.HgUtilities.getConfigPath?4()
+eric6.Plugins.VcsPlugins.vcsMercurial.HgUtilities.getHgExecutable?4()
 eric6.Plugins.VcsPlugins.vcsMercurial.HgUtilities.hgVersion?4(plugin)
 eric6.Plugins.VcsPlugins.vcsMercurial.HgUtilities.prepareProcess?4(proc, encoding="", language="")
 eric6.Plugins.VcsPlugins.vcsMercurial.HisteditExtension.HgHisteditCommitEditor.HgHisteditCommitEditor.on_buttonBox_accepted?4()
@@ -8916,13 +8959,6 @@
 eric6.Tasks.Task.Task.TaskType2ColorName?7
 eric6.Tasks.Task.Task.TaskType2IconName?7
 eric6.Tasks.Task.Task.TaskType2MarkersName?7
-eric6.Tasks.Task.Task.TypeDocu?7
-eric6.Tasks.Task.Task.TypeFixme?7
-eric6.Tasks.Task.Task.TypeNone?7
-eric6.Tasks.Task.Task.TypeNote?7
-eric6.Tasks.Task.Task.TypeTest?7
-eric6.Tasks.Task.Task.TypeTodo?7
-eric6.Tasks.Task.Task.TypeWarning?7
 eric6.Tasks.Task.Task.colorizeTask?4()
 eric6.Tasks.Task.Task.getFilename?4()
 eric6.Tasks.Task.Task.getLineno?4()
@@ -8937,8 +8973,19 @@
 eric6.Tasks.Task.Task.setPriority?4(priority)
 eric6.Tasks.Task.Task.setProjectTask?4(pt)
 eric6.Tasks.Task.Task.setSummary?4(summary)
+eric6.Tasks.Task.Task.setTaskType?4(taskType)
 eric6.Tasks.Task.Task.toDict?4()
-eric6.Tasks.Task.Task?1(summary, priority=1, filename="", lineno=0, completed=False, _time=0, isProjectTask=False, taskType=TypeTodo, project=None, description="", uid="", parentUid="")
+eric6.Tasks.Task.Task?1(summary, priority=TaskPriority.NORMAL, filename="", lineno=0, completed=False, _time=0, isProjectTask=False, taskType=TaskType.TODO, project=None, description="", uid="", parentUid="")
+eric6.Tasks.Task.TaskPriority.HIGH?7
+eric6.Tasks.Task.TaskPriority.LOW?7
+eric6.Tasks.Task.TaskPriority.NORMAL?7
+eric6.Tasks.Task.TaskType.DOCU?7
+eric6.Tasks.Task.TaskType.FIXME?7
+eric6.Tasks.Task.TaskType.NONE?7
+eric6.Tasks.Task.TaskType.NOTE?7
+eric6.Tasks.Task.TaskType.TEST?7
+eric6.Tasks.Task.TaskType.TODO?7
+eric6.Tasks.Task.TaskType.WARNING?7
 eric6.Tasks.TaskFilter.TaskFilter.hasActiveFilter?4()
 eric6.Tasks.TaskFilter.TaskFilter.setActive?4(enabled)
 eric6.Tasks.TaskFilter.TaskFilter.setFileNameFilter?4(filterStr)
@@ -8952,7 +8999,7 @@
 eric6.Tasks.TaskFilterConfigDialog.TaskFilterConfigDialog.configureTaskFilter?4(taskFilter)
 eric6.Tasks.TaskFilterConfigDialog.TaskFilterConfigDialog?1(taskFilter, parent=None)
 eric6.Tasks.TaskPropertiesDialog.TaskPropertiesDialog.getData?4()
-eric6.Tasks.TaskPropertiesDialog.TaskPropertiesDialog.setReadOnly?4()
+eric6.Tasks.TaskPropertiesDialog.TaskPropertiesDialog.isManualTaskMode?4()
 eric6.Tasks.TaskPropertiesDialog.TaskPropertiesDialog.setSubTaskMode?4(projectTask)
 eric6.Tasks.TaskPropertiesDialog.TaskPropertiesDialog?1(task=None, parent=None, projectOpen=False)
 eric6.Tasks.TaskViewer.ProjectTaskExtractionThread.requestInterrupt?4()
@@ -8960,8 +9007,8 @@
 eric6.Tasks.TaskViewer.ProjectTaskExtractionThread.scan?4(markers, files)
 eric6.Tasks.TaskViewer.ProjectTaskExtractionThread.taskFound?7
 eric6.Tasks.TaskViewer.ProjectTaskExtractionThread?1(parent=None)
-eric6.Tasks.TaskViewer.TaskViewer.addFileTask?4(summary, filename, lineno, taskType=Task.TypeTodo, description="")
-eric6.Tasks.TaskViewer.TaskViewer.addTask?4(summary, priority=1, filename="", lineno=0, completed=False, _time=0, isProjectTask=False, taskType=Task.TypeTodo, description="", uid="", parentTask=None)
+eric6.Tasks.TaskViewer.TaskViewer.addFileTask?4(summary, filename, lineno, taskType=TaskType.TODO, description="")
+eric6.Tasks.TaskViewer.TaskViewer.addTask?4(summary, priority=TaskPriority.NORMAL, filename="", lineno=0, completed=False, _time=0, isProjectTask=False, taskType=TaskType.TODO, description="", uid="", parentTask=None)
 eric6.Tasks.TaskViewer.TaskViewer.clearFileTasks?4(filename, conditionally=False)
 eric6.Tasks.TaskViewer.TaskViewer.clearProjectTasks?4(fileOnly=False)
 eric6.Tasks.TaskViewer.TaskViewer.clearTasks?4()
@@ -9134,6 +9181,7 @@
 eric6.UI.Browser.Browser.sourceFile?7
 eric6.UI.Browser.Browser.svgFile?7
 eric6.UI.Browser.Browser.trpreview?7
+eric6.UI.Browser.Browser.umlFile?7
 eric6.UI.Browser.Browser.unittestOpen?7
 eric6.UI.Browser.Browser.wantedItem?4(itm, filterList=None)
 eric6.UI.Browser.Browser?1(parent=None)
--- a/eric6/APIs/Python3/eric6.bas	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/APIs/Python3/eric6.bas	Thu Jun 03 11:39:23 2021 +0200
@@ -187,11 +187,13 @@
 E5FileSaveConfirmDialog QDialog
 E5Ftp ftplib.FTP
 E5FtpProxyError ftplib.Error
+E5FtpProxyType enum.Enum
 E5GenericDiffHighlighter QSyntaxHighlighter
 E5GoogleMail QObject
 E5GoogleMailAuthBrowser QDialog
 E5GraphicsView QGraphicsView
 E5HorizontalToolBox E5TabWidget
+E5JsonServer QTcpServer
 E5Led QWidget
 E5LedType enum.Enum
 E5LineEdit QLineEdit
@@ -937,7 +939,9 @@
 TagError Exception
 Task QTreeWidgetItem
 TaskFilterConfigDialog QDialog Ui_TaskFilterConfigDialog
+TaskPriority enum.IntEnum
 TaskPropertiesDialog QDialog Ui_TaskPropertiesDialog
+TaskType enum.IntEnum
 TaskViewer QTreeWidget
 TasksFile QObject
 TasksPage ConfigurationPageBase Ui_TasksPage
@@ -975,6 +979,7 @@
 UMLClassDiagramBuilder UMLDiagramBuilder
 UMLDiagramBuilder QObject
 UMLDialog E5MainWindow
+UMLDialogType enum.Enum
 UMLGraphicsView E5GraphicsView
 UMLItem QGraphicsRectItem
 UMLSceneSizeDialog QDialog Ui_UMLSceneSizeDialog
--- a/eric6/DebugClients/Python/DebugClientBase.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/DebugClients/Python/DebugClientBase.py	Thu Jun 03 11:39:23 2021 +0200
@@ -20,7 +20,6 @@
 import signal
 import time
 import types
-import importlib.util
 import fnmatch
 import contextlib
 
@@ -870,9 +869,7 @@
                         os.path.dirname(os.path.abspath(params["filename"]))
                     )
                     if params["filename"]:
-                        spec = importlib.util.spec_from_file_location(
-                            params["testname"], params["filename"])
-                        utModule = importlib.util.module_from_spec(spec)
+                        utModule = __import__(params["testname"])
                     else:
                         utModule = None
                     if params["failed"]:
@@ -1514,7 +1511,7 @@
             if scope:
                 varDict = self.debugMod.__dict__
             else:
-                scope = -1
+                scope = -2
         elif scope:
             varDict = f.f_globals
         elif f.f_globals is f.f_locals:
@@ -1522,7 +1519,7 @@
         else:
             varDict = f.f_locals
         
-        varlist = [] if scope == -1 else self.__formatVariablesList(
+        varlist = [] if scope < 0 else self.__formatVariablesList(
             varDict, scope, filterList)
         
         self.sendJsonCommand("ResponseVariables", {
--- a/eric6/Debugger/DebugServer.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Debugger/DebugServer.py	Thu Jun 03 11:39:23 2021 +0200
@@ -1743,8 +1743,8 @@
         """
         Public method to process the client variables info.
         
-        @param scope scope of the variables (-1 = empty global, 1 = global,
-            0 = local)
+        @param scope scope of the variables
+            (-2 = no frame found, -1 = empty locals, 1 = global, 0 = local)
         @type int
         @param variables the list of variables from the client
         @type list
--- a/eric6/Debugger/DebugUI.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Debugger/DebugUI.py	Thu Jun 03 11:39:23 2021 +0200
@@ -1372,8 +1372,9 @@
         @param debuggerId ID of the debugger backend
         @type str
         """
-        self.debugServer.remoteClientVariables(
-            debuggerId, 0, self.__localsVarFilterList)
+        if self.debugServer.isDebugging():
+            self.debugServer.remoteClientVariables(
+                debuggerId, 0, self.__localsVarFilterList)
     
     def __getClientVariables(self, debuggerId):
         """
@@ -1395,15 +1396,15 @@
         """
         Private method to write the clients variables to the user interface.
         
-        @param scope scope of the variables (-1 = empty locals, 1 = global,
-            0 = local)
+        @param scope scope of the variables
+            (-2 = no frame found, -1 = empty locals, 1 = global, 0 = local)
         @type int
         @param variables the list of variables from the client
         @type list
         @param debuggerId ID of the debugger backend
         @type str
         """
-        if debuggerId == self.getSelectedDebuggerId():
+        if debuggerId == self.getSelectedDebuggerId() and scope > -2:
             self.ui.activateDebugViewer()
             if scope > 0:
                 self.debugViewer.showVariables(variables, True)
Binary file eric6/Documentation/Help/source.qch has changed
--- a/eric6/Documentation/Help/source.qhp	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Help/source.qhp	Thu Jun 03 11:39:23 2021 +0200
@@ -152,6 +152,8 @@
             <section title="eric6.E5Network.E5Ftp" ref="eric6.E5Network.E5Ftp.html" />
             <section title="eric6.E5Network.E5GoogleMail" ref="eric6.E5Network.E5GoogleMail.html" />
             <section title="eric6.E5Network.E5GoogleMailHelpers" ref="eric6.E5Network.E5GoogleMailHelpers.html" />
+            <section title="eric6.E5Network.E5JsonClient" ref="eric6.E5Network.E5JsonClient.html" />
+            <section title="eric6.E5Network.E5JsonServer" ref="eric6.E5Network.E5JsonServer.html" />
             <section title="eric6.E5Network.E5NetworkHeaderDetailsDialog" ref="eric6.E5Network.E5NetworkHeaderDetailsDialog.html" />
             <section title="eric6.E5Network.E5NetworkProxyFactory" ref="eric6.E5Network.E5NetworkProxyFactory.html" />
             <section title="eric6.E5Network.E5RFC6266" ref="eric6.E5Network.E5RFC6266.html" />
@@ -1776,11 +1778,15 @@
       <keyword name="ApplicationDiagramBuilder (Constructor)" id="ApplicationDiagramBuilder (Constructor)" ref="eric6.Graphics.ApplicationDiagramBuilder.html#ApplicationDiagramBuilder.__init__" />
       <keyword name="ApplicationDiagramBuilder (Module)" id="ApplicationDiagramBuilder (Module)" ref="eric6.Graphics.ApplicationDiagramBuilder.html" />
       <keyword name="ApplicationDiagramBuilder.__addPackage" id="ApplicationDiagramBuilder.__addPackage" ref="eric6.Graphics.ApplicationDiagramBuilder.html#ApplicationDiagramBuilder.__addPackage" />
+      <keyword name="ApplicationDiagramBuilder.__arrangeNodes" id="ApplicationDiagramBuilder.__arrangeNodes" ref="eric6.Graphics.ApplicationDiagramBuilder.html#ApplicationDiagramBuilder.__arrangeNodes" />
       <keyword name="ApplicationDiagramBuilder.__buildModulesDict" id="ApplicationDiagramBuilder.__buildModulesDict" ref="eric6.Graphics.ApplicationDiagramBuilder.html#ApplicationDiagramBuilder.__buildModulesDict" />
       <keyword name="ApplicationDiagramBuilder.__createAssociations" id="ApplicationDiagramBuilder.__createAssociations" ref="eric6.Graphics.ApplicationDiagramBuilder.html#ApplicationDiagramBuilder.__createAssociations" />
+      <keyword name="ApplicationDiagramBuilder.__findApplicationRoot" id="ApplicationDiagramBuilder.__findApplicationRoot" ref="eric6.Graphics.ApplicationDiagramBuilder.html#ApplicationDiagramBuilder.__findApplicationRoot" />
       <keyword name="ApplicationDiagramBuilder.buildDiagram" id="ApplicationDiagramBuilder.buildDiagram" ref="eric6.Graphics.ApplicationDiagramBuilder.html#ApplicationDiagramBuilder.buildDiagram" />
+      <keyword name="ApplicationDiagramBuilder.fromDict" id="ApplicationDiagramBuilder.fromDict" ref="eric6.Graphics.ApplicationDiagramBuilder.html#ApplicationDiagramBuilder.fromDict" />
       <keyword name="ApplicationDiagramBuilder.getPersistenceData" id="ApplicationDiagramBuilder.getPersistenceData" ref="eric6.Graphics.ApplicationDiagramBuilder.html#ApplicationDiagramBuilder.getPersistenceData" />
       <keyword name="ApplicationDiagramBuilder.parsePersistenceData" id="ApplicationDiagramBuilder.parsePersistenceData" ref="eric6.Graphics.ApplicationDiagramBuilder.html#ApplicationDiagramBuilder.parsePersistenceData" />
+      <keyword name="ApplicationDiagramBuilder.toDict" id="ApplicationDiagramBuilder.toDict" ref="eric6.Graphics.ApplicationDiagramBuilder.html#ApplicationDiagramBuilder.toDict" />
       <keyword name="ApplicationPage" id="ApplicationPage" ref="eric6.Preferences.ConfigurationPages.ApplicationPage.html#ApplicationPage" />
       <keyword name="ApplicationPage (Constructor)" id="ApplicationPage (Constructor)" ref="eric6.Preferences.ConfigurationPages.ApplicationPage.html#ApplicationPage.__init__" />
       <keyword name="ApplicationPage (Module)" id="ApplicationPage (Module)" ref="eric6.Preferences.ConfigurationPages.ApplicationPage.html" />
@@ -1807,7 +1813,9 @@
       <keyword name="AssociationItem.__mapRectFromItem" id="AssociationItem.__mapRectFromItem" ref="eric6.Graphics.AssociationItem.html#AssociationItem.__mapRectFromItem" />
       <keyword name="AssociationItem.__updateEndPoint" id="AssociationItem.__updateEndPoint" ref="eric6.Graphics.AssociationItem.html#AssociationItem.__updateEndPoint" />
       <keyword name="AssociationItem.buildAssociationItemDataString" id="AssociationItem.buildAssociationItemDataString" ref="eric6.Graphics.AssociationItem.html#AssociationItem.buildAssociationItemDataString" />
+      <keyword name="AssociationItem.fromDict" id="AssociationItem.fromDict" ref="eric6.Graphics.AssociationItem.html#AssociationItem.fromDict" />
       <keyword name="AssociationItem.parseAssociationItemDataString" id="AssociationItem.parseAssociationItemDataString" ref="eric6.Graphics.AssociationItem.html#AssociationItem.parseAssociationItemDataString" />
+      <keyword name="AssociationItem.toDict" id="AssociationItem.toDict" ref="eric6.Graphics.AssociationItem.html#AssociationItem.toDict" />
       <keyword name="AssociationItem.unassociate" id="AssociationItem.unassociate" ref="eric6.Graphics.AssociationItem.html#AssociationItem.unassociate" />
       <keyword name="AssociationItem.widgetMoved" id="AssociationItem.widgetMoved" ref="eric6.Graphics.AssociationItem.html#AssociationItem.widgetMoved" />
       <keyword name="AssociationPointRegion" id="AssociationPointRegion" ref="eric6.Graphics.AssociationItem.html#AssociationPointRegion" />
@@ -2513,15 +2521,19 @@
       <keyword name="ClassItem.__calculateSize" id="ClassItem.__calculateSize" ref="eric6.Graphics.ClassItem.html#ClassItem.__calculateSize" />
       <keyword name="ClassItem.__createTexts" id="ClassItem.__createTexts" ref="eric6.Graphics.ClassItem.html#ClassItem.__createTexts" />
       <keyword name="ClassItem.buildItemDataString" id="ClassItem.buildItemDataString" ref="eric6.Graphics.ClassItem.html#ClassItem.buildItemDataString" />
+      <keyword name="ClassItem.fromDict" id="ClassItem.fromDict" ref="eric6.Graphics.ClassItem.html#ClassItem.fromDict" />
       <keyword name="ClassItem.isExternal" id="ClassItem.isExternal" ref="eric6.Graphics.ClassItem.html#ClassItem.isExternal" />
       <keyword name="ClassItem.paint" id="ClassItem.paint" ref="eric6.Graphics.ClassItem.html#ClassItem.paint" />
       <keyword name="ClassItem.parseItemDataString" id="ClassItem.parseItemDataString" ref="eric6.Graphics.ClassItem.html#ClassItem.parseItemDataString" />
       <keyword name="ClassItem.setModel" id="ClassItem.setModel" ref="eric6.Graphics.ClassItem.html#ClassItem.setModel" />
+      <keyword name="ClassItem.toDict" id="ClassItem.toDict" ref="eric6.Graphics.ClassItem.html#ClassItem.toDict" />
       <keyword name="ClassModel" id="ClassModel" ref="eric6.Graphics.ClassItem.html#ClassModel" />
       <keyword name="ClassModel (Constructor)" id="ClassModel (Constructor)" ref="eric6.Graphics.ClassItem.html#ClassModel.__init__" />
-      <keyword name="ClassModel.addAttribute" id="ClassModel.addAttribute" ref="eric6.Graphics.ClassItem.html#ClassModel.addAttribute" />
+      <keyword name="ClassModel.addClassAttribute" id="ClassModel.addClassAttribute" ref="eric6.Graphics.ClassItem.html#ClassModel.addClassAttribute" />
+      <keyword name="ClassModel.addInstanceAttribute" id="ClassModel.addInstanceAttribute" ref="eric6.Graphics.ClassItem.html#ClassModel.addInstanceAttribute" />
       <keyword name="ClassModel.addMethod" id="ClassModel.addMethod" ref="eric6.Graphics.ClassItem.html#ClassModel.addMethod" />
-      <keyword name="ClassModel.getAttributes" id="ClassModel.getAttributes" ref="eric6.Graphics.ClassItem.html#ClassModel.getAttributes" />
+      <keyword name="ClassModel.getClassAttributes" id="ClassModel.getClassAttributes" ref="eric6.Graphics.ClassItem.html#ClassModel.getClassAttributes" />
+      <keyword name="ClassModel.getInstanceAttributes" id="ClassModel.getInstanceAttributes" ref="eric6.Graphics.ClassItem.html#ClassModel.getInstanceAttributes" />
       <keyword name="ClassModel.getMethods" id="ClassModel.getMethods" ref="eric6.Graphics.ClassItem.html#ClassModel.getMethods" />
       <keyword name="ClbrBase" id="ClbrBase" ref="eric6.Utilities.ClassBrowsers.ClbrBaseClasses.html#ClbrBase" />
       <keyword name="ClbrBase (Constructor)" id="ClbrBase (Constructor)" ref="eric6.Utilities.ClassBrowsers.ClbrBaseClasses.html#ClbrBase.__init__" />
@@ -4155,6 +4167,25 @@
       <keyword name="E5HorizontalToolBox.removeItem" id="E5HorizontalToolBox.removeItem" ref="eric6.E5Gui.E5ToolBox.html#E5HorizontalToolBox.removeItem" />
       <keyword name="E5HorizontalToolBox.setItemEnabled" id="E5HorizontalToolBox.setItemEnabled" ref="eric6.E5Gui.E5ToolBox.html#E5HorizontalToolBox.setItemEnabled" />
       <keyword name="E5HorizontalToolBox.setItemToolTip" id="E5HorizontalToolBox.setItemToolTip" ref="eric6.E5Gui.E5ToolBox.html#E5HorizontalToolBox.setItemToolTip" />
+      <keyword name="E5JsonClient" id="E5JsonClient" ref="eric6.E5Network.E5JsonClient.html#E5JsonClient" />
+      <keyword name="E5JsonClient (Constructor)" id="E5JsonClient (Constructor)" ref="eric6.E5Network.E5JsonClient.html#E5JsonClient.__init__" />
+      <keyword name="E5JsonClient (Module)" id="E5JsonClient (Module)" ref="eric6.E5Network.E5JsonClient.html" />
+      <keyword name="E5JsonClient.__receiveJson" id="E5JsonClient.__receiveJson" ref="eric6.E5Network.E5JsonClient.html#E5JsonClient.__receiveJson" />
+      <keyword name="E5JsonClient.handleCall" id="E5JsonClient.handleCall" ref="eric6.E5Network.E5JsonClient.html#E5JsonClient.handleCall" />
+      <keyword name="E5JsonClient.run" id="E5JsonClient.run" ref="eric6.E5Network.E5JsonClient.html#E5JsonClient.run" />
+      <keyword name="E5JsonClient.sendJson" id="E5JsonClient.sendJson" ref="eric6.E5Network.E5JsonClient.html#E5JsonClient.sendJson" />
+      <keyword name="E5JsonServer" id="E5JsonServer" ref="eric6.E5Network.E5JsonServer.html#E5JsonServer" />
+      <keyword name="E5JsonServer (Constructor)" id="E5JsonServer (Constructor)" ref="eric6.E5Network.E5JsonServer.html#E5JsonServer.__init__" />
+      <keyword name="E5JsonServer (Module)" id="E5JsonServer (Module)" ref="eric6.E5Network.E5JsonServer.html" />
+      <keyword name="E5JsonServer.__handleDisconnect" id="E5JsonServer.__handleDisconnect" ref="eric6.E5Network.E5JsonServer.html#E5JsonServer.__handleDisconnect" />
+      <keyword name="E5JsonServer.__receiveJson" id="E5JsonServer.__receiveJson" ref="eric6.E5Network.E5JsonServer.html#E5JsonServer.__receiveJson" />
+      <keyword name="E5JsonServer.connectionNames" id="E5JsonServer.connectionNames" ref="eric6.E5Network.E5JsonServer.html#E5JsonServer.connectionNames" />
+      <keyword name="E5JsonServer.handleCall" id="E5JsonServer.handleCall" ref="eric6.E5Network.E5JsonServer.html#E5JsonServer.handleCall" />
+      <keyword name="E5JsonServer.handleNewConnection" id="E5JsonServer.handleNewConnection" ref="eric6.E5Network.E5JsonServer.html#E5JsonServer.handleNewConnection" />
+      <keyword name="E5JsonServer.sendJson" id="E5JsonServer.sendJson" ref="eric6.E5Network.E5JsonServer.html#E5JsonServer.sendJson" />
+      <keyword name="E5JsonServer.startClient" id="E5JsonServer.startClient" ref="eric6.E5Network.E5JsonServer.html#E5JsonServer.startClient" />
+      <keyword name="E5JsonServer.stopAllClients" id="E5JsonServer.stopAllClients" ref="eric6.E5Network.E5JsonServer.html#E5JsonServer.stopAllClients" />
+      <keyword name="E5JsonServer.stopClient" id="E5JsonServer.stopClient" ref="eric6.E5Network.E5JsonServer.html#E5JsonServer.stopClient" />
       <keyword name="E5Led" id="E5Led" ref="eric6.E5Gui.E5Led.html#E5Led" />
       <keyword name="E5Led (Constructor)" id="E5Led (Constructor)" ref="eric6.E5Gui.E5Led.html#E5Led.__init__" />
       <keyword name="E5Led (Module)" id="E5Led (Module)" ref="eric6.E5Gui.E5Led.html" />
@@ -8813,12 +8844,15 @@
       <keyword name="ImportsDiagramBuilder (Constructor)" id="ImportsDiagramBuilder (Constructor)" ref="eric6.Graphics.ImportsDiagramBuilder.html#ImportsDiagramBuilder.__init__" />
       <keyword name="ImportsDiagramBuilder (Module)" id="ImportsDiagramBuilder (Module)" ref="eric6.Graphics.ImportsDiagramBuilder.html" />
       <keyword name="ImportsDiagramBuilder.__addModule" id="ImportsDiagramBuilder.__addModule" ref="eric6.Graphics.ImportsDiagramBuilder.html#ImportsDiagramBuilder.__addModule" />
+      <keyword name="ImportsDiagramBuilder.__arrangeNodes" id="ImportsDiagramBuilder.__arrangeNodes" ref="eric6.Graphics.ImportsDiagramBuilder.html#ImportsDiagramBuilder.__arrangeNodes" />
       <keyword name="ImportsDiagramBuilder.__buildModulesDict" id="ImportsDiagramBuilder.__buildModulesDict" ref="eric6.Graphics.ImportsDiagramBuilder.html#ImportsDiagramBuilder.__buildModulesDict" />
       <keyword name="ImportsDiagramBuilder.__createAssociations" id="ImportsDiagramBuilder.__createAssociations" ref="eric6.Graphics.ImportsDiagramBuilder.html#ImportsDiagramBuilder.__createAssociations" />
       <keyword name="ImportsDiagramBuilder.buildDiagram" id="ImportsDiagramBuilder.buildDiagram" ref="eric6.Graphics.ImportsDiagramBuilder.html#ImportsDiagramBuilder.buildDiagram" />
+      <keyword name="ImportsDiagramBuilder.fromDict" id="ImportsDiagramBuilder.fromDict" ref="eric6.Graphics.ImportsDiagramBuilder.html#ImportsDiagramBuilder.fromDict" />
       <keyword name="ImportsDiagramBuilder.getPersistenceData" id="ImportsDiagramBuilder.getPersistenceData" ref="eric6.Graphics.ImportsDiagramBuilder.html#ImportsDiagramBuilder.getPersistenceData" />
       <keyword name="ImportsDiagramBuilder.initialize" id="ImportsDiagramBuilder.initialize" ref="eric6.Graphics.ImportsDiagramBuilder.html#ImportsDiagramBuilder.initialize" />
       <keyword name="ImportsDiagramBuilder.parsePersistenceData" id="ImportsDiagramBuilder.parsePersistenceData" ref="eric6.Graphics.ImportsDiagramBuilder.html#ImportsDiagramBuilder.parsePersistenceData" />
+      <keyword name="ImportsDiagramBuilder.toDict" id="ImportsDiagramBuilder.toDict" ref="eric6.Graphics.ImportsDiagramBuilder.html#ImportsDiagramBuilder.toDict" />
       <keyword name="IndentationWrapper" id="IndentationWrapper" ref="eric6.Plugins.CheckerPlugins.CodeStyleChecker.CodeStyleFixer.html#IndentationWrapper" />
       <keyword name="IndentationWrapper (Constructor)" id="IndentationWrapper (Constructor)" ref="eric6.Plugins.CheckerPlugins.CodeStyleChecker.CodeStyleFixer.html#IndentationWrapper.__init__" />
       <keyword name="IndentationWrapper.__buildTokensLogical" id="IndentationWrapper.__buildTokensLogical" ref="eric6.Plugins.CheckerPlugins.CodeStyleChecker.CodeStyleFixer.html#IndentationWrapper.__buildTokensLogical" />
@@ -10248,9 +10282,11 @@
       <keyword name="ModuleItem.__calculateSize" id="ModuleItem.__calculateSize" ref="eric6.Graphics.ModuleItem.html#ModuleItem.__calculateSize" />
       <keyword name="ModuleItem.__createTexts" id="ModuleItem.__createTexts" ref="eric6.Graphics.ModuleItem.html#ModuleItem.__createTexts" />
       <keyword name="ModuleItem.buildItemDataString" id="ModuleItem.buildItemDataString" ref="eric6.Graphics.ModuleItem.html#ModuleItem.buildItemDataString" />
+      <keyword name="ModuleItem.fromDict" id="ModuleItem.fromDict" ref="eric6.Graphics.ModuleItem.html#ModuleItem.fromDict" />
       <keyword name="ModuleItem.paint" id="ModuleItem.paint" ref="eric6.Graphics.ModuleItem.html#ModuleItem.paint" />
       <keyword name="ModuleItem.parseItemDataString" id="ModuleItem.parseItemDataString" ref="eric6.Graphics.ModuleItem.html#ModuleItem.parseItemDataString" />
       <keyword name="ModuleItem.setModel" id="ModuleItem.setModel" ref="eric6.Graphics.ModuleItem.html#ModuleItem.setModel" />
+      <keyword name="ModuleItem.toDict" id="ModuleItem.toDict" ref="eric6.Graphics.ModuleItem.html#ModuleItem.toDict" />
       <keyword name="ModuleLoader" id="ModuleLoader" ref="eric6.DebugClients.Python.ModuleLoader.html#ModuleLoader" />
       <keyword name="ModuleLoader (Constructor)" id="ModuleLoader (Constructor)" ref="eric6.DebugClients.Python.ModuleLoader.html#ModuleLoader.__init__" />
       <keyword name="ModuleLoader (Module)" id="ModuleLoader (Module)" ref="eric6.DebugClients.Python.ModuleLoader.html" />
@@ -10701,18 +10737,22 @@
       <keyword name="PackageDiagramBuilder.__createAssociations" id="PackageDiagramBuilder.__createAssociations" ref="eric6.Graphics.PackageDiagramBuilder.html#PackageDiagramBuilder.__createAssociations" />
       <keyword name="PackageDiagramBuilder.__getCurrentShape" id="PackageDiagramBuilder.__getCurrentShape" ref="eric6.Graphics.PackageDiagramBuilder.html#PackageDiagramBuilder.__getCurrentShape" />
       <keyword name="PackageDiagramBuilder.buildDiagram" id="PackageDiagramBuilder.buildDiagram" ref="eric6.Graphics.PackageDiagramBuilder.html#PackageDiagramBuilder.buildDiagram" />
+      <keyword name="PackageDiagramBuilder.fromDict" id="PackageDiagramBuilder.fromDict" ref="eric6.Graphics.PackageDiagramBuilder.html#PackageDiagramBuilder.fromDict" />
       <keyword name="PackageDiagramBuilder.getPersistenceData" id="PackageDiagramBuilder.getPersistenceData" ref="eric6.Graphics.PackageDiagramBuilder.html#PackageDiagramBuilder.getPersistenceData" />
       <keyword name="PackageDiagramBuilder.initialize" id="PackageDiagramBuilder.initialize" ref="eric6.Graphics.PackageDiagramBuilder.html#PackageDiagramBuilder.initialize" />
       <keyword name="PackageDiagramBuilder.parsePersistenceData" id="PackageDiagramBuilder.parsePersistenceData" ref="eric6.Graphics.PackageDiagramBuilder.html#PackageDiagramBuilder.parsePersistenceData" />
+      <keyword name="PackageDiagramBuilder.toDict" id="PackageDiagramBuilder.toDict" ref="eric6.Graphics.PackageDiagramBuilder.html#PackageDiagramBuilder.toDict" />
       <keyword name="PackageItem" id="PackageItem" ref="eric6.Graphics.PackageItem.html#PackageItem" />
       <keyword name="PackageItem (Constructor)" id="PackageItem (Constructor)" ref="eric6.Graphics.PackageItem.html#PackageItem.__init__" />
       <keyword name="PackageItem (Module)" id="PackageItem (Module)" ref="eric6.Graphics.PackageItem.html" />
       <keyword name="PackageItem.__calculateSize" id="PackageItem.__calculateSize" ref="eric6.Graphics.PackageItem.html#PackageItem.__calculateSize" />
       <keyword name="PackageItem.__createTexts" id="PackageItem.__createTexts" ref="eric6.Graphics.PackageItem.html#PackageItem.__createTexts" />
       <keyword name="PackageItem.buildItemDataString" id="PackageItem.buildItemDataString" ref="eric6.Graphics.PackageItem.html#PackageItem.buildItemDataString" />
+      <keyword name="PackageItem.fromDict" id="PackageItem.fromDict" ref="eric6.Graphics.PackageItem.html#PackageItem.fromDict" />
       <keyword name="PackageItem.paint" id="PackageItem.paint" ref="eric6.Graphics.PackageItem.html#PackageItem.paint" />
       <keyword name="PackageItem.parseItemDataString" id="PackageItem.parseItemDataString" ref="eric6.Graphics.PackageItem.html#PackageItem.parseItemDataString" />
       <keyword name="PackageItem.setModel" id="PackageItem.setModel" ref="eric6.Graphics.PackageItem.html#PackageItem.setModel" />
+      <keyword name="PackageItem.toDict" id="PackageItem.toDict" ref="eric6.Graphics.PackageItem.html#PackageItem.toDict" />
       <keyword name="PackageModel" id="PackageModel" ref="eric6.Graphics.PackageItem.html#PackageModel" />
       <keyword name="PackageModel (Constructor)" id="PackageModel (Constructor)" ref="eric6.Graphics.PackageItem.html#PackageModel.__init__" />
       <keyword name="PackageModel.addModule" id="PackageModel.addModule" ref="eric6.Graphics.PackageItem.html#PackageModel.addModule" />
@@ -11130,6 +11170,7 @@
       <keyword name="PluginManager.isValidPluginName" id="PluginManager.isValidPluginName" ref="eric6.PluginManager.PluginManager.html#PluginManager.isValidPluginName" />
       <keyword name="PluginManager.loadDocumentationSetPlugins" id="PluginManager.loadDocumentationSetPlugins" ref="eric6.PluginManager.PluginManager.html#PluginManager.loadDocumentationSetPlugins" />
       <keyword name="PluginManager.loadPlugin" id="PluginManager.loadPlugin" ref="eric6.PluginManager.PluginManager.html#PluginManager.loadPlugin" />
+      <keyword name="PluginManager.pipInstall" id="PluginManager.pipInstall" ref="eric6.PluginManager.PluginManager.html#PluginManager.pipInstall" />
       <keyword name="PluginManager.preferencesChanged" id="PluginManager.preferencesChanged" ref="eric6.PluginManager.PluginManager.html#PluginManager.preferencesChanged" />
       <keyword name="PluginManager.removePluginFromSysModules" id="PluginManager.removePluginFromSysModules" ref="eric6.PluginManager.PluginManager.html#PluginManager.removePluginFromSysModules" />
       <keyword name="PluginManager.unloadPlugin" id="PluginManager.unloadPlugin" ref="eric6.PluginManager.PluginManager.html#PluginManager.unloadPlugin" />
@@ -15021,6 +15062,7 @@
       <keyword name="Task.setPriority" id="Task.setPriority" ref="eric6.Tasks.Task.html#Task.setPriority" />
       <keyword name="Task.setProjectTask" id="Task.setProjectTask" ref="eric6.Tasks.Task.html#Task.setProjectTask" />
       <keyword name="Task.setSummary" id="Task.setSummary" ref="eric6.Tasks.Task.html#Task.setSummary" />
+      <keyword name="Task.setTaskType" id="Task.setTaskType" ref="eric6.Tasks.Task.html#Task.setTaskType" />
       <keyword name="Task.toDict" id="Task.toDict" ref="eric6.Tasks.Task.html#Task.toDict" />
       <keyword name="TaskFilter" id="TaskFilter" ref="eric6.Tasks.TaskFilter.html#TaskFilter" />
       <keyword name="TaskFilter (Constructor)" id="TaskFilter (Constructor)" ref="eric6.Tasks.TaskFilter.html#TaskFilter.__init__" />
@@ -15038,12 +15080,15 @@
       <keyword name="TaskFilterConfigDialog (Constructor)" id="TaskFilterConfigDialog (Constructor)" ref="eric6.Tasks.TaskFilterConfigDialog.html#TaskFilterConfigDialog.__init__" />
       <keyword name="TaskFilterConfigDialog (Module)" id="TaskFilterConfigDialog (Module)" ref="eric6.Tasks.TaskFilterConfigDialog.html" />
       <keyword name="TaskFilterConfigDialog.configureTaskFilter" id="TaskFilterConfigDialog.configureTaskFilter" ref="eric6.Tasks.TaskFilterConfigDialog.html#TaskFilterConfigDialog.configureTaskFilter" />
+      <keyword name="TaskPriority" id="TaskPriority" ref="eric6.Tasks.Task.html#TaskPriority" />
       <keyword name="TaskPropertiesDialog" id="TaskPropertiesDialog" ref="eric6.Tasks.TaskPropertiesDialog.html#TaskPropertiesDialog" />
       <keyword name="TaskPropertiesDialog (Constructor)" id="TaskPropertiesDialog (Constructor)" ref="eric6.Tasks.TaskPropertiesDialog.html#TaskPropertiesDialog.__init__" />
       <keyword name="TaskPropertiesDialog (Module)" id="TaskPropertiesDialog (Module)" ref="eric6.Tasks.TaskPropertiesDialog.html" />
+      <keyword name="TaskPropertiesDialog.__setMode" id="TaskPropertiesDialog.__setMode" ref="eric6.Tasks.TaskPropertiesDialog.html#TaskPropertiesDialog.__setMode" />
       <keyword name="TaskPropertiesDialog.getData" id="TaskPropertiesDialog.getData" ref="eric6.Tasks.TaskPropertiesDialog.html#TaskPropertiesDialog.getData" />
-      <keyword name="TaskPropertiesDialog.setReadOnly" id="TaskPropertiesDialog.setReadOnly" ref="eric6.Tasks.TaskPropertiesDialog.html#TaskPropertiesDialog.setReadOnly" />
+      <keyword name="TaskPropertiesDialog.isManualTaskMode" id="TaskPropertiesDialog.isManualTaskMode" ref="eric6.Tasks.TaskPropertiesDialog.html#TaskPropertiesDialog.isManualTaskMode" />
       <keyword name="TaskPropertiesDialog.setSubTaskMode" id="TaskPropertiesDialog.setSubTaskMode" ref="eric6.Tasks.TaskPropertiesDialog.html#TaskPropertiesDialog.setSubTaskMode" />
+      <keyword name="TaskType" id="TaskType" ref="eric6.Tasks.Task.html#TaskType" />
       <keyword name="TaskViewer" id="TaskViewer" ref="eric6.Tasks.TaskViewer.html#TaskViewer" />
       <keyword name="TaskViewer (Constructor)" id="TaskViewer (Constructor)" ref="eric6.Tasks.TaskViewer.html#TaskViewer.__init__" />
       <keyword name="TaskViewer (Module)" id="TaskViewer (Module)" ref="eric6.Tasks.TaskViewer.html" />
@@ -15472,28 +15517,39 @@
       <keyword name="UMLClassDiagramBuilder.__createAssociations" id="UMLClassDiagramBuilder.__createAssociations" ref="eric6.Graphics.UMLClassDiagramBuilder.html#UMLClassDiagramBuilder.__createAssociations" />
       <keyword name="UMLClassDiagramBuilder.__getCurrentShape" id="UMLClassDiagramBuilder.__getCurrentShape" ref="eric6.Graphics.UMLClassDiagramBuilder.html#UMLClassDiagramBuilder.__getCurrentShape" />
       <keyword name="UMLClassDiagramBuilder.buildDiagram" id="UMLClassDiagramBuilder.buildDiagram" ref="eric6.Graphics.UMLClassDiagramBuilder.html#UMLClassDiagramBuilder.buildDiagram" />
+      <keyword name="UMLClassDiagramBuilder.fromDict" id="UMLClassDiagramBuilder.fromDict" ref="eric6.Graphics.UMLClassDiagramBuilder.html#UMLClassDiagramBuilder.fromDict" />
       <keyword name="UMLClassDiagramBuilder.getPersistenceData" id="UMLClassDiagramBuilder.getPersistenceData" ref="eric6.Graphics.UMLClassDiagramBuilder.html#UMLClassDiagramBuilder.getPersistenceData" />
       <keyword name="UMLClassDiagramBuilder.initialize" id="UMLClassDiagramBuilder.initialize" ref="eric6.Graphics.UMLClassDiagramBuilder.html#UMLClassDiagramBuilder.initialize" />
       <keyword name="UMLClassDiagramBuilder.parsePersistenceData" id="UMLClassDiagramBuilder.parsePersistenceData" ref="eric6.Graphics.UMLClassDiagramBuilder.html#UMLClassDiagramBuilder.parsePersistenceData" />
+      <keyword name="UMLClassDiagramBuilder.toDict" id="UMLClassDiagramBuilder.toDict" ref="eric6.Graphics.UMLClassDiagramBuilder.html#UMLClassDiagramBuilder.toDict" />
       <keyword name="UMLDiagramBuilder" id="UMLDiagramBuilder" ref="eric6.Graphics.UMLDiagramBuilder.html#UMLDiagramBuilder" />
       <keyword name="UMLDiagramBuilder (Constructor)" id="UMLDiagramBuilder (Constructor)" ref="eric6.Graphics.UMLDiagramBuilder.html#UMLDiagramBuilder.__init__" />
       <keyword name="UMLDiagramBuilder (Module)" id="UMLDiagramBuilder (Module)" ref="eric6.Graphics.UMLDiagramBuilder.html" />
       <keyword name="UMLDiagramBuilder.buildDiagram" id="UMLDiagramBuilder.buildDiagram" ref="eric6.Graphics.UMLDiagramBuilder.html#UMLDiagramBuilder.buildDiagram" />
+      <keyword name="UMLDiagramBuilder.buildErrorMessage" id="UMLDiagramBuilder.buildErrorMessage" ref="eric6.Graphics.UMLDiagramBuilder.html#UMLDiagramBuilder.buildErrorMessage" />
+      <keyword name="UMLDiagramBuilder.fromDict" id="UMLDiagramBuilder.fromDict" ref="eric6.Graphics.UMLDiagramBuilder.html#UMLDiagramBuilder.fromDict" />
       <keyword name="UMLDiagramBuilder.getPersistenceData" id="UMLDiagramBuilder.getPersistenceData" ref="eric6.Graphics.UMLDiagramBuilder.html#UMLDiagramBuilder.getPersistenceData" />
       <keyword name="UMLDiagramBuilder.initialize" id="UMLDiagramBuilder.initialize" ref="eric6.Graphics.UMLDiagramBuilder.html#UMLDiagramBuilder.initialize" />
       <keyword name="UMLDiagramBuilder.parsePersistenceData" id="UMLDiagramBuilder.parsePersistenceData" ref="eric6.Graphics.UMLDiagramBuilder.html#UMLDiagramBuilder.parsePersistenceData" />
+      <keyword name="UMLDiagramBuilder.toDict" id="UMLDiagramBuilder.toDict" ref="eric6.Graphics.UMLDiagramBuilder.html#UMLDiagramBuilder.toDict" />
       <keyword name="UMLDialog" id="UMLDialog" ref="eric6.Graphics.UMLDialog.html#UMLDialog" />
       <keyword name="UMLDialog (Constructor)" id="UMLDialog (Constructor)" ref="eric6.Graphics.UMLDialog.html#UMLDialog.__init__" />
       <keyword name="UMLDialog (Module)" id="UMLDialog (Module)" ref="eric6.Graphics.UMLDialog.html" />
       <keyword name="UMLDialog.__diagramBuilder" id="UMLDialog.__diagramBuilder" ref="eric6.Graphics.UMLDialog.html#UMLDialog.__diagramBuilder" />
+      <keyword name="UMLDialog.__getDiagramTitel" id="UMLDialog.__getDiagramTitel" ref="eric6.Graphics.UMLDialog.html#UMLDialog.__getDiagramTitel" />
       <keyword name="UMLDialog.__initActions" id="UMLDialog.__initActions" ref="eric6.Graphics.UMLDialog.html#UMLDialog.__initActions" />
       <keyword name="UMLDialog.__initToolBars" id="UMLDialog.__initToolBars" ref="eric6.Graphics.UMLDialog.html#UMLDialog.__initToolBars" />
+      <keyword name="UMLDialog.__readJsonGraphicsFile" id="UMLDialog.__readJsonGraphicsFile" ref="eric6.Graphics.UMLDialog.html#UMLDialog.__readJsonGraphicsFile" />
+      <keyword name="UMLDialog.__readLineBasedGraphicsFile" id="UMLDialog.__readLineBasedGraphicsFile" ref="eric6.Graphics.UMLDialog.html#UMLDialog.__readLineBasedGraphicsFile" />
       <keyword name="UMLDialog.__relayout" id="UMLDialog.__relayout" ref="eric6.Graphics.UMLDialog.html#UMLDialog.__relayout" />
       <keyword name="UMLDialog.__save" id="UMLDialog.__save" ref="eric6.Graphics.UMLDialog.html#UMLDialog.__save" />
       <keyword name="UMLDialog.__saveAs" id="UMLDialog.__saveAs" ref="eric6.Graphics.UMLDialog.html#UMLDialog.__saveAs" />
       <keyword name="UMLDialog.__showInvalidDataMessage" id="UMLDialog.__showInvalidDataMessage" ref="eric6.Graphics.UMLDialog.html#UMLDialog.__showInvalidDataMessage" />
+      <keyword name="UMLDialog.__writeJsonGraphicsFile" id="UMLDialog.__writeJsonGraphicsFile" ref="eric6.Graphics.UMLDialog.html#UMLDialog.__writeJsonGraphicsFile" />
+      <keyword name="UMLDialog.__writeLineBasedGraphicsFile" id="UMLDialog.__writeLineBasedGraphicsFile" ref="eric6.Graphics.UMLDialog.html#UMLDialog.__writeLineBasedGraphicsFile" />
       <keyword name="UMLDialog.load" id="UMLDialog.load" ref="eric6.Graphics.UMLDialog.html#UMLDialog.load" />
       <keyword name="UMLDialog.show" id="UMLDialog.show" ref="eric6.Graphics.UMLDialog.html#UMLDialog.show" />
+      <keyword name="UMLDialogType" id="UMLDialogType" ref="eric6.Graphics.UMLDialog.html#UMLDialogType" />
       <keyword name="UMLGraphicsView" id="UMLGraphicsView" ref="eric6.Graphics.UMLGraphicsView.html#UMLGraphicsView" />
       <keyword name="UMLGraphicsView (Constructor)" id="UMLGraphicsView (Constructor)" ref="eric6.Graphics.UMLGraphicsView.html#UMLGraphicsView.__init__" />
       <keyword name="UMLGraphicsView (Module)" id="UMLGraphicsView (Module)" ref="eric6.Graphics.UMLGraphicsView.html" />
@@ -15516,6 +15572,7 @@
       <keyword name="UMLGraphicsView.filteredItems" id="UMLGraphicsView.filteredItems" ref="eric6.Graphics.UMLGraphicsView.html#UMLGraphicsView.filteredItems" />
       <keyword name="UMLGraphicsView.findItem" id="UMLGraphicsView.findItem" ref="eric6.Graphics.UMLGraphicsView.html#UMLGraphicsView.findItem" />
       <keyword name="UMLGraphicsView.findItemByName" id="UMLGraphicsView.findItemByName" ref="eric6.Graphics.UMLGraphicsView.html#UMLGraphicsView.findItemByName" />
+      <keyword name="UMLGraphicsView.fromDict" id="UMLGraphicsView.fromDict" ref="eric6.Graphics.UMLGraphicsView.html#UMLGraphicsView.fromDict" />
       <keyword name="UMLGraphicsView.gestureEvent" id="UMLGraphicsView.gestureEvent" ref="eric6.Graphics.UMLGraphicsView.html#UMLGraphicsView.gestureEvent" />
       <keyword name="UMLGraphicsView.getItemId" id="UMLGraphicsView.getItemId" ref="eric6.Graphics.UMLGraphicsView.html#UMLGraphicsView.getItemId" />
       <keyword name="UMLGraphicsView.getPersistenceData" id="UMLGraphicsView.getPersistenceData" ref="eric6.Graphics.UMLGraphicsView.html#UMLGraphicsView.getPersistenceData" />
@@ -15528,6 +15585,8 @@
       <keyword name="UMLGraphicsView.selectItem" id="UMLGraphicsView.selectItem" ref="eric6.Graphics.UMLGraphicsView.html#UMLGraphicsView.selectItem" />
       <keyword name="UMLGraphicsView.selectItems" id="UMLGraphicsView.selectItems" ref="eric6.Graphics.UMLGraphicsView.html#UMLGraphicsView.selectItems" />
       <keyword name="UMLGraphicsView.setDiagramName" id="UMLGraphicsView.setDiagramName" ref="eric6.Graphics.UMLGraphicsView.html#UMLGraphicsView.setDiagramName" />
+      <keyword name="UMLGraphicsView.setLayoutActionsEnabled" id="UMLGraphicsView.setLayoutActionsEnabled" ref="eric6.Graphics.UMLGraphicsView.html#UMLGraphicsView.setLayoutActionsEnabled" />
+      <keyword name="UMLGraphicsView.toDict" id="UMLGraphicsView.toDict" ref="eric6.Graphics.UMLGraphicsView.html#UMLGraphicsView.toDict" />
       <keyword name="UMLGraphicsView.wheelEvent" id="UMLGraphicsView.wheelEvent" ref="eric6.Graphics.UMLGraphicsView.html#UMLGraphicsView.wheelEvent" />
       <keyword name="UMLItem" id="UMLItem" ref="eric6.Graphics.UMLItem.html#UMLItem" />
       <keyword name="UMLItem (Constructor)" id="UMLItem (Constructor)" ref="eric6.Graphics.UMLItem.html#UMLItem.__init__" />
@@ -15535,6 +15594,7 @@
       <keyword name="UMLItem.addAssociation" id="UMLItem.addAssociation" ref="eric6.Graphics.UMLItem.html#UMLItem.addAssociation" />
       <keyword name="UMLItem.adjustAssociations" id="UMLItem.adjustAssociations" ref="eric6.Graphics.UMLItem.html#UMLItem.adjustAssociations" />
       <keyword name="UMLItem.buildItemDataString" id="UMLItem.buildItemDataString" ref="eric6.Graphics.UMLItem.html#UMLItem.buildItemDataString" />
+      <keyword name="UMLItem.fromDict" id="UMLItem.fromDict" ref="eric6.Graphics.UMLItem.html#UMLItem.fromDict" />
       <keyword name="UMLItem.getId" id="UMLItem.getId" ref="eric6.Graphics.UMLItem.html#UMLItem.getId" />
       <keyword name="UMLItem.getItemType" id="UMLItem.getItemType" ref="eric6.Graphics.UMLItem.html#UMLItem.getItemType" />
       <keyword name="UMLItem.getName" id="UMLItem.getName" ref="eric6.Graphics.UMLItem.html#UMLItem.getName" />
@@ -15547,6 +15607,7 @@
       <keyword name="UMLItem.setId" id="UMLItem.setId" ref="eric6.Graphics.UMLItem.html#UMLItem.setId" />
       <keyword name="UMLItem.setPos" id="UMLItem.setPos" ref="eric6.Graphics.UMLItem.html#UMLItem.setPos" />
       <keyword name="UMLItem.setSize" id="UMLItem.setSize" ref="eric6.Graphics.UMLItem.html#UMLItem.setSize" />
+      <keyword name="UMLItem.toDict" id="UMLItem.toDict" ref="eric6.Graphics.UMLItem.html#UMLItem.toDict" />
       <keyword name="UMLModel" id="UMLModel" ref="eric6.Graphics.UMLItem.html#UMLModel" />
       <keyword name="UMLModel (Constructor)" id="UMLModel (Constructor)" ref="eric6.Graphics.UMLItem.html#UMLModel.__init__" />
       <keyword name="UMLModel.getName" id="UMLModel.getName" ref="eric6.Graphics.UMLItem.html#UMLModel.getName" />
@@ -15775,6 +15836,7 @@
       <keyword name="UserInterface.__openHexEditor" id="UserInterface.__openHexEditor" ref="eric6.UI.UserInterface.html#UserInterface.__openHexEditor" />
       <keyword name="UserInterface.__openMiniEditor" id="UserInterface.__openMiniEditor" ref="eric6.UI.UserInterface.html#UserInterface.__openMiniEditor" />
       <keyword name="UserInterface.__openOnStartup" id="UserInterface.__openOnStartup" ref="eric6.UI.UserInterface.html#UserInterface.__openOnStartup" />
+      <keyword name="UserInterface.__pluginInstallFinished" id="UserInterface.__pluginInstallFinished" ref="eric6.UI.UserInterface.html#UserInterface.__pluginInstallFinished" />
       <keyword name="UserInterface.__pluginsConfigure" id="UserInterface.__pluginsConfigure" ref="eric6.UI.UserInterface.html#UserInterface.__pluginsConfigure" />
       <keyword name="UserInterface.__populateToolbarsMenu" id="UserInterface.__populateToolbarsMenu" ref="eric6.UI.UserInterface.html#UserInterface.__populateToolbarsMenu" />
       <keyword name="UserInterface.__preferencesChanged" id="UserInterface.__preferencesChanged" ref="eric6.UI.UserInterface.html#UserInterface.__preferencesChanged" />
@@ -15820,6 +15882,7 @@
       <keyword name="UserInterface.__showSystemEmailClient" id="UserInterface.__showSystemEmailClient" ref="eric6.UI.UserInterface.html#UserInterface.__showSystemEmailClient" />
       <keyword name="UserInterface.__showToolGroupsMenu" id="UserInterface.__showToolGroupsMenu" ref="eric6.UI.UserInterface.html#UserInterface.__showToolGroupsMenu" />
       <keyword name="UserInterface.__showToolbarsMenu" id="UserInterface.__showToolbarsMenu" ref="eric6.UI.UserInterface.html#UserInterface.__showToolbarsMenu" />
+      <keyword name="UserInterface.__showUml" id="UserInterface.__showUml" ref="eric6.UI.UserInterface.html#UserInterface.__showUml" />
       <keyword name="UserInterface.__showUserToolsMenu" id="UserInterface.__showUserToolsMenu" ref="eric6.UI.UserInterface.html#UserInterface.__showUserToolsMenu" />
       <keyword name="UserInterface.__showVersions" id="UserInterface.__showVersions" ref="eric6.UI.UserInterface.html#UserInterface.__showVersions" />
       <keyword name="UserInterface.__showWindowMenu" id="UserInterface.__showWindowMenu" ref="eric6.UI.UserInterface.html#UserInterface.__showWindowMenu" />
@@ -16001,7 +16064,6 @@
       <keyword name="VcsCommandOptionsDialog.getOptions" id="VcsCommandOptionsDialog.getOptions" ref="eric6.VCS.CommandOptionsDialog.html#VcsCommandOptionsDialog.getOptions" />
       <keyword name="VcsGitPlugin" id="VcsGitPlugin" ref="eric6.Plugins.PluginVcsGit.html#VcsGitPlugin" />
       <keyword name="VcsGitPlugin (Constructor)" id="VcsGitPlugin (Constructor)" ref="eric6.Plugins.PluginVcsGit.html#VcsGitPlugin.__init__" />
-      <keyword name="VcsGitPlugin.__loadTranslator" id="VcsGitPlugin.__loadTranslator" ref="eric6.Plugins.PluginVcsGit.html#VcsGitPlugin.__loadTranslator" />
       <keyword name="VcsGitPlugin.activate" id="VcsGitPlugin.activate" ref="eric6.Plugins.PluginVcsGit.html#VcsGitPlugin.activate" />
       <keyword name="VcsGitPlugin.deactivate" id="VcsGitPlugin.deactivate" ref="eric6.Plugins.PluginVcsGit.html#VcsGitPlugin.deactivate" />
       <keyword name="VcsGitPlugin.getConfigPath" id="VcsGitPlugin.getConfigPath" ref="eric6.Plugins.PluginVcsGit.html#VcsGitPlugin.getConfigPath" />
@@ -17953,6 +18015,7 @@
       <keyword name="getGraphics" id="getGraphics" ref="eric6.Preferences.__init__.html#getGraphics" />
       <keyword name="getHelp" id="getHelp" ref="eric6.Preferences.__init__.html#getHelp" />
       <keyword name="getHexEditor" id="getHexEditor" ref="eric6.Preferences.__init__.html#getHexEditor" />
+      <keyword name="getHgExecutable" id="getHgExecutable" ref="eric6.Plugins.VcsPlugins.vcsMercurial.HgUtilities.html#getHgExecutable" />
       <keyword name="getHomeDir" id="getHomeDir" ref="eric6.Utilities.__init__.html#getHomeDir" />
       <keyword name="getHtmlPage" id="getHtmlPage" ref="eric6.WebBrowser.Tools.WebBrowserTools.html#getHtmlPage" />
       <keyword name="getIcon" id="getIcon" ref="eric6.UI.PixmapCache.html#getIcon" />
@@ -18004,7 +18067,7 @@
       <keyword name="getPyQtToolsPath" id="getPyQtToolsPath" ref="eric6.Globals.__init__.html#getPyQtToolsPath" />
       <keyword name="getPython" id="getPython" ref="eric6.Preferences.__init__.html#getPython" />
       <keyword name="getPythonLibPath" id="getPythonLibPath" ref="eric6.Utilities.__init__.html#getPythonLibPath" />
-      <keyword name="getPythonModulesDirectory" id="getPythonModulesDirectory" ref="eric6.Globals.__init__.html#getPythonModulesDirectory" />
+      <keyword name="getPythonLibraryDirectory" id="getPythonLibraryDirectory" ref="eric6.Globals.__init__.html#getPythonLibraryDirectory" />
       <keyword name="getPythonVersion" id="getPythonVersion" ref="eric6.Utilities.__init__.html#getPythonVersion" />
       <keyword name="getQt" id="getQt" ref="eric6.Preferences.__init__.html#getQt" />
       <keyword name="getQtBinariesPath" id="getQtBinariesPath" ref="eric6.Globals.__init__.html#getQtBinariesPath" />
@@ -18690,6 +18753,8 @@
       <file>eric6.E5Network.E5Ftp.html</file>
       <file>eric6.E5Network.E5GoogleMail.html</file>
       <file>eric6.E5Network.E5GoogleMailHelpers.html</file>
+      <file>eric6.E5Network.E5JsonClient.html</file>
+      <file>eric6.E5Network.E5JsonServer.html</file>
       <file>eric6.E5Network.E5NetworkHeaderDetailsDialog.html</file>
       <file>eric6.E5Network.E5NetworkProxyFactory.html</file>
       <file>eric6.E5Network.E5RFC6266.html</file>
--- a/eric6/Documentation/Source/eric6.E5Graphics.E5GraphicsView.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.E5Graphics.E5GraphicsView.html	Thu Jun 03 11:39:23 2021 +0200
@@ -187,23 +187,30 @@
 </p>
 <dl>
 
-<dt><i>rect</i></dt>
+<dt><i>rect</i> (QRectF)</dt>
 <dd>
-minimum rectangle fitting the diagram (QRectF)
+minimum rectangle fitting the diagram
 </dd>
-<dt><i>imageFormat</i></dt>
+<dt><i>imageFormat</i> (str)</dt>
 <dd>
-format for the image file (string)
+format for the image file
 </dd>
 <dt><i>filename</i></dt>
 <dd>
-name of the file for non pixmaps (string)
+name of the file for non pixmaps
+        str
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-diagram pixmap to receive the diagram (QPixmap)
+paint device containing the diagram
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+QPixmap or QSvgGenerator
 </dd>
 </dl>
 <a NAME="E5GraphicsView.__levelForZoom" ID="E5GraphicsView.__levelForZoom"></a>
--- a/eric6/Documentation/Source/eric6.E5Network.E5Ftp.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.E5Network.E5Ftp.html	Thu Jun 03 11:39:23 2021 +0200
@@ -107,56 +107,56 @@
 
 <a NAME="E5Ftp.__init__" ID="E5Ftp.__init__"></a>
 <h4>E5Ftp (Constructor)</h4>
-<b>E5Ftp</b>(<i>host="", user="", password="", acct="", proxyType=E5FtpProxyType.NoProxy, proxyHost="", proxyPort=ftplib.FTP_PORT, proxyUser="", proxyPassword="", proxyAccount="", timeout=_GLOBAL_DEFAULT_TIMEOUT</i>)
+<b>E5Ftp</b>(<i>host="", user="", password="", acct="", proxyType=E5FtpProxyType.NO_PROXY, proxyHost="", proxyPort=ftplib.FTP_PORT, proxyUser="", proxyPassword="", proxyAccount="", timeout=_GLOBAL_DEFAULT_TIMEOUT</i>)
 
 <p>
         Constructor
 </p>
 <dl>
 
-<dt><i>host</i></dt>
+<dt><i>host</i> (str)</dt>
 <dd>
-name of the FTP host (string)
+name of the FTP host
 </dd>
-<dt><i>user</i></dt>
+<dt><i>user</i> (str)</dt>
 <dd>
-user name for login to FTP host (string)
+user name for login to FTP host
 </dd>
-<dt><i>password</i></dt>
+<dt><i>password</i> (str)</dt>
 <dd>
-password for login to FTP host (string)
+password for login to FTP host
 </dd>
-<dt><i>acct</i></dt>
+<dt><i>acct</i> (str)</dt>
 <dd>
-account for login to FTP host (string)
+account for login to FTP host
 </dd>
-<dt><i>proxyType</i></dt>
+<dt><i>proxyType</i> (E5FtpProxyType)</dt>
 <dd>
-type of the FTP proxy (integer 0 to 8)
+type of the FTP proxy
 </dd>
-<dt><i>proxyHost</i></dt>
+<dt><i>proxyHost</i> (str)</dt>
 <dd>
-name of the FTP proxy (string)
+name of the FTP proxy
 </dd>
-<dt><i>proxyPort</i></dt>
+<dt><i>proxyPort</i> (int)</dt>
 <dd>
-port of the FTP proxy (integer)
+port of the FTP proxy
 </dd>
-<dt><i>proxyUser</i></dt>
+<dt><i>proxyUser</i> (str)</dt>
 <dd>
-user name for login to the proxy (string)
+user name for login to the proxy
 </dd>
-<dt><i>proxyPassword</i></dt>
+<dt><i>proxyPassword</i> (str)</dt>
 <dd>
-password for login to the proxy (string)
+password for login to the proxy
 </dd>
-<dt><i>proxyAccount</i></dt>
+<dt><i>proxyAccount</i> (str)</dt>
 <dd>
-accounting info for the proxy (string)
+accounting info for the proxy
 </dd>
-<dt><i>timeout</i></dt>
+<dt><i>timeout</i> (int)</dt>
 <dd>
-timeout in seconds for blocking operations (integer)
+timeout in seconds for blocking operations
 </dd>
 </dl>
 <a NAME="E5Ftp.connect" ID="E5Ftp.connect"></a>
@@ -173,23 +173,29 @@
 </p>
 <dl>
 
-<dt><i>host</i></dt>
+<dt><i>host</i> (str)</dt>
 <dd>
-name of the FTP host (string)
+name of the FTP host
 </dd>
-<dt><i>port</i></dt>
+<dt><i>port</i> (int)</dt>
 <dd>
-port of the FTP host (integer)
+port of the FTP host
 </dd>
-<dt><i>timeout</i></dt>
+<dt><i>timeout</i> (int)</dt>
 <dd>
-timeout in seconds for blocking operations (integer)
+timeout in seconds for blocking operations
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-welcome message of the server (string)
+welcome message of the server
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <dl>
@@ -205,36 +211,36 @@
 
 <a NAME="E5Ftp.setProxy" ID="E5Ftp.setProxy"></a>
 <h4>E5Ftp.setProxy</h4>
-<b>setProxy</b>(<i>proxyType=E5FtpProxyType.NoProxy, proxyHost="", proxyPort=ftplib.FTP_PORT, proxyUser="", proxyPassword="", proxyAccount=""</i>)
+<b>setProxy</b>(<i>proxyType=E5FtpProxyType.NO_PROXY, proxyHost="", proxyPort=ftplib.FTP_PORT, proxyUser="", proxyPassword="", proxyAccount=""</i>)
 
 <p>
         Public method to set the proxy configuration.
 </p>
 <dl>
 
-<dt><i>proxyType</i></dt>
+<dt><i>proxyType</i> (E5FtpProxyType)</dt>
 <dd>
-type of the FTP proxy (integer 0 to 8)
+type of the FTP proxy
 </dd>
-<dt><i>proxyHost</i></dt>
+<dt><i>proxyHost</i> (str)</dt>
 <dd>
-name of the FTP proxy (string)
+name of the FTP proxy
 </dd>
-<dt><i>proxyPort</i></dt>
+<dt><i>proxyPort</i> (int)</dt>
 <dd>
-port of the FTP proxy (integer)
+port of the FTP proxy
 </dd>
-<dt><i>proxyUser</i></dt>
+<dt><i>proxyUser</i> (str)</dt>
 <dd>
-user name for login to the proxy (string)
+user name for login to the proxy
 </dd>
-<dt><i>proxyPassword</i></dt>
+<dt><i>proxyPassword</i> (str)</dt>
 <dd>
-password  for login to the proxy (string)
+password  for login to the proxy
 </dd>
-<dt><i>proxyAccount</i></dt>
+<dt><i>proxyAccount</i> (str)</dt>
 <dd>
-accounting info for the proxy (string)
+accounting info for the proxy
 </dd>
 </dl>
 <a NAME="E5Ftp.setProxyAuthentication" ID="E5Ftp.setProxyAuthentication"></a>
@@ -246,17 +252,17 @@
 </p>
 <dl>
 
-<dt><i>proxyUser</i></dt>
+<dt><i>proxyUser</i> (str)</dt>
 <dd>
-user name for login to the proxy (string)
+user name for login to the proxy
 </dd>
-<dt><i>proxyPassword</i></dt>
+<dt><i>proxyPassword</i> (str)</dt>
 <dd>
-password  for login to the proxy (string)
+password  for login to the proxy
 </dd>
-<dt><i>proxyAccount</i></dt>
+<dt><i>proxyAccount</i> (str)</dt>
 <dd>
-accounting info for the proxy (string)
+accounting info for the proxy
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
@@ -322,11 +328,11 @@
     Class defining the supported FTP proxy types.
 </p>
 <h3>Derived from</h3>
-None
+enum.Enum
 <h3>Class Attributes</h3>
 
 <table>
-<tr><td>AuthResp</td></tr><tr><td>Bluecoat</td></tr><tr><td>NoProxy</td></tr><tr><td>NonAuthorizing</td></tr><tr><td>Open</td></tr><tr><td>ProxyuserAtServer</td></tr><tr><td>Site</td></tr><tr><td>UserAtProxyuserAtServer</td></tr><tr><td>UserAtServer</td></tr>
+<tr><td>AUTH_RESP</td></tr><tr><td>BLUECOAT</td></tr><tr><td>NON_AUTHORIZING</td></tr><tr><td>NO_PROXY</td></tr><tr><td>OPEN</td></tr><tr><td>PROXYUSER_SERVER</td></tr><tr><td>SITE</td></tr><tr><td>USER_PROXYUSER_SERVER</td></tr><tr><td>USER_SERVER</td></tr>
 </table>
 <h3>Class Methods</h3>
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/eric6/Documentation/Source/eric6.E5Network.E5JsonClient.html	Thu Jun 03 11:39:23 2021 +0200
@@ -0,0 +1,191 @@
+<!DOCTYPE html>
+<html><head>
+<title>eric6.E5Network.E5JsonClient</title>
+<meta charset="UTF-8">
+<style>
+body {
+    background: #EDECE6;
+    margin: 0em 1em 10em 1em;
+    color: black;
+}
+
+h1 { color: white; background: #85774A; }
+h2 { color: white; background: #85774A; }
+h3 { color: white; background: #9D936E; }
+h4 { color: white; background: #9D936E; }
+    
+a { color: #BA6D36; }
+
+</style>
+</head>
+<body>
+<a NAME="top" ID="top"></a>
+<h1>eric6.E5Network.E5JsonClient</h1>
+
+<p>
+Module implementing the JSON based client base class.
+</p>
+<h3>Global Attributes</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Classes</h3>
+
+<table>
+
+<tr>
+<td><a href="#E5JsonClient">E5JsonClient</a></td>
+<td>Class implementing a JSON based client base class.</td>
+</tr>
+</table>
+<h3>Functions</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+<hr />
+<hr />
+<a NAME="E5JsonClient" ID="E5JsonClient"></a>
+<h2>E5JsonClient</h2>
+
+<p>
+    Class implementing a JSON based client base class.
+</p>
+<h3>Derived from</h3>
+None
+<h3>Class Attributes</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Class Methods</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Methods</h3>
+
+<table>
+
+<tr>
+<td><a href="#E5JsonClient.__init__">E5JsonClient</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#E5JsonClient.__receiveJson">__receiveJson</a></td>
+<td>Private method to receive a JSON encode command and data from the server.</td>
+</tr>
+<tr>
+<td><a href="#E5JsonClient.handleCall">handleCall</a></td>
+<td>Public method to handle a method call from the server.</td>
+</tr>
+<tr>
+<td><a href="#E5JsonClient.run">run</a></td>
+<td>Public method implementing the main loop of the client.</td>
+</tr>
+<tr>
+<td><a href="#E5JsonClient.sendJson">sendJson</a></td>
+<td>Public method to send a single refactoring command to the server.</td>
+</tr>
+</table>
+<h3>Static Methods</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<a NAME="E5JsonClient.__init__" ID="E5JsonClient.__init__"></a>
+<h4>E5JsonClient (Constructor)</h4>
+<b>E5JsonClient</b>(<i>host, port, idString=""</i>)
+
+<p>
+        Constructor
+</p>
+<dl>
+
+<dt><i>host</i> (str)</dt>
+<dd>
+ip address the background service is listening
+</dd>
+<dt><i>port</i> (int)</dt>
+<dd>
+port of the background service
+</dd>
+<dt><i>idString</i> (str)</dt>
+<dd>
+assigned client id to be sent back to the server in
+            order to identify the connection
+</dd>
+</dl>
+<a NAME="E5JsonClient.__receiveJson" ID="E5JsonClient.__receiveJson"></a>
+<h4>E5JsonClient.__receiveJson</h4>
+<b>__receiveJson</b>(<i></i>)
+
+<p>
+        Private method to receive a JSON encode command and data from the
+        server.
+</p>
+<dl>
+<dt>Return:</dt>
+<dd>
+tuple containing the received command and a dictionary
+            containing the associated data
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+tuple of (str, dict)
+</dd>
+</dl>
+<a NAME="E5JsonClient.handleCall" ID="E5JsonClient.handleCall"></a>
+<h4>E5JsonClient.handleCall</h4>
+<b>handleCall</b>(<i>method, params</i>)
+
+<p>
+        Public method to handle a method call from the server.
+</p>
+<p>
+        Note: This is an empty implementation that must be overridden in
+        derived classes.
+</p>
+<dl>
+
+<dt><i>method</i> (str)</dt>
+<dd>
+requested method name
+</dd>
+<dt><i>params</i> (dict)</dt>
+<dd>
+dictionary with method specific parameters
+</dd>
+</dl>
+<a NAME="E5JsonClient.run" ID="E5JsonClient.run"></a>
+<h4>E5JsonClient.run</h4>
+<b>run</b>(<i></i>)
+
+<p>
+        Public method implementing the main loop of the client.
+</p>
+<a NAME="E5JsonClient.sendJson" ID="E5JsonClient.sendJson"></a>
+<h4>E5JsonClient.sendJson</h4>
+<b>sendJson</b>(<i>command, params</i>)
+
+<p>
+        Public method to send a single refactoring command to the server.
+</p>
+<dl>
+
+<dt><i>command</i> (str)</dt>
+<dd>
+command name to be sent
+</dd>
+<dt><i>params</i> (dict)</dt>
+<dd>
+dictionary of named parameters for the command
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/eric6/Documentation/Source/eric6.E5Network.E5JsonServer.html	Thu Jun 03 11:39:23 2021 +0200
@@ -0,0 +1,311 @@
+<!DOCTYPE html>
+<html><head>
+<title>eric6.E5Network.E5JsonServer</title>
+<meta charset="UTF-8">
+<style>
+body {
+    background: #EDECE6;
+    margin: 0em 1em 10em 1em;
+    color: black;
+}
+
+h1 { color: white; background: #85774A; }
+h2 { color: white; background: #85774A; }
+h3 { color: white; background: #9D936E; }
+h4 { color: white; background: #9D936E; }
+    
+a { color: #BA6D36; }
+
+</style>
+</head>
+<body>
+<a NAME="top" ID="top"></a>
+<h1>eric6.E5Network.E5JsonServer</h1>
+
+<p>
+Module implementing the JSON based server base class.
+</p>
+<h3>Global Attributes</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Classes</h3>
+
+<table>
+
+<tr>
+<td><a href="#E5JsonServer">E5JsonServer</a></td>
+<td>Class implementing a JSON based server base class.</td>
+</tr>
+</table>
+<h3>Functions</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+<hr />
+<hr />
+<a NAME="E5JsonServer" ID="E5JsonServer"></a>
+<h2>E5JsonServer</h2>
+
+<p>
+    Class implementing a JSON based server base class.
+</p>
+<h3>Derived from</h3>
+QTcpServer
+<h3>Class Attributes</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Class Methods</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Methods</h3>
+
+<table>
+
+<tr>
+<td><a href="#E5JsonServer.__init__">E5JsonServer</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#E5JsonServer.__handleDisconnect">__handleDisconnect</a></td>
+<td>Private slot handling a disconnect of the client.</td>
+</tr>
+<tr>
+<td><a href="#E5JsonServer.__receiveJson">__receiveJson</a></td>
+<td>Private slot handling received data from the client.</td>
+</tr>
+<tr>
+<td><a href="#E5JsonServer.connectionNames">connectionNames</a></td>
+<td>Public method to get the list of active connection names.</td>
+</tr>
+<tr>
+<td><a href="#E5JsonServer.handleCall">handleCall</a></td>
+<td>Public method to handle a method call from the client.</td>
+</tr>
+<tr>
+<td><a href="#E5JsonServer.handleNewConnection">handleNewConnection</a></td>
+<td>Public slot for new incoming connections from a client.</td>
+</tr>
+<tr>
+<td><a href="#E5JsonServer.sendJson">sendJson</a></td>
+<td>Public method to send a single command to a client.</td>
+</tr>
+<tr>
+<td><a href="#E5JsonServer.startClient">startClient</a></td>
+<td>Public method to start a client process.</td>
+</tr>
+<tr>
+<td><a href="#E5JsonServer.stopAllClients">stopAllClients</a></td>
+<td>Public method to stop all clients.</td>
+</tr>
+<tr>
+<td><a href="#E5JsonServer.stopClient">stopClient</a></td>
+<td>Public method to stop a client process.</td>
+</tr>
+</table>
+<h3>Static Methods</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<a NAME="E5JsonServer.__init__" ID="E5JsonServer.__init__"></a>
+<h4>E5JsonServer (Constructor)</h4>
+<b>E5JsonServer</b>(<i>name="", multiplex=False, parent=None</i>)
+
+<p>
+        Constructor
+</p>
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+name of the server (used for output only)
+</dd>
+<dt><i>multiplex</i> (bool)</dt>
+<dd>
+flag indicating a multiplexing server
+</dd>
+<dt><i>parent</i> (QObject)</dt>
+<dd>
+parent object
+</dd>
+</dl>
+<a NAME="E5JsonServer.__handleDisconnect" ID="E5JsonServer.__handleDisconnect"></a>
+<h4>E5JsonServer.__handleDisconnect</h4>
+<b>__handleDisconnect</b>(<i>idString</i>)
+
+<p>
+        Private slot handling a disconnect of the client.
+</p>
+<dl>
+
+<dt><i>idString</i> (str)</dt>
+<dd>
+id of the connection been disconnected
+</dd>
+</dl>
+<a NAME="E5JsonServer.__receiveJson" ID="E5JsonServer.__receiveJson"></a>
+<h4>E5JsonServer.__receiveJson</h4>
+<b>__receiveJson</b>(<i>idString</i>)
+
+<p>
+        Private slot handling received data from the client.
+</p>
+<dl>
+
+<dt><i>idString</i> (str)</dt>
+<dd>
+id of the connection been disconnected
+</dd>
+</dl>
+<a NAME="E5JsonServer.connectionNames" ID="E5JsonServer.connectionNames"></a>
+<h4>E5JsonServer.connectionNames</h4>
+<b>connectionNames</b>(<i></i>)
+
+<p>
+        Public method to get the list of active connection names.
+</p>
+<p>
+        If this is not a multiplexing server, an empty list is returned.
+</p>
+<dl>
+<dt>Return:</dt>
+<dd>
+list of active connection names
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of str
+</dd>
+</dl>
+<a NAME="E5JsonServer.handleCall" ID="E5JsonServer.handleCall"></a>
+<h4>E5JsonServer.handleCall</h4>
+<b>handleCall</b>(<i>method, params</i>)
+
+<p>
+        Public method to handle a method call from the client.
+</p>
+<p>
+        Note: This is an empty implementation that must be overridden in
+        derived classes.
+</p>
+<dl>
+
+<dt><i>method</i> (str)</dt>
+<dd>
+requested method name
+</dd>
+<dt><i>params</i> (dict)</dt>
+<dd>
+dictionary with method specific parameters
+</dd>
+</dl>
+<a NAME="E5JsonServer.handleNewConnection" ID="E5JsonServer.handleNewConnection"></a>
+<h4>E5JsonServer.handleNewConnection</h4>
+<b>handleNewConnection</b>(<i></i>)
+
+<p>
+        Public slot for new incoming connections from a client.
+</p>
+<a NAME="E5JsonServer.sendJson" ID="E5JsonServer.sendJson"></a>
+<h4>E5JsonServer.sendJson</h4>
+<b>sendJson</b>(<i>command, params, flush=False, idString=""</i>)
+
+<p>
+        Public method to send a single command to a client.
+</p>
+<dl>
+
+<dt><i>command</i> (str)</dt>
+<dd>
+command name to be sent
+</dd>
+<dt><i>params</i> (dict)</dt>
+<dd>
+dictionary of named parameters for the command
+</dd>
+<dt><i>flush</i> (bool)</dt>
+<dd>
+flag indicating to flush the data to the socket
+</dd>
+<dt><i>idString</i> (str)</dt>
+<dd>
+id of the connection to send data to
+</dd>
+</dl>
+<a NAME="E5JsonServer.startClient" ID="E5JsonServer.startClient"></a>
+<h4>E5JsonServer.startClient</h4>
+<b>startClient</b>(<i>interpreter, clientScript, clientArgs, idString="", environment=None</i>)
+
+<p>
+        Public method to start a client process.
+</p>
+<dl>
+
+<dt><i>interpreter</i> (str)</dt>
+<dd>
+interpreter to be used for the client
+</dd>
+<dt><i>clientScript</i> (str)</dt>
+<dd>
+path to the client script
+</dd>
+<dt><i>clientArgs</i></dt>
+<dd>
+list of arguments for the client
+</dd>
+<dt><i>idString</i> (str)</dt>
+<dd>
+id of the client to be started
+</dd>
+<dt><i>environment</i> (dict)</dt>
+<dd>
+dictionary of environment settings to pass
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating a successful client start and the exit code
+            in case of an issue
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool, int
+</dd>
+</dl>
+<a NAME="E5JsonServer.stopAllClients" ID="E5JsonServer.stopAllClients"></a>
+<h4>E5JsonServer.stopAllClients</h4>
+<b>stopAllClients</b>(<i></i>)
+
+<p>
+        Public method to stop all clients.
+</p>
+<a NAME="E5JsonServer.stopClient" ID="E5JsonServer.stopClient"></a>
+<h4>E5JsonServer.stopClient</h4>
+<b>stopClient</b>(<i>idString=""</i>)
+
+<p>
+        Public method to stop a client process.
+</p>
+<dl>
+
+<dt><i>idString</i> (str)</dt>
+<dd>
+id of the client to be stopped
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
\ No newline at end of file
--- a/eric6/Documentation/Source/eric6.Globals.__init__.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Globals.__init__.html	Thu Jun 03 11:39:23 2021 +0200
@@ -28,7 +28,7 @@
 <h3>Global Attributes</h3>
 
 <table>
-<tr><td>configDir</td></tr><tr><td>recentNameBreakpointConditions</td></tr><tr><td>recentNameBreakpointFiles</td></tr><tr><td>recentNameFiles</td></tr><tr><td>recentNameHexFiles</td></tr><tr><td>recentNameHosts</td></tr><tr><td>recentNameMultiProject</td></tr><tr><td>recentNameProject</td></tr><tr><td>settingsNameGlobal</td></tr><tr><td>settingsNameOrganization</td></tr><tr><td>settingsNameRecent</td></tr>
+<tr><td>configDir</td></tr><tr><td>getPythonModulesDirectory</td></tr><tr><td>recentNameBreakpointConditions</td></tr><tr><td>recentNameBreakpointFiles</td></tr><tr><td>recentNameFiles</td></tr><tr><td>recentNameHexFiles</td></tr><tr><td>recentNameHosts</td></tr><tr><td>recentNameMultiProject</td></tr><tr><td>recentNameProject</td></tr><tr><td>settingsNameGlobal</td></tr><tr><td>settingsNameOrganization</td></tr><tr><td>settingsNameRecent</td></tr>
 </table>
 <h3>Classes</h3>
 
@@ -64,8 +64,8 @@
 <td>Module function to get the path of the PyQt tools.</td>
 </tr>
 <tr>
-<td><a href="#getPythonModulesDirectory">getPythonModulesDirectory</a></td>
-<td>Function to determine the path to Python's modules directory.</td>
+<td><a href="#getPythonLibraryDirectory">getPythonLibraryDirectory</a></td>
+<td>Function to determine the path to Python's library directory.</td>
 </tr>
 <tr>
 <td><a href="#getQtBinariesPath">getQtBinariesPath</a></td>
@@ -277,17 +277,23 @@
 <div align="right"><a href="#top">Up</a></div>
 <hr />
 <hr />
-<a NAME="getPythonModulesDirectory" ID="getPythonModulesDirectory"></a>
-<h2>getPythonModulesDirectory</h2>
-<b>getPythonModulesDirectory</b>(<i></i>)
+<a NAME="getPythonLibraryDirectory" ID="getPythonLibraryDirectory"></a>
+<h2>getPythonLibraryDirectory</h2>
+<b>getPythonLibraryDirectory</b>(<i></i>)
 
 <p>
-    Function to determine the path to Python's modules directory.
+    Function to determine the path to Python's library directory.
 </p>
 <dl>
 <dt>Return:</dt>
 <dd>
-path to the Python modules directory (string)
+path to the Python library directory
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/eric6/Documentation/Source/eric6.Graphics.ApplicationDiagramBuilder.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Graphics.ApplicationDiagramBuilder.html	Thu Jun 03 11:39:23 2021 +0200
@@ -77,18 +77,30 @@
 <td>Private method to add a package to the diagram.</td>
 </tr>
 <tr>
+<td><a href="#ApplicationDiagramBuilder.__arrangeNodes">__arrangeNodes</a></td>
+<td>Private method to arrange the shapes on the canvas.</td>
+</tr>
+<tr>
 <td><a href="#ApplicationDiagramBuilder.__buildModulesDict">__buildModulesDict</a></td>
 <td>Private method to build a dictionary of modules contained in the application.</td>
 </tr>
 <tr>
 <td><a href="#ApplicationDiagramBuilder.__createAssociations">__createAssociations</a></td>
-<td>Private method to generate the associations between the package shapes.</td>
+<td>Private method to generate the associations between the module shapes.</td>
+</tr>
+<tr>
+<td><a href="#ApplicationDiagramBuilder.__findApplicationRoot">__findApplicationRoot</a></td>
+<td>Private method to find the application root path.</td>
 </tr>
 <tr>
 <td><a href="#ApplicationDiagramBuilder.buildDiagram">buildDiagram</a></td>
 <td>Public method to build the packages shapes of the diagram.</td>
 </tr>
 <tr>
+<td><a href="#ApplicationDiagramBuilder.fromDict">fromDict</a></td>
+<td>Public method to populate the class with data persisted by 'toDict()'.</td>
+</tr>
+<tr>
 <td><a href="#ApplicationDiagramBuilder.getPersistenceData">getPersistenceData</a></td>
 <td>Public method to get a string for data to be persisted.</td>
 </tr>
@@ -96,6 +108,10 @@
 <td><a href="#ApplicationDiagramBuilder.parsePersistenceData">parsePersistenceData</a></td>
 <td>Public method to parse persisted data.</td>
 </tr>
+<tr>
+<td><a href="#ApplicationDiagramBuilder.toDict">toDict</a></td>
+<td>Public method to collect data to be persisted.</td>
+</tr>
 </table>
 <h3>Static Methods</h3>
 
@@ -112,22 +128,22 @@
 </p>
 <dl>
 
-<dt><i>dialog</i></dt>
+<dt><i>dialog</i> (UMLDialog)</dt>
 <dd>
-reference to the UML dialog (UMLDialog)
+reference to the UML dialog
 </dd>
-<dt><i>view</i></dt>
+<dt><i>view</i> (UMLGraphicsView)</dt>
 <dd>
-reference to the view object (UMLGraphicsView)
+reference to the view object
 </dd>
-<dt><i>project</i></dt>
+<dt><i>project</i> (Project)</dt>
 <dd>
-reference to the project object (Project)
+reference to the project object
 </dd>
-<dt><i>noModules</i></dt>
+<dt><i>noModules</i> (bool)</dt>
 <dd>
 flag indicating, that no module names should be
-            shown (boolean)
+            shown
 </dd>
 </dl>
 <a NAME="ApplicationDiagramBuilder.__addPackage" ID="ApplicationDiagramBuilder.__addPackage"></a>
@@ -139,28 +155,59 @@
 </p>
 <dl>
 
-<dt><i>name</i></dt>
+<dt><i>name</i> (str)</dt>
 <dd>
-package name to be shown (string)
+package name to be shown
 </dd>
-<dt><i>modules</i></dt>
+<dt><i>modules</i> (list of str)</dt>
 <dd>
 list of module names contained in the package
-            (list of strings)
 </dd>
-<dt><i>x</i></dt>
+<dt><i>x</i> (float)</dt>
 <dd>
-x-coordinate (float)
+x-coordinate
 </dd>
-<dt><i>y</i></dt>
+<dt><i>y</i> (float)</dt>
 <dd>
-y-coordinate (float)
+y-coordinate
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-reference to the package item (PackageItem)
+reference to the package item
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+PackageItem
+</dd>
+</dl>
+<a NAME="ApplicationDiagramBuilder.__arrangeNodes" ID="ApplicationDiagramBuilder.__arrangeNodes"></a>
+<h4>ApplicationDiagramBuilder.__arrangeNodes</h4>
+<b>__arrangeNodes</b>(<i>nodes, routes, whiteSpaceFactor=1.2</i>)
+
+<p>
+        Private method to arrange the shapes on the canvas.
+</p>
+<p>
+        The algorithm is borrowed from Boa Constructor.
+</p>
+<dl>
+
+<dt><i>nodes</i> (list of str)</dt>
+<dd>
+list of nodes to arrange
+</dd>
+<dt><i>routes</i> (list of tuple of (str, str))</dt>
+<dd>
+list of routes
+</dd>
+<dt><i>whiteSpaceFactor</i> (float)</dt>
+<dd>
+factor to increase whitespace between
+            items
 </dd>
 </dl>
 <a NAME="ApplicationDiagramBuilder.__buildModulesDict" ID="ApplicationDiagramBuilder.__buildModulesDict"></a>
@@ -174,21 +221,46 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-dictionary of modules contained in the application.
+dictionary of modules contained in the application
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
 </dd>
 </dl>
 <a NAME="ApplicationDiagramBuilder.__createAssociations" ID="ApplicationDiagramBuilder.__createAssociations"></a>
 <h4>ApplicationDiagramBuilder.__createAssociations</h4>
-<b>__createAssociations</b>(<i>shapes</i>)
+<b>__createAssociations</b>(<i>routes</i>)
 
 <p>
-        Private method to generate the associations between the package shapes.
+        Private method to generate the associations between the module shapes.
 </p>
 <dl>
 
-<dt><i>shapes</i></dt>
+<dt><i>routes</i> (list of tuple of (str, str))</dt>
 <dd>
-list of shapes
+list of associations
+</dd>
+</dl>
+<a NAME="ApplicationDiagramBuilder.__findApplicationRoot" ID="ApplicationDiagramBuilder.__findApplicationRoot"></a>
+<h4>ApplicationDiagramBuilder.__findApplicationRoot</h4>
+<b>__findApplicationRoot</b>(<i></i>)
+
+<p>
+        Private method to find the application root path.
+</p>
+<dl>
+<dt>Return:</dt>
+<dd>
+application root path
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <a NAME="ApplicationDiagramBuilder.buildDiagram" ID="ApplicationDiagramBuilder.buildDiagram"></a>
@@ -198,6 +270,37 @@
 <p>
         Public method to build the packages shapes of the diagram.
 </p>
+<a NAME="ApplicationDiagramBuilder.fromDict" ID="ApplicationDiagramBuilder.fromDict"></a>
+<h4>ApplicationDiagramBuilder.fromDict</h4>
+<b>fromDict</b>(<i>version, data</i>)
+
+<p>
+        Public method to populate the class with data persisted by 'toDict()'.
+</p>
+<dl>
+
+<dt><i>version</i> (str)</dt>
+<dd>
+version of the data
+</dd>
+<dt><i>data</i> (dict)</dt>
+<dd>
+dictionary containing the persisted data
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+tuple containing a flag indicating success and an info
+            message in case the diagram belongs to a different project
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+tuple of (bool, str)
+</dd>
+</dl>
 <a NAME="ApplicationDiagramBuilder.getPersistenceData" ID="ApplicationDiagramBuilder.getPersistenceData"></a>
 <h4>ApplicationDiagramBuilder.getPersistenceData</h4>
 <b>getPersistenceData</b>(<i></i>)
@@ -208,7 +311,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-persisted data string (string)
+persisted data string
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <a NAME="ApplicationDiagramBuilder.parsePersistenceData" ID="ApplicationDiagramBuilder.parsePersistenceData"></a>
@@ -220,19 +329,44 @@
 </p>
 <dl>
 
-<dt><i>version</i></dt>
+<dt><i>version</i> (str)</dt>
 <dd>
-version of the data (string)
+version of the data
 </dd>
-<dt><i>data</i></dt>
+<dt><i>data</i> (str)</dt>
 <dd>
-persisted data to be parsed (string)
+persisted data to be parsed
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-flag indicating success (boolean)
+flag indicating success
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="ApplicationDiagramBuilder.toDict" ID="ApplicationDiagramBuilder.toDict"></a>
+<h4>ApplicationDiagramBuilder.toDict</h4>
+<b>toDict</b>(<i></i>)
+
+<p>
+        Public method to collect data to be persisted.
+</p>
+<dl>
+<dt>Return:</dt>
+<dd>
+dictionary containing data to be persisted
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/eric6/Documentation/Source/eric6.Graphics.AssociationItem.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Graphics.AssociationItem.html	Thu Jun 03 11:39:23 2021 +0200
@@ -76,6 +76,10 @@
 <table>
 
 <tr>
+<td><a href="#AssociationItem.fromDict">fromDict</a></td>
+<td>Class method to create an association item from persisted data.</td>
+</tr>
+<tr>
 <td><a href="#AssociationItem.parseAssociationItemDataString">parseAssociationItemDataString</a></td>
 <td>Class method to parse the given persistence data.</td>
 </tr>
@@ -110,7 +114,7 @@
 </tr>
 <tr>
 <td><a href="#AssociationItem.__findRectIntersectionPoint">__findRectIntersectionPoint</a></td>
-<td>Private method to find the intersetion point of a line with a rectangle.</td>
+<td>Private method to find the intersection point of a line with a rectangle.</td>
 </tr>
 <tr>
 <td><a href="#AssociationItem.__mapRectFromItem">__mapRectFromItem</a></td>
@@ -125,6 +129,10 @@
 <td>Public method to build a string to persist the specific item data.</td>
 </tr>
 <tr>
+<td><a href="#AssociationItem.toDict">toDict</a></td>
+<td>Public method to collect data to be persisted.</td>
+</tr>
+<tr>
 <td><a href="#AssociationItem.unassociate">unassociate</a></td>
 <td>Public method to unassociate from the widgets.</td>
 </tr>
@@ -139,6 +147,41 @@
 <tr><td>None</td></tr>
 </table>
 
+<a NAME="AssociationItem.fromDict" ID="AssociationItem.fromDict"></a>
+<h4>AssociationItem.fromDict (class method)</h4>
+<b>fromDict</b>(<i>data, umlItems, colors=None</i>)
+
+<p>
+        Class method to create an association item from persisted data.
+</p>
+<dl>
+
+<dt><i>data</i> (dict)</dt>
+<dd>
+dictionary containing the persisted data as generated
+            by toDict()
+</dd>
+<dt><i>umlItems</i> (list of UMLItem)</dt>
+<dd>
+list of UML items
+</dd>
+<dt><i>colors</i> (tuple of (QColor, QColor))</dt>
+<dd>
+tuple containing the foreground and background colors
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+created association item
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+AssociationItem
+</dd>
+</dl>
 <a NAME="AssociationItem.parseAssociationItemDataString" ID="AssociationItem.parseAssociationItemDataString"></a>
 <h4>AssociationItem.parseAssociationItemDataString (class method)</h4>
 <b>parseAssociationItemDataString</b>(<i>data</i>)
@@ -148,9 +191,9 @@
 </p>
 <dl>
 
-<dt><i>data</i></dt>
+<dt><i>data</i> (str)</dt>
 <dd>
-persisted data to be parsed (string)
+persisted data to be parsed
 </dd>
 </dl>
 <dl>
@@ -158,7 +201,13 @@
 <dd>
 tuple with the IDs of the source and destination items,
             the association type and a flag indicating to associate from top
-            to bottom (integer, integer, integer, boolean)
+            to bottom
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+tuple of (int, int, int, bool)
 </dd>
 </dl>
 <a NAME="AssociationItem.__init__" ID="AssociationItem.__init__"></a>
@@ -293,27 +342,33 @@
 </p>
 <dl>
 
-<dt><i>p1</i></dt>
+<dt><i>p1</i> (QPointF)</dt>
 <dd>
-first point of first line (QPointF)
+first point of first line
 </dd>
-<dt><i>p2</i></dt>
+<dt><i>p2</i> (QPointF)</dt>
 <dd>
-second point of first line (QPointF)
+second point of first line
 </dd>
-<dt><i>p3</i></dt>
+<dt><i>p3</i> (QPointF)</dt>
 <dd>
-first point of second line (QPointF)
+first point of second line
 </dd>
-<dt><i>p4</i></dt>
+<dt><i>p4</i> (QPointF)</dt>
 <dd>
-second point of second line (QPointF)
+second point of second line
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-the intersection point (QPointF)
+the intersection point
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+QPointF
 </dd>
 </dl>
 <a NAME="AssociationItem.__findPointRegion" ID="AssociationItem.__findPointRegion"></a>
@@ -326,17 +381,17 @@
 </p>
 <dl>
 
-<dt><i>rect</i></dt>
+<dt><i>rect</i> (QRectF)</dt>
 <dd>
-rectangle to calculate the region for (QRectF)
+rectangle to calculate the region for
 </dd>
-<dt><i>posX</i></dt>
+<dt><i>posX</i> (float)</dt>
 <dd>
-x position of point (float)
+x position of point
 </dd>
-<dt><i>posY</i></dt>
+<dt><i>posY</i> (float)</dt>
 <dd>
-y position of point (float)
+y position of point
 </dd>
 </dl>
 <dl>
@@ -354,33 +409,45 @@
             Center = On diagonal 1 and On diagonal 2 (the center)<br />
 </dd>
 </dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+AssociationPointRegion
+</dd>
+</dl>
 <a NAME="AssociationItem.__findRectIntersectionPoint" ID="AssociationItem.__findRectIntersectionPoint"></a>
 <h4>AssociationItem.__findRectIntersectionPoint</h4>
 <b>__findRectIntersectionPoint</b>(<i>item, p1, p2</i>)
 
 <p>
-        Private method to find the intersetion point of a line with a
+        Private method to find the intersection point of a line with a
         rectangle.
 </p>
 <dl>
 
-<dt><i>item</i></dt>
+<dt><i>item</i> (UMLItem)</dt>
 <dd>
 item to check against
 </dd>
-<dt><i>p1</i></dt>
+<dt><i>p1</i> (QPointF)</dt>
 <dd>
-first point of the line (QPointF)
+first point of the line
 </dd>
-<dt><i>p2</i></dt>
+<dt><i>p2</i> (QPointF)</dt>
 <dd>
-second point of the line (QPointF)
+second point of the line
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-the intersection point (QPointF)
+the intersection point
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+QPointF
 </dd>
 </dl>
 <a NAME="AssociationItem.__mapRectFromItem" ID="AssociationItem.__mapRectFromItem"></a>
@@ -393,15 +460,21 @@
 </p>
 <dl>
 
-<dt><i>item</i></dt>
+<dt><i>item</i> (QGraphicsRectItem)</dt>
 <dd>
-reference to the item to be mapped (QGraphicsRectItem)
+reference to the item to be mapped
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-item's rectangle in local coordinates (QRectF)
+item's rectangle in local coordinates
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+QRectF
 </dd>
 </dl>
 <a NAME="AssociationItem.__updateEndPoint" ID="AssociationItem.__updateEndPoint"></a>
@@ -413,13 +486,13 @@
 </p>
 <dl>
 
-<dt><i>region</i></dt>
+<dt><i>region</i> (AssociationPointRegion)</dt>
 <dd>
-the region for the endpoint (integer)
+the region for the endpoint
 </dd>
-<dt><i>isWidgetA</i></dt>
+<dt><i>isWidgetA</i> (bool)</dt>
 <dd>
-flag indicating update for itemA is done (boolean)
+flag indicating update for itemA is done
 </dd>
 </dl>
 <a NAME="AssociationItem.buildAssociationItemDataString" ID="AssociationItem.buildAssociationItemDataString"></a>
@@ -436,7 +509,32 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-persistence data (string)
+persistence data
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="AssociationItem.toDict" ID="AssociationItem.toDict"></a>
+<h4>AssociationItem.toDict</h4>
+<b>toDict</b>(<i></i>)
+
+<p>
+        Public method to collect data to be persisted.
+</p>
+<dl>
+<dt>Return:</dt>
+<dd>
+dictionary containing data to be persisted
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
 </dd>
 </dl>
 <a NAME="AssociationItem.unassociate" ID="AssociationItem.unassociate"></a>
--- a/eric6/Documentation/Source/eric6.Graphics.ClassItem.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Graphics.ClassItem.html	Thu Jun 03 11:39:23 2021 +0200
@@ -66,7 +66,11 @@
 <h3>Class Methods</h3>
 
 <table>
-<tr><td>None</td></tr>
+
+<tr>
+<td><a href="#ClassItem.fromDict">fromDict</a></td>
+<td>Class method to create a class item from persisted data.</td>
+</tr>
 </table>
 <h3>Methods</h3>
 
@@ -104,6 +108,10 @@
 <td><a href="#ClassItem.setModel">setModel</a></td>
 <td>Public method to set the class model.</td>
 </tr>
+<tr>
+<td><a href="#ClassItem.toDict">toDict</a></td>
+<td>Public method to collect data to be persisted.</td>
+</tr>
 </table>
 <h3>Static Methods</h3>
 
@@ -111,6 +119,37 @@
 <tr><td>None</td></tr>
 </table>
 
+<a NAME="ClassItem.fromDict" ID="ClassItem.fromDict"></a>
+<h4>ClassItem.fromDict (class method)</h4>
+<b>fromDict</b>(<i>data, colors=None</i>)
+
+<p>
+        Class method to create a class item from persisted data.
+</p>
+<dl>
+
+<dt><i>data</i> (dict)</dt>
+<dd>
+dictionary containing the persisted data as generated
+            by toDict()
+</dd>
+<dt><i>colors</i> (tuple of (QColor, QColor))</dt>
+<dd>
+tuple containing the foreground and background colors
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+created class item
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+ClassItem
+</dd>
+</dl>
 <a NAME="ClassItem.__init__" ID="ClassItem.__init__"></a>
 <h4>ClassItem (Constructor)</h4>
 <b>ClassItem</b>(<i>model=None, external=False, x=0, y=0, rounded=False, noAttrs=False, colors=None, parent=None, scene=None</i>)
@@ -186,7 +225,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-persistence data (string)
+persistence data
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <a NAME="ClassItem.isExternal" ID="ClassItem.isExternal"></a>
@@ -199,7 +244,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-external state (boolean)
+external state
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
 </dd>
 </dl>
 <a NAME="ClassItem.paint" ID="ClassItem.paint"></a>
@@ -211,17 +262,17 @@
 </p>
 <dl>
 
-<dt><i>painter</i></dt>
+<dt><i>painter</i> (QPainter)</dt>
 <dd>
-reference to the painter object (QPainter)
+reference to the painter object
 </dd>
-<dt><i>option</i></dt>
+<dt><i>option</i> (QStyleOptionGraphicsItem)</dt>
 <dd>
-style options (QStyleOptionGraphicsItem)
+style options
 </dd>
-<dt><i>widget</i></dt>
+<dt><i>widget</i> (QWidget)</dt>
 <dd>
-optional reference to the widget painted on (QWidget)
+optional reference to the widget painted on
 </dd>
 </dl>
 <a NAME="ClassItem.parseItemDataString" ID="ClassItem.parseItemDataString"></a>
@@ -233,19 +284,25 @@
 </p>
 <dl>
 
-<dt><i>version</i></dt>
+<dt><i>version</i> (str)</dt>
 <dd>
-version of the data (string)
+version of the data
 </dd>
-<dt><i>data</i></dt>
+<dt><i>data</i> (str)</dt>
 <dd>
-persisted data to be parsed (string)
+persisted data to be parsed
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-flag indicating success (boolean)
+flag indicating success
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
 </dd>
 </dl>
 <a NAME="ClassItem.setModel" ID="ClassItem.setModel"></a>
@@ -257,9 +314,28 @@
 </p>
 <dl>
 
-<dt><i>model</i></dt>
+<dt><i>model</i> (ClassModel)</dt>
 <dd>
-class model containing the class data (ClassModel)
+class model containing the class data
+</dd>
+</dl>
+<a NAME="ClassItem.toDict" ID="ClassItem.toDict"></a>
+<h4>ClassItem.toDict</h4>
+<b>toDict</b>(<i></i>)
+
+<p>
+        Public method to collect data to be persisted.
+</p>
+<dl>
+<dt>Return:</dt>
+<dd>
+dictionary containing data to be persisted
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
@@ -292,15 +368,23 @@
 <td>Constructor</td>
 </tr>
 <tr>
-<td><a href="#ClassModel.addAttribute">addAttribute</a></td>
-<td>Public method to add an attribute to the class model.</td>
+<td><a href="#ClassModel.addClassAttribute">addClassAttribute</a></td>
+<td>Public method to add a class attribute to the class model.</td>
+</tr>
+<tr>
+<td><a href="#ClassModel.addInstanceAttribute">addInstanceAttribute</a></td>
+<td>Public method to add an instance attribute to the class model.</td>
 </tr>
 <tr>
 <td><a href="#ClassModel.addMethod">addMethod</a></td>
 <td>Public method to add a method to the class model.</td>
 </tr>
 <tr>
-<td><a href="#ClassModel.getAttributes">getAttributes</a></td>
+<td><a href="#ClassModel.getClassAttributes">getClassAttributes</a></td>
+<td>Public method to retrieve the global attributes of the class.</td>
+</tr>
+<tr>
+<td><a href="#ClassModel.getInstanceAttributes">getInstanceAttributes</a></td>
 <td>Public method to retrieve the attributes of the class.</td>
 </tr>
 <tr>
@@ -316,40 +400,56 @@
 
 <a NAME="ClassModel.__init__" ID="ClassModel.__init__"></a>
 <h4>ClassModel (Constructor)</h4>
-<b>ClassModel</b>(<i>name, methods=None, attributes=None</i>)
+<b>ClassModel</b>(<i>name, methods=None, instanceAttributes=None, classAttributes=None</i>)
 
 <p>
         Constructor
 </p>
 <dl>
 
-<dt><i>name</i></dt>
+<dt><i>name</i> (str)</dt>
 <dd>
-the class name (string)
+the class name
 </dd>
-<dt><i>methods</i></dt>
+<dt><i>methods</i> (list of str)</dt>
 <dd>
 list of method names of the class
-            (list of strings)
 </dd>
-<dt><i>attributes</i></dt>
+<dt><i>instanceAttributes</i> (list of str)</dt>
 <dd>
-list of attribute names of the class
-            (list of strings)
+list of instance attribute names of the class
+</dd>
+<dt><i>classAttributes</i> (list of str)</dt>
+<dd>
+list of class attribute names of the class
 </dd>
 </dl>
-<a NAME="ClassModel.addAttribute" ID="ClassModel.addAttribute"></a>
-<h4>ClassModel.addAttribute</h4>
-<b>addAttribute</b>(<i>attribute</i>)
+<a NAME="ClassModel.addClassAttribute" ID="ClassModel.addClassAttribute"></a>
+<h4>ClassModel.addClassAttribute</h4>
+<b>addClassAttribute</b>(<i>attribute</i>)
 
 <p>
-        Public method to add an attribute to the class model.
+        Public method to add a class attribute to the class model.
 </p>
 <dl>
 
-<dt><i>attribute</i></dt>
+<dt><i>attribute</i> (str)</dt>
 <dd>
-attribute name to be added (string)
+class attribute name to be added
+</dd>
+</dl>
+<a NAME="ClassModel.addInstanceAttribute" ID="ClassModel.addInstanceAttribute"></a>
+<h4>ClassModel.addInstanceAttribute</h4>
+<b>addInstanceAttribute</b>(<i>attribute</i>)
+
+<p>
+        Public method to add an instance attribute to the class model.
+</p>
+<dl>
+
+<dt><i>attribute</i> (str)</dt>
+<dd>
+instance attribute name to be added
 </dd>
 </dl>
 <a NAME="ClassModel.addMethod" ID="ClassModel.addMethod"></a>
@@ -361,14 +461,33 @@
 </p>
 <dl>
 
-<dt><i>method</i></dt>
+<dt><i>method</i> (str)</dt>
 <dd>
-method name to be added (string)
+method name to be added
 </dd>
 </dl>
-<a NAME="ClassModel.getAttributes" ID="ClassModel.getAttributes"></a>
-<h4>ClassModel.getAttributes</h4>
-<b>getAttributes</b>(<i></i>)
+<a NAME="ClassModel.getClassAttributes" ID="ClassModel.getClassAttributes"></a>
+<h4>ClassModel.getClassAttributes</h4>
+<b>getClassAttributes</b>(<i></i>)
+
+<p>
+        Public method to retrieve the global attributes of the class.
+</p>
+<dl>
+<dt>Return:</dt>
+<dd>
+list of class attributes
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of str
+</dd>
+</dl>
+<a NAME="ClassModel.getInstanceAttributes" ID="ClassModel.getInstanceAttributes"></a>
+<h4>ClassModel.getInstanceAttributes</h4>
+<b>getInstanceAttributes</b>(<i></i>)
 
 <p>
         Public method to retrieve the attributes of the class.
@@ -376,7 +495,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-list of class attributes (list of strings)
+list of instance attributes
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of str
 </dd>
 </dl>
 <a NAME="ClassModel.getMethods" ID="ClassModel.getMethods"></a>
@@ -389,7 +514,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-list of class methods (list of strings)
+list of class methods
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of str
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/eric6/Documentation/Source/eric6.Graphics.GraphicsUtilities.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Graphics.GraphicsUtilities.html	Thu Jun 03 11:39:23 2021 +0200
@@ -98,7 +98,7 @@
 </p>
 <dl>
 
-<dt><i>routes</i></dt>
+<dt><i>routes</i> (list of tuple of (str, str))</dt>
 <dd>
 list of routes between nodes
 </dd>
@@ -109,6 +109,12 @@
 dictionary of child and dictionary of parent relationships
 </dd>
 </dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+tuple of (dict, dict)
+</dd>
+</dl>
 <div align="right"><a href="#top">Up</a></div>
 <hr />
 <hr />
@@ -128,15 +134,15 @@
 </p>
 <dl>
 
-<dt><i>nodes</i></dt>
+<dt><i>nodes</i> (str)</dt>
 <dd>
 list of nodes to be sorted
 </dd>
-<dt><i>routes</i></dt>
+<dt><i>routes</i> (list of tuple of (str, str))</dt>
 <dd>
 list of routes between the nodes
 </dd>
-<dt><i>noRecursion</i></dt>
+<dt><i>noRecursion</i> (bool)</dt>
 <dd>
 flag indicating, if recursion errors should be raised
 </dd>
@@ -148,6 +154,12 @@
 </dd>
 </dl>
 <dl>
+<dt>Return Type:</dt>
+<dd>
+list of lists of str
+</dd>
+</dl>
+<dl>
 
 <dt>Raises <b>RecursionError</b>:</dt>
 <dd>
--- a/eric6/Documentation/Source/eric6.Graphics.ImportsDiagramBuilder.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Graphics.ImportsDiagramBuilder.html	Thu Jun 03 11:39:23 2021 +0200
@@ -81,6 +81,10 @@
 <td>Private method to add a module to the diagram.</td>
 </tr>
 <tr>
+<td><a href="#ImportsDiagramBuilder.__arrangeNodes">__arrangeNodes</a></td>
+<td>Private method to arrange the shapes on the canvas.</td>
+</tr>
+<tr>
 <td><a href="#ImportsDiagramBuilder.__buildModulesDict">__buildModulesDict</a></td>
 <td>Private method to build a dictionary of modules contained in the package.</td>
 </tr>
@@ -93,6 +97,10 @@
 <td>Public method to build the modules shapes of the diagram.</td>
 </tr>
 <tr>
+<td><a href="#ImportsDiagramBuilder.fromDict">fromDict</a></td>
+<td>Public method to populate the class with data persisted by 'toDict()'.</td>
+</tr>
+<tr>
 <td><a href="#ImportsDiagramBuilder.getPersistenceData">getPersistenceData</a></td>
 <td>Public method to get a string for data to be persisted.</td>
 </tr>
@@ -104,6 +112,10 @@
 <td><a href="#ImportsDiagramBuilder.parsePersistenceData">parsePersistenceData</a></td>
 <td>Public method to parse persisted data.</td>
 </tr>
+<tr>
+<td><a href="#ImportsDiagramBuilder.toDict">toDict</a></td>
+<td>Public method to collect data to be persisted.</td>
+</tr>
 </table>
 <h3>Static Methods</h3>
 
@@ -120,27 +132,27 @@
 </p>
 <dl>
 
-<dt><i>dialog</i></dt>
+<dt><i>dialog</i> (UMLDialog)</dt>
 <dd>
-reference to the UML dialog (UMLDialog)
+reference to the UML dialog
 </dd>
-<dt><i>view</i></dt>
+<dt><i>view</i> (UMLGraphicsView)</dt>
 <dd>
-reference to the view object (UMLGraphicsView)
+reference to the view object
 </dd>
-<dt><i>project</i></dt>
+<dt><i>project</i> (Project)</dt>
 <dd>
-reference to the project object (Project)
+reference to the project object
 </dd>
-<dt><i>package</i></dt>
+<dt><i>package</i> (str)</dt>
 <dd>
 name of a python package to show the import
-            relationships (string)
+            relationships
 </dd>
-<dt><i>showExternalImports</i></dt>
+<dt><i>showExternalImports</i> (bool)</dt>
 <dd>
 flag indicating to show exports from
-            outside the package (boolean)
+            outside the package
 </dd>
 </dl>
 <a NAME="ImportsDiagramBuilder.__addModule" ID="ImportsDiagramBuilder.__addModule"></a>
@@ -152,28 +164,59 @@
 </p>
 <dl>
 
-<dt><i>name</i></dt>
+<dt><i>name</i> (str)</dt>
 <dd>
-module name to be shown (string)
+module name to be shown
 </dd>
-<dt><i>classes</i></dt>
+<dt><i>classes</i> (list of str)</dt>
 <dd>
 list of class names contained in the module
-            (list of strings)
 </dd>
-<dt><i>x</i></dt>
+<dt><i>x</i> (float)</dt>
 <dd>
-x-coordinate (float)
+x-coordinate
 </dd>
-<dt><i>y</i></dt>
+<dt><i>y</i> (float)</dt>
 <dd>
-y-coordinate (float)
+y-coordinate
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-reference to the imports item (ModuleItem)
+reference to the imports item
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+ModuleItem
+</dd>
+</dl>
+<a NAME="ImportsDiagramBuilder.__arrangeNodes" ID="ImportsDiagramBuilder.__arrangeNodes"></a>
+<h4>ImportsDiagramBuilder.__arrangeNodes</h4>
+<b>__arrangeNodes</b>(<i>nodes, routes, whiteSpaceFactor=1.2</i>)
+
+<p>
+        Private method to arrange the shapes on the canvas.
+</p>
+<p>
+        The algorithm is borrowed from Boa Constructor.
+</p>
+<dl>
+
+<dt><i>nodes</i> (list of str)</dt>
+<dd>
+list of nodes to arrange
+</dd>
+<dt><i>routes</i> (list of tuple of (str, str))</dt>
+<dd>
+list of routes
+</dd>
+<dt><i>whiteSpaceFactor</i> (float)</dt>
+<dd>
+factor to increase whitespace between
+            items
 </dd>
 </dl>
 <a NAME="ImportsDiagramBuilder.__buildModulesDict" ID="ImportsDiagramBuilder.__buildModulesDict"></a>
@@ -187,21 +230,27 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-dictionary of modules contained in the package.
+dictionary of modules contained in the package
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
 </dd>
 </dl>
 <a NAME="ImportsDiagramBuilder.__createAssociations" ID="ImportsDiagramBuilder.__createAssociations"></a>
 <h4>ImportsDiagramBuilder.__createAssociations</h4>
-<b>__createAssociations</b>(<i>shapes</i>)
+<b>__createAssociations</b>(<i>routes</i>)
 
 <p>
         Private method to generate the associations between the module shapes.
 </p>
 <dl>
 
-<dt><i>shapes</i></dt>
+<dt><i>routes</i> (list of tuple of (str, str))</dt>
 <dd>
-list of shapes
+list of associations
 </dd>
 </dl>
 <a NAME="ImportsDiagramBuilder.buildDiagram" ID="ImportsDiagramBuilder.buildDiagram"></a>
@@ -211,6 +260,37 @@
 <p>
         Public method to build the modules shapes of the diagram.
 </p>
+<a NAME="ImportsDiagramBuilder.fromDict" ID="ImportsDiagramBuilder.fromDict"></a>
+<h4>ImportsDiagramBuilder.fromDict</h4>
+<b>fromDict</b>(<i>version, data</i>)
+
+<p>
+        Public method to populate the class with data persisted by 'toDict()'.
+</p>
+<dl>
+
+<dt><i>version</i> (str)</dt>
+<dd>
+version of the data
+</dd>
+<dt><i>data</i> (dict)</dt>
+<dd>
+dictionary containing the persisted data
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+tuple containing a flag indicating success and an info
+            message in case the diagram belongs to a different project
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+tuple of (bool, str)
+</dd>
+</dl>
 <a NAME="ImportsDiagramBuilder.getPersistenceData" ID="ImportsDiagramBuilder.getPersistenceData"></a>
 <h4>ImportsDiagramBuilder.getPersistenceData</h4>
 <b>getPersistenceData</b>(<i></i>)
@@ -221,7 +301,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-persisted data string (string)
+persisted data string
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <a NAME="ImportsDiagramBuilder.initialize" ID="ImportsDiagramBuilder.initialize"></a>
@@ -240,19 +326,44 @@
 </p>
 <dl>
 
-<dt><i>version</i></dt>
+<dt><i>version</i> (str)</dt>
 <dd>
-version of the data (string)
+version of the data
 </dd>
-<dt><i>data</i></dt>
+<dt><i>data</i> (str)</dt>
 <dd>
-persisted data to be parsed (string)
+persisted data to be parsed
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-flag indicating success (boolean)
+flag indicating success
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="ImportsDiagramBuilder.toDict" ID="ImportsDiagramBuilder.toDict"></a>
+<h4>ImportsDiagramBuilder.toDict</h4>
+<b>toDict</b>(<i></i>)
+
+<p>
+        Public method to collect data to be persisted.
+</p>
+<dl>
+<dt>Return:</dt>
+<dd>
+dictionary containing data to be persisted
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/eric6/Documentation/Source/eric6.Graphics.ModuleItem.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Graphics.ModuleItem.html	Thu Jun 03 11:39:23 2021 +0200
@@ -66,7 +66,11 @@
 <h3>Class Methods</h3>
 
 <table>
-<tr><td>None</td></tr>
+
+<tr>
+<td><a href="#ModuleItem.fromDict">fromDict</a></td>
+<td>Class method to create a class item from persisted data.</td>
+</tr>
 </table>
 <h3>Methods</h3>
 
@@ -100,6 +104,10 @@
 <td><a href="#ModuleItem.setModel">setModel</a></td>
 <td>Public method to set the module model.</td>
 </tr>
+<tr>
+<td><a href="#ModuleItem.toDict">toDict</a></td>
+<td>Public method to collect data to be persisted.</td>
+</tr>
 </table>
 <h3>Static Methods</h3>
 
@@ -107,6 +115,37 @@
 <tr><td>None</td></tr>
 </table>
 
+<a NAME="ModuleItem.fromDict" ID="ModuleItem.fromDict"></a>
+<h4>ModuleItem.fromDict (class method)</h4>
+<b>fromDict</b>(<i>data, colors=None</i>)
+
+<p>
+        Class method to create a class item from persisted data.
+</p>
+<dl>
+
+<dt><i>data</i> (dict)</dt>
+<dd>
+dictionary containing the persisted data as generated
+            by toDict()
+</dd>
+<dt><i>colors</i> (tuple of (QColor, QColor))</dt>
+<dd>
+tuple containing the foreground and background colors
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+created class item
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+ClassItem
+</dd>
+</dl>
 <a NAME="ModuleItem.__init__" ID="ModuleItem.__init__"></a>
 <h4>ModuleItem (Constructor)</h4>
 <b>ModuleItem</b>(<i>model=None, x=0, y=0, rounded=False, colors=None, parent=None, scene=None</i>)
@@ -174,7 +213,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-persistence data (string)
+persistence data
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <a NAME="ModuleItem.paint" ID="ModuleItem.paint"></a>
@@ -186,17 +231,17 @@
 </p>
 <dl>
 
-<dt><i>painter</i></dt>
+<dt><i>painter</i> (QPainter)</dt>
 <dd>
-reference to the painter object (QPainter)
+reference to the painter object
 </dd>
-<dt><i>option</i></dt>
+<dt><i>option</i> (QStyleOptionGraphicsItem)</dt>
 <dd>
-style options (QStyleOptionGraphicsItem)
+style options
 </dd>
-<dt><i>widget</i></dt>
+<dt><i>widget</i> (QWidget)</dt>
 <dd>
-optional reference to the widget painted on (QWidget)
+optional reference to the widget painted on
 </dd>
 </dl>
 <a NAME="ModuleItem.parseItemDataString" ID="ModuleItem.parseItemDataString"></a>
@@ -208,19 +253,25 @@
 </p>
 <dl>
 
-<dt><i>version</i></dt>
+<dt><i>version</i> (str)</dt>
 <dd>
-version of the data (string)
+version of the data
 </dd>
-<dt><i>data</i></dt>
+<dt><i>data</i> (str)</dt>
 <dd>
-persisted data to be parsed (string)
+persisted data to be parsed
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-flag indicating success (boolean)
+flag indicating success
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
 </dd>
 </dl>
 <a NAME="ModuleItem.setModel" ID="ModuleItem.setModel"></a>
@@ -232,9 +283,28 @@
 </p>
 <dl>
 
-<dt><i>model</i></dt>
+<dt><i>model</i> (ModuleModel)</dt>
 <dd>
-module model containing the module data (ModuleModel)
+module model containing the module data
+</dd>
+</dl>
+<a NAME="ModuleItem.toDict" ID="ModuleItem.toDict"></a>
+<h4>ModuleItem.toDict</h4>
+<b>toDict</b>(<i></i>)
+
+<p>
+        Public method to collect data to be persisted.
+</p>
+<dl>
+<dt>Return:</dt>
+<dd>
+dictionary containing data to be persisted
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
@@ -290,13 +360,13 @@
 </p>
 <dl>
 
-<dt><i>name</i></dt>
+<dt><i>name</i> (str)</dt>
 <dd>
-the module name (string)
+the module name
 </dd>
-<dt><i>classlist</i></dt>
+<dt><i>classlist</i> (list of str)</dt>
 <dd>
-list of class names (list of strings)
+list of class names
 </dd>
 </dl>
 <a NAME="ModuleModel.addClass" ID="ModuleModel.addClass"></a>
@@ -308,9 +378,9 @@
 </p>
 <dl>
 
-<dt><i>classname</i></dt>
+<dt><i>classname</i> (str)</dt>
 <dd>
-class name to be added (string)
+class name to be added
 </dd>
 </dl>
 <a NAME="ModuleModel.getClasses" ID="ModuleModel.getClasses"></a>
@@ -323,7 +393,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-list of class names (list of strings)
+list of class names
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of str
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/eric6/Documentation/Source/eric6.Graphics.PackageDiagramBuilder.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Graphics.PackageDiagramBuilder.html	Thu Jun 03 11:39:23 2021 +0200
@@ -23,7 +23,7 @@
 <h1>eric6.Graphics.PackageDiagramBuilder</h1>
 
 <p>
-Module implementing a dialog showing a UML like class diagram of a package.
+Module implementing a dialog showing an UML like class diagram of a package.
 </p>
 <h3>Global Attributes</h3>
 
@@ -109,6 +109,10 @@
 <td>Public method to build the class shapes of the package diagram.</td>
 </tr>
 <tr>
+<td><a href="#PackageDiagramBuilder.fromDict">fromDict</a></td>
+<td>Public method to populate the class with data persisted by 'toDict()'.</td>
+</tr>
+<tr>
 <td><a href="#PackageDiagramBuilder.getPersistenceData">getPersistenceData</a></td>
 <td>Public method to get a string for data to be persisted.</td>
 </tr>
@@ -120,6 +124,10 @@
 <td><a href="#PackageDiagramBuilder.parsePersistenceData">parsePersistenceData</a></td>
 <td>Public method to parse persisted data.</td>
 </tr>
+<tr>
+<td><a href="#PackageDiagramBuilder.toDict">toDict</a></td>
+<td>Public method to collect data to be persisted.</td>
+</tr>
 </table>
 <h3>Static Methods</h3>
 
@@ -136,26 +144,25 @@
 </p>
 <dl>
 
-<dt><i>dialog</i></dt>
+<dt><i>dialog</i> (UMLDialog)</dt>
 <dd>
-reference to the UML dialog (UMLDialog)
+reference to the UML dialog
 </dd>
-<dt><i>view</i></dt>
+<dt><i>view</i> (UMLGraphicsView)</dt>
 <dd>
-reference to the view object (UMLGraphicsView)
+reference to the view object
 </dd>
-<dt><i>project</i></dt>
+<dt><i>project</i> (Project)</dt>
 <dd>
-reference to the project object (Project)
+reference to the project object
 </dd>
-<dt><i>package</i></dt>
+<dt><i>package</i> (str)</dt>
 <dd>
-name of a python package to be shown (string)
+name of a python package to be shown
 </dd>
-<dt><i>noAttrs</i></dt>
+<dt><i>noAttrs</i> (bool)</dt>
 <dd>
 flag indicating, that no attributes should be shown
-            (boolean)
 </dd>
 </dl>
 <a NAME="PackageDiagramBuilder.__addExternalClass" ID="PackageDiagramBuilder.__addExternalClass"></a>
@@ -171,17 +178,17 @@
 </p>
 <dl>
 
-<dt><i>_class</i></dt>
+<dt><i>_class</i> (ModuleParser.Class)</dt>
 <dd>
-class to be shown (string)
+class to be shown
 </dd>
-<dt><i>x</i></dt>
+<dt><i>x</i> (float)</dt>
 <dd>
-x-coordinate (float)
+x-coordinate
 </dd>
-<dt><i>y</i></dt>
+<dt><i>y</i> (float)</dt>
 <dd>
-y-coordinate (float)
+y-coordinate
 </dd>
 </dl>
 <a NAME="PackageDiagramBuilder.__addLocalClass" ID="PackageDiagramBuilder.__addLocalClass"></a>
@@ -193,25 +200,25 @@
 </p>
 <dl>
 
-<dt><i>className</i></dt>
+<dt><i>className</i> (str)</dt>
 <dd>
-name of the class to be as a dictionary key (string)
+name of the class to be as a dictionary key
 </dd>
-<dt><i>_class</i></dt>
+<dt><i>_class</i> (ModuleParser.Class)</dt>
 <dd>
-class to be shown (ModuleParser.Class)
+class to be shown
 </dd>
-<dt><i>x</i></dt>
+<dt><i>x</i> (float)</dt>
 <dd>
-x-coordinate (float)
+x-coordinate
 </dd>
-<dt><i>y</i></dt>
+<dt><i>y</i> (float)</dt>
 <dd>
-y-coordinate (float)
+y-coordinate
 </dd>
-<dt><i>isRbModule</i></dt>
+<dt><i>isRbModule</i> (bool)</dt>
 <dd>
-flag indicating a Ruby module (boolean)
+flag indicating a Ruby module
 </dd>
 </dl>
 <a NAME="PackageDiagramBuilder.__addPackage" ID="PackageDiagramBuilder.__addPackage"></a>
@@ -223,22 +230,21 @@
 </p>
 <dl>
 
-<dt><i>name</i></dt>
+<dt><i>name</i> (str)</dt>
 <dd>
-package name to be shown (string)
+package name to be shown
 </dd>
-<dt><i>modules</i></dt>
+<dt><i>modules</i> (list of str)</dt>
 <dd>
 list of module names contained in the package
-            (list of strings)
 </dd>
-<dt><i>x</i></dt>
+<dt><i>x</i> (float)</dt>
 <dd>
-x-coordinate (float)
+x-coordinate
 </dd>
-<dt><i>y</i></dt>
+<dt><i>y</i> (float)</dt>
 <dd>
-y-coordinate (float)
+y-coordinate
 </dd>
 </dl>
 <a NAME="PackageDiagramBuilder.__arrangeClasses" ID="PackageDiagramBuilder.__arrangeClasses"></a>
@@ -253,18 +259,18 @@
 </p>
 <dl>
 
-<dt><i>nodes</i></dt>
+<dt><i>nodes</i> (list of str)</dt>
 <dd>
 list of nodes to arrange
 </dd>
-<dt><i>routes</i></dt>
+<dt><i>routes</i> (list of tuple of (str, str))</dt>
 <dd>
 list of routes
 </dd>
-<dt><i>whiteSpaceFactor</i></dt>
+<dt><i>whiteSpaceFactor</i> (float)</dt>
 <dd>
 factor to increase whitespace between
-            items (float)
+            items
 </dd>
 </dl>
 <a NAME="PackageDiagramBuilder.__buildModulesDict" ID="PackageDiagramBuilder.__buildModulesDict"></a>
@@ -278,7 +284,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-dictionary of modules contained in the package.
+dictionary of modules contained in the package
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
 </dd>
 </dl>
 <a NAME="PackageDiagramBuilder.__buildSubpackagesDict" ID="PackageDiagramBuilder.__buildSubpackagesDict"></a>
@@ -295,6 +307,12 @@
 dictionary of sub-packages contained in this package
 </dd>
 </dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
+</dd>
+</dl>
 <a NAME="PackageDiagramBuilder.__createAssociations" ID="PackageDiagramBuilder.__createAssociations"></a>
 <h4>PackageDiagramBuilder.__createAssociations</h4>
 <b>__createAssociations</b>(<i>routes</i>)
@@ -304,7 +322,7 @@
 </p>
 <dl>
 
-<dt><i>routes</i></dt>
+<dt><i>routes</i> (list of tuple of (str, str))</dt>
 <dd>
 list of relationsships
 </dd>
@@ -318,15 +336,21 @@
 </p>
 <dl>
 
-<dt><i>name</i></dt>
+<dt><i>name</i> (str)</dt>
 <dd>
-name of the shape (string)
+name of the shape
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-shape (QCanvasItem)
+shape
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+QCanvasItem
 </dd>
 </dl>
 <a NAME="PackageDiagramBuilder.buildDiagram" ID="PackageDiagramBuilder.buildDiagram"></a>
@@ -339,6 +363,37 @@
 <p>
         The algorithm is borrowed from Boa Constructor.
 </p>
+<a NAME="PackageDiagramBuilder.fromDict" ID="PackageDiagramBuilder.fromDict"></a>
+<h4>PackageDiagramBuilder.fromDict</h4>
+<b>fromDict</b>(<i>version, data</i>)
+
+<p>
+        Public method to populate the class with data persisted by 'toDict()'.
+</p>
+<dl>
+
+<dt><i>version</i> (str)</dt>
+<dd>
+version of the data
+</dd>
+<dt><i>data</i> (dict)</dt>
+<dd>
+dictionary containing the persisted data
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+tuple containing a flag indicating success and an info
+            message in case the diagram belongs to a different project
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+tuple of (bool, str)
+</dd>
+</dl>
 <a NAME="PackageDiagramBuilder.getPersistenceData" ID="PackageDiagramBuilder.getPersistenceData"></a>
 <h4>PackageDiagramBuilder.getPersistenceData</h4>
 <b>getPersistenceData</b>(<i></i>)
@@ -349,7 +404,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-persisted data string (string)
+persisted data string
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <a NAME="PackageDiagramBuilder.initialize" ID="PackageDiagramBuilder.initialize"></a>
@@ -368,19 +429,44 @@
 </p>
 <dl>
 
-<dt><i>version</i></dt>
+<dt><i>version</i> (str)</dt>
 <dd>
-version of the data (string)
+version of the data
 </dd>
-<dt><i>data</i></dt>
+<dt><i>data</i> (str)</dt>
 <dd>
-persisted data to be parsed (string)
+persisted data to be parsed
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-flag indicating success (boolean)
+flag indicating success
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="PackageDiagramBuilder.toDict" ID="PackageDiagramBuilder.toDict"></a>
+<h4>PackageDiagramBuilder.toDict</h4>
+<b>toDict</b>(<i></i>)
+
+<p>
+        Public method to collect data to be persisted.
+</p>
+<dl>
+<dt>Return:</dt>
+<dd>
+dictionary containing data to be persisted
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/eric6/Documentation/Source/eric6.Graphics.PackageItem.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Graphics.PackageItem.html	Thu Jun 03 11:39:23 2021 +0200
@@ -66,7 +66,11 @@
 <h3>Class Methods</h3>
 
 <table>
-<tr><td>None</td></tr>
+
+<tr>
+<td><a href="#PackageItem.fromDict">fromDict</a></td>
+<td>Class method to create a class item from persisted data.</td>
+</tr>
 </table>
 <h3>Methods</h3>
 
@@ -100,6 +104,10 @@
 <td><a href="#PackageItem.setModel">setModel</a></td>
 <td>Public method to set the package model.</td>
 </tr>
+<tr>
+<td><a href="#PackageItem.toDict">toDict</a></td>
+<td>Public method to collect data to be persisted.</td>
+</tr>
 </table>
 <h3>Static Methods</h3>
 
@@ -107,6 +115,37 @@
 <tr><td>None</td></tr>
 </table>
 
+<a NAME="PackageItem.fromDict" ID="PackageItem.fromDict"></a>
+<h4>PackageItem.fromDict (class method)</h4>
+<b>fromDict</b>(<i>data, colors=None</i>)
+
+<p>
+        Class method to create a class item from persisted data.
+</p>
+<dl>
+
+<dt><i>data</i> (dict)</dt>
+<dd>
+dictionary containing the persisted data as generated
+            by toDict()
+</dd>
+<dt><i>colors</i> (tuple of (QColor, QColor))</dt>
+<dd>
+tuple containing the foreground and background colors
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+created class item
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+ClassItem
+</dd>
+</dl>
 <a NAME="PackageItem.__init__" ID="PackageItem.__init__"></a>
 <h4>PackageItem (Constructor)</h4>
 <b>PackageItem</b>(<i>model=None, x=0, y=0, rounded=False, noModules=False, colors=None, parent=None, scene=None</i>)
@@ -179,7 +218,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-persistence data (string)
+persistence data
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <a NAME="PackageItem.paint" ID="PackageItem.paint"></a>
@@ -191,17 +236,17 @@
 </p>
 <dl>
 
-<dt><i>painter</i></dt>
+<dt><i>painter</i> (QPainter)</dt>
 <dd>
-reference to the painter object (QPainter)
+reference to the painter object
 </dd>
-<dt><i>option</i></dt>
+<dt><i>option</i> (QStyleOptionGraphicsItem)</dt>
 <dd>
-style options (QStyleOptionGraphicsItem)
+style options
 </dd>
-<dt><i>widget</i></dt>
+<dt><i>widget</i> (QWidget)</dt>
 <dd>
-optional reference to the widget painted on (QWidget)
+optional reference to the widget painted on
 </dd>
 </dl>
 <a NAME="PackageItem.parseItemDataString" ID="PackageItem.parseItemDataString"></a>
@@ -213,19 +258,25 @@
 </p>
 <dl>
 
-<dt><i>version</i></dt>
+<dt><i>version</i> (str)</dt>
 <dd>
-version of the data (string)
+version of the data
 </dd>
-<dt><i>data</i></dt>
+<dt><i>data</i> (str)</dt>
 <dd>
-persisted data to be parsed (string)
+persisted data to be parsed
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-flag indicating success (boolean)
+flag indicating success
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
 </dd>
 </dl>
 <a NAME="PackageItem.setModel" ID="PackageItem.setModel"></a>
@@ -237,9 +288,28 @@
 </p>
 <dl>
 
-<dt><i>model</i></dt>
+<dt><i>model</i> (PackageModel)</dt>
 <dd>
-package model containing the package data (PackageModel)
+package model containing the package data
+</dd>
+</dl>
+<a NAME="PackageItem.toDict" ID="PackageItem.toDict"></a>
+<h4>PackageItem.toDict</h4>
+<b>toDict</b>(<i></i>)
+
+<p>
+        Public method to collect data to be persisted.
+</p>
+<dl>
+<dt>Return:</dt>
+<dd>
+dictionary containing data to be persisted
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
@@ -295,13 +365,13 @@
 </p>
 <dl>
 
-<dt><i>name</i></dt>
+<dt><i>name</i> (str)</dt>
 <dd>
-package name (string)
+package name
 </dd>
-<dt><i>moduleslist</i></dt>
+<dt><i>moduleslist</i> (list of str)</dt>
 <dd>
-list of module names (list of strings)
+list of module names
 </dd>
 </dl>
 <a NAME="PackageModel.addModule" ID="PackageModel.addModule"></a>
@@ -313,9 +383,9 @@
 </p>
 <dl>
 
-<dt><i>modulename</i></dt>
+<dt><i>modulename</i> (str)</dt>
 <dd>
-module name to be added (string)
+module name to be added
 </dd>
 </dl>
 <a NAME="PackageModel.getModules" ID="PackageModel.getModules"></a>
@@ -328,7 +398,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-list of module names (list of strings)
+list of module names
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of str
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/eric6/Documentation/Source/eric6.Graphics.PixmapDiagram.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Graphics.PixmapDiagram.html	Thu Jun 03 11:39:23 2021 +0200
@@ -168,17 +168,17 @@
 </p>
 <dl>
 
-<dt><i>pixmap</i></dt>
+<dt><i>pixmap</i> (str)</dt>
 <dd>
-filename of a graphics file to show (string)
+filename of a graphics file to show
 </dd>
-<dt><i>parent</i></dt>
+<dt><i>parent</i> (QWidget)</dt>
 <dd>
-parent widget of the view (QWidget)
+parent widget of the view
 </dd>
-<dt><i>name</i></dt>
+<dt><i>name</i> (str)</dt>
 <dd>
-name of the view widget (string)
+name of the view widget
 </dd>
 </dl>
 <a NAME="PixmapDiagram.__adjustScrollBar" ID="PixmapDiagram.__adjustScrollBar"></a>
@@ -190,13 +190,13 @@
 </p>
 <dl>
 
-<dt><i>scrollBar</i></dt>
+<dt><i>scrollBar</i> (QScrollBar)</dt>
 <dd>
-reference to the scrollbar object (QScrollBar)
+reference to the scrollbar object
 </dd>
-<dt><i>factor</i></dt>
+<dt><i>factor</i> (float)</dt>
 <dd>
-factor to adjust by (float)
+factor to adjust by
 </dd>
 </dl>
 <a NAME="PixmapDiagram.__doZoom" ID="PixmapDiagram.__doZoom"></a>
@@ -208,9 +208,9 @@
 </p>
 <dl>
 
-<dt><i>value</i></dt>
+<dt><i>value</i> (int)</dt>
 <dd>
-zoom value in percent (integer)
+zoom value in percent
 </dd>
 </dl>
 <a NAME="PixmapDiagram.__initActions" ID="PixmapDiagram.__initActions"></a>
@@ -243,15 +243,21 @@
 </p>
 <dl>
 
-<dt><i>zoom</i></dt>
+<dt><i>zoom</i> (int)</dt>
 <dd>
-zoom factor (integer)
+zoom factor
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-index of zoom factor (integer)
+index of zoom factor
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+int
 </dd>
 </dl>
 <a NAME="PixmapDiagram.__print" ID="PixmapDiagram.__print"></a>
@@ -263,9 +269,9 @@
 </p>
 <dl>
 
-<dt><i>printer</i></dt>
+<dt><i>printer</i> (QPrinter)</dt>
 <dd>
-reference to the printer object (QPrinter)
+reference to the printer object
 </dd>
 </dl>
 <a NAME="PixmapDiagram.__printDiagram" ID="PixmapDiagram.__printDiagram"></a>
@@ -291,9 +297,9 @@
 </p>
 <dl>
 
-<dt><i>coord</i></dt>
+<dt><i>coord</i> (QPoint)</dt>
 <dd>
-the position of the mouse pointer (QPoint)
+the position of the mouse pointer
 </dd>
 </dl>
 <a NAME="PixmapDiagram.__showPixmap" ID="PixmapDiagram.__showPixmap"></a>
@@ -305,15 +311,21 @@
 </p>
 <dl>
 
-<dt><i>filename</i></dt>
+<dt><i>filename</i> (str)</dt>
 <dd>
-name of the file to be shown (string)
+name of the file to be shown
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-flag indicating success (boolean)
+flag indicating success
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
 </dd>
 </dl>
 <a NAME="PixmapDiagram.__zoom" ID="PixmapDiagram.__zoom"></a>
@@ -326,7 +338,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-current zoom factor in percent (integer)
+current zoom factor in percent
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+int
 </dd>
 </dl>
 <a NAME="PixmapDiagram.__zoomIn" ID="PixmapDiagram.__zoomIn"></a>
@@ -359,15 +377,21 @@
 </p>
 <dl>
 
-<dt><i>evt</i></dt>
+<dt><i>evt</i> (QEvent)</dt>
 <dd>
-reference to the event (QEvent)
+reference to the event
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-flag indicating, if the event was handled (boolean)
+flag indicating, if the event was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
 </dd>
 </dl>
 <a NAME="PixmapDiagram.gestureEvent" ID="PixmapDiagram.gestureEvent"></a>
@@ -379,9 +403,9 @@
 </p>
 <dl>
 
-<dt><i>evt</i></dt>
+<dt><i>evt</i> (QGestureEvent)</dt>
 <dd>
-reference to the gesture event (QGestureEvent
+reference to the gesture event
 </dd>
 </dl>
 <a NAME="PixmapDiagram.getDiagramName" ID="PixmapDiagram.getDiagramName"></a>
@@ -397,6 +421,12 @@
 name for the diagram
 </dd>
 </dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
 <a NAME="PixmapDiagram.getStatus" ID="PixmapDiagram.getStatus"></a>
 <h4>PixmapDiagram.getStatus</h4>
 <b>getStatus</b>(<i></i>)
@@ -407,7 +437,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-flag indicating a successful pixmap loading (boolean)
+flag indicating a successful pixmap loading
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
 </dd>
 </dl>
 <a NAME="PixmapDiagram.wheelEvent" ID="PixmapDiagram.wheelEvent"></a>
@@ -419,9 +455,9 @@
 </p>
 <dl>
 
-<dt><i>evt</i></dt>
+<dt><i>evt</i> (QWheelEvent)</dt>
 <dd>
-reference to the wheel event (QWheelEvent)
+reference to the wheel event
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/eric6/Documentation/Source/eric6.Graphics.SvgDiagram.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Graphics.SvgDiagram.html	Thu Jun 03 11:39:23 2021 +0200
@@ -160,17 +160,17 @@
 </p>
 <dl>
 
-<dt><i>svgFile</i></dt>
+<dt><i>svgFile</i> (str)</dt>
 <dd>
-filename of a SVG graphics file to show (string)
+filename of a SVG graphics file to show
 </dd>
-<dt><i>parent</i></dt>
+<dt><i>parent</i> (QWidget)</dt>
 <dd>
-parent widget of the view (QWidget)
+parent widget of the view
 </dd>
-<dt><i>name</i></dt>
+<dt><i>name</i> (str)</dt>
 <dd>
-name of the view widget (string)
+name of the view widget
 </dd>
 </dl>
 <a NAME="SvgDiagram.__adjustScrollBar" ID="SvgDiagram.__adjustScrollBar"></a>
@@ -182,13 +182,13 @@
 </p>
 <dl>
 
-<dt><i>scrollBar</i></dt>
+<dt><i>scrollBar</i> (QScrollBar)</dt>
 <dd>
-reference to the scrollbar object (QScrollBar)
+reference to the scrollbar object
 </dd>
-<dt><i>factor</i></dt>
+<dt><i>factor</i> (float)</dt>
 <dd>
-factor to adjust by (float)
+factor to adjust by
 </dd>
 </dl>
 <a NAME="SvgDiagram.__doZoom" ID="SvgDiagram.__doZoom"></a>
@@ -200,9 +200,9 @@
 </p>
 <dl>
 
-<dt><i>value</i></dt>
+<dt><i>value</i> (int)</dt>
 <dd>
-zoom value in percent (integer)
+zoom value in percent
 </dd>
 </dl>
 <a NAME="SvgDiagram.__initActions" ID="SvgDiagram.__initActions"></a>
@@ -235,15 +235,21 @@
 </p>
 <dl>
 
-<dt><i>zoom</i></dt>
+<dt><i>zoom</i> (int)</dt>
 <dd>
-zoom factor (integer)
+zoom factor
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-index of zoom factor (integer)
+index of zoom factor
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+int
 </dd>
 </dl>
 <a NAME="SvgDiagram.__print" ID="SvgDiagram.__print"></a>
@@ -255,9 +261,9 @@
 </p>
 <dl>
 
-<dt><i>printer</i></dt>
+<dt><i>printer</i> (QPrinter)</dt>
 <dd>
-reference to the printer object (QPrinter)
+reference to the printer object
 </dd>
 </dl>
 <a NAME="SvgDiagram.__printDiagram" ID="SvgDiagram.__printDiagram"></a>
@@ -283,9 +289,9 @@
 </p>
 <dl>
 
-<dt><i>coord</i></dt>
+<dt><i>coord</i> (QPoint)</dt>
 <dd>
-the position of the mouse pointer (QPoint)
+the position of the mouse pointer
 </dd>
 </dl>
 <a NAME="SvgDiagram.__zoom" ID="SvgDiagram.__zoom"></a>
@@ -298,7 +304,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-current zoom factor in percent (integer)
+current zoom factor in percent
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+int
 </dd>
 </dl>
 <a NAME="SvgDiagram.__zoomIn" ID="SvgDiagram.__zoomIn"></a>
@@ -331,15 +343,21 @@
 </p>
 <dl>
 
-<dt><i>evt</i></dt>
+<dt><i>evt</i> (QEvent)</dt>
 <dd>
-reference to the event (QEvent)
+reference to the event
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-flag indicating, if the event was handled (boolean)
+flag indicating, if the event was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
 </dd>
 </dl>
 <a NAME="SvgDiagram.gestureEvent" ID="SvgDiagram.gestureEvent"></a>
@@ -351,9 +369,9 @@
 </p>
 <dl>
 
-<dt><i>evt</i></dt>
+<dt><i>evt</i> (QGestureEvent)</dt>
 <dd>
-reference to the gesture event (QGestureEvent
+reference to the gesture event
 </dd>
 </dl>
 <a NAME="SvgDiagram.getDiagramName" ID="SvgDiagram.getDiagramName"></a>
@@ -369,6 +387,12 @@
 name for the diagram
 </dd>
 </dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
 <a NAME="SvgDiagram.wheelEvent" ID="SvgDiagram.wheelEvent"></a>
 <h4>SvgDiagram.wheelEvent</h4>
 <b>wheelEvent</b>(<i>evt</i>)
@@ -378,9 +402,9 @@
 </p>
 <dl>
 
-<dt><i>evt</i></dt>
+<dt><i>evt</i> (QWheelEvent)</dt>
 <dd>
-reference to the wheel event (QWheelEvent)
+reference to the wheel event
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/eric6/Documentation/Source/eric6.Graphics.UMLClassDiagramBuilder.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Graphics.UMLClassDiagramBuilder.html	Thu Jun 03 11:39:23 2021 +0200
@@ -97,6 +97,10 @@
 <td>Public method to build the class shapes of the class diagram.</td>
 </tr>
 <tr>
+<td><a href="#UMLClassDiagramBuilder.fromDict">fromDict</a></td>
+<td>Public method to populate the class with data persisted by 'toDict()'.</td>
+</tr>
+<tr>
 <td><a href="#UMLClassDiagramBuilder.getPersistenceData">getPersistenceData</a></td>
 <td>Public method to get a string for data to be persisted.</td>
 </tr>
@@ -108,6 +112,10 @@
 <td><a href="#UMLClassDiagramBuilder.parsePersistenceData">parsePersistenceData</a></td>
 <td>Public method to parse persisted data.</td>
 </tr>
+<tr>
+<td><a href="#UMLClassDiagramBuilder.toDict">toDict</a></td>
+<td>Public method to collect data to be persisted.</td>
+</tr>
 </table>
 <h3>Static Methods</h3>
 
@@ -124,26 +132,25 @@
 </p>
 <dl>
 
-<dt><i>dialog</i></dt>
+<dt><i>dialog</i> (UMLDialog)</dt>
 <dd>
-reference to the UML dialog (UMLDialog)
+reference to the UML dialog
 </dd>
-<dt><i>view</i></dt>
+<dt><i>view</i> (UMLGraphicsView)</dt>
 <dd>
-reference to the view object (UMLGraphicsView)
+reference to the view object
 </dd>
-<dt><i>project</i></dt>
+<dt><i>project</i> (Project)</dt>
 <dd>
-reference to the project object (Project)
+reference to the project object
 </dd>
-<dt><i>file</i></dt>
+<dt><i>file</i> (str)</dt>
 <dd>
-file name of a python module to be shown (string)
+file name of a python module to be shown
 </dd>
-<dt><i>noAttrs</i></dt>
+<dt><i>noAttrs</i> (bool)</dt>
 <dd>
 flag indicating, that no attributes should be shown
-            (boolean)
 </dd>
 </dl>
 <a NAME="UMLClassDiagramBuilder.__addExternalClass" ID="UMLClassDiagramBuilder.__addExternalClass"></a>
@@ -159,17 +166,17 @@
 </p>
 <dl>
 
-<dt><i>_class</i></dt>
+<dt><i>_class</i> (ModuleParser.Class)</dt>
 <dd>
-class to be shown (string)
+class to be shown
 </dd>
-<dt><i>x</i></dt>
+<dt><i>x</i> (float)</dt>
 <dd>
-x-coordinate (float)
+x-coordinate
 </dd>
-<dt><i>y</i></dt>
+<dt><i>y</i> (float)</dt>
 <dd>
-y-coordinate (float)
+y-coordinate
 </dd>
 </dl>
 <a NAME="UMLClassDiagramBuilder.__addLocalClass" ID="UMLClassDiagramBuilder.__addLocalClass"></a>
@@ -181,25 +188,25 @@
 </p>
 <dl>
 
-<dt><i>className</i></dt>
+<dt><i>className</i> (str)</dt>
 <dd>
-name of the class to be as a dictionary key (string)
+name of the class to be as a dictionary key
 </dd>
-<dt><i>_class</i></dt>
+<dt><i>_class</i> (ModuleParser.Class)</dt>
 <dd>
-class to be shown (ModuleParser.Class)
+class to be shown
 </dd>
-<dt><i>x</i></dt>
+<dt><i>x</i> (float)</dt>
 <dd>
-x-coordinate (float)
+x-coordinate
 </dd>
-<dt><i>y</i></dt>
+<dt><i>y</i> (float)</dt>
 <dd>
-y-coordinate (float)
+y-coordinate
 </dd>
-<dt><i>isRbModule</i></dt>
+<dt><i>isRbModule</i> (bool)</dt>
 <dd>
-flag indicating a Ruby module (boolean)
+flag indicating a Ruby module
 </dd>
 </dl>
 <a NAME="UMLClassDiagramBuilder.__arrangeClasses" ID="UMLClassDiagramBuilder.__arrangeClasses"></a>
@@ -214,18 +221,18 @@
 </p>
 <dl>
 
-<dt><i>nodes</i></dt>
+<dt><i>nodes</i> (list of str)</dt>
 <dd>
 list of nodes to arrange
 </dd>
-<dt><i>routes</i></dt>
+<dt><i>routes</i> (list of tuple of (str, str))</dt>
 <dd>
 list of routes
 </dd>
-<dt><i>whiteSpaceFactor</i></dt>
+<dt><i>whiteSpaceFactor</i> (float)</dt>
 <dd>
 factor to increase whitespace between
-            items (float)
+            items
 </dd>
 </dl>
 <a NAME="UMLClassDiagramBuilder.__createAssociations" ID="UMLClassDiagramBuilder.__createAssociations"></a>
@@ -237,7 +244,7 @@
 </p>
 <dl>
 
-<dt><i>routes</i></dt>
+<dt><i>routes</i> (list of tuple of (str, str))</dt>
 <dd>
 list of relationsships
 </dd>
@@ -251,15 +258,21 @@
 </p>
 <dl>
 
-<dt><i>name</i></dt>
+<dt><i>name</i> (str)</dt>
 <dd>
-name of the shape (string)
+name of the shape
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-shape (QGraphicsItem)
+shape
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+QGraphicsItem
 </dd>
 </dl>
 <a NAME="UMLClassDiagramBuilder.buildDiagram" ID="UMLClassDiagramBuilder.buildDiagram"></a>
@@ -272,6 +285,37 @@
 <p>
         The algorithm is borrowed from Boa Constructor.
 </p>
+<a NAME="UMLClassDiagramBuilder.fromDict" ID="UMLClassDiagramBuilder.fromDict"></a>
+<h4>UMLClassDiagramBuilder.fromDict</h4>
+<b>fromDict</b>(<i>version, data</i>)
+
+<p>
+        Public method to populate the class with data persisted by 'toDict()'.
+</p>
+<dl>
+
+<dt><i>version</i> (str)</dt>
+<dd>
+version of the data
+</dd>
+<dt><i>data</i> (dict)</dt>
+<dd>
+dictionary containing the persisted data
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+tuple containing a flag indicating success and an info
+            message in case the diagram belongs to a different project
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+tuple of (bool, str)
+</dd>
+</dl>
 <a NAME="UMLClassDiagramBuilder.getPersistenceData" ID="UMLClassDiagramBuilder.getPersistenceData"></a>
 <h4>UMLClassDiagramBuilder.getPersistenceData</h4>
 <b>getPersistenceData</b>(<i></i>)
@@ -282,7 +326,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-persisted data string (string)
+persisted data string
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <a NAME="UMLClassDiagramBuilder.initialize" ID="UMLClassDiagramBuilder.initialize"></a>
@@ -301,19 +351,44 @@
 </p>
 <dl>
 
-<dt><i>version</i></dt>
+<dt><i>version</i> (str)</dt>
 <dd>
-version of the data (string)
+version of the data
 </dd>
-<dt><i>data</i></dt>
+<dt><i>data</i> (str)</dt>
 <dd>
-persisted data to be parsed (string)
+persisted data to be parsed
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-flag indicating success (boolean)
+flag indicating success
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="UMLClassDiagramBuilder.toDict" ID="UMLClassDiagramBuilder.toDict"></a>
+<h4>UMLClassDiagramBuilder.toDict</h4>
+<b>toDict</b>(<i></i>)
+
+<p>
+        Public method to collect data to be persisted.
+</p>
+<dl>
+<dt>Return:</dt>
+<dd>
+dictionary containing data to be persisted
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/eric6/Documentation/Source/eric6.Graphics.UMLDiagramBuilder.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Graphics.UMLDiagramBuilder.html	Thu Jun 03 11:39:23 2021 +0200
@@ -77,6 +77,14 @@
 <td>Public method to build the diagram.</td>
 </tr>
 <tr>
+<td><a href="#UMLDiagramBuilder.buildErrorMessage">buildErrorMessage</a></td>
+<td>Public method to build an error string to be included in the scene.</td>
+</tr>
+<tr>
+<td><a href="#UMLDiagramBuilder.fromDict">fromDict</a></td>
+<td>Public method to populate the class with data persisted by 'toDict()'.</td>
+</tr>
+<tr>
 <td><a href="#UMLDiagramBuilder.getPersistenceData">getPersistenceData</a></td>
 <td>Public method to get a string for data to be persisted.</td>
 </tr>
@@ -88,6 +96,10 @@
 <td><a href="#UMLDiagramBuilder.parsePersistenceData">parsePersistenceData</a></td>
 <td>Public method to parse persisted data.</td>
 </tr>
+<tr>
+<td><a href="#UMLDiagramBuilder.toDict">toDict</a></td>
+<td>Public method to collect data to be persisted.</td>
+</tr>
 </table>
 <h3>Static Methods</h3>
 
@@ -104,17 +116,17 @@
 </p>
 <dl>
 
-<dt><i>dialog</i></dt>
+<dt><i>dialog</i> (UMLDialog)</dt>
 <dd>
-reference to the UML dialog (UMLDialog)
+reference to the UML dialog
 </dd>
-<dt><i>view</i></dt>
+<dt><i>view</i> (UMLGraphicsView)</dt>
 <dd>
-reference to the view object (UMLGraphicsView)
+reference to the view object
 </dd>
-<dt><i>project</i></dt>
+<dt><i>project</i> (Project)</dt>
 <dd>
-reference to the project object (Project)
+reference to the project object
 </dd>
 </dl>
 <a NAME="UMLDiagramBuilder.buildDiagram" ID="UMLDiagramBuilder.buildDiagram"></a>
@@ -135,6 +147,63 @@
             must be subclassed
 </dd>
 </dl>
+<a NAME="UMLDiagramBuilder.buildErrorMessage" ID="UMLDiagramBuilder.buildErrorMessage"></a>
+<h4>UMLDiagramBuilder.buildErrorMessage</h4>
+<b>buildErrorMessage</b>(<i>msg</i>)
+
+<p>
+        Public method to build an error string to be included in the scene.
+</p>
+<dl>
+
+<dt><i>msg</i> (str)</dt>
+<dd>
+error message
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+prepared error string
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="UMLDiagramBuilder.fromDict" ID="UMLDiagramBuilder.fromDict"></a>
+<h4>UMLDiagramBuilder.fromDict</h4>
+<b>fromDict</b>(<i>version, data</i>)
+
+<p>
+        Public method to populate the class with data persisted by 'toDict()'.
+</p>
+<dl>
+
+<dt><i>version</i> (str)</dt>
+<dd>
+version of the data
+</dd>
+<dt><i>data</i> (dict)</dt>
+<dd>
+dictionary containing the persisted data
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+tuple containing a flag indicating success and an info
+            message in case the diagram belongs to a different project
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+tuple of (bool, str)
+</dd>
+</dl>
 <a NAME="UMLDiagramBuilder.getPersistenceData" ID="UMLDiagramBuilder.getPersistenceData"></a>
 <h4>UMLDiagramBuilder.getPersistenceData</h4>
 <b>getPersistenceData</b>(<i></i>)
@@ -145,7 +214,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-persisted data string (string)
+persisted data string
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <a NAME="UMLDiagramBuilder.initialize" ID="UMLDiagramBuilder.initialize"></a>
@@ -164,19 +239,44 @@
 </p>
 <dl>
 
-<dt><i>version</i></dt>
+<dt><i>version</i> (str)</dt>
 <dd>
-version of the data (string)
+version of the data
 </dd>
-<dt><i>data</i></dt>
+<dt><i>data</i> (str)</dt>
 <dd>
-persisted data to be parsed (string)
+persisted data to be parsed
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-flag indicating success (boolean)
+flag indicating success
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="UMLDiagramBuilder.toDict" ID="UMLDiagramBuilder.toDict"></a>
+<h4>UMLDiagramBuilder.toDict</h4>
+<b>toDict</b>(<i></i>)
+
+<p>
+        Public method to collect data to be persisted.
+</p>
+<dl>
+<dt>Return:</dt>
+<dd>
+dictionary containing data to be persisted
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/eric6/Documentation/Source/eric6.Graphics.UMLDialog.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Graphics.UMLDialog.html	Thu Jun 03 11:39:23 2021 +0200
@@ -38,6 +38,10 @@
 <td><a href="#UMLDialog">UMLDialog</a></td>
 <td>Class implementing a dialog showing UML like diagrams.</td>
 </tr>
+<tr>
+<td><a href="#UMLDialogType">UMLDialogType</a></td>
+<td>Class defining the UML dialog types.</td>
+</tr>
 </table>
 <h3>Functions</h3>
 
@@ -57,7 +61,7 @@
 <h3>Class Attributes</h3>
 
 <table>
-<tr><td>ApplicationDiagram</td></tr><tr><td>ClassDiagram</td></tr><tr><td>FileVersions</td></tr><tr><td>ImportsDiagram</td></tr><tr><td>NoDiagram</td></tr><tr><td>PackageDiagram</td></tr>
+<tr><td>FileVersions</td></tr><tr><td>JsonFileVersions</td></tr><tr><td>UMLDialogType2String</td></tr>
 </table>
 <h3>Class Methods</h3>
 
@@ -77,6 +81,10 @@
 <td>Private method to instantiate a diagram builder object.</td>
 </tr>
 <tr>
+<td><a href="#UMLDialog.__getDiagramTitel">__getDiagramTitel</a></td>
+<td>Private method to get a textual description for the diagram type.</td>
+</tr>
+<tr>
 <td><a href="#UMLDialog.__initActions">__initActions</a></td>
 <td>Private slot to initialize the actions.</td>
 </tr>
@@ -85,8 +93,16 @@
 <td>Private slot to initialize the toolbars.</td>
 </tr>
 <tr>
+<td><a href="#UMLDialog.__readJsonGraphicsFile">__readJsonGraphicsFile</a></td>
+<td>Private method to read an eric graphics file using the JSON based file format.</td>
+</tr>
+<tr>
+<td><a href="#UMLDialog.__readLineBasedGraphicsFile">__readLineBasedGraphicsFile</a></td>
+<td>Private method to read an eric graphics file using the old line based file format.</td>
+</tr>
+<tr>
 <td><a href="#UMLDialog.__relayout">__relayout</a></td>
-<td>Private method to relayout the diagram.</td>
+<td>Private method to re-layout the diagram.</td>
 </tr>
 <tr>
 <td><a href="#UMLDialog.__save">__save</a></td>
@@ -101,6 +117,14 @@
 <td>Private slot to show a message dialog indicating an invalid data file.</td>
 </tr>
 <tr>
+<td><a href="#UMLDialog.__writeJsonGraphicsFile">__writeJsonGraphicsFile</a></td>
+<td>Private method to write an eric graphics file using the JSON based file format.</td>
+</tr>
+<tr>
+<td><a href="#UMLDialog.__writeLineBasedGraphicsFile">__writeLineBasedGraphicsFile</a></td>
+<td>Private method to write an eric graphics file using the old line based file format.</td>
+</tr>
+<tr>
 <td><a href="#UMLDialog.load">load</a></td>
 <td>Public method to load a diagram from a file.</td>
 </tr>
@@ -124,29 +148,28 @@
 </p>
 <dl>
 
-<dt><i>diagramType</i></dt>
+<dt><i>diagramType</i> (UMLDialogType)</dt>
 <dd>
-type of the diagram (one of ApplicationDiagram,
-            ClassDiagram, ImportsDiagram, NoDiagram, PackageDiagram)
+type of the diagram
 </dd>
-<dt><i>project</i></dt>
+<dt><i>project</i> (Project)</dt>
 <dd>
-reference to the project object (Project)
+reference to the project object
 </dd>
-<dt><i>path</i></dt>
+<dt><i>path</i> (str)</dt>
 <dd>
-file or directory path to build the diagram from (string)
+file or directory path to build the diagram from
 </dd>
-<dt><i>parent</i></dt>
+<dt><i>parent</i> (QWidget)</dt>
 <dd>
-parent widget of the dialog (QWidget)
+parent widget of the dialog
 </dd>
-<dt><i>initBuilder</i></dt>
+<dt><i>initBuilder</i> (bool)</dt>
 <dd>
 flag indicating to initialize the diagram
-            builder (boolean)
+            builder
 </dd>
-<dt><i>kwargs=</i></dt>
+<dt><i>kwargs=</i> (dict)</dt>
 <dd>
 diagram specific data
 </dd>
@@ -160,17 +183,15 @@
 </p>
 <dl>
 
-<dt><i>diagramType</i></dt>
+<dt><i>diagramType</i> (UMLDialogType)</dt>
 <dd>
 type of the diagram
-            (one of ApplicationDiagram, ClassDiagram, ImportsDiagram,
-            PackageDiagram)
 </dd>
-<dt><i>path</i></dt>
+<dt><i>path</i> (str)</dt>
 <dd>
-file or directory path to build the diagram from (string)
+file or directory path to build the diagram from
 </dd>
-<dt><i>kwargs=</i></dt>
+<dt><i>kwargs=</i> (dict)</dt>
 <dd>
 diagram specific data
 </dd>
@@ -182,10 +203,35 @@
 </dd>
 </dl>
 <dl>
+<dt>Return Type:</dt>
+<dd>
+UMLDiagramBuilder
+</dd>
+</dl>
+<a NAME="UMLDialog.__getDiagramTitel" ID="UMLDialog.__getDiagramTitel"></a>
+<h4>UMLDialog.__getDiagramTitel</h4>
+<b>__getDiagramTitel</b>(<i>diagramType</i>)
 
-<dt>Raises <b>ValueError</b>:</dt>
+<p>
+        Private method to get a textual description for the diagram type.
+</p>
+<dl>
+
+<dt><i>diagramType</i> (str)</dt>
 <dd>
-raised to indicate an illegal diagram type
+diagram type string
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+titel of the diagram
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <a NAME="UMLDialog.__initActions" ID="UMLDialog.__initActions"></a>
@@ -202,12 +248,66 @@
 <p>
         Private slot to initialize the toolbars.
 </p>
+<a NAME="UMLDialog.__readJsonGraphicsFile" ID="UMLDialog.__readJsonGraphicsFile"></a>
+<h4>UMLDialog.__readJsonGraphicsFile</h4>
+<b>__readJsonGraphicsFile</b>(<i>filename</i>)
+
+<p>
+        Private method to read an eric graphics file using the JSON based
+        file format.
+</p>
+<dl>
+
+<dt><i>filename</i> (str)</dt>
+<dd>
+name of the file to be read
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating a successful read
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="UMLDialog.__readLineBasedGraphicsFile" ID="UMLDialog.__readLineBasedGraphicsFile"></a>
+<h4>UMLDialog.__readLineBasedGraphicsFile</h4>
+<b>__readLineBasedGraphicsFile</b>(<i>filename</i>)
+
+<p>
+        Private method to read an eric graphics file using the old line
+        based file format.
+</p>
+<dl>
+
+<dt><i>filename</i> (str)</dt>
+<dd>
+name of the file to be read
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating success
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
 <a NAME="UMLDialog.__relayout" ID="UMLDialog.__relayout"></a>
 <h4>UMLDialog.__relayout</h4>
 <b>__relayout</b>(<i></i>)
 
 <p>
-        Private method to relayout the diagram.
+        Private method to re-layout the diagram.
 </p>
 <a NAME="UMLDialog.__save" ID="UMLDialog.__save"></a>
 <h4>UMLDialog.__save</h4>
@@ -225,9 +325,9 @@
 </p>
 <dl>
 
-<dt><i>filename</i></dt>
+<dt><i>filename</i> (str)</dt>
 <dd>
-name of the file to write to (string)
+name of the file to write to
 </dd>
 </dl>
 <a NAME="UMLDialog.__showInvalidDataMessage" ID="UMLDialog.__showInvalidDataMessage"></a>
@@ -239,26 +339,93 @@
 </p>
 <dl>
 
-<dt><i>filename</i></dt>
+<dt><i>filename</i> (str)</dt>
+<dd>
+name of the file containing the invalid data
+</dd>
+<dt><i>linenum</i> (int)</dt>
 <dd>
-name of the file containing the invalid data (string)
+number of the invalid line
+</dd>
+</dl>
+<a NAME="UMLDialog.__writeJsonGraphicsFile" ID="UMLDialog.__writeJsonGraphicsFile"></a>
+<h4>UMLDialog.__writeJsonGraphicsFile</h4>
+<b>__writeJsonGraphicsFile</b>(<i>filename</i>)
+
+<p>
+        Private method to write an eric graphics file using the JSON based
+        file format.
+</p>
+<dl>
+
+<dt><i>filename</i> (str)</dt>
+<dd>
+name of the file to write to
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating a successful write
 </dd>
-<dt><i>linenum</i></dt>
+</dl>
+<dl>
+<dt>Return Type:</dt>
 <dd>
-number of the invalid line (integer)
+bool
+</dd>
+</dl>
+<a NAME="UMLDialog.__writeLineBasedGraphicsFile" ID="UMLDialog.__writeLineBasedGraphicsFile"></a>
+<h4>UMLDialog.__writeLineBasedGraphicsFile</h4>
+<b>__writeLineBasedGraphicsFile</b>(<i>filename</i>)
+
+<p>
+        Private method to write an eric graphics file using the old line
+        based file format.
+</p>
+<dl>
+
+<dt><i>filename</i> (str)</dt>
+<dd>
+name of the file to write to
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating a successful write
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
 </dd>
 </dl>
 <a NAME="UMLDialog.load" ID="UMLDialog.load"></a>
 <h4>UMLDialog.load</h4>
-<b>load</b>(<i></i>)
+<b>load</b>(<i>filename=""</i>)
 
 <p>
         Public method to load a diagram from a file.
 </p>
 <dl>
+
+<dt><i>filename</i> (str)</dt>
+<dd>
+name of the file to be loaded
+</dd>
+</dl>
+<dl>
 <dt>Return:</dt>
 <dd>
-flag indicating success (boolean)
+flag indicating success
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
 </dd>
 </dl>
 <a NAME="UMLDialog.show" ID="UMLDialog.show"></a>
@@ -270,12 +437,44 @@
 </p>
 <dl>
 
-<dt><i>fromFile</i></dt>
+<dt><i>fromFile</i> (bool)</dt>
 <dd>
 flag indicating, that the diagram was loaded
-            from file (boolean)
+            from file
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
 <hr />
+<hr />
+<a NAME="UMLDialogType" ID="UMLDialogType"></a>
+<h2>UMLDialogType</h2>
+
+<p>
+    Class defining the UML dialog types.
+</p>
+<h3>Derived from</h3>
+enum.Enum
+<h3>Class Attributes</h3>
+
+<table>
+<tr><td>APPLICATION_DIAGRAM</td></tr><tr><td>CLASS_DIAGRAM</td></tr><tr><td>IMPORTS_DIAGRAM</td></tr><tr><td>NO_DIAGRAM</td></tr><tr><td>PACKAGE_DIAGRAM</td></tr>
+</table>
+<h3>Class Methods</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Methods</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Static Methods</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<div align="right"><a href="#top">Up</a></div>
+<hr />
 </body></html>
\ No newline at end of file
--- a/eric6/Documentation/Source/eric6.Graphics.UMLGraphicsView.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Graphics.UMLGraphicsView.html	Thu Jun 03 11:39:23 2021 +0200
@@ -158,6 +158,10 @@
 <td>Public method to find an UML item based on its name.</td>
 </tr>
 <tr>
+<td><a href="#UMLGraphicsView.fromDict">fromDict</a></td>
+<td>Public method to populate the class with data persisted by 'toDict()'.</td>
+</tr>
+<tr>
 <td><a href="#UMLGraphicsView.gestureEvent">gestureEvent</a></td>
 <td>Protected method handling gesture events.</td>
 </tr>
@@ -206,6 +210,14 @@
 <td>Public slot to set the diagram name.</td>
 </tr>
 <tr>
+<td><a href="#UMLGraphicsView.setLayoutActionsEnabled">setLayoutActionsEnabled</a></td>
+<td>Public method to enable or disable the layout related actions.</td>
+</tr>
+<tr>
+<td><a href="#UMLGraphicsView.toDict">toDict</a></td>
+<td>Public method to collect data to be persisted.</td>
+</tr>
+<tr>
 <td><a href="#UMLGraphicsView.wheelEvent">wheelEvent</a></td>
 <td>Protected method to handle wheel events.</td>
 </tr>
@@ -225,13 +237,13 @@
 </p>
 <dl>
 
-<dt><i>scene</i></dt>
+<dt><i>scene</i> (QGraphicsScene)</dt>
 <dd>
-reference to the scene object (QGraphicsScene)
+reference to the scene object
 </dd>
-<dt><i>parent</i></dt>
+<dt><i>parent</i> (QWidget)</dt>
 <dd>
-parent widget of the view (QWidget)
+parent widget of the view
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.__alignShapes" ID="UMLGraphicsView.__alignShapes"></a>
@@ -243,9 +255,9 @@
 </p>
 <dl>
 
-<dt><i>alignment</i></dt>
+<dt><i>alignment</i> (Qt.AlignmentFlag)</dt>
 <dd>
-alignment type (Qt.AlignmentFlag)
+alignment type
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.__checkSizeActions" ID="UMLGraphicsView.__checkSizeActions"></a>
@@ -306,15 +318,21 @@
 </p>
 <dl>
 
-<dt><i>items</i></dt>
+<dt><i>items</i> (list of UMLItem)</dt>
 <dd>
-list of items to operate on (list of UMLItem)
+list of items to operate on
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-bounding rectangle (QRectF)
+bounding rectangle
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+QRectF
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.__printPreviewPrint" ID="UMLGraphicsView.__printPreviewPrint"></a>
@@ -326,9 +344,9 @@
 </p>
 <dl>
 
-<dt><i>printer</i></dt>
+<dt><i>printer</i> (QPrinter)</dt>
 <dd>
-reference to the printer object (QPrinter)
+reference to the printer object
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.__relayout" ID="UMLGraphicsView.__relayout"></a>
@@ -354,9 +372,9 @@
 </p>
 <dl>
 
-<dt><i>areas</i></dt>
+<dt><i>areas</i> (list of QRectF)</dt>
 <dd>
-list of rectangles that contain changes (list of QRectF)
+list of rectangles that contain changes
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.__setSize" ID="UMLGraphicsView.__setSize"></a>
@@ -375,10 +393,10 @@
 </p>
 <dl>
 
-<dt><i>limit</i></dt>
+<dt><i>limit</i> (bool)</dt>
 <dd>
 flag indicating to limit the scene to the
-            initial size (boolean)
+            initial size
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.event" ID="UMLGraphicsView.event"></a>
@@ -390,15 +408,21 @@
 </p>
 <dl>
 
-<dt><i>evt</i></dt>
+<dt><i>evt</i> (QEvent)</dt>
 <dd>
-reference to the event (QEvent)
+reference to the event
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-flag indicating, if the event was handled (boolean)
+flag indicating, if the event was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.filteredItems" ID="UMLGraphicsView.filteredItems"></a>
@@ -410,20 +434,25 @@
 </p>
 <dl>
 
-<dt><i>items</i></dt>
+<dt><i>items</i> (QGraphicsItem)</dt>
 <dd>
 list of items as returned by the scene object
-            (QGraphicsItem)
 </dd>
-<dt><i>itemType</i></dt>
+<dt><i>itemType</i> (class)</dt>
 <dd>
-type to be filtered (class)
+type to be filtered
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-list of interesting collision items (QGraphicsItem)
+list of interesting collision items
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+QGraphicsItem
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.findItem" ID="UMLGraphicsView.findItem"></a>
@@ -435,15 +464,21 @@
 </p>
 <dl>
 
-<dt><i>itemId</i></dt>
+<dt><i>itemId</i> (int)</dt>
 <dd>
-of the item to search for (integer)
+of the item to search for
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-item found (UMLItem) or None
+item found or None
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+UMLItem
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.findItemByName" ID="UMLGraphicsView.findItemByName"></a>
@@ -455,15 +490,51 @@
 </p>
 <dl>
 
-<dt><i>name</i></dt>
+<dt><i>name</i> (str)</dt>
 <dd>
-name to look for (string)
+name to look for
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-item found (UMLItem) or None
+item found or None
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+UMLItem
+</dd>
+</dl>
+<a NAME="UMLGraphicsView.fromDict" ID="UMLGraphicsView.fromDict"></a>
+<h4>UMLGraphicsView.fromDict</h4>
+<b>fromDict</b>(<i>version, data</i>)
+
+<p>
+        Public method to populate the class with data persisted by 'toDict()'.
+</p>
+<dl>
+
+<dt><i>version</i> (str)</dt>
+<dd>
+version of the data
+</dd>
+<dt><i>data</i> (dict)</dt>
+<dd>
+dictionary containing the persisted data
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating success
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.gestureEvent" ID="UMLGraphicsView.gestureEvent"></a>
@@ -475,9 +546,9 @@
 </p>
 <dl>
 
-<dt><i>evt</i></dt>
+<dt><i>evt</i> (QGestureEvent)</dt>
 <dd>
-reference to the gesture event (QGestureEvent
+reference to the gesture event
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.getItemId" ID="UMLGraphicsView.getItemId"></a>
@@ -490,7 +561,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-item ID (integer)
+item ID
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+int
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.getPersistenceData" ID="UMLGraphicsView.getPersistenceData"></a>
@@ -503,7 +580,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-list of data to be persisted (list of strings)
+list of data to be persisted
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of str
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.initToolBar" ID="UMLGraphicsView.initToolBar"></a>
@@ -516,7 +599,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-the populated toolBar (QToolBar)
+the populated toolBar
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+QToolBar
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.keyPressEvent" ID="UMLGraphicsView.keyPressEvent"></a>
@@ -528,9 +617,9 @@
 </p>
 <dl>
 
-<dt><i>evt</i></dt>
+<dt><i>evt</i> (QKeyEvent)</dt>
 <dd>
-reference to the key event (QKeyEvent)
+reference to the key event
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.parsePersistenceData" ID="UMLGraphicsView.parsePersistenceData"></a>
@@ -542,20 +631,26 @@
 </p>
 <dl>
 
-<dt><i>version</i></dt>
+<dt><i>version</i> (str)</dt>
 <dd>
-version of the data (string)
+version of the data
 </dd>
-<dt><i>data</i></dt>
+<dt><i>data</i> (list of str)</dt>
 <dd>
-persisted data to be parsed (list of string)
+persisted data to be parsed
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
 tuple of flag indicating success (boolean) and faulty line
-            number (integer)
+            number
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+int
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.printDiagram" ID="UMLGraphicsView.printDiagram"></a>
@@ -588,9 +683,9 @@
 </p>
 <dl>
 
-<dt><i>item</i></dt>
+<dt><i>item</i> (QGraphicsItemItem)</dt>
 <dd>
-item to be selected (QGraphicsItemItem)
+item to be selected
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.selectItems" ID="UMLGraphicsView.selectItems"></a>
@@ -602,9 +697,9 @@
 </p>
 <dl>
 
-<dt><i>items</i></dt>
+<dt><i>items</i> (list of QGraphicsItemItem)</dt>
 <dd>
-list of items to be selected (list of QGraphicsItemItem)
+list of items to be selected
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.setDiagramName" ID="UMLGraphicsView.setDiagramName"></a>
@@ -616,9 +711,42 @@
 </p>
 <dl>
 
-<dt><i>name</i></dt>
+<dt><i>name</i> (str)</dt>
+<dd>
+diagram name
+</dd>
+</dl>
+<a NAME="UMLGraphicsView.setLayoutActionsEnabled" ID="UMLGraphicsView.setLayoutActionsEnabled"></a>
+<h4>UMLGraphicsView.setLayoutActionsEnabled</h4>
+<b>setLayoutActionsEnabled</b>(<i>enable</i>)
+
+<p>
+        Public method to enable or disable the layout related actions.
+</p>
+<dl>
+
+<dt><i>enable</i> (bool)</dt>
 <dd>
-diagram name (string)
+flag indicating the desired enable state
+</dd>
+</dl>
+<a NAME="UMLGraphicsView.toDict" ID="UMLGraphicsView.toDict"></a>
+<h4>UMLGraphicsView.toDict</h4>
+<b>toDict</b>(<i></i>)
+
+<p>
+        Public method to collect data to be persisted.
+</p>
+<dl>
+<dt>Return:</dt>
+<dd>
+dictionary containing data to be persisted
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
 </dd>
 </dl>
 <a NAME="UMLGraphicsView.wheelEvent" ID="UMLGraphicsView.wheelEvent"></a>
@@ -630,9 +758,9 @@
 </p>
 <dl>
 
-<dt><i>evt</i></dt>
+<dt><i>evt</i> (QWheelEvent)</dt>
 <dd>
-reference to the wheel event (QWheelEvent)
+reference to the wheel event
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/eric6/Documentation/Source/eric6.Graphics.UMLItem.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Graphics.UMLItem.html	Thu Jun 03 11:39:23 2021 +0200
@@ -66,7 +66,11 @@
 <h3>Class Methods</h3>
 
 <table>
-<tr><td>None</td></tr>
+
+<tr>
+<td><a href="#UMLItem.fromDict">fromDict</a></td>
+<td>Class method to create a generic UML item from persisted data.</td>
+</tr>
 </table>
 <h3>Methods</h3>
 
@@ -136,6 +140,10 @@
 <td><a href="#UMLItem.setSize">setSize</a></td>
 <td>Public method to set the rectangles size.</td>
 </tr>
+<tr>
+<td><a href="#UMLItem.toDict">toDict</a></td>
+<td>Public method to collect data to be persisted.</td>
+</tr>
 </table>
 <h3>Static Methods</h3>
 
@@ -143,6 +151,37 @@
 <tr><td>None</td></tr>
 </table>
 
+<a NAME="UMLItem.fromDict" ID="UMLItem.fromDict"></a>
+<h4>UMLItem.fromDict (class method)</h4>
+<b>fromDict</b>(<i>data, colors=None</i>)
+
+<p>
+        Class method to create a generic UML item from persisted data.
+</p>
+<dl>
+
+<dt><i>data</i> (dict)</dt>
+<dd>
+dictionary containing the persisted data as generated
+            by toDict()
+</dd>
+<dt><i>colors</i> (tuple of (QColor, QColor))</dt>
+<dd>
+tuple containing the foreground and background colors
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+created UML item
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+UMLItem
+</dd>
+</dl>
 <a NAME="UMLItem.__init__" ID="UMLItem.__init__"></a>
 <h4>UMLItem (Constructor)</h4>
 <b>UMLItem</b>(<i>model=None, x=0, y=0, rounded=False, colors=None, parent=None</i>)
@@ -186,9 +225,9 @@
 </p>
 <dl>
 
-<dt><i>assoc</i></dt>
+<dt><i>assoc</i> (AssociationWidget)</dt>
 <dd>
-association to be added (AssociationWidget)
+association to be added
 </dd>
 </dl>
 <a NAME="UMLItem.adjustAssociations" ID="UMLItem.adjustAssociations"></a>
@@ -213,7 +252,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-persistence data (string)
+persistence data
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <a NAME="UMLItem.getId" ID="UMLItem.getId"></a>
@@ -226,7 +271,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-ID of the item (integer)
+ID of the item
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+int
 </dd>
 </dl>
 <a NAME="UMLItem.getItemType" ID="UMLItem.getItemType"></a>
@@ -239,7 +290,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-item type (string)
+item type
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <a NAME="UMLItem.getName" ID="UMLItem.getName"></a>
@@ -252,7 +309,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-item name (string)
+item name
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <a NAME="UMLItem.itemChange" ID="UMLItem.itemChange"></a>
@@ -264,9 +327,9 @@
 </p>
 <dl>
 
-<dt><i>change</i></dt>
+<dt><i>change</i> (QGraphicsItem.GraphicsItemChange)</dt>
 <dd>
-the item's change (QGraphicsItem.GraphicsItemChange)
+the item's change
 </dd>
 <dt><i>value</i></dt>
 <dd>
@@ -288,13 +351,13 @@
 </p>
 <dl>
 
-<dt><i>dx</i></dt>
+<dt><i>dx</i> (float)</dt>
 <dd>
-relative movement in x-direction (float)
+relative movement in x-direction
 </dd>
-<dt><i>dy</i></dt>
+<dt><i>dy</i> (float)</dt>
 <dd>
-relative movement in y-direction (float)
+relative movement in y-direction
 </dd>
 </dl>
 <a NAME="UMLItem.paint" ID="UMLItem.paint"></a>
@@ -306,17 +369,17 @@
 </p>
 <dl>
 
-<dt><i>painter</i></dt>
+<dt><i>painter</i> (QPainter)</dt>
 <dd>
-reference to the painter object (QPainter)
+reference to the painter object
 </dd>
-<dt><i>option</i></dt>
+<dt><i>option</i> (QStyleOptionGraphicsItem)</dt>
 <dd>
-style options (QStyleOptionGraphicsItem)
+style options
 </dd>
-<dt><i>widget</i></dt>
+<dt><i>widget</i> (QWidget)</dt>
 <dd>
-optional reference to the widget painted on (QWidget)
+optional reference to the widget painted on
 </dd>
 </dl>
 <a NAME="UMLItem.parseItemDataString" ID="UMLItem.parseItemDataString"></a>
@@ -328,19 +391,25 @@
 </p>
 <dl>
 
-<dt><i>version</i></dt>
+<dt><i>version</i> (str)</dt>
 <dd>
-version of the data (string)
+version of the data
 </dd>
-<dt><i>data</i></dt>
+<dt><i>data</i> (str)</dt>
 <dd>
-persisted data to be parsed (string)
+persisted data to be parsed
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-flag indicating success (boolean)
+flag indicating success
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
 </dd>
 </dl>
 <a NAME="UMLItem.removeAssociation" ID="UMLItem.removeAssociation"></a>
@@ -352,9 +421,9 @@
 </p>
 <dl>
 
-<dt><i>assoc</i></dt>
+<dt><i>assoc</i> (AssociationWidget)</dt>
 <dd>
-association to be removed (AssociationWidget)
+association to be removed
 </dd>
 </dl>
 <a NAME="UMLItem.removeAssociations" ID="UMLItem.removeAssociations"></a>
@@ -373,9 +442,9 @@
 </p>
 <dl>
 
-<dt><i>itemId</i></dt>
+<dt><i>itemId</i> (int)</dt>
 <dd>
-assigned ID (integer)
+assigned ID
 </dd>
 </dl>
 <a NAME="UMLItem.setPos" ID="UMLItem.setPos"></a>
@@ -387,13 +456,13 @@
 </p>
 <dl>
 
-<dt><i>x</i></dt>
+<dt><i>x</i> (float)</dt>
 <dd>
-absolute x-position (float)
+absolute x-position
 </dd>
-<dt><i>y</i></dt>
+<dt><i>y</i> (float)</dt>
 <dd>
-absolute y-position (float)
+absolute y-position
 </dd>
 </dl>
 <a NAME="UMLItem.setSize" ID="UMLItem.setSize"></a>
@@ -405,13 +474,32 @@
 </p>
 <dl>
 
-<dt><i>width</i></dt>
+<dt><i>width</i> (float)</dt>
 <dd>
-width of the rectangle (float)
+width of the rectangle
+</dd>
+<dt><i>height</i> (float)</dt>
+<dd>
+height of the rectangle
 </dd>
-<dt><i>height</i></dt>
+</dl>
+<a NAME="UMLItem.toDict" ID="UMLItem.toDict"></a>
+<h4>UMLItem.toDict</h4>
+<b>toDict</b>(<i></i>)
+
+<p>
+        Public method to collect data to be persisted.
+</p>
+<dl>
+<dt>Return:</dt>
 <dd>
-height of the rectangle (float)
+dictionary containing data to be persisted
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
@@ -463,9 +551,9 @@
 </p>
 <dl>
 
-<dt><i>name</i></dt>
+<dt><i>name</i> (str)</dt>
 <dd>
-package name (string)
+package name
 </dd>
 </dl>
 <a NAME="UMLModel.getName" ID="UMLModel.getName"></a>
@@ -478,7 +566,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-model name (string)
+model name
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/eric6/Documentation/Source/eric6.Graphics.UMLSceneSizeDialog.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Graphics.UMLSceneSizeDialog.html	Thu Jun 03 11:39:23 2021 +0200
@@ -92,29 +92,29 @@
 </p>
 <dl>
 
-<dt><i>w</i></dt>
+<dt><i>w</i> (int)</dt>
 <dd>
-current width of scene (integer)
+current width of scene
 </dd>
-<dt><i>h</i></dt>
+<dt><i>h</i> (int)</dt>
 <dd>
-current height of scene (integer)
+current height of scene
 </dd>
-<dt><i>minW</i></dt>
+<dt><i>minW</i> (int)</dt>
 <dd>
-minimum width allowed (integer)
+minimum width allowed
 </dd>
-<dt><i>minH</i></dt>
+<dt><i>minH</i> (int)</dt>
 <dd>
-minimum height allowed (integer)
+minimum height allowed
 </dd>
-<dt><i>parent</i></dt>
+<dt><i>parent</i> (QWidget)</dt>
 <dd>
-parent widget of this dialog (QWidget)
+parent widget of this dialog
 </dd>
-<dt><i>name</i></dt>
+<dt><i>name</i> (str)</dt>
 <dd>
-name of this widget (string)
+name of this widget
 </dd>
 </dl>
 <a NAME="UMLSceneSizeDialog.getData" ID="UMLSceneSizeDialog.getData"></a>
@@ -128,7 +128,12 @@
 <dt>Return:</dt>
 <dd>
 tuple giving the selected width and height
-            (integer, integer)
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+tuple of (int, int)
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/eric6/Documentation/Source/eric6.PluginManager.PluginManager.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.PluginManager.PluginManager.html	Thu Jun 03 11:39:23 2021 +0200
@@ -266,6 +266,10 @@
 <td>Public method to load a plugin module.</td>
 </tr>
 <tr>
+<td><a href="#PluginManager.pipInstall">pipInstall</a></td>
+<td>Public method to install the given package via pip.</td>
+</tr>
+<tr>
 <td><a href="#PluginManager.preferencesChanged">preferencesChanged</a></td>
 <td>Public slot to react to changes in configuration.</td>
 </tr>
@@ -1092,7 +1096,7 @@
 </dl>
 <a NAME="PluginManager.loadPlugin" ID="PluginManager.loadPlugin"></a>
 <h4>PluginManager.loadPlugin</h4>
-<b>loadPlugin</b>(<i>name, directory, reload_=False</i>)
+<b>loadPlugin</b>(<i>name, directory, reload_=False, install=False</i>)
 
 <p>
         Public method to load a plugin module.
@@ -1105,17 +1109,22 @@
 </p>
 <dl>
 
-<dt><i>name</i></dt>
+<dt><i>name</i> (str)</dt>
 <dd>
-name of the module to be loaded (string)
+name of the module to be loaded
 </dd>
-<dt><i>directory</i></dt>
+<dt><i>directory</i> (str)</dt>
 <dd>
-name of the plugin directory (string)
+name of the plugin directory
 </dd>
-<dt><i>reload_</i></dt>
+<dt><i>reload_</i> (bool)</dt>
 <dd>
-flag indicating to reload the module (boolean)
+flag indicating to reload the module
+</dd>
+<dt><i>install</i> (bool)</dt>
+<dd>
+flag indicating a load operation as part of an
+            installation process
 </dd>
 </dl>
 <dl>
@@ -1126,6 +1135,20 @@
             the plug-in
 </dd>
 </dl>
+<a NAME="PluginManager.pipInstall" ID="PluginManager.pipInstall"></a>
+<h4>PluginManager.pipInstall</h4>
+<b>pipInstall</b>(<i>packages</i>)
+
+<p>
+        Public method to install the given package via pip.
+</p>
+<dl>
+
+<dt><i>packages</i> (list of str)</dt>
+<dd>
+list of packages to install
+</dd>
+</dl>
 <a NAME="PluginManager.preferencesChanged" ID="PluginManager.preferencesChanged"></a>
 <h4>PluginManager.preferencesChanged</h4>
 <b>preferencesChanged</b>(<i></i>)
--- a/eric6/Documentation/Source/eric6.Plugins.PluginVcsGit.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Plugins.PluginVcsGit.html	Thu Jun 03 11:39:23 2021 +0200
@@ -109,10 +109,6 @@
 <td>Constructor</td>
 </tr>
 <tr>
-<td><a href="#VcsGitPlugin.__loadTranslator">__loadTranslator</a></td>
-<td>Private method to load the translation file.</td>
-</tr>
-<tr>
 <td><a href="#VcsGitPlugin.activate">activate</a></td>
 <td>Public method to activate this plugin.</td>
 </tr>
@@ -199,13 +195,6 @@
 reference to the user interface object (UI.UserInterface)
 </dd>
 </dl>
-<a NAME="VcsGitPlugin.__loadTranslator" ID="VcsGitPlugin.__loadTranslator"></a>
-<h4>VcsGitPlugin.__loadTranslator</h4>
-<b>__loadTranslator</b>(<i></i>)
-
-<p>
-        Private method to load the translation file.
-</p>
 <a NAME="VcsGitPlugin.activate" ID="VcsGitPlugin.activate"></a>
 <h4>VcsGitPlugin.activate</h4>
 <b>activate</b>(<i></i>)
--- a/eric6/Documentation/Source/eric6.Plugins.VcsPlugins.vcsMercurial.HgUtilities.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Plugins.VcsPlugins.vcsMercurial.HgUtilities.html	Thu Jun 03 11:39:23 2021 +0200
@@ -41,7 +41,11 @@
 
 <tr>
 <td><a href="#getConfigPath">getConfigPath</a></td>
-<td>Public function to get the filename of the config file.</td>
+<td>Function to get the filename of the config file.</td>
+</tr>
+<tr>
+<td><a href="#getHgExecutable">getHgExecutable</a></td>
+<td>Function to get the full path of the Mercurial executable.</td>
 </tr>
 <tr>
 <td><a href="#hgVersion">hgVersion</a></td>
@@ -49,7 +53,7 @@
 </tr>
 <tr>
 <td><a href="#prepareProcess">prepareProcess</a></td>
-<td>Public function to prepare the given process.</td>
+<td>Function to prepare the given process.</td>
 </tr>
 </table>
 <hr />
@@ -59,12 +63,40 @@
 <b>getConfigPath</b>(<i></i>)
 
 <p>
-    Public function to get the filename of the config file.
+    Function to get the filename of the config file.
 </p>
 <dl>
 <dt>Return:</dt>
 <dd>
-filename of the config file (string)
+filename of the config file
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+<hr />
+<a NAME="getHgExecutable" ID="getHgExecutable"></a>
+<h2>getHgExecutable</h2>
+<b>getHgExecutable</b>(<i></i>)
+
+<p>
+    Function to get the full path of the Mercurial executable.
+</p>
+<dl>
+<dt>Return:</dt>
+<dd>
+path of the Mercurial executable
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
@@ -105,21 +137,21 @@
 <b>prepareProcess</b>(<i>proc, encoding="", language=""</i>)
 
 <p>
-    Public function to prepare the given process.
+    Function to prepare the given process.
 </p>
 <dl>
 
-<dt><i>proc</i></dt>
+<dt><i>proc</i> (QProcess)</dt>
 <dd>
-reference to the process to be prepared (QProcess)
+reference to the process to be prepared
 </dd>
-<dt><i>encoding</i></dt>
+<dt><i>encoding</i> (str)</dt>
 <dd>
-encoding to be used by the process (string)
+encoding to be used by the process
 </dd>
-<dt><i>language</i></dt>
+<dt><i>language</i> (str)</dt>
 <dd>
-language to be set (string)
+language to be set
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/eric6/Documentation/Source/eric6.Tasks.Task.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Tasks.Task.html	Thu Jun 03 11:39:23 2021 +0200
@@ -38,6 +38,14 @@
 <td><a href="#Task">Task</a></td>
 <td>Class implementing the task data structure.</td>
 </tr>
+<tr>
+<td><a href="#TaskPriority">TaskPriority</a></td>
+<td>Class defining the task priorities.</td>
+</tr>
+<tr>
+<td><a href="#TaskType">TaskType</a></td>
+<td>Class defining the task types.</td>
+</tr>
 </table>
 <h3>Functions</h3>
 
@@ -57,7 +65,7 @@
 <h3>Class Attributes</h3>
 
 <table>
-<tr><td>TaskType2ColorName</td></tr><tr><td>TaskType2IconName</td></tr><tr><td>TaskType2MarkersName</td></tr><tr><td>TypeDocu</td></tr><tr><td>TypeFixme</td></tr><tr><td>TypeNone</td></tr><tr><td>TypeNote</td></tr><tr><td>TypeTest</td></tr><tr><td>TypeTodo</td></tr><tr><td>TypeWarning</td></tr>
+<tr><td>TaskType2ColorName</td></tr><tr><td>TaskType2IconName</td></tr><tr><td>TaskType2MarkersName</td></tr>
 </table>
 <h3>Class Methods</h3>
 
@@ -129,6 +137,10 @@
 <td>Public slot to update the description.</td>
 </tr>
 <tr>
+<td><a href="#Task.setTaskType">setTaskType</a></td>
+<td>Public method to update the task type.</td>
+</tr>
+<tr>
 <td><a href="#Task.toDict">toDict</a></td>
 <td>Public method to convert the task data to a dictionary.</td>
 </tr>
@@ -141,62 +153,61 @@
 
 <a NAME="Task.__init__" ID="Task.__init__"></a>
 <h4>Task (Constructor)</h4>
-<b>Task</b>(<i>summary, priority=1, filename="", lineno=0, completed=False, _time=0, isProjectTask=False, taskType=TypeTodo, project=None, description="", uid="", parentUid=""</i>)
+<b>Task</b>(<i>summary, priority=TaskPriority.NORMAL, filename="", lineno=0, completed=False, _time=0, isProjectTask=False, taskType=TaskType.TODO, project=None, description="", uid="", parentUid=""</i>)
 
 <p>
         Constructor
 </p>
 <dl>
 
-<dt><i>summary</i></dt>
+<dt><i>summary</i> (str)</dt>
 <dd>
-summary text of the task (string)
+summary text of the task
 </dd>
-<dt><i>priority</i></dt>
+<dt><i>priority</i> (TaskPriority)</dt>
 <dd>
-priority of the task (0=high, 1=normal, 2=low)
+priority of the task
 </dd>
-<dt><i>filename</i></dt>
+<dt><i>filename</i> (str)</dt>
 <dd>
-filename containing the task (string)
+filename containing the task
 </dd>
-<dt><i>lineno</i></dt>
+<dt><i>lineno</i> (int)</dt>
 <dd>
-line number containing the task (integer)
+line number containing the task
 </dd>
-<dt><i>completed</i></dt>
+<dt><i>completed</i> (bool)</dt>
 <dd>
-flag indicating completion status (boolean)
+flag indicating completion status
 </dd>
-<dt><i>_time</i></dt>
+<dt><i>_time</i> (float)</dt>
 <dd>
-creation time of the task (float, if 0 use current time)
+creation time of the task (if 0 use current time)
 </dd>
-<dt><i>isProjectTask</i></dt>
+<dt><i>isProjectTask</i> (bool)</dt>
 <dd>
 flag indicating a task related to the current
-            project (boolean)
+            project
 </dd>
-<dt><i>taskType</i></dt>
+<dt><i>taskType</i> (TaskType)</dt>
 <dd>
-type of the task (one of TypeFixme, TypeTodo,
-            TypeWarning, TypeNote, TypeTest, TypeDocu)
+type of the task
 </dd>
-<dt><i>project</i></dt>
+<dt><i>project</i> (Project)</dt>
 <dd>
-reference to the project object (Project)
+reference to the project object
 </dd>
-<dt><i>description</i></dt>
+<dt><i>description</i> (str)</dt>
 <dd>
-explanatory text of the task (string)
+explanatory text of the task
 </dd>
-<dt><i>uid</i></dt>
+<dt><i>uid</i> (str)</dt>
 <dd>
-unique id of the task (string)
+unique id of the task
 </dd>
-<dt><i>parentUid</i></dt>
+<dt><i>parentUid</i> (str)</dt>
 <dd>
-unique id of the parent task (string)
+unique id of the parent task
 </dd>
 </dl>
 <a NAME="Task.colorizeTask" ID="Task.colorizeTask"></a>
@@ -334,9 +345,9 @@
 </p>
 <dl>
 
-<dt><i>description</i></dt>
+<dt><i>description</i> (str)</dt>
 <dd>
-descriptive text of the task (string)
+descriptive text of the task
 </dd>
 </dl>
 <a NAME="Task.setPriority" ID="Task.setPriority"></a>
@@ -348,9 +359,9 @@
 </p>
 <dl>
 
-<dt><i>priority</i></dt>
+<dt><i>priority</i> (TaskPriority)</dt>
 <dd>
-priority of the task (0=high, 1=normal, 2=low)
+priority of the task
 </dd>
 </dl>
 <a NAME="Task.setProjectTask" ID="Task.setProjectTask"></a>
@@ -381,6 +392,20 @@
 summary text of the task (string)
 </dd>
 </dl>
+<a NAME="Task.setTaskType" ID="Task.setTaskType"></a>
+<h4>Task.setTaskType</h4>
+<b>setTaskType</b>(<i>taskType</i>)
+
+<p>
+        Public method to update the task type.
+</p>
+<dl>
+
+<dt><i>taskType</i> (TaskType)</dt>
+<dd>
+type of the task
+</dd>
+</dl>
 <a NAME="Task.toDict" ID="Task.toDict"></a>
 <h4>Task.toDict</h4>
 <b>toDict</b>(<i></i>)
@@ -402,4 +427,68 @@
 </dl>
 <div align="right"><a href="#top">Up</a></div>
 <hr />
+<hr />
+<a NAME="TaskPriority" ID="TaskPriority"></a>
+<h2>TaskPriority</h2>
+
+<p>
+    Class defining the task priorities.
+</p>
+<h3>Derived from</h3>
+enum.IntEnum
+<h3>Class Attributes</h3>
+
+<table>
+<tr><td>HIGH</td></tr><tr><td>LOW</td></tr><tr><td>NORMAL</td></tr>
+</table>
+<h3>Class Methods</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Methods</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Static Methods</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+<hr />
+<a NAME="TaskType" ID="TaskType"></a>
+<h2>TaskType</h2>
+
+<p>
+    Class defining the task types.
+</p>
+<h3>Derived from</h3>
+enum.IntEnum
+<h3>Class Attributes</h3>
+
+<table>
+<tr><td>DOCU</td></tr><tr><td>FIXME</td></tr><tr><td>NONE</td></tr><tr><td>NOTE</td></tr><tr><td>TEST</td></tr><tr><td>TODO</td></tr><tr><td>WARNING</td></tr>
+</table>
+<h3>Class Methods</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Methods</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Static Methods</h3>
+
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<div align="right"><a href="#top">Up</a></div>
+<hr />
 </body></html>
\ No newline at end of file
--- a/eric6/Documentation/Source/eric6.Tasks.TaskFilter.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Tasks.TaskFilter.html	Thu Jun 03 11:39:23 2021 +0200
@@ -173,9 +173,9 @@
 </p>
 <dl>
 
-<dt><i>priorities</i></dt>
+<dt><i>priorities</i> (list of TaskPriority or None)</dt>
 <dd>
-list of task priorities (list of integer) or None
+list of task priorities or None
 </dd>
 </dl>
 <a NAME="TaskFilter.setScopeFilter" ID="TaskFilter.setScopeFilter"></a>
@@ -230,10 +230,9 @@
 </p>
 <dl>
 
-<dt><i>taskType</i></dt>
+<dt><i>taskType</i> (TaskType)</dt>
 <dd>
-type of the task (one of Task.TypeNone, Task.TypeFixme,
-            Task.TypeTodo, Task.TypeWarning, Task.TypeNote)
+type of the task
 </dd>
 </dl>
 <a NAME="TaskFilter.showTask" ID="TaskFilter.showTask"></a>
--- a/eric6/Documentation/Source/eric6.Tasks.TaskPropertiesDialog.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Tasks.TaskPropertiesDialog.html	Thu Jun 03 11:39:23 2021 +0200
@@ -73,12 +73,16 @@
 <td>Constructor</td>
 </tr>
 <tr>
+<td><a href="#TaskPropertiesDialog.__setMode">__setMode</a></td>
+<td>Private method to show or hide dialog elements depending on the task kind.</td>
+</tr>
+<tr>
 <td><a href="#TaskPropertiesDialog.getData">getData</a></td>
 <td>Public method to retrieve the dialogs data.</td>
 </tr>
 <tr>
-<td><a href="#TaskPropertiesDialog.setReadOnly">setReadOnly</a></td>
-<td>Public slot to set the dialog to read only mode.</td>
+<td><a href="#TaskPropertiesDialog.isManualTaskMode">isManualTaskMode</a></td>
+<td>Public method to check, if the dialog is in manual task mode.</td>
 </tr>
 <tr>
 <td><a href="#TaskPropertiesDialog.setSubTaskMode">setSubTaskMode</a></td>
@@ -100,17 +104,36 @@
 </p>
 <dl>
 
-<dt><i>task</i></dt>
+<dt><i>task</i> (Task)</dt>
 <dd>
 the task object to be shown
 </dd>
-<dt><i>parent</i></dt>
+<dt><i>parent</i> (QWidget)</dt>
 <dd>
-the parent widget (QWidget)
+the parent widget
+</dd>
+<dt><i>projectOpen</i> (bool)</dt>
+<dd>
+flag indicating status of the project
 </dd>
-<dt><i>projectOpen</i></dt>
+</dl>
+<a NAME="TaskPropertiesDialog.__setMode" ID="TaskPropertiesDialog.__setMode"></a>
+<h4>TaskPropertiesDialog.__setMode</h4>
+<b>__setMode</b>(<i>isFileTask, projectOpen</i>)
+
+<p>
+        Private method to show or hide dialog elements depending on the task
+        kind.
+</p>
+<dl>
+
+<dt><i>isFileTask</i> (bool)</dt>
 <dd>
-flag indicating status of the project (boolean)
+flag indicating a file task (i.e. extracted task)
+</dd>
+<dt><i>projectOpen</i> (bool)</dt>
+<dd>
+flag indicating status of the project
 </dd>
 </dl>
 <a NAME="TaskPropertiesDialog.getData" ID="TaskPropertiesDialog.getData"></a>
@@ -123,18 +146,35 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-tuple of description, priority, completion flag,
-                project flag and long text (string, string, boolean,
-                boolean, string)
+tuple of description, priority, type, completion flag,
+                project flag and long text
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+tuple of (str, TaskPriority, TaskType, bool, bool, str)
 </dd>
 </dl>
-<a NAME="TaskPropertiesDialog.setReadOnly" ID="TaskPropertiesDialog.setReadOnly"></a>
-<h4>TaskPropertiesDialog.setReadOnly</h4>
-<b>setReadOnly</b>(<i></i>)
+<a NAME="TaskPropertiesDialog.isManualTaskMode" ID="TaskPropertiesDialog.isManualTaskMode"></a>
+<h4>TaskPropertiesDialog.isManualTaskMode</h4>
+<b>isManualTaskMode</b>(<i></i>)
 
 <p>
-        Public slot to set the dialog to read only mode.
+        Public method to check, if the dialog is in manual task mode.
 </p>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating manual task mode
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
 <a NAME="TaskPropertiesDialog.setSubTaskMode" ID="TaskPropertiesDialog.setSubTaskMode"></a>
 <h4>TaskPropertiesDialog.setSubTaskMode</h4>
 <b>setSubTaskMode</b>(<i>projectTask</i>)
--- a/eric6/Documentation/Source/eric6.Tasks.TaskViewer.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.Tasks.TaskViewer.html	Thu Jun 03 11:39:23 2021 +0200
@@ -64,11 +64,11 @@
 <h3>Signals</h3>
 <dl>
 
-<dt>taskFound(str, str, int, int)</dt>
+<dt>taskFound(str, str, int, TaskType)</dt>
 <dd>
-emitted with the task description,
-        the file name, the line number and task type to signal the presence of
-        a task
+emitted with the task
+        description, the file name, the line number and task type to signal
+        the presence of a task
 </dd>
 </dl>
 <h3>Derived from</h3>
@@ -561,96 +561,100 @@
 </dl>
 <a NAME="TaskViewer.addFileTask" ID="TaskViewer.addFileTask"></a>
 <h4>TaskViewer.addFileTask</h4>
-<b>addFileTask</b>(<i>summary, filename, lineno, taskType=Task.TypeTodo, description=""</i>)
+<b>addFileTask</b>(<i>summary, filename, lineno, taskType=TaskType.TODO, description=""</i>)
 
 <p>
         Public slot to add a file related task.
 </p>
 <dl>
 
-<dt><i>summary</i></dt>
+<dt><i>summary</i> (str)</dt>
 <dd>
-summary text of the task (string)
+summary text of the task
 </dd>
-<dt><i>filename</i></dt>
+<dt><i>filename</i> (str)</dt>
 <dd>
-filename containing the task (string)
+filename containing the task
 </dd>
-<dt><i>lineno</i></dt>
+<dt><i>lineno</i> (int)</dt>
 <dd>
-line number containing the task (integer)
+line number containing the task
 </dd>
-<dt><i>taskType</i></dt>
+<dt><i>taskType</i> (TaskType)</dt>
 <dd>
-type of the task (one of Task.TypeFixme, Task.TypeTodo,
-            Task.TypeWarning, Task.TypeNote)
+type of the task
 </dd>
-<dt><i>description</i></dt>
+<dt><i>description</i> (str)</dt>
 <dd>
-explanatory text of the task (string)
+explanatory text of the task
 </dd>
 </dl>
 <a NAME="TaskViewer.addTask" ID="TaskViewer.addTask"></a>
 <h4>TaskViewer.addTask</h4>
-<b>addTask</b>(<i>summary, priority=1, filename="", lineno=0, completed=False, _time=0, isProjectTask=False, taskType=Task.TypeTodo, description="", uid="", parentTask=None</i>)
+<b>addTask</b>(<i>summary, priority=TaskPriority.NORMAL, filename="", lineno=0, completed=False, _time=0, isProjectTask=False, taskType=TaskType.TODO, description="", uid="", parentTask=None</i>)
 
 <p>
         Public slot to add a task.
 </p>
 <dl>
 
-<dt><i>summary</i></dt>
+<dt><i>summary</i> (str)</dt>
 <dd>
-summary text of the task (string)
+summary text of the task
 </dd>
-<dt><i>priority</i></dt>
+<dt><i>priority</i> (TaskPriority)</dt>
 <dd>
-priority of the task (0=high, 1=normal, 2=low)
+priority of the task
 </dd>
-<dt><i>filename</i></dt>
+<dt><i>filename</i> (str)</dt>
 <dd>
-filename containing the task (string)
+filename containing the task
 </dd>
-<dt><i>lineno</i></dt>
+<dt><i>lineno</i> (int)</dt>
 <dd>
-line number containing the task (integer)
+line number containing the task
 </dd>
-<dt><i>completed</i></dt>
+<dt><i>completed</i> (bool)</dt>
 <dd>
-flag indicating completion status (boolean)
+flag indicating completion status
 </dd>
-<dt><i>_time</i></dt>
+<dt><i>_time</i> (float)</dt>
 <dd>
-creation time of the task (float, if 0 use current time)
+creation time of the task (if 0 use current time)
 </dd>
-<dt><i>isProjectTask</i></dt>
+<dt><i>isProjectTask</i> (bool)</dt>
 <dd>
 flag indicating a task related to the current
-            project (boolean)
+            project
 </dd>
-<dt><i>taskType</i></dt>
+<dt><i>taskType</i> (TaskType)</dt>
 <dd>
-type of the task (one of Task.TypeFixme, Task.TypeTodo,
-            Task.TypeWarning, Task.TypeNote)
+type of the task
 </dd>
-<dt><i>description</i></dt>
+<dt><i>description</i> (str)</dt>
 <dd>
-explanatory text of the task (string)
+explanatory text of the task
 </dd>
-<dt><i>uid</i></dt>
+<dt><i>uid</i> (str)</dt>
 <dd>
-unique id of the task (string)
+unique id of the task
 </dd>
-<dt><i>parentTask</i></dt>
+<dt><i>parentTask</i> (Task or str)</dt>
 <dd>
-reference to the parent task item (Task) or the
-            UID of the parent task
+reference to the parent task item or the UID of the
+            parent task
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-reference to the task item (Task)
+reference to the task item
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+Task
 </dd>
 </dl>
 <a NAME="TaskViewer.clearFileTasks" ID="TaskViewer.clearFileTasks"></a>
--- a/eric6/Documentation/Source/eric6.UI.Browser.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.UI.Browser.html	Thu Jun 03 11:39:23 2021 +0200
@@ -124,6 +124,10 @@
         files indicating whether non-existent files shall be ignored
         (list of str, bool)
 </dd>
+<dt>umlFile(filename)</dt>
+<dd>
+emitted to open an eric UML file (str)
+</dd>
 <dt>unittestOpen(filename)</dt>
 <dd>
 emitted to open a Python file for a
--- a/eric6/Documentation/Source/eric6.UI.UserInterface.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/eric6.UI.UserInterface.html	Thu Jun 03 11:39:23 2021 +0200
@@ -526,6 +526,10 @@
 <td>Private method to open the last file, project or multiproject.</td>
 </tr>
 <tr>
+<td><a href="#UserInterface.__pluginInstallFinished">__pluginInstallFinished</a></td>
+<td>Private slot to handle the finishing of the plugin install dialog.</td>
+</tr>
+<tr>
 <td><a href="#UserInterface.__pluginsConfigure">__pluginsConfigure</a></td>
 <td>Private slot to show the plugin manager configuration page.</td>
 </tr>
@@ -706,6 +710,10 @@
 <td>Private slot to display the Toolbars menu.</td>
 </tr>
 <tr>
+<td><a href="#UserInterface.__showUml">__showUml</a></td>
+<td>Private slot to show an eric graphics file in a dialog.</td>
+</tr>
+<tr>
 <td><a href="#UserInterface.__showUserToolsMenu">__showUserToolsMenu</a></td>
 <td>Private slot to display the User Tools menu.</td>
 </tr>
@@ -1911,6 +1919,13 @@
             "Nothing", "File", "Project", "MultiProject" or "Session")
 </dd>
 </dl>
+<a NAME="UserInterface.__pluginInstallFinished" ID="UserInterface.__pluginInstallFinished"></a>
+<h4>UserInterface.__pluginInstallFinished</h4>
+<b>__pluginInstallFinished</b>(<i></i>)
+
+<p>
+        Private slot to handle the finishing of the plugin install dialog.
+</p>
 <a NAME="UserInterface.__pluginsConfigure" ID="UserInterface.__pluginsConfigure"></a>
 <h4>UserInterface.__pluginsConfigure</h4>
 <b>__pluginsConfigure</b>(<i></i>)
@@ -2390,6 +2405,20 @@
 <p>
         Private slot to display the Toolbars menu.
 </p>
+<a NAME="UserInterface.__showUml" ID="UserInterface.__showUml"></a>
+<h4>UserInterface.__showUml</h4>
+<b>__showUml</b>(<i>fn</i>)
+
+<p>
+        Private slot to show an eric graphics file in a dialog.
+</p>
+<dl>
+
+<dt><i>fn</i> (str)</dt>
+<dd>
+name of the file to be shown
+</dd>
+</dl>
 <a NAME="UserInterface.__showUserToolsMenu" ID="UserInterface.__showUserToolsMenu"></a>
 <h4>UserInterface.__showUserToolsMenu</h4>
 <b>__showUserToolsMenu</b>(<i></i>)
--- a/eric6/Documentation/Source/index-eric6.E5Network.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/index-eric6.E5Network.html	Thu Jun 03 11:39:23 2021 +0200
@@ -50,6 +50,14 @@
 <td>Module implementing some helpers for Google mail.</td>
 </tr>
 <tr>
+<td><a href="eric6.E5Network.E5JsonClient.html">E5JsonClient</a></td>
+<td>Module implementing the JSON based client base class.</td>
+</tr>
+<tr>
+<td><a href="eric6.E5Network.E5JsonServer.html">E5JsonServer</a></td>
+<td>Module implementing the JSON based server base class.</td>
+</tr>
+<tr>
 <td><a href="eric6.E5Network.E5NetworkHeaderDetailsDialog.html">E5NetworkHeaderDetailsDialog</a></td>
 <td>Module implementing a dialog to show the data of a response or reply header.</td>
 </tr>
--- a/eric6/Documentation/Source/index-eric6.Graphics.html	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Documentation/Source/index-eric6.Graphics.html	Thu Jun 03 11:39:23 2021 +0200
@@ -58,7 +58,7 @@
 </tr>
 <tr>
 <td><a href="eric6.Graphics.PackageDiagramBuilder.html">PackageDiagramBuilder</a></td>
-<td>Module implementing a dialog showing a UML like class diagram of a package.</td>
+<td>Module implementing a dialog showing an UML like class diagram of a package.</td>
 </tr>
 <tr>
 <td><a href="eric6.Graphics.PackageItem.html">PackageItem</a></td>
--- a/eric6/E5Graphics/E5GraphicsView.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/E5Graphics/E5GraphicsView.py	Thu Jun 03 11:39:23 2021 +0200
@@ -283,10 +283,14 @@
         Private method to retrieve the diagram from the scene fitting it
         in the minimum rectangle.
         
-        @param rect minimum rectangle fitting the diagram (QRectF)
-        @param imageFormat format for the image file (string)
-        @param filename name of the file for non pixmaps (string)
-        @return diagram pixmap to receive the diagram (QPixmap)
+        @param rect minimum rectangle fitting the diagram
+        @type QRectF
+        @param imageFormat format for the image file
+        @type str
+        @param filename name of the file for non pixmaps
+        str
+        @return paint device containing the diagram
+        @rtype QPixmap or QSvgGenerator
         """
         selectedItems = self.scene().selectedItems()
         
@@ -341,22 +345,24 @@
             (QPrinter)
         @param diagramName name of the diagram (string)
         """
-        painter = QPainter()
-        painter.begin(printer)
-        offsetX = 0
-        offsetY = 0
-        widthX = 0
-        heightY = 0
+        painter = QPainter(printer)
+        
         font = QFont("times", 10)
         painter.setFont(font)
         fm = painter.fontMetrics()
         fontHeight = fm.lineSpacing()
-        marginX = printer.pageRect().x() - printer.paperRect().x()
+        marginX = (
+            printer.pageLayout().paintRectPixels(printer.resolution()).x() -
+            printer.pageLayout().fullRectPixels(printer.resolution()).x()
+        )
         marginX = (
             Preferences.getPrinter("LeftMargin") *
             int(printer.resolution() / 2.54) - marginX
         )
-        marginY = printer.pageRect().y() - printer.paperRect().y()
+        marginY = (
+            printer.pageLayout().paintRectPixels(printer.resolution()).y() -
+            printer.pageLayout().fullRectPixels(printer.resolution()).y()
+        )
         marginY = (
             Preferences.getPrinter("TopMargin") *
             int(printer.resolution() / 2.54) - marginY
@@ -373,59 +379,18 @@
             int(printer.resolution() / 2.54)
         )
         
-        border = self.border == 0 and 5 or self.border
-        rect = self._getDiagramRect(border)
-        diagram = self.__getDiagram(rect)
+        self.scene().render(painter,
+                            target=QRectF(marginX, marginY, width, height))
         
-        finishX = False
-        finishY = False
-        page = 0
-        pageX = 0
-        pageY = 1
-        while not finishX or not finishY:
-            if not finishX:
-                offsetX = pageX * width
-                pageX += 1
-            elif not finishY:
-                offsetY = pageY * height
-                offsetX = 0
-                pageY += 1
-                finishX = False
-                pageX = 1
-            if (width + offsetX) > diagram.width():
-                finishX = True
-                widthX = diagram.width() - offsetX
-            else:
-                widthX = width
-            if diagram.width() < width:
-                widthX = diagram.width()
-                finishX = True
-                offsetX = 0
-            if (height + offsetY) > diagram.height():
-                finishY = True
-                heightY = diagram.height() - offsetY
-            else:
-                heightY = height
-            if diagram.height() < height:
-                finishY = True
-                heightY = diagram.height()
-                offsetY = 0
-            
-            painter.drawPixmap(marginX, marginY, diagram,
-                               offsetX, offsetY, widthX, heightY)
-            # write a foot note
-            s = self.tr("{0}, Page {1}").format(diagramName, page + 1)
-            tc = QColor(50, 50, 50)
-            painter.setPen(tc)
-            painter.drawRect(marginX, marginY, width, height)
-            painter.drawLine(marginX, marginY + height + 2,
-                             marginX + width, marginY + height + 2)
-            painter.setFont(font)
-            painter.drawText(marginX, marginY + height + 4, width,
-                             fontHeight, Qt.AlignmentFlag.AlignRight, s)
-            if not finishX or not finishY:
-                printer.newPage()
-                page += 1
+        # write a foot note
+        tc = QColor(50, 50, 50)
+        painter.setPen(tc)
+        painter.drawRect(marginX, marginY, width, height)
+        painter.drawLine(marginX, marginY + height + 2,
+                         marginX + width, marginY + height + 2)
+        painter.setFont(font)
+        painter.drawText(marginX, marginY + height + 4, width,
+                         fontHeight, Qt.AlignmentFlag.AlignRight, diagramName)
         
         painter.end()
     
--- a/eric6/E5Gui/E5PathPicker.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/E5Gui/E5PathPicker.py	Thu Jun 03 11:39:23 2021 +0200
@@ -25,8 +25,8 @@
     """
     Class implementing the path picker modes.
     """
-    # TODO: convert these to all uppercase without "Mode" when doing
-    #       the port to PyQt6 (i.e. eric7)
+    # TODO: eric7: convert these to all uppercase without "Mode" when doing
+    #       the port to PyQt6
     OpenFileMode = 0
     OpenFilesMode = 1
     SaveFileMode = 2
--- a/eric6/E5Network/E5Ftp.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/E5Network/E5Ftp.py	Thu Jun 03 11:39:23 2021 +0200
@@ -8,6 +8,7 @@
 proxies.
 """
 
+import enum
 import ftplib           # secok
 from socket import _GLOBAL_DEFAULT_TIMEOUT
 
@@ -39,22 +40,20 @@
     pass
 
 
-# TODO: convert to Enum
-#       note: it is used as a preference item as well => IntEnum
-class E5FtpProxyType:
+class E5FtpProxyType(enum.Enum):
     """
     Class defining the supported FTP proxy types.
     """
-    NoProxy = 0                     # no proxy
-    NonAuthorizing = 1              # non authorizing proxy
-    UserAtServer = 2                # proxy login first, than user@remote.host
-    Site = 3                        # proxy login first, than use SITE command
-    Open = 4                        # proxy login first, than use OPEN command
-    UserAtProxyuserAtServer = 5     # one login for both
-    ProxyuserAtServer = 6
+    NO_PROXY = 0                    # no proxy
+    NON_AUTHORIZING = 1             # non authorizing proxy
+    USER_SERVER = 2                 # proxy login first, than user@remote.host
+    SITE = 3                        # proxy login first, than use SITE command
+    OPEN = 4                        # proxy login first, than use OPEN command
+    USER_PROXYUSER_SERVER = 5       # one login for both
+    PROXYUSER_SERVER = 6
     # proxy login with remote host given, than normal remote login
-    AuthResp = 7  # authenticate to proxy with AUTH and RESP commands
-    Bluecoat = 8                    # bluecoat proxy
+    AUTH_RESP = 7  # authenticate to proxy with AUTH and RESP commands
+    BLUECOAT = 8                    # bluecoat proxy
 
 
 class E5Ftp(ftplib.FTP):
@@ -63,23 +62,34 @@
     proxies.
     """
     def __init__(self, host="", user="", password="", acct="",          # secok
-                 proxyType=E5FtpProxyType.NoProxy, proxyHost="",
+                 proxyType=E5FtpProxyType.NO_PROXY, proxyHost="",
                  proxyPort=ftplib.FTP_PORT, proxyUser="", proxyPassword="",
                  proxyAccount="", timeout=_GLOBAL_DEFAULT_TIMEOUT):
         """
         Constructor
         
-        @param host name of the FTP host (string)
-        @param user user name for login to FTP host (string)
-        @param password password for login to FTP host (string)
-        @param acct account for login to FTP host (string)
-        @param proxyType type of the FTP proxy (integer 0 to 8)
-        @param proxyHost name of the FTP proxy (string)
-        @param proxyPort port of the FTP proxy (integer)
-        @param proxyUser user name for login to the proxy (string)
-        @param proxyPassword password for login to the proxy (string)
-        @param proxyAccount accounting info for the proxy (string)
-        @param timeout timeout in seconds for blocking operations (integer)
+        @param host name of the FTP host
+        @type str
+        @param user user name for login to FTP host
+        @type str
+        @param password password for login to FTP host
+        @type str
+        @param acct account for login to FTP host
+        @type str
+        @param proxyType type of the FTP proxy
+        @type E5FtpProxyType
+        @param proxyHost name of the FTP proxy
+        @type str
+        @param proxyPort port of the FTP proxy
+        @type int
+        @param proxyUser user name for login to the proxy
+        @type str
+        @param proxyPassword password for login to the proxy
+        @type str
+        @param proxyAccount accounting info for the proxy
+        @type str
+        @param timeout timeout in seconds for blocking operations
+        @type int
         """
         super().__init__()
         
@@ -103,18 +113,24 @@
             if user:
                 self.login(user, password, acct)
     
-    def setProxy(self, proxyType=E5FtpProxyType.NoProxy, proxyHost="",
+    def setProxy(self, proxyType=E5FtpProxyType.NO_PROXY, proxyHost="",
                  proxyPort=ftplib.FTP_PORT, proxyUser="", proxyPassword="",
                  proxyAccount=""):
         """
         Public method to set the proxy configuration.
         
-        @param proxyType type of the FTP proxy (integer 0 to 8)
-        @param proxyHost name of the FTP proxy (string)
-        @param proxyPort port of the FTP proxy (integer)
-        @param proxyUser user name for login to the proxy (string)
-        @param proxyPassword password  for login to the proxy (string)
-        @param proxyAccount accounting info for the proxy (string)
+        @param proxyType type of the FTP proxy
+        @type E5FtpProxyType
+        @param proxyHost name of the FTP proxy
+        @type str
+        @param proxyPort port of the FTP proxy
+        @type int
+        @param proxyUser user name for login to the proxy
+        @type str
+        @param proxyPassword password  for login to the proxy
+        @type str
+        @param proxyAccount accounting info for the proxy
+        @type str
         """
         self.__proxyType = proxyType
         self.__proxyHost = proxyHost
@@ -128,9 +144,12 @@
         """
         Public method to set the proxy authentication info.
         
-        @param proxyUser user name for login to the proxy (string)
-        @param proxyPassword password  for login to the proxy (string)
-        @param proxyAccount accounting info for the proxy (string)
+        @param proxyUser user name for login to the proxy
+        @type str
+        @param proxyPassword password  for login to the proxy
+        @type str
+        @param proxyAccount accounting info for the proxy
+        @type str
         """
         self.__proxyUser = proxyUser
         self.__proxyPassword = proxyPassword
@@ -144,10 +163,14 @@
         if a proxy is to be used. It throws an exception, if the proxy data
         is incomplete.
         
-        @param host name of the FTP host (string)
-        @param port port of the FTP host (integer)
-        @param timeout timeout in seconds for blocking operations (integer)
-        @return welcome message of the server (string)
+        @param host name of the FTP host
+        @type str
+        @param port port of the FTP host
+        @type int
+        @param timeout timeout in seconds for blocking operations
+        @type int
+        @return welcome message of the server
+        @rtype str
         @exception E5FtpProxyError raised to indicate a proxy related issue
         """
         if host:
@@ -157,7 +180,7 @@
         if timeout != -999:
             self.__timeout = timeout
         
-        if self.__proxyType != E5FtpProxyType.NoProxy:
+        if self.__proxyType != E5FtpProxyType.NO_PROXY:
             if not self.__proxyHost:
                 raise E5FtpProxyError(
                     "990 Proxy usage requested, but no proxy host given.")
@@ -187,24 +210,24 @@
         </table>
         
         <dl>
-          <dt>E5FtpProxyType.NoProxy:</dt>
+          <dt>E5FtpProxyType.NO_PROXY:</dt>
           <dd>
             USER user<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.NonAuthorizing:</dt>
+          <dt>E5FtpProxyType.NON_AUTHORIZING:</dt>
           <dd>
             USER user@remote.host<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.UserAtServer:</dt>
+          <dt>E5FtpProxyType.USER_SERVER:</dt>
           <dd>
             USER pruser<br/>
             PASS prpass<br/>
             USER user@remote.host<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.Site:</dt>
+          <dt>E5FtpProxyType.SITE:</dt>
           <dd>
             USER pruser<br/>
             PASS prpass<br/>
@@ -212,7 +235,7 @@
             USER user<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.Open:</dt>
+          <dt>E5FtpProxyType.OPEN:</dt>
           <dd>
             USER pruser<br/>
             PASS prpass<br/>
@@ -220,26 +243,26 @@
             USER user<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.UserAtProxyuserAtServer:</dt>
+          <dt>E5FtpProxyType.USER_PROXYUSER_SERVER:</dt>
           <dd>
             USER user@pruser@remote.host<br/>
             PASS pass@prpass
           </dd>
-          <dt>E5FtpProxyType.ProxyuserAtServer:</dt>
+          <dt>E5FtpProxyType.PROXYUSER_SERVER:</dt>
           <dd>
             USER pruser@remote.host<br/>
             PASS prpass<br/>
             USER user<br/>
             PASS pass
           </dd>
-          <dt>E5FtpProxyType.AuthResp:</dt>
+          <dt>E5FtpProxyType.AUTH_RESP:</dt>
           <dd>
             USER user@remote.host<br/>
             PASS pass<br/>
             AUTH pruser<br/>
             RESP prpass
           </dd>
-          <dt>E5FtpProxyType.Bluecoat:</dt>
+          <dt>E5FtpProxyType.BLUECOAT:</dt>
           <dd>
             USER user@remote.host pruser<br/>
             PASS pass<br/>
@@ -247,10 +270,14 @@
           </dd>
         </dl>
         
-        @param user username for the remote host (string)
-        @param password password for the remote host (string)
-        @param acct accounting information for the remote host (string)
-        @return response sent by the remote host (string)
+        @param user username for the remote host
+        @type str
+        @param password password for the remote host
+        @type str
+        @param acct accounting information for the remote host
+        @type str
+        @return response sent by the remote host
+        @rtype str
         @exception E5FtpProxyError raised to indicate a proxy related issue
         @exception ftplib.error_reply raised to indicate an FTP error reply
         """
@@ -265,8 +292,8 @@
         if user == "anonymous" and password in {'', '-'}:
             password += "anonymous@"
         
-        if self.__proxyType != E5FtpProxyType.NoProxy:
-            if self.__proxyType != E5FtpProxyType.NonAuthorizing:
+        if self.__proxyType != E5FtpProxyType.NO_PROXY:
+            if self.__proxyType != E5FtpProxyType.NON_AUTHORIZING:
                 # check, if a valid proxy configuration is known
                 if not self.__proxyUser:
                     raise E5FtpProxyError(
@@ -276,22 +303,22 @@
                         "992 Proxy usage requested, but no proxy password"
                         " given")
             
-            if self.__proxyType in [E5FtpProxyType.NonAuthorizing,
-                                    E5FtpProxyType.AuthResp,
-                                    E5FtpProxyType.Bluecoat]:
+            if self.__proxyType in [E5FtpProxyType.NON_AUTHORIZING,
+                                    E5FtpProxyType.AUTH_RESP,
+                                    E5FtpProxyType.BLUECOAT]:
                 user += "@" + self.__host
-                if self.__proxyType == E5FtpProxyType.Bluecoat:
+                if self.__proxyType == E5FtpProxyType.BLUECOAT:
                     user += " " + self.__proxyUser
                     acct = self.__proxyPassword
-            elif self.__proxyType == E5FtpProxyType.UserAtProxyuserAtServer:
+            elif self.__proxyType == E5FtpProxyType.USER_PROXYUSER_SERVER:
                 user = "{0}@{1}@{2}".format(
                     user, self.__proxyUser, self.__host)
                 password = "{0}@{1}".format(password, self.__proxyPassword)
             else:
                 pruser = self.__proxyUser
-                if self.__proxyType == E5FtpProxyType.UserAtServer:
+                if self.__proxyType == E5FtpProxyType.USER_SERVER:
                     user += "@" + self.__host
-                elif self.__proxyType == E5FtpProxyType.ProxyuserAtServer:
+                elif self.__proxyType == E5FtpProxyType.PROXYUSER_SERVER:
                     pruser += "@" + self.__host
                 
                 # authenticate to the proxy first
@@ -305,14 +332,14 @@
                         "9{0}0 Error authorizing at proxy\n{1}".format(
                             presp[0], presp))
                 
-                if self.__proxyType == E5FtpProxyType.Site:
+                if self.__proxyType == E5FtpProxyType.SITE:
                     # send SITE command
                     presp = self.sendcmd("SITE " + self.__host)
                     if presp[0] != "2":
                         raise E5FtpProxyError(
                             "9{0}0 Error sending SITE command\n{1}".format(
                                 presp[0], presp))
-                elif self.__proxyType == E5FtpProxyType.Open:
+                elif self.__proxyType == E5FtpProxyType.OPEN:
                     # send OPEN command
                     presp = self.sendcmd("OPEN " + self.__host)
                     if presp[0] != "2":
@@ -329,7 +356,7 @@
         if resp[0] != "2":
             raise ftplib.error_reply(resp)          # secok
         
-        if self.__proxyType == E5FtpProxyType.AuthResp:
+        if self.__proxyType == E5FtpProxyType.AUTH_RESP:
             # authorize to the FTP proxy
             presp = self.sendcmd("AUTH " + self.__proxyUser)
             if presp[0] == "3":
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/eric6/E5Network/E5JsonClient.py	Thu Jun 03 11:39:23 2021 +0200
@@ -0,0 +1,203 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (c) 2017 - 2021 Detlev Offenbach <detlev@die-offenbachs.de>
+#
+
+"""
+Module implementing the JSON based client base class.
+"""
+
+import io
+import sys
+import socket
+import select
+import traceback
+import json
+import contextlib
+
+
+class E5JsonClient:
+    """
+    Class implementing a JSON based client base class.
+    """
+    def __init__(self, host, port, idString=""):
+        """
+        Constructor
+        
+        @param host ip address the background service is listening
+        @type str
+        @param port port of the background service
+        @type int
+        @param idString assigned client id to be sent back to the server in
+            order to identify the connection
+        @type str
+        """
+        self.__connection = socket.create_connection((host, port))
+        if idString:
+            reply = idString + '\n'
+            self.__connection.sendall(reply.encode('utf8', 'backslashreplace'))
+    
+    def sendJson(self, command, params):
+        """
+        Public method to send a single refactoring command to the server.
+        
+        @param command command name to be sent
+        @type str
+        @param params dictionary of named parameters for the command
+        @type dict
+        """
+        commandDict = {
+            "jsonrpc": "2.0",
+            "method": command,
+            "params": params,
+        }
+        cmd = json.dumps(commandDict) + '\n'
+        self.__connection.sendall(cmd.encode('utf8', 'backslashreplace'))
+    
+    def __receiveJson(self):
+        """
+        Private method to receive a JSON encode command and data from the
+        server.
+        
+        @return tuple containing the received command and a dictionary
+            containing the associated data
+        @rtype tuple of (str, dict)
+        """
+        # step 1: receive the data
+        # The JSON RPC string is prefixed by a 9 character long length field.
+        length = self.__connection.recv(9)
+        if len(length) < 9:
+            # invalid length string received
+            return None, None
+        
+        length = int(length)
+        data = b''
+        while len(data) < length:
+            newData = self.__connection.recv(length - len(data))
+            if not newData:
+                return None, None
+            
+            data += newData
+        
+        # step 2: decode and convert the data
+        line = data.decode(
+            'utf8', 'backslashreplace')
+        try:
+            commandDict = json.loads(line.strip())
+        except (TypeError, ValueError) as err:
+            self.sendJson("ClientException", {
+                "ExceptionType": "ProtocolError",
+                "ExceptionValue": str(err),
+                "ProtocolData": line.strip(),
+            })
+            return None, None
+        
+        method = commandDict["method"]
+        params = commandDict["params"]
+        
+        return method, params
+    
+    def handleCall(self, method, params):
+        """
+        Public method to handle a method call from the server.
+        
+        Note: This is an empty implementation that must be overridden in
+        derived classes.
+        
+        @param method requested method name
+        @type str
+        @param params dictionary with method specific parameters
+        @type dict
+        """
+        pass
+    
+    def run(self):
+        """
+        Public method implementing the main loop of the client.
+        """
+        try:
+            selectErrors = 0
+            while selectErrors <= 10:  # selected arbitrarily
+                try:
+                    rrdy, wrdy, xrdy = select.select(
+                        [self.__connection], [], [])
+                    
+                    # Just waiting for self.__connection. Therefor no check
+                    # needed.
+                    method, params = self.__receiveJson()
+                    if method is None:
+                        selectErrors += 1
+                    elif method == "Exit":
+                        break
+                    else:
+                        self.handleCall(method, params)
+                        
+                        # reset select errors
+                        selectErrors = 0
+                
+                except (select.error, KeyboardInterrupt, socket.error):
+                    selectErrors += 1
+        
+        except Exception:
+            exctype, excval, exctb = sys.exc_info()
+            tbinfofile = io.StringIO()
+            traceback.print_tb(exctb, None, tbinfofile)
+            tbinfofile.seek(0)
+            tbinfo = tbinfofile.read()
+            del exctb
+            self.sendJson("ClientException", {
+                "ExceptionType": str(exctype),
+                "ExceptionValue": str(excval),
+                "Traceback": tbinfo,
+            })
+
+        # Give time to process latest response on server side
+        with contextlib.suppress(socket.error, OSError):
+            self.__connection.shutdown(socket.SHUT_RDWR)
+            self.__connection.close()
+    
+    def poll(self, waitMethod=""):
+        """
+        Public method to check and receive one message (if available).
+        
+        @param waitMethod name of a method to wait for
+        @type str
+        @return dictionary containing the data of the waited for method
+        @rtype dict
+        """
+        try:
+            if waitMethod:
+                rrdy, wrdy, xrdy = select.select(
+                    [self.__connection], [], [])
+            else:
+                rrdy, wrdy, xrdy = select.select(
+                    [self.__connection], [], [], 0)
+            
+            if self.__connection in rrdy:
+                method, params = self.__receiveJson()
+                if method is not None:
+                    if method == "Exit":
+                        self.__exitClient = True
+                    elif method == waitMethod:
+                        return params
+                    else:
+                        self.handleCall(method, params)
+        
+        except (select.error, KeyboardInterrupt, socket.error):
+            # just ignore these
+            pass
+        
+        except Exception:
+            exctype, excval, exctb = sys.exc_info()
+            tbinfofile = io.StringIO()
+            traceback.print_tb(exctb, None, tbinfofile)
+            tbinfofile.seek(0)
+            tbinfo = tbinfofile.read()
+            del exctb
+            self.sendJson("ClientException", {
+                "ExceptionType": str(exctype),
+                "ExceptionValue": str(excval),
+                "Traceback": tbinfo,
+            })
+        
+        return None
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/eric6/E5Network/E5JsonServer.py	Thu Jun 03 11:39:23 2021 +0200
@@ -0,0 +1,336 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (c) 2017 - 2021 Detlev Offenbach <detlev@die-offenbachs.de>
+#
+
+"""
+Module implementing the JSON based server base class.
+"""
+
+import contextlib
+import json
+
+from PyQt5.QtCore import (
+    pyqtSlot, QProcess, QProcessEnvironment, QCoreApplication, QEventLoop,
+    QTimer
+)
+from PyQt5.QtNetwork import QTcpServer, QHostAddress
+
+from E5Gui import E5MessageBox
+
+import Preferences
+import Utilities
+
+
+class E5JsonServer(QTcpServer):
+    """
+    Class implementing a JSON based server base class.
+    """
+    def __init__(self, name="", multiplex=False, parent=None):
+        """
+        Constructor
+        
+        @param name name of the server (used for output only)
+        @type str
+        @param multiplex flag indicating a multiplexing server
+        @type bool
+        @param parent parent object
+        @type QObject
+        """
+        super().__init__(parent)
+        
+        self.__name = name
+        self.__multiplex = multiplex
+        if self.__multiplex:
+            self.__clientProcesses = {}
+            self.__connections = {}
+        else:
+            self.__clientProcess = None
+            self.__connection = None
+        
+        # setup the network interface
+        networkInterface = Preferences.getDebugger("NetworkInterface")
+        if networkInterface == "all" or '.' in networkInterface:
+            # IPv4
+            self.__hostAddress = '127.0.0.1'
+        else:
+            # IPv6
+            self.__hostAddress = '::1'
+        self.listen(QHostAddress(self.__hostAddress))
+
+        self.newConnection.connect(self.handleNewConnection)
+        
+        port = self.serverPort()
+        ## Note: Need the port if client is started external in debugger.
+        print('JSON server ({1}) listening on: {0:d}'   # __IGNORE_WARNING__
+              .format(port, self.__name))
+    
+    @pyqtSlot()
+    def handleNewConnection(self):
+        """
+        Public slot for new incoming connections from a client.
+        """
+        connection = self.nextPendingConnection()
+        if not connection.isValid():
+            return
+        
+        if self.__multiplex:
+            if not connection.waitForReadyRead(3000):
+                return
+            idString = bytes(connection.readLine()).decode(
+                "utf-8", 'backslashreplace').strip()
+            if idString in self.__connections:
+                self.__connections[idString].close()
+            self.__connections[idString] = connection
+        else:
+            idString = ""
+            if self.__connection is not None:
+                self.__connection.close()
+            
+            self.__connection = connection
+        
+        connection.readyRead.connect(
+            lambda: self.__receiveJson(idString))
+        connection.disconnected.connect(
+            lambda: self.__handleDisconnect(idString))
+    
+    @pyqtSlot()
+    def __handleDisconnect(self, idString):
+        """
+        Private slot handling a disconnect of the client.
+        
+        @param idString id of the connection been disconnected
+        @type str
+        """
+        if idString:
+            if idString in self.__connections:
+                self.__connections[idString].close()
+                del self.__connections[idString]
+        else:
+            if self.__connection is not None:
+                self.__connection.close()
+            
+            self.__connection = None
+    
+    def connectionNames(self):
+        """
+        Public method to get the list of active connection names.
+        
+        If this is not a multiplexing server, an empty list is returned.
+        
+        @return list of active connection names
+        @rtype list of str
+        """
+        if self.__multiplex:
+            return list(self.__connections.keys())
+        else:
+            return []
+    
+    @pyqtSlot()
+    def __receiveJson(self, idString):
+        """
+        Private slot handling received data from the client.
+        
+        @param idString id of the connection been disconnected
+        @type str
+        """
+        if idString:
+            try:
+                connection = self.__connections[idString]
+            except KeyError:
+                connection = None
+        else:
+            connection = self.__connection
+        
+        while connection and connection.canReadLine():
+            data = connection.readLine()
+            jsonLine = bytes(data).decode("utf-8", 'backslashreplace')
+            
+            #- print("JSON Server ({0}): {1}".format(self.__name, jsonLine))
+            #- this is for debugging only
+            
+            try:
+                clientDict = json.loads(jsonLine.strip())
+            except (TypeError, ValueError) as err:
+                E5MessageBox.critical(
+                    None,
+                    self.tr("JSON Protocol Error"),
+                    self.tr("""<p>The response received from the client"""
+                            """ could not be decoded. Please report"""
+                            """ this issue with the received data to the"""
+                            """ eric bugs email address.</p>"""
+                            """<p>Error: {0}</p>"""
+                            """<p>Data:<br/>{1}</p>""").format(
+                        str(err), Utilities.html_encode(jsonLine.strip())),
+                    E5MessageBox.StandardButtons(
+                        E5MessageBox.Ok))
+                return
+            
+            self.handleCall(clientDict["method"], clientDict["params"])
+    
+    def sendJson(self, command, params, flush=False, idString=""):
+        """
+        Public method to send a single command to a client.
+        
+        @param command command name to be sent
+        @type str
+        @param params dictionary of named parameters for the command
+        @type dict
+        @param flush flag indicating to flush the data to the socket
+        @type bool
+        @param idString id of the connection to send data to
+        @type str
+        """
+        commandDict = {
+            "jsonrpc": "2.0",
+            "method": command,
+            "params": params,
+        }
+        cmd = json.dumps(commandDict) + '\n'
+        
+        if idString:
+            try:
+                connection = self.__connections[idString]
+            except KeyError:
+                connection = None
+        else:
+            connection = self.__connection
+        
+        if connection is not None:
+            data = cmd.encode('utf8', 'backslashreplace')
+            length = "{0:09d}".format(len(data))
+            connection.write(length.encode() + data)
+            if flush:
+                connection.flush()
+    
+    def startClient(self, interpreter, clientScript, clientArgs, idString="",
+                    environment=None):
+        """
+        Public method to start a client process.
+        
+        @param interpreter interpreter to be used for the client
+        @type str
+        @param clientScript path to the client script
+        @type str
+        @param clientArgs list of arguments for the client
+        @param idString id of the client to be started
+        @type str
+        @param environment dictionary of environment settings to pass
+        @type dict
+        @return flag indicating a successful client start and the exit code
+            in case of an issue
+        @rtype bool, int
+        """
+        if interpreter == "" or not Utilities.isinpath(interpreter):
+            return False
+        
+        exitCode = None
+        
+        proc = QProcess()
+        proc.setProcessChannelMode(
+            QProcess.ProcessChannelMode.ForwardedChannels)
+        if environment is not None:
+            env = QProcessEnvironment()
+            for key, value in list(environment.items()):
+                env.insert(key, value)
+            proc.setProcessEnvironment(env)
+        args = [clientScript, self.__hostAddress, str(self.serverPort())]
+        if idString:
+            args.append(idString)
+        args.extend(clientArgs)
+        proc.start(interpreter, args)
+        if not proc.waitForStarted(10000):
+            proc = None
+        
+        if idString:
+            self.__clientProcesses[idString] = proc
+            if proc:
+                timer = QTimer()
+                timer.setSingleShot(True)
+                timer.start(30000)           # 30s timeout
+                while (
+                    idString not in self.connectionNames() and
+                    timer.isActive()
+                ):
+                    # Give the event loop the chance to process the new
+                    # connection of the client (= slow start).
+                    QCoreApplication.processEvents(
+                        QEventLoop.ProcessEventsFlag.ExcludeUserInputEvents)
+                    
+                    # check if client exited prematurely
+                    if proc.state() == QProcess.ProcessState.NotRunning:
+                        exitCode = proc.exitCode()
+                        proc = None
+                        self.__clientProcesses[idString] = None
+                        break
+        else:
+            if proc:
+                timer = QTimer()
+                timer.setSingleShot(True)
+                timer.start(1000)           # 1s timeout
+                while timer.isActive():
+                    # check if client exited prematurely
+                    QCoreApplication.processEvents(
+                        QEventLoop.ProcessEventsFlag.ExcludeUserInputEvents)
+                    if proc.state() == QProcess.ProcessState.NotRunning:
+                        exitCode = proc.exitCode()
+                        proc = None
+                        break
+            self.__clientProcess = proc
+        
+        return proc is not None, exitCode
+    
+    def stopClient(self, idString=""):
+        """
+        Public method to stop a client process.
+        
+        @param idString id of the client to be stopped
+        @type str
+        """
+        self.sendJson("Exit", {}, flush=True, idString=idString)
+        
+        if idString:
+            try:
+                connection = self.__connections[idString]
+            except KeyError:
+                connection = None
+        else:
+            connection = self.__connection
+        if connection is not None:
+            connection.waitForDisconnected()
+        
+        if idString:
+            with contextlib.suppress(KeyError):
+                if self .__clientProcesses[idString] is not None:
+                    self .__clientProcesses[idString].close()
+                del self.__clientProcesses[idString]
+        else:
+            if self.__clientProcess is not None:
+                self.__clientProcess.close()
+                self.__clientProcess = None
+    
+    def stopAllClients(self):
+        """
+        Public method to stop all clients.
+        """
+        clientNames = self.connectionNames()[:]
+        for clientName in clientNames:
+            self.stopClient(clientName)
+    
+    #######################################################################
+    ## The following methods should be overridden by derived classes
+    #######################################################################
+    
+    def handleCall(self, method, params):
+        """
+        Public method to handle a method call from the client.
+        
+        Note: This is an empty implementation that must be overridden in
+        derived classes.
+        
+        @param method requested method name
+        @type str
+        @param params dictionary with method specific parameters
+        @type dict
+        """
+        pass
--- a/eric6/E5XML/TasksReader.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/E5XML/TasksReader.py	Thu Jun 03 11:39:23 2021 +0200
@@ -15,7 +15,7 @@
 from .Config import tasksFileFormatVersion
 from .XMLStreamReaderBase import XMLStreamReaderBase
 
-from Tasks.Task import Task
+from Tasks.Task import TaskType, TaskPriority
 
 import Utilities
 
@@ -80,25 +80,27 @@
         Private method to read the task info.
         """
         task = {"summary": "",
-                "priority": 1,
+                "priority": TaskPriority.NORMAL,
                 "completed": False,
                 "created": 0,
                 "filename": "",
                 "linenumber": 0,
-                "type": Task.TypeTodo,
+                "type": TaskType.TODO,
                 "description": "",
                 "uid": "",
                 }
-        task["priority"] = int(self.attribute("priority", "1"))
+        task["priority"] = TaskPriority(
+            int(self.attribute("priority", str(TaskPriority.NORMAL.value)))
+        )
         task["completed"] = self.toBool(self.attribute("completed", "False"))
         if self.version in ["4.2", "5.0"]:
             isBugfix = self.toBool(self.attribute("bugfix", "False"))
             if isBugfix:
-                task["type"] = Task.TypeFixme
+                task["type"] = TaskType.FIXME
         else:
-            # TODO: task type enum change
-            #  TaskType(int(self.attribute("type", str(Task.TypeTodo.value))))
-            task["type"] = int(self.attribute("type", str(Task.TypeTodo)))
+            task["type"] = TaskType(
+                int(self.attribute("type", str(TaskType.TODO.value)))
+            )
         uid = self.attribute("uid", "")
         if uid:
             task["uid"] = uid
--- a/eric6/E5XML/TasksWriter.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/E5XML/TasksWriter.py	Thu Jun 03 11:39:23 2021 +0200
@@ -74,10 +74,9 @@
         )
         for task in tasks:
             self.writeStartElement("Task")
-            self.writeAttribute("priority", str(task.priority))
+            self.writeAttribute("priority", str(task.priority.value))
             self.writeAttribute("completed", str(task.completed))
-            # TODO: task type enum change; str(task.taskType.value)
-            self.writeAttribute("type", str(task.taskType))
+            self.writeAttribute("type", str(task.taskType.value))
             self.writeAttribute("uid", task.uid)
             if task.parentUid:
                 self.writeAttribute("parent_uid", task.parentUid)
--- a/eric6/Globals/__init__.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Globals/__init__.py	Thu Jun 03 11:39:23 2021 +0200
@@ -246,14 +246,18 @@
     configDir = os.path.expanduser(d)
 
 
-def getPythonModulesDirectory():
+def getPythonLibraryDirectory():
     """
-    Function to determine the path to Python's modules directory.
+    Function to determine the path to Python's library directory.
     
-    @return path to the Python modules directory (string)
+    @return path to the Python library directory
+    @rtype str
     """
     import distutils.sysconfig
     return distutils.sysconfig.get_python_lib(True)
+# backward compatibility for eric < 21.6
+getPythonModulesDirectory = getPythonLibraryDirectory
+# TODO: eric7: delete this
 
 
 def getPyQt5ModulesDirectory():
--- a/eric6/Graphics/ApplicationDiagramBuilder.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Graphics/ApplicationDiagramBuilder.py	Thu Jun 03 11:39:23 2021 +0200
@@ -10,7 +10,7 @@
 import os
 import glob
 
-from PyQt5.QtWidgets import QApplication
+from PyQt5.QtWidgets import QApplication, QInputDialog
 
 from E5Gui import E5MessageBox
 from E5Gui.E5ProgressDialog import E5ProgressDialog
@@ -29,11 +29,15 @@
         """
         Constructor
         
-        @param dialog reference to the UML dialog (UMLDialog)
-        @param view reference to the view object (UMLGraphicsView)
-        @param project reference to the project object (Project)
+        @param dialog reference to the UML dialog
+        @type UMLDialog
+        @param view reference to the view object
+        @type UMLGraphicsView
+        @param project reference to the project object
+        @type Project
         @param noModules flag indicating, that no module names should be
-            shown (boolean)
+            shown
+        @type bool
         """
         super().__init__(dialog, view, project)
         self.setObjectName("ApplicationDiagram")
@@ -49,7 +53,8 @@
         Private method to build a dictionary of modules contained in the
         application.
         
-        @return dictionary of modules contained in the application.
+        @return dictionary of modules contained in the application
+        @rtype dict
         """
         import Utilities.ModuleParser
         extensions = (
@@ -88,27 +93,74 @@
             progress.setValue(tot)
             progress.deleteLater()
         return moduleDict
+    
+    def __findApplicationRoot(self):
+        """
+        Private method to find the application root path.
+        
+        @return application root path
+        @rtype str
+        """
+        candidates = []
+        path = self.project.getProjectPath()
+        init = os.path.join(path, "__init__.py")
+        if os.path.exists(init):
+            # project is a package
+            return path
+        else:
+            # check, if one of the top directories is a package
+            for entry in os.listdir(path):
+                if entry.startswith("."):
+                    # ignore hidden files and directories
+                    continue
+                
+                fullpath = os.path.join(path, entry)
+                if os.path.isdir(fullpath):
+                    init = os.path.join(fullpath, "__init__.py")
+                    if os.path.exists(init):
+                        candidates.append(fullpath)
+            
+            if len(candidates) == 1:
+                return candidates[0]
+            elif len(candidates) > 1:
+                root, ok = QInputDialog.getItem(
+                    None,
+                    self.tr("Application Diagram"),
+                    self.tr("Select the application directory:"),
+                    sorted(candidates),
+                    0, True)
+                if ok:
+                    return root
+            else:
+                E5MessageBox.warning(
+                    None,
+                    self.tr("Application Diagram"),
+                    self.tr("""No application package could be detected."""
+                            """ Aborting..."""))
+        return None
         
     def buildDiagram(self):
         """
         Public method to build the packages shapes of the diagram.
         """
-        project = (
-            os.path.splitdrive(self.project.getProjectPath())[1]
-            .replace(os.sep, '.')[1:]
-        )
+        rpath = self.__findApplicationRoot()
+        if rpath is None:
+            # no root path detected
+            return
+        
+        root = os.path.splitdrive(rpath)[1].replace(os.sep, '.')[1:]
+        
         packages = {}
-        shapes = {}
-        p = 10
-        y = 10
-        maxHeight = 0
-        sceneRect = self.umlView.sceneRect()
+        self.__shapes = {}
         
         modules = self.__buildModulesDict()
         
         # step 1: build a dictionary of packages
         for module in sorted(modules.keys()):
-            packageName, moduleName = module.rsplit(".", 1)
+            if "." in module:
+                packageName, moduleName = module.rsplit(".", 1)
+            else:
+                packageName, moduleName = "", module
             if packageName in packages:
                 packages[packageName][0].append(moduleName)
             else:
@@ -128,14 +180,14 @@
                         if n in modules:
                             impLst.append(n)
                         else:
-                            n = "{0}.{1}".format(project, moduleImport)
+                            n = "{0}.{1}".format(root, moduleImport)
                             if n in modules:
                                 impLst.append(n)
                             elif n in packages:
                                 n = "{0}.<<Dummy>>".format(n)
                                 impLst.append(n)
                     else:
-                        n = "{0}.{1}".format(project, moduleImport)
+                        n = "{0}.{1}".format(root, moduleImport)
                         if n in modules:
                             impLst.append(n)
             for moduleImport in list(modules[module].from_imports.keys()):
@@ -170,27 +222,30 @@
                         if n in modules:
                             impLst.append(n)
                         else:
-                            n = "{0}.{1}".format(project, moduleImport)
+                            n = "{0}.{1}".format(root, moduleImport)
                             if n in modules:
                                 impLst.append(n)
                             elif n in packages:
                                 n = "{0}.<<Dummy>>".format(n)
                                 impLst.append(n)
                     else:
-                        n = "{0}.{1}".format(project, moduleImport)
+                        n = "{0}.{1}".format(root, moduleImport)
                         if n in modules:
                             impLst.append(n)
             for moduleImport in impLst:
                 impPackage = moduleImport.rsplit(".", 1)[0]
-                if (
-                    impPackage not in packages[package][1] and
-                    impPackage != package
-                ):
-                    packages[package][1].append(impPackage)
-                    
+                try:
+                    if (
+                        impPackage not in packages[package][1] and
+                        impPackage != package
+                    ):
+                        packages[package][1].append(impPackage)
+                except KeyError:
+                    continue
+        
         for package in sorted(packages.keys()):
             if package:
-                relPackage = package.replace(project, '')
+                relPackage = package.replace(root, '')
                 if relPackage and relPackage[0] == '.':
                     relPackage = relPackage[1:]
                 else:
@@ -199,41 +254,36 @@
                 relPackage = self.tr("<<Others>>")
             shape = self.__addPackage(
                 relPackage, packages[package][0], 0.0, 0.0)
-            shapeRect = shape.sceneBoundingRect()
-            shapes[package] = (shape, packages[package][1])
-            pn = p + shapeRect.width() + 10
-            maxHeight = max(maxHeight, shapeRect.height())
-            if pn > sceneRect.width():
-                p = 10
-                y += maxHeight + 10
-                maxHeight = shapeRect.height()
-                shape.setPos(p, y)
-                p += shapeRect.width() + 10
-            else:
-                shape.setPos(p, y)
-                p = pn
+            self.__shapes[package] = (shape, packages[package][1])
         
-        rect = self.umlView._getDiagramRect(10)
-        sceneRect = self.umlView.sceneRect()
-        if rect.width() > sceneRect.width():
-            sceneRect.setWidth(rect.width())
-        if rect.height() > sceneRect.height():
-            sceneRect.setHeight(rect.height())
-        self.umlView.setSceneSize(sceneRect.width(), sceneRect.height())
+        # build a list of routes
+        nodes = []
+        routes = []
+        for module in self.__shapes:
+            nodes.append(module)
+            for rel in self.__shapes[module][1]:
+                route = (module, rel)
+                if route not in routes:
+                    routes.append(route)
         
-        self.__createAssociations(shapes)
+        self.__arrangeNodes(nodes, routes[:])
+        self.__createAssociations(routes)
         self.umlView.autoAdjustSceneSize(limit=True)
-        
+    
     def __addPackage(self, name, modules, x, y):
         """
         Private method to add a package to the diagram.
         
-        @param name package name to be shown (string)
+        @param name package name to be shown
+        @type str
         @param modules list of module names contained in the package
-            (list of strings)
-        @param x x-coordinate (float)
-        @param y y-coordinate (float)
-        @return reference to the package item (PackageItem)
+        @type list of str
+        @param x x-coordinate
+        @type float
+        @param y y-coordinate
+        @type float
+        @return reference to the package item
+        @rtype PackageItem
         """
         from .PackageItem import PackageItem, PackageModel
         modules.sort()
@@ -242,27 +292,108 @@
                          colors=self.umlView.getDrawingColors())
         pw.setId(self.umlView.getItemId())
         return pw
+    
+    def __arrangeNodes(self, nodes, routes, whiteSpaceFactor=1.2):
+        """
+        Private method to arrange the shapes on the canvas.
         
-    def __createAssociations(self, shapes):
+        The algorithm is borrowed from Boa Constructor.
+        
+        @param nodes list of nodes to arrange
+        @type list of str
+        @param routes list of routes
+        @type list of tuple of (str, str)
+        @param whiteSpaceFactor factor to increase whitespace between
+            items
+        @type float
         """
-        Private method to generate the associations between the package shapes.
+        from . import GraphicsUtilities
+        generations = GraphicsUtilities.sort(nodes, routes)
+        
+        # calculate width and height of all elements
+        sizes = []
+        for generation in generations:
+            sizes.append([])
+            for child in generation:
+                sizes[-1].append(
+                    self.__shapes[child][0].sceneBoundingRect())
+                
+        # calculate total width and total height
+        width = 0
+        height = 0
+        widths = []
+        heights = []
+        for generation in sizes:
+            currentWidth = 0
+            currentHeight = 0
+            
+            for rect in generation:
+                if rect.height() > currentHeight:
+                    currentHeight = rect.height()
+                currentWidth += rect.width()
+                
+            # update totals
+            if currentWidth > width:
+                width = currentWidth
+            height += currentHeight
+            
+            # store generation info
+            widths.append(currentWidth)
+            heights.append(currentHeight)
         
-        @param shapes list of shapes
+        # add in some whitespace
+        width *= whiteSpaceFactor
+        height = height * whiteSpaceFactor - 20
+        verticalWhiteSpace = 40.0
+        
+        sceneRect = self.umlView.sceneRect()
+        width += 50.0
+        height += 50.0
+        swidth = sceneRect.width() if width < sceneRect.width() else width
+        sheight = sceneRect.height() if height < sceneRect.height() else height
+        self.umlView.setSceneSize(swidth, sheight)
+        
+        # distribute each generation across the width and the
+        # generations across height
+        y = 10.0
+        for currentWidth, currentHeight, generation in (
+            zip(reversed(widths), reversed(heights), reversed(generations))
+        ):
+            x = 10.0
+            # whiteSpace is the space between any two elements
+            whiteSpace = (
+                (width - currentWidth - 20) /
+                (len(generation) - 1.0 or 2.0)
+            )
+            for name in generation:
+                shape = self.__shapes[name][0]
+                shape.setPos(x, y)
+                rect = shape.sceneBoundingRect()
+                x = x + rect.width() + whiteSpace
+            y = y + currentHeight + verticalWhiteSpace
+    
+    def __createAssociations(self, routes):
+        """
+        Private method to generate the associations between the module shapes.
+        
+        @param routes list of associations
+        @type list of tuple of (str, str)
         """
         from .AssociationItem import AssociationItem, AssociationType
-        for package in shapes:
-            for rel in shapes[package][1]:
-                assoc = AssociationItem(
-                    shapes[package][0], shapes[rel][0],
-                    AssociationType.IMPORTS,
-                    colors=self.umlView.getDrawingColors())
-                self.scene.addItem(assoc)
+        for route in routes:
+            assoc = AssociationItem(
+                self.__shapes[route[0]][0],
+                self.__shapes[route[1]][0],
+                AssociationType.IMPORTS,
+                colors=self.umlView.getDrawingColors())
+            self.scene.addItem(assoc)
     
     def getPersistenceData(self):
         """
         Public method to get a string for data to be persisted.
         
-        @return persisted data string (string)
+        @return persisted data string
+        @rtype str
         """
         return "project={0}, no_modules={1}".format(
             self.project.getProjectFile(), self.noModules)
@@ -271,9 +402,12 @@
         """
         Public method to parse persisted data.
         
-        @param version version of the data (string)
-        @param data persisted data to be parsed (string)
-        @return flag indicating success (boolean)
+        @param version version of the data
+        @type str
+        @param data persisted data to be parsed
+        @type str
+        @return flag indicating success
+        @rtype bool
         """
         parts = data.split(", ")
         if (
@@ -300,3 +434,43 @@
         self.initialize()
         
         return True
+    
+    def toDict(self):
+        """
+        Public method to collect data to be persisted.
+        
+        @return dictionary containing data to be persisted
+        @rtype dict
+        """
+        return {
+            "project_name": self.project.getProjectName(),
+            "no_modules": self.noModules,
+        }
+    
+    def fromDict(self, version, data):
+        """
+        Public method to populate the class with data persisted by 'toDict()'.
+        
+        @param version version of the data
+        @type str
+        @param data dictionary containing the persisted data
+        @type dict
+        @return tuple containing a flag indicating success and an info
+            message in case the diagram belongs to a different project
+        @rtype tuple of (bool, str)
+        """
+        try:
+            self.noModules = data["no_modules"]
+            
+            if data["project_name"] != self.project.getProjectName():
+                msg = self.tr(
+                    "<p>The diagram belongs to project <b>{0}</b>."
+                    " Please open it and try again.</p>"
+                ).format(data["project_name"])
+                return False, msg
+        except KeyError:
+            return False, ""
+        
+        self.initialize()
+        
+        return True, ""
--- a/eric6/Graphics/AssociationItem.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Graphics/AssociationItem.py	Thu Jun 03 11:39:23 2021 +0200
@@ -107,8 +107,10 @@
         Private method to map item's rectangle to this item's coordinate
         system.
         
-        @param item reference to the item to be mapped (QGraphicsRectItem)
-        @return item's rectangle in local coordinates (QRectF)
+        @param item reference to the item to be mapped
+        @type QGraphicsRectItem
+        @return item's rectangle in local coordinates
+        @rtype QRectF
         """
         rect = item.rect()
         tl = self.mapFromItem(item, rect.topLeft())
@@ -260,9 +262,12 @@
         Private method to find out, which region of rectangle rect contains
         the point (PosX, PosY) and returns the region number.
         
-        @param rect rectangle to calculate the region for (QRectF)
-        @param posX x position of point (float)
-        @param posY y position of point (float)
+        @param rect rectangle to calculate the region for
+        @type QRectF
+        @param posX x position of point
+        @type float
+        @param posY y position of point
+        @type float
         @return the calculated region number<br />
             West = Region 1<br />
             North = Region 2<br />
@@ -273,6 +278,7 @@
             SouthEast = On diagonal 2 between Region 3 and 4<br />
             SouthWest = On diagonal 1 between Region4 and 1<br />
             Center = On diagonal 1 and On diagonal 2 (the center)<br />
+        @rtype AssociationPointRegion
         """
         w = rect.width()
         h = rect.height()
@@ -330,8 +336,10 @@
         """
         Private method to update an endpoint.
         
-        @param region the region for the endpoint (integer)
-        @param isWidgetA flag indicating update for itemA is done (boolean)
+        @param region the region for the endpoint
+        @type AssociationPointRegion
+        @param isWidgetA flag indicating update for itemA is done
+        @type bool
         """
         if region == AssociationPointRegion.NO_REGION:
             return
@@ -371,13 +379,17 @@
         
     def __findRectIntersectionPoint(self, item, p1, p2):
         """
-        Private method to find the intersetion point of a line with a
+        Private method to find the intersection point of a line with a
         rectangle.
         
         @param item item to check against
-        @param p1 first point of the line (QPointF)
-        @param p2 second point of the line (QPointF)
-        @return the intersection point (QPointF)
+        @type UMLItem
+        @param p1 first point of the line
+        @type QPointF
+        @param p2 second point of the line
+        @type QPointF
+        @return the intersection point
+        @rtype QPointF
         """
         rect = self.__mapRectFromItem(item)
         lines = [
@@ -419,11 +431,16 @@
         In order for the linear function calculations to work in this method
         we must switch x and y values (x values become y values and viceversa)
         
-        @param p1 first point of first line (QPointF)
-        @param p2 second point of first line (QPointF)
-        @param p3 first point of second line (QPointF)
-        @param p4 second point of second line (QPointF)
-        @return the intersection point (QPointF)
+        @param p1 first point of first line
+        @type QPointF
+        @param p2 second point of first line
+        @type QPointF
+        @param p3 first point of second line
+        @type QPointF
+        @param p4 second point of second line
+        @type QPointF
+        @return the intersection point
+        @rtype QPointF
         """
         x1 = p1.y()
         y1 = p1.x()
@@ -545,7 +562,8 @@
         This string should be built like "attribute=value" with pairs separated
         by ", ". value must not contain ", " or newlines.
         
-        @return persistence data (string)
+        @return persistence data
+        @rtype str
         """
         entries = [
             "src={0}".format(self.itemA.getId()),
@@ -560,10 +578,12 @@
         """
         Class method to parse the given persistence data.
         
-        @param data persisted data to be parsed (string)
+        @param data persisted data to be parsed
+        @type str
         @return tuple with the IDs of the source and destination items,
             the association type and a flag indicating to associate from top
-            to bottom (integer, integer, integer, boolean)
+            to bottom
+        @rtype tuple of (int, int, int, bool)
         """
         src = -1
         dst = -1
@@ -582,3 +602,41 @@
                     topToBottom = Utilities.toBool(value)
         
         return src, dst, assocType, topToBottom
+    
+    def toDict(self):
+        """
+        Public method to collect data to be persisted.
+        
+        @return dictionary containing data to be persisted
+        @rtype dict
+        """
+        return {
+            "src": self.itemA.getId(),
+            "dst": self.itemB.getId(),
+            "type": self.assocType.value,
+            "topToBottom": self.topToBottom,
+        }
+    
+    @classmethod
+    def fromDict(cls, data, umlItems, colors=None):
+        """
+        Class method to create an association item from persisted data.
+        
+        @param data dictionary containing the persisted data as generated
+            by toDict()
+        @type dict
+        @param umlItems list of UML items
+        @type list of UMLItem
+        @param colors tuple containing the foreground and background colors
+        @type tuple of (QColor, QColor)
+        @return created association item
+        @rtype AssociationItem
+        """
+        try:
+            return cls(umlItems[data["src"]],
+                       umlItems[data["dst"]],
+                       assocType=AssociationType(data["type"]),
+                       topToBottom=data["topToBottom"],
+                       colors=colors)
+        except (KeyError, ValueError):
+            return None
--- a/eric6/Graphics/ClassItem.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Graphics/ClassItem.py	Thu Jun 03 11:39:23 2021 +0200
@@ -7,6 +7,7 @@
 Module implementing an UML like class item.
 """
 
+from PyQt5.QtCore import QCoreApplication
 from PyQt5.QtGui import QFont
 from PyQt5.QtWidgets import QGraphicsSimpleTextItem, QStyle
 
@@ -19,53 +20,88 @@
     """
     Class implementing the class model.
     """
-    def __init__(self, name, methods=None, attributes=None):
+    def __init__(self, name, methods=None, instanceAttributes=None,
+                 classAttributes=None):
         """
         Constructor
         
-        @param name the class name (string)
+        @param name the class name
+        @type str
         @param methods list of method names of the class
-            (list of strings)
-        @param attributes list of attribute names of the class
-            (list of strings)
+        @type list of str
+        @param instanceAttributes list of instance attribute names of the class
+        @type list of str
+        @param classAttributes list of class attribute names of the class
+        @type list of str
         """
         super().__init__(name)
         
         self.methods = [] if methods is None else methods[:]
-        self.attributes = [] if attributes is None else attributes[:]
+        self.instanceAttributes = (
+            []
+            if instanceAttributes is None else
+            instanceAttributes[:]
+        )
+        self.classAttributes = (
+            []
+            if classAttributes is None else
+            classAttributes[:]
+        )
     
     def addMethod(self, method):
         """
         Public method to add a method to the class model.
         
-        @param method method name to be added (string)
+        @param method method name to be added
+        @type str
         """
         self.methods.append(method)
     
-    def addAttribute(self, attribute):
+    def addInstanceAttribute(self, attribute):
         """
-        Public method to add an attribute to the class model.
+        Public method to add an instance attribute to the class model.
         
-        @param attribute attribute name to be added (string)
+        @param attribute instance attribute name to be added
+        @type str
+        """
+        self.instanceAttributes.append(attribute)
+    
+    def addClassAttribute(self, attribute):
         """
-        self.attributes.append(attribute)
+        Public method to add a class attribute to the class model.
+        
+        @param attribute class attribute name to be added
+        @type str
+        """
+        self.classAttributes.append(attribute)
     
     def getMethods(self):
         """
         Public method to retrieve the methods of the class.
         
-        @return list of class methods (list of strings)
+        @return list of class methods
+        @rtype list of str
         """
         return self.methods[:]
     
-    def getAttributes(self):
+    def getInstanceAttributes(self):
         """
         Public method to retrieve the attributes of the class.
         
-        @return list of class attributes (list of strings)
+        @return list of instance attributes
+        @rtype list of str
+        """
+        return self.instanceAttributes[:]
+    
+    def getClassAttributes(self):
         """
-        return self.attributes[:]
-    
+        Public method to retrieve the global attributes of the class.
+        
+        @return list of class attributes
+        @rtype list of str
+        """
+        return self.classAttributes[:]
+
 
 class ClassItem(UMLItem):
     """
@@ -103,7 +139,8 @@
         self.external = external
         self.noAttrs = noAttrs
         
-        scene.addItem(self)
+        if scene:
+            scene.addItem(self)
         
         if self.model:
             self.__createTexts()
@@ -118,8 +155,10 @@
         
         boldFont = QFont(self.font)
         boldFont.setBold(True)
+        boldFont.setUnderline(True)
         
-        attrs = self.model.getAttributes()
+        classAttributes = self.model.getClassAttributes()
+        attrs = self.model.getInstanceAttributes()
         meths = self.model.getMethods()
         
         x = self.margin + self.rect().x()
@@ -130,13 +169,32 @@
         self.header.setText(self.model.getName())
         self.header.setPos(x, y)
         y += self.header.boundingRect().height() + self.margin
+        
+        if self.external:
+            self.classAttributes = None
+        else:
+            txt = QCoreApplication.translate(
+                "ClassItem", "Class Attributes:\n  ")
+            txt += (
+                "\n  ".join(classAttributes)
+                if globals else
+                "  " + QCoreApplication.translate("ClassItem", "none")
+            )
+            self.classAttributes = QGraphicsSimpleTextItem(self)
+            self.classAttributes.setBrush(self._colors[0])
+            self.classAttributes.setFont(self.font)
+            self.classAttributes.setText(txt)
+            self.classAttributes.setPos(x, y)
+            y += self.classAttributes.boundingRect().height() + self.margin
+        
         if not self.noAttrs and not self.external:
-            # TODO: add class attributes next to the instance attributes
-            #       separate class and instance attributes by dashed line
-            if attrs:
-                txt = "\n".join(attrs)
-            else:
-                txt = " "
+            txt = QCoreApplication.translate(
+                "ClassItem", "Instance Attributes:\n  ")
+            txt += (
+                "\n  ".join(attrs)
+                if attrs else
+                "  " + QCoreApplication.translate("ClassItem", "none")
+            )
             self.attrs = QGraphicsSimpleTextItem(self)
             self.attrs.setBrush(self._colors[0])
             self.attrs.setFont(self.font)
@@ -145,7 +203,16 @@
             y += self.attrs.boundingRect().height() + self.margin
         else:
             self.attrs = None
-        txt = "\n".join(meths) if meths else " "
+        
+        if self.external:
+            txt = " "
+        else:
+            txt = QCoreApplication.translate("ClassItem", "Methods:\n  ")
+            txt += (
+                "\n  ".join(meths)
+                if meths else
+                "  " + QCoreApplication.translate("ClassItem", "none")
+            )
         self.meths = QGraphicsSimpleTextItem(self)
         self.meths.setBrush(self._colors[0])
         self.meths.setFont(self.font)
@@ -161,22 +228,32 @@
         
         width = self.header.boundingRect().width()
         height = self.header.boundingRect().height()
+        if self.classAttributes:
+            width = max(width, self.classAttributes.boundingRect().width())
+            height += (
+                self.classAttributes.boundingRect().height() + self.margin
+            )
         if self.attrs:
             width = max(width, self.attrs.boundingRect().width())
             height = height + self.attrs.boundingRect().height() + self.margin
         if self.meths:
             width = max(width, self.meths.boundingRect().width())
             height += self.meths.boundingRect().height()
+        
         self.setSize(width + 2 * self.margin, height + 2 * self.margin)
         
     def setModel(self, model):
         """
         Public method to set the class model.
         
-        @param model class model containing the class data (ClassModel)
+        @param model class model containing the class data
+        @type ClassModel
         """
         self.scene().removeItem(self.header)
         self.header = None
+        if self.classAttributes:
+            self.scene().removeItem(self.classAttributes)
+            self.classAttributes = None
         if self.attrs:
             self.scene().removeItem(self.attrs)
             self.attrs = None
@@ -191,9 +268,12 @@
         """
         Public method to paint the item in local coordinates.
         
-        @param painter reference to the painter object (QPainter)
-        @param option style options (QStyleOptionGraphicsItem)
-        @param widget optional reference to the widget painted on (QWidget)
+        @param painter reference to the painter object
+        @type QPainter
+        @param option style options
+        @type QStyleOptionGraphicsItem
+        @param widget optional reference to the widget painted on
+        @type QWidget
         """
         pen = self.pen()
         if (
@@ -216,6 +296,10 @@
         painter.drawRect(offsetX, offsetY, w, h)
         y = self.margin + self.header.boundingRect().height()
         painter.drawLine(offsetX, offsetY + y, offsetX + w - 1, offsetY + y)
+        if self.classAttributes:
+            y += self.margin + self.classAttributes.boundingRect().height()
+            painter.drawLine(offsetX, offsetY + y,
+                             offsetX + w - 1, offsetY + y)
         if self.attrs:
             y += self.margin + self.attrs.boundingRect().height()
             painter.drawLine(offsetX, offsetY + y,
@@ -227,7 +311,8 @@
         """
         Public method returning the external state.
         
-        @return external state (boolean)
+        @return external state
+        @rtype bool
         """
         return self.external
     
@@ -239,19 +324,26 @@
         "attribute=value" with pairs separated by ", ". value must not
         contain ", " or newlines.
         
-        @return persistence data (string)
+        @return persistence data
+        @rtype str
         """
         entries = [
             "is_external={0}".format(self.external),
             "no_attributes={0}".format(self.noAttrs),
             "name={0}".format(self.model.getName()),
         ]
-        attributes = self.model.getAttributes()
-        if attributes:
-            entries.append("attributes={0}".format("||".join(attributes)))
+        instanceAttributes = self.model.getInstanceAttributes()
+        if instanceAttributes:
+            entries.append("attributes={0}".format(
+                "||".join(instanceAttributes)))
         methods = self.model.getMethods()
         if methods:
-            entries.append("methods={0}".format("||".join(methods)))
+            entries.append("methods={0}".format(
+                "||".join(methods)))
+        classAttributes = self.model.getClassAttributes()
+        if classAttributes:
+            entries.append("class_attributes={0}".format(
+                "||".join(classAttributes)))
         
         return ", " + ", ".join(entries)
     
@@ -259,17 +351,21 @@
         """
         Public method to parse the given persistence data.
         
-        @param version version of the data (string)
-        @param data persisted data to be parsed (string)
-        @return flag indicating success (boolean)
+        @param version version of the data
+        @type str
+        @param data persisted data to be parsed
+        @type str
+        @return flag indicating success
+        @rtype bool
         """
         parts = data.split(", ")
         if len(parts) < 3:
             return False
         
         name = ""
-        attributes = []
+        instanceAttributes = []
         methods = []
+        classAttributes = []
         
         for part in parts:
             key, value = part.split("=", 1)
@@ -280,14 +376,67 @@
             elif key == "name":
                 name = value.strip()
             elif key == "attributes":
-                attributes = value.strip().split("||")
+                instanceAttributes = value.strip().split("||")
             elif key == "methods":
                 methods = value.strip().split("||")
+            elif key == "class_attributes":
+                classAttributes = value.strip().split("||")
             else:
                 return False
         
-        self.model = ClassModel(name, methods, attributes)
+        self.model = ClassModel(name, methods, instanceAttributes,
+                                classAttributes)
         self.__createTexts()
         self.__calculateSize()
         
         return True
+    
+    def toDict(self):
+        """
+        Public method to collect data to be persisted.
+        
+        @return dictionary containing data to be persisted
+        @rtype dict
+        """
+        return {
+            "id": self.getId(),
+            "x": self.x(),
+            "y": self.y(),
+            "type": self.getItemType(),
+            "is_external": self.external,
+            "no_attributes": self.noAttrs,
+            "model_name": self.model.getName(),
+            "attributes": self.model.getInstanceAttributes(),
+            "methods": self.model.getMethods(),
+            "class_attributes": self.model.getClassAttributes(),
+        }
+    
+    @classmethod
+    def fromDict(cls, data, colors=None):
+        """
+        Class method to create a class item from persisted data.
+        
+        @param data dictionary containing the persisted data as generated
+            by toDict()
+        @type dict
+        @param colors tuple containing the foreground and background colors
+        @type tuple of (QColor, QColor)
+        @return created class item
+        @rtype ClassItem
+        """
+        try:
+            model = ClassModel(data["model_name"],
+                               data["methods"],
+                               data["attributes"],
+                               data["class_attributes"])
+            itm = cls(model=model,
+                      external=data["is_external"],
+                      x=0,
+                      y=0,
+                      noAttrs=data["no_attributes"],
+                      colors=colors)
+            itm.setPos(data["x"], data["y"])
+            itm.setId(data["id"])
+            return itm
+        except KeyError:
+            return None
--- a/eric6/Graphics/GraphicsUtilities.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Graphics/GraphicsUtilities.py	Thu Jun 03 11:39:23 2021 +0200
@@ -25,10 +25,14 @@
     The algorithm was taken from Boa Constructor.
     
     @param nodes list of nodes to be sorted
+    @type str
     @param routes list of routes between the nodes
+    @type list of tuple of (str, str)
     @param noRecursion flag indicating, if recursion errors should be raised
+    @type bool
+    @return list of stages
+    @rtype list of lists of str
     @exception RecursionError a recursion error was detected
-    @return list of stages
     """
     children, parents = _buildChildrenLists(routes)
     
@@ -97,7 +101,9 @@
     Taken from Boa Constructor.
     
     @param routes list of routes between nodes
+    @type list of tuple of (str, str)
     @return dictionary of child and dictionary of parent relationships
+    @rtype tuple of (dict, dict)
     """
     childrenTable = {}
     parentTable = {}
--- a/eric6/Graphics/ImportsDiagramBuilder.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Graphics/ImportsDiagramBuilder.py	Thu Jun 03 11:39:23 2021 +0200
@@ -32,19 +32,30 @@
         """
         Constructor
         
-        @param dialog reference to the UML dialog (UMLDialog)
-        @param view reference to the view object (UMLGraphicsView)
-        @param project reference to the project object (Project)
+        @param dialog reference to the UML dialog
+        @type UMLDialog
+        @param view reference to the view object
+        @type UMLGraphicsView
+        @param project reference to the project object
+        @type Project
         @param package name of a python package to show the import
-            relationships (string)
+            relationships
+        @type str
         @param showExternalImports flag indicating to show exports from
-            outside the package (boolean)
+            outside the package
+        @type bool
         """
         super().__init__(dialog, view, project)
         self.setObjectName("ImportsDiagram")
         
         self.showExternalImports = showExternalImports
         self.packagePath = os.path.abspath(package)
+        
+        self.__relPackagePath = (
+            self.project.getRelativePath(self.packagePath)
+            if self.project.isProjectSource(self.packagePath) else
+            ""
+        )
     
     def initialize(self):
         """
@@ -74,7 +85,8 @@
         Private method to build a dictionary of modules contained in the
         package.
         
-        @return dictionary of modules contained in the package.
+        @return dictionary of modules contained in the package
+        @rtype dict
         """
         import Utilities.ModuleParser
         extensions = (
@@ -121,115 +133,97 @@
         initlist = glob.glob(os.path.join(self.packagePath, '__init__.*'))
         if len(initlist) == 0:
             ct = QGraphicsTextItem(None)
-            ct.setHtml(
-                self.tr(
-                    "The directory <b>'{0}'</b> is not a Python package.")
-                .format(self.package))
+            ct.setHtml(self.buildErrorMessage(
+                self.tr("The directory <b>'{0}'</b> is not a Python"
+                        " package.").format(self.package)
+            ))
             self.scene.addItem(ct)
             return
         
-        shapes = {}
-        p = 10
-        y = 10
-        maxHeight = 0
-        sceneRect = self.umlView.sceneRect()
+        self.__shapes = {}
         
         modules = self.__buildModulesDict()
-        sortedkeys = sorted(modules.keys())
         externalMods = []
         packageList = self.shortPackage.split('.')
         packageListLen = len(packageList)
-        for module in sortedkeys:
+        for module in sorted(modules.keys()):
             impLst = []
-            for i in modules[module].imports:
-                n = (i[len(self.package) + 1:]
-                     if i.startswith(self.package) else i)
-                if i in modules:
+            for importName in modules[module].imports:
+                n = (
+                    importName[len(self.package) + 1:]
+                    if importName.startswith(self.package) else
+                    importName
+                )
+                if importName in modules:
                     impLst.append(n)
                 elif self.showExternalImports:
                     impLst.append(n)
                     if n not in externalMods:
                         externalMods.append(n)
-            for i in list(modules[module].from_imports.keys()):
-                if i.startswith('.'):
-                    dots = len(i) - len(i.lstrip('.'))
+            for importName in list(modules[module].from_imports.keys()):
+                if importName.startswith('.'):
+                    dots = len(importName) - len(importName.lstrip('.'))
                     if dots == 1:
-                        n = i[1:]
-                        i = n
+                        n = importName[1:]
+                        importName = n
                     else:
                         if self.showExternalImports:
                             n = '.'.join(
                                 packageList[:packageListLen - dots + 1] +
-                                [i[dots:]])
+                                [importName[dots:]])
                         else:
-                            n = i
-                elif i.startswith(self.package):
-                    n = i[len(self.package) + 1:]
+                            n = importName
+                elif importName.startswith(self.package):
+                    n = importName[len(self.package) + 1:]
                 else:
-                    n = i
-                if i in modules:
+                    n = importName
+                if importName in modules:
                     impLst.append(n)
                 elif self.showExternalImports:
                     impLst.append(n)
                     if n not in externalMods:
                         externalMods.append(n)
+            
             classNames = []
-            for cls in list(modules[module].classes.keys()):
-                className = modules[module].classes[cls].name
+            for class_ in list(modules[module].classes.keys()):
+                className = modules[module].classes[class_].name
                 if className not in classNames:
                     classNames.append(className)
             shape = self.__addModule(module, classNames, 0.0, 0.0)
-            shapeRect = shape.sceneBoundingRect()
-            shapes[module] = (shape, impLst)
-            pn = p + shapeRect.width() + 10
-            maxHeight = max(maxHeight, shapeRect.height())
-            if pn > sceneRect.width():
-                p = 10
-                y += maxHeight + 10
-                maxHeight = shapeRect.height()
-                shape.setPos(p, y)
-                p += shapeRect.width() + 10
-            else:
-                shape.setPos(p, y)
-                p = pn
+            self.__shapes[module] = (shape, impLst)
         
         for module in externalMods:
             shape = self.__addModule(module, [], 0.0, 0.0)
-            shapeRect = shape.sceneBoundingRect()
-            shapes[module] = (shape, [])
-            pn = p + shapeRect.width() + 10
-            maxHeight = max(maxHeight, shapeRect.height())
-            if pn > sceneRect.width():
-                p = 10
-                y += maxHeight + 10
-                maxHeight = shapeRect.height()
-                shape.setPos(p, y)
-                p += shapeRect.width() + 10
-            else:
-                shape.setPos(p, y)
-                p = pn
+            self.__shapes[module] = (shape, [])
         
-        rect = self.umlView._getDiagramRect(10)
-        sceneRect = self.umlView.sceneRect()
-        if rect.width() > sceneRect.width():
-            sceneRect.setWidth(rect.width())
-        if rect.height() > sceneRect.height():
-            sceneRect.setHeight(rect.height())
-        self.umlView.setSceneSize(sceneRect.width(), sceneRect.height())
+        # build a list of routes
+        nodes = []
+        routes = []
+        for module in self.__shapes:
+            nodes.append(module)
+            for rel in self.__shapes[module][1]:
+                route = (module, rel)
+                if route not in routes:
+                    routes.append(route)
         
-        self.__createAssociations(shapes)
+        self.__arrangeNodes(nodes, routes[:])
+        self.__createAssociations(routes)
         self.umlView.autoAdjustSceneSize(limit=True)
     
     def __addModule(self, name, classes, x, y):
         """
         Private method to add a module to the diagram.
         
-        @param name module name to be shown (string)
+        @param name module name to be shown
+        @type str
         @param classes list of class names contained in the module
-            (list of strings)
-        @param x x-coordinate (float)
-        @param y y-coordinate (float)
-        @return reference to the imports item (ModuleItem)
+        @type list of str
+        @param x x-coordinate
+        @type float
+        @param y y-coordinate
+        @type float
+        @return reference to the imports item
+        @rtype ModuleItem
         """
         from .ModuleItem import ModuleItem, ModuleModel
         classes.sort()
@@ -239,26 +233,107 @@
         impW.setId(self.umlView.getItemId())
         return impW
     
-    def __createAssociations(self, shapes):
+    def __arrangeNodes(self, nodes, routes, whiteSpaceFactor=1.2):
+        """
+        Private method to arrange the shapes on the canvas.
+        
+        The algorithm is borrowed from Boa Constructor.
+        
+        @param nodes list of nodes to arrange
+        @type list of str
+        @param routes list of routes
+        @type list of tuple of (str, str)
+        @param whiteSpaceFactor factor to increase whitespace between
+            items
+        @type float
+        """
+        from . import GraphicsUtilities
+        generations = GraphicsUtilities.sort(nodes, routes)
+        
+        # calculate width and height of all elements
+        sizes = []
+        for generation in generations:
+            sizes.append([])
+            for child in generation:
+                sizes[-1].append(
+                    self.__shapes[child][0].sceneBoundingRect())
+                
+        # calculate total width and total height
+        width = 0
+        height = 0
+        widths = []
+        heights = []
+        for generation in sizes:
+            currentWidth = 0
+            currentHeight = 0
+            
+            for rect in generation:
+                if rect.height() > currentHeight:
+                    currentHeight = rect.height()
+                currentWidth += rect.width()
+                
+            # update totals
+            if currentWidth > width:
+                width = currentWidth
+            height += currentHeight
+            
+            # store generation info
+            widths.append(currentWidth)
+            heights.append(currentHeight)
+        
+        # add in some whitespace
+        width *= whiteSpaceFactor
+        height = height * whiteSpaceFactor - 20
+        verticalWhiteSpace = 40.0
+        
+        sceneRect = self.umlView.sceneRect()
+        width += 50.0
+        height += 50.0
+        swidth = sceneRect.width() if width < sceneRect.width() else width
+        sheight = sceneRect.height() if height < sceneRect.height() else height
+        self.umlView.setSceneSize(swidth, sheight)
+        
+        # distribute each generation across the width and the
+        # generations across height
+        y = 10.0
+        for currentWidth, currentHeight, generation in (
+            zip(reversed(widths), reversed(heights), reversed(generations))
+        ):
+            x = 10.0
+            # whiteSpace is the space between any two elements
+            whiteSpace = (
+                (width - currentWidth - 20) /
+                (len(generation) - 1.0 or 2.0)
+            )
+            for name in generation:
+                shape = self.__shapes[name][0]
+                shape.setPos(x, y)
+                rect = shape.sceneBoundingRect()
+                x = x + rect.width() + whiteSpace
+            y = y + currentHeight + verticalWhiteSpace
+    
+    def __createAssociations(self, routes):
         """
         Private method to generate the associations between the module shapes.
         
-        @param shapes list of shapes
+        @param routes list of associations
+        @type list of tuple of (str, str)
         """
         from .AssociationItem import AssociationItem, AssociationType
-        for module in list(shapes.keys()):
-            for rel in shapes[module][1]:
-                assoc = AssociationItem(
-                    shapes[module][0], shapes[rel][0],
-                    AssociationType.IMPORTS,
-                    colors=self.umlView.getDrawingColors())
-                self.scene.addItem(assoc)
+        for route in routes:
+            assoc = AssociationItem(
+                self.__shapes[route[0]][0],
+                self.__shapes[route[1]][0],
+                AssociationType.IMPORTS,
+                colors=self.umlView.getDrawingColors())
+            self.scene.addItem(assoc)
     
     def getPersistenceData(self):
         """
         Public method to get a string for data to be persisted.
         
-        @return persisted data string (string)
+        @return persisted data string
+        @rtype str
         """
         return "package={0}, show_external={1}".format(
             self.packagePath, self.showExternalImports)
@@ -267,9 +342,12 @@
         """
         Public method to parse persisted data.
         
-        @param version version of the data (string)
-        @param data persisted data to be parsed (string)
-        @return flag indicating success (boolean)
+        @param version version of the data
+        @type str
+        @param data persisted data to be parsed
+        @type str
+        @return flag indicating success
+        @rtype bool
         """
         parts = data.split(", ")
         if (
@@ -286,3 +364,60 @@
         self.initialize()
         
         return True
+    
+    def toDict(self):
+        """
+        Public method to collect data to be persisted.
+        
+        @return dictionary containing data to be persisted
+        @rtype dict
+        """
+        data = {
+            "project_name": self.project.getProjectName(),
+            "show_external": self.showExternalImports,
+        }
+        
+        data["package"] = (
+            Utilities.fromNativeSeparators(self.__relPackagePath)
+            if self.__relPackagePath else
+            Utilities.fromNativeSeparators(self.packagePath)
+        )
+        
+        return data
+    
+    def fromDict(self, version, data):
+        """
+        Public method to populate the class with data persisted by 'toDict()'.
+        
+        @param version version of the data
+        @type str
+        @param data dictionary containing the persisted data
+        @type dict
+        @return tuple containing a flag indicating success and an info
+            message in case the diagram belongs to a different project
+        @rtype tuple of (bool, str)
+        """
+        try:
+            self.showExternalImports = data["show_external"]
+            
+            packagePath = Utilities.toNativeSeparators(data["package"])
+            if os.path.isabs(packagePath):
+                self.packagePath = packagePath
+                self.__relPackagePath = ""
+            else:
+                # relative package paths indicate a project package
+                if data["project_name"] != self.project.getProjectName():
+                    msg = self.tr(
+                        "<p>The diagram belongs to project <b>{0}</b>."
+                        " Please open it and try again.</p>"
+                    ).format(data["project_name"])
+                    return False, msg
+                
+                self.__relPackagePath = packagePath
+                self.package = self.project.getAbsolutePath(packagePath)
+        except KeyError:
+            return False, ""
+        
+        self.initialize()
+        
+        return True, ""
--- a/eric6/Graphics/ModuleItem.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Graphics/ModuleItem.py	Thu Jun 03 11:39:23 2021 +0200
@@ -21,8 +21,10 @@
         """
         Constructor
         
-        @param name the module name (string)
-        @param classlist list of class names (list of strings)
+        @param name the module name
+        @type str
+        @param classlist list of class names
+        @type list of str
         """
         super().__init__(name)
         
@@ -32,7 +34,8 @@
         """
         Public method to add a class to the module model.
         
-        @param classname class name to be added (string)
+        @param classname class name to be added
+        @type str
         """
         self.classlist.append(classname)
     
@@ -40,7 +43,8 @@
         """
         Public method to retrieve the classes of the module.
         
-        @return list of class names (list of strings)
+        @return list of class names
+        @rtype list of str
         """
         return self.classlist[:]
 
@@ -73,7 +77,8 @@
         """
         UMLItem.__init__(self, model, x, y, rounded, colors, parent)
         
-        scene.addItem(self)
+        if scene:
+            scene.addItem(self)
         
         if self.model:
             self.__createTexts()
@@ -124,7 +129,8 @@
         """
         Public method to set the module model.
         
-        @param model module model containing the module data (ModuleModel)
+        @param model module model containing the module data
+        @type ModuleModel
         """
         self.scene().removeItem(self.header)
         self.header = None
@@ -139,9 +145,12 @@
         """
         Public method to paint the item in local coordinates.
         
-        @param painter reference to the painter object (QPainter)
-        @param option style options (QStyleOptionGraphicsItem)
-        @param widget optional reference to the widget painted on (QWidget)
+        @param painter reference to the painter object
+        @type QPainter
+        @param option style options
+        @type QStyleOptionGraphicsItem
+        @param widget optional reference to the widget painted on
+        @type QWidget
         """
         pen = self.pen()
         if (
@@ -175,7 +184,8 @@
         "attribute=value" with pairs separated by ", ". value must not
         contain ", " or newlines.
         
-        @return persistence data (string)
+        @return persistence data
+        @rtype str
         """
         entries = [
             "name={0}".format(self.model.getName()),
@@ -190,9 +200,12 @@
         """
         Public method to parse the given persistence data.
         
-        @param version version of the data (string)
-        @param data persisted data to be parsed (string)
-        @return flag indicating success (boolean)
+        @param version version of the data
+        @type str
+        @param data persisted data to be parsed
+        @type str
+        @return flag indicating success
+        @rtype bool
         """
         parts = data.split(", ")
         if len(parts) < 1:
@@ -215,3 +228,45 @@
         self.__calculateSize()
         
         return True
+    
+    def toDict(self):
+        """
+        Public method to collect data to be persisted.
+        
+        @return dictionary containing data to be persisted
+        @rtype dict
+        """
+        return {
+            "id": self.getId(),
+            "x": self.x(),
+            "y": self.y(),
+            "type": self.getItemType(),
+            "model_name": self.model.getName(),
+            "classes": self.model.getClasses(),
+        }
+    
+    @classmethod
+    def fromDict(cls, data, colors=None):
+        """
+        Class method to create a class item from persisted data.
+        
+        @param data dictionary containing the persisted data as generated
+            by toDict()
+        @type dict
+        @param colors tuple containing the foreground and background colors
+        @type tuple of (QColor, QColor)
+        @return created class item
+        @rtype ClassItem
+        """
+        try:
+            model = ModuleModel(data["model_name"],
+                                data["classes"])
+            itm = cls(model,
+                      x=0,
+                      y=0,
+                      colors=colors)
+            itm.setPos(data["x"], data["y"])
+            itm.setId(data["id"])
+            return itm
+        except KeyError:
+            return None
--- a/eric6/Graphics/PackageDiagramBuilder.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Graphics/PackageDiagramBuilder.py	Thu Jun 03 11:39:23 2021 +0200
@@ -4,7 +4,7 @@
 #
 
 """
-Module implementing a dialog showing a UML like class diagram of a package.
+Module implementing a dialog showing an UML like class diagram of a package.
 """
 
 import glob
@@ -29,18 +29,28 @@
         """
         Constructor
         
-        @param dialog reference to the UML dialog (UMLDialog)
-        @param view reference to the view object (UMLGraphicsView)
-        @param project reference to the project object (Project)
-        @param package name of a python package to be shown (string)
+        @param dialog reference to the UML dialog
+        @type UMLDialog
+        @param view reference to the view object
+        @type UMLGraphicsView
+        @param project reference to the project object
+        @type Project
+        @param package name of a python package to be shown
+        @type str
         @param noAttrs flag indicating, that no attributes should be shown
-            (boolean)
+        @type bool
         """
         super().__init__(dialog, view, project)
         self.setObjectName("PackageDiagram")
         
         self.package = os.path.abspath(package)
         self.noAttrs = noAttrs
+        
+        self.__relPackage = (
+            self.project.getRelativePath(self.package)
+            if self.project.isProjectSource(self.package) else
+            ""
+        )
     
     def initialize(self):
         """
@@ -59,8 +69,10 @@
         """
         Private method to get the named shape.
         
-        @param name name of the shape (string)
-        @return shape (QCanvasItem)
+        @param name name of the shape
+        @type str
+        @return shape
+        @rtype QCanvasItem
         """
         return self.allClasses.get(name)
     
@@ -69,7 +81,8 @@
         Private method to build a dictionary of modules contained in the
         package.
         
-        @return dictionary of modules contained in the package.
+        @return dictionary of modules contained in the package
+        @rtype dict
         """
         import Utilities.ModuleParser
         
@@ -121,6 +134,7 @@
         package.
         
         @return dictionary of sub-packages contained in this package
+        @rtype dict
         """
         import Utilities.ModuleParser
         
@@ -208,13 +222,15 @@
             return
         
         modules = self.__buildModulesDict()
-        if not modules:
+        subpackages = self.__buildSubpackagesDict()
+        
+        if not modules and not subpackages:
             ct = QGraphicsTextItem(None)
             self.scene.addItem(ct)
-            ct.setHtml(
-                self.tr(
-                    "The package <b>'{0}'</b> does not contain any modules.")
-                .format(self.package))
+            ct.setHtml(self.buildErrorMessage(
+                self.tr("The package <b>'{0}'</b> does not contain any modules"
+                        " or subpackages.").format(self.package)
+            ))
             return
             
         # step 1: build all classes found in the modules
@@ -225,13 +241,13 @@
             for cls in list(module.classes.keys()):
                 classesFound = True
                 self.__addLocalClass(cls, module.classes[cls], 0, 0)
-        if not classesFound:
+        if not classesFound and not subpackages:
             ct = QGraphicsTextItem(None)
             self.scene.addItem(ct)
-            ct.setHtml(
-                self.tr(
-                    "The package <b>'{0}'</b> does not contain any classes.")
-                .format(self.package))
+            ct.setHtml(self.buildErrorMessage(
+                self.tr("The package <b>'{0}'</b> does not contain any"
+                        " classes or subpackages.").format(self.package)
+            ))
             return
         
         # step 2: build the class hierarchies
@@ -243,7 +259,7 @@
             todo = [module.createHierarchy()]
             while todo:
                 hierarchy = todo[0]
-                for className in list(hierarchy.keys()):
+                for className in hierarchy:
                     cw = self.__getCurrentShape(className)
                     if not cw and className.find('.') >= 0:
                         cw = self.__getCurrentShape(className.split('.')[-1])
@@ -282,7 +298,6 @@
                 del todo[0]
         
         # step 3: build the subpackages
-        subpackages = self.__buildSubpackagesDict()
         for subpackage in sorted(subpackages.keys()):
             self.__addPackage(subpackage, subpackages[subpackage], 0, 0)
             nodes.append(subpackage)
@@ -298,9 +313,12 @@
         The algorithm is borrowed from Boa Constructor.
         
         @param nodes list of nodes to arrange
+        @type list of str
         @param routes list of routes
+        @type list of tuple of (str, str)
         @param whiteSpaceFactor factor to increase whitespace between
-            items (float)
+            items
+        @type float
         """
         from . import GraphicsUtilities
         generations = GraphicsUtilities.sort(nodes, routes)
@@ -335,7 +353,7 @@
             # store generation info
             widths.append(currentWidth)
             heights.append(currentHeight)
-            
+        
         # add in some whitespace
         width *= whiteSpaceFactor
         height = height * whiteSpaceFactor - 20
@@ -344,8 +362,8 @@
         sceneRect = self.umlView.sceneRect()
         width += 50.0
         height += 50.0
-        swidth = width < sceneRect.width() and sceneRect.width() or width
-        sheight = height < sceneRect.height() and sceneRect.height() or height
+        swidth = sceneRect.width() if width < sceneRect.width() else width
+        sheight = sceneRect.height() if height < sceneRect.height() else height
         self.umlView.setSceneSize(swidth, sheight)
         
         # distribute each generation across the width and the
@@ -371,19 +389,27 @@
         """
         Private method to add a class defined in the module.
         
-        @param className name of the class to be as a dictionary key (string)
-        @param _class class to be shown (ModuleParser.Class)
-        @param x x-coordinate (float)
-        @param y y-coordinate (float)
-        @param isRbModule flag indicating a Ruby module (boolean)
+        @param className name of the class to be as a dictionary key
+        @type str
+        @param _class class to be shown
+        @type ModuleParser.Class
+        @param x x-coordinate
+        @type float
+        @param y y-coordinate
+        @type float
+        @param isRbModule flag indicating a Ruby module
+        @type bool
         """
         from .ClassItem import ClassItem, ClassModel
-        meths = sorted(_class.methods.keys())
-        attrs = sorted(_class.attributes.keys())
         name = _class.name
         if isRbModule:
             name = "{0} (Module)".format(name)
-        cl = ClassModel(name, meths[:], attrs[:])
+        cl = ClassModel(
+            name,
+            sorted(_class.methods.keys())[:],
+            sorted(_class.attributes.keys())[:],
+            sorted(_class.globals.keys())[:]
+        )
         cw = ClassItem(cl, False, x, y, noAttrs=self.noAttrs, scene=self.scene,
                        colors=self.umlView.getDrawingColors())
         cw.setId(self.umlView.getItemId())
@@ -396,9 +422,12 @@
         If the canvas is too small to take the shape, it
         is enlarged.
         
-        @param _class class to be shown (string)
-        @param x x-coordinate (float)
-        @param y y-coordinate (float)
+        @param _class class to be shown
+        @type ModuleParser.Class
+        @param x x-coordinate
+        @type float
+        @param y y-coordinate
+        @type float
         """
         from .ClassItem import ClassItem, ClassModel
         cl = ClassModel(_class)
@@ -411,11 +440,14 @@
         """
         Private method to add a package to the diagram.
         
-        @param name package name to be shown (string)
+        @param name package name to be shown
+        @type str
         @param modules list of module names contained in the package
-            (list of strings)
-        @param x x-coordinate (float)
-        @param y y-coordinate (float)
+        @type list of str
+        @param x x-coordinate
+        @type float
+        @param y y-coordinate
+        @type float
         """
         from .PackageItem import PackageItem, PackageModel
         pm = PackageModel(name, modules)
@@ -429,6 +461,7 @@
         Private method to generate the associations between the class shapes.
         
         @param routes list of relationsships
+        @type list of tuple of (str, str)
         """
         from .AssociationItem import AssociationItem, AssociationType
         for route in routes:
@@ -445,7 +478,8 @@
         """
         Public method to get a string for data to be persisted.
         
-        @return persisted data string (string)
+        @return persisted data string
+        @rtype str
         """
         return "package={0}, no_attributes={1}".format(
             self.package, self.noAttrs)
@@ -454,9 +488,12 @@
         """
         Public method to parse persisted data.
         
-        @param version version of the data (string)
-        @param data persisted data to be parsed (string)
-        @return flag indicating success (boolean)
+        @param version version of the data
+        @type str
+        @param data persisted data to be parsed
+        @type str
+        @return flag indicating success
+        @rtype bool
         """
         parts = data.split(", ")
         if (
@@ -472,3 +509,60 @@
         self.initialize()
         
         return True
+    
+    def toDict(self):
+        """
+        Public method to collect data to be persisted.
+        
+        @return dictionary containing data to be persisted
+        @rtype dict
+        """
+        data = {
+            "project_name": self.project.getProjectName(),
+            "no_attributes": self.noAttrs,
+        }
+        
+        data["package"] = (
+            Utilities.fromNativeSeparators(self.__relPackage)
+            if self.__relPackage else
+            Utilities.fromNativeSeparators(self.package)
+        )
+        
+        return data
+    
+    def fromDict(self, version, data):
+        """
+        Public method to populate the class with data persisted by 'toDict()'.
+        
+        @param version version of the data
+        @type str
+        @param data dictionary containing the persisted data
+        @type dict
+        @return tuple containing a flag indicating success and an info
+            message in case the diagram belongs to a different project
+        @rtype tuple of (bool, str)
+        """
+        try:
+            self.noAttrs = data["no_attributes"]
+            
+            package = Utilities.toNativeSeparators(data["package"])
+            if os.path.isabs(package):
+                self.package = package
+                self.__relPackage = ""
+            else:
+                # relative package paths indicate a project package
+                if data["project_name"] != self.project.getProjectName():
+                    msg = self.tr(
+                        "<p>The diagram belongs to project <b>{0}</b>."
+                        " Please open it and try again.</p>"
+                    ).format(data["project_name"])
+                    return False, msg
+                
+                self.__relPackage = package
+                self.package = self.project.getAbsolutePath(package)
+        except KeyError:
+            return False, ""
+        
+        self.initialize()
+        
+        return True, ""
--- a/eric6/Graphics/PackageItem.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Graphics/PackageItem.py	Thu Jun 03 11:39:23 2021 +0200
@@ -23,8 +23,10 @@
         """
         Constructor
         
-        @param name package name (string)
-        @param moduleslist list of module names (list of strings)
+        @param name package name
+        @type str
+        @param moduleslist list of module names
+        @type list of str
         """
         super().__init__(name)
         
@@ -34,7 +36,8 @@
         """
         Public method to add a module to the package model.
         
-        @param modulename module name to be added (string)
+        @param modulename module name to be added
+        @type str
         """
         self.moduleslist.append(modulename)
     
@@ -42,7 +45,8 @@
         """
         Public method to retrieve the modules of the package.
         
-        @return list of module names (list of strings)
+        @return list of module names
+        @rtype list of str
         """
         return self.moduleslist[:]
 
@@ -79,7 +83,8 @@
         UMLItem.__init__(self, model, x, y, rounded, colors, parent)
         self.noModules = noModules
         
-        scene.addItem(self)
+        if scene:
+            scene.addItem(self)
         
         if self.model:
             self.__createTexts()
@@ -147,7 +152,8 @@
         """
         Public method to set the package model.
         
-        @param model package model containing the package data (PackageModel)
+        @param model package model containing the package data
+        @type PackageModel
         """
         self.scene().removeItem(self.header)
         self.header = None
@@ -162,9 +168,12 @@
         """
         Public method to paint the item in local coordinates.
         
-        @param painter reference to the painter object (QPainter)
-        @param option style options (QStyleOptionGraphicsItem)
-        @param widget optional reference to the widget painted on (QWidget)
+        @param painter reference to the painter object
+        @type QPainter
+        @param option style options
+        @type QStyleOptionGraphicsItem
+        @param widget optional reference to the widget painted on
+        @type QWidget
         """
         pen = self.pen()
         if (
@@ -201,7 +210,8 @@
         "attribute=value" with pairs separated by ", ". value must not
         contain ", " or newlines.
         
-        @return persistence data (string)
+        @return persistence data
+        @rtype str
         """
         entries = [
             "no_modules={0}".format(self.noModules),
@@ -217,9 +227,12 @@
         """
         Public method to parse the given persistence data.
         
-        @param version version of the data (string)
-        @param data persisted data to be parsed (string)
-        @return flag indicating success (boolean)
+        @param version version of the data
+        @type str
+        @param data persisted data to be parsed
+        @type str
+        @return flag indicating success
+        @rtype bool
         """
         parts = data.split(", ")
         if len(parts) < 2:
@@ -244,3 +257,47 @@
         self.__calculateSize()
         
         return True
+    
+    def toDict(self):
+        """
+        Public method to collect data to be persisted.
+        
+        @return dictionary containing data to be persisted
+        @rtype dict
+        """
+        return {
+            "id": self.getId(),
+            "x": self.x(),
+            "y": self.y(),
+            "type": self.getItemType(),
+            "model_name": self.model.getName(),
+            "no_nodules": self.noModules,
+            "modules": self.model.getModules(),
+        }
+    
+    @classmethod
+    def fromDict(cls, data, colors=None):
+        """
+        Class method to create a class item from persisted data.
+        
+        @param data dictionary containing the persisted data as generated
+            by toDict()
+        @type dict
+        @param colors tuple containing the foreground and background colors
+        @type tuple of (QColor, QColor)
+        @return created class item
+        @rtype ClassItem
+        """
+        try:
+            model = PackageModel(data["model_name"],
+                                 data["modules"])
+            itm = cls(model,
+                      x=0,
+                      y=0,
+                      noModules=data["no_nodules"],
+                      colors=colors)
+            itm.setPos(data["x"], data["y"])
+            itm.setId(data["id"])
+            return itm
+        except KeyError:
+            return None
--- a/eric6/Graphics/PixmapDiagram.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Graphics/PixmapDiagram.py	Thu Jun 03 11:39:23 2021 +0200
@@ -40,9 +40,12 @@
         """
         Constructor
         
-        @param pixmap filename of a graphics file to show (string)
-        @param parent parent widget of the view (QWidget)
-        @param name name of the view widget (string)
+        @param pixmap filename of a graphics file to show
+        @type str
+        @param parent parent widget of the view
+        @type QWidget
+        @param name name of the view widget
+        @type str
         """
         super().__init__(parent)
         if name:
@@ -122,7 +125,8 @@
         """
         Private slot to show the context menu of the listview.
         
-        @param coord the position of the mouse pointer (QPoint)
+        @param coord the position of the mouse pointer
+        @type QPoint
         """
         self.__menu.popup(self.mapToGlobal(coord))
         
@@ -146,8 +150,10 @@
         """
         Private method to show a file.
         
-        @param filename name of the file to be shown (string)
-        @return flag indicating success (boolean)
+        @param filename name of the file to be shown
+        @type str
+        @return flag indicating success
+        @rtype bool
         """
         image = QImage(filename)
         if image.isNull():
@@ -168,6 +174,7 @@
         Public method to retrieve a name for the diagram.
         
         @return name for the diagram
+        @rtype str
         """
         return self.pixmapfile
         
@@ -175,7 +182,8 @@
         """
         Public method to retrieve the status of the canvas.
         
-        @return flag indicating a successful pixmap loading (boolean)
+        @return flag indicating a successful pixmap loading
+        @rtype bool
         """
         return self.status
     
@@ -183,7 +191,8 @@
         """
         Protected method to handle wheel events.
         
-        @param evt reference to the wheel event (QWheelEvent)
+        @param evt reference to the wheel event
+        @type QWheelEvent
         """
         if evt.modifiers() & Qt.KeyboardModifier.ControlModifier:
             delta = evt.angleDelta().y()
@@ -200,8 +209,10 @@
         """
         Public method handling events.
         
-        @param evt reference to the event (QEvent)
-        @return flag indicating, if the event was handled (boolean)
+        @param evt reference to the event
+        @type QEvent
+        @return flag indicating, if the event was handled
+        @rtype bool
         """
         if evt.type() == QEvent.Type.Gesture:
             self.gestureEvent(evt)
@@ -213,7 +224,8 @@
         """
         Protected method handling gesture events.
         
-        @param evt reference to the gesture event (QGestureEvent
+        @param evt reference to the gesture event
+        @type QGestureEvent
         """
         pinch = evt.gesture(Qt.GestureType.PinchGesture)
         if pinch:
@@ -231,8 +243,10 @@
         """
         Private method to adjust a scrollbar by a certain factor.
         
-        @param scrollBar reference to the scrollbar object (QScrollBar)
-        @param factor factor to adjust by (float)
+        @param scrollBar reference to the scrollbar object
+        @type QScrollBar
+        @param factor factor to adjust by
+        @type float
         """
         scrollBar.setValue(int(factor * scrollBar.value() +
                            ((factor - 1) * scrollBar.pageStep() / 2)))
@@ -241,8 +255,10 @@
         """
         Private method determining the zoom level index given a zoom factor.
         
-        @param zoom zoom factor (integer)
-        @return index of zoom factor (integer)
+        @param zoom zoom factor
+        @type int
+        @return index of zoom factor
+        @rtype int
         """
         try:
             index = PixmapDiagram.ZoomLevels.index(zoom)
@@ -256,7 +272,8 @@
         """
         Private method to set the zoom value in percent.
         
-        @param value zoom value in percent (integer)
+        @param value zoom value in percent
+        @type int
         """
         oldValue = self.__zoom()
         if value != oldValue:
@@ -297,7 +314,8 @@
         """
         Private method to get the current zoom factor in percent.
         
-        @return current zoom factor in percent (integer)
+        @return current zoom factor in percent
+        @rtype int
         """
         return int(self.pixmapLabel.width() /
                    self.pixmapLabel.pixmap().width() * 100.0)
@@ -355,7 +373,8 @@
         """
         Private slot to the actual printing.
         
-        @param printer reference to the printer object (QPrinter)
+        @param printer reference to the printer object
+        @type QPrinter
         """
         painter = QPainter()
         painter.begin(printer)
@@ -365,12 +384,18 @@
         painter.setFont(font)
         fm = painter.fontMetrics()
         fontHeight = fm.lineSpacing()
-        marginX = printer.pageRect().x() - printer.paperRect().x()
+        marginX = (
+            printer.pageLayout().paintRectPixels(printer.resolution()).x() -
+            printer.pageLayout().fullRectPixels(printer.resolution()).x()
+        )
         marginX = (
             Preferences.getPrinter("LeftMargin") *
             int(printer.resolution() / 2.54) - marginX
         )
-        marginY = printer.pageRect().y() - printer.paperRect().y()
+        marginY = (
+            printer.pageLayout().paintRectPixels(printer.resolution()).y() -
+            printer.pageLayout().fullRectPixels(printer.resolution()).y()
+        )
         marginY = (
             Preferences.getPrinter("TopMargin") *
             int(printer.resolution() / 2.54) - marginY
--- a/eric6/Graphics/SvgDiagram.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Graphics/SvgDiagram.py	Thu Jun 03 11:39:23 2021 +0200
@@ -38,9 +38,12 @@
         """
         Constructor
         
-        @param svgFile filename of a SVG graphics file to show (string)
-        @param parent parent widget of the view (QWidget)
-        @param name name of the view widget (string)
+        @param svgFile filename of a SVG graphics file to show
+        @type str
+        @param parent parent widget of the view
+        @type QWidget
+        @param name name of the view widget
+        @type str
         """
         super().__init__(parent)
         if name:
@@ -121,7 +124,8 @@
         """
         Private slot to show the context menu of the listview.
         
-        @param coord the position of the mouse pointer (QPoint)
+        @param coord the position of the mouse pointer
+        @type QPoint
         """
         self.__menu.popup(self.mapToGlobal(coord))
         
@@ -146,6 +150,7 @@
         Public method to retrieve a name for the diagram.
         
         @return name for the diagram
+        @rtype str
         """
         return self.svgFile
     
@@ -153,7 +158,8 @@
         """
         Protected method to handle wheel events.
         
-        @param evt reference to the wheel event (QWheelEvent)
+        @param evt reference to the wheel event
+        @type QWheelEvent
         """
         if evt.modifiers() & Qt.KeyboardModifier.ControlModifier:
             delta = evt.angleDelta().y()
@@ -170,8 +176,10 @@
         """
         Public method handling events.
         
-        @param evt reference to the event (QEvent)
-        @return flag indicating, if the event was handled (boolean)
+        @param evt reference to the event
+        @type QEvent
+        @return flag indicating, if the event was handled
+        @rtype bool
         """
         if evt.type() == QEvent.Type.Gesture:
             self.gestureEvent(evt)
@@ -183,7 +191,8 @@
         """
         Protected method handling gesture events.
         
-        @param evt reference to the gesture event (QGestureEvent
+        @param evt reference to the gesture event
+        @type QGestureEvent
         """
         pinch = evt.gesture(Qt.GestureType.PinchGesture)
         if pinch:
@@ -201,8 +210,10 @@
         """
         Private method to adjust a scrollbar by a certain factor.
         
-        @param scrollBar reference to the scrollbar object (QScrollBar)
-        @param factor factor to adjust by (float)
+        @param scrollBar reference to the scrollbar object
+        @type QScrollBar
+        @param factor factor to adjust by
+        @type float
         """
         scrollBar.setValue(
             int(factor * scrollBar.value() +
@@ -212,8 +223,10 @@
         """
         Private method determining the zoom level index given a zoom factor.
         
-        @param zoom zoom factor (integer)
-        @return index of zoom factor (integer)
+        @param zoom zoom factor
+        @type int
+        @return index of zoom factor
+        @rtype int
         """
         try:
             index = SvgDiagram.ZoomLevels.index(zoom)
@@ -227,7 +240,8 @@
         """
         Private method to set the zoom value in percent.
         
-        @param value zoom value in percent (integer)
+        @param value zoom value in percent
+        @type int
         """
         oldValue = self.__zoom()
         if value != oldValue:
@@ -265,7 +279,8 @@
         """
         Private method to get the current zoom factor in percent.
         
-        @return current zoom factor in percent (integer)
+        @return current zoom factor in percent
+        @rtype int
         """
         return int(self.svgWidget.width() /
                    self.svgWidget.sizeHint().width() * 100.0)
@@ -327,7 +342,8 @@
         """
         Private slot to the actual printing.
         
-        @param printer reference to the printer object (QPrinter)
+        @param printer reference to the printer object
+        @type QPrinter
         """
         painter = QPainter()
         painter.begin(printer)
@@ -337,12 +353,18 @@
         painter.setFont(font)
         fm = painter.fontMetrics()
         fontHeight = fm.lineSpacing()
-        marginX = printer.pageRect().x() - printer.paperRect().x()
+        marginX = (
+            printer.pageLayout().paintRectPixels(printer.resolution()).x() -
+            printer.pageLayout().fullRectPixels(printer.resolution()).x()
+        )
         marginX = (
             Preferences.getPrinter("LeftMargin") *
             int(printer.resolution() / 2.54) - marginX
         )
-        marginY = printer.pageRect().y() - printer.paperRect().y()
+        marginY = (
+            printer.pageLayout().paintRectPixels(printer.resolution()).y() -
+            printer.pageLayout().fullRectPixels(printer.resolution()).y()
+        )
         marginY = (
             Preferences.getPrinter("TopMargin") *
             int(printer.resolution() / 2.54) - marginY
--- a/eric6/Graphics/UMLClassDiagramBuilder.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Graphics/UMLClassDiagramBuilder.py	Thu Jun 03 11:39:23 2021 +0200
@@ -8,6 +8,7 @@
 """
 
 from itertools import zip_longest
+import os
 
 from PyQt5.QtWidgets import QGraphicsTextItem
 
@@ -25,18 +26,28 @@
         """
         Constructor
         
-        @param dialog reference to the UML dialog (UMLDialog)
-        @param view reference to the view object (UMLGraphicsView)
-        @param project reference to the project object (Project)
-        @param file file name of a python module to be shown (string)
+        @param dialog reference to the UML dialog
+        @type UMLDialog
+        @param view reference to the view object
+        @type UMLGraphicsView
+        @param project reference to the project object
+        @type Project
+        @param file file name of a python module to be shown
+        @type str
         @param noAttrs flag indicating, that no attributes should be shown
-            (boolean)
+        @type bool
         """
         super().__init__(dialog, view, project)
         self.setObjectName("UMLClassDiagramBuilder")
         
         self.file = file
         self.noAttrs = noAttrs
+        
+        self.__relFile = (
+            self.project.getRelativePath(self.file)
+            if self.project.isProjectSource(self.file) else
+            ""
+        )
     
     def initialize(self):
         """
@@ -55,8 +66,10 @@
         """
         Private method to get the named shape.
         
-        @param name name of the shape (string)
-        @return shape (QGraphicsItem)
+        @param name name of the shape
+        @type str
+        @return shape
+        @rtype QGraphicsItem
         """
         return self.allClasses.get(name)
         
@@ -80,9 +93,10 @@
                 self.file, extensions=extensions, caching=False)
         except ImportError:
             ct = QGraphicsTextItem(None)
-            ct.setHtml(
+            ct.setHtml(self.buildErrorMessage(
                 self.tr("The module <b>'{0}'</b> could not be found.")
-                    .format(self.file))
+                    .format(self.file)
+            ))
             self.scene.addItem(ct)
             return
         
@@ -142,9 +156,10 @@
             self.umlView.autoAdjustSceneSize(limit=True)
         else:
             ct = QGraphicsTextItem(None)
-            ct.setHtml(self.tr(
-                "The module <b>'{0}'</b> does not contain any classes.")
-                .format(self.file))
+            ct.setHtml(self.buildErrorMessage(
+                self.tr("The module <b>'{0}'</b> does not contain any"
+                        " classes.").format(self.file)
+            ))
             self.scene.addItem(ct)
         
     def __arrangeClasses(self, nodes, routes, whiteSpaceFactor=1.2):
@@ -154,9 +169,12 @@
         The algorithm is borrowed from Boa Constructor.
         
         @param nodes list of nodes to arrange
+        @type list of str
         @param routes list of routes
+        @type list of tuple of (str, str)
         @param whiteSpaceFactor factor to increase whitespace between
-            items (float)
+            items
+        @type float
         """
         from . import GraphicsUtilities
         generations = GraphicsUtilities.sort(nodes, routes)
@@ -227,19 +245,27 @@
         """
         Private method to add a class defined in the module.
         
-        @param className name of the class to be as a dictionary key (string)
-        @param _class class to be shown (ModuleParser.Class)
-        @param x x-coordinate (float)
-        @param y y-coordinate (float)
-        @param isRbModule flag indicating a Ruby module (boolean)
+        @param className name of the class to be as a dictionary key
+        @type str
+        @param _class class to be shown
+        @type ModuleParser.Class
+        @param x x-coordinate
+        @type float
+        @param y y-coordinate
+        @type float
+        @param isRbModule flag indicating a Ruby module
+        @type bool
         """
         from .ClassItem import ClassItem, ClassModel
-        meths = sorted(_class.methods.keys())
-        attrs = sorted(_class.attributes.keys())
         name = _class.name
         if isRbModule:
             name = "{0} (Module)".format(name)
-        cl = ClassModel(name, meths[:], attrs[:])
+        cl = ClassModel(
+            name,
+            sorted(_class.methods.keys())[:],
+            sorted(_class.attributes.keys())[:],
+            sorted(_class.globals.keys())[:]
+        )
         cw = ClassItem(cl, False, x, y, noAttrs=self.noAttrs, scene=self.scene,
                        colors=self.umlView.getDrawingColors())
         cw.setId(self.umlView.getItemId())
@@ -254,9 +280,12 @@
         If the canvas is too small to take the shape, it
         is enlarged.
         
-        @param _class class to be shown (string)
-        @param x x-coordinate (float)
-        @param y y-coordinate (float)
+        @param _class class to be shown
+        @type ModuleParser.Class
+        @param x x-coordinate
+        @type float
+        @param y y-coordinate
+        @type float
         """
         from .ClassItem import ClassItem, ClassModel
         cl = ClassModel(_class)
@@ -272,6 +301,7 @@
         Private method to generate the associations between the class shapes.
         
         @param routes list of relationsships
+        @type list of tuple of (str, str)
         """
         from .AssociationItem import AssociationItem, AssociationType
         for route in routes:
@@ -288,7 +318,8 @@
         """
         Public method to get a string for data to be persisted.
         
-        @return persisted data string (string)
+        @return persisted data string
+        @rtype str
         """
         return "file={0}, no_attributes={1}".format(self.file, self.noAttrs)
     
@@ -296,9 +327,12 @@
         """
         Public method to parse persisted data.
         
-        @param version version of the data (string)
-        @param data persisted data to be parsed (string)
-        @return flag indicating success (boolean)
+        @param version version of the data
+        @type str
+        @param data persisted data to be parsed
+        @type str
+        @return flag indicating success
+        @rtype bool
         """
         parts = data.split(", ")
         if (
@@ -314,3 +348,60 @@
         self.initialize()
         
         return True
+    
+    def toDict(self):
+        """
+        Public method to collect data to be persisted.
+        
+        @return dictionary containing data to be persisted
+        @rtype dict
+        """
+        data = {
+            "project_name": self.project.getProjectName(),
+            "no_attributes": self.noAttrs,
+        }
+        
+        data["file"] = (
+            Utilities.fromNativeSeparators(self.__relFile)
+            if self.__relFile else
+            Utilities.fromNativeSeparators(self.file)
+        )
+        
+        return data
+    
+    def fromDict(self, version, data):
+        """
+        Public method to populate the class with data persisted by 'toDict()'.
+        
+        @param version version of the data
+        @type str
+        @param data dictionary containing the persisted data
+        @type dict
+        @return tuple containing a flag indicating success and an info
+            message in case the diagram belongs to a different project
+        @rtype tuple of (bool, str)
+        """
+        try:
+            self.noAttrs = data["no_attributes"]
+            
+            file = Utilities.toNativeSeparators(data["file"])
+            if os.path.isabs(file):
+                self.file = file
+                self.__relFile = ""
+            else:
+                # relative file paths indicate a project file
+                if data["project_name"] != self.project.getProjectName():
+                    msg = self.tr(
+                        "<p>The diagram belongs to project <b>{0}</b>."
+                        " Please open it and try again.</p>"
+                    ).format(data["project_name"])
+                    return False, msg
+                
+                self.__relFile = file
+                self.file = self.project.getAbsolutePath(file)
+        except KeyError:
+            return False, ""
+        
+        self.initialize()
+        
+        return True, ""
--- a/eric6/Graphics/UMLDiagramBuilder.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Graphics/UMLDiagramBuilder.py	Thu Jun 03 11:39:23 2021 +0200
@@ -18,9 +18,12 @@
         """
         Constructor
         
-        @param dialog reference to the UML dialog (UMLDialog)
-        @param view reference to the view object (UMLGraphicsView)
-        @param project reference to the project object (Project)
+        @param dialog reference to the UML dialog
+        @type UMLDialog
+        @param view reference to the view object
+        @type UMLGraphicsView
+        @param project reference to the project object
+        @type Project
         """
         super().__init__(dialog)
         
@@ -34,6 +37,22 @@
         """
         return
     
+    def buildErrorMessage(self, msg):
+        """
+        Public method to build an error string to be included in the scene.
+        
+        @param msg error message
+        @type str
+        @return prepared error string
+        @rtype str
+        """
+        return (
+            "<font color='{0}'>".format(
+                self.umlView.getDrawingColors()[0].name()) +
+            msg +
+            "</font>"
+        )
+    
     def buildDiagram(self):
         """
         Public method to build the diagram.
@@ -50,7 +69,8 @@
         """
         Public method to get a string for data to be persisted.
         
-        @return persisted data string (string)
+        @return persisted data string
+        @rtype str
         """
         return ""
     
@@ -58,8 +78,34 @@
         """
         Public method to parse persisted data.
         
-        @param version version of the data (string)
-        @param data persisted data to be parsed (string)
-        @return flag indicating success (boolean)
+        @param version version of the data
+        @type str
+        @param data persisted data to be parsed
+        @type str
+        @return flag indicating success
+        @rtype bool
         """
         return True
+    
+    def toDict(self):
+        """
+        Public method to collect data to be persisted.
+        
+        @return dictionary containing data to be persisted
+        @rtype dict
+        """
+        return {}
+    
+    def fromDict(self, version, data):
+        """
+        Public method to populate the class with data persisted by 'toDict()'.
+        
+        @param version version of the data
+        @type str
+        @param data dictionary containing the persisted data
+        @type dict
+        @return tuple containing a flag indicating success and an info
+            message in case the diagram belongs to a different project
+        @rtype tuple of (bool, str)
+        """
+        return True, ""
--- a/eric6/Graphics/UMLDialog.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Graphics/UMLDialog.py	Thu Jun 03 11:39:23 2021 +0200
@@ -7,7 +7,10 @@
 Module implementing a dialog showing UML like diagrams.
 """
 
-from PyQt5.QtCore import pyqtSlot, Qt, QFileInfo
+import enum
+import json
+
+from PyQt5.QtCore import pyqtSlot, Qt, QFileInfo, QCoreApplication
 from PyQt5.QtWidgets import QAction, QToolBar, QGraphicsScene
 
 from E5Gui import E5MessageBox, E5FileDialog
@@ -17,44 +20,59 @@
 import UI.PixmapCache
 
 
+class UMLDialogType(enum.Enum):
+    """
+    Class defining the UML dialog types.
+    """
+    CLASS_DIAGRAM = 0
+    PACKAGE_DIAGRAM = 1
+    IMPORTS_DIAGRAM = 2
+    APPLICATION_DIAGRAM = 3
+    NO_DIAGRAM = 255
+
+
 class UMLDialog(E5MainWindow):
     """
     Class implementing a dialog showing UML like diagrams.
     """
-    # convert to Enum
-    NoDiagram = 255
-    ClassDiagram = 0
-    PackageDiagram = 1
-    ImportsDiagram = 2
-    ApplicationDiagram = 3
+    FileVersions = ("1.0", )
+    JsonFileVersions = ("1.0", )
     
-    FileVersions = ["1.0"]
+    UMLDialogType2String = {
+        UMLDialogType.CLASS_DIAGRAM:
+            QCoreApplication.translate("UMLDialog", "Class Diagram"),
+        UMLDialogType.PACKAGE_DIAGRAM:
+            QCoreApplication.translate("UMLDialog", "Package Diagram"),
+        UMLDialogType.IMPORTS_DIAGRAM:
+            QCoreApplication.translate("UMLDialog", "Imports Diagram"),
+        UMLDialogType.APPLICATION_DIAGRAM:
+            QCoreApplication.translate("UMLDialog", "Application Diagram"),
+    }
     
     def __init__(self, diagramType, project, path="", parent=None,
                  initBuilder=True, **kwargs):
         """
         Constructor
         
-        @param diagramType type of the diagram (one of ApplicationDiagram,
-            ClassDiagram, ImportsDiagram, NoDiagram, PackageDiagram)
-        @param project reference to the project object (Project)
-        @param path file or directory path to build the diagram from (string)
-        @param parent parent widget of the dialog (QWidget)
+        @param diagramType type of the diagram
+        @type UMLDialogType
+        @param project reference to the project object
+        @type Project
+        @param path file or directory path to build the diagram from
+        @type str
+        @param parent parent widget of the dialog
+        @type QWidget
         @param initBuilder flag indicating to initialize the diagram
-            builder (boolean)
+            builder
+        @type bool
         @keyparam kwargs diagram specific data
+        @type dict
         """
         super().__init__(parent)
         self.setObjectName("UMLDialog")
         
         self.__project = project
         self.__diagramType = diagramType
-        self.__diagramTypeString = {
-            UMLDialog.ClassDiagram: "Class Diagram",
-            UMLDialog.PackageDiagram: "Package Diagram",
-            UMLDialog.ImportsDiagram: "Imports Diagram",
-            UMLDialog.ApplicationDiagram: "Application Diagram",
-        }.get(diagramType, "Illegal Diagram Type")
         
         from .UMLGraphicsView import UMLGraphicsView
         self.scene = QGraphicsScene(0.0, 0.0, 800.0, 600.0)
@@ -73,7 +91,20 @@
         
         self.umlView.relayout.connect(self.__relayout)
         
-        self.setWindowTitle(self.__diagramTypeString)
+        self.setWindowTitle(self.__getDiagramTitel(self.__diagramType))
+    
+    def __getDiagramTitel(self, diagramType):
+        """
+        Private method to get a textual description for the diagram type.
+        
+        @param diagramType diagram type string
+        @type str
+        @return titel of the diagram
+        @rtype str
+        """
+        return UMLDialog.UMLDialogType2String.get(
+            diagramType, self.tr("Illegal Diagram Type")
+        )
     
     def __initActions(self):
         """
@@ -145,7 +176,8 @@
         Public method to show the dialog.
         
         @param fromFile flag indicating, that the diagram was loaded
-            from file (boolean)
+            from file
+        @type bool
         """
         if not fromFile and self.builder:
             self.builder.buildDiagram()
@@ -153,7 +185,7 @@
     
     def __relayout(self):
         """
-        Private method to relayout the diagram.
+        Private method to re-layout the diagram.
         """
         if self.builder:
             self.builder.buildDiagram()
@@ -163,34 +195,27 @@
         Private method to instantiate a diagram builder object.
         
         @param diagramType type of the diagram
-            (one of ApplicationDiagram, ClassDiagram, ImportsDiagram,
-            PackageDiagram)
-        @param path file or directory path to build the diagram from (string)
+        @type UMLDialogType
+        @param path file or directory path to build the diagram from
+        @type str
         @keyparam kwargs diagram specific data
+        @type dict
         @return reference to the instantiated diagram builder
-        @exception ValueError raised to indicate an illegal diagram type
+        @rtype UMLDiagramBuilder
         """
-        if diagramType not in (
-            UMLDialog.ClassDiagram, UMLDialog.PackageDiagram,
-            UMLDialog.ImportsDiagram, UMLDialog.ApplicationDiagram,
-            UMLDialog.NoDiagram
-        ):
-            raise ValueError(self.tr(
-                "Illegal diagram type '{0}' given.").format(diagramType))
-        
-        if diagramType == UMLDialog.ClassDiagram:
+        if diagramType == UMLDialogType.CLASS_DIAGRAM:
             from .UMLClassDiagramBuilder import UMLClassDiagramBuilder
             return UMLClassDiagramBuilder(
                 self, self.umlView, self.__project, path, **kwargs)
-        elif diagramType == UMLDialog.PackageDiagram:
+        elif diagramType == UMLDialogType.PACKAGE_DIAGRAM:
             from .PackageDiagramBuilder import PackageDiagramBuilder
             return PackageDiagramBuilder(
                 self, self.umlView, self.__project, path, **kwargs)
-        elif diagramType == UMLDialog.ImportsDiagram:
+        elif diagramType == UMLDialogType.IMPORTS_DIAGRAM:
             from .ImportsDiagramBuilder import ImportsDiagramBuilder
             return ImportsDiagramBuilder(
                 self, self.umlView, self.__project, path, **kwargs)
-        elif diagramType == UMLDialog.ApplicationDiagram:
+        elif diagramType == UMLDialogType.APPLICATION_DIAGRAM:
             from .ApplicationDiagramBuilder import ApplicationDiagramBuilder
             return ApplicationDiagramBuilder(
                 self, self.umlView, self.__project, **kwargs)
@@ -203,20 +228,22 @@
         """
         self.__saveAs(self.__fileName)
     
-    # TODO: change this to save file in JSON format
     @pyqtSlot()
     def __saveAs(self, filename=""):
         """
         Private slot to save the diagram.
         
-        @param filename name of the file to write to (string)
+        @param filename name of the file to write to
+        @type str
         """
         if not filename:
             fname, selectedFilter = E5FileDialog.getSaveFileNameAndFilter(
                 self,
                 self.tr("Save Diagram"),
                 "",
-                self.tr("Eric Graphics File (*.e5g);;All Files (*)"),
+                self.tr("Eric Graphics File (*.egj);;"
+                        "Eric Text Graphics File (*.e5g);;"
+                        "All Files (*)"),
                 "",
                 E5FileDialog.Options(E5FileDialog.DontConfirmOverwrite))
             if not fname:
@@ -237,49 +264,61 @@
                     return
             filename = fname
         
-        lines = [
-            "version: 1.0",
-            "diagram_type: {0} ({1})".format(
-                self.__diagramType, self.__diagramTypeString),
-            "scene_size: {0};{1}".format(self.scene.width(),
-                                         self.scene.height()),
-        ]
-        persistenceData = self.builder.getPersistenceData()
-        if persistenceData:
-            lines.append("builder_data: {0}".format(persistenceData))
-        lines.extend(self.umlView.getPersistenceData())
+        res = (
+            self.__writeLineBasedGraphicsFile(filename)
+            if filename.endswith(".e5g") else
+            # JSON format is the default
+            self.__writeJsonGraphicsFile(filename)
+        )
         
-        try:
-            with open(filename, "w", encoding="utf-8") as f:
-                f.write("\n".join(lines))
-        except OSError as err:
-            E5MessageBox.critical(
-                self,
-                self.tr("Save Diagram"),
-                self.tr(
-                    """<p>The file <b>{0}</b> could not be saved.</p>"""
-                    """<p>Reason: {1}</p>""").format(filename, str(err)))
-            return
-        
-        self.__fileName = filename
+        if res:
+            # save the file name only in case of success
+            self.__fileName = filename
     
-    # TODO: add loading of file in JSON format
-    # TODO: delete the current one with eric7
-    def load(self):
+    # TODO: eric7: delete the current one
+    def load(self, filename=""):
         """
         Public method to load a diagram from a file.
         
-        @return flag indicating success (boolean)
+        @param filename name of the file to be loaded
+        @type str
+        @return flag indicating success
+        @rtype bool
         """
-        filename = E5FileDialog.getOpenFileName(
-            self,
-            self.tr("Load Diagram"),
-            "",
-            self.tr("Eric Graphics File (*.e5g);;All Files (*)"))
         if not filename:
-            # Cancelled by user
-            return False
+            filename = E5FileDialog.getOpenFileName(
+                self,
+                self.tr("Load Diagram"),
+                "",
+                self.tr("Eric Graphics File (*.egj);;"
+                        "Eric Text Graphics File (*.e5g);;"
+                        "All Files (*)"))
+            if not filename:
+                # Canceled by user
+                return False
         
+        return (
+            self.__readLineBasedGraphicsFile(filename)
+            if filename.endswith(".e5g") else
+            # JSON format is the default
+            self.__readJsonGraphicsFile(filename)
+        )
+    
+    #######################################################################
+    ## Methods to read and write eric graphics files of the old line
+    ## based file format.
+    #######################################################################
+    
+    def __readLineBasedGraphicsFile(self, filename):
+        """
+        Private method to read an eric graphics file using the old line
+        based file format.
+        
+        @param filename name of the file to be read
+        @type str
+        @return flag indicating success
+        @rtype bool
+        """
         try:
             with open(filename, "r", encoding="utf-8") as f:
                 data = f.read()
@@ -317,10 +356,8 @@
                 self.__showInvalidDataMessage(filename, linenum)
                 return False
             try:
-                diagramType, diagramTypeString = value.strip().split(None, 1)
-                self.__diagramType = int(self.__diagramType)
-                self.__diagramTypeString = diagramTypeString[1:-1]
-                # remove opening an closing bracket
+                diagramType = value.strip().split(None, 1)[0]
+                self.__diagramType = UMLDialogType(int(diagramType))
             except ValueError:
                 self.__showInvalidDataMessage(filename, linenum)
                 return False
@@ -363,17 +400,55 @@
         
         # everything worked fine, so remember the file name and set the
         # window title
-        self.setWindowTitle(self.__diagramTypeString)
+        self.setWindowTitle(self.__getDiagramTitel(self.__diagramType))
         self.__fileName = filename
         
         return True
     
+    def __writeLineBasedGraphicsFile(self, filename):
+        """
+        Private method to write an eric graphics file using the old line
+        based file format.
+        
+        @param filename name of the file to write to
+        @type str
+        @return flag indicating a successful write
+        @rtype bool
+        """
+        lines = [
+            "version: 1.0",
+            "diagram_type: {0} ({1})".format(
+                self.__diagramType.value,
+                self.__getDiagramTitel(self.__diagramType)),
+            "scene_size: {0};{1}".format(self.scene.width(),
+                                         self.scene.height()),
+        ]
+        persistenceData = self.builder.getPersistenceData()
+        if persistenceData:
+            lines.append("builder_data: {0}".format(persistenceData))
+        lines.extend(self.umlView.getPersistenceData())
+        
+        try:
+            with open(filename, "w", encoding="utf-8") as f:
+                f.write("\n".join(lines))
+            return True
+        except OSError as err:
+            E5MessageBox.critical(
+                self,
+                self.tr("Save Diagram"),
+                self.tr(
+                    """<p>The file <b>{0}</b> could not be saved.</p>"""
+                    """<p>Reason: {1}</p>""").format(filename, str(err)))
+            return False
+    
     def __showInvalidDataMessage(self, filename, linenum=-1):
         """
         Private slot to show a message dialog indicating an invalid data file.
         
-        @param filename name of the file containing the invalid data (string)
-        @param linenum number of the invalid line (integer)
+        @param filename name of the file containing the invalid data
+        @type str
+        @param linenum number of the invalid line
+        @type int
         """
         msg = (
             self.tr("""<p>The file <b>{0}</b> does not contain"""
@@ -384,3 +459,123 @@
                     ).format(filename, linenum + 1)
         )
         E5MessageBox.critical(self, self.tr("Load Diagram"), msg)
+    
+    #######################################################################
+    ## Methods to read and write eric graphics files of the JSON based
+    ## file format.
+    #######################################################################
+    
+    def __writeJsonGraphicsFile(self, filename):
+        """
+        Private method to write an eric graphics file using the JSON based
+        file format.
+        
+        @param filename name of the file to write to
+        @type str
+        @return flag indicating a successful write
+        @rtype bool
+        """
+        data = {
+            "version": "1.0",
+            "type": self.__diagramType.value,
+            "title": self.__getDiagramTitel(self.__diagramType),
+            "width": self.scene.width(),
+            "height": self.scene.height(),
+            "builder": self.builder.toDict(),
+            "view": self.umlView.toDict(),
+        }
+        
+        try:
+            jsonString = json.dumps(data, indent=2)
+            with open(filename, "w") as f:
+                f.write(jsonString)
+            return True
+        except (TypeError, OSError) as err:
+            E5MessageBox.critical(
+                self,
+                self.tr("Save Diagram"),
+                self.tr(
+                    """<p>The file <b>{0}</b> could not be saved.</p>"""
+                    """<p>Reason: {1}</p>""").format(filename, str(err))
+            )
+            return False
+    
+    def __readJsonGraphicsFile(self, filename):
+        """
+        Private method to read an eric graphics file using the JSON based
+        file format.
+        
+        @param filename name of the file to be read
+        @type str
+        @return flag indicating a successful read
+        @rtype bool
+        """
+        try:
+            with open(filename, "r") as f:
+                jsonString = f.read()
+            data = json.loads(jsonString)
+        except (OSError, json.JSONDecodeError) as err:
+            E5MessageBox.critical(
+                None,
+                self.tr("Load Diagram"),
+                self.tr(
+                    """<p>The file <b>{0}</b> could not be read.</p>"""
+                    """<p>Reason: {1}</p>""").format(filename, str(err))
+            )
+            return False
+        
+        try:
+            # step 1: check version
+            if data["version"] in UMLDialog.JsonFileVersions:
+                version = data["version"]
+            else:
+                self.__showInvalidDataMessage(filename)
+                return False
+            
+            # step 2: set diagram type
+            try:
+                self.__diagramType = UMLDialogType(data["type"])
+            except ValueError:
+                self.__showInvalidDataMessage(filename)
+                return False
+            self.scene.clear()
+            self.builder = self.__diagramBuilder(self.__diagramType, "")
+            
+            # step 3: set scene size
+            self.umlView.setSceneSize(data["width"], data["height"])
+            
+            # step 4: extract builder data if available
+            ok, msg = self.builder.fromDict(version, data["builder"])
+            if not ok:
+                if msg:
+                    res = E5MessageBox.warning(
+                        self,
+                        self.tr("Load Diagram"),
+                        msg,
+                        E5MessageBox.StandardButtons(
+                            E5MessageBox.Abort |
+                            E5MessageBox.Ignore),
+                        E5MessageBox.Abort)
+                    if res == E5MessageBox.Abort:
+                        return False
+                    else:
+                        self.umlView.setLayoutActionsEnabled(False)
+                else:
+                    self.__showInvalidDataMessage(filename)
+                    return False
+            
+            # step 5: extract the graphics items
+            ok = self.umlView.fromDict(version, data["view"])
+            if not ok:
+                self.__showInvalidDataMessage(filename)
+                return False
+        except KeyError:
+            self.__showInvalidDataMessage(filename)
+            return False
+        
+        # everything worked fine, so remember the file name and set the
+        # window title
+        self.setWindowTitle(self.__getDiagramTitel(self.__diagramType))
+        self.__fileName = filename
+        
+        return True
--- a/eric6/Graphics/UMLGraphicsView.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Graphics/UMLGraphicsView.py	Thu Jun 03 11:39:23 2021 +0200
@@ -39,8 +39,10 @@
         """
         Constructor
         
-        @param scene reference to the scene object (QGraphicsScene)
-        @param parent parent widget of the view (QWidget)
+        @param scene reference to the scene object
+        @type QGraphicsScene
+        @param parent parent widget of the view
+        @type QWidget
         """
         E5GraphicsView.__init__(self, scene, parent)
         self.setObjectName("UMLGraphicsView")
@@ -169,7 +171,17 @@
         self.alignMapper.setMapping(
             self.alignBottomAct, Qt.AlignmentFlag.AlignBottom)
         self.alignBottomAct.triggered.connect(self.alignMapper.map)
+    
+    def setLayoutActionsEnabled(self, enable):
+        """
+        Public method to enable or disable the layout related actions.
         
+        @param enable flag indicating the desired enable state
+        @type bool
+        """
+        self.rescanAct.setEnabled(enable)
+        self.relayoutAct.setEnabled(enable)
+    
     def __checkSizeActions(self):
         """
         Private slot to set the enabled state of the size actions.
@@ -189,7 +201,8 @@
         """
         Private slot called when the scene changes.
         
-        @param areas list of rectangles that contain changes (list of QRectF)
+        @param areas list of rectangles that contain changes
+        @type list of QRectF
         """
         if len(self.scene().selectedItems()) > 0:
             self.deleteShapeAct.setEnabled(True)
@@ -214,7 +227,8 @@
         """
         Public method to populate a toolbar with our actions.
         
-        @return the populated toolBar (QToolBar)
+        @return the populated toolBar
+        @rtype QToolBar
         """
         toolBar = QToolBar(self.tr("Graphics"), self)
         toolBar.setIconSize(UI.Config.ToolBarIconSize)
@@ -243,9 +257,11 @@
         Public method to filter a list of items.
         
         @param items list of items as returned by the scene object
-            (QGraphicsItem)
-        @param itemType type to be filtered (class)
-        @return list of interesting collision items (QGraphicsItem)
+        @type QGraphicsItem
+        @param itemType type to be filtered
+        @type class
+        @return list of interesting collision items
+        @rtype QGraphicsItem
         """
         return [itm for itm in items if isinstance(itm, itemType)]
         
@@ -253,7 +269,8 @@
         """
         Public method to select the given items.
         
-        @param items list of items to be selected (list of QGraphicsItemItem)
+        @param items list of items to be selected
+        @type list of QGraphicsItemItem
         """
         # step 1: deselect all items
         self.unselectItems()
@@ -267,7 +284,8 @@
         """
         Public method to select an item.
         
-        @param item item to be selected (QGraphicsItemItem)
+        @param item item to be selected
+        @type QGraphicsItemItem
         """
         if isinstance(item, UMLItem):
             item.setSelected(not item.isSelected())
@@ -329,7 +347,8 @@
         Public method to adjust the scene size to the diagram size.
         
         @param limit flag indicating to limit the scene to the
-            initial size (boolean)
+            initial size
+        @type bool
         """
         super().autoAdjustSceneSize(limit=limit)
         self.__checkSizeActions()
@@ -411,7 +430,7 @@
         """
         Public slot called to print the diagram.
         """
-        printer = QPrinter(mode=QPrinter.PrinterMode.ScreenResolution)
+        printer = QPrinter(mode=QPrinter.PrinterMode.PrinterResolution)
         printer.setFullPage(True)
         if Preferences.getPrinter("ColorMode"):
             printer.setColorMode(QPrinter.ColorMode.Color)
@@ -443,7 +462,7 @@
         """
         from PyQt5.QtPrintSupport import QPrintPreviewDialog
         
-        printer = QPrinter(mode=QPrinter.PrinterMode.ScreenResolution)
+        printer = QPrinter(mode=QPrinter.PrinterMode.PrinterResolution)
         printer.setFullPage(True)
         if Preferences.getPrinter("ColorMode"):
             printer.setColorMode(QPrinter.ColorMode.Color)
@@ -472,7 +491,8 @@
         """
         Private slot to generate a print preview.
         
-        @param printer reference to the printer object (QPrinter)
+        @param printer reference to the printer object
+        @type QPrinter
         """
         super().printDiagram(printer, self.diagramName)
         
@@ -480,7 +500,8 @@
         """
         Public slot to set the diagram name.
         
-        @param name diagram name (string)
+        @param name diagram name
+        @type str
         """
         self.diagramName = name
         
@@ -488,7 +509,8 @@
         """
         Private slot to align the selected shapes.
         
-        @param alignment alignment type (Qt.AlignmentFlag)
+        @param alignment alignment type
+        @type Qt.AlignmentFlag
         """
         # step 1: get all selected items
         items = self.scene().selectedItems()
@@ -564,8 +586,10 @@
         """
         Private method to calculate the bounding rectangle of the given items.
         
-        @param items list of items to operate on (list of UMLItem)
-        @return bounding rectangle (QRectF)
+        @param items list of items to operate on
+        @type list of UMLItem
+        @return bounding rectangle
+        @rtype QRectF
         """
         rect = self.scene().sceneRect()
         right = rect.left()
@@ -584,7 +608,8 @@
         """
         Protected method handling key press events.
         
-        @param evt reference to the key event (QKeyEvent)
+        @param evt reference to the key event
+        @type QKeyEvent
         """
         key = evt.key()
         if key in [Qt.Key.Key_Up, Qt.Key.Key_Down, Qt.Key.Key_Left,
@@ -618,7 +643,8 @@
         """
         Protected method to handle wheel events.
         
-        @param evt reference to the wheel event (QWheelEvent)
+        @param evt reference to the wheel event
+        @type QWheelEvent
         """
         if evt.modifiers() & Qt.KeyboardModifier.ControlModifier:
             delta = evt.angleDelta().y()
@@ -635,8 +661,10 @@
         """
         Public method handling events.
         
-        @param evt reference to the event (QEvent)
-        @return flag indicating, if the event was handled (boolean)
+        @param evt reference to the event
+        @type QEvent
+        @return flag indicating, if the event was handled
+        @rtype bool
         """
         if evt.type() == QEvent.Type.Gesture:
             self.gestureEvent(evt)
@@ -648,7 +676,8 @@
         """
         Protected method handling gesture events.
         
-        @param evt reference to the gesture event (QGestureEvent
+        @param evt reference to the gesture event
+        @type QGestureEvent
         """
         pinch = evt.gesture(Qt.GestureType.PinchGesture)
         if pinch:
@@ -662,7 +691,8 @@
         """
         Public method to get the ID to be assigned to an item.
         
-        @return item ID (integer)
+        @return item ID
+        @rtype int
         """
         self.__itemId += 1
         return self.__itemId
@@ -671,8 +701,10 @@
         """
         Public method to find an UML item based on the ID.
         
-        @param itemId of the item to search for (integer)
-        @return item found (UMLItem) or None
+        @param itemId of the item to search for
+        @type int
+        @return item found or None
+        @rtype UMLItem
         """
         for item in self.scene().items():
             try:
@@ -687,8 +719,10 @@
         """
         Public method to find an UML item based on its name.
         
-        @param name name to look for (string)
-        @return item found (UMLItem) or None
+        @param name name to look for
+        @type str
+        @return item found or None
+        @rtype UMLItem
         """
         for item in self.scene().items():
             try:
@@ -703,7 +737,8 @@
         """
         Public method to get a list of data to be persisted.
         
-        @return list of data to be persisted (list of strings)
+        @return list of data to be persisted
+        @rtype list of str
         """
         lines = [
             "diagram_name: {0}".format(self.diagramName),
@@ -725,10 +760,13 @@
         """
         Public method to parse persisted data.
         
-        @param version version of the data (string)
-        @param data persisted data to be parsed (list of string)
+        @param version version of the data
+        @type str
+        @param data persisted data to be parsed
+        @type list of str
         @return tuple of flag indicating success (boolean) and faulty line
-            number (integer)
+            number
+        @rtype int
         """
         umlItems = {}
         
@@ -754,14 +792,15 @@
                     y = float(y.split("=", 1)[1].strip())
                     itemType = itemType.split("=", 1)[1].strip()
                     if itemType == ClassItem.ItemType:
-                        itm = ClassItem(x=x, y=y, scene=self.scene(),
+                        itm = ClassItem(x=0, y=0, scene=self.scene(),
                                         colors=self.getDrawingColors())
                     elif itemType == ModuleItem.ItemType:
-                        itm = ModuleItem(x=x, y=y, scene=self.scene(),
+                        itm = ModuleItem(x=0, y=0, scene=self.scene(),
                                          colors=self.getDrawingColors())
                     elif itemType == PackageItem.ItemType:
-                        itm = PackageItem(x=x, y=y, scene=self.scene(),
+                        itm = PackageItem(x=0, y=0, scene=self.scene(),
                                           colors=self.getDrawingColors())
+                    itm.setPos(x, y)
                     itm.setId(itemId)
                     umlItems[itemId] = itm
                     if not itm.parseItemDataString(version, itemData):
@@ -778,3 +817,77 @@
                 self.scene().addItem(assoc)
         
         return True, -1
+    
+    def toDict(self):
+        """
+        Public method to collect data to be persisted.
+        
+        @return dictionary containing data to be persisted
+        @rtype dict
+        """
+        items = [
+            item.toDict()
+            for item in self.filteredItems(self.scene().items(), UMLItem)
+        ]
+        
+        from .AssociationItem import AssociationItem
+        associations = [
+            assoc.toDict()
+            for assoc in self.filteredItems(self.scene().items(),
+                                            AssociationItem)
+        ]
+        
+        data = {
+            "diagram_name": self.diagramName,
+            "items": items,
+            "associations": associations,
+        }
+        
+        return data
+    
+    def fromDict(self, version, data):
+        """
+        Public method to populate the class with data persisted by 'toDict()'.
+        
+        @param version version of the data
+        @type str
+        @param data dictionary containing the persisted data
+        @type dict
+        @return flag indicating success
+        @rtype bool
+        """
+        from .UMLItem import UMLItem
+        from .ClassItem import ClassItem
+        from .ModuleItem import ModuleItem
+        from .PackageItem import PackageItem
+        from .AssociationItem import AssociationItem
+        
+        umlItems = {}
+        
+        try:
+            self.diagramName = data["diagram_name"]
+            for itemData in data["items"]:
+                if itemData["type"] == UMLItem.ItemType:
+                    itm = UMLItem.fromDict(
+                        itemData, colors=self.getDrawingColors())
+                elif itemData["type"] == ClassItem.ItemType:
+                    itm = ClassItem.fromDict(
+                        itemData, colors=self.getDrawingColors())
+                elif itemData["type"] == ModuleItem.ItemType:
+                    itm = ModuleItem.fromDict(
+                        itemData, colors=self.getDrawingColors())
+                elif itemData["type"] == PackageItem.ItemType:
+                    itm = PackageItem.fromDict(
+                        itemData, colors=self.getDrawingColors())
+                if itm is not None:
+                    umlItems[itm.getId()] = itm
+                    self.scene().addItem(itm)
+            
+            for assocData in data["associations"]:
+                assoc = AssociationItem.fromDict(
+                    assocData, umlItems, colors=self.getDrawingColors())
+                self.scene().addItem(assoc)
+            
+            return True
+        except KeyError:
+            return False
--- a/eric6/Graphics/UMLItem.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Graphics/UMLItem.py	Thu Jun 03 11:39:23 2021 +0200
@@ -22,7 +22,8 @@
         """
         Constructor
         
-        @param name package name (string)
+        @param name package name
+        @type str
         """
         self.name = name
     
@@ -30,7 +31,8 @@
         """
         Public method to retrieve the model name.
         
-        @return model name (string)
+        @return model name
+        @rtype str
         """
         return self.name
 
@@ -91,7 +93,8 @@
         """
         Public method to retrieve the item name.
         
-        @return item name (string)
+        @return item name
+        @rtype str
         """
         if self.model:
             return self.model.name
@@ -102,8 +105,10 @@
         """
         Public method to set the rectangles size.
         
-        @param width width of the rectangle (float)
-        @param height height of the rectangle (float)
+        @param width width of the rectangle
+        @type float
+        @param height height of the rectangle
+        @type float
         """
         rect = self.rect()
         rect.setSize(QSizeF(width, height))
@@ -113,7 +118,8 @@
         """
         Public method to add an association to this widget.
         
-        @param assoc association to be added (AssociationWidget)
+        @param assoc association to be added
+        @type AssociationWidget
         """
         if assoc and assoc not in self.associations:
             self.associations.append(assoc)
@@ -122,7 +128,8 @@
         """
         Public method to remove an association to this widget.
         
-        @param assoc association to be removed (AssociationWidget)
+        @param assoc association to be removed
+        @type AssociationWidget
         """
         if assoc and assoc in self.associations:
             self.associations.remove(assoc)
@@ -149,8 +156,10 @@
         """
         Public overriden method to move the widget relative.
         
-        @param dx relative movement in x-direction (float)
-        @param dy relative movement in y-direction (float)
+        @param dx relative movement in x-direction
+        @type float
+        @param dy relative movement in y-direction
+        @type float
         """
         super().moveBy(dx, dy)
         self.adjustAssociations()
@@ -159,8 +168,10 @@
         """
         Public overriden method to set the items position.
         
-        @param x absolute x-position (float)
-        @param y absolute y-position (float)
+        @param x absolute x-position
+        @type float
+        @param y absolute y-position
+        @type float
         """
         super().setPos(x, y)
         self.adjustAssociations()
@@ -169,7 +180,8 @@
         """
         Public method called when an items state changes.
         
-        @param change the item's change (QGraphicsItem.GraphicsItemChange)
+        @param change the item's change
+        @type QGraphicsItem.GraphicsItemChange
         @param value the value of the change
         @return adjusted values
         """
@@ -178,12 +190,14 @@
             self.shouldAdjustAssociations = True
             
             # 2. ensure the new position is inside the scene
-            rect = self.scene().sceneRect()
-            if not rect.contains(value):
-                # keep the item inside the scene
-                value.setX(min(rect.right(), max(value.x(), rect.left())))
-                value.setY(min(rect.bottom(), max(value.y(), rect.top())))
-                return value
+            scene = self.scene()
+            if scene:
+                rect = scene.sceneRect()
+                if not rect.contains(value):
+                    # keep the item inside the scene
+                    value.setX(min(rect.right(), max(value.x(), rect.left())))
+                    value.setY(min(rect.bottom(), max(value.y(), rect.top())))
+                    return value
             
         return QGraphicsItem.itemChange(self, change, value)
     
@@ -191,9 +205,12 @@
         """
         Public method to paint the item in local coordinates.
         
-        @param painter reference to the painter object (QPainter)
-        @param option style options (QStyleOptionGraphicsItem)
-        @param widget optional reference to the widget painted on (QWidget)
+        @param painter reference to the painter object
+        @type QPainter
+        @param option style options
+        @type QStyleOptionGraphicsItem
+        @param widget optional reference to the widget painted on
+        @type QWidget
         """
         pen = self.pen()
         if (
@@ -213,7 +230,8 @@
         """
         Public method to assign an ID to the item.
         
-        @param itemId assigned ID (integer)
+        @param itemId assigned ID
+        @type int
         """
         self.__id = itemId
     
@@ -221,7 +239,8 @@
         """
         Public method to get the item ID.
         
-        @return ID of the item (integer)
+        @return ID of the item
+        @rtype int
         """
         return self.__id
     
@@ -229,7 +248,8 @@
         """
         Public method to get the item's type.
         
-        @return item type (string)
+        @return item type
+        @rtype str
         """
         return self.ItemType
     
@@ -241,7 +261,8 @@
         "attribute=value" with pairs separated by ", ". value must not
         contain ", " or newlines.
         
-        @return persistence data (string)
+        @return persistence data
+        @rtype str
         """
         return ""
     
@@ -249,8 +270,51 @@
         """
         Public method to parse the given persistence data.
         
-        @param version version of the data (string)
-        @param data persisted data to be parsed (string)
-        @return flag indicating success (boolean)
+        @param version version of the data
+        @type str
+        @param data persisted data to be parsed
+        @type str
+        @return flag indicating success
+        @rtype bool
         """
         return True
+    
+    def toDict(self):
+        """
+        Public method to collect data to be persisted.
+        
+        @return dictionary containing data to be persisted
+        @rtype dict
+        """
+        return {
+            "id": self.getId(),
+            "x": self.x(),
+            "y": self.y(),
+            "type": self.getItemType(),
+            "model_name": self.model.getName(),
+        }
+    
+    @classmethod
+    def fromDict(cls, data, colors=None):
+        """
+        Class method to create a generic UML item from persisted data.
+        
+        @param data dictionary containing the persisted data as generated
+            by toDict()
+        @type dict
+        @param colors tuple containing the foreground and background colors
+        @type tuple of (QColor, QColor)
+        @return created UML item
+        @rtype UMLItem
+        """
+        try:
+            model = UMLModel(data["model_name"])
+            itm = cls(model=model,
+                      x=0,
+                      y=0,
+                      colors=colors)
+            itm.setPos(data["x"], data["y"])
+            itm.setId(data["id"])
+            return itm
+        except KeyError:
+            return None
--- a/eric6/Graphics/UMLSceneSizeDialog.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Graphics/UMLSceneSizeDialog.py	Thu Jun 03 11:39:23 2021 +0200
@@ -20,12 +20,18 @@
         """
         Constructor
         
-        @param w current width of scene (integer)
-        @param h current height of scene (integer)
-        @param minW minimum width allowed (integer)
-        @param minH minimum height allowed (integer)
-        @param parent parent widget of this dialog (QWidget)
-        @param name name of this widget (string)
+        @param w current width of scene
+        @type int
+        @param h current height of scene
+        @type int
+        @param minW minimum width allowed
+        @type int
+        @param minH minimum height allowed
+        @type int
+        @param parent parent widget of this dialog
+        @type QWidget
+        @param name name of this widget
+        @type str
         """
         super().__init__(parent)
         if name:
@@ -47,6 +53,6 @@
         Public method to retrieve the entered data.
         
         @return tuple giving the selected width and height
-            (integer, integer)
+        @rtype tuple of (int, int)
         """
         return (self.widthSpinBox.value(), self.heightSpinBox.value())
--- a/eric6/Network/IRC/IrcNetworkEditDialog.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Network/IRC/IrcNetworkEditDialog.py	Thu Jun 03 11:39:23 2021 +0200
@@ -114,17 +114,16 @@
             index = 0
         self.identityCombo.setCurrentIndex(index)
     
-    @pyqtSlot(int)
-    def on_identityCombo_currentIndexChanged(self, index):
+    @pyqtSlot(str)
+    def on_identityCombo_currentTextChanged(self, identity):
         """
         Private slot to handle the selection of an identity.
         
-        @param index index of the selected entry
-        @type int
+        @param identity selected identity
+        @type str
         """
         from .IrcNetworkManager import IrcIdentity
         
-        identity = self.identitiesCombo.itemText(index)
         if identity == IrcIdentity.DefaultIdentityDisplay:
             identity = IrcIdentity.DefaultIdentityName
         self.__network.setIdentityName(identity)
--- a/eric6/PluginManager/PluginInstallDialog.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/PluginManager/PluginInstallDialog.py	Thu Jun 03 11:39:23 2021 +0200
@@ -471,28 +471,12 @@
                 with open(outname, "w", encoding="utf-8") as f:
                     f.write(pluginSource)
                 self.__installedFiles.append(outname)
-        except os.error as why:
-            self.__rollback()
-            return (
-                False,
-                self.tr(
-                    "Error installing plugin. Reason: {0}").format(str(why)),
-                False
-            )
         except OSError as why:
             self.__rollback()
             return (
                 False,
-                self.tr(
-                    "Error installing plugin. Reason: {0}").format(str(why)),
-                False
-            )
-        except OSError as why:
-            self.__rollback()
-            return (
-                False,
-                self.tr(
-                    "Error installing plugin. Reason: {0}").format(str(why)),
+                self.tr("Error installing plugin. Reason: {0}")
+                .format(str(why)),
                 False
             )
         except Exception:
@@ -513,12 +497,11 @@
             compileall.compile_file(files, quiet=True)
             os.path.join_unicode = True
         
-        if not self.__external:
             # now load and activate the plugin
-            self.__pluginManager.loadPlugin(installedPluginName, destination,
-                                            reload_)
-            if activatePlugin:
-                self.__pluginManager.activatePlugin(installedPluginName)
+        self.__pluginManager.loadPlugin(
+            installedPluginName, destination, reload_=reload_, install=True)
+        if activatePlugin and not self.__external:
+            self.__pluginManager.activatePlugin(installedPluginName)
         
         return True, "", needsRestart
     
--- a/eric6/PluginManager/PluginManager.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/PluginManager/PluginManager.py	Thu Jun 03 11:39:23 2021 +0200
@@ -13,6 +13,7 @@
 import types
 import importlib
 import contextlib
+import logging
 
 from PyQt5.QtCore import (
     pyqtSignal, QObject, QDate, QFile, QFileInfo, QUrl, QIODevice
@@ -110,7 +111,7 @@
         
         self.pluginDirs = {
             "eric6": os.path.join(getConfig('ericDir'), "Plugins"),
-            "global": os.path.join(Utilities.getPythonModulesDirectory(),
+            "global": os.path.join(Utilities.getPythonLibraryDirectory(),
                                    "eric6plugins"),
             "user": os.path.join(Utilities.getConfigDir(), "eric6plugins"),
         }
@@ -379,7 +380,7 @@
             if pluginName.startswith("PluginDocumentationSets"):
                 self.loadPlugin(pluginName, self.pluginDirs["eric6"])
     
-    def loadPlugin(self, name, directory, reload_=False):
+    def loadPlugin(self, name, directory, reload_=False, install=False):
         """
         Public method to load a plugin module.
         
@@ -388,9 +389,15 @@
         basic validity checks are performed as well. Modules failing these
         checks are added to the failed modules list.
         
-        @param name name of the module to be loaded (string)
-        @param directory name of the plugin directory (string)
-        @param reload_ flag indicating to reload the module (boolean)
+        @param name name of the module to be loaded
+        @type str
+        @param directory name of the plugin directory
+        @type str
+        @param reload_ flag indicating to reload the module
+        @type bool
+        @param install flag indicating a load operation as part of an
+            installation process
+        @type bool
         @exception PluginLoadError raised to indicate an issue loading
             the plug-in
         """
@@ -403,6 +410,10 @@
             if not hasattr(module, "autoactivate"):
                 module.error = self.tr(
                     "Module is missing the 'autoactivate' attribute.")
+                logging.debug(
+                    "{0}: Module is missing the 'autoactivate' attribute."
+                    .format(name)
+                )
                 self.__failedModules[name] = module
                 raise PluginLoadError(name)
             if getattr(module, "autoactivate", False):
@@ -416,12 +427,20 @@
                         "Module is missing the 'pluginType' "
                         "and/or 'pluginTypename' attributes."
                     )
+                    logging.debug(
+                        "{0}: Module is missing the 'pluginType' "
+                        "and/or 'pluginTypename' attributes."
+                        .format(name)
+                    )
                     self.__failedModules[name] = module
                     raise PluginLoadError(name)
                 else:
                     self.__onDemandInactiveModules[name] = module
             module.eric6PluginModuleName = name
             module.eric6PluginModuleFilename = fname
+            if install and hasattr(module, "installDependencies"):
+                # ask the module to install its dependencies
+                module.installDependencies(self.pipInstall)
             self.__modulesCount += 1
             if reload_:
                 importlib.reload(module)
@@ -436,6 +455,10 @@
             module = types.ModuleType(name)
             module.error = self.tr(
                 "Module failed to load. Error: {0}").format(str(err))
+            logging.debug(
+                "{0}: Module failed to load. Error: {1}"
+                .format(name, str(err))
+            )
             self.__failedModules[name] = module
             print("Error loading plug-in module:", name)
             print(str(err))
@@ -613,10 +636,15 @@
             except TypeError:
                 module.error = self.tr(
                     "Incompatible plugin activation method.")
+                logging.debug(
+                    "{0}: Incompatible plugin activation method."
+                    .format(name)
+                )
                 obj = None
                 ok = True
             except Exception as err:
                 module.error = str(err)
+                logging.debug("{0}: {1}".format(name, str(err)))
                 obj = None
                 ok = False
             if not ok:
@@ -1416,6 +1444,25 @@
                 hasattr(module, "clearPrivateData")
             ):
                 module.clearPrivateData()
+    
+    ########################################################################
+    ## Methods to install a plug-in module dependency via pip
+    ########################################################################
+    
+    def pipInstall(self, packages):
+        """
+        Public method to install the given package via pip.
+        
+        @param packages list of packages to install
+        @type list of str
+        """
+        try:
+            pip = e5App().getObject("Pip")
+        except KeyError:
+            # Installation is performed via the plug-in installation script.
+            from PipInterface.Pip import Pip
+            pip = Pip(self)
+        pip.installPackages(packages, interpreter=sys.executable)
 
 #
 # eflag: noqa = M801
--- a/eric6/Plugins/DocumentationPlugins/Ericdoc/EricdocConfigDialog.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Plugins/DocumentationPlugins/Ericdoc/EricdocConfigDialog.py	Thu Jun 03 11:39:23 2021 +0200
@@ -105,7 +105,7 @@
         )
         if self.parameters['cssFile'].startswith("%PYTHON%"):
             self.parameters['cssFile'] = self.parameters['cssFile'].replace(
-                "%PYTHON%", Utilities.getPythonModulesDirectory())
+                "%PYTHON%", Utilities.getPythonLibraryDirectory())
         
         self.ppath = project.getProjectPath()
         self.project = project
@@ -244,9 +244,9 @@
         # 2b. style commandline options
         if self.parameters['cssFile'] != self.defaults['cssFile']:
             cssFile = self.project.getRelativePath(self.parameters['cssFile'])
-            if cssFile.startswith(Utilities.getPythonModulesDirectory()):
+            if cssFile.startswith(Utilities.getPythonLibraryDirectory()):
                 cssFile = cssFile.replace(
-                    Utilities.getPythonModulesDirectory(), "%PYTHON%")
+                    Utilities.getPythonLibraryDirectory(), "%PYTHON%")
             parms['cssFile'] = Utilities.fromNativeSeparators(cssFile)
             args.append('-c')
             if os.path.isabs(self.parameters['cssFile']):
--- a/eric6/Plugins/PluginVcsGit.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Plugins/PluginVcsGit.py	Thu Jun 03 11:39:23 2021 +0200
@@ -10,7 +10,7 @@
 import os
 import contextlib
 
-from PyQt5.QtCore import QObject, QCoreApplication, QTranslator, QByteArray
+from PyQt5.QtCore import QObject, QCoreApplication, QByteArray
 
 from E5Gui.E5Application import e5App
 
@@ -192,9 +192,6 @@
         super().__init__(ui)
         self.__ui = ui
         
-        self.__translator = None
-        self.__loadTranslator()
-        
         from VcsPlugins.vcsGit.ProjectHelper import GitProjectHelper
         self.__projectHelperObject = GitProjectHelper(None, None)
         with contextlib.suppress(KeyError):
@@ -325,26 +322,6 @@
             self.__projectHelperObject.removeToolbar(
                 self.__ui, e5App().getObject("ToolbarManager"))
         e5App().unregisterPluginObject(pluginTypename)
-    
-    def __loadTranslator(self):
-        """
-        Private method to load the translation file.
-        """
-        if self.__ui is not None:
-            loc = self.__ui.getLocale()
-            if loc and loc != "C":
-                locale_dir = os.path.join(
-                    os.path.dirname(__file__), "vcsGit", "i18n")
-                translation = "git_{0}".format(loc)
-                translator = QTranslator(None)
-                loaded = translator.load(translation, locale_dir)
-                if loaded:
-                    self.__translator = translator
-                    e5App().installTranslator(self.__translator)
-                else:
-                    print("Warning: translation file '{0}' could not be"
-                          " loaded.".format(translation))
-                    print("Using default.")
 
 #
 # eflag: noqa = M801
--- a/eric6/Plugins/PluginVcsMercurial.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Plugins/PluginVcsMercurial.py	Thu Jun 03 11:39:23 2021 +0200
@@ -17,7 +17,7 @@
 import Preferences
 from Preferences.Shortcuts import readShortcuts
 
-from VcsPlugins.vcsMercurial.HgUtilities import getConfigPath
+from VcsPlugins.vcsMercurial.HgUtilities import getConfigPath, getHgExecutable
 
 import Utilities
 import UI.Info
@@ -49,15 +49,11 @@
     @return dictionary containing the data to query the presence of
         the executable
     """
-    exe = 'hg'
-    if Utilities.isWindowsPlatform():
-        exe += '.exe'
-    
     data = {
         "programEntry": True,
         "header": QCoreApplication.translate(
             "VcsMercurialPlugin", "Version Control - Mercurial"),
-        "exe": exe,
+        "exe": getHgExecutable(),
         "versionCommand": 'version',
         "versionStartsWith": 'Mercurial',
         "versionPosition": -1,
@@ -77,9 +73,7 @@
     """
     global pluginTypename
     data = {}
-    exe = 'hg'
-    if Utilities.isWindowsPlatform():
-        exe += '.exe'
+    exe = getHgExecutable()
     if Utilities.isinpath(exe):
         data[".hg"] = (pluginTypename, displayString())
         data["_hg"] = (pluginTypename, displayString())
@@ -92,9 +86,7 @@
     
     @return display string (string)
     """
-    exe = 'hg'
-    if Utilities.isWindowsPlatform():
-        exe += '.exe'
+    exe = getHgExecutable()
     if Utilities.isinpath(exe):
         return QCoreApplication.translate('VcsMercurialPlugin', 'Mercurial')
     else:
--- a/eric6/Plugins/VcsPlugins/vcsMercurial/HgClient.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Plugins/VcsPlugins/vcsMercurial/HgClient.py	Thu Jun 03 11:39:23 2021 +0200
@@ -15,7 +15,7 @@
 )
 from PyQt5.QtWidgets import QDialog
 
-from .HgUtilities import prepareProcess
+from .HgUtilities import prepareProcess, getHgExecutable
 
 
 class HgClient(QObject):
@@ -85,13 +85,14 @@
         
         prepareProcess(self.__server, self.__encoding)
         
-        self.__server.start('hg', self.__serverArgs)
+        exe = getHgExecutable()
+        self.__server.start(exe, self.__serverArgs)
         serverStarted = self.__server.waitForStarted(15000)
         if not serverStarted:
             return False, self.tr(
                 'The process {0} could not be started. '
                 'Ensure, that it is in the search path.'
-            ).format('hg')
+            ).format(exe)
         
         self.__server.setReadChannel(QProcess.ProcessChannel.StandardOutput)
         ok, error = self.__readHello()
@@ -263,7 +264,7 @@
             if self.__server is None:
                 return -1
             
-            if self.__server is None or self.__server.bytesAvailable() == 0:
+            if self.__server.bytesAvailable() == 0:
                 QThread.msleep(50)
                 continue
             channel, data = self.__readChannel()
--- a/eric6/Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py	Thu Jun 03 11:39:23 2021 +0200
@@ -20,8 +20,9 @@
 from E5Gui.E5MainWindow import E5MainWindow
 
 import UI.PixmapCache
+import Preferences
 
-import Preferences
+from .HgUtilities import getHgExecutable
 
 
 class HgServeDialog(E5MainWindow):
@@ -121,6 +122,8 @@
         port = self.__portSpin.value()
         style = self.__styleCombo.currentText()
         
+        exe = getHgExecutable()
+        
         args = self.vcs.initCommand("serve")
         args.append("-v")
         args.append("--port")
@@ -130,7 +133,7 @@
         
         self.process.setWorkingDirectory(self.__repoPath)
         
-        self.process.start('hg', args)
+        self.process.start(exe, args)
         procStarted = self.process.waitForStarted(5000)
         if procStarted:
             self.__startAct.setEnabled(False)
@@ -147,7 +150,7 @@
                 self.tr(
                     'The process {0} could not be started. '
                     'Ensure, that it is in the search path.'
-                ).format('hg'))
+                ).format(exe))
     
     def __stopServer(self):
         """
--- a/eric6/Plugins/VcsPlugins/vcsMercurial/HgUtilities.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Plugins/VcsPlugins/vcsMercurial/HgUtilities.py	Thu Jun 03 11:39:23 2021 +0200
@@ -9,17 +9,47 @@
 
 import os
 import re
+import sys
 
 from PyQt5.QtCore import QProcess, QProcessEnvironment, QCoreApplication
 
 import Utilities
+from Globals import isWindowsPlatform
+
+
+def getHgExecutable():
+    """
+    Function to get the full path of the Mercurial executable.
+    
+    @return path of the Mercurial executable
+    @rtype str
+    """
+    exe = ""
+    program = "hg"
+    if isWindowsPlatform():
+        program += ".exe"
+        dirName = os.path.dirname(sys.executable)
+        if os.path.exists(os.path.join(dirName, program)):
+            exe = os.path.join(dirName, program)
+        elif os.path.exists(os.path.join(dirName, "Scripts", program)):
+            exe = os.path.join(dirName, "Scripts", program)
+    else:
+        dirName = os.path.dirname(sys.executable)
+        if os.path.exists(os.path.join(dirName, program)):
+            exe = os.path.join(dirName, program)
+    
+    if not exe:
+        exe = program
+    
+    return exe
 
 
 def getConfigPath():
     """
-    Public function to get the filename of the config file.
+    Function to get the filename of the config file.
     
-    @return filename of the config file (string)
+    @return filename of the config file
+    @rtype str
     """
     if Utilities.isWindowsPlatform():
         userprofile = os.environ["USERPROFILE"]
@@ -31,11 +61,14 @@
 
 def prepareProcess(proc, encoding="", language=""):
     """
-    Public function to prepare the given process.
+    Function to prepare the given process.
     
-    @param proc reference to the process to be prepared (QProcess)
-    @param encoding encoding to be used by the process (string)
-    @param language language to be set (string)
+    @param proc reference to the process to be prepared
+    @type QProcess
+    @param encoding encoding to be used by the process
+    @type str
+    @param language language to be set
+    @type str
     """
     env = QProcessEnvironment.systemEnvironment()
     env.insert("HGPLAIN", '1')
@@ -65,10 +98,12 @@
     version = ()
     errorMsg = ""
     
+    exe = getHgExecutable()
+    
     args = ["version"]
     args.extend(plugin.getGlobalOptions())
     process = QProcess()
-    process.start('hg', args)
+    process.start(exe, args)
     procStarted = process.waitForStarted(5000)
     if procStarted:
         finished = process.waitForFinished(30000)
--- a/eric6/Plugins/VcsPlugins/vcsMercurial/hg.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Plugins/VcsPlugins/vcsMercurial/hg.py	Thu Jun 03 11:39:23 2021 +0200
@@ -1835,8 +1835,9 @@
             if res:
                 dia.exec()
                 if commit:
+                    project = e5App().getObject("Project")
                     self.vcsCommit(
-                        name,
+                        project.getProjectPath(),
                         self.tr("Created new branch <{0}>.").format(
                             name))
     
--- a/eric6/Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py	Thu Jun 03 11:39:23 2021 +0200
@@ -44,6 +44,8 @@
         self.eStartWithCompleter = E5FileCompleter(self.eStartWith)
         self.eWorkDirCompleter = E5DirCompleter(self.eWorkDir)
         
+        self.__dialogVariant = dialogVariant
+        
         self.__typeButtonsGroup = QButtonGroup(self)
         self.__typeButtonsGroup.setExclusive(True)
         self.__typeButtonsGroup.addButton(self.rOpenFile, 1)
@@ -61,7 +63,6 @@
             self.__toggleInitialFilterAndResult)
         self.__toggleInitialFilterAndResult(1)
         
-        self.__dialogVariant = dialogVariant
         if self.__dialogVariant == -1:
             self.pyqtComboBox.addItems(["eric"])
             self.setWindowTitle(self.tr("E5FileDialog Wizard"))
--- a/eric6/Preferences/ConfigurationPages/NetworkPage.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Preferences/ConfigurationPages/NetworkPage.py	Thu Jun 03 11:39:23 2021 +0200
@@ -41,25 +41,25 @@
         self.downloadDirPicker.setMode(E5PathPickerModes.DirectoryMode)
         
         self.ftpProxyTypeCombo.addItem(
-            self.tr("No FTP Proxy"), E5FtpProxyType.NoProxy)
+            self.tr("No FTP Proxy"), E5FtpProxyType.NO_PROXY)
         self.ftpProxyTypeCombo.addItem(
             self.tr("No Proxy Authentication required"),
-            E5FtpProxyType.NonAuthorizing)
+            E5FtpProxyType.NON_AUTHORIZING)
         self.ftpProxyTypeCombo.addItem(
-            self.tr("User@Server"), E5FtpProxyType.UserAtServer)
+            self.tr("User@Server"), E5FtpProxyType.USER_SERVER)
         self.ftpProxyTypeCombo.addItem(
-            self.tr("SITE"), E5FtpProxyType.Site)
+            self.tr("SITE"), E5FtpProxyType.SITE)
         self.ftpProxyTypeCombo.addItem(
-            self.tr("OPEN"), E5FtpProxyType.Open)
+            self.tr("OPEN"), E5FtpProxyType.OPEN)
         self.ftpProxyTypeCombo.addItem(
             self.tr("User@Proxyuser@Server"),
-            E5FtpProxyType.UserAtProxyuserAtServer)
+            E5FtpProxyType.USER_PROXYUSER_SERVER)
         self.ftpProxyTypeCombo.addItem(
-            self.tr("Proxyuser@Server"), E5FtpProxyType.ProxyuserAtServer)
+            self.tr("Proxyuser@Server"), E5FtpProxyType.PROXYUSER_SERVER)
         self.ftpProxyTypeCombo.addItem(
-            self.tr("AUTH and RESP"), E5FtpProxyType.AuthResp)
+            self.tr("AUTH and RESP"), E5FtpProxyType.AUTH_RESP)
         self.ftpProxyTypeCombo.addItem(
-            self.tr("Bluecoat Proxy"), E5FtpProxyType.Bluecoat)
+            self.tr("Bluecoat Proxy"), E5FtpProxyType.BLUECOAT)
         
         # set initial values
         self.downloadDirPicker.setText(Preferences.getUI("DownloadPath"))
@@ -204,8 +204,7 @@
             self.ftpProxyPortSpin.value())
         Preferences.setUI(
             "ProxyType/Ftp",
-            self.ftpProxyTypeCombo.itemData(
-                self.ftpProxyTypeCombo.currentIndex()))
+            self.ftpProxyTypeCombo.currentData())
         Preferences.setUI(
             "ProxyUser/Ftp",
             self.ftpProxyUserEdit.text())
@@ -232,17 +231,17 @@
         @param index index of the selected item (integer)
         """
         proxyType = self.ftpProxyTypeCombo.itemData(index)
-        self.ftpProxyHostEdit.setEnabled(proxyType != E5FtpProxyType.NoProxy)
-        self.ftpProxyPortSpin.setEnabled(proxyType != E5FtpProxyType.NoProxy)
+        self.ftpProxyHostEdit.setEnabled(proxyType != E5FtpProxyType.NO_PROXY)
+        self.ftpProxyPortSpin.setEnabled(proxyType != E5FtpProxyType.NO_PROXY)
         self.ftpProxyUserEdit.setEnabled(
-            proxyType not in [E5FtpProxyType.NoProxy,
-                              E5FtpProxyType.NonAuthorizing])
+            proxyType not in [E5FtpProxyType.NO_PROXY,
+                              E5FtpProxyType.NON_AUTHORIZING])
         self.ftpProxyPasswordEdit.setEnabled(
-            proxyType not in [E5FtpProxyType.NoProxy,
-                              E5FtpProxyType.NonAuthorizing])
+            proxyType not in [E5FtpProxyType.NO_PROXY,
+                              E5FtpProxyType.NON_AUTHORIZING])
         self.ftpProxyAccountEdit.setEnabled(
-            proxyType not in [E5FtpProxyType.NoProxy,
-                              E5FtpProxyType.NonAuthorizing])
+            proxyType not in [E5FtpProxyType.NO_PROXY,
+                              E5FtpProxyType.NON_AUTHORIZING])
     
 
 def create(dlg):
--- a/eric6/Preferences/__init__.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Preferences/__init__.py	Thu Jun 03 11:39:23 2021 +0200
@@ -201,7 +201,7 @@
         "ProxyPassword/Http": "",
         "ProxyPassword/Https": "",
         "ProxyPassword/Ftp": "",
-        "ProxyType/Ftp": E5FtpProxyType.NoProxy,
+        "ProxyType/Ftp": E5FtpProxyType.NO_PROXY,
         "ProxyAccount/Ftp": "",
         "ProxyExceptions": "localhost,127.0.0.,::1",
         
@@ -1933,12 +1933,15 @@
             "UI/" + key, prefClass.uiDefaults[key]))
     elif key in ["TabViewManagerFilenameLength", "CaptionFilenameLength",
                  "ProxyPort/Http", "ProxyPort/Https", "ProxyPort/Ftp",
-                 "ProxyType/Ftp", "OpenOnStartup",
-                 "PerformVersionCheck", "RecentNumber", "NotificationTimeout",
-                 "SidebarDelay", "KeyboardInputInterval",
-                 "BackgroundServiceProcesses", "MinimumMessageTypeSeverity"]:
+                 "OpenOnStartup", "PerformVersionCheck", "RecentNumber",
+                 "NotificationTimeout", "SidebarDelay",
+                 "KeyboardInputInterval", "BackgroundServiceProcesses",
+                 "MinimumMessageTypeSeverity"]:
         return int(prefClass.settings.value(
             "UI/" + key, prefClass.uiDefaults[key]))
+    elif key in ["ProxyType/Ftp", ]:
+        return E5FtpProxyType(int(prefClass.settings.value(
+            "UI/" + key, prefClass.uiDefaults[key].value)))
     elif key in ["ProxyPassword/Http", "ProxyPassword/Https",
                  "ProxyPassword/Ftp", ]:
         from Utilities.crypto import pwConvert
@@ -2015,6 +2018,9 @@
                  "ProxyPassword/Ftp", ]:
         from Utilities.crypto import pwConvert
         prefClass.settings.setValue("UI/" + key, pwConvert(value, encode=True))
+    elif key in ["ProxyType/Ftp", ]:
+        # value is an enum.Enum derived item
+        prefClass.settings.setValue("UI/" + key, value.value)
     else:
         prefClass.settings.setValue("UI/" + key, value)
     
--- a/eric6/Project/Project.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Project/Project.py	Thu Jun 03 11:39:23 2021 +0200
@@ -5123,18 +5123,19 @@
             self.tr("""Include module names?"""),
             yesDefault=True)
         
-        from Graphics.UMLDialog import UMLDialog
-        self.applicationDiagram = UMLDialog(UMLDialog.ApplicationDiagram, self,
-                                            self.parent(), noModules=not res)
+        from Graphics.UMLDialog import UMLDialog, UMLDialogType
+        self.applicationDiagram = UMLDialog(
+            UMLDialogType.APPLICATION_DIAGRAM, self, self.parent(),
+            noModules=not res)
         self.applicationDiagram.show()
     
     def __loadDiagram(self):
         """
         Private slot to load a diagram from file.
         """
-        from Graphics.UMLDialog import UMLDialog
+        from Graphics.UMLDialog import UMLDialog, UMLDialogType
         self.loadedDiagram = None
-        loadedDiagram = UMLDialog(UMLDialog.NoDiagram,
+        loadedDiagram = UMLDialog(UMLDialogType.NO_DIAGRAM,
                                   self, parent=self.parent())
         if loadedDiagram.load():
             self.loadedDiagram = loadedDiagram
--- a/eric6/Project/ProjectOthersBrowser.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Project/ProjectOthersBrowser.py	Thu Jun 03 11:39:23 2021 +0200
@@ -254,7 +254,8 @@
                     self.svgFile.emit(itm.fileName())
                 elif itm.isPixmapFile():
                     self.pixmapFile.emit(itm.fileName())
-                # TODO: add entry for eric graphics files
+                elif itm.isEricGraphicsFile():
+                    self.umlFile.emit(itm.fileName())
                 else:
                     if Utilities.MimeTypes.isTextFile(itm.fileName()):
                         self.sourceFile.emit(itm.fileName())
--- a/eric6/Project/ProjectSourcesBrowser.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Project/ProjectSourcesBrowser.py	Thu Jun 03 11:39:23 2021 +0200
@@ -1077,9 +1077,11 @@
             self.tr("Class Diagram"),
             self.tr("""Include class attributes?"""),
             yesDefault=True)
-        from Graphics.UMLDialog import UMLDialog
-        self.classDiagram = UMLDialog(UMLDialog.ClassDiagram, self.project, fn,
-                                      self, noAttrs=not res)
+        
+        from Graphics.UMLDialog import UMLDialog, UMLDialogType
+        self.classDiagram = UMLDialog(
+            UMLDialogType.CLASS_DIAGRAM, self.project, fn,
+            self, noAttrs=not res)
         self.classDiagram.show()
         
     def __showImportsDiagram(self):
@@ -1091,14 +1093,15 @@
             fn = itm.fileName()
         except AttributeError:
             fn = itm.dirName()
-        package = os.path.isdir(fn) and fn or os.path.dirname(fn)
+        package = fn if os.path.isdir(fn) else os.path.dirname(fn)
         res = E5MessageBox.yesNo(
             self,
             self.tr("Imports Diagram"),
             self.tr("""Include imports from external modules?"""))
-        from Graphics.UMLDialog import UMLDialog
+        
+        from Graphics.UMLDialog import UMLDialog, UMLDialogType
         self.importsDiagram = UMLDialog(
-            UMLDialog.ImportsDiagram, self.project, package,
+            UMLDialogType.IMPORTS_DIAGRAM, self.project, package,
             self, showExternalImports=res)
         self.importsDiagram.show()
         
@@ -1111,15 +1114,16 @@
             fn = itm.fileName()
         except AttributeError:
             fn = itm.dirName()
-        package = os.path.isdir(fn) and fn or os.path.dirname(fn)
+        package = fn if os.path.isdir(fn) else os.path.dirname(fn)
         res = E5MessageBox.yesNo(
             self,
             self.tr("Package Diagram"),
             self.tr("""Include class attributes?"""),
             yesDefault=True)
-        from Graphics.UMLDialog import UMLDialog
+        
+        from Graphics.UMLDialog import UMLDialog, UMLDialogType
         self.packageDiagram = UMLDialog(
-            UMLDialog.PackageDiagram, self.project, package,
+            UMLDialogType.PACKAGE_DIAGRAM, self.project, package,
             self, noAttrs=not res)
         self.packageDiagram.show()
         
@@ -1132,9 +1136,10 @@
             self.tr("Application Diagram"),
             self.tr("""Include module names?"""),
             yesDefault=True)
-        from Graphics.UMLDialog import UMLDialog
+        
+        from Graphics.UMLDialog import UMLDialog, UMLDialogType
         self.applicationDiagram = UMLDialog(
-            UMLDialog.ApplicationDiagram, self.project,
+            UMLDialogType.APPLICATION_DIAGRAM, self.project,
             self, noModules=not res)
         self.applicationDiagram.show()
     
@@ -1142,10 +1147,10 @@
         """
         Private slot to load a diagram from file.
         """
-        from Graphics.UMLDialog import UMLDialog
+        from Graphics.UMLDialog import UMLDialog, UMLDialogType
         self.loadedDiagram = None
         loadedDiagram = UMLDialog(
-            UMLDialog.NoDiagram, self.project, parent=self)
+            UMLDialogType.NO_DIAGRAM, self.project, parent=self)
         if loadedDiagram.load():
             self.loadedDiagram = loadedDiagram
             self.loadedDiagram.show(fromFile=True)
--- a/eric6/PyUnit/UnittestDialog.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/PyUnit/UnittestDialog.py	Thu Jun 03 11:39:23 2021 +0200
@@ -578,29 +578,25 @@
         @rtype list of str
         """
         selectedTests = []
-        if parent is None:
+        itemsList = [
             # top level
-            for index in range(self.discoveryList.topLevelItemCount()):
-                itm = self.discoveryList.topLevelItem(index)
-                if itm.checkState(0) == Qt.CheckState.Checked:
-                    selectedTests.append(
-                        itm.data(0, UnittestDialog.TestCaseNameRole))
-                    # ignore children because they are included implicitly
-                elif itm.childCount():
-                    # recursively check children
-                    selectedTests.extend(self.__selectedTestCases(itm))
+            self.discoveryList.topLevelItem(index)
+            for index in range(self.discoveryList.topLevelItemCount())
+        ] if parent is None else [
+            parent.child(index)
+            for index in range(parent.childCount())
+        ]
         
-        else:
-            # parent item with children
-            for index in range(parent.childCount()):
-                itm = parent.child(index)
-                if itm.checkState(0) == Qt.CheckState.Checked:
-                    selectedTests.append(
-                        itm.data(0, UnittestDialog.TestCaseNameRole))
-                    # ignore children because they are included implicitly
-                elif itm.childCount():
-                    # recursively check children
-                    selectedTests.extend(self.__selectedTestCases(itm))
+        for itm in itemsList:
+            if (
+                itm.checkState(0) == Qt.CheckState.Checked and
+                itm.childCount() == 0
+            ):
+                selectedTests.append(
+                    itm.data(0, UnittestDialog.TestCaseNameRole))
+            if itm.childCount():
+                # recursively check children
+                selectedTests.extend(self.__selectedTestCases(itm))
         
         return selectedTests
     
@@ -881,16 +877,22 @@
             self.testResult = QtTestResult(
                 self, self.failfastCheckBox.isChecked())
             self.totalTests = test.countTestCases()
-            self.__failedTests = []
-            self.__setRunningMode()
-            if cover:
-                cover.start()
-            test.run(self.testResult)
-            if cover:
-                cover.stop()
-                cover.save()
-            self.__setStoppedMode()
-            sys.path = self.savedSysPath
+            if self.totalTests == 0:
+                E5MessageBox.warning(
+                    self,
+                    self.tr("Unittest"),
+                    self.tr("""No unittest were found. Aborting..."""))
+            else:
+                self.__failedTests = []
+                self.__setRunningMode()
+                if cover:
+                    cover.start()
+                test.run(self.testResult)
+                if cover:
+                    cover.stop()
+                    cover.save()
+                self.__setStoppedMode()
+                sys.path = self.savedSysPath
     
     def __UTPrepared(self, nrTests, exc_type, exc_value):
         """
--- a/eric6/QScintilla/Editor.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/QScintilla/Editor.py	Thu Jun 03 11:39:23 2021 +0200
@@ -2723,7 +2723,7 @@
                 fromLine, fromIndex, toLine, toIndex = self.getSelection()
                 if toIndex == 0:
                     toLine -= 1
-                # Qscintilla seems to print one line more than told
+                # QScintilla seems to print one line more than told
                 res = printer.printRange(self, fromLine, toLine - 1)
             else:
                 res = printer.printRange(self)
@@ -7556,12 +7556,12 @@
         """
         Private method to handle the Class Diagram context menu action.
         """
-        from Graphics.UMLDialog import UMLDialog
+        from Graphics.UMLDialog import UMLDialog, UMLDialogType
         if not self.checkDirty():
             return
         
         self.classDiagram = UMLDialog(
-            UMLDialog.ClassDiagram, self.project, self.fileName,
+            UMLDialogType.CLASS_DIAGRAM, self.project, self.fileName,
             self, noAttrs=False)
         self.classDiagram.show()
         
@@ -7569,7 +7569,7 @@
         """
         Private method to handle the Package Diagram context menu action.
         """
-        from Graphics.UMLDialog import UMLDialog
+        from Graphics.UMLDialog import UMLDialog, UMLDialogType
         if not self.checkDirty():
             return
         
@@ -7583,7 +7583,7 @@
             self.tr("""Include class attributes?"""),
             yesDefault=True)
         self.packageDiagram = UMLDialog(
-            UMLDialog.PackageDiagram, self.project, package,
+            UMLDialogType.PACKAGE_DIAGRAM, self.project, package,
             self, noAttrs=not res)
         self.packageDiagram.show()
         
@@ -7591,20 +7591,17 @@
         """
         Private method to handle the Imports Diagram context menu action.
         """
-        from Graphics.UMLDialog import UMLDialog
+        from Graphics.UMLDialog import UMLDialog, UMLDialogType
         if not self.checkDirty():
             return
         
-        package = (
-            os.path.isdir(self.fileName) and
-            self.fileName or os.path.dirname(self.fileName)
-        )
+        package = os.path.dirname(self.fileName)
         res = E5MessageBox.yesNo(
             self,
             self.tr("Imports Diagram"),
             self.tr("""Include imports from external modules?"""))
         self.importsDiagram = UMLDialog(
-            UMLDialog.ImportsDiagram, self.project, package,
+            UMLDialogType.IMPORTS_DIAGRAM, self.project, package,
             self, showExternalImports=res)
         self.importsDiagram.show()
         
@@ -7612,14 +7609,14 @@
         """
         Private method to handle the Imports Diagram context menu action.
         """
-        from Graphics.UMLDialog import UMLDialog
+        from Graphics.UMLDialog import UMLDialog, UMLDialogType
         res = E5MessageBox.yesNo(
             self,
             self.tr("Application Diagram"),
             self.tr("""Include module names?"""),
             yesDefault=True)
         self.applicationDiagram = UMLDialog(
-            UMLDialog.ApplicationDiagram, self.project,
+            UMLDialogType.APPLICATION_DIAGRAM, self.project,
             self, noModules=not res)
         self.applicationDiagram.show()
     
@@ -7627,9 +7624,9 @@
         """
         Private slot to load a diagram from file.
         """
-        from Graphics.UMLDialog import UMLDialog
+        from Graphics.UMLDialog import UMLDialog, UMLDialogType
         self.loadedDiagram = UMLDialog(
-            UMLDialog.NoDiagram, self.project, parent=self)
+            UMLDialogType.NO_DIAGRAM, self.project, parent=self)
         if self.loadedDiagram.load():
             self.loadedDiagram.show(fromFile=True)
         else:
--- a/eric6/QScintilla/Lexers/__init__.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/QScintilla/Lexers/__init__.py	Thu Jun 03 11:39:23 2021 +0200
@@ -905,6 +905,7 @@
         '*.e6t': "XML",
         '*.ecj': "JSON",
         '*.edj': "JSON",
+        '*.egj': "JSON",
         '*.ehj': "JSON",
         '*.ekj': "JSON",
         '*.emj': "JSON",
--- a/eric6/QScintilla/MiniEditor.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/QScintilla/MiniEditor.py	Thu Jun 03 11:39:23 2021 +0200
@@ -3060,7 +3060,7 @@
                 )
                 if toIndex == 0:
                     toLine -= 1
-                # Qscintilla seems to print one line more than told
+                # QScintilla seems to print one line more than told
                 res = printer.printRange(self.__textEdit, fromLine, toLine - 1)
             else:
                 res = printer.printRange(self.__textEdit)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/eric6/Styles/eric6_Light.ehj	Thu Jun 03 11:39:23 2021 +0200
@@ -0,0 +1,11689 @@
+{
+  "header": {
+    "comment": "eric highlighting styles file",
+    "saved": "2021-05-16, 11:18:43",
+    "author": "Detlev Offenbach <detlev@die-offenbachs.de>"
+  },
+  "lexers": [
+    {
+      "name": "Bash",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Error",
+          "style": 1,
+          "substyle": -1,
+          "color": "#ffff00",
+          "paper": "#ff0000",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 3,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 4,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 5,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 7,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 8,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Scalar",
+          "style": 9,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffe0e0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Parameter expansion",
+          "style": 10,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffe0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Backticks",
+          "style": 11,
+          "substyle": -1,
+          "color": "#ffff00",
+          "paper": "#a08080",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Here document delimiter",
+          "style": 12,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ddd0dd",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted here document",
+          "style": 13,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ddd0dd",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Batch",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 2,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Label",
+          "style": 3,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#606060",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Hide command character",
+          "style": 4,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "External command",
+          "style": 5,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Variable",
+          "style": 6,
+          "substyle": -1,
+          "color": "#800080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 7,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "C++",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "C comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "C++ comment",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style C comment",
+          "style": 3,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 4,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 5,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "IDL UUID",
+          "style": 8,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Pre-processor block",
+          "style": 9,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 10,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 11,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unclosed string",
+          "style": 12,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#e0c0e0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "C# verbatim string",
+          "style": 13,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#e0ffe0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaScript regular expression",
+          "style": 14,
+          "substyle": -1,
+          "color": "#3f7f3f",
+          "paper": "#e0f0e0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style C++ comment",
+          "style": 15,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Secondary keywords and identifiers",
+          "style": 16,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc keyword",
+          "style": 17,
+          "substyle": -1,
+          "color": "#3060a0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc keyword error",
+          "style": 18,
+          "substyle": -1,
+          "color": "#804020",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Global classes and typedefs",
+          "style": 19,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "C++ raw string",
+          "style": 20,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#fff3ff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Vala triple-quoted verbatim string",
+          "style": 21,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#e0ffe0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Pike hash-quoted string",
+          "style": 22,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#e7ffd7",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Pre-processor C comment",
+          "style": 23,
+          "substyle": -1,
+          "color": "#659900",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style pre-processor comment",
+          "style": 24,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User-defined literal",
+          "style": 25,
+          "substyle": -1,
+          "color": "#c06000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Task marker",
+          "style": 26,
+          "substyle": -1,
+          "color": "#be07ff",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Escape sequence",
+          "style": 27,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive default",
+          "style": 64,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive C comment",
+          "style": 65,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive C++ comment",
+          "style": 66,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc style C comment",
+          "style": 67,
+          "substyle": -1,
+          "color": "#d0d0d0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive number",
+          "style": 68,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive keyword",
+          "style": 69,
+          "substyle": -1,
+          "color": "#9090b0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive double-quoted string",
+          "style": 70,
+          "substyle": -1,
+          "color": "#b090b0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive single-quoted string",
+          "style": 71,
+          "substyle": -1,
+          "color": "#b090b0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive IDL UUID",
+          "style": 72,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive pre-processor block",
+          "style": 73,
+          "substyle": -1,
+          "color": "#b0b090",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive operator",
+          "style": 74,
+          "substyle": -1,
+          "color": "#b0b0b0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive identifier",
+          "style": 75,
+          "substyle": -1,
+          "color": "#b0b0b0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive unclosed string",
+          "style": 76,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#e0c0e0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive C# verbatim string",
+          "style": 77,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#e0ffe0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaScript regular expression",
+          "style": 78,
+          "substyle": -1,
+          "color": "#7faf7f",
+          "paper": "#e0f0e0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc style C++ comment",
+          "style": 79,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive secondary keywords and identifiers",
+          "style": 80,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc keyword",
+          "style": 81,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc keyword error",
+          "style": 82,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive global classes and typedefs",
+          "style": 83,
+          "substyle": -1,
+          "color": "#b0b0b0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive C++ raw string",
+          "style": 84,
+          "substyle": -1,
+          "color": "#b090b0",
+          "paper": "#fff3ff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive Vala triple-quoted verbatim string",
+          "style": 85,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#e0ffe0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive Pike hash-quoted string",
+          "style": 86,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#e7ffd7",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive pre-processor C comment",
+          "style": 87,
+          "substyle": -1,
+          "color": "#a0c090",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc style pre-processor comment",
+          "style": 88,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive user-defined literal",
+          "style": 89,
+          "substyle": -1,
+          "color": "#d7a090",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive task marker",
+          "style": 90,
+          "substyle": -1,
+          "color": "#c3a1cf",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive escape sequence",
+          "style": 91,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Additional Identifier",
+          "style": 11,
+          "substyle": 0,
+          "color": "#ee00aa",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": "std map string vector"
+        },
+        {
+          "description": "Additional JavaDoc keyword",
+          "style": 17,
+          "substyle": 0,
+          "color": "#00aaee",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": "check"
+        },
+        {
+          "description": "Inactive additional identifier",
+          "style": 75,
+          "substyle": 0,
+          "color": "#bb6666",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": "std map string vector"
+        },
+        {
+          "description": "Inactive additional JavaDoc keyword",
+          "style": 81,
+          "substyle": 0,
+          "color": "#6699aa",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": "check"
+        }
+      ]
+    },
+    {
+      "name": "C#",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "C comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "C++ comment",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style C comment",
+          "style": 3,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 4,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 5,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "IDL UUID",
+          "style": 8,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Pre-processor block",
+          "style": 9,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 10,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 11,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unclosed string",
+          "style": 12,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Verbatim string",
+          "style": 13,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#e0ffe0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaScript regular expression",
+          "style": 14,
+          "substyle": -1,
+          "color": "#3f7f3f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style C++ comment",
+          "style": 15,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Secondary keywords and identifiers",
+          "style": 16,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc keyword",
+          "style": 17,
+          "substyle": -1,
+          "color": "#3060a0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc keyword error",
+          "style": 18,
+          "substyle": -1,
+          "color": "#804020",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Global classes and typedefs",
+          "style": 19,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "C++ raw string",
+          "style": 20,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Vala triple-quoted verbatim string",
+          "style": 21,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Pike hash-quoted string",
+          "style": 22,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Pre-processor C comment",
+          "style": 23,
+          "substyle": -1,
+          "color": "#659900",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style pre-processor comment",
+          "style": 24,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User-defined literal",
+          "style": 25,
+          "substyle": -1,
+          "color": "#c06000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Task marker",
+          "style": 26,
+          "substyle": -1,
+          "color": "#be07ff",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Escape sequence",
+          "style": 27,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive default",
+          "style": 64,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive C comment",
+          "style": 65,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive C++ comment",
+          "style": 66,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc style C comment",
+          "style": 67,
+          "substyle": -1,
+          "color": "#d0d0d0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive number",
+          "style": 68,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive keyword",
+          "style": 69,
+          "substyle": -1,
+          "color": "#9090b0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive double-quoted string",
+          "style": 70,
+          "substyle": -1,
+          "color": "#b090b0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive single-quoted string",
+          "style": 71,
+          "substyle": -1,
+          "color": "#b090b0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive IDL UUID",
+          "style": 72,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive pre-processor block",
+          "style": 73,
+          "substyle": -1,
+          "color": "#b0b090",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive operator",
+          "style": 74,
+          "substyle": -1,
+          "color": "#b0b0b0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive identifier",
+          "style": 75,
+          "substyle": -1,
+          "color": "#b0b0b0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive unclosed string",
+          "style": 76,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive C# verbatim string",
+          "style": 77,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaScript regular expression",
+          "style": 78,
+          "substyle": -1,
+          "color": "#7faf7f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc style C++ comment",
+          "style": 79,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive secondary keywords and identifiers",
+          "style": 80,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc keyword",
+          "style": 81,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc keyword error",
+          "style": 82,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive global classes and typedefs",
+          "style": 83,
+          "substyle": -1,
+          "color": "#b0b0b0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive C++ raw string",
+          "style": 84,
+          "substyle": -1,
+          "color": "#b090b0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive Vala triple-quoted verbatim string",
+          "style": 85,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive Pike hash-quoted string",
+          "style": 86,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive pre-processor C comment",
+          "style": 87,
+          "substyle": -1,
+          "color": "#a0c090",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc style pre-processor comment",
+          "style": 88,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive user-defined literal",
+          "style": 89,
+          "substyle": -1,
+          "color": "#d7a090",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive task marker",
+          "style": 90,
+          "substyle": -1,
+          "color": "#c3a1cf",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive escape sequence",
+          "style": 91,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "CMake",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "String",
+          "style": 2,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#eeeeee",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Left quoted string",
+          "style": 3,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#eeeeee",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Right quoted string",
+          "style": 4,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#eeeeee",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Function",
+          "style": 5,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Variable",
+          "style": 6,
+          "substyle": -1,
+          "color": "#800000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Label",
+          "style": 7,
+          "substyle": -1,
+          "color": "#cc3300",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined",
+          "style": 8,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "WHILE block",
+          "style": 9,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "FOREACH block",
+          "style": 10,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "IF block",
+          "style": 11,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "MACRO block",
+          "style": 12,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Variable within a string",
+          "style": 13,
+          "substyle": -1,
+          "color": "#cc3300",
+          "paper": "#eeeeee",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 14,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "CSS",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#ff0080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Tag",
+          "style": 1,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Class selector",
+          "style": 2,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Pseudo-class",
+          "style": 3,
+          "substyle": -1,
+          "color": "#800000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unknown pseudo-class",
+          "style": 4,
+          "substyle": -1,
+          "color": "#ff0000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 5,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "CSS1 property",
+          "style": 6,
+          "substyle": -1,
+          "color": "#0040e0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unknown property",
+          "style": 7,
+          "substyle": -1,
+          "color": "#ff0000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Value",
+          "style": 8,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 9,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ID selector",
+          "style": 10,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Important",
+          "style": 11,
+          "substyle": -1,
+          "color": "#ff8000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "@-rule",
+          "style": 12,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 13,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 14,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "CSS2 property",
+          "style": 15,
+          "substyle": -1,
+          "color": "#00a0e0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Attribute",
+          "style": 16,
+          "substyle": -1,
+          "color": "#800000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "CSS3 property",
+          "style": 17,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Pseudo-element",
+          "style": 18,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Extended CSS property",
+          "style": 19,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Extended pseudo-class",
+          "style": 20,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Extended pseudo-element",
+          "style": 21,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Media rule",
+          "style": 22,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Variable",
+          "style": 23,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Cython",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 3,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 4,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 5,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Triple single-quoted string",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Triple double-quoted string",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Class name",
+          "style": 8,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Function or method name",
+          "style": 9,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 10,
+          "substyle": -1,
+          "color": "#31363b",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 11,
+          "substyle": -1,
+          "color": "#31363b",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment block",
+          "style": 12,
+          "substyle": -1,
+          "color": "#7f7f7f",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unclosed string",
+          "style": 13,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#e0c0e0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Highlighted identifier",
+          "style": 14,
+          "substyle": -1,
+          "color": "#407090",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Decorator",
+          "style": 15,
+          "substyle": -1,
+          "color": "#805000",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted f-string",
+          "style": 16,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted f-string",
+          "style": 17,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Triple single-quoted f-string",
+          "style": 18,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Triple double-quoted f-string",
+          "style": 19,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Standard Library Modules",
+          "style": 11,
+          "substyle": 0,
+          "color": "#dd9900",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": "__main__ _dummy_thread _thread abc aifc argparse array ast asynchat asyncio\n asyncore atexit audioop base64 bdb binascii binhex bisect builtins bz2\n calendar cgi cgitb chunk cmath cmd code codecs codeop collections colorsys\n compileall concurrent configparser contextlib copy copyreg crypt csv ctypes\n curses datetime dbm decimal difflib dis distutils dummy_threading email\n ensurepip enum errno faulthandler fcntl filecmp fileinput fnmatch formatter\n fpectl fractions ftplib functools gc getopt getpass gettext glob grp gzip\n hashlib heapq hmac html http http imaplib imghdr importlib inspect io\n ipaddress itertools json keyword linecache locale logging lzma macpath\n mailbox mailcap marshal math mimetypes mmap modulefinder msilib msvcrt\n multiprocessing netrc nis nntplib numbers operator os ossaudiodev parser path\n pathlib pdb pickle pickletools pipes pkgutil platform plistlib poplib posix\n pprint pty pwd py_compile pyclbr queue quopri random re readline reprlib\n resource rlcompleter runpy sched select selectors shelve shlex shutil signal\n site smtpd smtplib sndhdr socket socketserver spwd sqlite3 ssl stat statistics\n string stringprep struct subprocess sunau symbol symtable sys sysconfig syslog\n tabnanny tarfile telnetlib tempfile termios textwrap threading time timeit\n tkinter token tokenize trace traceback tracemalloc tty turtle types\n unicodedata unittest urllib uu uuid venv warnings wave weakref webbrowser\n winreg winsound wsgiref xdrlib xml xmlrpc zipfile zipimport zlib"
+        },
+        {
+          "description": "__future__ Imports",
+          "style": 11,
+          "substyle": 1,
+          "color": "#ee00aa",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,1,0,0,0,0",
+          "eolfill": false,
+          "words": "__future__ with_statement unicode_literals print_function division\n absolute_import generator_stop annotations"
+        },
+        {
+          "description": "PyQt5 Modules",
+          "style": 11,
+          "substyle": 2,
+          "color": "#44aadd",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": "PyQt5 Qsci Qt QtCore QtDBus QtDesigner QtGui QtHelp QtLocation QtMacExtras QtMultimedia QtMultimediaWidgets QtNetwork QtNetworkAuth QtNfc QtOpenGL QtPositioning QtPrintSupport QtQml QtQuick QtQuickWidgets QtRemoteObjects QtSensors QtSerialPort QtSql QtSvg QtTest QtWebChannel QtWebEngine QtWebEngineCore QtWebEngineWidgets QtWebSockets QtWidgets QtWinExtras QtX11Extras QtXml QtXmlPatterns sip QtWebKit QtWebKitWidgets"
+        },
+        {
+          "description": "Cython Specifics",
+          "style": 11,
+          "substyle": 3,
+          "color": "#dd0000",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": "cython pyximport Cython __cinit__ __dealloc__"
+        }
+      ]
+    },
+    {
+      "name": "D",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Block comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Line comment",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "DDoc style block comment",
+          "style": 3,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Nesting comment",
+          "style": 4,
+          "substyle": -1,
+          "color": "#a0c0a0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 5,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 6,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Secondary keyword",
+          "style": 7,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Documentation keyword",
+          "style": 8,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Type definition",
+          "style": 9,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "String",
+          "style": 10,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unclosed string",
+          "style": 11,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#e0c0e0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Character",
+          "style": 12,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 13,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 14,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "DDoc style line comment",
+          "style": 15,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "DDoc keyword",
+          "style": 16,
+          "substyle": -1,
+          "color": "#3060a0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "DDoc keyword error",
+          "style": 17,
+          "substyle": -1,
+          "color": "#804020",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Backquoted string",
+          "style": 18,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Raw string",
+          "style": 19,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 1",
+          "style": 20,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 2",
+          "style": 21,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 3",
+          "style": 22,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Diff",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Command",
+          "style": 2,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Header",
+          "style": 3,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Position",
+          "style": 4,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Removed line",
+          "style": 5,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Added line",
+          "style": 6,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Changed line",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f7f7f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Added adding patch",
+          "style": 8,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Removed adding patch",
+          "style": 9,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Added removing patch",
+          "style": 10,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Removed removing patch",
+          "style": 11,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Fortran",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 3,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 4,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unclosed string",
+          "style": 5,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#e0c0e0",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 6,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 7,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 8,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Intrinsic function",
+          "style": 9,
+          "substyle": -1,
+          "color": "#b00040",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Extended function",
+          "style": 10,
+          "substyle": -1,
+          "color": "#b04080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Pre-processor block",
+          "style": 11,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Dotted operator",
+          "style": 12,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Label",
+          "style": 13,
+          "substyle": -1,
+          "color": "#e0c0e0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Continuation",
+          "style": 14,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#f0e080",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Fortran77",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 3,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 4,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unclosed string",
+          "style": 5,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#e0c0e0",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 6,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 7,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 8,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Intrinsic function",
+          "style": 9,
+          "substyle": -1,
+          "color": "#b00040",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Extended function",
+          "style": 10,
+          "substyle": -1,
+          "color": "#b04080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Pre-processor block",
+          "style": 11,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Dotted operator",
+          "style": 12,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Label",
+          "style": 13,
+          "substyle": -1,
+          "color": "#e0c0e0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Continuation",
+          "style": 14,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#f0e080",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "HTML",
+      "styles": [
+        {
+          "description": "HTML default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Tag",
+          "style": 1,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unknown tag",
+          "style": 2,
+          "substyle": -1,
+          "color": "#ff0000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Attribute",
+          "style": 3,
+          "substyle": -1,
+          "color": "#008080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unknown attribute",
+          "style": 4,
+          "substyle": -1,
+          "color": "#ff0000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "HTML number",
+          "style": 5,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "HTML double-quoted string",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "HTML single-quoted string",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Other text in a tag",
+          "style": 8,
+          "substyle": -1,
+          "color": "#800080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "HTML comment",
+          "style": 9,
+          "substyle": -1,
+          "color": "#808000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Entity",
+          "style": 10,
+          "substyle": -1,
+          "color": "#800080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "End of a tag",
+          "style": 11,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Start of an XML fragment",
+          "style": 12,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "End of an XML fragment",
+          "style": 13,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Script tag",
+          "style": 14,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Start of an ASP fragment with @",
+          "style": 15,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffff00",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Start of an ASP fragment",
+          "style": 16,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffdf00",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "CDATA",
+          "style": 17,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffdf00",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Start of a PHP fragment",
+          "style": 18,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#ffefbf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unquoted HTML value",
+          "style": 19,
+          "substyle": -1,
+          "color": "#ff00ff",
+          "paper": "#ffefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP X-Code comment",
+          "style": 20,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SGML default",
+          "style": 21,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SGML command",
+          "style": 22,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "First parameter of an SGML command",
+          "style": 23,
+          "substyle": -1,
+          "color": "#006600",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SGML double-quoted string",
+          "style": 24,
+          "substyle": -1,
+          "color": "#800000",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SGML single-quoted string",
+          "style": 25,
+          "substyle": -1,
+          "color": "#993300",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SGML error",
+          "style": 26,
+          "substyle": -1,
+          "color": "#800000",
+          "paper": "#ff6666",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SGML special entity",
+          "style": 27,
+          "substyle": -1,
+          "color": "#3366ff",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SGML comment",
+          "style": 29,
+          "substyle": -1,
+          "color": "#808000",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "First parameter comment of an SGML command",
+          "style": 30,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SGML block default",
+          "style": 31,
+          "substyle": -1,
+          "color": "#000066",
+          "paper": "#cccce0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Start of a JavaScript fragment",
+          "style": 40,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaScript default",
+          "style": 41,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaScript comment",
+          "style": 42,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaScript line comment",
+          "style": 43,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style JavaScript comment",
+          "style": 44,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaScript number",
+          "style": 45,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaScript word",
+          "style": 46,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaScript keyword",
+          "style": 47,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaScript double-quoted string",
+          "style": 48,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaScript single-quoted string",
+          "style": 49,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaScript symbol",
+          "style": 50,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaScript unclosed string",
+          "style": 51,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#bfbbb0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaScript regular expression",
+          "style": 52,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffbbb0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Start of an ASP JavaScript fragment",
+          "style": 55,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript default",
+          "style": 56,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript comment",
+          "style": 57,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript line comment",
+          "style": 58,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style ASP JavaScript comment",
+          "style": 59,
+          "substyle": -1,
+          "color": "#7f7f7f",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript number",
+          "style": 60,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript word",
+          "style": 61,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript keyword",
+          "style": 62,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript double-quoted string",
+          "style": 63,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript single-quoted string",
+          "style": 64,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript symbol",
+          "style": 65,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript unclosed string",
+          "style": 66,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#bfbbb0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript regular expression",
+          "style": 67,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffbbb0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Start of a VBScript fragment",
+          "style": 70,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "VBScript default",
+          "style": 71,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "VBScript comment",
+          "style": 72,
+          "substyle": -1,
+          "color": "#008000",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "VBScript number",
+          "style": 73,
+          "substyle": -1,
+          "color": "#008080",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "VBScript keyword",
+          "style": 74,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "VBScript string",
+          "style": 75,
+          "substyle": -1,
+          "color": "#800080",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "VBScript identifier",
+          "style": 76,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "VBScript unclosed string",
+          "style": 77,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#7f7fff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Start of an ASP VBScript fragment",
+          "style": 80,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP VBScript default",
+          "style": 81,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#cfcfef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP VBScript comment",
+          "style": 82,
+          "substyle": -1,
+          "color": "#008000",
+          "paper": "#cfcfef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP VBScript number",
+          "style": 83,
+          "substyle": -1,
+          "color": "#008080",
+          "paper": "#cfcfef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP VBScript keyword",
+          "style": 84,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#cfcfef",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP VBScript string",
+          "style": 85,
+          "substyle": -1,
+          "color": "#800080",
+          "paper": "#cfcfef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP VBScript identifier",
+          "style": 86,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#cfcfef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP VBScript unclosed string",
+          "style": 87,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#7f7fff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Start of a Python fragment",
+          "style": 90,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Python default",
+          "style": 91,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python comment",
+          "style": 92,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python number",
+          "style": 93,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python double-quoted string",
+          "style": 94,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python single-quoted string",
+          "style": 95,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python keyword",
+          "style": 96,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python triple single-quoted string",
+          "style": 97,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python triple double-quoted string",
+          "style": 98,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python class name",
+          "style": 99,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python function or method name",
+          "style": 100,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python operator",
+          "style": 101,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python identifier",
+          "style": 102,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Start of an ASP Python fragment",
+          "style": 105,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP Python default",
+          "style": 106,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python comment",
+          "style": 107,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python number",
+          "style": 108,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python double-quoted string",
+          "style": 109,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python single-quoted string",
+          "style": 110,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python keyword",
+          "style": 111,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python triple single-quoted string",
+          "style": 112,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python triple double-quoted string",
+          "style": 113,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python class name",
+          "style": 114,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python function or method name",
+          "style": 115,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python operator",
+          "style": 116,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python identifier",
+          "style": 117,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "PHP default",
+          "style": 118,
+          "substyle": -1,
+          "color": "#000033",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "PHP double-quoted string",
+          "style": 119,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "PHP single-quoted string",
+          "style": 120,
+          "substyle": -1,
+          "color": "#009f00",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "PHP keyword",
+          "style": 121,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "PHP number",
+          "style": 122,
+          "substyle": -1,
+          "color": "#cc9900",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "PHP variable",
+          "style": 123,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "PHP comment",
+          "style": 124,
+          "substyle": -1,
+          "color": "#999999",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "PHP line comment",
+          "style": 125,
+          "substyle": -1,
+          "color": "#666666",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "PHP double-quoted variable",
+          "style": 126,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "PHP operator",
+          "style": 127,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "IDL",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "C comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "C++ comment",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style C comment",
+          "style": 3,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 4,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 5,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "UUID",
+          "style": 8,
+          "substyle": -1,
+          "color": "#804080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Pre-processor block",
+          "style": 9,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 10,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 11,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unclosed string",
+          "style": 12,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#e0c0e0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "C# verbatim string",
+          "style": 13,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#e0ffe0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaScript regular expression",
+          "style": 14,
+          "substyle": -1,
+          "color": "#3f7f3f",
+          "paper": "#e0f0e0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style C++ comment",
+          "style": 15,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Secondary keywords and identifiers",
+          "style": 16,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc keyword",
+          "style": 17,
+          "substyle": -1,
+          "color": "#3060a0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc keyword error",
+          "style": 18,
+          "substyle": -1,
+          "color": "#804020",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Global classes and typedefs",
+          "style": 19,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "C++ raw string",
+          "style": 20,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#fff3ff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Vala triple-quoted verbatim string",
+          "style": 21,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#e0ffe0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Pike hash-quoted string",
+          "style": 22,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#e7ffd7",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Pre-processor C comment",
+          "style": 23,
+          "substyle": -1,
+          "color": "#659900",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style pre-processor comment",
+          "style": 24,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User-defined literal",
+          "style": 25,
+          "substyle": -1,
+          "color": "#c06000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Task marker",
+          "style": 26,
+          "substyle": -1,
+          "color": "#be07ff",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Escape sequence",
+          "style": 27,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive default",
+          "style": 64,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive C comment",
+          "style": 65,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive C++ comment",
+          "style": 66,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc style C comment",
+          "style": 67,
+          "substyle": -1,
+          "color": "#d0d0d0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive number",
+          "style": 68,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive keyword",
+          "style": 69,
+          "substyle": -1,
+          "color": "#9090b0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive double-quoted string",
+          "style": 70,
+          "substyle": -1,
+          "color": "#b090b0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive single-quoted string",
+          "style": 71,
+          "substyle": -1,
+          "color": "#b090b0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive IDL UUID",
+          "style": 72,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive pre-processor block",
+          "style": 73,
+          "substyle": -1,
+          "color": "#b0b090",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive operator",
+          "style": 74,
+          "substyle": -1,
+          "color": "#b0b0b0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive identifier",
+          "style": 75,
+          "substyle": -1,
+          "color": "#b0b0b0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive unclosed string",
+          "style": 76,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#e0c0e0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive C# verbatim string",
+          "style": 77,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#e0ffe0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaScript regular expression",
+          "style": 78,
+          "substyle": -1,
+          "color": "#7faf7f",
+          "paper": "#e0f0e0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc style C++ comment",
+          "style": 79,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive secondary keywords and identifiers",
+          "style": 80,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc keyword",
+          "style": 81,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc keyword error",
+          "style": 82,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive global classes and typedefs",
+          "style": 83,
+          "substyle": -1,
+          "color": "#b0b0b0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive C++ raw string",
+          "style": 84,
+          "substyle": -1,
+          "color": "#b090b0",
+          "paper": "#fff3ff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive Vala triple-quoted verbatim string",
+          "style": 85,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#e0ffe0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive Pike hash-quoted string",
+          "style": 86,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#e7ffd7",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive pre-processor C comment",
+          "style": 87,
+          "substyle": -1,
+          "color": "#a0c090",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc style pre-processor comment",
+          "style": 88,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive user-defined literal",
+          "style": 89,
+          "substyle": -1,
+          "color": "#d7a090",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive task marker",
+          "style": 90,
+          "substyle": -1,
+          "color": "#c3a1cf",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive escape sequence",
+          "style": 91,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Java",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "C comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "C++ comment",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style C comment",
+          "style": 3,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 4,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 5,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "IDL UUID",
+          "style": 8,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Pre-processor block",
+          "style": 9,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 10,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 11,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unclosed string",
+          "style": 12,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#e0c0e0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "C# verbatim string",
+          "style": 13,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#e0ffe0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaScript regular expression",
+          "style": 14,
+          "substyle": -1,
+          "color": "#3f7f3f",
+          "paper": "#e0f0e0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style C++ comment",
+          "style": 15,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Secondary keywords and identifiers",
+          "style": 16,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc keyword",
+          "style": 17,
+          "substyle": -1,
+          "color": "#3060a0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc keyword error",
+          "style": 18,
+          "substyle": -1,
+          "color": "#804020",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Global classes and typedefs",
+          "style": 19,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "C++ raw string",
+          "style": 20,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#fff3ff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Vala triple-quoted verbatim string",
+          "style": 21,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#e0ffe0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Pike hash-quoted string",
+          "style": 22,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#e7ffd7",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Pre-processor C comment",
+          "style": 23,
+          "substyle": -1,
+          "color": "#659900",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style pre-processor comment",
+          "style": 24,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User-defined literal",
+          "style": 25,
+          "substyle": -1,
+          "color": "#c06000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Task marker",
+          "style": 26,
+          "substyle": -1,
+          "color": "#be07ff",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Escape sequence",
+          "style": 27,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive default",
+          "style": 64,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive C comment",
+          "style": 65,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive C++ comment",
+          "style": 66,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc style C comment",
+          "style": 67,
+          "substyle": -1,
+          "color": "#d0d0d0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive number",
+          "style": 68,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive keyword",
+          "style": 69,
+          "substyle": -1,
+          "color": "#9090b0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive double-quoted string",
+          "style": 70,
+          "substyle": -1,
+          "color": "#b090b0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive single-quoted string",
+          "style": 71,
+          "substyle": -1,
+          "color": "#b090b0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive IDL UUID",
+          "style": 72,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive pre-processor block",
+          "style": 73,
+          "substyle": -1,
+          "color": "#b0b090",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive operator",
+          "style": 74,
+          "substyle": -1,
+          "color": "#b0b0b0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive identifier",
+          "style": 75,
+          "substyle": -1,
+          "color": "#b0b0b0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive unclosed string",
+          "style": 76,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#e0c0e0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive C# verbatim string",
+          "style": 77,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#e0ffe0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaScript regular expression",
+          "style": 78,
+          "substyle": -1,
+          "color": "#7faf7f",
+          "paper": "#e0f0e0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc style C++ comment",
+          "style": 79,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive secondary keywords and identifiers",
+          "style": 80,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc keyword",
+          "style": 81,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc keyword error",
+          "style": 82,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive global classes and typedefs",
+          "style": 83,
+          "substyle": -1,
+          "color": "#b0b0b0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive C++ raw string",
+          "style": 84,
+          "substyle": -1,
+          "color": "#b090b0",
+          "paper": "#fff3ff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive Vala triple-quoted verbatim string",
+          "style": 85,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#e0ffe0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive Pike hash-quoted string",
+          "style": 86,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#e7ffd7",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive pre-processor C comment",
+          "style": 87,
+          "substyle": -1,
+          "color": "#a0c090",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc style pre-processor comment",
+          "style": 88,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive user-defined literal",
+          "style": 89,
+          "substyle": -1,
+          "color": "#d7a090",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive task marker",
+          "style": 90,
+          "substyle": -1,
+          "color": "#c3a1cf",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive escape sequence",
+          "style": 91,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "JavaScript",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "C comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "C++ comment",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style C comment",
+          "style": 3,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 4,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 5,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "IDL UUID",
+          "style": 8,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Pre-processor block",
+          "style": 9,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 10,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 11,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unclosed string",
+          "style": 12,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "C# verbatim string",
+          "style": 13,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Regular expression",
+          "style": 14,
+          "substyle": -1,
+          "color": "#3f7f3f",
+          "paper": "#e0f0ff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style C++ comment",
+          "style": 15,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Secondary keywords and identifiers",
+          "style": 16,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc keyword",
+          "style": 17,
+          "substyle": -1,
+          "color": "#3060a0",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc keyword error",
+          "style": 18,
+          "substyle": -1,
+          "color": "#804020",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Global classes and typedefs",
+          "style": 19,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "C++ raw string",
+          "style": 20,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Vala triple-quoted verbatim string",
+          "style": 21,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Pike hash-quoted string",
+          "style": 22,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Pre-processor C comment",
+          "style": 23,
+          "substyle": -1,
+          "color": "#659900",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style pre-processor comment",
+          "style": 24,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User-defined literal",
+          "style": 25,
+          "substyle": -1,
+          "color": "#c06000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Task marker",
+          "style": 26,
+          "substyle": -1,
+          "color": "#be07ff",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Escape sequence",
+          "style": 27,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive default",
+          "style": 64,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive C comment",
+          "style": 65,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive C++ comment",
+          "style": 66,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc style C comment",
+          "style": 67,
+          "substyle": -1,
+          "color": "#d0d0d0",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive number",
+          "style": 68,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive keyword",
+          "style": 69,
+          "substyle": -1,
+          "color": "#9090b0",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive double-quoted string",
+          "style": 70,
+          "substyle": -1,
+          "color": "#b090b0",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive single-quoted string",
+          "style": 71,
+          "substyle": -1,
+          "color": "#b090b0",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive IDL UUID",
+          "style": 72,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive pre-processor block",
+          "style": 73,
+          "substyle": -1,
+          "color": "#b0b090",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive operator",
+          "style": 74,
+          "substyle": -1,
+          "color": "#b0b0b0",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive identifier",
+          "style": 75,
+          "substyle": -1,
+          "color": "#b0b0b0",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive unclosed string",
+          "style": 76,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive C# verbatim string",
+          "style": 77,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaScript regular expression",
+          "style": 78,
+          "substyle": -1,
+          "color": "#7faf7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc style C++ comment",
+          "style": 79,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive secondary keywords and identifiers",
+          "style": 80,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc keyword",
+          "style": 81,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc keyword error",
+          "style": 82,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive global classes and typedefs",
+          "style": 83,
+          "substyle": -1,
+          "color": "#b0b0b0",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive C++ raw string",
+          "style": 84,
+          "substyle": -1,
+          "color": "#b090b0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive Vala triple-quoted verbatim string",
+          "style": 85,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive Pike hash-quoted string",
+          "style": 86,
+          "substyle": -1,
+          "color": "#90b090",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Inactive pre-processor C comment",
+          "style": 87,
+          "substyle": -1,
+          "color": "#a0c090",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive JavaDoc style pre-processor comment",
+          "style": 88,
+          "substyle": -1,
+          "color": "#c0c0c0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive user-defined literal",
+          "style": 89,
+          "substyle": -1,
+          "color": "#d7a090",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive task marker",
+          "style": 90,
+          "substyle": -1,
+          "color": "#c3a1cf",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inactive escape sequence",
+          "style": 91,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Lua",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#d0f0f0",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Line comment",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 4,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 5,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "String",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Character",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Literal string",
+          "style": 8,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#e0ffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Preprocessor",
+          "style": 9,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 10,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 11,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unclosed string",
+          "style": 12,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#e0c0e0",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Basic functions",
+          "style": 13,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#d0ffd0",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "String, table and maths functions",
+          "style": 14,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#d0d0ff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Coroutines, i/o and system facilities",
+          "style": 15,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffd0d0",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 1",
+          "style": 16,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 2",
+          "style": 17,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 3",
+          "style": 18,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 4",
+          "style": 19,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Label",
+          "style": 20,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Makefile",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "DejaVu Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Preprocessor",
+          "style": 2,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Variable",
+          "style": 3,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 4,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Target",
+          "style": 5,
+          "substyle": -1,
+          "color": "#a00000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Error",
+          "style": 9,
+          "substyle": -1,
+          "color": "#ffff00",
+          "paper": "#ff0000",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Matlab",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Command",
+          "style": 2,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 3,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 4,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 5,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 6,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 7,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 8,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Octave",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Command",
+          "style": 2,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 3,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 4,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 5,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 6,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 7,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 8,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Pascal",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "'{ ... }' style comment",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "'(* ... *)' style comment",
+          "style": 3,
+          "substyle": -1,
+          "color": "#7f7f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Line comment",
+          "style": 4,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "'{$ ... }' style pre-processor block",
+          "style": 5,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "'(*$ ... *)' style pre-processor block",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Charter,10,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Hexadecimal number",
+          "style": 8,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 9,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 10,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unclosed string",
+          "style": 11,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Character",
+          "style": 12,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 13,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inline asm",
+          "style": 14,
+          "substyle": -1,
+          "color": "#008080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Perl",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Error",
+          "style": 1,
+          "substyle": -1,
+          "color": "#ffff00",
+          "paper": "#ff0000",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "POD",
+          "style": 3,
+          "substyle": -1,
+          "color": "#004000",
+          "paper": "#e0ffe0",
+          "font": "Bitstream Charter,10,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 4,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 5,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 10,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 11,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Scalar",
+          "style": 12,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffe0e0",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Array",
+          "style": 13,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffe0",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Hash",
+          "style": 14,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffe0ff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Symbol table",
+          "style": 15,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#e0e0e0",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Regular expression",
+          "style": 17,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#a0ffa0",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Substitution",
+          "style": 18,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#f0e080",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Backticks",
+          "style": 20,
+          "substyle": -1,
+          "color": "#ffff00",
+          "paper": "#a08080",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Data section",
+          "style": 21,
+          "substyle": -1,
+          "color": "#600000",
+          "paper": "#fff0d8",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Here document delimiter",
+          "style": 22,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ddd0dd",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted here document",
+          "style": 23,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ddd0dd",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted here document",
+          "style": 24,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ddd0dd",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Backtick here document",
+          "style": 25,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ddd0dd",
+          "font": "Bitstream Vera Sans,9,-1,5,50,1,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Quoted string (q)",
+          "style": 26,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Quoted string (qq)",
+          "style": 27,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Quoted string (qx)",
+          "style": 28,
+          "substyle": -1,
+          "color": "#ffff00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Quoted string (qr)",
+          "style": 29,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Quoted string (qw)",
+          "style": 30,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "POD verbatim",
+          "style": 31,
+          "substyle": -1,
+          "color": "#004000",
+          "paper": "#c0ffc0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Subroutine prototype",
+          "style": 40,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Format identifier",
+          "style": 41,
+          "substyle": -1,
+          "color": "#c000c0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Format body",
+          "style": 42,
+          "substyle": -1,
+          "color": "#c000c0",
+          "paper": "#fff0ff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string (interpolated variable)",
+          "style": 43,
+          "substyle": -1,
+          "color": "#d00000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Translation",
+          "style": 44,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#f0e080",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Regular expression (interpolated variable)",
+          "style": 54,
+          "substyle": -1,
+          "color": "#d00000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Substitution (interpolated variable)",
+          "style": 55,
+          "substyle": -1,
+          "color": "#d00000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Backticks (interpolated variable)",
+          "style": 57,
+          "substyle": -1,
+          "color": "#d00000",
+          "paper": "#a08080",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted here document (interpolated variable)",
+          "style": 61,
+          "substyle": -1,
+          "color": "#d00000",
+          "paper": "#ddd0dd",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Backtick here document (interpolated variable)",
+          "style": 62,
+          "substyle": -1,
+          "color": "#d00000",
+          "paper": "#ddd0dd",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Quoted string (qq, interpolated variable)",
+          "style": 64,
+          "substyle": -1,
+          "color": "#d00000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Quoted string (qx, interpolated variable)",
+          "style": 65,
+          "substyle": -1,
+          "color": "#d00000",
+          "paper": "#a08080",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Quoted string (qr, interpolated variable)",
+          "style": 66,
+          "substyle": -1,
+          "color": "#d00000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "PostScript",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "DSC comment",
+          "style": 2,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "DSC comment value",
+          "style": 3,
+          "substyle": -1,
+          "color": "#3060a0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 4,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Name",
+          "style": 5,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 6,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Charter,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Literal",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Immediately evaluated literal",
+          "style": 8,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Array parenthesis",
+          "style": 9,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Dictionary parenthesis",
+          "style": 10,
+          "substyle": -1,
+          "color": "#3060a0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Procedure parenthesis",
+          "style": 11,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Charter,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Text",
+          "style": 12,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Charter,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Hexadecimal string",
+          "style": 13,
+          "substyle": -1,
+          "color": "#3f7f3f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Base85 string",
+          "style": 14,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Bad string character",
+          "style": 15,
+          "substyle": -1,
+          "color": "#ffff00",
+          "paper": "#ff0000",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Povray",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#ff0080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment line",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 3,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 4,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 5,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "String",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unclosed string",
+          "style": 7,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#e0c0e0",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Directive",
+          "style": 8,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Bad directive",
+          "style": 9,
+          "substyle": -1,
+          "color": "#804020",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Objects, CSG and appearance",
+          "style": 10,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffd0d0",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Types, modifiers and items",
+          "style": 11,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffd0",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Predefined identifiers",
+          "style": 12,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Predefined functions",
+          "style": 13,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#d0d0ff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 1",
+          "style": 14,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#d0ffd0",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 2",
+          "style": 15,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#d0d0d0",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 3",
+          "style": 16,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#e0e0e0",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Properties",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Section",
+          "style": 2,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#e0f0f0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Assignment",
+          "style": 3,
+          "substyle": -1,
+          "color": "#b06000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Default value",
+          "style": 4,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Key",
+          "style": 5,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Protocol Buffer",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#408080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Preprocessor",
+          "style": 2,
+          "substyle": -1,
+          "color": "#bc7a00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 3,
+          "substyle": -1,
+          "color": "#008000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Pseudo Keyword",
+          "style": 4,
+          "substyle": -1,
+          "color": "#008000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Type Keyword",
+          "style": 5,
+          "substyle": -1,
+          "color": "#b00040",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 6,
+          "substyle": -1,
+          "color": "#666666",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Word",
+          "style": 7,
+          "substyle": -1,
+          "color": "#aa22ff",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Builtin",
+          "style": 8,
+          "substyle": -1,
+          "color": "#008000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Function or method name",
+          "style": 9,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Class name",
+          "style": 10,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Namespace",
+          "style": 11,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Exception",
+          "style": 12,
+          "substyle": -1,
+          "color": "#d2413a",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 13,
+          "substyle": -1,
+          "color": "#19177c",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Constant",
+          "style": 14,
+          "substyle": -1,
+          "color": "#880000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Label",
+          "style": 15,
+          "substyle": -1,
+          "color": "#a0a000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Entity",
+          "style": 16,
+          "substyle": -1,
+          "color": "#999999",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Attribute",
+          "style": 17,
+          "substyle": -1,
+          "color": "#7d9029",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Tag",
+          "style": 18,
+          "substyle": -1,
+          "color": "#008000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Decorator",
+          "style": 19,
+          "substyle": -1,
+          "color": "#aa22ff",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "String",
+          "style": 20,
+          "substyle": -1,
+          "color": "#ba2121",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Documentation string",
+          "style": 21,
+          "substyle": -1,
+          "color": "#ba2121",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Scalar",
+          "style": 22,
+          "substyle": -1,
+          "color": "#bb6688",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Escape",
+          "style": 23,
+          "substyle": -1,
+          "color": "#bb6622",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Regular expression",
+          "style": 24,
+          "substyle": -1,
+          "color": "#bb6688",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Symbol",
+          "style": 25,
+          "substyle": -1,
+          "color": "#19177c",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Other string",
+          "style": 26,
+          "substyle": -1,
+          "color": "#008000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 27,
+          "substyle": -1,
+          "color": "#666666",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Heading",
+          "style": 28,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Subheading",
+          "style": 29,
+          "substyle": -1,
+          "color": "#800080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Deleted",
+          "style": 30,
+          "substyle": -1,
+          "color": "#a00000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inserted",
+          "style": 31,
+          "substyle": -1,
+          "color": "#00a000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Generic error",
+          "style": 40,
+          "substyle": -1,
+          "color": "#ff0000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Emphasized text",
+          "style": 41,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Strong text",
+          "style": 42,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Prompt",
+          "style": 43,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Output",
+          "style": 44,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Traceback",
+          "style": 45,
+          "substyle": -1,
+          "color": "#0040d0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Error",
+          "style": 46,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ff0000",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Comment block",
+          "style": 47,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#a8ffa8",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Property",
+          "style": 48,
+          "substyle": -1,
+          "color": "#00a0e0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Character",
+          "style": 49,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,10,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Here document",
+          "style": 50,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ddd0dd",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Punctuation",
+          "style": 51,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Hashbang",
+          "style": 52,
+          "substyle": -1,
+          "color": "#00c000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Reserved Keyword",
+          "style": 53,
+          "substyle": -1,
+          "color": "#a90d91",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Literal",
+          "style": 54,
+          "substyle": -1,
+          "color": "#1c01ce",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double quoted string",
+          "style": 55,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single quoted string",
+          "style": 56,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Backtick string",
+          "style": 57,
+          "substyle": -1,
+          "color": "#ffff00",
+          "paper": "#a08080",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Whitespace",
+          "style": 58,
+          "substyle": -1,
+          "color": "#bbbbbb",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Python3",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 3,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 4,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 5,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Triple single-quoted string",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Triple double-quoted string",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Class name",
+          "style": 8,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Function or method name",
+          "style": 9,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 10,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 11,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment block",
+          "style": 12,
+          "substyle": -1,
+          "color": "#7f7f7f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unclosed string",
+          "style": 13,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#e0c0e0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Highlighted identifier",
+          "style": 14,
+          "substyle": -1,
+          "color": "#407090",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Decorator",
+          "style": 15,
+          "substyle": -1,
+          "color": "#805000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted f-string",
+          "style": 16,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted f-string",
+          "style": 17,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Triple single-quoted f-string",
+          "style": 18,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Triple double-quoted f-string",
+          "style": 19,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Standard Library Modules",
+          "style": 11,
+          "substyle": 0,
+          "color": "#dd9900",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": "__main__ _dummy_thread _thread abc aifc argparse array ascii ast asynchat\n asyncio asyncore atexit audioop base64 bdb binascii binhex bisect builtins bz2\n calendar cgi cgitb chunk cmath cmd code codecs codeop collections colorsys\n compileall concurrent configparser contextlib contextvars copy copyreg\n cProfile crypt csv ctypes curses dataclasses datetime dbm decimal difflib dis\n distutils doctest email encodings ensurepip enum errno faulthandler fcntl\n filecmp fileinput fnmatch formatter fractions ftplib functools gc getopt\n getpass gettext glob graphlib grp gzip hashlib heapq hmac html http imaplib\n imghdr imp importlib inspect io ipaddress itertools json keyword lib2to3\n linecache locale logging lzma mailbox mailcap marshal math mimetypes mmap\n modulefinder msilib msvcrt multiprocessing netrc nis nntplib numbers opcode\n operator optparse os ossaudiodev parser path pathlib pdb pickle pickletools\n pipes pkgutil platform plistlib poplib posix pprint profile pstats pty pwd\n py_compile pyclbr pydoc queue quopri random re readline reprlib resource\n rlcompleter runpy sched secrets select selectors shelve shlex shutil signal\n site smtpd smtplib sndhdr socket socketserver spwd sqlite3 ssl stat statistics\n string stringprep struct subprocess sunau symbol symtable sys sysconfig syslog\n tabnanny tarfile telnetlib tempfile termios test textwrap threading time\n timeit tkinter token tokenize trace traceback tracemalloc tty turtle\n turtledemo types typing unicodedata unittest urllib uu uuid venv warnings wave\n weakref webbrowser winreg winsound wsgiref xdrlib xml xmlrpc zipapp zipfile\n zipimport zlib zoneinfo"
+        },
+        {
+          "description": "__future__ Imports",
+          "style": 11,
+          "substyle": 1,
+          "color": "#ee00aa",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,1,0,0,0,0",
+          "eolfill": false,
+          "words": "__future__ absolute_import annotations division generators generator_stop\n nested_scopes print_function unicode_literals with_statement"
+        },
+        {
+          "description": "PyQt5/6 Modules",
+          "style": 11,
+          "substyle": 2,
+          "color": "#44aadd",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": "PyQt5 PyQt6 Qsci Qt Qt3DAnimation Qt3DCore Qt3DExtras Qt3DInput Qt3DLogic\n Qt3DRender QtBluetooth QtChart QtCore QtDataVisualization QtDBus QtDesigner\n QtGui QtHelp QtLocation QtMacExtras QtMultimedia QtMultimediaWidgets QtNetwork\n QtNetworkAuth QtNfc QtOpenGL QtOpenGLWidgets QtPositioning QtPrintSupport\n QtPurchasing QtQml QtQuick QtQuick3D QtQuickWidgets QtRemoteObjects QtSensors\n QtSerialPort QtSql QtSvg QtSvgWidgets QtTest QtTextToSpeech QtWebChannel\n QtWebEngine QtWebEngineCore QtWebEngineWidgets QtWebSockets QtWidgets\n QtWinExtras QtX11Extras QtXml QtXmlPatterns sip"
+        },
+        {
+          "description": "Cython Specifics",
+          "style": 11,
+          "substyle": 3,
+          "color": "#dd0000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": "cython pyximport Cython __cinit__ __dealloc__"
+        }
+      ]
+    },
+    {
+      "name": "MicroPython",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 3,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 4,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 5,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Triple single-quoted string",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Triple double-quoted string",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Class name",
+          "style": 8,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Function or method name",
+          "style": 9,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 10,
+          "substyle": -1,
+          "color": "#31363b",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 11,
+          "substyle": -1,
+          "color": "#31363b",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment block",
+          "style": 12,
+          "substyle": -1,
+          "color": "#7f7f7f",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unclosed string",
+          "style": 13,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#e0c0e0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Highlighted identifier",
+          "style": 14,
+          "substyle": -1,
+          "color": "#407090",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Decorator",
+          "style": 15,
+          "substyle": -1,
+          "color": "#805000",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted f-string",
+          "style": 16,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted f-string",
+          "style": 17,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Triple single-quoted f-string",
+          "style": 18,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Triple double-quoted f-string",
+          "style": 19,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Standard Library Modules",
+          "style": 11,
+          "substyle": 0,
+          "color": "#dd9900",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": "__main__ _dummy_thread _thread abc aifc argparse array ast asynchat asyncio\n asyncore atexit audioop base64 bdb binascii binhex bisect builtins bz2\n calendar cgi cgitb chunk cmath cmd code codecs codeop collections colorsys\n compileall concurrent configparser contextlib copy copyreg crypt csv ctypes\n curses datetime dbm decimal difflib dis distutils dummy_threading email\n ensurepip enum errno faulthandler fcntl filecmp fileinput fnmatch formatter\n fpectl fractions ftplib functools gc getopt getpass gettext glob grp gzip\n hashlib heapq hmac html http http imaplib imghdr importlib inspect io\n ipaddress itertools json keyword linecache locale logging lzma macpath\n mailbox mailcap marshal math mimetypes mmap modulefinder msilib msvcrt\n multiprocessing netrc nis nntplib numbers operator os ossaudiodev parser path\n pathlib pdb pickle pickletools pipes pkgutil platform plistlib poplib posix\n pprint pty pwd py_compile pyclbr queue quopri random re readline reprlib\n resource rlcompleter runpy sched select selectors shelve shlex shutil signal\n site smtpd smtplib sndhdr socket socketserver spwd sqlite3 ssl stat statistics\n string stringprep struct subprocess sunau symbol symtable sys sysconfig syslog\n tabnanny tarfile telnetlib tempfile termios textwrap threading time timeit\n tkinter token tokenize trace traceback tracemalloc tty turtle types\n unicodedata unittest urllib uu uuid venv warnings wave weakref webbrowser\n winreg winsound wsgiref xdrlib xml xmlrpc zipfile zipimport zlib"
+        },
+        {
+          "description": "__future__ Imports",
+          "style": 11,
+          "substyle": 1,
+          "color": "#ee00aa",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,1,0,0,0,0",
+          "eolfill": false,
+          "words": "__future__ with_statement unicode_literals print_function division\n absolute_import generator_stop annotations"
+        },
+        {
+          "description": "PyQt5 Modules",
+          "style": 11,
+          "substyle": 2,
+          "color": "#44aadd",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": "PyQt5 Qsci Qt QtCore QtDBus QtDesigner QtGui QtHelp QtLocation QtMacExtras QtMultimedia QtMultimediaWidgets QtNetwork QtNetworkAuth QtNfc QtOpenGL QtPositioning QtPrintSupport QtQml QtQuick QtQuickWidgets QtRemoteObjects QtSensors QtSerialPort QtSql QtSvg QtTest QtWebChannel QtWebEngine QtWebEngineCore QtWebEngineWidgets QtWebSockets QtWidgets QtWinExtras QtX11Extras QtXml QtXmlPatterns sip QtWebKit QtWebKitWidgets"
+        },
+        {
+          "description": "Cython Specifics",
+          "style": 11,
+          "substyle": 3,
+          "color": "#dd0000",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": "cython pyximport Cython __cinit__ __dealloc__"
+        }
+      ]
+    },
+    {
+      "name": "QSS",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#ff0080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Tag",
+          "style": 1,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Class selector",
+          "style": 2,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Pseudo-class",
+          "style": 3,
+          "substyle": -1,
+          "color": "#800000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unknown pseudo-class",
+          "style": 4,
+          "substyle": -1,
+          "color": "#ff0000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 5,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "CSS1 property",
+          "style": 6,
+          "substyle": -1,
+          "color": "#0040e0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unknown property",
+          "style": 7,
+          "substyle": -1,
+          "color": "#ff0000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Value",
+          "style": 8,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 9,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ID selector",
+          "style": 10,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Important",
+          "style": 11,
+          "substyle": -1,
+          "color": "#ff8000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "@-rule",
+          "style": 12,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 13,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 14,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "CSS2 property",
+          "style": 15,
+          "substyle": -1,
+          "color": "#00a0e0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Attribute",
+          "style": 16,
+          "substyle": -1,
+          "color": "#800000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "CSS3 property",
+          "style": 17,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Pseudo-element",
+          "style": 18,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Extended CSS property",
+          "style": 19,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Extended pseudo-class",
+          "style": 20,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Extended pseudo-element",
+          "style": 21,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Media rule",
+          "style": 22,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Variable",
+          "style": 23,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Ruby",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Error",
+          "style": 1,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ff0000",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "POD",
+          "style": 3,
+          "substyle": -1,
+          "color": "#004000",
+          "paper": "#c0ffc0",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 4,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 5,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Class name",
+          "style": 8,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Function or method name",
+          "style": 9,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 10,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 11,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Regular expression",
+          "style": 12,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#a0ffa0",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Global",
+          "style": 13,
+          "substyle": -1,
+          "color": "#800080",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Symbol",
+          "style": 14,
+          "substyle": -1,
+          "color": "#c0a030",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Module name",
+          "style": 15,
+          "substyle": -1,
+          "color": "#a000a0",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Instance variable",
+          "style": 16,
+          "substyle": -1,
+          "color": "#b00080",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Class variable",
+          "style": 17,
+          "substyle": -1,
+          "color": "#8000b0",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Backticks",
+          "style": 18,
+          "substyle": -1,
+          "color": "#ffff00",
+          "paper": "#a08080",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Data section",
+          "style": 19,
+          "substyle": -1,
+          "color": "#600000",
+          "paper": "#fff0d8",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Here document delimiter",
+          "style": 20,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ddd0dd",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Here document",
+          "style": 21,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ddd0dd",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "%q string",
+          "style": 24,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "%Q string",
+          "style": 25,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "%x string",
+          "style": 26,
+          "substyle": -1,
+          "color": "#ffff00",
+          "paper": "#a08080",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "%r string",
+          "style": 27,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#a0ffa0",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "%w string",
+          "style": 28,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffe0",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Demoted keyword",
+          "style": 29,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Liberation Mono,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "stdin",
+          "style": 30,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ff8080",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "stdout",
+          "style": 31,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ff8080",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "stderr",
+          "style": 40,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ff8080",
+          "font": "Liberation Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "SQL",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment line",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style comment",
+          "style": 3,
+          "substyle": -1,
+          "color": "#7f7f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 4,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 5,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SQL*Plus keyword",
+          "style": 8,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SQL*Plus prompt",
+          "style": 9,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#e0ffe0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 10,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 11,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SQL*Plus comment",
+          "style": 13,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "# comment line",
+          "style": 15,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc keyword",
+          "style": 17,
+          "substyle": -1,
+          "color": "#3060a0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc keyword error",
+          "style": 18,
+          "substyle": -1,
+          "color": "#804020",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 1",
+          "style": 19,
+          "substyle": -1,
+          "color": "#4b0082",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 2",
+          "style": 20,
+          "substyle": -1,
+          "color": "#b00040",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 3",
+          "style": 21,
+          "substyle": -1,
+          "color": "#8b0000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 4",
+          "style": 22,
+          "substyle": -1,
+          "color": "#800080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Quoted identifier",
+          "style": 23,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Quoted operator",
+          "style": 24,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "TCL",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#f0ffe0",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment line",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 3,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Quoted keyword",
+          "style": 4,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#fff0f0",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Quoted string",
+          "style": 5,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#fff0f0",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 6,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 7,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Substitution",
+          "style": 8,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#effff0",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Brace substitution",
+          "style": 9,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Modifier",
+          "style": 10,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Expand keyword",
+          "style": 11,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffff80",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "TCL keyword",
+          "style": 12,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Tk keyword",
+          "style": 13,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#e0fff0",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "iTCL keyword",
+          "style": 14,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#fff0f0",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Tk command",
+          "style": 15,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffd0d0",
+          "font": "Bitstream Vera Sans,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 1",
+          "style": 16,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 2",
+          "style": 17,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 3",
+          "style": 18,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined 4",
+          "style": 19,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment box",
+          "style": 20,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#f0fff0",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Comment block",
+          "style": 21,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#f0fff0",
+          "font": "Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "TeX",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#3f3f3f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Special",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Group",
+          "style": 2,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Symbol",
+          "style": 3,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Command",
+          "style": 4,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Text",
+          "style": 5,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "VHDL",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#800080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment line",
+          "style": 2,
+          "substyle": -1,
+          "color": "#3f7f3f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 3,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "String",
+          "style": 4,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 5,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 6,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unclosed string",
+          "style": 7,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#e0c0e0",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 8,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Standard operator",
+          "style": 9,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Attribute",
+          "style": 10,
+          "substyle": -1,
+          "color": "#804020",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Standard function",
+          "style": 11,
+          "substyle": -1,
+          "color": "#808020",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Standard package",
+          "style": 12,
+          "substyle": -1,
+          "color": "#208020",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Standard type",
+          "style": 13,
+          "substyle": -1,
+          "color": "#208080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "User defined",
+          "style": 14,
+          "substyle": -1,
+          "color": "#804020",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment block",
+          "style": 15,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "XML",
+      "styles": [
+        {
+          "description": "HTML default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Tag",
+          "style": 1,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unknown tag",
+          "style": 2,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Attribute",
+          "style": 3,
+          "substyle": -1,
+          "color": "#008080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unknown attribute",
+          "style": 4,
+          "substyle": -1,
+          "color": "#008080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "HTML number",
+          "style": 5,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "HTML double-quoted string",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "HTML single-quoted string",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Other text in a tag",
+          "style": 8,
+          "substyle": -1,
+          "color": "#800080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "HTML comment",
+          "style": 9,
+          "substyle": -1,
+          "color": "#808000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Entity",
+          "style": 10,
+          "substyle": -1,
+          "color": "#800080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "End of a tag",
+          "style": 11,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Start of an XML fragment",
+          "style": 12,
+          "substyle": -1,
+          "color": "#800080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "End of an XML fragment",
+          "style": 13,
+          "substyle": -1,
+          "color": "#800080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Script tag",
+          "style": 14,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Start of an ASP fragment with @",
+          "style": 15,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffff00",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Start of an ASP fragment",
+          "style": 16,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffdf00",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "CDATA",
+          "style": 17,
+          "substyle": -1,
+          "color": "#800000",
+          "paper": "#fff0f0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Start of a PHP fragment",
+          "style": 18,
+          "substyle": -1,
+          "color": "#800000",
+          "paper": "#ffefbf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unquoted HTML value",
+          "style": 19,
+          "substyle": -1,
+          "color": "#608060",
+          "paper": "#ffefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP X-Code comment",
+          "style": 20,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SGML default",
+          "style": 21,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SGML command",
+          "style": 22,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "First parameter of an SGML command",
+          "style": 23,
+          "substyle": -1,
+          "color": "#006600",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SGML double-quoted string",
+          "style": 24,
+          "substyle": -1,
+          "color": "#800000",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SGML single-quoted string",
+          "style": 25,
+          "substyle": -1,
+          "color": "#993300",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SGML error",
+          "style": 26,
+          "substyle": -1,
+          "color": "#800000",
+          "paper": "#ff6666",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SGML special entity",
+          "style": 27,
+          "substyle": -1,
+          "color": "#3366ff",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SGML comment",
+          "style": 29,
+          "substyle": -1,
+          "color": "#808000",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "First parameter comment of an SGML command",
+          "style": 30,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "SGML block default",
+          "style": 31,
+          "substyle": -1,
+          "color": "#000066",
+          "paper": "#cccce0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Start of a JavaScript fragment",
+          "style": 40,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaScript default",
+          "style": 41,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaScript comment",
+          "style": 42,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaScript line comment",
+          "style": 43,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style JavaScript comment",
+          "style": 44,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaScript number",
+          "style": 45,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaScript word",
+          "style": 46,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaScript keyword",
+          "style": 47,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaScript double-quoted string",
+          "style": 48,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaScript single-quoted string",
+          "style": 49,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaScript symbol",
+          "style": 50,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#f0f0ff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaScript unclosed string",
+          "style": 51,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#bfbbb0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaScript regular expression",
+          "style": 52,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffbbb0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Start of an ASP JavaScript fragment",
+          "style": 55,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript default",
+          "style": 56,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript comment",
+          "style": 57,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript line comment",
+          "style": 58,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc style ASP JavaScript comment",
+          "style": 59,
+          "substyle": -1,
+          "color": "#7f7f7f",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript number",
+          "style": 60,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript word",
+          "style": 61,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript keyword",
+          "style": 62,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript double-quoted string",
+          "style": 63,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript single-quoted string",
+          "style": 64,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript symbol",
+          "style": 65,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#dfdf7f",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript unclosed string",
+          "style": 66,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#bfbbb0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP JavaScript regular expression",
+          "style": 67,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffbbb0",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Start of a VBScript fragment",
+          "style": 70,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "VBScript default",
+          "style": 71,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "VBScript comment",
+          "style": 72,
+          "substyle": -1,
+          "color": "#008000",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "VBScript number",
+          "style": 73,
+          "substyle": -1,
+          "color": "#008080",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "VBScript keyword",
+          "style": 74,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "VBScript string",
+          "style": 75,
+          "substyle": -1,
+          "color": "#800080",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "VBScript identifier",
+          "style": 76,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#efefff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "VBScript unclosed string",
+          "style": 77,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#7f7fff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Start of an ASP VBScript fragment",
+          "style": 80,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP VBScript default",
+          "style": 81,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#cfcfef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP VBScript comment",
+          "style": 82,
+          "substyle": -1,
+          "color": "#008000",
+          "paper": "#cfcfef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP VBScript number",
+          "style": 83,
+          "substyle": -1,
+          "color": "#008080",
+          "paper": "#cfcfef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP VBScript keyword",
+          "style": 84,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#cfcfef",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP VBScript string",
+          "style": 85,
+          "substyle": -1,
+          "color": "#800080",
+          "paper": "#cfcfef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP VBScript identifier",
+          "style": 86,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#cfcfef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP VBScript unclosed string",
+          "style": 87,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#7f7fff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Start of a Python fragment",
+          "style": 90,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Python default",
+          "style": 91,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python comment",
+          "style": 92,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python number",
+          "style": 93,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python double-quoted string",
+          "style": 94,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python single-quoted string",
+          "style": 95,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python keyword",
+          "style": 96,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python triple single-quoted string",
+          "style": 97,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python triple double-quoted string",
+          "style": 98,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python class name",
+          "style": 99,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python function or method name",
+          "style": 100,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python operator",
+          "style": 101,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Python identifier",
+          "style": 102,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Start of an ASP Python fragment",
+          "style": 105,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "ASP Python default",
+          "style": 106,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python comment",
+          "style": 107,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python number",
+          "style": 108,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python double-quoted string",
+          "style": 109,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python single-quoted string",
+          "style": 110,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python keyword",
+          "style": 111,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python triple single-quoted string",
+          "style": 112,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python triple double-quoted string",
+          "style": 113,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python class name",
+          "style": 114,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python function or method name",
+          "style": 115,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python operator",
+          "style": 116,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "ASP Python identifier",
+          "style": 117,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#cfefcf",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "PHP default",
+          "style": 118,
+          "substyle": -1,
+          "color": "#000033",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "PHP double-quoted string",
+          "style": 119,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "PHP single-quoted string",
+          "style": 120,
+          "substyle": -1,
+          "color": "#009f00",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "PHP keyword",
+          "style": 121,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "PHP number",
+          "style": 122,
+          "substyle": -1,
+          "color": "#cc9900",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "PHP variable",
+          "style": 123,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "PHP comment",
+          "style": 124,
+          "substyle": -1,
+          "color": "#999999",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "PHP line comment",
+          "style": 125,
+          "substyle": -1,
+          "color": "#666666",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "PHP double-quoted variable",
+          "style": 126,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "PHP operator",
+          "style": 127,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#fff8f8",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "YAML",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#008800",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 2,
+          "substyle": -1,
+          "color": "#000088",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 3,
+          "substyle": -1,
+          "color": "#880088",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 4,
+          "substyle": -1,
+          "color": "#880000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Reference",
+          "style": 5,
+          "substyle": -1,
+          "color": "#008888",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Document delimiter",
+          "style": 6,
+          "substyle": -1,
+          "color": "#ffffff",
+          "paper": "#000088",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Text block marker",
+          "style": 7,
+          "substyle": -1,
+          "color": "#333366",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Syntax error marker",
+          "style": 8,
+          "substyle": -1,
+          "color": "#ffffff",
+          "paper": "#ff0000",
+          "font": "Hack,9,-1,5,75,1,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 9,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Gettext",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Serif,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Message identifier",
+          "style": 2,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Message identifier text",
+          "style": 3,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Message string",
+          "style": 4,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Message string text",
+          "style": 5,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Message context",
+          "style": 6,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Message context text",
+          "style": 7,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Fuzzy flag",
+          "style": 8,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Programmer comment",
+          "style": 9,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Reference",
+          "style": 10,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Flags",
+          "style": 11,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Message identifier text end-of-line",
+          "style": 12,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Message string text end-of-line",
+          "style": 13,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Message context text end-of-line",
+          "style": 14,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "CoffeeScript",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "C-style comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "C++-style comment",
+          "style": 2,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc C-style comment",
+          "style": 3,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 4,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 5,
+          "substyle": -1,
+          "color": "#00007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double-quoted string",
+          "style": 6,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single-quoted string",
+          "style": 7,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "IDL UUID",
+          "style": 8,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Pre-processor block",
+          "style": 9,
+          "substyle": -1,
+          "color": "#7f7f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 10,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 11,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unclosed string",
+          "style": 12,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#e0c0e0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "C# verbatim string",
+          "style": 13,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#e0ffe0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Regular expression",
+          "style": 14,
+          "substyle": -1,
+          "color": "#3f7f3f",
+          "paper": "#e0f0e0",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc C++-style comment",
+          "style": 15,
+          "substyle": -1,
+          "color": "#3f703f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Secondary keywords and identifiers",
+          "style": 16,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc keyword",
+          "style": 17,
+          "substyle": -1,
+          "color": "#3060a0",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JavaDoc keyword error",
+          "style": 18,
+          "substyle": -1,
+          "color": "#804020",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Global classes",
+          "style": 19,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Block comment",
+          "style": 22,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Block regular expression",
+          "style": 23,
+          "substyle": -1,
+          "color": "#3f7f3f",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Block regular expression comment",
+          "style": 24,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#ffffff",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Instance property",
+          "style": 25,
+          "substyle": -1,
+          "color": "#c06000",
+          "paper": "#fcfcfc",
+          "font": "Bitstream Vera Sans Mono,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "JSON",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#31363b",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 1,
+          "substyle": -1,
+          "color": "#007f7f",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "String",
+          "style": 2,
+          "substyle": -1,
+          "color": "#7f0000",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unclosed string",
+          "style": 3,
+          "substyle": -1,
+          "color": "#ffffff",
+          "paper": "#ff0000",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Property",
+          "style": 4,
+          "substyle": -1,
+          "color": "#880ae8",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Escape sequence",
+          "style": 5,
+          "substyle": -1,
+          "color": "#0b982e",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Line comment",
+          "style": 6,
+          "substyle": -1,
+          "color": "#05bbae",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Block comment",
+          "style": 7,
+          "substyle": -1,
+          "color": "#05bbae",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 8,
+          "substyle": -1,
+          "color": "#18644a",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "IRI",
+          "style": 9,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JSON-LD compact IRI",
+          "style": 10,
+          "substyle": -1,
+          "color": "#d137c1",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JSON keyword",
+          "style": 11,
+          "substyle": -1,
+          "color": "#0bcea7",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "JSON-LD keyword",
+          "style": 12,
+          "substyle": -1,
+          "color": "#ec2806",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Parsing error",
+          "style": 13,
+          "substyle": -1,
+          "color": "#ffffff",
+          "paper": "#ff0000",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Markdown",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#31363b",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Special",
+          "style": 1,
+          "substyle": -1,
+          "color": "#cc00ff",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Strong emphasis using double asterisks",
+          "style": 2,
+          "substyle": -1,
+          "color": "#224466",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Strong emphasis using double underscores",
+          "style": 3,
+          "substyle": -1,
+          "color": "#224466",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Emphasis using single asterisks",
+          "style": 4,
+          "substyle": -1,
+          "color": "#880088",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Emphasis using single underscores",
+          "style": 5,
+          "substyle": -1,
+          "color": "#880088",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Level 1 header",
+          "style": 6,
+          "substyle": -1,
+          "color": "#ff7700",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Level 2 header",
+          "style": 7,
+          "substyle": -1,
+          "color": "#dd6600",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Level 3 header",
+          "style": 8,
+          "substyle": -1,
+          "color": "#bb5500",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Level 4 header",
+          "style": 9,
+          "substyle": -1,
+          "color": "#994400",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Level 5 header",
+          "style": 10,
+          "substyle": -1,
+          "color": "#773300",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Level 6 header",
+          "style": 11,
+          "substyle": -1,
+          "color": "#552200",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Pre-char",
+          "style": 12,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#eeeeaa",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Unordered list item",
+          "style": 13,
+          "substyle": -1,
+          "color": "#825d00",
+          "paper": "#ded8c3",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Ordered list item",
+          "style": 14,
+          "substyle": -1,
+          "color": "#000070",
+          "paper": "#b8c3e1",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Block quote",
+          "style": 15,
+          "substyle": -1,
+          "color": "#006600",
+          "paper": "#cbdccb",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Strike out",
+          "style": 16,
+          "substyle": -1,
+          "color": "#dddddd",
+          "paper": "#aa0000",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Horizontal rule",
+          "style": 17,
+          "substyle": -1,
+          "color": "#1f1c1b",
+          "paper": "#e7d1c9",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Link",
+          "style": 18,
+          "substyle": -1,
+          "color": "#0000aa",
+          "paper": "#fcfcfc",
+          "font": "Hack,9,-1,5,50,0,1,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Code between backticks",
+          "style": 19,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Code between double backticks",
+          "style": 20,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#efffef",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Code block",
+          "style": 21,
+          "substyle": -1,
+          "color": "#00458a",
+          "paper": "#c5e0f5",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    },
+    {
+      "name": "Guessed",
+      "styles": [
+        {
+          "description": "Default",
+          "style": 0,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Comment",
+          "style": 1,
+          "substyle": -1,
+          "color": "#408080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Preprocessor",
+          "style": 2,
+          "substyle": -1,
+          "color": "#bc7a00",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Keyword",
+          "style": 3,
+          "substyle": -1,
+          "color": "#008000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Pseudo Keyword",
+          "style": 4,
+          "substyle": -1,
+          "color": "#008000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Type Keyword",
+          "style": 5,
+          "substyle": -1,
+          "color": "#b00040",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Operator",
+          "style": 6,
+          "substyle": -1,
+          "color": "#666666",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Word",
+          "style": 7,
+          "substyle": -1,
+          "color": "#aa22ff",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Builtin",
+          "style": 8,
+          "substyle": -1,
+          "color": "#008000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Function or method name",
+          "style": 9,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Class name",
+          "style": 10,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Namespace",
+          "style": 11,
+          "substyle": -1,
+          "color": "#0000ff",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Exception",
+          "style": 12,
+          "substyle": -1,
+          "color": "#d2413a",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Identifier",
+          "style": 13,
+          "substyle": -1,
+          "color": "#19177c",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Constant",
+          "style": 14,
+          "substyle": -1,
+          "color": "#880000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Label",
+          "style": 15,
+          "substyle": -1,
+          "color": "#a0a000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Entity",
+          "style": 16,
+          "substyle": -1,
+          "color": "#999999",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Attribute",
+          "style": 17,
+          "substyle": -1,
+          "color": "#7d9029",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Tag",
+          "style": 18,
+          "substyle": -1,
+          "color": "#008000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Decorator",
+          "style": 19,
+          "substyle": -1,
+          "color": "#aa22ff",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "String",
+          "style": 20,
+          "substyle": -1,
+          "color": "#ba2121",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Documentation string",
+          "style": 21,
+          "substyle": -1,
+          "color": "#ba2121",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Scalar",
+          "style": 22,
+          "substyle": -1,
+          "color": "#bb6688",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Escape",
+          "style": 23,
+          "substyle": -1,
+          "color": "#bb6622",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Regular expression",
+          "style": 24,
+          "substyle": -1,
+          "color": "#bb6688",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Symbol",
+          "style": 25,
+          "substyle": -1,
+          "color": "#19177c",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Other string",
+          "style": 26,
+          "substyle": -1,
+          "color": "#008000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Number",
+          "style": 27,
+          "substyle": -1,
+          "color": "#666666",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Heading",
+          "style": 28,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Subheading",
+          "style": 29,
+          "substyle": -1,
+          "color": "#800080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Deleted",
+          "style": 30,
+          "substyle": -1,
+          "color": "#a00000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Inserted",
+          "style": 31,
+          "substyle": -1,
+          "color": "#00a000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Generic error",
+          "style": 40,
+          "substyle": -1,
+          "color": "#ff0000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Emphasized text",
+          "style": 41,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,1,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Strong text",
+          "style": 42,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Prompt",
+          "style": 43,
+          "substyle": -1,
+          "color": "#000080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,75,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Output",
+          "style": 44,
+          "substyle": -1,
+          "color": "#808080",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Traceback",
+          "style": 45,
+          "substyle": -1,
+          "color": "#0040d0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Error",
+          "style": 46,
+          "substyle": -1,
+          "color": "#141312",
+          "paper": "#ff0000",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Comment block",
+          "style": 47,
+          "substyle": -1,
+          "color": "#007f00",
+          "paper": "#a8ffa8",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Property",
+          "style": 48,
+          "substyle": -1,
+          "color": "#00a0e0",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Character",
+          "style": 49,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Here document",
+          "style": 50,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ddd0dd",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Punctuation",
+          "style": 51,
+          "substyle": -1,
+          "color": "#000000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Hashbang",
+          "style": 52,
+          "substyle": -1,
+          "color": "#00c000",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Reserved Keyword",
+          "style": 53,
+          "substyle": -1,
+          "color": "#a90d91",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Literal",
+          "style": 54,
+          "substyle": -1,
+          "color": "#1c01ce",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Double quoted string",
+          "style": 55,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Single quoted string",
+          "style": 56,
+          "substyle": -1,
+          "color": "#7f007f",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        },
+        {
+          "description": "Backtick string",
+          "style": 57,
+          "substyle": -1,
+          "color": "#ffff00",
+          "paper": "#a08080",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": true,
+          "words": ""
+        },
+        {
+          "description": "Whitespace",
+          "style": 58,
+          "substyle": -1,
+          "color": "#bbbbbb",
+          "paper": "#ffffff",
+          "font": "Hack,9,-1,5,50,0,0,0,0,0",
+          "eolfill": false,
+          "words": ""
+        }
+      ]
+    }
+  ]
+}
\ No newline at end of file
--- a/eric6/Tasks/Task.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Tasks/Task.py	Thu Jun 03 11:39:23 2021 +0200
@@ -7,9 +7,10 @@
 Module implementing a class to store task data.
 """
 
+import contextlib
+import enum
 import os
 import time
-import contextlib
 
 from PyQt5.QtCore import Qt, QUuid
 from PyQt5.QtWidgets import QTreeWidgetItem
@@ -18,82 +19,100 @@
 import Preferences
 
 
-# TODO: separate into Task and TaskItem(QTreeWidgetItem) (eric7)
+class TaskType(enum.IntEnum):
+    """
+    Class defining the task types.
+    """
+    NONE = 255
+    FIXME = 0
+    TODO = 1
+    WARNING = 2
+    NOTE = 3
+    TEST = 4
+    DOCU = 5
+
+
+class TaskPriority(enum.IntEnum):
+    """
+    Class defining the task priorities.
+    """
+    HIGH = 0
+    NORMAL = 1
+    LOW = 2
+
+
+# TODO: eric7: separate into Task and TaskItem(QTreeWidgetItem)
 class Task(QTreeWidgetItem):
     """
     Class implementing the task data structure.
     """
-    # TODO: add Enum for priority
-    # TODO: convert to Enum
-    TypeNone = -1
-    TypeFixme = 0
-    TypeTodo = 1
-    TypeWarning = 2
-    TypeNote = 3
-    TypeTest = 4
-    TypeDocu = 5
-    
     TaskType2IconName = {
-        TypeFixme: "taskFixme",
-        TypeTodo: "taskTodo",
-        TypeWarning: "taskWarning",
-        TypeNote: "taskNote",
-        TypeTest: "taskTest",
-        TypeDocu: "taskDocu",
+        TaskType.FIXME: "taskFixme",                # __NO-TASK__
+        TaskType.TODO: "taskTodo",                  # __NO-TASK__
+        TaskType.WARNING: "taskWarning",            # __NO-TASK__
+        TaskType.NOTE: "taskNote",                  # __NO-TASK__
+        TaskType.TEST: "taskTest",                  # __NO-TASK__
+        TaskType.DOCU: "taskDocu",                  # __NO-TASK__
     }
     TaskType2ColorName = {
-        TypeFixme: "TasksFixmeColor",
-        TypeTodo: "TasksTodoColor",
-        TypeWarning: "TasksWarningColor",
-        TypeNote: "TasksNoteColor",
-        TypeTest: "TasksTestColor",
-        TypeDocu: "TasksDocuColor",
+        TaskType.FIXME: "TasksFixmeColor",          # __NO-TASK__
+        TaskType.TODO: "TasksTodoColor",            # __NO-TASK__
+        TaskType.WARNING: "TasksWarningColor",      # __NO-TASK__
+        TaskType.NOTE: "TasksNoteColor",            # __NO-TASK__
+        TaskType.TEST: "TasksTestColor",            # __NO-TASK__
+        TaskType.DOCU: "TasksDocuColor",            # __NO-TASK__
     }
     TaskType2MarkersName = {
-        TypeFixme: "TasksFixmeMarkers",
-        TypeTodo: "TasksTodoMarkers",
-        TypeWarning: "TasksWarningMarkers",
-        TypeNote: "TasksNoteMarkers",
-        TypeTest: "TasksTestMarkers",
-        TypeDocu: "TasksDocuMarkers",
+        TaskType.FIXME: "TasksFixmeMarkers",        # __NO-TASK__
+        TaskType.TODO: "TasksTodoMarkers",          # __NO-TASK__
+        TaskType.WARNING: "TasksWarningMarkers",    # __NO-TASK__
+        TaskType.NOTE: "TasksNoteMarkers",          # __NO-TASK__
+        TaskType.TEST: "TasksTestMarkers",          # __NO-TASK__
+        TaskType.DOCU: "TasksDocuMarkers",          # __NO-TASK__
     }
     
-    def __init__(self, summary, priority=1, filename="", lineno=0,
-                 completed=False, _time=0, isProjectTask=False,
-                 taskType=TypeTodo, project=None, description="",
+    def __init__(self, summary, priority=TaskPriority.NORMAL, filename="",
+                 lineno=0, completed=False, _time=0, isProjectTask=False,
+                 taskType=TaskType.TODO, project=None, description="",
                  uid="", parentUid=""):
         """
         Constructor
         
-        @param summary summary text of the task (string)
-        @param priority priority of the task (0=high, 1=normal, 2=low)
-        @param filename filename containing the task (string)
-        @param lineno line number containing the task (integer)
-        @param completed flag indicating completion status (boolean)
-        @param _time creation time of the task (float, if 0 use current time)
+        @param summary summary text of the task
+        @type str
+        @param priority priority of the task
+        @type TaskPriority
+        @param filename filename containing the task
+        @type str
+        @param lineno line number containing the task
+        @type int
+        @param completed flag indicating completion status
+        @type bool
+        @param _time creation time of the task (if 0 use current time)
+        @type float
         @param isProjectTask flag indicating a task related to the current
-            project (boolean)
-        @param taskType type of the task (one of TypeFixme, TypeTodo,
-            TypeWarning, TypeNote, TypeTest, TypeDocu)
-        @param project reference to the project object (Project)
-        @param description explanatory text of the task (string)
-        @param uid unique id of the task (string)
-        @param parentUid unique id of the parent task (string)
+            project
+        @type bool
+        @param taskType type of the task
+        @type TaskType
+        @param project reference to the project object
+        @type Project
+        @param description explanatory text of the task
+        @type str
+        @param uid unique id of the task
+        @type str
+        @param parentUid unique id of the parent task
+        @type str
         """
         super().__init__()
         
         self.summary = summary
         self.description = description
-        if priority in [0, 1, 2]:
-            self.priority = priority
-        else:
-            self.priority = 1
         self.filename = filename
         self.lineno = lineno
         self.completed = completed
         self.created = _time and _time or time.time()
         self._isProjectTask = isProjectTask
-        self.taskType = taskType
         self.project = project
         if uid:
             self.uid = uid
@@ -121,22 +140,9 @@
             f.setStrikeOut(strikeOut)
             self.setFont(column, f)
         
-        if self.priority == 1:
-            self.setIcon(1, UI.PixmapCache.getIcon("empty"))
-        elif self.priority == 0:
-            self.setIcon(1, UI.PixmapCache.getIcon("taskPrioHigh"))
-        elif self.priority == 2:
-            self.setIcon(1, UI.PixmapCache.getIcon("taskPrioLow"))
-        else:
-            self.setIcon(1, UI.PixmapCache.getIcon("empty"))
+        self.setPriority(priority)
         
-        try:
-            self.setIcon(2, UI.PixmapCache.getIcon(
-                Task.TaskType2IconName[self.taskType]))
-        except KeyError:
-            self.setIcon(2, UI.PixmapCache.getIcon("empty"))
-        
-        self.colorizeTask()
+        self.setTaskType(taskType)
         self.setTextAlignment(4, Qt.AlignmentFlag.AlignRight)
     
     def colorizeTask(self):
@@ -171,7 +177,8 @@
         """
         Public slot to update the description field.
         
-        @param description descriptive text of the task (string)
+        @param description descriptive text of the task
+        @type str
         """
         self.description = description
     
@@ -179,22 +186,37 @@
         """
         Public slot to update the priority.
         
-        @param priority priority of the task (0=high, 1=normal, 2=low)
+        @param priority priority of the task
+        @type TaskPriority
         """
-        if priority in [0, 1, 2]:
-            self.priority = priority
-        else:
-            self.priority = 1
+        self.priority = priority
         
-        if self.priority == 1:
+        if self.priority == TaskPriority.NORMAL:
             self.setIcon(1, UI.PixmapCache.getIcon("empty"))
-        elif self.priority == 0:
+        elif self.priority == TaskPriority.HIGH:
             self.setIcon(1, UI.PixmapCache.getIcon("taskPrioHigh"))
-        elif self.priority == 2:
+        elif self.priority == TaskPriority.LOW:
             self.setIcon(1, UI.PixmapCache.getIcon("taskPrioLow"))
         else:
             self.setIcon(1, UI.PixmapCache.getIcon("empty"))
     
+    def setTaskType(self, taskType):
+        """
+        Public method to update the task type.
+        
+        @param taskType type of the task
+        @type TaskType
+        """
+        self.taskType = taskType
+        
+        try:
+            self.setIcon(2, UI.PixmapCache.getIcon(
+                Task.TaskType2IconName[self.taskType]))
+        except KeyError:
+            self.setIcon(2, UI.PixmapCache.getIcon("empty"))
+        
+        self.colorizeTask()
+    
     def setCompleted(self, completed):
         """
         Public slot to update the completed flag.
@@ -304,11 +326,11 @@
         return {
             "summary": self.summary.strip(),
             "description": self.description.strip(),
-            "priority": self.priority,
+            "priority": self.priority.value,
             "lineno": self.lineno,
             "completed": self.completed,
             "created": self.created,
-            "type": self.taskType,
+            "type": self.taskType.value,
             "uid": self.uid,
             "parent_uid": self.parentUid,
             "expanded": self.isExpanded(),
--- a/eric6/Tasks/TaskFilter.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Tasks/TaskFilter.py	Thu Jun 03 11:39:23 2021 +0200
@@ -10,7 +10,7 @@
 import fnmatch
 import re
 
-from .Task import Task
+from .Task import TaskType
 
 
 class TaskFilter:
@@ -25,7 +25,7 @@
         
         self.summaryFilter = None
         self.filenameFilter = ""
-        self.typeFilter = Task.TypeNone
+        self.typeFilter = TaskType.NONE
         # task type
         
         self.scopeFilter = None
@@ -35,7 +35,7 @@
         #- not completed (False) or completed (True)
         
         self.prioritiesFilter = None
-        #- list of priorities [0 (high), 1 (normal), 2 (low)]
+        #- list of priorities
     
     def setActive(self, enabled):
         """
@@ -70,8 +70,8 @@
         """
         Public method to set the type filter.
         
-        @param taskType type of the task (one of Task.TypeNone, Task.TypeFixme,
-            Task.TypeTodo, Task.TypeWarning, Task.TypeNote)
+        @param taskType type of the task
+        @type TaskType
         """
         self.typeFilter = taskType
         
@@ -95,7 +95,8 @@
         """
         Public method to set the priorities filter.
         
-        @param priorities list of task priorities (list of integer) or None
+        @param priorities list of task priorities or None
+        @type list of TaskPriority or None
         """
         self.prioritiesFilter = priorities
         
@@ -108,7 +109,7 @@
         return (
             self.summaryFilter is not None or
             bool(self.filenameFilter) or
-            self.typeFilter != Task.TypeNone or
+            self.typeFilter != TaskType.NONE or
             self.scopeFilter is not None or
             self.statusFilter is not None or
             self.prioritiesFilter is not None
@@ -137,7 +138,7 @@
             return False
         
         if (
-            self.typeFilter != Task.TypeNone and
+            self.typeFilter != TaskType.NONE and
             self.typeFilter != task.taskType
         ):
             return False
--- a/eric6/Tasks/TaskFilterConfigDialog.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Tasks/TaskFilterConfigDialog.py	Thu Jun 03 11:39:23 2021 +0200
@@ -9,7 +9,7 @@
 
 from PyQt5.QtWidgets import QDialog
 
-from .Task import Task
+from .Task import TaskType, TaskPriority
 
 from .Ui_TaskFilterConfigDialog import Ui_TaskFilterConfigDialog
 
@@ -28,13 +28,13 @@
         super().__init__(parent)
         self.setupUi(self)
         
-        self.typeCombo.addItem("", Task.TypeNone)
-        self.typeCombo.addItem(self.tr("Bugfix"), Task.TypeFixme)
-        self.typeCombo.addItem(self.tr("Warning"), Task.TypeWarning)
-        self.typeCombo.addItem(self.tr("ToDo"), Task.TypeTodo)
-        self.typeCombo.addItem(self.tr("Note"), Task.TypeNote)
-        self.typeCombo.addItem(self.tr("Test"), Task.TypeTest)
-        self.typeCombo.addItem(self.tr("Documentation"), Task.TypeDocu)
+        self.typeCombo.addItem("", TaskType.NONE)
+        self.typeCombo.addItem(self.tr("Bugfix"), TaskType.FIXME)
+        self.typeCombo.addItem(self.tr("Warning"), TaskType.WARNING)
+        self.typeCombo.addItem(self.tr("ToDo"), TaskType.TODO)
+        self.typeCombo.addItem(self.tr("Note"), TaskType.NOTE)
+        self.typeCombo.addItem(self.tr("Test"), TaskType.TEST)
+        self.typeCombo.addItem(self.tr("Documentation"), TaskType.DOCU)
         
         if (
             taskFilter.summaryFilter is None or
@@ -53,7 +53,7 @@
             self.filenameGroup.setChecked(True)
             self.filenameEdit.setText(taskFilter.filenameFilter)
         
-        if taskFilter.typeFilter == Task.TypeNone:
+        if taskFilter.typeFilter == TaskType.NONE:
             self.typeGroup.setChecked(False)
             self.typeCombo.setCurrentIndex(0)
         else:
@@ -89,11 +89,11 @@
         else:
             self.priorityGroup.setChecked(True)
             self.priorityHighCheckBox.setChecked(
-                0 in taskFilter.prioritiesFilter)
+                TaskPriority.HIGH in taskFilter.prioritiesFilter)
             self.priorityNormalCheckBox.setChecked(
-                1 in taskFilter.prioritiesFilter)
+                TaskPriority.NORMAL in taskFilter.prioritiesFilter)
             self.priorityLowCheckBox.setChecked(
-                2 in taskFilter.prioritiesFilter)
+                TaskPriority.LOW in taskFilter.prioritiesFilter)
         
         msh = self.minimumSizeHint()
         self.resize(max(self.width(), msh.width()), msh.height())
@@ -116,9 +116,12 @@
         
         if self.typeGroup.isChecked():
             taskFilter.setTypeFilter(
-                self.typeCombo.itemData(self.typeCombo.currentIndex()))
+                TaskType(
+                    self.typeCombo.itemData(self.typeCombo.currentIndex())
+                )
+            )
         else:
-            taskFilter.setTypeFilter(Task.TypeNone)
+            taskFilter.setTypeFilter(TaskType.NONE)
         
         if self.scopeGroup.isChecked():
             if self.projectRadioButton.isChecked():
@@ -138,9 +141,12 @@
         
         if self.priorityGroup.isChecked():
             priorities = []
-            self.priorityHighCheckBox.isChecked() and priorities.append(0)
-            self.priorityNormalCheckBox.isChecked() and priorities.append(1)
-            self.priorityLowCheckBox.isChecked() and priorities.append(2)
+            if self.priorityHighCheckBox.isChecked():
+                priorities.append(TaskPriority.HIGH)
+            if self.priorityNormalCheckBox.isChecked():
+                priorities.append(TaskPriority.NORMAL)
+            if self.priorityLowCheckBox.isChecked():
+                priorities.append(TaskPriority.LOW)
             taskFilter.setPrioritiesFilter(priorities)
         else:
             taskFilter.setPrioritiesFilter(None)
--- a/eric6/Tasks/TaskPropertiesDialog.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Tasks/TaskPropertiesDialog.py	Thu Jun 03 11:39:23 2021 +0200
@@ -15,6 +15,8 @@
 
 from .Ui_TaskPropertiesDialog import Ui_TaskPropertiesDialog
 
+from .Task import TaskType, TaskPriority
+
 
 class TaskPropertiesDialog(QDialog, Ui_TaskPropertiesDialog):
     """
@@ -25,40 +27,76 @@
         Constructor
         
         @param task the task object to be shown
-        @param parent the parent widget (QWidget)
-        @param projectOpen flag indicating status of the project (boolean)
+        @type Task
+        @param parent the parent widget
+        @type QWidget
+        @param projectOpen flag indicating status of the project
+        @type bool
         """
         super().__init__(parent)
         self.setupUi(self)
         
         self.filenameCompleter = E5FileCompleter(self.filenameEdit)
         
-        if not projectOpen:
-            self.projectCheckBox.setEnabled(False)
+        self.typeCombo.addItem(self.tr("Bugfix"), TaskType.FIXME)
+        self.typeCombo.addItem(self.tr("Warning"), TaskType.WARNING)
+        self.typeCombo.addItem(self.tr("ToDo"), TaskType.TODO)
+        self.typeCombo.addItem(self.tr("Note"), TaskType.NOTE)
+        self.typeCombo.addItem(self.tr("Test"), TaskType.TEST)
+        self.typeCombo.addItem(self.tr("Documentation"), TaskType.DOCU)
+        
         if task is not None:
             self.summaryEdit.setText(task.summary)
             self.descriptionEdit.setText(task.description)
             self.creationLabel.setText(
                 time.strftime("%Y-%m-%d, %H:%M:%S",
                               time.localtime(task.created)))
-            self.priorityCombo.setCurrentIndex(task.priority)
+            self.priorityCombo.setCurrentIndex(task.priority.value)
             self.projectCheckBox.setChecked(task._isProjectTask)
             self.completedCheckBox.setChecked(task.completed)
             self.filenameEdit.setText(task.filename)
             if task.lineno:
                 self.linenoEdit.setText(str(task.lineno))
+            index = self.typeCombo.findData(task.taskType)
+            self.typeCombo.setCurrentIndex(index)
+            self.__setMode(bool(task.filename), projectOpen)
         else:
             self.projectCheckBox.setChecked(projectOpen)
+            self.typeCombo.setCurrentIndex(2)   # TaskType.TODO
+            self.__setMode(False, projectOpen)
     
-    def setReadOnly(self):
+    def __setMode(self, isFileTask, projectOpen):
         """
-        Public slot to set the dialog to read only mode.
+        Private method to show or hide dialog elements depending on the task
+        kind.
+        
+        @param isFileTask flag indicating a file task (i.e. extracted task)
+        @type bool
+        @param projectOpen flag indicating status of the project
+        @type bool
         """
-        self.summaryEdit.setReadOnly(True)
-        self.completedCheckBox.setEnabled(False)
-        self.priorityCombo.setEnabled(False)
-        self.projectCheckBox.setEnabled(False)
-        self.descriptionEdit.setEnabled(False)
+        self.__isFileTaskMode = isFileTask
+        if self.__isFileTaskMode:
+            self.descriptionEdit.hide()
+            self.descriptionLabel.hide()
+            self.manualTaskFrame.hide()
+            
+            msh = self.minimumSizeHint()
+            self.resize(max(self.width(), msh.width()), msh.height())
+        else:
+            self.fileTaskFrame.hide()
+        
+        self.summaryEdit.setReadOnly(isFileTask)
+        self.projectCheckBox.setEnabled(projectOpen and not isFileTask)
+    
+    def isManualTaskMode(self):
+        """
+        Public method to check, if the dialog is in manual task mode.
+        
+        @return flag indicating manual task mode
+        @rtype bool
+        """
+        return not self.__isFileTaskMode
     
     def setSubTaskMode(self, projectTask):
         """
@@ -73,12 +111,13 @@
         """
         Public method to retrieve the dialogs data.
         
-        @return tuple of description, priority, completion flag,
-                project flag and long text (string, string, boolean,
-                boolean, string)
+        @return tuple of description, priority, type, completion flag,
+                project flag and long text
+        @rtype tuple of (str, TaskPriority, TaskType, bool, bool, str)
         """
         return (self.summaryEdit.text(),
-                self.priorityCombo.currentIndex(),
+                TaskPriority(self.priorityCombo.currentIndex()),
+                TaskType(self.typeCombo.currentData()),
                 self.completedCheckBox.isChecked(),
                 self.projectCheckBox.isChecked(),
                 self.descriptionEdit.toPlainText())
--- a/eric6/Tasks/TaskPropertiesDialog.ui	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Tasks/TaskPropertiesDialog.ui	Thu Jun 03 11:39:23 2021 +0200
@@ -6,8 +6,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>579</width>
-    <height>297</height>
+    <width>600</width>
+    <height>400</height>
    </rect>
   </property>
   <property name="windowTitle">
@@ -16,7 +16,7 @@
   <property name="sizeGripEnabled">
    <bool>true</bool>
   </property>
-  <layout class="QGridLayout">
+  <layout class="QGridLayout" name="gridLayout_2">
    <item row="0" column="0">
     <widget class="QLabel" name="label">
      <property name="text">
@@ -27,7 +27,7 @@
      </property>
     </widget>
    </item>
-   <item row="0" column="1" colspan="3">
+   <item row="0" column="1">
     <widget class="QLineEdit" name="summaryEdit">
      <property name="toolTip">
       <string>Enter the task summary</string>
@@ -35,7 +35,7 @@
     </widget>
    </item>
    <item row="1" column="0">
-    <widget class="QLabel" name="textLabel1">
+    <widget class="QLabel" name="descriptionLabel">
      <property name="text">
       <string>&amp;Description:</string>
      </property>
@@ -47,66 +47,129 @@
      </property>
     </widget>
    </item>
-   <item row="1" column="1" colspan="3">
+   <item row="1" column="1">
     <widget class="QTextEdit" name="descriptionEdit">
      <property name="toolTip">
       <string>Enter the task description</string>
      </property>
     </widget>
    </item>
-   <item row="2" column="0">
-    <widget class="QLabel" name="textLabel2">
-     <property name="text">
-      <string>Creation Time:</string>
+   <item row="2" column="0" colspan="2">
+    <widget class="QFrame" name="manualTaskFrame">
+     <property name="frameShape">
+      <enum>QFrame::NoFrame</enum>
+     </property>
+     <property name="frameShadow">
+      <enum>QFrame::Plain</enum>
      </property>
-    </widget>
-   </item>
-   <item row="2" column="1" colspan="3">
-    <widget class="QLabel" name="creationLabel">
-     <property name="sizePolicy">
-      <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
-       <horstretch>0</horstretch>
-       <verstretch>0</verstretch>
-      </sizepolicy>
-     </property>
-    </widget>
-   </item>
-   <item row="3" column="0">
-    <widget class="QLabel" name="textLabel4">
-     <property name="text">
-      <string>&amp;Priority:</string>
-     </property>
-     <property name="buddy">
-      <cstring>priorityCombo</cstring>
-     </property>
+     <layout class="QVBoxLayout" name="verticalLayout">
+      <item>
+       <layout class="QHBoxLayout" name="horizontalLayout_2">
+        <item>
+         <widget class="QLabel" name="textLabel2">
+          <property name="text">
+           <string>Creation Time:</string>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <widget class="QLabel" name="creationLabel">
+          <property name="sizePolicy">
+           <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
+            <horstretch>0</horstretch>
+            <verstretch>0</verstretch>
+           </sizepolicy>
+          </property>
+         </widget>
+        </item>
+       </layout>
+      </item>
+      <item>
+       <layout class="QHBoxLayout" name="horizontalLayout">
+        <item>
+         <widget class="QLabel" name="textLabel4">
+          <property name="text">
+           <string>&amp;Priority:</string>
+          </property>
+          <property name="buddy">
+           <cstring>priorityCombo</cstring>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <widget class="QComboBox" name="priorityCombo">
+          <property name="toolTip">
+           <string>Select the task priority</string>
+          </property>
+          <property name="currentIndex">
+           <number>1</number>
+          </property>
+          <item>
+           <property name="text">
+            <string>High</string>
+           </property>
+          </item>
+          <item>
+           <property name="text">
+            <string>Normal</string>
+           </property>
+          </item>
+          <item>
+           <property name="text">
+            <string>Low</string>
+           </property>
+          </item>
+         </widget>
+        </item>
+        <item>
+         <widget class="QLabel" name="label_2">
+          <property name="text">
+           <string>Type:</string>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <widget class="QComboBox" name="typeCombo">
+          <property name="toolTip">
+           <string>Select the task type</string>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <spacer name="horizontalSpacer">
+          <property name="orientation">
+           <enum>Qt::Horizontal</enum>
+          </property>
+          <property name="sizeHint" stdset="0">
+           <size>
+            <width>40</width>
+            <height>20</height>
+           </size>
+          </property>
+         </spacer>
+        </item>
+       </layout>
+      </item>
+      <item>
+       <widget class="QCheckBox" name="completedCheckBox">
+        <property name="sizePolicy">
+         <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
+          <horstretch>0</horstretch>
+          <verstretch>0</verstretch>
+         </sizepolicy>
+        </property>
+        <property name="toolTip">
+         <string>Select to mark this task as completed</string>
+        </property>
+        <property name="text">
+         <string>T&amp;ask completed</string>
+        </property>
+       </widget>
+      </item>
+     </layout>
     </widget>
    </item>
-   <item row="3" column="1">
-    <widget class="QComboBox" name="priorityCombo">
-     <property name="toolTip">
-      <string>Select the task priority</string>
-     </property>
-     <property name="currentIndex">
-      <number>1</number>
-     </property>
-     <item>
-      <property name="text">
-       <string>High</string>
-      </property>
-     </item>
-     <item>
-      <property name="text">
-       <string>Normal</string>
-      </property>
-     </item>
-     <item>
-      <property name="text">
-       <string>Low</string>
-      </property>
-     </item>
-    </widget>
-   </item>
-   <item row="3" column="2">
+   <item row="3" column="0" colspan="2">
     <widget class="QCheckBox" name="projectCheckBox">
      <property name="toolTip">
       <string>Select to indicate a task related to the current project</string>
@@ -116,57 +179,65 @@
      </property>
     </widget>
    </item>
-   <item row="3" column="3">
-    <widget class="QCheckBox" name="completedCheckBox">
-     <property name="sizePolicy">
-      <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
-       <horstretch>0</horstretch>
-       <verstretch>0</verstretch>
-      </sizepolicy>
+   <item row="4" column="0" colspan="2">
+    <widget class="QFrame" name="fileTaskFrame">
+     <property name="frameShape">
+      <enum>QFrame::NoFrame</enum>
      </property>
-     <property name="toolTip">
-      <string>Select to mark this task as completed</string>
+     <property name="frameShadow">
+      <enum>QFrame::Plain</enum>
      </property>
-     <property name="text">
-      <string>T&amp;ask completed</string>
-     </property>
-    </widget>
-   </item>
-   <item row="4" column="0">
-    <widget class="QLabel" name="textLabel5">
-     <property name="text">
-      <string>Filename:</string>
-     </property>
+     <layout class="QGridLayout" name="gridLayout">
+      <property name="leftMargin">
+       <number>0</number>
+      </property>
+      <property name="topMargin">
+       <number>0</number>
+      </property>
+      <property name="rightMargin">
+       <number>0</number>
+      </property>
+      <property name="bottomMargin">
+       <number>0</number>
+      </property>
+      <item row="1" column="1">
+       <widget class="QLineEdit" name="linenoEdit">
+        <property name="focusPolicy">
+         <enum>Qt::NoFocus</enum>
+        </property>
+        <property name="readOnly">
+         <bool>true</bool>
+        </property>
+       </widget>
+      </item>
+      <item row="1" column="0">
+       <widget class="QLabel" name="linenoLabel">
+        <property name="text">
+         <string>Line:</string>
+        </property>
+       </widget>
+      </item>
+      <item row="0" column="0">
+       <widget class="QLabel" name="filenameLabel">
+        <property name="text">
+         <string>Filename:</string>
+        </property>
+       </widget>
+      </item>
+      <item row="0" column="1">
+       <widget class="QLineEdit" name="filenameEdit">
+        <property name="focusPolicy">
+         <enum>Qt::NoFocus</enum>
+        </property>
+        <property name="readOnly">
+         <bool>true</bool>
+        </property>
+       </widget>
+      </item>
+     </layout>
     </widget>
    </item>
-   <item row="4" column="1" colspan="3">
-    <widget class="QLineEdit" name="filenameEdit">
-     <property name="focusPolicy">
-      <enum>Qt::NoFocus</enum>
-     </property>
-     <property name="readOnly">
-      <bool>true</bool>
-     </property>
-    </widget>
-   </item>
-   <item row="5" column="0">
-    <widget class="QLabel" name="textLabel6">
-     <property name="text">
-      <string>Line:</string>
-     </property>
-    </widget>
-   </item>
-   <item row="5" column="1" colspan="3">
-    <widget class="QLineEdit" name="linenoEdit">
-     <property name="focusPolicy">
-      <enum>Qt::NoFocus</enum>
-     </property>
-     <property name="readOnly">
-      <bool>true</bool>
-     </property>
-    </widget>
-   </item>
-   <item row="6" column="0" colspan="4">
+   <item row="5" column="0" colspan="2">
     <widget class="QDialogButtonBox" name="buttonBox">
      <property name="orientation">
       <enum>Qt::Horizontal</enum>
@@ -183,9 +254,9 @@
   <tabstop>summaryEdit</tabstop>
   <tabstop>descriptionEdit</tabstop>
   <tabstop>priorityCombo</tabstop>
-  <tabstop>projectCheckBox</tabstop>
+  <tabstop>typeCombo</tabstop>
   <tabstop>completedCheckBox</tabstop>
-  <tabstop>buttonBox</tabstop>
+  <tabstop>projectCheckBox</tabstop>
  </tabstops>
  <resources/>
  <connections>
--- a/eric6/Tasks/TaskViewer.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Tasks/TaskViewer.py	Thu Jun 03 11:39:23 2021 +0200
@@ -25,7 +25,7 @@
 from E5Gui import E5MessageBox
 from E5Gui.E5ProgressDialog import E5ProgressDialog
 
-from .Task import Task
+from .Task import Task, TaskType, TaskPriority
 
 import UI.PixmapCache
 
@@ -318,28 +318,39 @@
         """
         self.projectOpen = o
     
-    def addTask(self, summary, priority=1, filename="", lineno=0,
-                completed=False, _time=0, isProjectTask=False,
-                taskType=Task.TypeTodo, description="", uid="",
+    def addTask(self, summary, priority=TaskPriority.NORMAL, filename="",
+                lineno=0, completed=False, _time=0, isProjectTask=False,
+                taskType=TaskType.TODO, description="", uid="",
                 parentTask=None):
         """
         Public slot to add a task.
         
-        @param summary summary text of the task (string)
-        @param priority priority of the task (0=high, 1=normal, 2=low)
-        @param filename filename containing the task (string)
-        @param lineno line number containing the task (integer)
-        @param completed flag indicating completion status (boolean)
-        @param _time creation time of the task (float, if 0 use current time)
+        @param summary summary text of the task
+        @type str
+        @param priority priority of the task
+        @type TaskPriority
+        @param filename filename containing the task
+        @type str
+        @param lineno line number containing the task
+        @type int
+        @param completed flag indicating completion status
+        @type bool
+        @param _time creation time of the task (if 0 use current time)
+        @type float
         @param isProjectTask flag indicating a task related to the current
-            project (boolean)
-        @param taskType type of the task (one of Task.TypeFixme, Task.TypeTodo,
-            Task.TypeWarning, Task.TypeNote)
-        @param description explanatory text of the task (string)
-        @param uid unique id of the task (string)
-        @param parentTask reference to the parent task item (Task) or the
-            UID of the parent task
-        @return reference to the task item (Task)
+            project
+        @type bool
+        @param taskType type of the task
+        @type TaskType
+        @param description explanatory text of the task
+        @type str
+        @param uid unique id of the task
+        @type str
+        @param parentTask reference to the parent task item or the UID of the
+            parent task
+        @type Task or str
+        @return reference to the task item
+        @rtype Task
         """
         if isinstance(parentTask, str):
             # UID of parent task
@@ -377,23 +388,27 @@
         
         return task
     
-    def addFileTask(self, summary, filename, lineno, taskType=Task.TypeTodo,
+    def addFileTask(self, summary, filename, lineno, taskType=TaskType.TODO,
                     description=""):
         """
         Public slot to add a file related task.
         
-        @param summary summary text of the task (string)
-        @param filename filename containing the task (string)
-        @param lineno line number containing the task (integer)
-        @param taskType type of the task (one of Task.TypeFixme, Task.TypeTodo,
-            Task.TypeWarning, Task.TypeNote)
-        @param description explanatory text of the task (string)
+        @param summary summary text of the task
+        @type str
+        @param filename filename containing the task
+        @type str
+        @param lineno line number containing the task
+        @type int
+        @param taskType type of the task
+        @type TaskType
+        @param description explanatory text of the task
+        @type str
         """
         self.addTask(summary, filename=filename, lineno=lineno,
                      isProjectTask=(
                          self.project and
                          self.project.isProjectSource(filename)),
-                     taskType=taskType, description=description)
+                     taskType=TaskType(taskType), description=description)
     
     def getProjectTasks(self):
         """
@@ -478,16 +493,17 @@
         """
         from .TaskPropertiesDialog import TaskPropertiesDialog
         task = self.currentItem()
-        dlg = TaskPropertiesDialog(task, self, self.projectOpen)
-        ro = task.getFilename() != ""
-        if ro:
-            dlg.setReadOnly()
-        if dlg.exec() == QDialog.DialogCode.Accepted and not ro:
-            summary, priority, completed, isProjectTask, description = (
-                dlg.getData()
-            )
+        dlg = TaskPropertiesDialog(task, parent=self,
+                                   projectOpen=self.projectOpen)
+        if (
+            dlg.exec() == QDialog.DialogCode.Accepted and
+            dlg.isManualTaskMode()
+        ):
+            (summary, priority, taskType, completed, isProjectTask,
+             description) = dlg.getData()
             task.setSummary(summary)
             task.setPriority(priority)
+            task.setTaskType(taskType)
             task.setCompleted(completed)
             task.setProjectTask(isProjectTask)
             task.setDescription(description)
@@ -498,13 +514,14 @@
         Private slot to handle the "New Task" context menu entry.
         """
         from .TaskPropertiesDialog import TaskPropertiesDialog
-        dlg = TaskPropertiesDialog(None, self, self.projectOpen)
+        dlg = TaskPropertiesDialog(None, parent=self,
+                                   projectOpen=self.projectOpen)
         if dlg.exec() == QDialog.DialogCode.Accepted:
-            summary, priority, completed, isProjectTask, description = (
-                dlg.getData()
-            )
+            (summary, priority, taskType, completed, isProjectTask,
+             description) = dlg.getData()
             self.addTask(summary, priority, completed=completed,
-                         isProjectTask=isProjectTask, description=description)
+                         isProjectTask=isProjectTask, taskType=taskType,
+                         description=description)
     
     def __newSubTask(self):
         """
@@ -514,15 +531,15 @@
         projectTask = parentTask.isProjectTask()
         
         from .TaskPropertiesDialog import TaskPropertiesDialog
-        dlg = TaskPropertiesDialog(None, self, self.projectOpen)
+        dlg = TaskPropertiesDialog(None, parent=self,
+                                   projectOpen=self.projectOpen)
         dlg.setSubTaskMode(projectTask)
         if dlg.exec() == QDialog.DialogCode.Accepted:
-            summary, priority, completed, isProjectTask, description = (
-                dlg.getData()
-            )
+            (summary, priority, taskType, completed, isProjectTask,
+             description) = dlg.getData()
             self.addTask(summary, priority, completed=completed,
-                         isProjectTask=isProjectTask, description=description,
-                         parentTask=parentTask)
+                         isProjectTask=isProjectTask, taskType=taskType,
+                         description=description, parentTask=parentTask)
     
     def __markCompleted(self):
         """
@@ -816,11 +833,11 @@
     """
     Class implementing a thread to extract tasks related to a project.
     
-    @signal taskFound(str, str, int, int) emitted with the task description,
-        the file name, the line number and task type to signal the presence of
-        a task
+    @signal taskFound(str, str, int, TaskType) emitted with the task
+        description, the file name, the line number and task type to signal
+        the presence of a task
     """
-    taskFound = pyqtSignal(str, str, int, int)
+    taskFound = pyqtSignal(str, str, int, TaskType)
     
     def __init__(self, parent=None):
         """
--- a/eric6/Tasks/TasksFile.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Tasks/TasksFile.py	Thu Jun 03 11:39:23 2021 +0200
@@ -18,6 +18,8 @@
 
 import Preferences
 
+from .Task import TaskType, TaskPriority
+
 
 class TasksFile(QObject):
     """
@@ -135,10 +137,11 @@
         addedTasks = []
         for task in tasksDict["Tasks"]:
             addedTask = viewer.addTask(
-                task["summary"], priority=task["priority"],
+                task["summary"], priority=TaskPriority(task["priority"]),
                 filename=task["filename"], lineno=task["lineno"],
                 completed=task["completed"], _time=task["created"],
-                isProjectTask=not self.__isGlobal, taskType=task["type"],
+                isProjectTask=not self.__isGlobal,
+                taskType=TaskType(task["type"]),
                 description=task["description"], uid=task["uid"],
                 parentTask=task["parent_uid"])
             addedTasks.append((addedTask, task["expanded"]))
--- a/eric6/Tools/UIPreviewer.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Tools/UIPreviewer.py	Thu Jun 03 11:39:23 2021 +0200
@@ -581,8 +581,14 @@
         @param printer reference to the printer object (QPrinter)
         """
         p = QPainter(printer)
-        marginX = (printer.pageRect().x() - printer.paperRect().x()) // 2
-        marginY = (printer.pageRect().y() - printer.paperRect().y()) // 2
+        marginX = (
+            printer.pageLayout().paintRectPixels(printer.resolution()).x() -
+            printer.pageLayout().fullRectPixels(printer.resolution()).x()
+        ) // 2
+        marginY = (
+            printer.pageLayout().paintRectPixels(printer.resolution()).y() -
+            printer.pageLayout().fullRectPixels(printer.resolution()).y()
+        ) // 2
 
         # double the margin on bottom of page
         if printer.orientation() == QPrinter.Orientation.Portrait:
--- a/eric6/UI/Browser.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/UI/Browser.py	Thu Jun 03 11:39:23 2021 +0200
@@ -67,6 +67,7 @@
     @signal pixmapFile(filename) emitted to open a pixmap file (str)
     @signal pixmapEditFile(filename) emitted to edit a pixmap file (str)
     @signal svgFile(filename) emitted to open a SVG file (str)
+    @signal umlFile(filename) emitted to open an eric UML file (str)
     @signal binaryFile(filename) emitted to open a file as binary (str)
     @signal unittestOpen(filename) emitted to open a Python file for a
         unit test (str)
@@ -80,6 +81,7 @@
     pixmapFile = pyqtSignal(str)
     pixmapEditFile = pyqtSignal(str)
     svgFile = pyqtSignal(str)
+    umlFile = pyqtSignal(str)
     binaryFile = pyqtSignal(str)
     unittestOpen = pyqtSignal(str)
     
@@ -494,7 +496,8 @@
                         self.svgFile.emit(itm.fileName())
                     elif itm.isPixmapFile():
                         self.pixmapFile.emit(itm.fileName())
-                    # TODO: add entry for eric graphics files
+                    elif itm.isEricGraphicsFile():
+                        self.umlFile.emit(itm.fileName())
                     else:
                         if Utilities.MimeTypes.isTextFile(itm.fileName()):
                             self.sourceFile[str].emit(itm.fileName())
--- a/eric6/UI/BrowserModel.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/UI/BrowserModel.py	Thu Jun 03 11:39:23 2021 +0200
@@ -1155,7 +1155,6 @@
         
         self._moduleName = ''
         
-        # TODO: add icon for eric graphics file
         pixName = ""
         if self.isPython3File():
             pixName = "filePython"
@@ -1206,6 +1205,8 @@
             self._populated = False
             self._lazyPopulation = True
             self._moduleName = os.path.basename(finfo)
+        elif self.isEricGraphicsFile():
+            pixName = "fileUML"
         else:
             pixName = "fileMisc"
         
--- a/eric6/UI/UserInterface.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/UI/UserInterface.py	Thu Jun 03 11:39:23 2021 +0200
@@ -130,6 +130,7 @@
         self.__nWrite(self.__bufferedWrite())
 
 
+# TODO: add support for QSessionManager to save changed files
 class UserInterface(E5MainWindow):
     """
     Class implementing the main user interface.
@@ -403,6 +404,7 @@
         self.projectBrowser.poBrowser.pixmapEditFile.connect(self.__editPixmap)
         self.projectBrowser.poBrowser.pixmapFile.connect(self.__showPixmap)
         self.projectBrowser.poBrowser.svgFile.connect(self.__showSvg)
+        self.projectBrowser.poBrowser.umlFile.connect(self.__showUml)
         self.projectBrowser.poBrowser.binaryFile.connect(self.__openHexEditor)
         
         self.project.sourceFile.connect(self.viewmanager.openSourceFile)
@@ -504,6 +506,7 @@
             self.browser.pixmapEditFile.connect(self.__editPixmap)
             self.browser.pixmapFile.connect(self.__showPixmap)
             self.browser.svgFile.connect(self.__showSvg)
+            self.browser.umlFile.connect(self.__showUml)
             self.browser.binaryFile.connect(self.__openHexEditor)
             self.browser.unittestOpen.connect(self.__unittestScript)
             self.browser.trpreview.connect(self.__TRPreviewer)
@@ -5431,6 +5434,19 @@
         dlg = SvgDiagram(fn, self)
         dlg.show()
         
+    @pyqtSlot(str)
+    def __showUml(self, fn):
+        """
+        Private slot to show an eric graphics file in a dialog.
+        
+        @param fn name of the file to be shown
+        @type str
+        """
+        from Graphics.UMLDialog import UMLDialog, UMLDialogType
+        dlg = UMLDialog(UMLDialogType.NO_DIAGRAM, self.project, parent=self)
+        if dlg.load(fn):
+            dlg.show(fromFile=True)
+    
     def __snapshot(self):
         """
         Private slot to start the snapshot tool.
@@ -6801,12 +6817,23 @@
             installation list of strings
         """
         from PluginManager.PluginInstallDialog import PluginInstallDialog
-        dlg = PluginInstallDialog(
+        self.__pluginInstallDialog = PluginInstallDialog(
             self.pluginManager,
             [] if pluginFileNames is None else pluginFileNames[:],
             self)
-        dlg.exec()
-        if dlg.restartNeeded():
+        self.__pluginInstallDialog.setModal(False)
+        self.__pluginInstallDialog.finished.connect(
+            self.__pluginInstallFinished)
+        self.__pluginInstallDialog.show()
+        
+    @pyqtSlot()
+    def __pluginInstallFinished(self):
+        """
+        Private slot to handle the finishing of the plugin install dialog.
+        """
+        if self.__pluginInstallDialog.restartNeeded():
+            self.__pluginInstallDialog.deleteLater()
+            del self.__pluginInstallDialog
             self.__restart(ask=True)
         
     def __deinstallPlugin(self):
--- a/eric6/Utilities/BackgroundClient.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Utilities/BackgroundClient.py	Thu Jun 03 11:39:23 2021 +0200
@@ -217,12 +217,17 @@
             self.connection.close()
 
 if __name__ == '__main__':
-    if len(sys.argv) != 4:
-        print('Host, port and max. processes parameters are missing.'
-              ' Aborting.')
+    if len(sys.argv) != 5:
+        print('Host, port, max. processes and Python library path parameters'
+              ' are missing. Aborting...')
         sys.exit(1)
     
-    host, port, maxProcs = sys.argv[1:]
+    host, port, maxProcs, pyLibraryPath = sys.argv[1:]
+    
+    # insert pyLibraryPath into the search path because external stuff might
+    # be installed in the eric (virtual) environment
+    sys.path.insert(1, pyLibraryPath)
+    
     backgroundClient = BackgroundClient(host, int(port), int(maxProcs))
     # Start the main loop
     backgroundClient.run()
--- a/eric6/Utilities/BackgroundService.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Utilities/BackgroundService.py	Thu Jun 03 11:39:23 2021 +0200
@@ -23,8 +23,7 @@
 from E5Gui.E5Application import e5App
 import Preferences
 import Utilities
-
-from eric6config import getConfig
+import Globals
 
 
 class BackgroundService(QTcpServer):
@@ -94,13 +93,17 @@
             return None
         
         backgroundClient = os.path.join(
-            getConfig('ericDir'),
-            "Utilities", "BackgroundClient.py")
+            os.path.dirname(__file__), "BackgroundClient.py")
         proc = QProcess()
         proc.setProcessChannelMode(
             QProcess.ProcessChannelMode.ForwardedChannels)
-        args = [backgroundClient, self.hostAddress, str(port),
-                str(Preferences.getUI("BackgroundServiceProcesses"))]
+        args = [
+            backgroundClient,
+            self.hostAddress,
+            str(port),
+            str(Preferences.getUI("BackgroundServiceProcesses")),
+            Globals.getPythonLibraryDirectory(),
+        ]
         proc.start(interpreter, args)
         if not proc.waitForStarted(10000):
             proc = None
--- a/eric6/Utilities/ModuleParser.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Utilities/ModuleParser.py	Thu Jun 03 11:39:23 2021 +0200
@@ -1213,10 +1213,10 @@
         @return A dictionary with inheritance hierarchies.
         """
         hierarchy = {}
-        for cls in list(list(self.classes.keys())):
-            self.assembleHierarchy(cls, self.classes, [cls], hierarchy)
-        for mod in list(list(self.modules.keys())):
-            self.assembleHierarchy(mod, self.modules, [mod], hierarchy)
+        for class_ in self.classes:
+            self.assembleHierarchy(class_, self.classes, [class_], hierarchy)
+        for module in self.modules:
+            self.assembleHierarchy(module, self.modules, [module], hierarchy)
         return hierarchy
     
     def assembleHierarchy(self, name, classes, path, result):
@@ -1236,16 +1236,16 @@
         """
         rv = {}
         if name in classes:
-            for cls in classes[name].super:
-                if cls not in classes:
-                    rv[cls] = {}
-                    exhausted = path + [cls]
+            for class_ in classes[name].super:
+                if class_ not in classes:
+                    rv[class_] = {}
+                    exhausted = path + [class_]
                     exhausted.reverse()
                     self.addPathToHierarchy(
                         exhausted, result, self.addPathToHierarchy)
                 else:
-                    rv[cls] = self.assembleHierarchy(
-                        cls, classes, path + [cls], result)
+                    rv[class_] = self.assembleHierarchy(
+                        class_, classes, path + [class_], result)
         
         if len(rv) == 0:
             exhausted = path
--- a/eric6/Utilities/__init__.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/Utilities/__init__.py	Thu Jun 03 11:39:23 2021 +0200
@@ -52,7 +52,8 @@
 # import these methods into the Utilities namespace
 from Globals import (  # __IGNORE_WARNING__
     isWindowsPlatform, isLinuxPlatform, isMacPlatform, desktopName,
-    getConfigDir, setConfigDir, getPythonModulesDirectory,
+    getConfigDir, setConfigDir, getPythonLibraryDirectory,
+    getPythonModulesDirectory,      # TODO: eric7: delete this line
     getPyQt5ModulesDirectory, getQtBinariesPath, getPyQtToolsPath,
     qVersionTuple)
 
--- a/eric6/ViewManager/ViewManager.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/ViewManager/ViewManager.py	Thu Jun 03 11:39:23 2021 +0200
@@ -1448,7 +1448,7 @@
         
         self.esm = QSignalMapper(self)
         try:
-            self.alignMapper.mappedInt.connect(self.__editorCommand)
+            self.esm.mappedInt.connect(self.__editorCommand)
         except AttributeError:
             # pre Qt 5.15
             self.esm.mapped[int].connect(self.__editorCommand)
@@ -4420,7 +4420,17 @@
         
         res = self.checkDirty(editor)
         return res
-        
+    
+    def hasDirtyEditor(self):
+        """
+        Public method to ask, if any of the open editors contains unsaved
+        changes.
+        
+        @return flag indicating at least one editor has unsaved changes
+        @rtype bool
+        """
+        return any(editor.isModified() for editor in self.editors)
+    
     def closeEditor(self, editor, ignoreDirty=False):
         """
         Public method to close an editor window.
@@ -4474,13 +4484,16 @@
         
         return res
         
-    def closeAllWindows(self):
-        """
-        Public method to close all editor windows via file menu.
+    def closeAllWindows(self, ignoreDirty=False):
+        """
+        Public method to close all editor windows.
+        
+        @param ignoreDirty flag indicating to ignore the 'dirty' status
+        @type bool
         """
         savedEditors = self.editors[:]
         for editor in savedEditors:
-            self.closeEditor(editor)
+            self.closeEditor(editor, ignoreDirty=ignoreDirty)
         
     def closeWindow(self, fn, ignoreDirty=False):
         """
--- a/eric6/WebBrowser/Sync/FtpSyncHandler.py	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/WebBrowser/Sync/FtpSyncHandler.py	Thu Jun 03 11:39:23 2021 +0200
@@ -85,16 +85,16 @@
         
         # do proxy setup
         proxyType = (
-            E5FtpProxyType.NoProxy
+            E5FtpProxyType.NO_PROXY
             if not Preferences.getUI("UseProxy") else
             Preferences.getUI("ProxyType/Ftp")
         )
-        if proxyType != E5FtpProxyType.NoProxy:
+        if proxyType != E5FtpProxyType.NO_PROXY:
             self.__ftp.setProxy(
                 proxyType,
                 Preferences.getUI("ProxyHost/Ftp"),
                 Preferences.getUI("ProxyPort/Ftp"))
-            if proxyType != E5FtpProxyType.NonAuthorizing:
+            if proxyType != E5FtpProxyType.NON_AUTHORIZING:
                 self.__ftp.setProxyAuthentication(
                     Preferences.getUI("ProxyUser/Ftp"),
                     Preferences.getUI("ProxyPassword/Ftp"),
--- a/eric6/i18n/eric6_cs.ts	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/i18n/eric6_cs.ts	Thu Jun 03 11:39:23 2021 +0200
@@ -1263,45 +1263,60 @@
 <context>
     <name>ApplicationDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="43"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="47"/>
         <source>Application Diagram {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>Parsing modules...</source>
         <translation type="unfinished">Parsování modulů...</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="197"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="252"/>
         <source>&lt;&lt;Application&gt;&gt;</source>
         <translation type="unfinished">&lt;&lt;Aplikace&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="199"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="254"/>
         <source>&lt;&lt;Others&gt;&gt;</source>
         <translation type="unfinished">&lt;&lt;Ostatní&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>Load Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>&lt;p&gt;The diagram belongs to the project &lt;b&gt;{0}&lt;/b&gt;. Shall this project be opened?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>%v/%m Modules</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="69"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
         <source>Application Diagram</source>
         <translation type="unfinished">Diagram aplikace</translation>
     </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="126"/>
+        <source>Select the application directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
+        <source>No application package could be detected. Aborting...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="466"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>ApplicationPage</name>
@@ -1622,47 +1637,47 @@
 <context>
     <name>BackgroundService</name>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="139"/>
+        <location filename="../Utilities/BackgroundService.py" line="142"/>
         <source>{0} not configured.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>Restart background client?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="456"/>
+        <location filename="../Utilities/BackgroundService.py" line="459"/>
         <source>Eric&apos;s background client disconnected because of an unknown reason.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>Background client disconnected.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>&lt;p&gt;The background client for &lt;b&gt;{0}&lt;/b&gt; has stopped due to an exception. It&apos;s used by various plug-ins like the different checkers.&lt;/p&gt;&lt;p&gt;Select&lt;ul&gt;&lt;li&gt;&lt;b&gt;&apos;Yes&apos;&lt;/b&gt; to restart the client, but abort the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Retry&apos;&lt;/b&gt; to restart the client and the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;No&apos;&lt;/b&gt; to leave the client off.&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p&gt;Note: The client can be restarted by opening and accepting the preferences dialog or reloading/changing the project.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>The background client for &lt;b&gt;{0}&lt;/b&gt; disconnected because of an unknown reason.&lt;br&gt;Should it be restarted?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="228"/>
+        <location filename="../Utilities/BackgroundService.py" line="231"/>
         <source>An error in Eric&apos;s background client stopped the service.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>Initialization of Background Service</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>&lt;p&gt;Initialization of Background Service &lt;b&gt;{0}&lt;/b&gt; failed.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2375,42 +2390,42 @@
 <context>
     <name>Browser</name>
     <message>
-        <location filename="../UI/Browser.py" line="94"/>
+        <location filename="../UI/Browser.py" line="96"/>
         <source>File-Browser</source>
         <translation>Prohlížeč souborů</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="284"/>
+        <location filename="../UI/Browser.py" line="286"/>
         <source>Open</source>
         <translation>Otevřít</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="233"/>
+        <location filename="../UI/Browser.py" line="235"/>
         <source>Run unittest...</source>
         <translation>Spustit unittest...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="342"/>
+        <location filename="../UI/Browser.py" line="344"/>
         <source>New toplevel directory...</source>
         <translation>Nový adresář toplevel...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="298"/>
+        <location filename="../UI/Browser.py" line="300"/>
         <source>Add as toplevel directory</source>
         <translation>Přidat jako toplevel adresář</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="301"/>
+        <location filename="../UI/Browser.py" line="303"/>
         <source>Remove from toplevel</source>
         <translation>Odebrat z toplevelu</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="309"/>
+        <location filename="../UI/Browser.py" line="311"/>
         <source>Find in this directory</source>
         <translation>Hledat v tomto adresáři</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="643"/>
+        <location filename="../UI/Browser.py" line="646"/>
         <source>New toplevel directory</source>
         <translation>Nový toplevel adresář</translation>
     </message>
@@ -2425,182 +2440,182 @@
         <translation type="obsolete">Konfigurovat...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="263"/>
+        <location filename="../UI/Browser.py" line="265"/>
         <source>Open in Icon Editor</source>
         <translation>Otevřit v editoru ikon</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="316"/>
+        <location filename="../UI/Browser.py" line="318"/>
         <source>Copy Path to Clipboard</source>
         <translation>Kopírovat cestu do schránky</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="305"/>
+        <location filename="../UI/Browser.py" line="307"/>
         <source>Refresh directory</source>
         <translation>Obnovit složku</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="328"/>
+        <location filename="../UI/Browser.py" line="330"/>
         <source>Goto</source>
         <translation type="unfinished">Jít na</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="435"/>
+        <location filename="../UI/Browser.py" line="437"/>
         <source>Line {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="113"/>
+        <location filename="../UI/Browser.py" line="115"/>
         <source>&lt;b&gt;The Browser Window&lt;/b&gt;&lt;p&gt;This allows you to easily navigate the hierarchy of directories and files on your system, identify the Python programs and open them up in a Source Viewer window. The window displays several separate hierarchies.&lt;/p&gt;&lt;p&gt;The first hierarchy is only shown if you have opened a program for debugging and its root is the directory containing that program. Usually all of the separate files that make up a Python application are held in the same directory, so this hierarchy gives you easy access to most of what you will need.&lt;/p&gt;&lt;p&gt;The next hierarchy is used to easily navigate the directories that are specified in the Python &lt;tt&gt;sys.path&lt;/tt&gt; variable.&lt;/p&gt;&lt;p&gt;The remaining hierarchies allow you navigate your system as a whole. On a UNIX system there will be a hierarchy with &lt;tt&gt;/&lt;/tt&gt; at its root and another with the user home directory. On a Windows system there will be a hierarchy for each drive on the system.&lt;/p&gt;&lt;p&gt;Python programs (i.e. those with a &lt;tt&gt;.py&lt;/tt&gt; file name suffix) are identified in the hierarchies with a Python icon. The right mouse button will popup a menu which lets you open the file in a Source Viewer window, open the file for debugging or use it for a unittest run.&lt;/p&gt;&lt;p&gt;The context menu of a class, function or method allows you to open the file defining this class, function or method and will ensure, that the correct source line is visible.&lt;/p&gt;&lt;p&gt;Qt-Designer files (i.e. those with a &lt;tt&gt;.ui&lt;/tt&gt; file name suffix) are shown with a Designer icon. The context menu of these files allows you to start Qt-Designer with that file.&lt;/p&gt;&lt;p&gt;Qt-Linguist files (i.e. those with a &lt;tt&gt;.ts&lt;/tt&gt; file name suffix) are shown with a Linguist icon. The context menu of these files allows you to start Qt-Linguist with that file.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>Show Mime-Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="528"/>
+        <location filename="../UI/Browser.py" line="531"/>
         <source>The mime type of the file could not be determined.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="546"/>
+        <location filename="../UI/Browser.py" line="549"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="260"/>
+        <location filename="../UI/Browser.py" line="262"/>
         <source>Open in Hex Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="312"/>
+        <location filename="../UI/Browser.py" line="314"/>
         <source>Find &amp;&amp; Replace in this directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="241"/>
+        <location filename="../UI/Browser.py" line="243"/>
         <source>Refresh Source File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="214"/>
+        <location filename="../UI/Browser.py" line="216"/>
         <source>Show Hidden Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="221"/>
-        <source>New</source>
-        <translation type="unfinished">Nový</translation>
-    </message>
-    <message>
         <location filename="../UI/Browser.py" line="223"/>
+        <source>New</source>
+        <translation type="unfinished">Nový</translation>
+    </message>
+    <message>
+        <location filename="../UI/Browser.py" line="225"/>
         <source>Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="226"/>
+        <location filename="../UI/Browser.py" line="228"/>
         <source>File</source>
         <translation type="unfinished">Soubor</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="323"/>
+        <location filename="../UI/Browser.py" line="325"/>
         <source>Delete</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>New Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="861"/>
+        <location filename="../UI/Browser.py" line="864"/>
         <source>Name for new directory:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="902"/>
+        <location filename="../UI/Browser.py" line="905"/>
         <source>A file or directory named &lt;b&gt;{0}&lt;/b&gt; exists already. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>&lt;p&gt;The directory &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>New File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="894"/>
+        <location filename="../UI/Browser.py" line="897"/>
         <source>Name for new file:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="942"/>
+        <location filename="../UI/Browser.py" line="945"/>
         <source>Do you really want to move this file to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="946"/>
+        <location filename="../UI/Browser.py" line="949"/>
         <source>Do you really want to delete this file?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>Delete File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>&lt;p&gt;The selected file &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="979"/>
+        <location filename="../UI/Browser.py" line="982"/>
         <source>Do you really want to move this directory to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="983"/>
+        <location filename="../UI/Browser.py" line="986"/>
         <source>Do you really want to delete this directory?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>Delete Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>&lt;p&gt;The selected directory &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1023"/>
+        <location filename="../UI/Browser.py" line="1026"/>
         <source>Do you really want to move these files to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1027"/>
+        <location filename="../UI/Browser.py" line="1030"/>
         <source>Do you really want to delete these files?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1032"/>
+        <location filename="../UI/Browser.py" line="1035"/>
         <source>Delete Files</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3194,6 +3209,32 @@
     </message>
 </context>
 <context>
+    <name>ClassItem</name>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="176"/>
+        <source>Class Attributes:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="211"/>
+        <source>none</source>
+        <translation type="unfinished">none</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="191"/>
+        <source>Instance Attributes:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="210"/>
+        <source>Methods:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>ClearPrivateDataDialog</name>
     <message>
         <location filename="../UI/ClearPrivateDataDialog.ui" line="14"/>
@@ -4713,7 +4754,7 @@
 <context>
     <name>CodingError</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="131"/>
+        <location filename="../Utilities/__init__.py" line="132"/>
         <source>The coding &apos;{0}&apos; is wrong for the given text.</source>
         <translation>Nesprávné kódování &apos;{0}&apos; pro daný text.</translation>
     </message>
@@ -7106,7 +7147,7 @@
 <context>
     <name>DebugUI</name>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1980"/>
+        <location filename="../Debugger/DebugUI.py" line="1981"/>
         <source>Run Script</source>
         <translation>Spustit skript</translation>
     </message>
@@ -7126,7 +7167,7 @@
         <translation>&lt;b&gt;Spustit skript&lt;/b&gt;&lt;p&gt;Nastavení parametrů příkazové řádky a spuštění skriptu bez debugeru. Pokud jsou v souboru neuložené změny, měly by se nejdříve uložit.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>Run Project</source>
         <translation>Spustit projekt</translation>
     </message>
@@ -7226,7 +7267,7 @@
         <translation>&lt;b&gt;Profilovat projekt&lt;/b&gt;&lt;p&gt;Nastavení parametrů příkazové řádky a spuštění projektu s profilováním kódu. Pokud jsou v projektu neuložené změny, měly by se nejdříve uložit.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2121"/>
+        <location filename="../Debugger/DebugUI.py" line="2122"/>
         <source>Debug Script</source>
         <translation>Debugovat skript</translation>
     </message>
@@ -7246,7 +7287,7 @@
         <translation>&lt;b&gt;Debugovat skript&lt;/b&gt;&lt;p&gt;Nastavení parametrů příkazové řádky a aktuální řádky jako první python příkaz v aktuálním editačním okně. Pokud jsou ve skriptu neuložené změny, měly by se nejdříve uložit.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>Debug Project</source>
         <translation>Debugovat projekt</translation>
     </message>
@@ -7538,37 +7579,37 @@
         <translation>Debugovaný program byl neočekávaně ukončen.</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>Breakpoint Condition Error</source>
         <translation>Chyba v podmíněném breakpointu</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1709"/>
+        <location filename="../Debugger/DebugUI.py" line="1710"/>
         <source>Coverage of Project</source>
         <translation>Pokrytí projektu</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1690"/>
+        <location filename="../Debugger/DebugUI.py" line="1691"/>
         <source>Coverage of Script</source>
         <translation>Pokrytí skriptu</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>There is no main script defined for the current project. Aborting</source>
         <translation>V aktuálním projektu není definován hlavní skript. Zrušeno</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1854"/>
+        <location filename="../Debugger/DebugUI.py" line="1855"/>
         <source>Profile of Project</source>
         <translation>Profilovat projekt</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1835"/>
+        <location filename="../Debugger/DebugUI.py" line="1836"/>
         <source>Profile of Script</source>
         <translation>Profilovat skript</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>There is no main script defined for the current project. No debugging possible.</source>
         <translation>V aktuálním projektu není definován hlavní skript. Debugování není možné.</translation>
     </message>
@@ -7578,12 +7619,12 @@
         <translation>Zastavit běžící skript.</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>Watch Expression Error</source>
         <translation>Chyba sledovacího bodu</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1540"/>
+        <location filename="../Debugger/DebugUI.py" line="1541"/>
         <source>Watch expression already exists</source>
         <translation>Sledovací bod již existuje</translation>
     </message>
@@ -7635,22 +7676,22 @@
         <translation>&lt;p&gt;Debugovaný program vyvolal výjimku  &lt;b&gt;{0}&lt;/b&gt;&lt;br&gt;&quot;&lt;b&gt;{1}&lt;/b&gt;&quot;&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>&lt;p&gt;The condition of the breakpoint &lt;b&gt;{0}, {1}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Podmínka breakpointu &lt;b&gt;{0}, {1}&lt;/b&gt; obsahuje syntaktickou chybu.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>&lt;p&gt;The watch expression &lt;b&gt;{0}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Sledovací bod &lt;b&gt;{0}&lt;/b&gt; obsahuje syntaktickou chybu.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1530"/>
+        <location filename="../Debugger/DebugUI.py" line="1531"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; already exists.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Sledovací bod &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; již existuje.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1535"/>
+        <location filename="../Debugger/DebugUI.py" line="1536"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; for the variable &lt;b&gt;{1}&lt;/b&gt; already exists.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Sledovací bod &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; pro proměnnou &lt;b&gt;{1}&lt;/b&gt; již existuje.&lt;/p&gt;</translation>
     </message>
@@ -7705,7 +7746,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1418"/>
+        <location filename="../Debugger/DebugUI.py" line="1419"/>
         <source>No locals available.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -10164,9 +10205,17 @@
 &lt;li&gt;Tažením kurzoru myši na výběru se vybrané položky posunují.&lt;/li&gt;
 &lt;/ul&gt;</translation>
     </message>
-    <message>
-        <location filename="../E5Graphics/E5GraphicsView.py" line="417"/>
-        <source>{0}, Page {1}</source>
+</context>
+<context>
+    <name>E5JsonServer</name>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>JSON Protocol Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>&lt;p&gt;The response received from the client could not be decoded. Please report this issue with the received data to the eric bugs email address.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;&lt;p&gt;Data:&lt;br/&gt;{1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -12180,12 +12229,12 @@
         <translation>Včetně atributů třídy?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Application Diagram</source>
         <translation>Diagram aplikace</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Include module names?</source>
         <translation>Včetně jmen modulů?</translation>
     </message>
@@ -12205,12 +12254,12 @@
         <translation>Nebyl zadán forám exportu. Zrušeno....</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Imports Diagram</source>
         <translation>Importovat diagram</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Include imports from external modules?</source>
         <translation>Zahrnout importy z externích modulů?</translation>
     </message>
@@ -12280,7 +12329,7 @@
         <translation>Použít Pygments lexer.</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7944"/>
+        <location filename="../QScintilla/Editor.py" line="7941"/>
         <source>Check spelling...</source>
         <translation>Zatrhnout kontrolu...</translation>
     </message>
@@ -12290,12 +12339,12 @@
         <translation>Zatrhnout výběr kontroly...</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7947"/>
+        <location filename="../QScintilla/Editor.py" line="7944"/>
         <source>Add to dictionary</source>
         <translation>Přidat do slovníku</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7949"/>
+        <location filename="../QScintilla/Editor.py" line="7946"/>
         <source>Ignore All</source>
         <translation>Ignorovat vše</translation>
     </message>
@@ -12430,12 +12479,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>Sort Lines</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>The selection contains illegal data for a numerical sort.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12510,12 +12559,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>Register Mouse Click Handler</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>A mouse click handler for &quot;{0}&quot; was already registered by &quot;{1}&quot;. Aborting request by &quot;{2}&quot;...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12545,12 +12594,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>EditorConfig Properties</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>&lt;p&gt;The EditorConfig properties for file &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12595,7 +12644,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8766"/>
+        <location filename="../QScintilla/Editor.py" line="8763"/>
         <source>Generate Docstring</source>
         <translation type="unfinished"></translation>
     </message>
@@ -19322,7 +19371,7 @@
 <context>
     <name>FileDialogWizardDialog</name>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="72"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="73"/>
         <source>QFileDialog Wizard</source>
         <translation>QFileDialog průvodce</translation>
     </message>
@@ -19452,7 +19501,7 @@
         <translation>Zobrazit jen adresáře</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="89"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="90"/>
         <source>Test</source>
         <translation></translation>
     </message>
@@ -19602,7 +19651,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="67"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="68"/>
         <source>E5FileDialog Wizard</source>
         <translation type="unfinished"></translation>
     </message>
@@ -27072,27 +27121,27 @@
 <context>
     <name>Globals</name>
     <message>
-        <location filename="../Globals/__init__.py" line="451"/>
+        <location filename="../Globals/__init__.py" line="455"/>
         <source>{0:4.2f} Bytes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Globals/__init__.py" line="455"/>
-        <source>{0:4.2f} KiB</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../Globals/__init__.py" line="459"/>
-        <source>{0:4.2f} MiB</source>
+        <source>{0:4.2f} KiB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="463"/>
-        <source>{0:4.2f} GiB</source>
+        <source>{0:4.2f} MiB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="467"/>
+        <source>{0:4.2f} GiB</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Globals/__init__.py" line="471"/>
         <source>{0:4.2f} TiB</source>
         <translation type="unfinished"></translation>
     </message>
@@ -31209,112 +31258,112 @@
         <translation>Vytvoření větve v Mercurial repozitáři</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1939"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1940"/>
         <source>Verifying the integrity of the Mercurial repository</source>
         <translation>Ověřit integritu Mercurial repozitáře</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1953"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1954"/>
         <source>Showing the combined configuration settings</source>
         <translation>Zobrazení nastavení kombinovaných konfigurací</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1966"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1967"/>
         <source>Showing aliases for remote repositories</source>
         <translation>Zobrazení aliasů pro vzdálené úložiště</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1979"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1980"/>
         <source>Recovering from interrupted transaction</source>
         <translation>Obnovení z přerušené transakce</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2166"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2167"/>
         <source>Shall the working directory be updated?</source>
         <translation>Má být pracovní adresář aktualizován?</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1849"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1850"/>
         <source>Showing current branch</source>
         <translation>Zobrazení aktuální větve</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2119"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2120"/>
         <source>Create changegroup</source>
         <translation>Vytvořit skupinu změn</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2178"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2179"/>
         <source>Apply changegroups</source>
         <translation>Použít skupinu změn</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2197"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2198"/>
         <source>Bisect subcommand ({0}) invalid.</source>
         <translation>Neplatný bisect podpříkaz ({0}).</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2217"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2218"/>
         <source>Mercurial Bisect ({0})</source>
         <translation>Mercurial Bisect ({0})</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2129"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2130"/>
         <source>Preview changegroup</source>
         <translation>Náhled skupiny změn</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1992"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1993"/>
         <source>Identifying project directory</source>
         <translation>Rozpoznat složku projektu</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>Create .hgignore file</source>
         <translation>Vytvořit soubor .hgignore</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Soubor &lt;b&gt;{0}&lt;/b&gt; již existuje.&lt;/p&gt;&lt;p&gt;Má se přepsat?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2240"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2241"/>
         <source>Removing files from the Mercurial repository only</source>
         <translation>Odebrat soubory jen z Mercurial úložiště</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2076"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2077"/>
         <source>Mercurial Changegroup Files (*.hg)</source>
         <translation>Soubory Mercurial skupiny změn (*.hg)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2157"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2158"/>
         <source>Mercurial Changegroup Files (*.hg);;All Files (*)</source>
         <translation>Soubory Mercurial skupiny změn (*.hg);;Všechny soubory (*)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2283"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2284"/>
         <source>Backing out changeset</source>
         <translation>Zálohovat skupinu změn</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2263"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2264"/>
         <source>No revision given. Aborting...</source>
         <translation>Nebyla dána žádná revize. Ruším...</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2093"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2094"/>
         <source>&lt;p&gt;The Mercurial changegroup file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2299"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2300"/>
         <source>Rollback last transaction</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2292"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2293"/>
         <source>Are you sure you want to rollback the last transaction?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -31324,72 +31373,72 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>Mercurial Command Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2799"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2800"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be restarted.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2351"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2352"/>
         <source>Import Patch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2392"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2393"/>
         <source>Export Patches</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2431"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2432"/>
         <source>Change Phase</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2480"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2481"/>
         <source>Copy Changesets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2520"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2521"/>
         <source>Copy Changesets (Continue)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2663"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2664"/>
         <source>Add Sub-repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2695"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2696"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be read.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2645"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2646"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub already contains an entry &lt;b&gt;{0}&lt;/b&gt;. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be written to.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>Remove Sub-repositories</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2684"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2685"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub does not exist. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -31419,7 +31468,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2568"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2569"/>
         <source>Create Unversioned Archive</source>
         <translation type="unfinished"></translation>
     </message>
@@ -31444,7 +31493,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1838"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1839"/>
         <source>Created new branch &lt;{0}&gt;.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -31454,62 +31503,62 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3049"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3050"/>
         <source>Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Delete Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Select the bookmark to be deleted:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3074"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3075"/>
         <source>Delete Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3098"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3099"/>
         <source>Rename Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3132"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3133"/>
         <source>Move Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Pull Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Select the bookmark to be pulled:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3213"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3214"/>
         <source>Pulling bookmark from a remote Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Push Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Select the bookmark to be push:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3253"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3254"/>
         <source>Pushing bookmark to a remote Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
@@ -31544,22 +31593,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>Delete All Backups</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>&lt;p&gt;Do you really want to delete all backup bundles stored the backup area &lt;b&gt;{0}&lt;/b&gt;?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2532"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2533"/>
         <source>Copy Changesets (Stop)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2545"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2546"/>
         <source>Copy Changesets (Abort)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -32465,42 +32514,42 @@
 <context>
     <name>HgClient</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="91"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="92"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished">Proces {0} nelze spustit. Ověřte, že je umístěn v požadované cestě.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="140"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="141"/>
         <source>Did not receive the &apos;hello&apos; message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="142"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="143"/>
         <source>Received data on unexpected channel.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="147"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="148"/>
         <source>Bad &apos;hello&apos; message, expected &apos;capabilities: &apos; but got &apos;{0}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="153"/>
         <source>&apos;capabilities&apos; message did not contain any capability.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="160"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="161"/>
         <source>Bad &apos;hello&apos; message, expected &apos;encoding: &apos; but got &apos;{0}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="165"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="166"/>
         <source>&apos;encoding&apos; message did not contain any encoding.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="379"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="380"/>
         <source>For message see output dialog.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -37465,52 +37514,52 @@
 <context>
     <name>HgServeDialog</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="50"/>
         <source>Mercurial Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="53"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="54"/>
         <source>Start Server</source>
         <translation type="unfinished">Spustit server</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="59"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="60"/>
         <source>Stop Server</source>
         <translation type="unfinished">Zastavit server</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="65"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="66"/>
         <source>Start Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="73"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="74"/>
         <source>Enter the server port</source>
         <translation type="unfinished">Zadejte port serveru</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="79"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="80"/>
         <source>Select the style to use</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="83"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="84"/>
         <source>Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="90"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="91"/>
         <source>Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>Process Generation Error</source>
         <translation type="unfinished">Chyba v procesu generování</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished">Proces {0} nelze spustit. Ověřte, že je umístěn v požadované cestě.</translation>
     </message>
@@ -39206,17 +39255,17 @@
 <context>
     <name>HgUtilities</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="93"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="128"/>
         <source>The hg process finished with the exit code {0}</source>
         <translation type="unfinished">hg proces skončil s exit kódem {0}</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="98"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="133"/>
         <source>The hg process did not finish within 30s.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="102"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="137"/>
         <source>Could not start the hg executable.</source>
         <translation type="unfinished">Nelze spustit hg program.</translation>
     </message>
@@ -41440,35 +41489,40 @@
 <context>
     <name>ImportsDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>Parsing modules...</source>
         <translation type="unfinished">Parsování modulů...</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="124"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="136"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a Python package.</source>
         <translation type="unfinished">Adresář &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; není Python balíček.</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>%v/%m Modules</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="95"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="107"/>
         <source>Imports Diagramm</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="410"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>InputDialogWizard</name>
@@ -43230,22 +43284,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="252"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="251"/>
         <source>Yes</source>
         <translation type="unfinished">Ano</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="254"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="253"/>
         <source>No</source>
         <translation type="unfinished">Ne</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Delete Channel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Do you really want to delete channel &lt;b&gt;{0}&lt;/b&gt;?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51261,45 +51315,60 @@
 <context>
     <name>PackageDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>Parsing modules...</source>
         <translation type="unfinished">Parsování modulů...</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="205"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="219"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a package.</source>
         <translation type="unfinished">Adresář &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; není balíček.</translation>
     </message>
     <message>
         <location filename="../Graphics/PackageDiagramBuilder.py" line="214"/>
         <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules.</source>
-        <translation type="unfinished">Balíček &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; neobsahuje žádné moduly.</translation>
+        <translation type="obsolete">Balíček &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; neobsahuje žádné moduly.</translation>
     </message>
     <message>
         <location filename="../Graphics/PackageDiagramBuilder.py" line="231"/>
         <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
-        <translation type="unfinished">Balíček &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; neobsahuje žádné třídy.</translation>
-    </message>
-    <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <translation type="obsolete">Balíček &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; neobsahuje žádné třídy.</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>%v/%m Modules</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="158"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="172"/>
         <source>Package Diagram</source>
         <translation type="unfinished">Diagram balíčku</translation>
     </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="230"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules or subpackages.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="247"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes or subpackages.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="555"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageScreenDialog</name>
@@ -52821,42 +52890,42 @@
 <context>
     <name>PixmapDiagram</name>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>Pixmap-Viewer</source>
         <translation>Pixmap prohlížeč</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="98"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="101"/>
         <source>Print</source>
         <translation>Tisk</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="93"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="96"/>
         <source>Close</source>
         <translation>Zavřít</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="133"/>
-        <source>Window</source>
-        <translation>Okno</translation>
-    </message>
-    <message>
         <location filename="../Graphics/PixmapDiagram.py" line="137"/>
+        <source>Window</source>
+        <translation>Okno</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PixmapDiagram.py" line="141"/>
         <source>Graphics</source>
         <translation>Grafika</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="103"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="106"/>
         <source>Print Preview</source>
         <translation>Náhled tisku</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; cannot be displayed. The format is not supported.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Soubor &lt;b&gt;{0}&lt;/b&gt; nemůže být zobrazen. Tento formát není podporován.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="391"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="416"/>
         <source>Diagram: {0}</source>
         <translation>Diagram: {0}</translation>
     </message>
@@ -53136,7 +53205,7 @@
         <translation>Některé pluginy nebyly instalovány.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="501"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="485"/>
         <source>Unspecific exception installing plugin.</source>
         <translation>Neznámá výjimka při instalaci pluginu.</translation>
     </message>
@@ -53195,7 +53264,7 @@
         <translation>&lt;p&gt;Plugin modul &lt;b&gt;{0}&lt;/b&gt; již existuje. Zrušeno...&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="492"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="476"/>
         <source>Error installing plugin. Reason: {0}</source>
         <translation>Chyba při instalaci pluginu. Důvod: {0}</translation>
     </message>
@@ -53203,22 +53272,22 @@
 <context>
     <name>PluginManager</name>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="614"/>
+        <location filename="../PluginManager/PluginManager.py" line="623"/>
         <source>Incompatible plugin activation method.</source>
         <translation>Nekompatibilní metoda aktivace pluginu.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="404"/>
+        <location filename="../PluginManager/PluginManager.py" line="410"/>
         <source>Module is missing the &apos;autoactivate&apos; attribute.</source>
         <translation>Modulu chybí atribut &apos;autoaktivace&apos;.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="415"/>
+        <location filename="../PluginManager/PluginManager.py" line="421"/>
         <source>Module is missing the &apos;pluginType&apos; and/or &apos;pluginTypename&apos; attributes.</source>
         <translation>Modulu chybí atributy &apos;pluginType&apos; a/nebo &apos;pluginTypename&apos;.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>Plugin Manager Error</source>
         <translation>Chyba plugin manažeru</translation>
     </message>
@@ -53233,32 +53302,32 @@
         <translation>Interní adresář zásuvných modulů &lt;b&gt;{0}&lt;/b&gt; neexistuje.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="437"/>
+        <location filename="../PluginManager/PluginManager.py" line="446"/>
         <source>Module failed to load. Error: {0}</source>
         <translation>Modul se nepodařilo načíst. Chyba: {0}</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>&lt;p&gt;The plugin download directory &lt;b&gt;{0}&lt;/b&gt; could not be created. Please configure it via the configuration dialog.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Download plugin adresář &lt;b&gt;{0}&lt;/b&gt; se nepodařilo vytvořit. Prosím, upravte nastavení přes konfigurační dialog.&lt;/p&gt;&lt;p&gt;Důvod: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>Error downloading file</source>
         <translation type="unfinished">Chyba při stahování souboru</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>&lt;p&gt;Could not download the requested file from {0}.&lt;/p&gt;&lt;p&gt;Error: {1}&lt;/p&gt;</source>
         <translation type="unfinished">&lt;p&gt;Nelze stáhnout požadovaný soubor z {0}.&lt;/p&gt;&lt;p&gt;Chyba: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>New plugin versions available</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>&lt;p&gt;There are new plug-ins or plug-in updates available. Use the plug-in repository dialog to get them.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -55334,7 +55403,7 @@
         <translation>Včetně jmen modulů?</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>Create Package List</source>
         <translation>Vytvořit seznam balíčků</translation>
     </message>
@@ -55344,17 +55413,17 @@
         <translation type="unfinished">Vytvořit Plugin &amp;archiv</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>Create Plugin Archive</source>
         <translation>Vytvořit Plugin archiv</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5264"/>
+        <location filename="../Project/Project.py" line="5265"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; already exists.&lt;/p&gt;&lt;p&gt;Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Soubor &lt;b&gt;PKGLIST&lt;/b&gt; již existuje.&lt;/p&gt;&lt;p&gt;Přepsat jej?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5331"/>
+        <location filename="../Project/Project.py" line="5332"/>
         <source>The project does not have a main script defined. Aborting...</source>
         <translation>Projekt nemá definován hlavní skript. Zrušeno...</translation>
     </message>
@@ -55514,17 +55583,17 @@
         <translation>&lt;p&gt;Vybrané VCS &lt;b&gt;{0}&lt;/b&gt; nebylo nalezeno.&lt;br/&gt;Kontrola verzí vypnuta.&lt;/p&gt;&lt;p&gt;{1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Soubor &lt;b&gt;PKGLIST&lt;/b&gt; nelze vytvořit.&lt;/p&gt;&lt;p&gt;Důvod: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5467"/>
+        <location filename="../Project/Project.py" line="5468"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be stored in the archive. Ignoring it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Soubor &lt;b&gt;{0}&lt;/b&gt; nelze uložit do archivu. Ingorováno.&lt;/p&gt;&lt;p&gt;Důvod: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5536"/>
+        <location filename="../Project/Project.py" line="5537"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Plugin soubor &lt;b&gt;{0}&lt;/b&gt; nelze přečíst.&lt;/p&gt;&lt;p&gt;Důvod: {1}&lt;/p&gt;</translation>
     </message>
@@ -55594,7 +55663,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt; &lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -55655,7 +55724,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5367"/>
+        <location filename="../Project/Project.py" line="5368"/>
         <source>Create Plugin Archives</source>
         <translation type="unfinished"></translation>
     </message>
@@ -55670,37 +55739,37 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5345"/>
+        <location filename="../Project/Project.py" line="5346"/>
         <source>Select package lists:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Creating plugin archives...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Abort</source>
         <translation type="unfinished">Přerušit</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>%v/%m Archives</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5378"/>
+        <location filename="../Project/Project.py" line="5379"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5356"/>
+        <location filename="../Project/Project.py" line="5357"/>
         <source>&lt;p&gt;No package list files (PKGLIST*) available or selected. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5405"/>
+        <location filename="../Project/Project.py" line="5406"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; is not ready yet.&lt;/p&gt;&lt;p&gt;Please rework it and delete the&apos;; initial_list&apos; line of the header.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -55740,7 +55809,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>Execute Make</source>
         <translation type="unfinished"></translation>
     </message>
@@ -55760,7 +55829,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5744"/>
+        <location filename="../Project/Project.py" line="5745"/>
         <source>Test for Changes</source>
         <translation type="unfinished"></translation>
     </message>
@@ -55785,27 +55854,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5692"/>
+        <location filename="../Project/Project.py" line="5693"/>
         <source>The make process did not start.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5737"/>
+        <location filename="../Project/Project.py" line="5738"/>
         <source>The make process crashed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5747"/>
+        <location filename="../Project/Project.py" line="5748"/>
         <source>&lt;p&gt;There are changes that require the configured make target &lt;b&gt;{0}&lt;/b&gt; to be rebuilt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5752"/>
+        <location filename="../Project/Project.py" line="5753"/>
         <source>&lt;p&gt;There are changes that require the default make target to be rebuilt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>The makefile contains errors.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -55880,17 +55949,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5432"/>
+        <location filename="../Project/Project.py" line="5433"/>
         <source>&lt;p&gt;The eric plugin archive file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5484"/>
+        <location filename="../Project/Project.py" line="5485"/>
         <source>&lt;p&gt;The eric plugin archive files were created with some errors.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5492"/>
+        <location filename="../Project/Project.py" line="5493"/>
         <source>&lt;p&gt;The eric plugin archive files were created successfully.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56734,12 +56803,12 @@
         <translation>Složit všechny adresáře</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Delete files/directories</source>
         <translation>Smazat soubory/adresáře</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Do you really want to delete these entries from the project?</source>
         <translation>Opravdu chcete odebrat tyto položky z projektu?</translation>
     </message>
@@ -56759,22 +56828,22 @@
         <translation>Kopírovat cestu do schránky</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>Show Mime-Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="272"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="273"/>
         <source>The mime type of the file could not be determined.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="286"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="287"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -57486,22 +57555,22 @@
         <translation>Diagram třídy</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Include class attributes?</source>
         <translation>Včetně atributů třídy?</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Package Diagram</source>
         <translation>Diagram balíčku</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Application Diagram</source>
         <translation>Diagram aplikace</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Include module names?</source>
         <translation>Včetně jmen modulů?</translation>
     </message>
@@ -57516,12 +57585,12 @@
         <translation>Přidat nový Python balíček</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Imports Diagram</source>
         <translation>Importovat diagram</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Include imports from external modules?</source>
         <translation>Zahrnout importy z externích modulů?</translation>
     </message>
@@ -70283,37 +70352,37 @@
 <context>
     <name>SvgDiagram</name>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="50"/>
+        <location filename="../Graphics/SvgDiagram.py" line="53"/>
         <source>SVG-Viewer</source>
         <translation>SVG prohlížeč</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="92"/>
+        <location filename="../Graphics/SvgDiagram.py" line="95"/>
         <source>Close</source>
         <translation>Zavřít</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="97"/>
+        <location filename="../Graphics/SvgDiagram.py" line="100"/>
         <source>Print</source>
         <translation>Tisk</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="132"/>
-        <source>Window</source>
-        <translation>Okno</translation>
-    </message>
-    <message>
         <location filename="../Graphics/SvgDiagram.py" line="136"/>
+        <source>Window</source>
+        <translation>Okno</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/SvgDiagram.py" line="140"/>
         <source>Graphics</source>
         <translation>Grafika</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="102"/>
+        <location filename="../Graphics/SvgDiagram.py" line="105"/>
         <source>Print Preview</source>
         <translation>Náhled tisku</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="363"/>
+        <location filename="../Graphics/SvgDiagram.py" line="385"/>
         <source>Diagram: {0}</source>
         <translation>Diagram: {0}</translation>
     </message>
@@ -76094,62 +76163,62 @@
         <translation>Nastavení úlohy</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="87"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="102"/>
         <source>Select the task priority</source>
         <translation>Vybrat prioritu úlohy</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="94"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="109"/>
         <source>High</source>
         <translation>Vysoká</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="99"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="114"/>
         <source>Normal</source>
         <translation>Normální</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="104"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="119"/>
         <source>Low</source>
         <translation>Nízká</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="112"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="175"/>
         <source>Select to indicate a task related to the current project</source>
         <translation>Vybrat pro označení, že úloha souvisí s aktuálním projektem</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="115"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="178"/>
         <source>Project &amp;Task</source>
         <translation>Úloha projek&amp;tu</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="128"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="162"/>
         <source>Select to mark this task as completed</source>
         <translation>Vybrat pro označení, že tato úloha je hotova</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="131"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="165"/>
         <source>T&amp;ask completed</source>
         <translation>Úloh&amp;a je hotová</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="155"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="216"/>
         <source>Line:</source>
         <translation>Řádek:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="138"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="223"/>
         <source>Filename:</source>
         <translation>Jméno souboru:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="77"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="92"/>
         <source>&amp;Priority:</source>
         <translation>&amp;Priorita:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="60"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="71"/>
         <source>Creation Time:</source>
         <translation>Čas vzniku:</translation>
     </message>
@@ -76173,6 +76242,46 @@
         <source>Enter the task summary</source>
         <translation>Zadejte úlohu sumarizace</translation>
     </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="127"/>
+        <source>Type:</source>
+        <translation type="unfinished">Typ:</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="134"/>
+        <source>Select the task type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="41"/>
+        <source>Bugfix</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="42"/>
+        <source>Warning</source>
+        <translation type="unfinished">Varování</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="43"/>
+        <source>ToDo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="44"/>
+        <source>Note</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="45"/>
+        <source>Test</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="46"/>
+        <source>Documentation</source>
+        <translation type="unfinished">Dokumentace</translation>
+    </message>
 </context>
 <context>
     <name>TaskViewer</name>
@@ -76242,12 +76351,12 @@
         <translation>&amp;Změnit šířky sloupců</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>Activate task filter</source>
         <translation>Aktivovat filtr úloh</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>The task filter doesn&apos;t have any active filters. Do you want to configure the filter settings?</source>
         <translation>Filtr úloh nemá žádný aktivní. Chcete konfigurovat nastavení filtru?</translation>
     </message>
@@ -76257,12 +76366,12 @@
         <translation>Znovu vygene&amp;rovat úlohy projektu</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Extracting project tasks...</source>
         <translation>Extrahovat úlohy projektu...</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Abort</source>
         <translation>Přerušit</translation>
     </message>
@@ -76277,7 +76386,7 @@
         <translation>Konfigurovat...</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="738"/>
+        <location filename="../Tasks/TaskViewer.py" line="755"/>
         <source>Extracting project tasks...
 {0}</source>
         <translation>Extrahování úloh projektu....{0}</translation>
@@ -76288,12 +76397,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Scan Filter Patterns</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Enter filename patterns of files to be excluded separated by a comma:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -76303,12 +76412,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>%v/%m Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="734"/>
+        <location filename="../Tasks/TaskViewer.py" line="751"/>
         <source>Tasks</source>
         <translation type="unfinished">Úlohy</translation>
     </message>
@@ -76336,22 +76445,22 @@
 <context>
     <name>TasksFile</name>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>Save Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>Read Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -78776,213 +78885,238 @@
 <context>
     <name>UMLClassDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="83"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="96"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; could not be found.</source>
         <translation type="unfinished">Modul &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; nebyl nalezen.</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="145"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="159"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
         <translation type="unfinished">Modul &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; neobsahuje žádné třídy.</translation>
     </message>
+    <message>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="394"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>UMLDialog</name>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="82"/>
+        <location filename="../Graphics/UMLDialog.py" line="113"/>
         <source>Close</source>
         <translation>Zavřít</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="122"/>
+        <location filename="../Graphics/UMLDialog.py" line="153"/>
         <source>Window</source>
         <translation>Okno</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="87"/>
+        <location filename="../Graphics/UMLDialog.py" line="118"/>
         <source>Load</source>
         <translation type="unfinished">Načíst</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="92"/>
+        <location filename="../Graphics/UMLDialog.py" line="123"/>
         <source>Save</source>
         <translation type="unfinished">Uložit</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="97"/>
+        <location filename="../Graphics/UMLDialog.py" line="128"/>
         <source>Save As...</source>
         <translation type="unfinished">Uložit jako...</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="107"/>
+        <location filename="../Graphics/UMLDialog.py" line="138"/>
         <source>Print</source>
         <translation type="unfinished">Tisk</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="112"/>
+        <location filename="../Graphics/UMLDialog.py" line="143"/>
         <source>Print Preview</source>
         <translation type="unfinished">Náhled tisku</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="126"/>
+        <location filename="../Graphics/UMLDialog.py" line="157"/>
         <source>File</source>
         <translation type="unfinished">Soubor</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="178"/>
-        <source>Illegal diagram type &apos;{0}&apos; given.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>Save Diagram</source>
         <translation type="unfinished">Uložit diagram</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="230"/>
+        <location filename="../Graphics/UMLDialog.py" line="257"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished">&lt;p&gt;Soubor &lt;b&gt;{0}&lt;/b&gt; již existuje.&lt;/p&gt;&lt;p&gt;Má se přepsat?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="386"/>
+        <location filename="../Graphics/UMLDialog.py" line="551"/>
         <source>Load Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="287"/>
+        <location filename="../Graphics/UMLDialog.py" line="518"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;&lt;p&gt;Invalid line: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="102"/>
+        <location filename="../Graphics/UMLDialog.py" line="133"/>
         <source>Save as Image</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="274"/>
-        <source>Eric Graphics File (*.e5g);;All Files (*)</source>
+        <location filename="../Graphics/UMLDialog.py" line="43"/>
+        <source>Class Diagram</source>
+        <translation type="unfinished">Diagram třídy</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="45"/>
+        <source>Package Diagram</source>
+        <translation type="unfinished">Diagram balíčku</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="47"/>
+        <source>Imports Diagram</source>
+        <translation type="unfinished">Importovat diagram</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="49"/>
+        <source>Application Diagram</source>
+        <translation type="unfinished">Diagram aplikace</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="105"/>
+        <source>Illegal Diagram Type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="289"/>
+        <source>Eric Graphics File (*.egj);;Eric Text Graphics File (*.e5g);;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>UMLGraphicsView</name>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="83"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="85"/>
         <source>Delete shapes</source>
         <translation>Smazat tvary</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="116"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="118"/>
         <source>Set size</source>
         <translation>Nastavit velikost</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="126"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="128"/>
         <source>Re-Layout</source>
         <translation>Znovu-Layout</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="219"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="233"/>
         <source>Graphics</source>
         <translation>Grafika</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>Save Diagram</source>
         <translation>Uložit diagram</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="131"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="133"/>
         <source>Align Left</source>
         <translation>Zarovnat vlevo</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="138"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="140"/>
         <source>Align Center Horizontal</source>
         <translation>Zarovnat vodorovně na střed</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="145"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="147"/>
         <source>Align Right</source>
         <translation>Zarovnat vpravo</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="152"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="154"/>
         <source>Align Top</source>
         <translation>Zarovnat nahoru</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="159"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="161"/>
         <source>Align Center Vertical</source>
         <translation>Zarovnat svisle na střed</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="166"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="168"/>
         <source>Align Bottom</source>
         <translation>Zarovnat dolu</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="341"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="360"/>
         <source>Portable Network Graphics (*.png);;Scalable Vector Graphics (*.svg)</source>
         <translation>Portable Network Graphics (*.png);;Scalable Vector Graphics (*.svg)</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="88"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="90"/>
         <source>Increase width by {0} points</source>
         <translation>Zvětšit šířku o {0} body</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="95"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="97"/>
         <source>Increase height by {0} points</source>
         <translation>Zvětšit výšku o {0} body</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="102"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="104"/>
         <source>Decrease width by {0} points</source>
         <translation>Zmenšit šířku o {0} body</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="109"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="111"/>
         <source>Decrease height by {0} points</source>
         <translation>Zmenšit výšku o {0} body</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Soubor &lt;b&gt;{0}&lt;/b&gt; nelze uložit.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="356"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="375"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished">&lt;p&gt;Soubor &lt;b&gt;{0}&lt;/b&gt; již existuje.&lt;/p&gt;&lt;p&gt;Má se přepsat?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="121"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="123"/>
         <source>Re-Scan</source>
         <translation type="unfinished"></translation>
     </message>
@@ -79066,7 +79200,7 @@
 <context>
     <name>UnittestDialog</name>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>Unittest</source>
         <translation></translation>
     </message>
@@ -79251,17 +79385,17 @@
         <translation type="obsolete">Musíte zadat soubor soupravy testu.</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="699"/>
         <source>Preparing Testsuite</source>
         <translation>Příprava soupravy testu</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="989"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="991"/>
         <source>Running</source>
         <translation>Běží</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1162"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1164"/>
         <source>Show Source</source>
         <translation>Zobrazit zdroj</translation>
     </message>
@@ -79291,12 +79425,12 @@
         <translation type="obsolete">Doběhlo {0} testů za {1:.3f}s</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1033"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1035"/>
         <source>Failure: {0}</source>
         <translation>Selhalo: {0}</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1048"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1050"/>
         <source>Error: {0}</source>
         <translation>Chyby: {0}</translation>
     </message>
@@ -79331,17 +79465,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1063"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1065"/>
         <source>    Skipped: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1081"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1083"/>
         <source>    Expected Failure</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1098"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1100"/>
         <source>    Unexpected Success</source>
         <translation type="unfinished"></translation>
     </message>
@@ -79443,17 +79577,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="707"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
         <source>Unittest with auto-discovery</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="791"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="787"/>
         <source>You must enter a start directory for auto-discovery.</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="1013"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1015"/>
         <source>Ran %n test(s) in {0:.3f}s</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -79487,7 +79621,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="623"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="619"/>
         <source>Discovered %n Test(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -79496,22 +79630,22 @@
         </translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="628"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="624"/>
         <source>&lt;p&gt;Unable to discover tests.&lt;/p&gt;&lt;p&gt;{0}&lt;br/&gt;{1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="694"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="690"/>
         <source>You must select auto-discovery or enter a test suite file or a dotted test name.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="716"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="712"/>
         <source>&lt;Unnamed Test&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>&lt;p&gt;Unable to run test &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;{1}&lt;br/&gt;{2}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -79541,7 +79675,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="724"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="720"/>
         <source>No test case has been selected. Shall all test cases be run?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -79550,6 +79684,11 @@
         <source>Python3 Files ({0});;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../PyUnit/UnittestDialog.py" line="881"/>
+        <source>No unittest were found. Aborting...</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>UnknownDevicesDialog</name>
@@ -79788,568 +79927,568 @@
 <context>
     <name>UserInterface</name>
     <message>
-        <location filename="../UI/UserInterface.py" line="282"/>
+        <location filename="../UI/UserInterface.py" line="283"/>
         <source>Generating Main User Interface...</source>
         <translation>Generování hlavního uživatelského rozhraní...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="332"/>
+        <location filename="../UI/UserInterface.py" line="333"/>
         <source>Setting up connections...</source>
         <translation>Nastavení připojení...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="577"/>
+        <location filename="../UI/UserInterface.py" line="580"/>
         <source>Initializing Tools...</source>
         <translation>Inicializace nástrojů...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="587"/>
+        <location filename="../UI/UserInterface.py" line="590"/>
         <source>Registering Objects...</source>
         <translation>Registrování objektů...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="624"/>
+        <location filename="../UI/UserInterface.py" line="627"/>
         <source>Initializing Actions...</source>
         <translation>Inicializace akcí...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="626"/>
+        <location filename="../UI/UserInterface.py" line="629"/>
         <source>Initializing Menus...</source>
         <translation>Inicializace menu...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="628"/>
+        <location filename="../UI/UserInterface.py" line="631"/>
         <source>Initializing Toolbars...</source>
         <translation>Inicializace nástrojových lišt...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="630"/>
+        <location filename="../UI/UserInterface.py" line="633"/>
         <source>Initializing Statusbar...</source>
         <translation>Inicializace statusbaru...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="657"/>
+        <location filename="../UI/UserInterface.py" line="660"/>
         <source>Initializing Single Application Server...</source>
         <translation>Inicializace jednouživatelského aplikačního serveru...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Project-Viewer</source>
         <translation>Prohlížeč projektu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Debug-Viewer</source>
         <translation>Prohlížeč debugeru</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Log-Viewer</source>
         <translation>Prohlížeč logu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Task-Viewer</source>
         <translation>Prohlížeč úloh</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Template-Viewer</source>
         <translation>Prohlížeč šablon</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Shell</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>File-Browser</source>
         <translation>Browser souborů</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Quit</source>
         <translation>Konec</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>&amp;Quit</source>
         <translation>&amp;Konec</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Ctrl+Q</source>
         <comment>File|Quit</comment>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1642"/>
+        <location filename="../UI/UserInterface.py" line="1645"/>
         <source>Quit the IDE</source>
         <translation>Ukončit IDE</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1643"/>
+        <location filename="../UI/UserInterface.py" line="1646"/>
         <source>&lt;b&gt;Quit the IDE&lt;/b&gt;&lt;p&gt;This quits the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Ukončit IDE&lt;/b&gt;&lt;p&gt;Ukončí se IDE. Nejdříve by se měly uložit neuložené změny. Python programy běžící v debug procesu budou ukončeny a nastavení budou uložena.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1714"/>
+        <location filename="../UI/UserInterface.py" line="1717"/>
         <source>Edit Profile</source>
         <translation>Editační profil</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1720"/>
+        <location filename="../UI/UserInterface.py" line="1723"/>
         <source>Activate the edit view profile</source>
         <translation>Aktivovat profil editace</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1722"/>
+        <location filename="../UI/UserInterface.py" line="1725"/>
         <source>&lt;b&gt;Edit Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Edit View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Editační profil&lt;/b&gt;&lt;p&gt;Aktivování skupiny &apos;Editační profil&apos;. Okna, která se v tomto profilu zobrazí lze nastavit v dialogu &apos;Konfigurace profilu pohledů&apos;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1731"/>
+        <location filename="../UI/UserInterface.py" line="1734"/>
         <source>Debug Profile</source>
         <translation>Debugovací profil</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1737"/>
+        <location filename="../UI/UserInterface.py" line="1740"/>
         <source>Activate the debug view profile</source>
         <translation>Aktivovat debugovací profil</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1739"/>
+        <location filename="../UI/UserInterface.py" line="1742"/>
         <source>&lt;b&gt;Debug Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Debug View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Debugovací profil&lt;/b&gt;&lt;p&gt;Aktivování skupiny &apos;Debugovací profil&apos;. Okna, která se v tomto profilu zobrazí lze nastavit v dialogu &apos;Konfigurace profilu pohledů&apos;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>&amp;Project-Viewer</source>
         <translation>Prohlížeč &amp;projektu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Alt+Shift+P</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Alt+Shift+D</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>&amp;Shell</source>
         <translation>&amp;Shell</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Alt+Shift+S</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>Alt+Shift+F</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Alt+Shift+G</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Alt+Shift+T</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Alt+Shift+M</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>What&apos;s This?</source>
         <translation>Co je to?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>&amp;What&apos;s This?</source>
         <translation>&amp;Co je to?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>Shift+F1</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2126"/>
+        <location filename="../UI/UserInterface.py" line="2129"/>
         <source>Context sensitive help</source>
         <translation>Kontextově senzitivní nápověda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2127"/>
+        <location filename="../UI/UserInterface.py" line="2130"/>
         <source>&lt;b&gt;Display context sensitive help&lt;/b&gt;&lt;p&gt;In What&apos;s This? mode, the mouse cursor shows an arrow with a question mark, and you can click on the interface elements to get a short description of what they do and how to use them. In dialogs, this feature can be accessed using the context help button in the titlebar.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Zobrazit kontextově senzitivní nápovědu&lt;/b&gt;&lt;p&gt;V režimu &quot;Co je to?&quot; se nad různými prvky aplikace u kurzoru zobrazí otazník. Když pak kliknete na tyto prvky, zobrazí se krátký popis co daný prvek znamená a jak jej použít. V dialogových oknech se tato funkce spustí tlačítkem kontextové nápovědy na horní liště.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>Helpviewer</source>
         <translation>Prohlížeč nápovědy</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>&amp;Helpviewer...</source>
         <translation>Pro&amp;hlížeč nápovědy...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>F1</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2144"/>
+        <location filename="../UI/UserInterface.py" line="2147"/>
         <source>Open the helpviewer window</source>
         <translation>Otevřít okno prohlížeče nápovědy</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show Versions</source>
         <translation>Zobrazit verze</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show &amp;Versions</source>
         <translation>Zobrazit &amp;verze</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2168"/>
+        <location filename="../UI/UserInterface.py" line="2171"/>
         <source>Display version information</source>
         <translation>Zobrazit informace o verzích</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2170"/>
+        <location filename="../UI/UserInterface.py" line="2173"/>
         <source>&lt;b&gt;Show Versions&lt;/b&gt;&lt;p&gt;Display version information.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Zobrazit verze&lt;/b&gt;&lt;p&gt;Zobrazí informace o verzích.&lt;/p&gt;</translation>
     </message>
     <message>
+        <location filename="../UI/UserInterface.py" line="2183"/>
+        <source>Check for Updates</source>
+        <translation>Zjistit aktualizace</translation>
+    </message>
+    <message>
         <location filename="../UI/UserInterface.py" line="2180"/>
-        <source>Check for Updates</source>
-        <translation>Zjistit aktualizace</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2177"/>
         <source>Check for &amp;Updates...</source>
         <translation>Zjistit akt&amp;ualizace...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Report Bug</source>
         <translation>Reportovat Bugy</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2229"/>
+        <location filename="../UI/UserInterface.py" line="2232"/>
         <source>Report &amp;Bug...</source>
         <translation>Reportovat &amp;Bugy...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2233"/>
+        <location filename="../UI/UserInterface.py" line="2236"/>
         <source>Report a bug</source>
         <translation>Reportovat bug</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2234"/>
+        <location filename="../UI/UserInterface.py" line="2237"/>
         <source>&lt;b&gt;Report Bug...&lt;/b&gt;&lt;p&gt;Opens a dialog to report a bug.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Reportovat bug...&lt;/b&gt;&lt;p&gt;Otevře se dialog pro reportování bugu.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3365"/>
+        <location filename="../UI/UserInterface.py" line="3368"/>
         <source>Unittest</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2256"/>
+        <location filename="../UI/UserInterface.py" line="2259"/>
         <source>&amp;Unittest...</source>
         <translation>&amp;Unittest...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2261"/>
+        <location filename="../UI/UserInterface.py" line="2264"/>
         <source>Start unittest dialog</source>
         <translation>Otevřít dialog unittestu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2262"/>
+        <location filename="../UI/UserInterface.py" line="2265"/>
         <source>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Perform unit tests. The dialog gives you the ability to select and run a unittest suite.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Provést unittesty. V dialogovém okně se nastaví který test se má provést.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
+        <location filename="../UI/UserInterface.py" line="2273"/>
         <source>Unittest Restart</source>
         <translation>Restart unittestu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
+        <location filename="../UI/UserInterface.py" line="2273"/>
         <source>&amp;Restart Unittest...</source>
         <translation>&amp;Restart unittestu...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2275"/>
+        <location filename="../UI/UserInterface.py" line="2278"/>
         <source>Restart last unittest</source>
         <translation>Restart posledního unittestu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2276"/>
+        <location filename="../UI/UserInterface.py" line="2279"/>
         <source>&lt;b&gt;Restart Unittest&lt;/b&gt;&lt;p&gt;Restart the unittest performed last.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Restart unittestu&lt;/b&gt;&lt;p&gt;Restartuje se poslední provedený unittest.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
+        <location filename="../UI/UserInterface.py" line="2303"/>
         <source>Unittest Script</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
+        <location filename="../UI/UserInterface.py" line="2303"/>
         <source>Unittest &amp;Script...</source>
         <translation>Unittest &amp;Script...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2305"/>
+        <location filename="../UI/UserInterface.py" line="2308"/>
         <source>Run unittest with current script</source>
         <translation>Spustit unittest s aktuálním skriptem</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2307"/>
+        <location filename="../UI/UserInterface.py" line="2310"/>
         <source>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Run unittest with current script.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Spustit unittest s aktuálním skriptem.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
+        <location filename="../UI/UserInterface.py" line="2318"/>
         <source>Unittest Project</source>
         <translation>Unittest Projekt</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
+        <location filename="../UI/UserInterface.py" line="2318"/>
         <source>Unittest &amp;Project...</source>
         <translation>Unittest &amp;Projekt...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2320"/>
+        <location filename="../UI/UserInterface.py" line="2323"/>
         <source>Run unittest with current project</source>
         <translation>Spustit unittest s aktuálním projektem</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2322"/>
+        <location filename="../UI/UserInterface.py" line="2325"/>
         <source>&lt;b&gt;Unittest Project&lt;/b&gt;&lt;p&gt;Run unittest with current project.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Unittest projekt&lt;/b&gt;&lt;p&gt;Spustit unittest s aktuálním projektem.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
+        <location filename="../UI/UserInterface.py" line="2386"/>
         <source>UI Previewer</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
+        <location filename="../UI/UserInterface.py" line="2386"/>
         <source>&amp;UI Previewer...</source>
         <translation>&amp;UI Previewer...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2388"/>
+        <location filename="../UI/UserInterface.py" line="2391"/>
         <source>Start the UI Previewer</source>
         <translation>Spustit UI Previewer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2389"/>
+        <location filename="../UI/UserInterface.py" line="2392"/>
         <source>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Start the UI Previewer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Spustit UI Previewer.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
+        <location filename="../UI/UserInterface.py" line="2399"/>
         <source>Translations Previewer</source>
         <translation>Náhled překladů</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
+        <location filename="../UI/UserInterface.py" line="2399"/>
         <source>&amp;Translations Previewer...</source>
         <translation>Náhled &amp;překladů...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2401"/>
+        <location filename="../UI/UserInterface.py" line="2404"/>
         <source>Start the Translations Previewer</source>
         <translation>Spustit Previewer překladů</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2403"/>
+        <location filename="../UI/UserInterface.py" line="2406"/>
         <source>&lt;b&gt;Translations Previewer&lt;/b&gt;&lt;p&gt;Start the Translations Previewer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Previewer překladů&lt;/b&gt;&lt;p&gt;Spustit Previewer překladů.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
+        <location filename="../UI/UserInterface.py" line="2413"/>
         <source>Compare Files</source>
         <translation>Porovnat soubory</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
+        <location filename="../UI/UserInterface.py" line="2413"/>
         <source>&amp;Compare Files...</source>
         <translation>&amp;Porovnat soubory...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2428"/>
+        <location filename="../UI/UserInterface.py" line="2431"/>
         <source>Compare two files</source>
         <translation>Porovnat dva soubory</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2416"/>
+        <location filename="../UI/UserInterface.py" line="2419"/>
         <source>&lt;b&gt;Compare Files&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Porovnat soubory&lt;/b&gt;&lt;p&gt;Otevře dialog pro porovnání dvou souborů.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
+        <location filename="../UI/UserInterface.py" line="2426"/>
         <source>Compare Files side by side</source>
         <translation>Porovnat soubory stranu proti straně</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2429"/>
+        <location filename="../UI/UserInterface.py" line="2432"/>
         <source>&lt;b&gt;Compare Files side by side&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files and show the result side by side.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Porovnat soubory stranu proti straně&lt;/b&gt;&lt;p&gt;Otevře dialog pro porovnání souborů a zobrazení rozdílů strany proti straně.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
+        <location filename="../UI/UserInterface.py" line="2524"/>
         <source>Preferences</source>
         <translation>Nastavení</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
+        <location filename="../UI/UserInterface.py" line="2524"/>
         <source>&amp;Preferences...</source>
         <translation>Na&amp;stavení...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2526"/>
+        <location filename="../UI/UserInterface.py" line="2529"/>
         <source>Set the prefered configuration</source>
         <translation>Nastavení konfigurace</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2528"/>
+        <location filename="../UI/UserInterface.py" line="2531"/>
         <source>&lt;b&gt;Preferences&lt;/b&gt;&lt;p&gt;Set the configuration items of the application with your prefered values.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Nastavení&lt;/b&gt;&lt;p&gt;Upravit konfiguraci aplikace podle požadavků uživatele.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
+        <location filename="../UI/UserInterface.py" line="2568"/>
         <source>Reload APIs</source>
         <translation>Obnovit API</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
+        <location filename="../UI/UserInterface.py" line="2568"/>
         <source>Reload &amp;APIs</source>
         <translation>Obnovit &amp;API</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2569"/>
+        <location filename="../UI/UserInterface.py" line="2572"/>
         <source>Reload the API information</source>
         <translation>Obnovit API nastavení</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2571"/>
+        <location filename="../UI/UserInterface.py" line="2574"/>
         <source>&lt;b&gt;Reload APIs&lt;/b&gt;&lt;p&gt;Reload the API information.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Obnovit API&lt;/b&gt;&lt;p&gt;Obnovit API nastavení.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
+        <location filename="../UI/UserInterface.py" line="2597"/>
         <source>View Profiles</source>
         <translation>Profily pohledů</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
+        <location filename="../UI/UserInterface.py" line="2597"/>
         <source>&amp;View Profiles...</source>
         <translation>Profily &amp;pohledů...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2599"/>
+        <location filename="../UI/UserInterface.py" line="2602"/>
         <source>Configure view profiles</source>
         <translation>Konfigurace profilů pohledů</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2601"/>
+        <location filename="../UI/UserInterface.py" line="2604"/>
         <source>&lt;b&gt;View Profiles&lt;/b&gt;&lt;p&gt;Configure the view profiles. With this dialog you may set the visibility of the various windows for the predetermined view profiles.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Profily pohledů&lt;/b&gt;&lt;p&gt;Konfigurace profilu pohledů. V tomto dialogu můžete nastavit zobrazování různých typů pohledů - editačních oken.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
+        <location filename="../UI/UserInterface.py" line="2629"/>
         <source>Keyboard Shortcuts</source>
         <translation>Klávesové zkratky</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
+        <location filename="../UI/UserInterface.py" line="2629"/>
         <source>Keyboard &amp;Shortcuts...</source>
         <translation>Klávesové &amp;zkratky...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2631"/>
+        <location filename="../UI/UserInterface.py" line="2634"/>
         <source>Set the keyboard shortcuts</source>
         <translation>Nastavení klávesových zkratek</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2633"/>
+        <location filename="../UI/UserInterface.py" line="2636"/>
         <source>&lt;b&gt;Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Set the keyboard shortcuts of the application with your prefered values.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Klávesové zkratky&lt;/b&gt;&lt;p&gt;Nastavení klávesových zkratek aplikace podle zvyklostí uživatele.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>Export Keyboard Shortcuts</source>
         <translation>Exportovat klávesové zkratky</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2641"/>
+        <location filename="../UI/UserInterface.py" line="2644"/>
         <source>&amp;Export Keyboard Shortcuts...</source>
         <translation>&amp;Exportovat klávesové zkratky...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2646"/>
+        <location filename="../UI/UserInterface.py" line="2649"/>
         <source>Export the keyboard shortcuts</source>
         <translation>Export klávesových zkratek</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2648"/>
+        <location filename="../UI/UserInterface.py" line="2651"/>
         <source>&lt;b&gt;Export Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Export the keyboard shortcuts of the application.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Export klávesových zkratek&lt;/b&gt;&lt;p&gt;Exportují se klávesové zkratky z aplikace.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Import Keyboard Shortcuts</source>
         <translation>Import klávesových zkratek</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2655"/>
+        <location filename="../UI/UserInterface.py" line="2658"/>
         <source>&amp;Import Keyboard Shortcuts...</source>
         <translation>&amp;Import klávesových zkratek...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2660"/>
+        <location filename="../UI/UserInterface.py" line="2663"/>
         <source>Import the keyboard shortcuts</source>
         <translation>Import klávesových zkratek</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2662"/>
+        <location filename="../UI/UserInterface.py" line="2665"/>
         <source>&lt;b&gt;Import Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Import the keyboard shortcuts of the application.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Import klávesových zkratek&lt;/b&gt;&lt;p&gt;Do aplikace se importují klávesové zkratky.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
+        <location filename="../UI/UserInterface.py" line="2723"/>
         <source>Activate current editor</source>
         <translation>Aktivovat aktuální editor</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
+        <location filename="../UI/UserInterface.py" line="2723"/>
         <source>Alt+Shift+E</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
+        <location filename="../UI/UserInterface.py" line="2733"/>
         <source>Ctrl+Alt+Tab</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
+        <location filename="../UI/UserInterface.py" line="2742"/>
         <source>Shift+Ctrl+Alt+Tab</source>
         <translation></translation>
     </message>
@@ -80379,7 +80518,7 @@
         <translation type="obsolete">Otevřít PyQt4 dokumentaci</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2953"/>
+        <location filename="../UI/UserInterface.py" line="2956"/>
         <source>Eric API Documentation</source>
         <translation>Eric API dokumentace</translation>
     </message>
@@ -80389,62 +80528,62 @@
         <translation type="obsolete">&amp;Eric API dokumentace</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2957"/>
+        <location filename="../UI/UserInterface.py" line="2960"/>
         <source>Open Eric API Documentation</source>
         <translation>Otevřít Eric API dokumentaci</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3158"/>
+        <location filename="../UI/UserInterface.py" line="3161"/>
         <source>&amp;Unittest</source>
         <translation>&amp;Unittest</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3102"/>
+        <location filename="../UI/UserInterface.py" line="3105"/>
         <source>E&amp;xtras</source>
         <translation>E&amp;xtra funkce</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3175"/>
+        <location filename="../UI/UserInterface.py" line="3178"/>
         <source>Select Tool Group</source>
         <translation>Vybrat skupinu nástrojů</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3186"/>
+        <location filename="../UI/UserInterface.py" line="3189"/>
         <source>Se&amp;ttings</source>
         <translation>Nas&amp;tavení</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3216"/>
+        <location filename="../UI/UserInterface.py" line="3219"/>
         <source>&amp;Window</source>
         <translation>O&amp;kno</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3277"/>
+        <location filename="../UI/UserInterface.py" line="3280"/>
         <source>&amp;Toolbars</source>
         <translation>&amp;Toolbary</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3291"/>
+        <location filename="../UI/UserInterface.py" line="3294"/>
         <source>&amp;Help</source>
         <translation>&amp;Nápověda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3364"/>
+        <location filename="../UI/UserInterface.py" line="3367"/>
         <source>Tools</source>
         <translation>Nástroje</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3366"/>
+        <location filename="../UI/UserInterface.py" line="3369"/>
         <source>Settings</source>
         <translation>Nastavení</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
+        <location filename="../UI/UserInterface.py" line="5216"/>
         <source>Help</source>
         <translation>Nápověda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3368"/>
+        <location filename="../UI/UserInterface.py" line="3371"/>
         <source>Profiles</source>
         <translation>Profily</translation>
     </message>
@@ -80454,27 +80593,27 @@
         <translation type="obsolete">&lt;h3&gt;Čísla verzí&lt;/h3&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7268"/>
+        <location filename="../UI/UserInterface.py" line="7295"/>
         <source>&lt;/table&gt;</source>
         <translation>&lt;/table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Email address or mail server address is empty. Please configure your Email settings in the Preferences Dialog.</source>
         <translation>Emailová adresa nebo mail server adresa jsou prázdné. Prosím, nastavte váš email v dialogovém okně Nastavení.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4207"/>
+        <location filename="../UI/UserInterface.py" line="4210"/>
         <source>Configure Tool Groups ...</source>
         <translation>Konfigurace Skupin nástrojů...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4211"/>
+        <location filename="../UI/UserInterface.py" line="4214"/>
         <source>Configure current Tool Group ...</source>
         <translation>Konfigurace aktuální skupiny nástrojů...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4162"/>
+        <location filename="../UI/UserInterface.py" line="4165"/>
         <source>&amp;Builtin Tools</source>
         <translation>&amp;Vestavěné nástroje</translation>
     </message>
@@ -80484,32 +80623,32 @@
         <translation type="obsolete">V aktuálním projektu není definován hlavní skript. Zrušeno</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>Problem</source>
         <translation>Problém</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5536"/>
+        <location filename="../UI/UserInterface.py" line="5552"/>
         <source>Process Generation Error</source>
         <translation>Chyba v procesu generování</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
+        <location filename="../UI/UserInterface.py" line="5216"/>
         <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source>
         <translation>Aktuálně není vybrán žádný prohlížeč. Prosím otevřete Nastavení a nějaký vyberte.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5247"/>
+        <location filename="../UI/UserInterface.py" line="5250"/>
         <source>&lt;p&gt;Could not start the help viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Nemohu spustit prohlížeč nápovědy.&lt;br&gt;Ověřte jestli je dostupný jako &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>Documentation Missing</source>
         <translation>Dokumentace chybí</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>Documentation</source>
         <translation>Dokumentace</translation>
     </message>
@@ -80529,462 +80668,462 @@
         <translation type="obsolete">Načíst úlohy</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>Drop Error</source>
         <translation>Zahodit chybu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Error during updates check</source>
         <translation>Chyba během zjišťování aktualizací</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>Update available</source>
         <translation>Byla nalezena aktualizace</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2583"/>
+        <location filename="../UI/UserInterface.py" line="2586"/>
         <source>Show external tools</source>
         <translation>Zobrazit externí nástroje</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2578"/>
+        <location filename="../UI/UserInterface.py" line="2581"/>
         <source>Show external &amp;tools</source>
         <translation>Zobrazit externí nás&amp;troje</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Could not perform updates check.</source>
         <translation>Kontrolu updatů nelze provést.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>&amp;Cancel</source>
         <translation>&amp;Zrušit</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>First time usage</source>
         <translation>Spuštěno poprvé</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="275"/>
+        <location filename="../UI/UserInterface.py" line="276"/>
         <source>Initializing Plugin Manager...</source>
         <translation>Inicializace Plugin manažera...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3139"/>
+        <location filename="../UI/UserInterface.py" line="3142"/>
         <source>P&amp;lugins</source>
         <translation>P&amp;luginy</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3369"/>
+        <location filename="../UI/UserInterface.py" line="3372"/>
         <source>Plugins</source>
         <translation>Pluginy</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
+        <location filename="../UI/UserInterface.py" line="2760"/>
         <source>Plugin Infos</source>
         <translation>Plugin Infa</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2761"/>
+        <location filename="../UI/UserInterface.py" line="2764"/>
         <source>Show Plugin Infos</source>
         <translation>Zobrazit Plugin infa</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2762"/>
+        <location filename="../UI/UserInterface.py" line="2765"/>
         <source>&lt;b&gt;Plugin Infos...&lt;/b&gt;&lt;p&gt;This opens a dialog, that show some information about loaded plugins.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Plugin Infa&lt;/b&gt;&lt;p&gt;Otevře dialog, který zobrazí informace o načtených pluginech.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
+        <location filename="../UI/UserInterface.py" line="2760"/>
         <source>&amp;Plugin Infos...</source>
         <translation>&amp;Plugin Infa...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4179"/>
+        <location filename="../UI/UserInterface.py" line="4182"/>
         <source>&amp;Plugin Tools</source>
         <translation>&amp;Plugin nástroje</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2788"/>
+        <location filename="../UI/UserInterface.py" line="2791"/>
         <source>Uninstall Plugin</source>
         <translation>Odinstalovat plugin</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2783"/>
+        <location filename="../UI/UserInterface.py" line="2786"/>
         <source>&amp;Uninstall Plugin...</source>
         <translation>&amp;Odinstalovat plugin...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2789"/>
+        <location filename="../UI/UserInterface.py" line="2792"/>
         <source>&lt;b&gt;Uninstall Plugin...&lt;/b&gt;&lt;p&gt;This opens a dialog to uninstall a plugin.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Odinstalovat plugin...&lt;/b&gt;&lt;p&gt;Otevře dialog pro odinstalaci pluginu.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4326"/>
+        <location filename="../UI/UserInterface.py" line="4329"/>
         <source>&amp;Show all</source>
         <translation>&amp;Zobrazit vše</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4328"/>
+        <location filename="../UI/UserInterface.py" line="4331"/>
         <source>&amp;Hide all</source>
         <translation>&amp;Skrýt vše</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="667"/>
+        <location filename="../UI/UserInterface.py" line="670"/>
         <source>Activating Plugins...</source>
         <translation>Aktivace pluginů...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3112"/>
+        <location filename="../UI/UserInterface.py" line="3115"/>
         <source>Wi&amp;zards</source>
         <translation>&amp;Průvodci</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show downloadable versions</source>
         <translation>Zobrazit verze ke stažení</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show &amp;downloadable versions...</source>
         <translation>Zobrazit verze pro &amp;download...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2192"/>
+        <location filename="../UI/UserInterface.py" line="2195"/>
         <source>Show the versions available for download</source>
         <translation>Zobrazit dostupné verze ke stažení</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7253"/>
+        <location filename="../UI/UserInterface.py" line="7280"/>
         <source>&lt;h3&gt;Available versions&lt;/h3&gt;&lt;table&gt;</source>
         <translation>&lt;h3&gt;Dostupné verze&lt;/h3&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
+        <location filename="../UI/UserInterface.py" line="2799"/>
         <source>Plugin Repository</source>
         <translation>Repozitář pluginů</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
+        <location filename="../UI/UserInterface.py" line="2799"/>
         <source>Plugin &amp;Repository...</source>
         <translation>&amp;Repozitář pluginů...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2801"/>
+        <location filename="../UI/UserInterface.py" line="2804"/>
         <source>Show Plugins available for download</source>
         <translation>Zobrazit pluginy dostupné ke stažení</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2803"/>
+        <location filename="../UI/UserInterface.py" line="2806"/>
         <source>&lt;b&gt;Plugin Repository...&lt;/b&gt;&lt;p&gt;This opens a dialog, that shows a list of plugins available on the Internet.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Repozitář pluginů...&lt;/b&gt;&lt;p&gt;Otevře se dialog, který zobrazí seznam pluginů dostupných ke stažení přes internet.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2775"/>
+        <location filename="../UI/UserInterface.py" line="2778"/>
         <source>Install Plugins</source>
         <translation>Instalovat pluginy</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2770"/>
+        <location filename="../UI/UserInterface.py" line="2773"/>
         <source>&amp;Install Plugins...</source>
         <translation>&amp;Instalovat pluginy...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2776"/>
+        <location filename="../UI/UserInterface.py" line="2779"/>
         <source>&lt;b&gt;Install Plugins...&lt;/b&gt;&lt;p&gt;This opens a dialog to install or update plugins.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Instalovat pluginy...&lt;/b&gt;&lt;p&gt;Otevře dialog pro instalaci nebo aktualizaci pluginů.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2455"/>
+        <location filename="../UI/UserInterface.py" line="2458"/>
         <source>Mini Editor</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2450"/>
+        <location filename="../UI/UserInterface.py" line="2453"/>
         <source>Mini &amp;Editor...</source>
         <translation>Mini &amp;Editor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2456"/>
+        <location filename="../UI/UserInterface.py" line="2459"/>
         <source>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Open a dialog with a simplified editor.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Mini editor&lt;/b&gt;&lt;p&gt;Otevře se okno s jednoduchým editorem&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
+        <location filename="../UI/UserInterface.py" line="2614"/>
         <source>Toolbars</source>
         <translation>Lišty nástrojů</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
+        <location filename="../UI/UserInterface.py" line="2614"/>
         <source>Tool&amp;bars...</source>
         <translation>&amp;Lišty nástrojů...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2616"/>
+        <location filename="../UI/UserInterface.py" line="2619"/>
         <source>Configure toolbars</source>
         <translation>Konfigurace lišt nástrojů</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2617"/>
+        <location filename="../UI/UserInterface.py" line="2620"/>
         <source>&lt;b&gt;Toolbars&lt;/b&gt;&lt;p&gt;Configure the toolbars. With this dialog you may change the actions shown on the various toolbars and define your own toolbars.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Listy nástrojů&lt;/b&gt;&lt;p&gt;Konfigurace lišt nástrojů. S tímto dialogem můžete změnit akce zobrazené v různých nástrojových lištách nebo definovat své vlastní nástrojové lišty.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="683"/>
+        <location filename="../UI/UserInterface.py" line="686"/>
         <source>Restoring Toolbarmanager...</source>
         <translation>Obnovit manažer nástrojových lišt...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
+        <location filename="../UI/UserInterface.py" line="5497"/>
         <source>External Tools</source>
         <translation>Externí nástroje</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Multiproject-Viewer</source>
         <translation>Prohlížeč multiprojektu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>&amp;Multiproject-Viewer</source>
         <translation>Prohlížeč &amp;multiprojektu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1673"/>
+        <location filename="../UI/UserInterface.py" line="1676"/>
         <source>Save session</source>
         <translation>Uložit relaci</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>Read session</source>
         <translation>Načíst relaci</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3541"/>
+        <location filename="../UI/UserInterface.py" line="3544"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors encoding.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Tato část status baru zobrazuje aktuální kódování editorů.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3555"/>
+        <location filename="../UI/UserInterface.py" line="3558"/>
         <source>&lt;p&gt;This part of the status bar displays an indication of the current editors files writability.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Tato část status baru zobrazuje indikátor práva zápisu editoru do souboru.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request Feature</source>
         <translation>Požadavek na vlastnost</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request &amp;Feature...</source>
         <translation>&amp;Požadavek na vlastnost...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2245"/>
+        <location filename="../UI/UserInterface.py" line="2248"/>
         <source>Send a feature request</source>
         <translation>Poslat požadavek na vlastnost</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2247"/>
+        <location filename="../UI/UserInterface.py" line="2250"/>
         <source>&lt;b&gt;Request Feature...&lt;/b&gt;&lt;p&gt;Opens a dialog to send a feature request.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Požadavek na vlastnost...&lt;/b&gt;&lt;p&gt;Otevře dialog pro odeslání požadavku.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3534"/>
+        <location filename="../UI/UserInterface.py" line="3537"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors language.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Tato část status baru zobrazuje aktuální jazyk editoru.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3562"/>
+        <location filename="../UI/UserInterface.py" line="3565"/>
         <source>&lt;p&gt;This part of the status bar displays the line number of the current editor.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Tato část status baru zobrazuje číslo řádku v aktuálním editoru.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3569"/>
+        <location filename="../UI/UserInterface.py" line="3572"/>
         <source>&lt;p&gt;This part of the status bar displays the cursor position of the current editor.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Tato část status baru zobrazuje pozici kurzoru v aktuálním editoru.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>Horizontal Toolbox</source>
         <translation>Vodorovná nástrojová lišta</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>&amp;Horizontal Toolbox</source>
         <translation>&amp;Horizontální lista nástrojů</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1919"/>
+        <location filename="../UI/UserInterface.py" line="1922"/>
         <source>Toggle the Horizontal Toolbox window</source>
         <translation>Přepnout na vodorovnou lištu nástrojů</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1921"/>
+        <location filename="../UI/UserInterface.py" line="1924"/>
         <source>&lt;b&gt;Toggle the Horizontal Toolbox window&lt;/b&gt;&lt;p&gt;If the Horizontal Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Přepnout vodorovnou nástrojovou lištu&lt;/b&gt;&lt;p&gt;Pokud je vodorovná nástrojová lišta skryta, tak se zobrazí. Je-li zobrazena, skryje se.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>Restart application</source>
         <translation>Restartovat aplikaci</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>The application needs to be restarted. Do it now?</source>
         <translation>Aplikace potřebuje restartovat. Má se provést nyní?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Alt+Shift+A</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3148"/>
+        <location filename="../UI/UserInterface.py" line="3151"/>
         <source>Configure...</source>
         <translation>Konfigurovat...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3548"/>
+        <location filename="../UI/UserInterface.py" line="3551"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors eol setting.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Tato část status baru zobrazuje eol nastavení v aktuálním editoru.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
+        <location filename="../UI/UserInterface.py" line="2751"/>
         <source>Switch between tabs</source>
         <translation>Přepnout mezi taby</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
+        <location filename="../UI/UserInterface.py" line="2751"/>
         <source>Ctrl+1</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
+        <location filename="../UI/UserInterface.py" line="2540"/>
         <source>Export Preferences</source>
         <translation>Exportovat předvolby</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
+        <location filename="../UI/UserInterface.py" line="2540"/>
         <source>E&amp;xport Preferences...</source>
         <translation>E&amp;xportovat předvolby...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2542"/>
+        <location filename="../UI/UserInterface.py" line="2545"/>
         <source>Export the current configuration</source>
         <translation>Export aktuální konfigurace</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2544"/>
+        <location filename="../UI/UserInterface.py" line="2547"/>
         <source>&lt;b&gt;Export Preferences&lt;/b&gt;&lt;p&gt;Export the current configuration to a file.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Export předvoleb&lt;/b&gt;&lt;p&gt;Export aktuální konfigurace do souboru.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
+        <location filename="../UI/UserInterface.py" line="2554"/>
         <source>Import Preferences</source>
         <translation>Import předvoleb</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
+        <location filename="../UI/UserInterface.py" line="2554"/>
         <source>I&amp;mport Preferences...</source>
         <translation>I&amp;mport předvoleb...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2556"/>
+        <location filename="../UI/UserInterface.py" line="2559"/>
         <source>Import a previously exported configuration</source>
         <translation>Import dříve exportované konfigurace</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2558"/>
+        <location filename="../UI/UserInterface.py" line="2561"/>
         <source>&lt;b&gt;Import Preferences&lt;/b&gt;&lt;p&gt;Import a previously exported configuration.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Import předvoleb&lt;/b&gt;&lt;p&gt;Import dříve exportované konfigurace.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
+        <location filename="../UI/UserInterface.py" line="2733"/>
         <source>Show next</source>
         <translation>Zobrazit další</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
+        <location filename="../UI/UserInterface.py" line="2742"/>
         <source>Show previous</source>
         <translation>Zobrazit předchozí</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>Left Sidebar</source>
         <translation>Levé menu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>&amp;Left Sidebar</source>
         <translation>&amp;Levé menu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1933"/>
+        <location filename="../UI/UserInterface.py" line="1936"/>
         <source>Toggle the left sidebar window</source>
         <translation>Přepnout okno levého menu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1934"/>
+        <location filename="../UI/UserInterface.py" line="1937"/>
         <source>&lt;b&gt;Toggle the left sidebar window&lt;/b&gt;&lt;p&gt;If the left sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Přepnout okno levého menu&lt;/b&gt;&lt;p&gt;Je-li okno levého menu skryto, tak se zobrazí. Je-li zobrazeno, skryje se.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>Bottom Sidebar</source>
         <translation>Dolní menu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>&amp;Bottom Sidebar</source>
         <translation>&amp;Dolní menu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1960"/>
+        <location filename="../UI/UserInterface.py" line="1963"/>
         <source>Toggle the bottom sidebar window</source>
         <translation>Přepnout okno dolního menu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1962"/>
+        <location filename="../UI/UserInterface.py" line="1965"/>
         <source>&lt;b&gt;Toggle the bottom sidebar window&lt;/b&gt;&lt;p&gt;If the bottom sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Přepnout okno dolního menu&lt;/b&gt;&lt;p&gt;Je-li okno dolního menu skryto, tak se zobrazí. Je-li zobrazeno, skryje se.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>&amp;Debug-Viewer</source>
         <translation>Prohlížeč &amp;debugeru</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
+        <location filename="../UI/UserInterface.py" line="2440"/>
         <source>SQL Browser</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
+        <location filename="../UI/UserInterface.py" line="2440"/>
         <source>SQL &amp;Browser...</source>
         <translation>SQL &amp;Browser...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2442"/>
+        <location filename="../UI/UserInterface.py" line="2445"/>
         <source>Browse a SQL database</source>
         <translation>Procházet SQL databázi</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2443"/>
+        <location filename="../UI/UserInterface.py" line="2446"/>
         <source>&lt;b&gt;SQL Browser&lt;/b&gt;&lt;p&gt;Browse a SQL database.&lt;/p&gt;</source>
         <translation>&lt;b&gt;SQL Browser&lt;/b&gt;&lt;p&gt;Procházet SQL databázi.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
+        <location filename="../UI/UserInterface.py" line="2495"/>
         <source>Icon Editor</source>
         <translation>Editor ikon</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
+        <location filename="../UI/UserInterface.py" line="2495"/>
         <source>&amp;Icon Editor...</source>
         <translation>Editor &amp;ikon...</translation>
     </message>
@@ -81009,96 +81148,96 @@
         <translation type="obsolete">Otevřít PySide dokumentaci</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1602"/>
+        <location filename="../UI/UserInterface.py" line="1605"/>
         <source>{0} - Passive Mode</source>
         <translation>{0} - Pasivní mód</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1609"/>
+        <location filename="../UI/UserInterface.py" line="1612"/>
         <source>{0} - {1} - Passive Mode</source>
         <translation>{0} - {1} - pasivní mód</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1613"/>
+        <location filename="../UI/UserInterface.py" line="1616"/>
         <source>{0} - {1} - {2} - Passive Mode</source>
         <translation>{0} - {1} - {2} - pasivní mód</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3640"/>
+        <location filename="../UI/UserInterface.py" line="3643"/>
         <source>External Tools/{0}</source>
         <translation>Externí nástroje/{0}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not exist or is zero length.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Soubor &lt;b&gt;{0}&lt;/b&gt; neexistuje nebo má nulovou délku.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5066"/>
+        <location filename="../UI/UserInterface.py" line="5069"/>
         <source>&lt;p&gt;Could not start Qt-Designer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Nemohu spustit Qt-Designer.&lt;br&gt;Ověřte jestli je dostupný jako &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5136"/>
+        <location filename="../UI/UserInterface.py" line="5139"/>
         <source>&lt;p&gt;Could not start Qt-Linguist.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Nemohu spustit Qt-Linguist.&lt;br&gt;Ověřte jestli je dostupný jako &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5180"/>
+        <location filename="../UI/UserInterface.py" line="5183"/>
         <source>&lt;p&gt;Could not start Qt-Assistant.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Nemohu spustit Qt-Assistant.&lt;br&gt;Ověřte jestli je dostupný jako &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5227"/>
+        <location filename="../UI/UserInterface.py" line="5230"/>
         <source>&lt;p&gt;Could not start custom viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Nemohu spustit aktuální prohlížeč.&lt;br&gt;Ověřte jestli je dostupný jako &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5297"/>
+        <location filename="../UI/UserInterface.py" line="5300"/>
         <source>&lt;p&gt;Could not start UI Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Nemohu spustit UI Previewer.&lt;br&gt;Ověřte jestli je dostupný jako &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5354"/>
+        <location filename="../UI/UserInterface.py" line="5357"/>
         <source>&lt;p&gt;Could not start Translation Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Nemohu spustit Previewer překladů.&lt;br&gt;Ověřte jestli je dostupný jako &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5377"/>
+        <location filename="../UI/UserInterface.py" line="5380"/>
         <source>&lt;p&gt;Could not start SQL Browser.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Nelze spustit SQL Browser.&lt;br&gt;Ujistěte se, že je dostupný jako &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5472"/>
+        <location filename="../UI/UserInterface.py" line="5488"/>
         <source>No tool entry found for external tool &apos;{0}&apos; in tool group &apos;{1}&apos;.</source>
         <translation>V externím nástroji  &apos;{0}&apos; ve skupině &apos;{1}&apos; nebyl záznam nástroje nalezen.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
+        <location filename="../UI/UserInterface.py" line="5497"/>
         <source>No toolgroup entry &apos;{0}&apos; found.</source>
         <translation>Skupina nástrojů &apos;{0}&apos; nenalezena. </translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5520"/>
+        <location filename="../UI/UserInterface.py" line="5536"/>
         <source>Starting process &apos;{0} {1}&apos;.
 </source>
         <translation>Spouštím proces &apos;{0} {1}&apos;.
 </translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5536"/>
+        <location filename="../UI/UserInterface.py" line="5552"/>
         <source>&lt;p&gt;Could not start the tool entry &lt;b&gt;{0}&lt;/b&gt;.&lt;br&gt;Ensure that it is available as &lt;b&gt;{1}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Nemohu spustit příkaz &lt;b&gt;{0}&lt;/b&gt;&lt;br&gt;Ověřte jestli je dostupný jako &lt;b&gt;{1}&lt;/b&gt;. &lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5614"/>
+        <location filename="../UI/UserInterface.py" line="5630"/>
         <source>Process &apos;{0}&apos; has exited.
 </source>
         <translation>Proces &apos;{0}&apos; byl ukončen.
 </translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>&lt;p&gt;The documentation starting point &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; could not be found.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Adresář dokumentace &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; nebyl nalezen.&lt;/p&gt;</translation>
     </message>
@@ -81108,473 +81247,473 @@
         <translation type="obsolete">&lt;p&gt;Do souboru s úlohami &lt;b&gt;{0}&lt;/b&gt; nelze zapisovat.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Soubor s úlohami &lt;b&gt;{0}&lt;/b&gt; nelze načíst.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6550"/>
+        <location filename="../UI/UserInterface.py" line="6566"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Zápis do souboru relace session &lt;b&gt;{0}&lt;/b&gt; se nezdařil.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Soubor relace session &lt;b&gt;{0}&lt;/b&gt; nelze přečíst.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; is not a file.&lt;/p&gt;</source>
         <translation>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; není soubor.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7059"/>
+        <location filename="../UI/UserInterface.py" line="7086"/>
         <source>Trying host {0}</source>
         <translation>Zkouším host {0}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1124"/>
+        <location filename="../UI/UserInterface.py" line="1127"/>
         <source>Cooperation</source>
         <translation>Spolupráce</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Alt+Shift+O</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1180"/>
+        <location filename="../UI/UserInterface.py" line="1183"/>
         <source>Symbols</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Alt+Shift+Y</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1189"/>
+        <location filename="../UI/UserInterface.py" line="1192"/>
         <source>Numbers</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Alt+Shift+B</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2931"/>
+        <location filename="../UI/UserInterface.py" line="2934"/>
         <source>Python 3 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2935"/>
+        <location filename="../UI/UserInterface.py" line="2938"/>
         <source>Open Python 3 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>Error getting versions information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7111"/>
+        <location filename="../UI/UserInterface.py" line="7138"/>
         <source>The versions information could not be downloaded. Please go online and try again.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Open Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Could not start a web browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>The versions information could not be downloaded for the last 7 days. Please go online and try again.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="692"/>
+        <location filename="../UI/UserInterface.py" line="695"/>
         <source>Setting View Profile...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="705"/>
+        <location filename="../UI/UserInterface.py" line="708"/>
         <source>Reading Tasks...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="710"/>
+        <location filename="../UI/UserInterface.py" line="713"/>
         <source>Reading Templates...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="715"/>
+        <location filename="../UI/UserInterface.py" line="718"/>
         <source>Starting Debugger...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New Window</source>
         <translation type="unfinished">Nové okno</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New &amp;Window</source>
         <translation type="unfinished">&amp;Nové okno</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>Ctrl+Shift+N</source>
         <comment>File|New Window</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Unittest Rerun Failed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Rerun Failed Tests...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2289"/>
+        <location filename="../UI/UserInterface.py" line="2292"/>
         <source>Rerun failed tests of the last run</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2291"/>
+        <location filename="../UI/UserInterface.py" line="2294"/>
         <source>&lt;b&gt;Rerun Failed Tests&lt;/b&gt;&lt;p&gt;Rerun all tests that failed during the last unittest run.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
+        <location filename="../UI/UserInterface.py" line="2426"/>
         <source>Compare &amp;Files side by side...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>Snapshot</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>&amp;Snapshot...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2511"/>
+        <location filename="../UI/UserInterface.py" line="2514"/>
         <source>Take snapshots of a screen region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2513"/>
+        <location filename="../UI/UserInterface.py" line="2516"/>
         <source>&lt;b&gt;Snapshot&lt;/b&gt;&lt;p&gt;This opens a dialog to take snapshots of a screen region.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5449"/>
+        <location filename="../UI/UserInterface.py" line="5465"/>
         <source>&lt;p&gt;Could not start Snapshot tool.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7324"/>
+        <location filename="../UI/UserInterface.py" line="7351"/>
         <source>Select Workspace Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
-        <source>Left Toolbox</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
-        <source>Right Toolbox</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1754"/>
-        <source>Switch the input focus to the Project-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1756"/>
-        <source>&lt;b&gt;Activate Project-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Project-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1771"/>
-        <source>Switch the input focus to the Multiproject-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1773"/>
-        <source>&lt;b&gt;Activate Multiproject-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Multiproject-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1789"/>
-        <source>Switch the input focus to the Debug-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1791"/>
-        <source>&lt;b&gt;Activate Debug-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Debug-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1807"/>
-        <source>Switch the input focus to the Shell window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1809"/>
-        <source>&lt;b&gt;Activate Shell&lt;/b&gt;&lt;p&gt;This switches the input focus to the Shell window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
-        <source>&amp;File-Browser</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1824"/>
-        <source>Switch the input focus to the File-Browser window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1826"/>
-        <source>&lt;b&gt;Activate File-Browser&lt;/b&gt;&lt;p&gt;This switches the input focus to the File-Browser window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
-        <source>Lo&amp;g-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1841"/>
-        <source>Switch the input focus to the Log-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1843"/>
-        <source>&lt;b&gt;Activate Log-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Log-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
-        <source>&amp;Task-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1859"/>
-        <source>Switch the input focus to the Task-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
-        <source>Templ&amp;ate-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1878"/>
-        <source>Switch the input focus to the Template-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1880"/>
-        <source>&lt;b&gt;Activate Template-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Template-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
-        <source>&amp;Left Toolbox</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="1893"/>
+        <source>Left Toolbox</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1905"/>
+        <source>Right Toolbox</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1757"/>
+        <source>Switch the input focus to the Project-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1759"/>
+        <source>&lt;b&gt;Activate Project-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Project-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1774"/>
+        <source>Switch the input focus to the Multiproject-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1776"/>
+        <source>&lt;b&gt;Activate Multiproject-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Multiproject-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1792"/>
+        <source>Switch the input focus to the Debug-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1794"/>
+        <source>&lt;b&gt;Activate Debug-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Debug-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1810"/>
+        <source>Switch the input focus to the Shell window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1812"/>
+        <source>&lt;b&gt;Activate Shell&lt;/b&gt;&lt;p&gt;This switches the input focus to the Shell window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1821"/>
+        <source>&amp;File-Browser</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1827"/>
+        <source>Switch the input focus to the File-Browser window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1829"/>
+        <source>&lt;b&gt;Activate File-Browser&lt;/b&gt;&lt;p&gt;This switches the input focus to the File-Browser window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1838"/>
+        <source>Lo&amp;g-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1844"/>
+        <source>Switch the input focus to the Log-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1846"/>
+        <source>&lt;b&gt;Activate Log-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Log-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1856"/>
+        <source>&amp;Task-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1862"/>
+        <source>Switch the input focus to the Task-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1875"/>
+        <source>Templ&amp;ate-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1881"/>
+        <source>Switch the input focus to the Template-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1883"/>
+        <source>&lt;b&gt;Activate Template-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Template-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1893"/>
+        <source>&amp;Left Toolbox</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1896"/>
         <source>Toggle the Left Toolbox window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1894"/>
+        <location filename="../UI/UserInterface.py" line="1897"/>
         <source>&lt;b&gt;Toggle the Left Toolbox window&lt;/b&gt;&lt;p&gt;If the Left Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>&amp;Right Toolbox</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1906"/>
+        <location filename="../UI/UserInterface.py" line="1909"/>
         <source>Toggle the Right Toolbox window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1907"/>
+        <location filename="../UI/UserInterface.py" line="1910"/>
         <source>&lt;b&gt;Toggle the Right Toolbox window&lt;/b&gt;&lt;p&gt;If the Right Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>Right Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>&amp;Right Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1946"/>
+        <location filename="../UI/UserInterface.py" line="1949"/>
         <source>Toggle the right sidebar window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1948"/>
+        <location filename="../UI/UserInterface.py" line="1951"/>
         <source>&lt;b&gt;Toggle the right sidebar window&lt;/b&gt;&lt;p&gt;If the right sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Cooperation-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Co&amp;operation-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1977"/>
+        <location filename="../UI/UserInterface.py" line="1980"/>
         <source>Switch the input focus to the Cooperation-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1979"/>
+        <location filename="../UI/UserInterface.py" line="1982"/>
         <source>&lt;b&gt;Activate Cooperation-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Cooperation-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Symbols-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>S&amp;ymbols-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2014"/>
+        <location filename="../UI/UserInterface.py" line="2017"/>
         <source>Switch the input focus to the Symbols-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2016"/>
+        <location filename="../UI/UserInterface.py" line="2019"/>
         <source>&lt;b&gt;Activate Symbols-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Symbols-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Numbers-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Num&amp;bers-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2033"/>
+        <location filename="../UI/UserInterface.py" line="2036"/>
         <source>Switch the input focus to the Numbers-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2035"/>
+        <location filename="../UI/UserInterface.py" line="2038"/>
         <source>&lt;b&gt;Activate Numbers-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Numbers-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3225"/>
+        <location filename="../UI/UserInterface.py" line="3228"/>
         <source>&amp;Windows</source>
         <translation type="unfinished">&amp;Windows</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1861"/>
+        <location filename="../UI/UserInterface.py" line="1864"/>
         <source>&lt;b&gt;Activate Task-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Task-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>IRC</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>&amp;IRC</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1996"/>
+        <location filename="../UI/UserInterface.py" line="1999"/>
         <source>Switch the input focus to the IRC window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1998"/>
+        <location filename="../UI/UserInterface.py" line="2001"/>
         <source>&lt;b&gt;Activate IRC&lt;/b&gt;&lt;p&gt;This switches the input focus to the IRC window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-Designer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-&amp;Designer...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2347"/>
+        <location filename="../UI/UserInterface.py" line="2350"/>
         <source>Start Qt-Designer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2348"/>
+        <location filename="../UI/UserInterface.py" line="2351"/>
         <source>&lt;b&gt;Qt-Designer&lt;/b&gt;&lt;p&gt;Start Qt-Designer.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-Linguist</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-&amp;Linguist...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2373"/>
+        <location filename="../UI/UserInterface.py" line="2376"/>
         <source>Start Qt-Linguist</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2374"/>
+        <location filename="../UI/UserInterface.py" line="2377"/>
         <source>&lt;b&gt;Qt-Linguist&lt;/b&gt;&lt;p&gt;Start Qt-Linguist.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2862"/>
+        <location filename="../UI/UserInterface.py" line="2865"/>
         <source>Qt5 Documentation</source>
         <translation type="unfinished">Qt4 dokumentace {5 ?}</translation>
     </message>
@@ -81584,57 +81723,57 @@
         <translation type="obsolete">Qt&amp;4 dokumentace {5 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2866"/>
+        <location filename="../UI/UserInterface.py" line="2869"/>
         <source>Open Qt5 Documentation</source>
         <translation type="unfinished">Otevřít Qt4 dokumentaci {5 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2675"/>
+        <location filename="../UI/UserInterface.py" line="2678"/>
         <source>Manage the saved SSL certificates</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2677"/>
+        <location filename="../UI/UserInterface.py" line="2680"/>
         <source>&lt;b&gt;Manage SSL Certificates...&lt;/b&gt;&lt;p&gt;Opens a dialog to manage the saved SSL certificates.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2691"/>
+        <location filename="../UI/UserInterface.py" line="2694"/>
         <source>Edit the message filters used to suppress unwanted messages</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2693"/>
+        <location filename="../UI/UserInterface.py" line="2696"/>
         <source>&lt;b&gt;Edit Message Filters&lt;/b&gt;&lt;p&gt;Opens a dialog to edit the message filters used to suppress unwanted messages been shown in an error window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2892"/>
+        <location filename="../UI/UserInterface.py" line="2895"/>
         <source>PyQt5 Documentation</source>
         <translation type="unfinished">PyQt4 dokumentace {5 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2896"/>
+        <location filename="../UI/UserInterface.py" line="2899"/>
         <source>Open PyQt5 Documentation</source>
         <translation type="unfinished">Otevřít PyQt4 dokumentaci {5 ?}</translation>
     </message>
@@ -81644,32 +81783,32 @@
         <translation type="obsolete">&lt;p&gt;Adresář PyQt4 dokumentace není nakonfigurován.&lt;/p&gt; {5 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2937"/>
+        <location filename="../UI/UserInterface.py" line="2940"/>
         <source>&lt;b&gt;Python 3 Documentation&lt;/b&gt;&lt;p&gt;Display the Python 3 documentation. If no documentation directory is configured, the location of the Python 3 documentation is assumed to be the doc directory underneath the location of the Python 3 executable on Windows and &lt;i&gt;/usr/share/doc/packages/python/html&lt;/i&gt; on Unix. Set PYTHON3DOCDIR in your environment to override this.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>%v/%m</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2207"/>
+        <location filename="../UI/UserInterface.py" line="2210"/>
         <source>Show Error Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2203"/>
+        <location filename="../UI/UserInterface.py" line="2206"/>
         <source>Show Error &amp;Log...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2208"/>
+        <location filename="../UI/UserInterface.py" line="2211"/>
         <source>&lt;b&gt;Show Error Log...&lt;/b&gt;&lt;p&gt;Opens a dialog showing the most recent error log.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7054"/>
+        <location filename="../UI/UserInterface.py" line="7081"/>
         <source>Version Check</source>
         <translation type="unfinished"></translation>
     </message>
@@ -81744,528 +81883,528 @@
         <translation type="obsolete">eric5 nebyl ještě nakonfigurován. Bude spuštěn konfigurační dialog. {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="669"/>
+        <location filename="../UI/UserInterface.py" line="672"/>
         <source>Generating Plugins Toolbars...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4182"/>
+        <location filename="../UI/UserInterface.py" line="4185"/>
         <source>&amp;User Tools</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4252"/>
+        <location filename="../UI/UserInterface.py" line="4255"/>
         <source>No User Tools Configured</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
+        <location filename="../UI/UserInterface.py" line="2466"/>
         <source>Hex Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
+        <location filename="../UI/UserInterface.py" line="2466"/>
         <source>&amp;Hex Editor...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2709"/>
+        <location filename="../UI/UserInterface.py" line="2712"/>
         <source>Clear private data</source>
         <translation type="unfinished">Smazat soukromá data</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2711"/>
+        <location filename="../UI/UserInterface.py" line="2714"/>
         <source>&lt;b&gt;Clear private data&lt;/b&gt;&lt;p&gt;Clears the private data like the various list of recently opened files, projects or multi projects.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1669"/>
+        <location filename="../UI/UserInterface.py" line="1672"/>
         <source>Save session...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1674"/>
+        <location filename="../UI/UserInterface.py" line="1677"/>
         <source>&lt;b&gt;Save session...&lt;/b&gt;&lt;p&gt;This saves the current session to disk. A dialog is opened to select the file name.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>Load session</source>
         <translation type="unfinished">Načíst relaci</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1682"/>
+        <location filename="../UI/UserInterface.py" line="1685"/>
         <source>Load session...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1687"/>
+        <location filename="../UI/UserInterface.py" line="1690"/>
         <source>&lt;b&gt;Load session...&lt;/b&gt;&lt;p&gt;This loads a session saved to disk previously. A dialog is opened to select the file name.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
+        <location filename="../UI/UserInterface.py" line="6710"/>
         <source>Crash Session found!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
+        <location filename="../UI/UserInterface.py" line="6710"/>
         <source>A session file of a crashed session was found. Shall this session be restored?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="672"/>
+        <location filename="../UI/UserInterface.py" line="675"/>
         <source>Cleaning Plugins Download Area...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="664"/>
+        <location filename="../UI/UserInterface.py" line="667"/>
         <source>Initializing Plugins...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>Update Check</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>You installed eric directly from the source code. There is no possibility to check for the availability of an update.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Code Documentation Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2867"/>
+        <location filename="../UI/UserInterface.py" line="2870"/>
         <source>&lt;b&gt;Qt5 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2898"/>
+        <location filename="../UI/UserInterface.py" line="2901"/>
         <source>&lt;b&gt;PyQt5 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2974"/>
+        <location filename="../UI/UserInterface.py" line="2977"/>
         <source>PySide2 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2978"/>
+        <location filename="../UI/UserInterface.py" line="2981"/>
         <source>Open PySide2 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2980"/>
+        <location filename="../UI/UserInterface.py" line="2983"/>
         <source>&lt;b&gt;PySide2 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide2 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>&lt;p&gt;The PySide{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2817"/>
+        <location filename="../UI/UserInterface.py" line="2820"/>
         <source>Virtualenv Manager</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2811"/>
+        <location filename="../UI/UserInterface.py" line="2814"/>
         <source>&amp;Virtualenv Manager...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2819"/>
+        <location filename="../UI/UserInterface.py" line="2822"/>
         <source>&lt;b&gt;Virtualenv Manager&lt;/b&gt;&lt;p&gt;This opens a dialog to manage the defined Python virtual environments.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2834"/>
+        <location filename="../UI/UserInterface.py" line="2837"/>
         <source>Virtualenv Configurator</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2828"/>
+        <location filename="../UI/UserInterface.py" line="2831"/>
         <source>Virtualenv &amp;Configurator...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2836"/>
+        <location filename="../UI/UserInterface.py" line="2839"/>
         <source>&lt;b&gt;Virtualenv Configurator&lt;/b&gt;&lt;p&gt;This opens a dialog for entering all the parameters needed to create a Python virtual environment using virtualenv or pyvenv.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3232"/>
+        <location filename="../UI/UserInterface.py" line="3235"/>
         <source>Left Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3244"/>
+        <location filename="../UI/UserInterface.py" line="3247"/>
         <source>Bottom Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3251"/>
+        <location filename="../UI/UserInterface.py" line="3254"/>
         <source>Right Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3271"/>
+        <location filename="../UI/UserInterface.py" line="3274"/>
         <source>Plug-ins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Restart</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Ctrl+Shift+Q</source>
         <comment>File|Quit</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1659"/>
+        <location filename="../UI/UserInterface.py" line="1662"/>
         <source>Restart the IDE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1660"/>
+        <location filename="../UI/UserInterface.py" line="1663"/>
         <source>&lt;b&gt;Restart the IDE&lt;/b&gt;&lt;p&gt;This restarts the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>Start Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Conda</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>PyPI</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3580"/>
+        <location filename="../UI/UserInterface.py" line="3583"/>
         <source>&lt;p&gt;This part of the status bar allows zooming the current editor or shell.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>MicroPython</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>Ctrl+Alt+Shift+I</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Ctrl+Alt+Shift+D</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2052"/>
-        <source>Switch the input focus to the Code Documentation Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="2055"/>
+        <source>Switch the input focus to the Code Documentation Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2058"/>
         <source>&lt;b&gt;Code Documentation Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Code Documentation Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>Ctrl+Alt+Shift+P</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2072"/>
+        <location filename="../UI/UserInterface.py" line="2075"/>
         <source>Switch the input focus to the PyPI window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2074"/>
+        <location filename="../UI/UserInterface.py" line="2077"/>
         <source>&lt;b&gt;PyPI&lt;/b&gt;&lt;p&gt;This switches the input focus to the PyPI window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Ctrl+Alt+Shift+C</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2090"/>
+        <location filename="../UI/UserInterface.py" line="2093"/>
         <source>Switch the input focus to the Conda window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2092"/>
+        <location filename="../UI/UserInterface.py" line="2095"/>
         <source>&lt;b&gt;Conda&lt;/b&gt;&lt;p&gt;This switches the input focus to the Conda window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>Ctrl+Alt+Shift+M</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2108"/>
+        <location filename="../UI/UserInterface.py" line="2111"/>
         <source>Switch the input focus to the MicroPython window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2110"/>
+        <location filename="../UI/UserInterface.py" line="2113"/>
         <source>&lt;b&gt;MicroPython&lt;/b&gt;&lt;p&gt;This switches the input focus to the MicroPython window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3229"/>
+        <location filename="../UI/UserInterface.py" line="3232"/>
         <source>Central Park</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3746"/>
+        <location filename="../UI/UserInterface.py" line="3749"/>
         <source>&lt;h2&gt;Version Numbers&lt;/h2&gt;&lt;table&gt;</source>
         <translation type="unfinished">&lt;h3&gt;Čísla verzí&lt;/h3&gt;&lt;table&gt; {2&gt;?} {2&gt;?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5075"/>
+        <location filename="../UI/UserInterface.py" line="5078"/>
         <source>&lt;p&gt;Could not find the Qt-Designer executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5145"/>
+        <location filename="../UI/UserInterface.py" line="5148"/>
         <source>&lt;p&gt;Could not find the Qt-Linguist executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5189"/>
+        <location filename="../UI/UserInterface.py" line="5192"/>
         <source>&lt;p&gt;Could not find the Qt-Assistant executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install Info</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install &amp;Info...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2219"/>
+        <location filename="../UI/UserInterface.py" line="2222"/>
         <source>Show Installation Information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2221"/>
+        <location filename="../UI/UserInterface.py" line="2224"/>
         <source>&lt;b&gt;Show Install Info...&lt;/b&gt;&lt;p&gt;Opens a dialog showing some information about the installation process.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2877"/>
+        <location filename="../UI/UserInterface.py" line="2880"/>
         <source>Qt6 Documentation</source>
         <translation type="unfinished">Qt4 dokumentace {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2881"/>
+        <location filename="../UI/UserInterface.py" line="2884"/>
         <source>Open Qt6 Documentation</source>
         <translation type="unfinished">Otevřít Qt4 dokumentaci {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2882"/>
+        <location filename="../UI/UserInterface.py" line="2885"/>
         <source>&lt;b&gt;Qt6 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2909"/>
+        <location filename="../UI/UserInterface.py" line="2912"/>
         <source>PyQt6 Documentation</source>
         <translation type="unfinished">PyQt4 dokumentace {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2913"/>
+        <location filename="../UI/UserInterface.py" line="2916"/>
         <source>Open PyQt6 Documentation</source>
         <translation type="unfinished">Otevřít PyQt4 dokumentaci {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2915"/>
+        <location filename="../UI/UserInterface.py" line="2918"/>
         <source>&lt;b&gt;PyQt6 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2994"/>
+        <location filename="../UI/UserInterface.py" line="2997"/>
         <source>PySide6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2998"/>
+        <location filename="../UI/UserInterface.py" line="3001"/>
         <source>Open PySide6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3000"/>
+        <location filename="../UI/UserInterface.py" line="3003"/>
         <source>&lt;b&gt;PySide6 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5754"/>
+        <location filename="../UI/UserInterface.py" line="5770"/>
         <source>&lt;p&gt;The PyQt{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1701"/>
+        <location filename="../UI/UserInterface.py" line="1704"/>
         <source>Open a new eric instance</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1703"/>
+        <location filename="../UI/UserInterface.py" line="1706"/>
         <source>&lt;b&gt;New Window&lt;/b&gt;&lt;p&gt;This opens a new instance of the eric IDE.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2146"/>
+        <location filename="../UI/UserInterface.py" line="2149"/>
         <source>&lt;b&gt;Helpviewer&lt;/b&gt;&lt;p&gt;Display the eric web browser. This window will show HTML help files and help from Qt help collections. It has the capability to navigate to links, set bookmarks, print the displayed help and some more features. You may use it to browse the internet as well&lt;/p&gt;&lt;p&gt;If called with a word selected, this word is search in the Qt help collection.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2181"/>
+        <location filename="../UI/UserInterface.py" line="2184"/>
         <source>&lt;b&gt;Check for Updates...&lt;/b&gt;&lt;p&gt;Checks the internet for updates of eric.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2194"/>
+        <location filename="../UI/UserInterface.py" line="2197"/>
         <source>&lt;b&gt;Show downloadable versions...&lt;/b&gt;&lt;p&gt;Shows the eric versions available for download from the internet.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2468"/>
+        <location filename="../UI/UserInterface.py" line="2471"/>
         <source>Start the eric Hex Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2470"/>
+        <location filename="../UI/UserInterface.py" line="2473"/>
         <source>&lt;b&gt;Hex Editor&lt;/b&gt;&lt;p&gt;Starts the eric Hex Editor for viewing or editing binary files.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric &amp;Web Browser...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2483"/>
+        <location filename="../UI/UserInterface.py" line="2486"/>
         <source>Start the eric Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2485"/>
+        <location filename="../UI/UserInterface.py" line="2488"/>
         <source>&lt;b&gt;eric Web Browser&lt;/b&gt;&lt;p&gt;Browse the Internet with the eric Web Browser.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2497"/>
+        <location filename="../UI/UserInterface.py" line="2500"/>
         <source>Start the eric Icon Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2499"/>
+        <location filename="../UI/UserInterface.py" line="2502"/>
         <source>&lt;b&gt;Icon Editor&lt;/b&gt;&lt;p&gt;Starts the eric Icon Editor for editing simple icons.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2585"/>
+        <location filename="../UI/UserInterface.py" line="2588"/>
         <source>&lt;b&gt;Show external tools&lt;/b&gt;&lt;p&gt;Opens a dialog to show the path and versions of all extenal tools used by eric.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2959"/>
+        <location filename="../UI/UserInterface.py" line="2962"/>
         <source>&lt;b&gt;Eric API Documentation&lt;/b&gt;&lt;p&gt;Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric installation directory.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5972"/>
+        <location filename="../UI/UserInterface.py" line="5988"/>
         <source>The eric web browser could not be started.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>&lt;p&gt;The eric web browser is not started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>The update to &lt;b&gt;{0}&lt;/b&gt; of eric is available at &lt;b&gt;{1}&lt;/b&gt;. Would you like to get it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7188"/>
+        <location filename="../UI/UserInterface.py" line="7215"/>
         <source>You are using a snapshot release of eric. A more up-to-date stable release might be available.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>eric is up to date</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>You are using the latest version of eric</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>eric has not been configured yet. The configuration dialog will be started.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6290"/>
+        <location filename="../UI/UserInterface.py" line="6306"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard Shortcuts File (*.e4k)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>&lt;p&gt;The keyboard shortcuts file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard shortcut file (*.e4k)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>Read Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6621"/>
+        <location filename="../UI/UserInterface.py" line="6637"/>
         <source>Save Session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6578"/>
+        <location filename="../UI/UserInterface.py" line="6594"/>
         <source>Read Session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>eric Session Files (*.esj);;eric XML Session Files (*.e5s)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -82345,7 +82484,7 @@
 <context>
     <name>Utilities</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="1420"/>
+        <location filename="../Utilities/__init__.py" line="1421"/>
         <source>&lt;p&gt;You may use %-codes as placeholders in the string. Supported codes are:&lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;column of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;directory of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;filename of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;home directory of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;line of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;path of the current project&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;selected text of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;username of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;the percent sign&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</source>
         <translation>&lt;p&gt;Můžete použít %-kódy a rezervovaná místa ve stringu. Podporované kódy jsou:&lt;table&gt;&lt;tr&gt;    &lt;td&gt;%C&lt;/td&gt;    &lt;td&gt;sloupec kurzoru v aktuálním editoru&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;    &lt;td&gt;%D&lt;/td&gt;    &lt;td&gt;adresář v aktuálním editoru&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;    &lt;td&gt;%F&lt;/td&gt;    &lt;td&gt;jméno souboru v aktuálním editoru&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;    &lt;td&gt;%H&lt;/td&gt;    &lt;td&gt;home adresář aktuálního uživatele&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;    &lt;td&gt;%L&lt;/td&gt;    &lt;td&gt;řádek s kurzorem v aktuálním editoru&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;    &lt;td&gt;%P&lt;/td&gt;    &lt;td&gt;cesta aktuálního projektu&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;    &lt;td&gt;%S&lt;/td&gt;    &lt;td&gt;vybraný text v aktuálním editoru&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;    &lt;td&gt;%U&lt;/td&gt;    &lt;td&gt;uživatelské jméno aktuálního uživatele&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;    &lt;td&gt;%%&lt;/td&gt;    &lt;td&gt;znak procenta&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</translation>
     </message>
@@ -82973,12 +83112,12 @@
 <context>
     <name>VcsMercurialPlugin</name>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="58"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="54"/>
         <source>Version Control - Mercurial</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="132"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="124"/>
         <source>Mercurial</source>
         <translation></translation>
     </message>
@@ -85522,17 +85661,17 @@
         <translation>Soubor změněn</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5217"/>
+        <location filename="../ViewManager/ViewManager.py" line="5230"/>
         <source>&amp;Clear</source>
         <translation>&amp;Vyčistit</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5211"/>
+        <location filename="../ViewManager/ViewManager.py" line="5224"/>
         <source>&amp;Add</source>
         <translation>Přid&amp;at</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5214"/>
+        <location filename="../ViewManager/ViewManager.py" line="5227"/>
         <source>&amp;Edit...</source>
         <translation>&amp;Edit...</translation>
     </message>
@@ -85735,12 +85874,12 @@
         <translation>&lt;p&gt;Soubor &lt;b&gt;{0}&lt;/b&gt; obsahuje neuložené změny.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4777"/>
+        <location filename="../ViewManager/ViewManager.py" line="4790"/>
         <source>Line: {0:5}</source>
         <translation>Řádek: {0:5}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4783"/>
+        <location filename="../ViewManager/ViewManager.py" line="4796"/>
         <source>Pos: {0:5}</source>
         <translation>Poz: {0:5}</translation>
     </message>
@@ -86348,27 +86487,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>Edit Spelling Dictionary</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6233"/>
+        <location filename="../ViewManager/ViewManager.py" line="6246"/>
         <source>Editing {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6215"/>
+        <location filename="../ViewManager/ViewManager.py" line="6228"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6244"/>
+        <location filename="../ViewManager/ViewManager.py" line="6257"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>The spelling dictionary was saved successfully.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -86488,12 +86627,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4804"/>
+        <location filename="../ViewManager/ViewManager.py" line="4817"/>
         <source>Language: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4811"/>
+        <location filename="../ViewManager/ViewManager.py" line="4824"/>
         <source>EOL Mode: {0}</source>
         <translation type="unfinished"></translation>
     </message>
Binary file eric6/i18n/eric6_de.qm has changed
--- a/eric6/i18n/eric6_de.ts	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/i18n/eric6_de.ts	Thu Jun 03 11:39:23 2021 +0200
@@ -1,5 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS><TS version="2.0" language="de" sourcelanguage="">
+<!DOCTYPE TS>
+<TS version="2.1" language="de">
 <context>
     <name>AboutDialog</name>
     <message>
@@ -1245,45 +1246,60 @@
 <context>
     <name>ApplicationDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="43"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="47"/>
         <source>Application Diagram {0}</source>
         <translation>Applikations-Diagramm {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>Parsing modules...</source>
         <translation>Module werden gelesen …</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="197"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="252"/>
         <source>&lt;&lt;Application&gt;&gt;</source>
         <translation>&lt;&lt;Applikation&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="199"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="254"/>
         <source>&lt;&lt;Others&gt;&gt;</source>
         <translation>&lt;&lt;Sonstige&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>Load Diagram</source>
         <translation>Diagramm laden</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>&lt;p&gt;The diagram belongs to the project &lt;b&gt;{0}&lt;/b&gt;. Shall this project be opened?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Das Diagramm gehört zum Projekt &lt;b&gt;{0}&lt;/b&gt;. Soll dieses Projekt geöffnet werden?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>%v/%m Modules</source>
         <translation>%v/%m Module</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="69"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
         <source>Application Diagram</source>
         <translation>Applikations-Diagramm</translation>
     </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="126"/>
+        <source>Select the application directory:</source>
+        <translation>Wähle das Applikationsverzeichnis:</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
+        <source>No application package could be detected. Aborting...</source>
+        <translation>Es konnte kein Applikationspaket gefunden werden. Abbruch...</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="466"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Das Diagramm gehört zu dem Projekt &lt;b&gt;{0}&lt;/b&gt;. Öffne es und versuch es erneut.&lt;/p&gt;</translation>
+    </message>
 </context>
 <context>
     <name>ApplicationPage</name>
@@ -1604,47 +1620,47 @@
 <context>
     <name>BackgroundService</name>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="139"/>
+        <location filename="../Utilities/BackgroundService.py" line="142"/>
         <source>{0} not configured.</source>
         <translation>{0} nicht konfiguriert.</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>Restart background client?</source>
         <translation>Hintergrund Client neu starten?</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>Background client disconnected.</source>
         <translation>Hintergrund Client wurde getrennt.</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="456"/>
+        <location filename="../Utilities/BackgroundService.py" line="459"/>
         <source>Eric&apos;s background client disconnected because of an unknown reason.</source>
         <translation>Die Verbindung zu Erics Hintergund Client wurde aus unbekanntem Grund getrennt.</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>&lt;p&gt;The background client for &lt;b&gt;{0}&lt;/b&gt; has stopped due to an exception. It&apos;s used by various plug-ins like the different checkers.&lt;/p&gt;&lt;p&gt;Select&lt;ul&gt;&lt;li&gt;&lt;b&gt;&apos;Yes&apos;&lt;/b&gt; to restart the client, but abort the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Retry&apos;&lt;/b&gt; to restart the client and the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;No&apos;&lt;/b&gt; to leave the client off.&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p&gt;Note: The client can be restarted by opening and accepting the preferences dialog or reloading/changing the project.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Der Hintergund Client für &lt;b&gt;{0}&lt;/b&gt; wurde durch eine Exception gestoppt. Er wird für verschiedene Plugins, wie z.B. die Checker, verwendet.&lt;/p&gt;&lt;p&gt;Wähle:&lt;ul&gt;&lt;li&gt;&lt;b&gt;&apos;Ja&apos;&lt;/b&gt;, um den Client aber nicht den letzten Job neu zu starten&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Wiederholen&apos;&lt;/b&gt;, um den Client und letzten Job neu zu starten&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Nein&apos;&lt;/b&gt;, um den Client nicht neu zu starten.&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p&gt;Hinweis: Der Client kann immer wieder gestartet werden, indem der Einstellungsdialog mit Ok geschlossen wird oder durch das Neuladen/ Wechseln des Projektes.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>The background client for &lt;b&gt;{0}&lt;/b&gt; disconnected because of an unknown reason.&lt;br&gt;Should it be restarted?</source>
         <translation>Die Verbindung zum Hintergund Client für &lt;b&gt;{0}&lt;/b&gt; wurde aus unbekanntem Grund getrennt.&lt;br&gt;Soll er neu gestartet werden?</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="228"/>
+        <location filename="../Utilities/BackgroundService.py" line="231"/>
         <source>An error in Eric&apos;s background client stopped the service.</source>
         <translation>Ein Fehler im Eric Hintergrunddienst hat den Dienst beendet.</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>Initialization of Background Service</source>
         <translation>Initialisierung des Hintergrunddienstes</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>&lt;p&gt;Initialization of Background Service &lt;b&gt;{0}&lt;/b&gt; failed.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Initialisierung des Hintergrunddienstes &lt;b&gt;{0}&lt;/b&gt; ist fehlgeschlagen.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
@@ -2130,8 +2146,8 @@
     </message>
     <message>
         <location filename="../WebBrowser/Bookmarks/BookmarksMenu.py" line="170"/>
-        <source>Open in New Tab<byte value="x9"/>Ctrl+LMB</source>
-        <translation>In neuem Register öffnen<byte value="x9"/>Strg+LMK</translation>
+        <source>Open in New Tab	Ctrl+LMB</source>
+        <translation>In neuem Register öffnen	Strg+LMK</translation>
     </message>
     <message>
         <location filename="../WebBrowser/Bookmarks/BookmarksMenu.py" line="174"/>
@@ -2199,8 +2215,8 @@
     </message>
     <message>
         <location filename="../WebBrowser/Bookmarks/BookmarksToolBar.py" line="90"/>
-        <source>Open in New Tab<byte value="x9"/>Ctrl+LMB</source>
-        <translation>In neuem Register öffnen<byte value="x9"/>Strg+LMK</translation>
+        <source>Open in New Tab	Ctrl+LMB</source>
+        <translation>In neuem Register öffnen	Strg+LMK</translation>
     </message>
     <message>
         <location filename="../WebBrowser/Bookmarks/BookmarksToolBar.py" line="94"/>
@@ -2342,222 +2358,222 @@
 <context>
     <name>Browser</name>
     <message>
-        <location filename="../UI/Browser.py" line="284"/>
+        <location filename="../UI/Browser.py" line="286"/>
         <source>Open</source>
         <translation>Öffnen</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="233"/>
+        <location filename="../UI/Browser.py" line="235"/>
         <source>Run unittest...</source>
         <translation>Modultest …</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="94"/>
+        <location filename="../UI/Browser.py" line="96"/>
         <source>File-Browser</source>
         <translation>Dateibrowser</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="342"/>
+        <location filename="../UI/Browser.py" line="344"/>
         <source>New toplevel directory...</source>
         <translation>Neuer übergeordneter Ordner …</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="301"/>
+        <location filename="../UI/Browser.py" line="303"/>
         <source>Remove from toplevel</source>
         <translation>Vom Anfang entfernen</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="298"/>
+        <location filename="../UI/Browser.py" line="300"/>
         <source>Add as toplevel directory</source>
         <translation>Als übergeordneten Ordner hinzufügen</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="643"/>
+        <location filename="../UI/Browser.py" line="646"/>
         <source>New toplevel directory</source>
         <translation>Neuer übergeordneter Ordner</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="309"/>
+        <location filename="../UI/Browser.py" line="311"/>
         <source>Find in this directory</source>
         <translation>In diesem Verzeichnis suchen</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="263"/>
+        <location filename="../UI/Browser.py" line="265"/>
         <source>Open in Icon Editor</source>
         <translation>Mit Icon-Editor öffnen</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="316"/>
+        <location filename="../UI/Browser.py" line="318"/>
         <source>Copy Path to Clipboard</source>
         <translation>Pfad in die Zwischenablage kopieren</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="305"/>
+        <location filename="../UI/Browser.py" line="307"/>
         <source>Refresh directory</source>
         <translation>Verzeichnis aktualisieren</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="328"/>
+        <location filename="../UI/Browser.py" line="330"/>
         <source>Goto</source>
         <translation>Gehe zu</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="435"/>
+        <location filename="../UI/Browser.py" line="437"/>
         <source>Line {0}</source>
         <translation>Zeile {0}</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="113"/>
+        <location filename="../UI/Browser.py" line="115"/>
         <source>&lt;b&gt;The Browser Window&lt;/b&gt;&lt;p&gt;This allows you to easily navigate the hierarchy of directories and files on your system, identify the Python programs and open them up in a Source Viewer window. The window displays several separate hierarchies.&lt;/p&gt;&lt;p&gt;The first hierarchy is only shown if you have opened a program for debugging and its root is the directory containing that program. Usually all of the separate files that make up a Python application are held in the same directory, so this hierarchy gives you easy access to most of what you will need.&lt;/p&gt;&lt;p&gt;The next hierarchy is used to easily navigate the directories that are specified in the Python &lt;tt&gt;sys.path&lt;/tt&gt; variable.&lt;/p&gt;&lt;p&gt;The remaining hierarchies allow you navigate your system as a whole. On a UNIX system there will be a hierarchy with &lt;tt&gt;/&lt;/tt&gt; at its root and another with the user home directory. On a Windows system there will be a hierarchy for each drive on the system.&lt;/p&gt;&lt;p&gt;Python programs (i.e. those with a &lt;tt&gt;.py&lt;/tt&gt; file name suffix) are identified in the hierarchies with a Python icon. The right mouse button will popup a menu which lets you open the file in a Source Viewer window, open the file for debugging or use it for a unittest run.&lt;/p&gt;&lt;p&gt;The context menu of a class, function or method allows you to open the file defining this class, function or method and will ensure, that the correct source line is visible.&lt;/p&gt;&lt;p&gt;Qt-Designer files (i.e. those with a &lt;tt&gt;.ui&lt;/tt&gt; file name suffix) are shown with a Designer icon. The context menu of these files allows you to start Qt-Designer with that file.&lt;/p&gt;&lt;p&gt;Qt-Linguist files (i.e. those with a &lt;tt&gt;.ts&lt;/tt&gt; file name suffix) are shown with a Linguist icon. The context menu of these files allows you to start Qt-Linguist with that file.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Das Browserfenster&lt;/b&gt;&lt;p&gt;Dies erlaubt es Ihnen, sich leicht in der Verzeichnishierarchie Ihres Systems zu bewegen, Python-Programme zu identifizieren und diese in einem Quelltextfenster zu öffnen. Das Fenster stellt verschiedene Hierarchien dar.&lt;/p&gt;&lt;p&gt;Die erste wird nur angezeigt, wenn ein Programm zum debuggen geöffnet ist. Gewöhnlich werden alle zum Programm zugehörigen Python-Dateien im selben Verzeichnis gespeichert, so dass Sie über diese Hierarchie Zugriff auf das am meisten Benötigte haben.&lt;/p&gt;&lt;p&gt;Die nächste Hierarchie wird verwendet, um sich in den in der Python-Variable &lt;tt&gt;sys.path&lt;/tt&gt; gespeicherten Verzeichnissen zu bewegen.&lt;/p&gt;&lt;p&gt;Die restlichen Hierachien erlauben die Navigation im gesamten System. Unter Unix wird gewöhnlich ein Verzeichnis mit &lt;tt&gt;/&lt;/tt&gt; als Wurzel und eines mit dem Home-Verzeichnis des Nutzers angezeigt. Auf einem Windows-System wird eine Hierarchie pro Laufwerk angezeigt.&lt;/p&gt;&lt;p&gt;Python-Programme (Dateien mit der Endung &lt;tt&gt;.py&lt;/tt&gt;) werden mit einem Python-Symbol dargestellt. Ein Rechtsklick bringt ein Kontextmenü, über das die Datei in einem Editor, zum Debuggen oder für einen Modultest geöffnet werden kann.&lt;/p&gt;&lt;p&gt;Das Kontextmenü einer Klasse, einer Funktion oder einer Methode öffnet die Datei, in der diese Klasse, Funktion oder Methode definiert ist, und stellt sicher, dass die richtige Codezeile sichtbar ist.&lt;/p&gt;&lt;p&gt;Qt-Designer-Dateien (Dateien mit der Endung &lt;tt&gt;.ui&lt;/tt&gt;) werden mit einem Designer-Symbol dargestellt. Das Kontextmenü dieser Dateien erlaubt es, sie im Qt Designer zu öffnen.&lt;/p&gt;&lt;p&gt;Qt-Linguist-Dateien (Dateien mit der Endung &lt;tt&gt;.ts&lt;/tt&gt;) werden mit einem Linguist-Symbol dargestellt. Das Kontextmenü dieser Dateien erlaubt es, sie im Qt Linguist zu öffnen.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>Show Mime-Type</source>
         <translation>MIME-Typ anzeigen</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="528"/>
+        <location filename="../UI/Browser.py" line="531"/>
         <source>The mime type of the file could not be determined.</source>
         <translation>Der MIME-Typ der Datei konnte nicht ermittelt werden.</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="546"/>
+        <location filename="../UI/Browser.py" line="549"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation>Die Datei hat den MIME-Typ &lt;b&gt;{0}&lt;/b&gt;.</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation>Die Datei hat den MIME-Typ &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt;Soll sie zur Liste der Text MIME-Typen hinzugefügt werden?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="260"/>
+        <location filename="../UI/Browser.py" line="262"/>
         <source>Open in Hex Editor</source>
         <translation>Mit Hex-Editor öffnen</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="312"/>
+        <location filename="../UI/Browser.py" line="314"/>
         <source>Find &amp;&amp; Replace in this directory</source>
         <translation>In diesem Verzeichnis suchen &amp;&amp; ersetzen</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="241"/>
+        <location filename="../UI/Browser.py" line="243"/>
         <source>Refresh Source File</source>
         <translation>Quelltextdatei aktualisieren</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="214"/>
+        <location filename="../UI/Browser.py" line="216"/>
         <source>Show Hidden Files</source>
         <translation>Versteckte Dateien anzeigen</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="221"/>
-        <source>New</source>
-        <translation>Neu</translation>
-    </message>
-    <message>
         <location filename="../UI/Browser.py" line="223"/>
+        <source>New</source>
+        <translation>Neu</translation>
+    </message>
+    <message>
+        <location filename="../UI/Browser.py" line="225"/>
         <source>Directory</source>
         <translation>Verzeichnis</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="226"/>
+        <location filename="../UI/Browser.py" line="228"/>
         <source>File</source>
         <translation>Datei</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="323"/>
+        <location filename="../UI/Browser.py" line="325"/>
         <source>Delete</source>
         <translation>Löschen</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>New Directory</source>
         <translation>Neues Verzeichnis</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="861"/>
+        <location filename="../UI/Browser.py" line="864"/>
         <source>Name for new directory:</source>
         <translation>Name des neuen Verzeichnisses:</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="902"/>
+        <location filename="../UI/Browser.py" line="905"/>
         <source>A file or directory named &lt;b&gt;{0}&lt;/b&gt; exists already. Aborting...</source>
         <translation>Eine Datei oder ein Verzeichnis mit der Bezeichnung &lt;b&gt;{0}&lt;/b&gt; existiert bereits. Abbruch...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>&lt;p&gt;The directory &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Das Verzeichnis &lt;b&gt;{0}&lt;/b&gt; konnte nicht angelegt werden.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>New File</source>
         <translation>Neue Datei</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="894"/>
+        <location filename="../UI/Browser.py" line="897"/>
         <source>Name for new file:</source>
         <translation>Name der neuen Datei:</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; konnte nicht angelegt werden.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="942"/>
+        <location filename="../UI/Browser.py" line="945"/>
         <source>Do you really want to move this file to the trash?</source>
         <translation>Soll diese Datei wirklich in den Papierkorb verschoben werden?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="946"/>
+        <location filename="../UI/Browser.py" line="949"/>
         <source>Do you really want to delete this file?</source>
         <translation>Soll diese Datei wirklich gelöscht werden?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>Delete File</source>
         <translation>Datei löschen</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>&lt;p&gt;The selected file &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die ausgewählte Datei &lt;b&gt;{0}&lt;/b&gt; konnte nicht gelöscht werden.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="979"/>
+        <location filename="../UI/Browser.py" line="982"/>
         <source>Do you really want to move this directory to the trash?</source>
         <translation>Soll dieses Verzeichnis wirklich in den Papierkorb verschoben werden?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="983"/>
+        <location filename="../UI/Browser.py" line="986"/>
         <source>Do you really want to delete this directory?</source>
         <translation>Soll dieses Verzeichnis wirklich gelöscht werden?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>Delete Directory</source>
         <translation>Verzeichnis löschen</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>&lt;p&gt;The selected directory &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Das ausgewählte Verzeichnis &lt;b&gt;{0}&lt;/b&gt; konnte nicht gelöscht werden.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1023"/>
+        <location filename="../UI/Browser.py" line="1026"/>
         <source>Do you really want to move these files to the trash?</source>
         <translation>Sollen diese Dateien wirklich in den Papierkorb verschoben werden?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1027"/>
+        <location filename="../UI/Browser.py" line="1030"/>
         <source>Do you really want to delete these files?</source>
         <translation>Sollen diese Dateien wirklich gelöscht werden?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1032"/>
+        <location filename="../UI/Browser.py" line="1035"/>
         <source>Delete Files</source>
         <translation>Dateien löschen</translation>
     </message>
@@ -3156,6 +3172,35 @@
     </message>
 </context>
 <context>
+    <name>ClassItem</name>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="176"/>
+        <source>Class Attributes:
+  </source>
+        <translation>Klassenattribute:
+  </translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="211"/>
+        <source>none</source>
+        <translation>keine</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="191"/>
+        <source>Instance Attributes:
+  </source>
+        <translation>Instanzattribute:
+  </translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="210"/>
+        <source>Methods:
+  </source>
+        <translation>Methoden:
+  </translation>
+    </message>
+</context>
+<context>
     <name>ClearPrivateDataDialog</name>
     <message>
         <location filename="../UI/ClearPrivateDataDialog.ui" line="14"/>
@@ -4643,7 +4688,7 @@
 <context>
     <name>CodingError</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="131"/>
+        <location filename="../Utilities/__init__.py" line="132"/>
         <source>The coding &apos;{0}&apos; is wrong for the given text.</source>
         <translation>Die Kodierung „{0}“ ist für den übergebenen Text falsch.</translation>
     </message>
@@ -6957,7 +7002,7 @@
 <context>
     <name>DebugUI</name>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1980"/>
+        <location filename="../Debugger/DebugUI.py" line="1981"/>
         <source>Run Script</source>
         <translation>Skript ausführen</translation>
     </message>
@@ -6972,7 +7017,7 @@
         <translation>Das aktuelle Skript ausführen</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>Run Project</source>
         <translation>Projekt ausführen</translation>
     </message>
@@ -7092,12 +7137,12 @@
         <translation>Das untersuchte Programm wurde unerwartet beendet.</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>Debug Project</source>
         <translation>Projekt debuggen</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>There is no main script defined for the current project. No debugging possible.</source>
         <translation>Das aktuelle Projekt besitzt kein Hauptskript. Debuggen ist nicht möglich.</translation>
     </message>
@@ -7137,7 +7182,7 @@
         <translation>&lt;b&gt;Skript ausführen&lt;/b&gt;&lt;p&gt;Bestimme die Kommandozeilenparameter und führe das Skript außerhalb des Debuggers aus. Falls die Datei ungesicherte Änderungen hat, so können diese zunächst gesichert werden.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2121"/>
+        <location filename="../Debugger/DebugUI.py" line="2122"/>
         <source>Debug Script</source>
         <translation>Skript debuggen</translation>
     </message>
@@ -7172,7 +7217,7 @@
         <translation>&lt;b&gt;Projekt debuggen&lt;/b&gt;&lt;p&gt;Bestimme die Kommandozeilenparameter und setze die erste ausführbare Python-Zeile des Hauptskriptes des aktuellen Projektes als aktuelle Zeile. Falls Dateien des aktuellen Projektes ungesicherte Änderungen haben, so können diese zunächst gesichert werden.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>There is no main script defined for the current project. Aborting</source>
         <translation>Für das aktuelle Projekt ist kein Hauptskript festgelegt. Abbruch</translation>
     </message>
@@ -7222,12 +7267,12 @@
         <translation>&lt;b&gt;Abdeckungslauf des Projektes&lt;/b&gt;&lt;p&gt;Bestimme die Kommandozeilenparameter und führe das Hauptskript des aktuellen Projektes unter Kontrolle eines Abdeckungsanalysetools aus. Falls Dateien des aktuellen Projektes ungesicherte Änderungen haben, so können diese zunächst gesichert werden.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1709"/>
+        <location filename="../Debugger/DebugUI.py" line="1710"/>
         <source>Coverage of Project</source>
         <translation>Abdeckung des Projektes</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1690"/>
+        <location filename="../Debugger/DebugUI.py" line="1691"/>
         <source>Coverage of Script</source>
         <translation>Abdeckung des Skriptes</translation>
     </message>
@@ -7272,12 +7317,12 @@
         <translation>&lt;b&gt;Projektprofil&lt;/b&gt;&lt;p&gt;Bestimme die Kommandozeilenparameter und führe das Hauptskript des aktuellen Projektes unter Kontrolle des Python-Profilers aus. Falls Dateien des aktuellen Projektes ungesicherte Änderungen haben, so können diese zunächst gesichert werden.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1854"/>
+        <location filename="../Debugger/DebugUI.py" line="1855"/>
         <source>Profile of Project</source>
         <translation>Projektprofil</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1835"/>
+        <location filename="../Debugger/DebugUI.py" line="1836"/>
         <source>Profile of Script</source>
         <translation>Skriptprofil</translation>
     </message>
@@ -7387,12 +7432,12 @@
         <translation>&lt;p&gt;Das untersuchte Programm erzeugte die Ausnahme &lt;b&gt;{0}&lt;/b&gt;&lt;br&gt;„&lt;b&gt;{1}&lt;/b&gt;“&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>Breakpoint Condition Error</source>
         <translation>Fehler in Haltepunktbedingung</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>&lt;p&gt;The condition of the breakpoint &lt;b&gt;{0}, {1}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Bedingung des Haltepunktes &lt;b&gt;{0}, {1}&lt;/b&gt; enthält einen Syntaxfehler.&lt;/p&gt;</translation>
     </message>
@@ -7439,27 +7484,27 @@
         <translation>Halte das laufende Skript an.</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>Watch Expression Error</source>
         <translation>Fehler in Beobachtungsausdruck</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>&lt;p&gt;The watch expression &lt;b&gt;{0}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Der Beobachtungsausdrucks &lt;b&gt;{0}&lt;/b&gt; enthält einen Syntaxfehler.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1530"/>
+        <location filename="../Debugger/DebugUI.py" line="1531"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; already exists.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Ein Beobachtungsausdruck „&lt;b&gt;{0}&lt;/b&gt;“ existiert bereits.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1535"/>
+        <location filename="../Debugger/DebugUI.py" line="1536"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; for the variable &lt;b&gt;{1}&lt;/b&gt; already exists.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Ein Beobachtungsausdruck „&lt;b&gt;{0}&lt;/b&gt;“ für die Variable &lt;b&gt;{1}&lt;/b&gt; existiert bereits.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1540"/>
+        <location filename="../Debugger/DebugUI.py" line="1541"/>
         <source>Watch expression already exists</source>
         <translation>Beobachtungsausdruck existiert bereits</translation>
     </message>
@@ -7551,7 +7596,7 @@
         <translation>&lt;b&gt;Instruktionszeiger zur Cursorposition bewegen&lt;/b&gt;&lt;p&gt;Bewege den Python Instruktionszeiger zur aktuellen Cursorposition, ohne Programmteile dazwischen auszuführen.&lt;/p&gt;&lt;p&gt;Es ist nicht möglich, aus einer Funktion herauszuspringen oder in eine Schleife hinein. In diesem Fall wird eine Fehlermeldung im Log-Fenster ausgegeben.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1418"/>
+        <location filename="../Debugger/DebugUI.py" line="1419"/>
         <source>No locals available.</source>
         <translation>Keine lokalen Variablen verfügbar.</translation>
     </message>
@@ -9876,9 +9921,22 @@
 </translation>
     </message>
     <message>
-        <location filename="../E5Graphics/E5GraphicsView.py" line="417"/>
+        <location filename="../E5Graphics/E5GraphicsView.py" line="421"/>
         <source>{0}, Page {1}</source>
-        <translation>{0}, Seite {1}</translation>
+        <translation type="obsolete">{0}, Seite {1}</translation>
+    </message>
+</context>
+<context>
+    <name>E5JsonServer</name>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>JSON Protocol Error</source>
+        <translation>JSON Protokollfehler</translation>
+    </message>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>&lt;p&gt;The response received from the client could not be decoded. Please report this issue with the received data to the eric bugs email address.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;&lt;p&gt;Data:&lt;br/&gt;{1}&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Die vom Client empfangene Antwort konnte nicht dekodiert werden. Bitte berichten sie diesen Fehler zusammen mit den empfangenen Daten an die eric Bugs Emailadresse.&lt;/p&gt;&lt;p&gt;Fehler: {0}&lt;/p&gt;&lt;p&gt;Daten:&lt;br/&gt;{1}&lt;/p&gt;</translation>
     </message>
 </context>
 <context>
@@ -11799,12 +11857,12 @@
         <translation>Klassenattribute anzeigen?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Application Diagram</source>
         <translation>Applikations-Diagramm</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Include module names?</source>
         <translation>Modulnamen anzeigen?</translation>
     </message>
@@ -11864,12 +11922,12 @@
         <translation>Kein Exportformat angegeben. Abbruch...</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Imports Diagram</source>
         <translation>Imports Diagramm</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Include imports from external modules?</source>
         <translation>Imports externer Module anzeigen?</translation>
     </message>
@@ -11944,7 +12002,7 @@
         <translation>Wähle den anzuwendenden Pygments Lexer.</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7944"/>
+        <location filename="../QScintilla/Editor.py" line="7941"/>
         <source>Check spelling...</source>
         <translation>Rechtschreibprüfung...</translation>
     </message>
@@ -11954,12 +12012,12 @@
         <translation>Rechtschreibprüfung für Auswahl...</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7947"/>
+        <location filename="../QScintilla/Editor.py" line="7944"/>
         <source>Add to dictionary</source>
         <translation>Zum Wörterbuch hinzufügen</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7949"/>
+        <location filename="../QScintilla/Editor.py" line="7946"/>
         <source>Ignore All</source>
         <translation>Alle ignorieren</translation>
     </message>
@@ -12044,12 +12102,12 @@
         <translation>Vorherige Änderung</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>Sort Lines</source>
         <translation>Zeilen sortieren</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>The selection contains illegal data for a numerical sort.</source>
         <translation>Die Auswahl enthält für eine numerische Sortierung ungültige Daten.</translation>
     </message>
@@ -12119,12 +12177,12 @@
         <translation>Der Calltipps-Provider namens &apos;{0}&apos; ist bereits registriert. Die Wiederholung wird ignoriert.</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>Register Mouse Click Handler</source>
         <translation>Maus Klick Handler registrieren</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>A mouse click handler for &quot;{0}&quot; was already registered by &quot;{1}&quot;. Aborting request by &quot;{2}&quot;...</source>
         <translation>Ein Maus Klick Handler für &quot;{0}&quot; wurde bereits durch &quot;{1}&quot; registriert. Die Anfrage durch &quot;{2}&quot; wird abgebrochen...</translation>
     </message>
@@ -12154,12 +12212,12 @@
         <translation>Auswahl in Konsole ausführen</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>EditorConfig Properties</source>
         <translation>EditorConfig Eigenschaften</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>&lt;p&gt;The EditorConfig properties for file &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die EditorConfig Eigenschaften für die Datei &lt;b&gt;{0}&lt;/b&gt; konnten nicht geladen werden.&lt;/p&gt;</translation>
     </message>
@@ -12204,7 +12262,7 @@
         <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; wurde geändert, während sie in eric geöffnet war. Neu einlesen?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8766"/>
+        <location filename="../QScintilla/Editor.py" line="8763"/>
         <source>Generate Docstring</source>
         <translation>Docstring erzeugen</translation>
     </message>
@@ -18568,7 +18626,7 @@
 <context>
     <name>FileDialogWizardDialog</name>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="72"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="73"/>
         <source>QFileDialog Wizard</source>
         <translation>QFileDialog-Assistent</translation>
     </message>
@@ -18698,7 +18756,7 @@
         <translation>nur Verzeichnisse anzeigen</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="89"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="90"/>
         <source>Test</source>
         <translation>Test</translation>
     </message>
@@ -18848,7 +18906,7 @@
         <translation>Gib die Liste der unterstützten Schemata durch Leerzeichen getrennt ein</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="67"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="68"/>
         <source>E5FileDialog Wizard</source>
         <translation>E5FileDialog-Assistent</translation>
     </message>
@@ -26299,27 +26357,27 @@
 <context>
     <name>Globals</name>
     <message>
-        <location filename="../Globals/__init__.py" line="451"/>
+        <location filename="../Globals/__init__.py" line="455"/>
         <source>{0:4.2f} Bytes</source>
         <translation>{0:4.2f} Bytes</translation>
     </message>
     <message>
-        <location filename="../Globals/__init__.py" line="455"/>
-        <source>{0:4.2f} KiB</source>
-        <translation>{0:4.2f} KiB</translation>
-    </message>
-    <message>
         <location filename="../Globals/__init__.py" line="459"/>
-        <source>{0:4.2f} MiB</source>
-        <translation>{0:4.2f} MiB</translation>
+        <source>{0:4.2f} KiB</source>
+        <translation>{0:4.2f} KiB</translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="463"/>
-        <source>{0:4.2f} GiB</source>
-        <translation>{0:4.2f} GiB</translation>
+        <source>{0:4.2f} MiB</source>
+        <translation>{0:4.2f} MiB</translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="467"/>
+        <source>{0:4.2f} GiB</source>
+        <translation>{0:4.2f} GiB</translation>
+    </message>
+    <message>
+        <location filename="../Globals/__init__.py" line="471"/>
         <source>{0:4.2f} TiB</source>
         <translation>{0:4.2f} TiB</translation>
     </message>
@@ -28423,112 +28481,112 @@
         <translation>Erzeuge Zweig im Mercurial-Repository</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1939"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1940"/>
         <source>Verifying the integrity of the Mercurial repository</source>
         <translation>Verifiziere die Integrität des Mercurial-Repository</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1953"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1954"/>
         <source>Showing the combined configuration settings</source>
         <translation>Zeige die kombinierten Einstellungen</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1966"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1967"/>
         <source>Showing aliases for remote repositories</source>
         <translation>Zeige Namen für entfernte Repositorys</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1979"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1980"/>
         <source>Recovering from interrupted transaction</source>
         <translation>Setze abgebrochene Transaktion zurück</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2166"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2167"/>
         <source>Shall the working directory be updated?</source>
         <translation>Soll das Arbeitsverzeichnis aktualisiert werden?</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1849"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1850"/>
         <source>Showing current branch</source>
         <translation>Zeige aktuellen Zweig</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2119"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2120"/>
         <source>Create changegroup</source>
         <translation>Änderungsgruppe erzeugen</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2178"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2179"/>
         <source>Apply changegroups</source>
         <translation>Änderungsgruppen anwenden</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2197"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2198"/>
         <source>Bisect subcommand ({0}) invalid.</source>
         <translation>Ungültiger Bisect Unterbefehl ({0}).</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2217"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2218"/>
         <source>Mercurial Bisect ({0})</source>
         <translation>Mercurial-Bisect ({0})</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2129"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2130"/>
         <source>Preview changegroup</source>
         <translation>Änderungsgruppe ansehen</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1992"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1993"/>
         <source>Identifying project directory</source>
         <translation>Projektverzeichnis identifizieren</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>Create .hgignore file</source>
         <translation>.hgignore-Datei erstellen</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; existiert bereits. Überschreiben?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2240"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2241"/>
         <source>Removing files from the Mercurial repository only</source>
         <translation>Lösche Dateien nur aus dem Mercurial-Repository</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2076"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2077"/>
         <source>Mercurial Changegroup Files (*.hg)</source>
         <translation>Mercurial-Änderungsgruppendateien (*.hg)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2157"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2158"/>
         <source>Mercurial Changegroup Files (*.hg);;All Files (*)</source>
         <translation>Mercurial-Änderungsgruppendateien (*.hg);;Alle Dateien (*)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2283"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2284"/>
         <source>Backing out changeset</source>
         <translation>Änderungssatz umkehren</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2263"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2264"/>
         <source>No revision given. Aborting...</source>
         <translation>Keine Revision angegeben. Abbruch...</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2093"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2094"/>
         <source>&lt;p&gt;The Mercurial changegroup file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Mercurial-Änderungsgruppendatei &lt;b&gt;{0}&lt;/b&gt; existiert bereits. Überschreiben?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2299"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2300"/>
         <source>Rollback last transaction</source>
         <translation>Letzte Transaktion zurücksetzen</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2292"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2293"/>
         <source>Are you sure you want to rollback the last transaction?</source>
         <translation>Wollen Sie die letzte Transaktion wirklich zurücksetzen?</translation>
     </message>
@@ -28538,72 +28596,72 @@
         <translation>Pflege Änderungen in das Mercurial-Repository ein</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>Mercurial Command Server</source>
         <translation>Mercurial-Befehlsserver</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2799"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2800"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be restarted.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Der Mercurial-Befehlsserver konnte nicht wiedergestartet werden.&lt;/p&gt;&lt;p&gt;Ursache: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Der Mercurial-Befehlsserver konnte nicht gestartet werden.&lt;/p&gt;&lt;p&gt;Ursache: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2351"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2352"/>
         <source>Import Patch</source>
         <translation>Patch importieren</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2392"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2393"/>
         <source>Export Patches</source>
         <translation>Patches exportieren</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2431"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2432"/>
         <source>Change Phase</source>
         <translation>Phase ändern</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2480"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2481"/>
         <source>Copy Changesets</source>
         <translation>Änderungssätze kopieren</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2520"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2521"/>
         <source>Copy Changesets (Continue)</source>
         <translation>Änderungssätze kopieren (Fortsetzung)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2663"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2664"/>
         <source>Add Sub-repository</source>
         <translation>Unterrepository hinzufügen</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2695"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2696"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be read.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Unterrepositorydatei .hgsub konnte nicht gelesen werden.&lt;/p&gt;&lt;p&gt;Ursache: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2645"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2646"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub already contains an entry &lt;b&gt;{0}&lt;/b&gt;. Aborting...&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Unterrepositorydatei .hgsub enthält bereits einen Eintrag &lt;b&gt;{0}&lt;/b&gt;. Abbruch...&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be written to.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Unterrepositorydatei .hgsub konnte nicht gespeichert werden.&lt;/p&gt;&lt;p&gt;Ursache: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>Remove Sub-repositories</source>
         <translation>Unterrepositorys löschen</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2684"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2685"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub does not exist. Aborting...&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Unterrepositorydatei .hgsub existiert nicht. Abbruch...&lt;/p&gt;</translation>
     </message>
@@ -28633,7 +28691,7 @@
         <translation>Wollen Sie wirklich alle Änderungen des Projektes rückgängig machen?</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2568"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2569"/>
         <source>Create Unversioned Archive</source>
         <translation>Erzeuge nicht versioniertes Archiv</translation>
     </message>
@@ -28653,7 +28711,7 @@
         <translation>Marke im Mercurial-Repository setzen</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1838"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1839"/>
         <source>Created new branch &lt;{0}&gt;.</source>
         <translation>Neuer Zweig &lt;{0}&gt; wurde angelegt.</translation>
     </message>
@@ -28663,62 +28721,62 @@
         <translation>Spitze des aktuellen Zweigs</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3049"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3050"/>
         <source>Mercurial Bookmark</source>
         <translation>Mercurial-Lesezeichen</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Delete Bookmark</source>
         <translation>Lesezeichen löschen</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Select the bookmark to be deleted:</source>
         <translation>Wähle das zu löschende Lesezeichen aus:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3074"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3075"/>
         <source>Delete Mercurial Bookmark</source>
         <translation>Mercurial-Lesezeichen löschen</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3098"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3099"/>
         <source>Rename Mercurial Bookmark</source>
         <translation>Mercurial-Lesezeichen umbenennen</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3132"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3133"/>
         <source>Move Mercurial Bookmark</source>
         <translation>Mercurial-Lesezeichen verschieben</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Pull Bookmark</source>
         <translation>Lesezeichen herunterladen</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Select the bookmark to be pulled:</source>
         <translation>Wähle das herunterzuladende Lesezeichen:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3213"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3214"/>
         <source>Pulling bookmark from a remote Mercurial repository</source>
         <translation>Lade Lesezeichen von einem entfernten Mercurial-Repository herunter</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Push Bookmark</source>
         <translation>Lesezeichen hochladen</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Select the bookmark to be push:</source>
         <translation>Wähle das hochzuladende Lesezeichen:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3253"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3254"/>
         <source>Pushing bookmark to a remote Mercurial repository</source>
         <translation>Lade Lesezeichen zu einem entfernten Mercurial-Repository hoch</translation>
     </message>
@@ -28753,22 +28811,22 @@
         <translation>Markiere als &apos;aufgelöst&apos;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>Delete All Backups</source>
         <translation>Alle Backups löschen</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>&lt;p&gt;Do you really want to delete all backup bundles stored the backup area &lt;b&gt;{0}&lt;/b&gt;?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Sollen wirklich alle Backupdateien des Backupbereiches &lt;b&gt;{0}&lt;/b&gt; gelöscht werden?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2532"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2533"/>
         <source>Copy Changesets (Stop)</source>
         <translation>Änderungssätze kopieren (Stopp)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2545"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2546"/>
         <source>Copy Changesets (Abort)</source>
         <translation>Änderungssätze kopieren (Abbruch)</translation>
     </message>
@@ -29577,42 +29635,42 @@
 <context>
     <name>HgClient</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="91"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="92"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Der Prozess {0} konnte nicht gestartet werden. Stellen Sie sicher, dass er sich im Suchpfad befindet.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="140"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="141"/>
         <source>Did not receive the &apos;hello&apos; message.</source>
         <translation>„Hallo“-Nachricht konnte nicht empfangen werden.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="142"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="143"/>
         <source>Received data on unexpected channel.</source>
         <translation>Daten auf unerwartetem Kanal empfangen.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="147"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="148"/>
         <source>Bad &apos;hello&apos; message, expected &apos;capabilities: &apos; but got &apos;{0}&apos;.</source>
         <translation>Ungültige „Hallo“-Nachricht; Erwartete „capabilities: “, empfing jedoch „{0}“.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="153"/>
         <source>&apos;capabilities&apos; message did not contain any capability.</source>
         <translation>„capabilities“-Nachricht enthielt keine Fähigkeiten.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="160"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="161"/>
         <source>Bad &apos;hello&apos; message, expected &apos;encoding: &apos; but got &apos;{0}&apos;.</source>
         <translation>Ungültige „Hallo“-Nachricht; Erwartete „encoding: “, empfing jedoch „{0}“.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="165"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="166"/>
         <source>&apos;encoding&apos; message did not contain any encoding.</source>
         <translation>„encoding“-Nachricht enthielt keine Kodierung.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="379"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="380"/>
         <source>For message see output dialog.</source>
         <translation>Nachricht siehe Ausgabedialog.</translation>
     </message>
@@ -34426,52 +34484,52 @@
 <context>
     <name>HgServeDialog</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="53"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="54"/>
         <source>Start Server</source>
         <translation>Server starten</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="59"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="60"/>
         <source>Stop Server</source>
         <translation>Server anhalten</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="65"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="66"/>
         <source>Start Browser</source>
         <translation>Browser starten</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="73"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="74"/>
         <source>Enter the server port</source>
         <translation>Gib den Serverport ein</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="79"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="80"/>
         <source>Select the style to use</source>
         <translation>Wähle den Stil aus</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="83"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="84"/>
         <source>Server</source>
         <translation>Server</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="90"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="91"/>
         <source>Browser</source>
         <translation>Browser</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>Process Generation Error</source>
         <translation>Fehler beim Prozessstart</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Der Prozess {0} konnte nicht gestartet werden. Stellen Sie sicher, dass er sich im Suchpfad befindet.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="50"/>
         <source>Mercurial Server</source>
         <translation>Mercurial-Server</translation>
     </message>
@@ -36037,17 +36095,17 @@
 <context>
     <name>HgUtilities</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="93"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="128"/>
         <source>The hg process finished with the exit code {0}</source>
         <translation>Der hg-Prozess endete mit dem Code {0}</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="98"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="133"/>
         <source>The hg process did not finish within 30s.</source>
         <translation>Der hg-Prozess endete nicht innerhalb von 30s.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="102"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="137"/>
         <source>Could not start the hg executable.</source>
         <translation>Das hg Programm konnte nicht gestartet werden.</translation>
     </message>
@@ -38257,35 +38315,40 @@
 <context>
     <name>ImportsDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm {0}: {1}</source>
         <translation>Imports-Diagramm {0}: {1}</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm: {0}</source>
         <translation>Imports-Diagramm: {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>Parsing modules...</source>
         <translation>Module werden gelesen...</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="124"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="136"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a Python package.</source>
         <translation>Das Verzeichnis &lt;b&gt;„{0}“&lt;/b&gt; ist kein Python-Package.</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>%v/%m Modules</source>
         <translation>%v/%m Module</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="95"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="107"/>
         <source>Imports Diagramm</source>
         <translation>Imports-Diagramm</translation>
     </message>
+    <message>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="410"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Das Diagramm gehört zu dem Projekt &lt;b&gt;{0}&lt;/b&gt;. Öffne es und versuch es erneut.&lt;/p&gt;</translation>
+    </message>
 </context>
 <context>
     <name>InputDialogWizard</name>
@@ -39946,22 +40009,22 @@
         <translation>Zeigt den Namen des Server</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="252"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="251"/>
         <source>Yes</source>
         <translation>Ja</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="254"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="253"/>
         <source>No</source>
         <translation>Nein</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Delete Channel</source>
         <translation>Kanal löschen</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Do you really want to delete channel &lt;b&gt;{0}&lt;/b&gt;?</source>
         <translation>Soll der Kanal &lt;b&gt;{0}&lt;/b&gt; wirklich gelöscht werden?</translation>
     </message>
@@ -44906,12 +44969,12 @@
     </message>
     <message>
         <location filename="../MicroPython/MicroPythonWidget.py" line="1195"/>
-        <source>&#xc2;&#xb5;Py Chart</source>
+        <source>µPy Chart</source>
         <translation>µPy Chart</translation>
     </message>
     <message>
         <location filename="../MicroPython/MicroPythonWidget.py" line="1278"/>
-        <source>&#xc2;&#xb5;Py Files</source>
+        <source>µPy Files</source>
         <translation>µPy Dateien</translation>
     </message>
     <message>
@@ -47855,45 +47918,60 @@
 <context>
     <name>PackageDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram {0}: {1}</source>
         <translation>Package-Diagramm {0}: {1}</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram: {0}</source>
         <translation>Package-Diagramm: {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>Parsing modules...</source>
         <translation>Module werden gelesen...</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="205"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="219"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a package.</source>
         <translation>Das Verzeichnis &lt;b&gt;„{0}“&lt;/b&gt; ist kein Package.</translation>
     </message>
     <message>
         <location filename="../Graphics/PackageDiagramBuilder.py" line="214"/>
         <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules.</source>
-        <translation>Das Package &lt;b&gt;„{0}“&lt;/b&gt; enthält keine Module.</translation>
+        <translation type="obsolete">Das Package &lt;b&gt;„{0}“&lt;/b&gt; enthält keine Module.</translation>
     </message>
     <message>
         <location filename="../Graphics/PackageDiagramBuilder.py" line="231"/>
         <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
-        <translation>Das Package &lt;b&gt;„{0}“&lt;/b&gt; enthält keine Klassen.</translation>
-    </message>
-    <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <translation type="obsolete">Das Package &lt;b&gt;„{0}“&lt;/b&gt; enthält keine Klassen.</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>%v/%m Modules</source>
         <translation>%v/%m Module</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="158"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="172"/>
         <source>Package Diagram</source>
         <translation>Package-Diagramm</translation>
     </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="230"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules or subpackages.</source>
+        <translation>Das Paket &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; enthält keine Module oder Unterpakete.</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="247"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes or subpackages.</source>
+        <translation>Das Paket &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; enthält keine Klassen oder Unterpakete.</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="555"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Das Diagramm gehört zu dem Projekt &lt;b&gt;{0}&lt;/b&gt;. Öffne es und versuch es erneut.&lt;/p&gt;</translation>
+    </message>
 </context>
 <context>
     <name>PageScreenDialog</name>
@@ -49349,42 +49427,42 @@
 <context>
     <name>PixmapDiagram</name>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>Pixmap-Viewer</source>
         <translation>Bildbetrachter</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="98"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="101"/>
         <source>Print</source>
         <translation>Drucken</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; cannot be displayed. The format is not supported.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; konnte nicht angezeigt werden. Das Grafikformat wird nicht unterstützt.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="93"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="96"/>
         <source>Close</source>
         <translation>Schließen</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="133"/>
-        <source>Window</source>
-        <translation>Fenster</translation>
-    </message>
-    <message>
         <location filename="../Graphics/PixmapDiagram.py" line="137"/>
+        <source>Window</source>
+        <translation>Fenster</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PixmapDiagram.py" line="141"/>
         <source>Graphics</source>
         <translation>Grafiken</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="391"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="416"/>
         <source>Diagram: {0}</source>
         <translation>Diagramm: {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="103"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="106"/>
         <source>Print Preview</source>
         <translation>Druckvorschau</translation>
     </message>
@@ -49712,12 +49790,12 @@
         <translation>&lt;p&gt;Das Pluginmodul &lt;b&gt;{0}&lt;/b&gt; existiert bereits. Abbruch...&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="492"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="476"/>
         <source>Error installing plugin. Reason: {0}</source>
         <translation>Fehler bei der Plugin-Installation. Ursache: {0}</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="501"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="485"/>
         <source>Unspecific exception installing plugin.</source>
         <translation>Unbekannte Ausnahme bei der Plugin-Installation.</translation>
     </message>
@@ -49735,32 +49813,32 @@
 <context>
     <name>PluginManager</name>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="614"/>
+        <location filename="../PluginManager/PluginManager.py" line="623"/>
         <source>Incompatible plugin activation method.</source>
         <translation>Nicht kompatible Plugin-Aktivierungsmethode.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="404"/>
+        <location filename="../PluginManager/PluginManager.py" line="410"/>
         <source>Module is missing the &apos;autoactivate&apos; attribute.</source>
         <translation>Dem Modul fehlt das Attribut „autoactivate“.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="415"/>
+        <location filename="../PluginManager/PluginManager.py" line="421"/>
         <source>Module is missing the &apos;pluginType&apos; and/or &apos;pluginTypename&apos; attributes.</source>
         <translation>Dem Modul fehlt das Attribut „pluginType“ und/oder „pluginTypename“.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="437"/>
+        <location filename="../PluginManager/PluginManager.py" line="446"/>
         <source>Module failed to load. Error: {0}</source>
         <translation>Modul konnte nicht geladen werden. Fehler: {0}</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>Plugin Manager Error</source>
         <translation>Pluginmanager-Fehler</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>&lt;p&gt;The plugin download directory &lt;b&gt;{0}&lt;/b&gt; could not be created. Please configure it via the configuration dialog.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Das Downloadverzeichnis für Plugins &lt;b&gt;{0}&lt;/b&gt; konnte nicht erzeugt werden. Bitte über den Konfigurationsdialog einstellen.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
@@ -49775,22 +49853,22 @@
         <translation>Das interne Pluginverzeichnis &lt;b&gt;{0}&lt;/b&gt; existiert nicht.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>Error downloading file</source>
         <translation>Fehler beim Herunterladen der Datei</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>&lt;p&gt;Could not download the requested file from {0}.&lt;/p&gt;&lt;p&gt;Error: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die angefragte Datei konnte nicht von {0} gedownloaded werden.&lt;/p&gt;&lt;p&gt;Fehler: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>New plugin versions available</source>
         <translation>Neue Plugin Versionen verfügbar</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>&lt;p&gt;There are new plug-ins or plug-in updates available. Use the plug-in repository dialog to get them.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Es sind neue Plugins oder neue Plugin Versionen verfügbar. Benutze den Plugin-Repository Dialog, um sie zu laden.&lt;/p&gt;</translation>
     </message>
@@ -51825,7 +51903,7 @@
         </translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>Create Package List</source>
         <translation>Erzeuge Paketliste</translation>
     </message>
@@ -51835,22 +51913,22 @@
         <translation>Erzeuge &amp;Paketliste</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>Create Plugin Archive</source>
         <translation>Erzeuge Plugin Archiv</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5264"/>
+        <location filename="../Project/Project.py" line="5265"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; already exists.&lt;/p&gt;&lt;p&gt;Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Datei &lt;b&gt;PKGLIST&lt;/b&gt; existiert bereits.&lt;/p&gt;&lt;p&gt;Überschreiben?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Datei &lt;b&gt;PKGLIST&lt;/b&gt; konnte nicht erzeugt werden.&lt;/p&gt;&lt;p&gt;Ursache: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5331"/>
+        <location filename="../Project/Project.py" line="5332"/>
         <source>The project does not have a main script defined. Aborting...</source>
         <translation>Für das Projekt wurde kein Hauptskript angegeben. Abbruch...</translation>
     </message>
@@ -51875,12 +51953,12 @@
         <translation>Projekttyp Registrierung</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5467"/>
+        <location filename="../Project/Project.py" line="5468"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be stored in the archive. Ignoring it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; konnte nicht im Archiv gespeichert werde. Sie wird ignoriert.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5536"/>
+        <location filename="../Project/Project.py" line="5537"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Plugindatei &lt;b&gt;{0}&lt;/b&gt; konnte nicht gelesen werden.&lt;br&gt;Grund: {1}&lt;/p&gt;</translation>
     </message>
@@ -51995,7 +52073,7 @@
         <translation>&lt;p&gt;Das ausgewählte Versionskontrollsystem &lt;b&gt;{0}&lt;/b&gt; konnte nicht gefunden werden.&lt;br/&gt;Ignoriere Übersteuerung.&lt;/p&gt;&lt;p&gt;{1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt; &lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Plugindatei &lt;b&gt;{0}&lt;/b&gt; konnte nicht gelesen werden.&lt;br&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
@@ -52041,7 +52119,7 @@
         <translation>Projektdatei suchen...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5367"/>
+        <location filename="../Project/Project.py" line="5368"/>
         <source>Create Plugin Archives</source>
         <translation>Erzeuge Plugin Archive</translation>
     </message>
@@ -52061,37 +52139,37 @@
         <translation>Erzeuge Plugin Archive (&amp;Snapshot)</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5345"/>
+        <location filename="../Project/Project.py" line="5346"/>
         <source>Select package lists:</source>
         <translation>Wähle Paketlisten:</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Creating plugin archives...</source>
         <translation>Erzeuge Plugin Archive...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Abort</source>
         <translation>Abbruch</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>%v/%m Archives</source>
         <translation>%v/%m Archive</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5378"/>
+        <location filename="../Project/Project.py" line="5379"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; konnte nicht geladen werden.&lt;br/&gt;Grund: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5356"/>
+        <location filename="../Project/Project.py" line="5357"/>
         <source>&lt;p&gt;No package list files (PKGLIST*) available or selected. Aborting...&lt;/p&gt;</source>
         <translation>&lt;p&gt;Keine Paketlistendateien (PKGLIST*) verfügbar oder ausgewählt. Abbruch...&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5405"/>
+        <location filename="../Project/Project.py" line="5406"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; is not ready yet.&lt;/p&gt;&lt;p&gt;Please rework it and delete the&apos;; initial_list&apos; line of the header.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; ist noch nicht bereit.&lt;/p&gt;&lt;p&gt;Bitte überarbeite sie und löschen die Zeile &apos;; initial_list&apos; des Dateikopfes.&lt;/p&gt;</translation>
     </message>
@@ -52131,7 +52209,7 @@
         <translation>&lt;p&gt;Die make Datei &lt;b&gt;{0}&lt;/b&gt; konnte nicht erzeugt werden.&lt;br/&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>Execute Make</source>
         <translation>Make ausführen</translation>
     </message>
@@ -52151,7 +52229,7 @@
         <translation>&lt;b&gt;Make ausführen&lt;/b&gt;&lt;p&gt;Die führt einen &apos;make&apos; Lauf aus, um das konfigurierte Ziel zu bauen.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5744"/>
+        <location filename="../Project/Project.py" line="5745"/>
         <source>Test for Changes</source>
         <translation>Auf Änderungen prüfen</translation>
     </message>
@@ -52176,27 +52254,27 @@
         <translation>Make</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5692"/>
+        <location filename="../Project/Project.py" line="5693"/>
         <source>The make process did not start.</source>
         <translation>Der make Prozess ist nicht gestartet.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5737"/>
+        <location filename="../Project/Project.py" line="5738"/>
         <source>The make process crashed.</source>
         <translation>Der make Prozess ist abgestürzt.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5747"/>
+        <location filename="../Project/Project.py" line="5748"/>
         <source>&lt;p&gt;There are changes that require the configured make target &lt;b&gt;{0}&lt;/b&gt; to be rebuilt.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Es gibt Änderungen, die einen Neubau des konfigurierten Zieles &lt;b&gt;{0}&lt;/b&gt; erfordern.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5752"/>
+        <location filename="../Project/Project.py" line="5753"/>
         <source>&lt;p&gt;There are changes that require the default make target to be rebuilt.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Es gibt Änderungen, die einen Neubau des Standardzieles erfordern.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>The makefile contains errors.</source>
         <translation>Die make Datei enthält Fehler.</translation>
     </message>
@@ -52271,17 +52349,17 @@
         <translation>&lt;b&gt;Erzeuge Plugin Archive (Snapshot)&lt;/b&gt;&lt;p&gt;Dies erzeugt eric Plugin Archivdateien mit den Dateien, die in der PKGLIST*-Datei angegeben wurden. Der Archivname wird aus dem Namen des Hauptskriptes generiert, falls er nicht in der Paketlistendatei angegeben ist. Der Versionseintrag des Hauptskriptes wird verändert, um ein Snapshot Release anzuzeigen.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5432"/>
+        <location filename="../Project/Project.py" line="5433"/>
         <source>&lt;p&gt;The eric plugin archive file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die eric Plugin Archivdatei &lt;b&gt;{0}&lt;/b&gt; konnte nicht erzeugt werden.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5484"/>
+        <location filename="../Project/Project.py" line="5485"/>
         <source>&lt;p&gt;The eric plugin archive files were created with some errors.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die eric Plugin Archivdateien wurden mit einigen Fehlern erzeugt.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5492"/>
+        <location filename="../Project/Project.py" line="5493"/>
         <source>&lt;p&gt;The eric plugin archive files were created successfully.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die eric Plugin Archivdateien wurden erfolgreich erzeugt.&lt;/p&gt;</translation>
     </message>
@@ -53105,12 +53183,12 @@
         <translation>Datei umbenennen</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Delete files/directories</source>
         <translation>Dateien/Verzeichnisse löschen</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Do you really want to delete these entries from the project?</source>
         <translation>Wollen Sie wirklich diese Einträge aus dem Projekt löschen?</translation>
     </message>
@@ -53140,22 +53218,22 @@
         <translation>Pfad in die Zwischenablage kopieren</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>Show Mime-Type</source>
         <translation>MIME-Typ anzeigen</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="272"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="273"/>
         <source>The mime type of the file could not be determined.</source>
         <translation>Der MIME-Typ der Datei konnte nicht ermittelt werden.</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="286"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="287"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation>Die Datei hat den MIME-Typ &lt;b&gt;{0}&lt;/b&gt;.</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation>Die Datei hat den MIME-Typ &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt;Soll sie zur Liste der Text MIME-Typen hinzugefügt werden?</translation>
     </message>
@@ -53852,22 +53930,22 @@
         <translation>Klassendiagramm</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Include class attributes?</source>
         <translation>Klassenattribute anzeigen?</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Package Diagram</source>
         <translation>Package-Diagramm</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Application Diagram</source>
         <translation>Applikations-Diagramm</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Include module names?</source>
         <translation>Modulnamen anzeigen?</translation>
     </message>
@@ -53897,12 +53975,12 @@
         <translation>&lt;p&gt;Die Packagedatei &lt;b&gt;{0}&lt;/b&gt; konnte nicht erzeugt werden. Abbruch...&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Imports Diagram</source>
         <translation>Imports Diagramm</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Include imports from external modules?</source>
         <translation>Imports externer Module anzeigen?</translation>
     </message>
@@ -65960,37 +66038,37 @@
 <context>
     <name>SvgDiagram</name>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="50"/>
+        <location filename="../Graphics/SvgDiagram.py" line="53"/>
         <source>SVG-Viewer</source>
         <translation>SVG-Betrachter</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="92"/>
+        <location filename="../Graphics/SvgDiagram.py" line="95"/>
         <source>Close</source>
         <translation>Schließen</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="97"/>
+        <location filename="../Graphics/SvgDiagram.py" line="100"/>
         <source>Print</source>
         <translation>Drucken</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="132"/>
-        <source>Window</source>
-        <translation>Fenster</translation>
-    </message>
-    <message>
         <location filename="../Graphics/SvgDiagram.py" line="136"/>
+        <source>Window</source>
+        <translation>Fenster</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/SvgDiagram.py" line="140"/>
         <source>Graphics</source>
         <translation>Grafiken</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="363"/>
+        <location filename="../Graphics/SvgDiagram.py" line="385"/>
         <source>Diagram: {0}</source>
         <translation>Diagramm: {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="102"/>
+        <location filename="../Graphics/SvgDiagram.py" line="105"/>
         <source>Print Preview</source>
         <translation>Druckvorschau</translation>
     </message>
@@ -71717,62 +71795,62 @@
         <translation>Gib die Aufgabenbeschreibung ein</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="60"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="71"/>
         <source>Creation Time:</source>
         <translation>Erzeugungszeitpunkt:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="77"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="92"/>
         <source>&amp;Priority:</source>
         <translation>&amp;Wichtigkeit:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="138"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="223"/>
         <source>Filename:</source>
         <translation>Dateiname:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="155"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="216"/>
         <source>Line:</source>
         <translation>Zeile:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="128"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="162"/>
         <source>Select to mark this task as completed</source>
         <translation>Auswählen, um die Aufgabe als beendet zu markieren</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="131"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="165"/>
         <source>T&amp;ask completed</source>
         <translation>Aufgabe be&amp;endet</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="112"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="175"/>
         <source>Select to indicate a task related to the current project</source>
         <translation>Auswählen, um eine Aufgabe als zu einem Projekt gehörend zu markieren</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="115"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="178"/>
         <source>Project &amp;Task</source>
         <translation>&amp;Projektaufgabe</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="87"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="102"/>
         <source>Select the task priority</source>
         <translation>Wähle die Wichtigkeit der Aufgabe</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="94"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="109"/>
         <source>High</source>
         <translation>Hoch</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="99"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="114"/>
         <source>Normal</source>
         <translation>Normal</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="104"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="119"/>
         <source>Low</source>
         <translation>Niedrig</translation>
     </message>
@@ -71786,6 +71864,46 @@
         <source>Enter the task summary</source>
         <translation>Gib die Zusammenfassung der Aufgabe ein</translation>
     </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="127"/>
+        <source>Type:</source>
+        <translation>Typ:</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="134"/>
+        <source>Select the task type</source>
+        <translation>Wähle den Typ des Tasks</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="41"/>
+        <source>Bugfix</source>
+        <translation>Fehlerbehebung</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="42"/>
+        <source>Warning</source>
+        <translation>Warnung</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="43"/>
+        <source>ToDo</source>
+        <translation>Aufgabe</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="44"/>
+        <source>Note</source>
+        <translation>Hinweis</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="45"/>
+        <source>Test</source>
+        <translation>Test</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="46"/>
+        <source>Documentation</source>
+        <translation>Dokumentation</translation>
+    </message>
 </context>
 <context>
     <name>TaskViewer</name>
@@ -71855,12 +71973,12 @@
         <translation>Spaltenbreite an&amp;passen</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>Activate task filter</source>
         <translation>Aufgabenfilter aktivieren</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>The task filter doesn&apos;t have any active filters. Do you want to configure the filter settings?</source>
         <translation>Der Aufgabenfilter hat keinen aktiven Filter. Soll die Filterkonfiguration erstellt werden?</translation>
     </message>
@@ -71870,17 +71988,17 @@
         <translation>Projektaufgaben &amp;regenerieren</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Extracting project tasks...</source>
         <translation>Extrahiere Projektaufgaben...</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Abort</source>
         <translation>Abbrechen</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="738"/>
+        <location filename="../Tasks/TaskViewer.py" line="755"/>
         <source>Extracting project tasks...
 {0}</source>
         <translation>Extrahiere Projektaufgaben...
@@ -71902,12 +72020,12 @@
         <translation>Scanoptionen &amp;konfigurieren</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Scan Filter Patterns</source>
         <translation>Scanfiltermuster</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <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>
@@ -71917,12 +72035,12 @@
         <translation>&amp;Projektaufgaben</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>%v/%m Files</source>
         <translation>%v/%m Dateien</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="734"/>
+        <location filename="../Tasks/TaskViewer.py" line="751"/>
         <source>Tasks</source>
         <translation>Aufgaben</translation>
     </message>
@@ -71950,22 +72068,22 @@
 <context>
     <name>TasksFile</name>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>Save Tasks</source>
         <translation>Aufgaben speichern</translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Aufgabendatei &lt;b&gt;{0}&lt;/b&gt; konnte nicht geschrieben werden.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>Read Tasks</source>
         <translation>Aufgaben lesen</translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Aufgabendatei &lt;b&gt;{0}&lt;/b&gt; konnte nicht gelesen werden.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
@@ -74373,213 +74491,243 @@
 <context>
     <name>UMLClassDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram {0}: {1}</source>
         <translation>Klassendiagramm {0}: {1}</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram: {0}</source>
         <translation>Klassendiagramm: {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="83"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="96"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; could not be found.</source>
         <translation>Das Modul &lt;b&gt;„{0}“&lt;/b&gt; konnte nicht gefunden werden.</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="145"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="159"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
         <translation>Das Modul &lt;b&gt;„{0}“&lt;/b&gt; enthält keine Klassen.</translation>
     </message>
+    <message>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="394"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Das Diagramm gehört zu dem Projekt &lt;b&gt;{0}&lt;/b&gt;. Öffne es und versuch es erneut.&lt;/p&gt;</translation>
+    </message>
 </context>
 <context>
     <name>UMLDialog</name>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="82"/>
+        <location filename="../Graphics/UMLDialog.py" line="113"/>
         <source>Close</source>
         <translation>Schließen</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="122"/>
+        <location filename="../Graphics/UMLDialog.py" line="153"/>
         <source>Window</source>
         <translation>Fenster</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="87"/>
+        <location filename="../Graphics/UMLDialog.py" line="118"/>
         <source>Load</source>
         <translation>Laden</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="92"/>
+        <location filename="../Graphics/UMLDialog.py" line="123"/>
         <source>Save</source>
         <translation>Speichern</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="97"/>
+        <location filename="../Graphics/UMLDialog.py" line="128"/>
         <source>Save As...</source>
         <translation>Speichern unter...</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="107"/>
+        <location filename="../Graphics/UMLDialog.py" line="138"/>
         <source>Print</source>
         <translation>Drucken</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="112"/>
+        <location filename="../Graphics/UMLDialog.py" line="143"/>
         <source>Print Preview</source>
         <translation>Druckvorschau</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="126"/>
+        <location filename="../Graphics/UMLDialog.py" line="157"/>
         <source>File</source>
         <translation>Datei</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="178"/>
-        <source>Illegal diagram type &apos;{0}&apos; given.</source>
-        <translation>Ungültiger Diagrammtyp „{0}“ angegeben.</translation>
-    </message>
-    <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>Save Diagram</source>
         <translation>Diagramm speichern</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="230"/>
+        <location filename="../Graphics/UMLDialog.py" line="257"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; existiert bereits. Überschreiben?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; konnte nicht gespeichert werden.&lt;br/&gt;Grund: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="386"/>
+        <location filename="../Graphics/UMLDialog.py" line="551"/>
         <source>Load Diagram</source>
         <translation>Diagramm laden</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="287"/>
+        <location filename="../Graphics/UMLDialog.py" line="518"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; konnte nicht geladen werden.&lt;br/&gt;Grund: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; enthält keine gültigen Daten.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;&lt;p&gt;Invalid line: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; enthält keine gültigen Daten.&lt;/p&gt;&lt;p&gt;Ungültige Zeile: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="102"/>
+        <location filename="../Graphics/UMLDialog.py" line="133"/>
         <source>Save as Image</source>
         <translation>Speichern als Bild</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="274"/>
+        <location filename="../Graphics/UMLDialog.py" line="282"/>
         <source>Eric Graphics File (*.e5g);;All Files (*)</source>
-        <translation>Eric-Grafikdateien (*.e5g);;Alle Dateien (*)</translation>
+        <translation type="obsolete">Eric-Grafikdateien (*.e5g);;Alle Dateien (*)</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="43"/>
+        <source>Class Diagram</source>
+        <translation>Klassendiagramm</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="45"/>
+        <source>Package Diagram</source>
+        <translation>Package-Diagramm</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="47"/>
+        <source>Imports Diagram</source>
+        <translation>Imports Diagramm</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="49"/>
+        <source>Application Diagram</source>
+        <translation>Applikations-Diagramm</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="105"/>
+        <source>Illegal Diagram Type</source>
+        <translation>Ungültiger Diagrammtyp</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="289"/>
+        <source>Eric Graphics File (*.egj);;Eric Text Graphics File (*.e5g);;All Files (*)</source>
+        <translation>Eric Grafikdateien (*.egj);;Eric Text Grafikdateien (*.e5g);;Alle Dateien (*)</translation>
     </message>
 </context>
 <context>
     <name>UMLGraphicsView</name>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="83"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="85"/>
         <source>Delete shapes</source>
         <translation>Objekte löschen</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="88"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="90"/>
         <source>Increase width by {0} points</source>
         <translation>Breite um {0} Punkte vergrößern</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="95"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="97"/>
         <source>Increase height by {0} points</source>
         <translation>Höhe um {0} Punkte vergrößern</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="102"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="104"/>
         <source>Decrease width by {0} points</source>
         <translation>Breite um {0} Punkte verkleinern</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="109"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="111"/>
         <source>Decrease height by {0} points</source>
         <translation>Höhe um {0} Punkte verkleinern</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="116"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="118"/>
         <source>Set size</source>
         <translation>Größe setzen</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="126"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="128"/>
         <source>Re-Layout</source>
         <translation>Neuberechung</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="219"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="233"/>
         <source>Graphics</source>
         <translation>Grafiken</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>Save Diagram</source>
         <translation>Diagramm speichern</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; konnte nicht gespeichert werden.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="131"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="133"/>
         <source>Align Left</source>
         <translation>Links ausrichten</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="138"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="140"/>
         <source>Align Center Horizontal</source>
         <translation>Mitte horizontal ausrichten</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="145"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="147"/>
         <source>Align Right</source>
         <translation>Rechts ausrichten</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="152"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="154"/>
         <source>Align Top</source>
         <translation>Oben ausrichten</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="159"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="161"/>
         <source>Align Center Vertical</source>
         <translation>Mitte vertikal ausrichten</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="166"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="168"/>
         <source>Align Bottom</source>
         <translation>Unten ausrichten</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="341"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="360"/>
         <source>Portable Network Graphics (*.png);;Scalable Vector Graphics (*.svg)</source>
         <translation>Portable Network Graphics (*.png);;Scalable Vector Graphics (*.svg)</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="356"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="375"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; existiert bereits. Überschreiben?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="121"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="123"/>
         <source>Re-Scan</source>
         <translation>Neu einlesen</translation>
     </message>
@@ -74663,22 +74811,22 @@
 <context>
     <name>UnittestDialog</name>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>Unittest</source>
         <translation>Modultest</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="699"/>
         <source>Preparing Testsuite</source>
         <translation>Bereite Modultest vor</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1033"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1035"/>
         <source>Failure: {0}</source>
         <translation>Misserfolge: {0}</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1048"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1050"/>
         <source>Error: {0}</source>
         <translation>Fehler: {0}</translation>
     </message>
@@ -74693,7 +74841,7 @@
         <translation>^Fehler: </translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="989"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="991"/>
         <source>Running</source>
         <translation>Führe aus</translation>
     </message>
@@ -74851,7 +74999,7 @@
         <translation>&lt;b&gt;Modultest anhalten&lt;/b&gt;&lt;p&gt;Dieser Knopf hält den laufenden Modultest an.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1162"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1164"/>
         <source>Show Source</source>
         <translation>Zeige Quelltext</translation>
     </message>
@@ -74891,17 +75039,17 @@
         <translation>Anzahl der Tests, die unerwartet erfolgreich waren</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1063"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1065"/>
         <source>    Skipped: {0}</source>
         <translation>    Übersprungen: {0}</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1081"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1083"/>
         <source>    Expected Failure</source>
         <translation>    Erwarteter Mißerfolg</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1098"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1100"/>
         <source>    Unexpected Success</source>
         <translation>    Unerwarteter Erfolg</translation>
     </message>
@@ -75006,17 +75154,17 @@
         <translation>Ergebnisse</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="707"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
         <source>Unittest with auto-discovery</source>
         <translation>Unittest mit Autoerkennung</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="791"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="787"/>
         <source>You must enter a start directory for auto-discovery.</source>
         <translation>Es muss ein Startverzeichnis für die Autoerkennung eingegeben werden.</translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="1013"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1015"/>
         <source>Ran %n test(s) in {0:.3f}s</source>
         <translation>
             <numerusform>%n Test in {0:.3f}s ausgeführt</numerusform>
@@ -75049,7 +75197,7 @@
         <translation>&lt;p&gt;Testerkennung ist nicht möglich.&lt;/p&gt;&lt;p&gt;{0}&lt;/p&gt;</translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="623"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="619"/>
         <source>Discovered %n Test(s)</source>
         <translation>
             <numerusform>%n Test erkannt</numerusform>
@@ -75057,22 +75205,22 @@
         </translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="628"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="624"/>
         <source>&lt;p&gt;Unable to discover tests.&lt;/p&gt;&lt;p&gt;{0}&lt;br/&gt;{1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Testerkennung ist nicht möglich.&lt;/p&gt;&lt;p&gt;{0}&lt;br/&gt;{1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="694"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="690"/>
         <source>You must select auto-discovery or enter a test suite file or a dotted test name.</source>
         <translation>Es must Auto-Erkennung ausgewählt oder eine Testsuitedatei oder ein Testname in Punktnotation eingegeben werden.</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="716"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="712"/>
         <source>&lt;Unnamed Test&gt;</source>
         <translation>&lt;Unbekannter Test&gt;</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>&lt;p&gt;Unable to run test &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;{1}&lt;br/&gt;{2}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Test &lt;b&gt;{0}&lt;/b&gt; kann nicht ausgeführt werden.&lt;/p&gt;&lt;p&gt;{1}&lt;br/&gt;{2}&lt;/p&gt;</translation>
     </message>
@@ -75102,7 +75250,7 @@
         <translation>Mit Debugger ausführen</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="724"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="720"/>
         <source>No test case has been selected. Shall all test cases be run?</source>
         <translation>Es wurde kein Testfall ausgewählt. Sollen alle Testfälle ausgeführt werden?</translation>
     </message>
@@ -75111,6 +75259,11 @@
         <source>Python3 Files ({0});;All Files (*)</source>
         <translation>Python3 Dateien ({0});;Alle Dateien (*)</translation>
     </message>
+    <message>
+        <location filename="../PyUnit/UnittestDialog.py" line="881"/>
+        <source>No unittest were found. Aborting...</source>
+        <translation>Es wurden keine Unittests gefunden. Abbruch...</translation>
+    </message>
 </context>
 <context>
     <name>UnknownDevicesDialog</name>
@@ -75350,2325 +75503,2325 @@
 <context>
     <name>UserInterface</name>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>What&apos;s This?</source>
         <translation>Was ist das?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2126"/>
+        <location filename="../UI/UserInterface.py" line="2129"/>
         <source>Context sensitive help</source>
         <translation>Kontextsensitive Hilfe</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2127"/>
+        <location filename="../UI/UserInterface.py" line="2130"/>
         <source>&lt;b&gt;Display context sensitive help&lt;/b&gt;&lt;p&gt;In What&apos;s This? mode, the mouse cursor shows an arrow with a question mark, and you can click on the interface elements to get a short description of what they do and how to use them. In dialogs, this feature can be accessed using the context help button in the titlebar.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Zeige kontextsensitive Hilfe an&lt;b&gt;&lt;/p&gt;Im „Was ist das?“-Modus (der Mauszeiger stellt einen Pfeil mit Fragezeichen dar) wird auf einen Mausklick eine kurze Hilfebeschreibung zu dem ausgewählten MMI-Element angezeigt. In Dialogen kann diese Funktionalität durch den entsprechenden Knopf im Fensterkopf erreicht werden.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>Helpviewer</source>
         <translation>Hilfe</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>&amp;Helpviewer...</source>
         <translation>&amp;Hilfe...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2144"/>
+        <location filename="../UI/UserInterface.py" line="2147"/>
         <source>Open the helpviewer window</source>
         <translation>Öffnet das Hilfe-Fenster</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3365"/>
+        <location filename="../UI/UserInterface.py" line="3368"/>
         <source>Unittest</source>
         <translation>Modultests</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2256"/>
+        <location filename="../UI/UserInterface.py" line="2259"/>
         <source>&amp;Unittest...</source>
         <translation>&amp;Modultests...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2261"/>
+        <location filename="../UI/UserInterface.py" line="2264"/>
         <source>Start unittest dialog</source>
         <translation>Starte den Modultest Dialog</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3216"/>
+        <location filename="../UI/UserInterface.py" line="3219"/>
         <source>&amp;Window</source>
         <translation>&amp;Fenster</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3291"/>
+        <location filename="../UI/UserInterface.py" line="3294"/>
         <source>&amp;Help</source>
         <translation>&amp;Hilfe</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Quit</source>
         <translation>Beenden</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
+        <location filename="../UI/UserInterface.py" line="2524"/>
         <source>Preferences</source>
         <translation>Einstellungen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
+        <location filename="../UI/UserInterface.py" line="2524"/>
         <source>&amp;Preferences...</source>
         <translation>&amp;Einstellungen...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2526"/>
+        <location filename="../UI/UserInterface.py" line="2529"/>
         <source>Set the prefered configuration</source>
         <translation>Konfiguriert die Einstellungen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2528"/>
+        <location filename="../UI/UserInterface.py" line="2531"/>
         <source>&lt;b&gt;Preferences&lt;/b&gt;&lt;p&gt;Set the configuration items of the application with your prefered values.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Einstellungen&lt;/b&gt;&lt;p&gt;Konfiguriert die einstellbaren Parameter der Applikation nach Ihren Wünschen.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1642"/>
+        <location filename="../UI/UserInterface.py" line="1645"/>
         <source>Quit the IDE</source>
         <translation>Beenden der Entwicklungsumgebung</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3364"/>
+        <location filename="../UI/UserInterface.py" line="3367"/>
         <source>Tools</source>
         <translation>Werkzeuge</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
+        <location filename="../UI/UserInterface.py" line="5216"/>
         <source>Help</source>
         <translation>Hilfe</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3277"/>
+        <location filename="../UI/UserInterface.py" line="3280"/>
         <source>&amp;Toolbars</source>
         <translation>&amp;Werkzeugleisten</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>Problem</source>
         <translation>Problem</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>&amp;Quit</source>
         <translation>B&amp;eenden</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1643"/>
+        <location filename="../UI/UserInterface.py" line="1646"/>
         <source>&lt;b&gt;Quit the IDE&lt;/b&gt;&lt;p&gt;This quits the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Die Entwicklungsumgebung beenden&lt;/b&gt;&lt;p&gt;Dies beendet die Entwicklungsumgebung. Ungesicherte Änderungen können zuvor gesichert werden. Ein Python-Programm, das gerade debuggt wird, wird beendet und sämtliche Einstellungen werden gespeichert.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>&amp;What&apos;s This?</source>
         <translation>&amp;Was ist das?</translation>
     </message>
     <message>
+        <location filename="../UI/UserInterface.py" line="5552"/>
+        <source>Process Generation Error</source>
+        <translation>Fehler beim Prozessstart</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1605"/>
+        <source>{0} - Passive Mode</source>
+        <translation>{0} – Passiver Modus</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1612"/>
+        <source>{0} - {1} - Passive Mode</source>
+        <translation>{0} – {1} – Passiver Modus</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1838"/>
+        <source>Log-Viewer</source>
+        <translation>Ausgabefenster</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3369"/>
+        <source>Settings</source>
+        <translation>Einstellungen</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2167"/>
+        <source>Show Versions</source>
+        <translation>Zeige Versionen</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2167"/>
+        <source>Show &amp;Versions</source>
+        <translation>Zeige &amp;Versionen</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2171"/>
+        <source>Display version information</source>
+        <translation>Zeigt Versionsinformationen</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2173"/>
+        <source>&lt;b&gt;Show Versions&lt;/b&gt;&lt;p&gt;Display version information.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Zeige Versionen&lt;/b&gt;&lt;p&gt;Zeigt Versionsinformationen an.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2629"/>
+        <source>Keyboard Shortcuts</source>
+        <translation>Tastaturkurzbefehle</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2629"/>
+        <source>Keyboard &amp;Shortcuts...</source>
+        <translation>&amp;Tastaturkurzbefehle...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2634"/>
+        <source>Set the keyboard shortcuts</source>
+        <translation>Setze die Tastaturkurzbefehle</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2636"/>
+        <source>&lt;b&gt;Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Set the keyboard shortcuts of the application with your prefered values.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Tastaturkurzbefehle&lt;/b&gt;&lt;p&gt;Setze die Tastaturkurzbefehle der Applikation mit den bevorzugten Werten.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3105"/>
+        <source>E&amp;xtras</source>
+        <translation>E&amp;xtras</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3816"/>
+        <source>Report Bug</source>
+        <translation>Fehler berichten</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2232"/>
+        <source>Report &amp;Bug...</source>
+        <translation>&amp;Fehler berichten...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2236"/>
+        <source>Report a bug</source>
+        <translation>Einen Fehler berichten</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2237"/>
+        <source>&lt;b&gt;Report Bug...&lt;/b&gt;&lt;p&gt;Opens a dialog to report a bug.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Fehler berichten...&lt;/b&gt;&lt;p&gt;Öffnet einen Dialog zum Senden eines Fehlerberichtes.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6324"/>
+        <source>Export Keyboard Shortcuts</source>
+        <translation>Tastaturkurzbefehle exportieren</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2644"/>
+        <source>&amp;Export Keyboard Shortcuts...</source>
+        <translation>Tastaturkurzbefehle &amp;exportieren...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2649"/>
+        <source>Export the keyboard shortcuts</source>
+        <translation>Exportiert die Tastaturkurzbefehle</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2651"/>
+        <source>&lt;b&gt;Export Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Export the keyboard shortcuts of the application.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Tastaturkurzbefehle exportieren&lt;/b&gt;&lt;p&gt;Exportiert die Tastaturkurzbefehle der Applikation.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6342"/>
+        <source>Import Keyboard Shortcuts</source>
+        <translation>Tastaturkurzbefehle importieren</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2658"/>
+        <source>&amp;Import Keyboard Shortcuts...</source>
+        <translation>Tastaturkurzbefehle &amp;importieren...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2663"/>
+        <source>Import the keyboard shortcuts</source>
+        <translation>Importiert die Tastaturkurzbefehle</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2665"/>
+        <source>&lt;b&gt;Import Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Import the keyboard shortcuts of the application.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Tastaturkurzbefehle importieren&lt;/b&gt;&lt;p&gt;Importiert die Tastaturkurzbefehle der Applikation.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="283"/>
+        <source>Generating Main User Interface...</source>
+        <translation>Erzeuge das Hauptfenster...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="333"/>
+        <source>Setting up connections...</source>
+        <translation>Erstelle Verbindungen...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="627"/>
+        <source>Initializing Actions...</source>
+        <translation>Initialisiere Aktionen...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="629"/>
+        <source>Initializing Menus...</source>
+        <translation>Initialisiere Menüs...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="631"/>
+        <source>Initializing Toolbars...</source>
+        <translation>Initialisiere Werkzeugleisten...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="633"/>
+        <source>Initializing Statusbar...</source>
+        <translation>Initialisiere Statuszeile...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="580"/>
+        <source>Initializing Tools...</source>
+        <translation>Initialisiere Werkzeuge...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2265"/>
+        <source>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Perform unit tests. The dialog gives you the ability to select and run a unittest suite.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Modultests&lt;/b&gt;&lt;p&gt;Führe Modultests durch. Der Dialog bietet die Möglichkeit eine Zusammenstellung von Modultests auszuwählen und auszuführen.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2273"/>
+        <source>Unittest Restart</source>
+        <translation>Modultest neu starten</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2278"/>
+        <source>Restart last unittest</source>
+        <translation>Modultest neu starten</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2279"/>
+        <source>&lt;b&gt;Restart Unittest&lt;/b&gt;&lt;p&gt;Restart the unittest performed last.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Modultest neu starten&lt;/b&gt;&lt;p&gt;Den letzten durchgeführten Modultest neu starten.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2303"/>
+        <source>Unittest Script</source>
+        <translation>Modultest (Skript)</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2308"/>
+        <source>Run unittest with current script</source>
+        <translation>Modultest für aktuelles Skript ausführen</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2310"/>
+        <source>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Run unittest with current script.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Modultest (Skript)&lt;/b&gt;&lt;p&gt;Modultest für aktuelles Skript ausführen.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2318"/>
+        <source>Unittest Project</source>
+        <translation>Modultest (Projekt)</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2323"/>
+        <source>Run unittest with current project</source>
+        <translation>Modultest für aktuellesProjekt ausführen</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2325"/>
+        <source>&lt;b&gt;Unittest Project&lt;/b&gt;&lt;p&gt;Run unittest with current project.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Modultest (Projekt)&lt;/b&gt;&lt;p&gt;Modultest für aktuelles Projekt ausführen.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3161"/>
+        <source>&amp;Unittest</source>
+        <translation>&amp;Modultests</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2273"/>
+        <source>&amp;Restart Unittest...</source>
+        <translation>Modultest &amp;neu starten...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2303"/>
+        <source>Unittest &amp;Script...</source>
+        <translation>Modultest (&amp;Skript)...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2318"/>
+        <source>Unittest &amp;Project...</source>
+        <translation>Modultest (&amp;Projekt)...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2413"/>
+        <source>Compare Files</source>
+        <translation>Dateien vergleichen</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2413"/>
+        <source>&amp;Compare Files...</source>
+        <translation>Dateien &amp;vergleichen...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2431"/>
+        <source>Compare two files</source>
+        <translation>Zwei Dateien vergleichen</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2419"/>
+        <source>&lt;b&gt;Compare Files&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Dateien vergleichen&lt;/b&gt;&lt;p&gt;Öffnet einen Dialog zum Vergleich zweier Dateien.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2426"/>
+        <source>Compare Files side by side</source>
+        <translation>Dateien Seite an Seite vergleichen</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2432"/>
+        <source>&lt;b&gt;Compare Files side by side&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files and show the result side by side.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Dateien Seite an Seite vergleichen&lt;/b&gt;&lt;p&gt;Öffnet einen Dialog zum Vergleich zweier Dateien und zur Anzeige des Ergebnisse Seite an Seite.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6915"/>
+        <source>Drop Error</source>
+        <translation>Drop-Fehler</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="660"/>
+        <source>Initializing Single Application Server...</source>
+        <translation>Initialisiere Applikationsserver...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1616"/>
+        <source>{0} - {1} - {2} - Passive Mode</source>
+        <translation>{0} . {1} – {2} – Passiver Modus</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1821"/>
+        <source>File-Browser</source>
+        <translation>Dateibrowser</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1717"/>
+        <source>Edit Profile</source>
+        <translation>Editieren-Profil</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1723"/>
+        <source>Activate the edit view profile</source>
+        <translation>Aktiviert das Editieren-Ansichtsprofil</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1725"/>
+        <source>&lt;b&gt;Edit Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Edit View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Editieren-Profil&lt;/b&gt;&lt;p&gt;Aktiviert das „Editieren-Ansichtsprofil“. Fenster, die in diesem Profil angezeigt werden sollen, können im „Ansichtenprofile konfigurieren“-Dialog ausgewählt werden.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1734"/>
+        <source>Debug Profile</source>
+        <translation>Debuggen-Profil</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1740"/>
+        <source>Activate the debug view profile</source>
+        <translation>Aktiviert das Debuggen-Ansichtsprofil</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1742"/>
+        <source>&lt;b&gt;Debug Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Debug View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Debuggen-Profil&lt;/b&gt;&lt;p&gt;Aktiviert das „Debuggen Ansichtsprofil“. Fenster, die in diesem Profil angezeigt werden sollen, können im „Ansichtenprofile konfigurieren“-Dialog ausgewählt werden.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2597"/>
+        <source>View Profiles</source>
+        <translation>Ansichtenprofile</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2597"/>
+        <source>&amp;View Profiles...</source>
+        <translation>&amp;Ansichtenprofile...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2602"/>
+        <source>Configure view profiles</source>
+        <translation>Ansichtenprofile konfigurieren</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2604"/>
+        <source>&lt;b&gt;View Profiles&lt;/b&gt;&lt;p&gt;Configure the view profiles. With this dialog you may set the visibility of the various windows for the predetermined view profiles.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Ansichtenprofile&lt;/b&gt;&lt;p&gt;Ansichtenprofile konfigurieren. Mit diesem Dialog kann die Sichtbarkeit der verschiedenen Fenster für die vorbestimmten Ansichtenprofile eingestellt werden.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5344"/>
+        <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not exist or is zero length.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; existiert nicht oder hat die Größe Null.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5069"/>
+        <source>&lt;p&gt;Could not start Qt-Designer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Qt-Designer konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass es als &lt;b&gt;{0}&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5139"/>
+        <source>&lt;p&gt;Could not start Qt-Linguist.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Qt-Linguist konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass es als &lt;b&gt;{0}&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5183"/>
+        <source>&lt;p&gt;Could not start Qt-Assistant.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Qt-Assistant konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass es als &lt;b&gt;{0}&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5552"/>
+        <source>&lt;p&gt;Could not start the tool entry &lt;b&gt;{0}&lt;/b&gt;.&lt;br&gt;Ensure that it is available as &lt;b&gt;{1}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Der Werkzeugeeintrag &lt;b&gt;{0}&lt;/b&gt; konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass er als &lt;b&gt;{1}&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6915"/>
+        <source>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; is not a file.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; ist keine Datei.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2386"/>
+        <source>UI Previewer</source>
+        <translation>UI-Vorschau</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2386"/>
+        <source>&amp;UI Previewer...</source>
+        <translation>&amp;UI-Vorschau...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2391"/>
+        <source>Start the UI Previewer</source>
+        <translation>Starte die UI-Vorschau</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2392"/>
+        <source>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Start the UI Previewer.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;UI-Vorschau&lt;/b&gt;&lt;p&gt;Starte die UI-Vorschau.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5300"/>
+        <source>&lt;p&gt;Could not start UI Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Die UI-Vorschau konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass sie als &lt;b&gt;{0}&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2399"/>
+        <source>Translations Previewer</source>
+        <translation>Übersetzungsvorschau</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2399"/>
+        <source>&amp;Translations Previewer...</source>
+        <translation>&amp;Übersetzungsvorschau...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2404"/>
+        <source>Start the Translations Previewer</source>
+        <translation>Die Übersetzungsvorschau starten</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2406"/>
+        <source>&lt;b&gt;Translations Previewer&lt;/b&gt;&lt;p&gt;Start the Translations Previewer.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Übersetzungsvorschau&lt;/b&gt;&lt;p&gt;Dies startet das Programm zur Vorschau von Übersetzungen.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5357"/>
+        <source>&lt;p&gt;Could not start Translation Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Die Übersetzungsvorschau konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass sie als &lt;b&gt;{0}&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1804"/>
+        <source>Shell</source>
+        <translation>Shell</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1804"/>
+        <source>&amp;Shell</source>
+        <translation>&amp;Shell</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2568"/>
+        <source>Reload APIs</source>
+        <translation>APIs neu laden</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2568"/>
+        <source>Reload &amp;APIs</source>
+        <translation>APIs &amp;neu laden</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2572"/>
+        <source>Reload the API information</source>
+        <translation>Die API-Informationen neu laden</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2574"/>
+        <source>&lt;b&gt;Reload APIs&lt;/b&gt;&lt;p&gt;Reload the API information.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;APIs neu laden&lt;/b&gt;&lt;p&gt;Lädt die API-Informationen neu.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1856"/>
+        <source>Task-Viewer</source>
+        <translation>Aufgabenanzeige</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6528"/>
+        <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Die Aufgabendatei &lt;b&gt;{0}&lt;/b&gt; konnte nicht gelesen werden.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5216"/>
+        <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source>
+        <translation>Momentan ist kein Betrachter angegeben. Bitte benutzen Sie den Einstellungsdialog, um einen festzulegen.</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5230"/>
+        <source>&lt;p&gt;Could not start custom viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Der Betrachter konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass er als &lt;b&gt;{0}&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5892"/>
+        <source>Documentation Missing</source>
+        <translation>Dokumentation fehlt</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5892"/>
+        <source>&lt;p&gt;The documentation starting point &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; could not be found.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Der Dokumentationsstartpunkt „&lt;b&gt;{0}&lt;/b&gt;“ konnte nicht gefunden werden.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3816"/>
+        <source>Email address or mail server address is empty. Please configure your Email settings in the Preferences Dialog.</source>
+        <translation>E-Mail-Adresse oder Mailserver-Adresse sind leer. Bitte konfiguriere die E-Mail-Einstellungen im Einstellungsdialog.</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1875"/>
+        <source>Template-Viewer</source>
+        <translation>Vorlagen</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1751"/>
+        <source>Alt+Shift+P</source>
+        <translation>Alt+Shift+P</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1786"/>
+        <source>Alt+Shift+D</source>
+        <translation>Alt+Shift+D</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1804"/>
+        <source>Alt+Shift+S</source>
+        <translation>Alt+Shift+S</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1821"/>
+        <source>Alt+Shift+F</source>
+        <translation>Alt+Shift+F</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1856"/>
+        <source>Alt+Shift+T</source>
+        <translation>Alt+Shift+T</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1768"/>
+        <source>Alt+Shift+M</source>
+        <translation>Alt+Shift+M</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2723"/>
+        <source>Activate current editor</source>
+        <translation>Aktiviere aktuellen Editor</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2723"/>
+        <source>Alt+Shift+E</source>
+        <translation>Alt+Shift+E</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2733"/>
+        <source>Ctrl+Alt+Tab</source>
+        <translation>Ctrl+Alt+Tab</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2742"/>
+        <source>Shift+Ctrl+Alt+Tab</source>
+        <translation>Shift+Ctrl+Alt+Tab</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1838"/>
+        <source>Alt+Shift+G</source>
+        <translation>Alt+Shift+G</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2956"/>
+        <source>Eric API Documentation</source>
+        <translation>Eric-API-Dokumentation</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2960"/>
+        <source>Open Eric API Documentation</source>
+        <translation>Öffne die Eric-API-Dokumentation</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5250"/>
+        <source>&lt;p&gt;Could not start the help viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Die Hilfeanzeige konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass sie als &lt;b&gt;hh&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="590"/>
+        <source>Registering Objects...</source>
+        <translation>Registriere Objekte...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1751"/>
+        <source>Project-Viewer</source>
+        <translation>Projektanzeige</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1786"/>
+        <source>Debug-Viewer</source>
+        <translation>Debuganzeige</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1639"/>
+        <source>Ctrl+Q</source>
+        <comment>File|Quit</comment>
+        <translation>Ctrl+Q</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1751"/>
+        <source>&amp;Project-Viewer</source>
+        <translation>&amp;Projektanzeige</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2123"/>
+        <source>Shift+F1</source>
+        <translation>Shift+F1</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2141"/>
+        <source>F1</source>
+        <translation>F1</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2183"/>
+        <source>Check for Updates</source>
+        <translation>Auf Aktualisierungen prüfen</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2180"/>
+        <source>Check for &amp;Updates...</source>
+        <translation>Auf &amp;Aktualisierungen prüfen...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3178"/>
+        <source>Select Tool Group</source>
+        <translation>Werkzeuggruppe wählen</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3189"/>
+        <source>Se&amp;ttings</source>
+        <translation>&amp;Einstellungen</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3371"/>
+        <source>Profiles</source>
+        <translation>Profile</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="4165"/>
+        <source>&amp;Builtin Tools</source>
+        <translation>&amp;Eingebaute Werkzeuge</translation>
+    </message>
+    <message>
         <location filename="../UI/UserInterface.py" line="5536"/>
-        <source>Process Generation Error</source>
-        <translation>Fehler beim Prozessstart</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1602"/>
-        <source>{0} - Passive Mode</source>
-        <translation>{0} – Passiver Modus</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1609"/>
-        <source>{0} - {1} - Passive Mode</source>
-        <translation>{0} – {1} – Passiver Modus</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
-        <source>Log-Viewer</source>
-        <translation>Ausgabefenster</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3366"/>
-        <source>Settings</source>
-        <translation>Einstellungen</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
-        <source>Show Versions</source>
-        <translation>Zeige Versionen</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
-        <source>Show &amp;Versions</source>
-        <translation>Zeige &amp;Versionen</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2168"/>
-        <source>Display version information</source>
-        <translation>Zeigt Versionsinformationen</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2170"/>
-        <source>&lt;b&gt;Show Versions&lt;/b&gt;&lt;p&gt;Display version information.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Zeige Versionen&lt;/b&gt;&lt;p&gt;Zeigt Versionsinformationen an.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
-        <source>Keyboard Shortcuts</source>
-        <translation>Tastaturkurzbefehle</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
-        <source>Keyboard &amp;Shortcuts...</source>
-        <translation>&amp;Tastaturkurzbefehle...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2631"/>
-        <source>Set the keyboard shortcuts</source>
-        <translation>Setze die Tastaturkurzbefehle</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2633"/>
-        <source>&lt;b&gt;Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Set the keyboard shortcuts of the application with your prefered values.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Tastaturkurzbefehle&lt;/b&gt;&lt;p&gt;Setze die Tastaturkurzbefehle der Applikation mit den bevorzugten Werten.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3102"/>
-        <source>E&amp;xtras</source>
-        <translation>E&amp;xtras</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
-        <source>Report Bug</source>
-        <translation>Fehler berichten</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2229"/>
-        <source>Report &amp;Bug...</source>
-        <translation>&amp;Fehler berichten...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2233"/>
-        <source>Report a bug</source>
-        <translation>Einen Fehler berichten</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2234"/>
-        <source>&lt;b&gt;Report Bug...&lt;/b&gt;&lt;p&gt;Opens a dialog to report a bug.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Fehler berichten...&lt;/b&gt;&lt;p&gt;Öffnet einen Dialog zum Senden eines Fehlerberichtes.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
-        <source>Export Keyboard Shortcuts</source>
-        <translation>Tastaturkurzbefehle exportieren</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2641"/>
-        <source>&amp;Export Keyboard Shortcuts...</source>
-        <translation>Tastaturkurzbefehle &amp;exportieren...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2646"/>
-        <source>Export the keyboard shortcuts</source>
-        <translation>Exportiert die Tastaturkurzbefehle</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2648"/>
-        <source>&lt;b&gt;Export Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Export the keyboard shortcuts of the application.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Tastaturkurzbefehle exportieren&lt;/b&gt;&lt;p&gt;Exportiert die Tastaturkurzbefehle der Applikation.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
-        <source>Import Keyboard Shortcuts</source>
-        <translation>Tastaturkurzbefehle importieren</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2655"/>
-        <source>&amp;Import Keyboard Shortcuts...</source>
-        <translation>Tastaturkurzbefehle &amp;importieren...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2660"/>
-        <source>Import the keyboard shortcuts</source>
-        <translation>Importiert die Tastaturkurzbefehle</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2662"/>
-        <source>&lt;b&gt;Import Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Import the keyboard shortcuts of the application.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Tastaturkurzbefehle importieren&lt;/b&gt;&lt;p&gt;Importiert die Tastaturkurzbefehle der Applikation.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="282"/>
-        <source>Generating Main User Interface...</source>
-        <translation>Erzeuge das Hauptfenster...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="332"/>
-        <source>Setting up connections...</source>
-        <translation>Erstelle Verbindungen...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="624"/>
-        <source>Initializing Actions...</source>
-        <translation>Initialisiere Aktionen...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="626"/>
-        <source>Initializing Menus...</source>
-        <translation>Initialisiere Menüs...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="628"/>
-        <source>Initializing Toolbars...</source>
-        <translation>Initialisiere Werkzeugleisten...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="630"/>
-        <source>Initializing Statusbar...</source>
-        <translation>Initialisiere Statuszeile...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="577"/>
-        <source>Initializing Tools...</source>
-        <translation>Initialisiere Werkzeuge...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2262"/>
-        <source>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Perform unit tests. The dialog gives you the ability to select and run a unittest suite.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Modultests&lt;/b&gt;&lt;p&gt;Führe Modultests durch. Der Dialog bietet die Möglichkeit eine Zusammenstellung von Modultests auszuwählen und auszuführen.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
-        <source>Unittest Restart</source>
-        <translation>Modultest neu starten</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2275"/>
-        <source>Restart last unittest</source>
-        <translation>Modultest neu starten</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2276"/>
-        <source>&lt;b&gt;Restart Unittest&lt;/b&gt;&lt;p&gt;Restart the unittest performed last.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Modultest neu starten&lt;/b&gt;&lt;p&gt;Den letzten durchgeführten Modultest neu starten.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
-        <source>Unittest Script</source>
-        <translation>Modultest (Skript)</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2305"/>
-        <source>Run unittest with current script</source>
-        <translation>Modultest für aktuelles Skript ausführen</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2307"/>
-        <source>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Run unittest with current script.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Modultest (Skript)&lt;/b&gt;&lt;p&gt;Modultest für aktuelles Skript ausführen.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
-        <source>Unittest Project</source>
-        <translation>Modultest (Projekt)</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2320"/>
-        <source>Run unittest with current project</source>
-        <translation>Modultest für aktuellesProjekt ausführen</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2322"/>
-        <source>&lt;b&gt;Unittest Project&lt;/b&gt;&lt;p&gt;Run unittest with current project.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Modultest (Projekt)&lt;/b&gt;&lt;p&gt;Modultest für aktuelles Projekt ausführen.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3158"/>
-        <source>&amp;Unittest</source>
-        <translation>&amp;Modultests</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
-        <source>&amp;Restart Unittest...</source>
-        <translation>Modultest &amp;neu starten...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
-        <source>Unittest &amp;Script...</source>
-        <translation>Modultest (&amp;Skript)...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
-        <source>Unittest &amp;Project...</source>
-        <translation>Modultest (&amp;Projekt)...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
-        <source>Compare Files</source>
-        <translation>Dateien vergleichen</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
-        <source>&amp;Compare Files...</source>
-        <translation>Dateien &amp;vergleichen...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2428"/>
-        <source>Compare two files</source>
-        <translation>Zwei Dateien vergleichen</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2416"/>
-        <source>&lt;b&gt;Compare Files&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Dateien vergleichen&lt;/b&gt;&lt;p&gt;Öffnet einen Dialog zum Vergleich zweier Dateien.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
-        <source>Compare Files side by side</source>
-        <translation>Dateien Seite an Seite vergleichen</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2429"/>
-        <source>&lt;b&gt;Compare Files side by side&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files and show the result side by side.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Dateien Seite an Seite vergleichen&lt;/b&gt;&lt;p&gt;Öffnet einen Dialog zum Vergleich zweier Dateien und zur Anzeige des Ergebnisse Seite an Seite.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
-        <source>Drop Error</source>
-        <translation>Drop-Fehler</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="657"/>
-        <source>Initializing Single Application Server...</source>
-        <translation>Initialisiere Applikationsserver...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1613"/>
-        <source>{0} - {1} - {2} - Passive Mode</source>
-        <translation>{0} . {1} – {2} – Passiver Modus</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
-        <source>File-Browser</source>
-        <translation>Dateibrowser</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1714"/>
-        <source>Edit Profile</source>
-        <translation>Editieren-Profil</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1720"/>
-        <source>Activate the edit view profile</source>
-        <translation>Aktiviert das Editieren-Ansichtsprofil</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1722"/>
-        <source>&lt;b&gt;Edit Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Edit View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Editieren-Profil&lt;/b&gt;&lt;p&gt;Aktiviert das „Editieren-Ansichtsprofil“. Fenster, die in diesem Profil angezeigt werden sollen, können im „Ansichtenprofile konfigurieren“-Dialog ausgewählt werden.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1731"/>
-        <source>Debug Profile</source>
-        <translation>Debuggen-Profil</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1737"/>
-        <source>Activate the debug view profile</source>
-        <translation>Aktiviert das Debuggen-Ansichtsprofil</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1739"/>
-        <source>&lt;b&gt;Debug Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Debug View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Debuggen-Profil&lt;/b&gt;&lt;p&gt;Aktiviert das „Debuggen Ansichtsprofil“. Fenster, die in diesem Profil angezeigt werden sollen, können im „Ansichtenprofile konfigurieren“-Dialog ausgewählt werden.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
-        <source>View Profiles</source>
-        <translation>Ansichtenprofile</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
-        <source>&amp;View Profiles...</source>
-        <translation>&amp;Ansichtenprofile...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2599"/>
-        <source>Configure view profiles</source>
-        <translation>Ansichtenprofile konfigurieren</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2601"/>
-        <source>&lt;b&gt;View Profiles&lt;/b&gt;&lt;p&gt;Configure the view profiles. With this dialog you may set the visibility of the various windows for the predetermined view profiles.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Ansichtenprofile&lt;/b&gt;&lt;p&gt;Ansichtenprofile konfigurieren. Mit diesem Dialog kann die Sichtbarkeit der verschiedenen Fenster für die vorbestimmten Ansichtenprofile eingestellt werden.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
-        <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not exist or is zero length.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; existiert nicht oder hat die Größe Null.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5066"/>
-        <source>&lt;p&gt;Could not start Qt-Designer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Qt-Designer konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass es als &lt;b&gt;{0}&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5136"/>
-        <source>&lt;p&gt;Could not start Qt-Linguist.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Qt-Linguist konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass es als &lt;b&gt;{0}&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5180"/>
-        <source>&lt;p&gt;Could not start Qt-Assistant.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Qt-Assistant konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass es als &lt;b&gt;{0}&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5536"/>
-        <source>&lt;p&gt;Could not start the tool entry &lt;b&gt;{0}&lt;/b&gt;.&lt;br&gt;Ensure that it is available as &lt;b&gt;{1}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Der Werkzeugeeintrag &lt;b&gt;{0}&lt;/b&gt; konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass er als &lt;b&gt;{1}&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
-        <source>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; is not a file.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; ist keine Datei.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
-        <source>UI Previewer</source>
-        <translation>UI-Vorschau</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
-        <source>&amp;UI Previewer...</source>
-        <translation>&amp;UI-Vorschau...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2388"/>
-        <source>Start the UI Previewer</source>
-        <translation>Starte die UI-Vorschau</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2389"/>
-        <source>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Start the UI Previewer.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;UI-Vorschau&lt;/b&gt;&lt;p&gt;Starte die UI-Vorschau.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5297"/>
-        <source>&lt;p&gt;Could not start UI Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Die UI-Vorschau konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass sie als &lt;b&gt;{0}&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
-        <source>Translations Previewer</source>
-        <translation>Übersetzungsvorschau</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
-        <source>&amp;Translations Previewer...</source>
-        <translation>&amp;Übersetzungsvorschau...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2401"/>
-        <source>Start the Translations Previewer</source>
-        <translation>Die Übersetzungsvorschau starten</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2403"/>
-        <source>&lt;b&gt;Translations Previewer&lt;/b&gt;&lt;p&gt;Start the Translations Previewer.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Übersetzungsvorschau&lt;/b&gt;&lt;p&gt;Dies startet das Programm zur Vorschau von Übersetzungen.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5354"/>
-        <source>&lt;p&gt;Could not start Translation Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Die Übersetzungsvorschau konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass sie als &lt;b&gt;{0}&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
-        <source>Shell</source>
-        <translation>Shell</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
-        <source>&amp;Shell</source>
-        <translation>&amp;Shell</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
-        <source>Reload APIs</source>
-        <translation>APIs neu laden</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
-        <source>Reload &amp;APIs</source>
-        <translation>APIs &amp;neu laden</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2569"/>
-        <source>Reload the API information</source>
-        <translation>Die API-Informationen neu laden</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2571"/>
-        <source>&lt;b&gt;Reload APIs&lt;/b&gt;&lt;p&gt;Reload the API information.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;APIs neu laden&lt;/b&gt;&lt;p&gt;Lädt die API-Informationen neu.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
-        <source>Task-Viewer</source>
-        <translation>Aufgabenanzeige</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
-        <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Die Aufgabendatei &lt;b&gt;{0}&lt;/b&gt; konnte nicht gelesen werden.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
-        <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source>
-        <translation>Momentan ist kein Betrachter angegeben. Bitte benutzen Sie den Einstellungsdialog, um einen festzulegen.</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5227"/>
-        <source>&lt;p&gt;Could not start custom viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Der Betrachter konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass er als &lt;b&gt;{0}&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
-        <source>Documentation Missing</source>
-        <translation>Dokumentation fehlt</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
-        <source>&lt;p&gt;The documentation starting point &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; could not be found.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Der Dokumentationsstartpunkt „&lt;b&gt;{0}&lt;/b&gt;“ konnte nicht gefunden werden.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
-        <source>Email address or mail server address is empty. Please configure your Email settings in the Preferences Dialog.</source>
-        <translation>E-Mail-Adresse oder Mailserver-Adresse sind leer. Bitte konfiguriere die E-Mail-Einstellungen im Einstellungsdialog.</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
-        <source>Template-Viewer</source>
-        <translation>Vorlagen</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
-        <source>Alt+Shift+P</source>
-        <translation>Alt+Shift+P</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
-        <source>Alt+Shift+D</source>
-        <translation>Alt+Shift+D</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
-        <source>Alt+Shift+S</source>
-        <translation>Alt+Shift+S</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
-        <source>Alt+Shift+F</source>
-        <translation>Alt+Shift+F</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
-        <source>Alt+Shift+T</source>
-        <translation>Alt+Shift+T</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
-        <source>Alt+Shift+M</source>
-        <translation>Alt+Shift+M</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
-        <source>Activate current editor</source>
-        <translation>Aktiviere aktuellen Editor</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
-        <source>Alt+Shift+E</source>
-        <translation>Alt+Shift+E</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
-        <source>Ctrl+Alt+Tab</source>
-        <translation>Ctrl+Alt+Tab</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
-        <source>Shift+Ctrl+Alt+Tab</source>
-        <translation>Shift+Ctrl+Alt+Tab</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
-        <source>Alt+Shift+G</source>
-        <translation>Alt+Shift+G</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2953"/>
-        <source>Eric API Documentation</source>
-        <translation>Eric-API-Dokumentation</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2957"/>
-        <source>Open Eric API Documentation</source>
-        <translation>Öffne die Eric-API-Dokumentation</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5247"/>
-        <source>&lt;p&gt;Could not start the help viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Die Hilfeanzeige konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass sie als &lt;b&gt;hh&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="587"/>
-        <source>Registering Objects...</source>
-        <translation>Registriere Objekte...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
-        <source>Project-Viewer</source>
-        <translation>Projektanzeige</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
-        <source>Debug-Viewer</source>
-        <translation>Debuganzeige</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
-        <source>Ctrl+Q</source>
-        <comment>File|Quit</comment>
-        <translation>Ctrl+Q</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
-        <source>&amp;Project-Viewer</source>
-        <translation>&amp;Projektanzeige</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
-        <source>Shift+F1</source>
-        <translation>Shift+F1</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
-        <source>F1</source>
-        <translation>F1</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2180"/>
-        <source>Check for Updates</source>
-        <translation>Auf Aktualisierungen prüfen</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2177"/>
-        <source>Check for &amp;Updates...</source>
-        <translation>Auf &amp;Aktualisierungen prüfen...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3175"/>
-        <source>Select Tool Group</source>
-        <translation>Werkzeuggruppe wählen</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3186"/>
-        <source>Se&amp;ttings</source>
-        <translation>&amp;Einstellungen</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3368"/>
-        <source>Profiles</source>
-        <translation>Profile</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="4162"/>
-        <source>&amp;Builtin Tools</source>
-        <translation>&amp;Eingebaute Werkzeuge</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5520"/>
         <source>Starting process &apos;{0} {1}&apos;.
 </source>
         <translation>Starte Prozess „{0} {1}“.
 </translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5614"/>
+        <location filename="../UI/UserInterface.py" line="5630"/>
         <source>Process &apos;{0}&apos; has exited.
 </source>
         <translation>Prozess „{0}“ ist beendet.
 </translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>Documentation</source>
         <translation>Dokumentation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Error during updates check</source>
         <translation>Fehler während der Aktualisierungsprüfung</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>Update available</source>
         <translation>Aktualisierung verfügbar</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7268"/>
+        <location filename="../UI/UserInterface.py" line="7295"/>
         <source>&lt;/table&gt;</source>
         <translation>&lt;/table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4207"/>
+        <location filename="../UI/UserInterface.py" line="4210"/>
         <source>Configure Tool Groups ...</source>
         <translation>Konfiguriere Werkzeuggruppen...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4211"/>
+        <location filename="../UI/UserInterface.py" line="4214"/>
         <source>Configure current Tool Group ...</source>
         <translation>Konfiguriere aktuelle Werkzeuggruppe...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2583"/>
+        <location filename="../UI/UserInterface.py" line="2586"/>
         <source>Show external tools</source>
         <translation>Zeige externe Werkzeuge</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2578"/>
+        <location filename="../UI/UserInterface.py" line="2581"/>
         <source>Show external &amp;tools</source>
         <translation>Zeige externe &amp;Werkzeuge</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Could not perform updates check.</source>
         <translation>Konnte keine Aktualisierungsprüfung durchführen.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>&amp;Cancel</source>
         <translation>&amp;Abbrechen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7059"/>
+        <location filename="../UI/UserInterface.py" line="7086"/>
         <source>Trying host {0}</source>
         <translation>Prüfe Host {0}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>First time usage</source>
         <translation>Erstmalige Nutzung</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="275"/>
+        <location filename="../UI/UserInterface.py" line="276"/>
         <source>Initializing Plugin Manager...</source>
         <translation>Initialisiere Plugin-Manager...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3139"/>
+        <location filename="../UI/UserInterface.py" line="3142"/>
         <source>P&amp;lugins</source>
         <translation>Plugi&amp;ns</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3369"/>
+        <location filename="../UI/UserInterface.py" line="3372"/>
         <source>Plugins</source>
         <translation>Plugins</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
+        <location filename="../UI/UserInterface.py" line="2760"/>
         <source>Plugin Infos</source>
         <translation>Plugininformationen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2761"/>
+        <location filename="../UI/UserInterface.py" line="2764"/>
         <source>Show Plugin Infos</source>
         <translation>Zeigt Plugininformationen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2762"/>
+        <location filename="../UI/UserInterface.py" line="2765"/>
         <source>&lt;b&gt;Plugin Infos...&lt;/b&gt;&lt;p&gt;This opens a dialog, that show some information about loaded plugins.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Plugininformationen...&lt;/b&gt;&lt;p&gt;Dies öffnet einen Dialog, der einige Informationen über die geladenen Plugins anzeigt.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
+        <location filename="../UI/UserInterface.py" line="2760"/>
         <source>&amp;Plugin Infos...</source>
         <translation>&amp;Plugininformationen...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4179"/>
+        <location filename="../UI/UserInterface.py" line="4182"/>
         <source>&amp;Plugin Tools</source>
         <translation>&amp;Pluginwerkzeuge</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2788"/>
+        <location filename="../UI/UserInterface.py" line="2791"/>
         <source>Uninstall Plugin</source>
         <translation>Plugin deinstallieren</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2783"/>
+        <location filename="../UI/UserInterface.py" line="2786"/>
         <source>&amp;Uninstall Plugin...</source>
         <translation>Plugin &amp;deinstallieren...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2789"/>
+        <location filename="../UI/UserInterface.py" line="2792"/>
         <source>&lt;b&gt;Uninstall Plugin...&lt;/b&gt;&lt;p&gt;This opens a dialog to uninstall a plugin.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Plugin deinstallieren...&lt;/b&gt;&lt;p&gt;Dies öffnet einen Dialog zur Deinstallation eines Plugins.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4326"/>
+        <location filename="../UI/UserInterface.py" line="4329"/>
         <source>&amp;Show all</source>
         <translation>Alle an&amp;zeigen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4328"/>
+        <location filename="../UI/UserInterface.py" line="4331"/>
         <source>&amp;Hide all</source>
         <translation>Alle &amp;ausblenden</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="667"/>
+        <location filename="../UI/UserInterface.py" line="670"/>
         <source>Activating Plugins...</source>
         <translation>Aktiviere Plugins...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3112"/>
+        <location filename="../UI/UserInterface.py" line="3115"/>
         <source>Wi&amp;zards</source>
         <translation>&amp;Assistenten</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show downloadable versions</source>
         <translation>Zeige verfügbare Versionen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show &amp;downloadable versions...</source>
         <translation>&amp;Zeige verfügbare Versionen...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2192"/>
+        <location filename="../UI/UserInterface.py" line="2195"/>
         <source>Show the versions available for download</source>
         <translation>Zeige die verfügbaren eric-Versionen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7253"/>
+        <location filename="../UI/UserInterface.py" line="7280"/>
         <source>&lt;h3&gt;Available versions&lt;/h3&gt;&lt;table&gt;</source>
         <translation>&lt;h3&gt;Verfügbare Versionen&lt;/h3&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
+        <location filename="../UI/UserInterface.py" line="2799"/>
         <source>Plugin Repository</source>
         <translation>Plugin-Repository</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
+        <location filename="../UI/UserInterface.py" line="2799"/>
         <source>Plugin &amp;Repository...</source>
         <translation>Plugin-&amp;Repository...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2801"/>
+        <location filename="../UI/UserInterface.py" line="2804"/>
         <source>Show Plugins available for download</source>
         <translation>Zeige  zum Download verfügbare Plugins an</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2803"/>
+        <location filename="../UI/UserInterface.py" line="2806"/>
         <source>&lt;b&gt;Plugin Repository...&lt;/b&gt;&lt;p&gt;This opens a dialog, that shows a list of plugins available on the Internet.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Plugin-Repository...&lt;/b&gt;&lt;p&gt;Dies öffnet einen Dialog, der eine Liste der im Internet verfügbaren Plugins anzeigt.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2775"/>
+        <location filename="../UI/UserInterface.py" line="2778"/>
         <source>Install Plugins</source>
         <translation>Plugins installieren</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2770"/>
+        <location filename="../UI/UserInterface.py" line="2773"/>
         <source>&amp;Install Plugins...</source>
         <translation>Plugins &amp;installieren...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2776"/>
+        <location filename="../UI/UserInterface.py" line="2779"/>
         <source>&lt;b&gt;Install Plugins...&lt;/b&gt;&lt;p&gt;This opens a dialog to install or update plugins.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Plugins installieren...&lt;/b&gt;&lt;p&gt;Dies öffnet einen Dialog zur Installation oder Update von Plugins.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2455"/>
+        <location filename="../UI/UserInterface.py" line="2458"/>
         <source>Mini Editor</source>
         <translation>Mini-Editor</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2450"/>
+        <location filename="../UI/UserInterface.py" line="2453"/>
         <source>Mini &amp;Editor...</source>
         <translation>Mini-&amp;Editor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2456"/>
+        <location filename="../UI/UserInterface.py" line="2459"/>
         <source>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Open a dialog with a simplified editor.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Mini-Editor&lt;/b&gt;&lt;p&gt;Öffnet einen Dialog mit einem vereinfachten Editor.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
+        <location filename="../UI/UserInterface.py" line="2614"/>
         <source>Toolbars</source>
         <translation>Werkzeugleisten</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
+        <location filename="../UI/UserInterface.py" line="2614"/>
         <source>Tool&amp;bars...</source>
         <translation>Werkzeug&amp;leisten...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2616"/>
+        <location filename="../UI/UserInterface.py" line="2619"/>
         <source>Configure toolbars</source>
         <translation>Werkzeugleisten einrichten</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2617"/>
+        <location filename="../UI/UserInterface.py" line="2620"/>
         <source>&lt;b&gt;Toolbars&lt;/b&gt;&lt;p&gt;Configure the toolbars. With this dialog you may change the actions shown on the various toolbars and define your own toolbars.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Werkzeugleisten&lt;/b&gt;&lt;p&gt;Werkzeugleisten konfigurieren. Mit diesem Dialog können die auf den Werkzeugleisten gezeigten Aktionen geändert  und neue Werkzeugleisten definiert werden.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="683"/>
+        <location filename="../UI/UserInterface.py" line="686"/>
         <source>Restoring Toolbarmanager...</source>
         <translation>Lade Toolbarmanager...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3640"/>
+        <location filename="../UI/UserInterface.py" line="3643"/>
         <source>External Tools/{0}</source>
         <translation>Externe Werkzeuge/{0}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
+        <location filename="../UI/UserInterface.py" line="5497"/>
         <source>External Tools</source>
         <translation>Externe Werkzeuge</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5472"/>
+        <location filename="../UI/UserInterface.py" line="5488"/>
         <source>No tool entry found for external tool &apos;{0}&apos; in tool group &apos;{1}&apos;.</source>
         <translation>Kein Eintrag für das externe Werkzeug „{0}“ in der Gruppe „{1}“ gefunden.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
+        <location filename="../UI/UserInterface.py" line="5497"/>
         <source>No toolgroup entry &apos;{0}&apos; found.</source>
         <translation>Kein Werkzeuggruppeneintrag „{0}“ gefunden.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Multiproject-Viewer</source>
         <translation>Mehrfachprojektanzeige</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>&amp;Multiproject-Viewer</source>
         <translation>&amp;Mehrfachprojektanzeige</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1673"/>
+        <location filename="../UI/UserInterface.py" line="1676"/>
         <source>Save session</source>
         <translation>Sitzung speichern</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6550"/>
+        <location filename="../UI/UserInterface.py" line="6566"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Sitzungsdatei &lt;b&gt;{0}&lt;/b&gt; konnte nicht geschrieben werden.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>Read session</source>
         <translation>Sitzung lesen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Sitzungsdatei &lt;b&gt;{0}&lt;/b&gt; konnte nicht gelesen werden.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3541"/>
+        <location filename="../UI/UserInterface.py" line="3544"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors encoding.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Dieser Teil der Statusleiste zeigt die Zeichenkodierung des aktuellen Editors an.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3555"/>
+        <location filename="../UI/UserInterface.py" line="3558"/>
         <source>&lt;p&gt;This part of the status bar displays an indication of the current editors files writability.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Dieser Teil der Statusleiste zeigt an, ob die aktuelle Datei geschrieben werden kann.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request Feature</source>
         <translation>Neue Funktion anfragen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request &amp;Feature...</source>
         <translation>Neue &amp;Funktion anfragen...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2245"/>
+        <location filename="../UI/UserInterface.py" line="2248"/>
         <source>Send a feature request</source>
         <translation>Sende eine Anfrage für eine neue Funktion</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2247"/>
+        <location filename="../UI/UserInterface.py" line="2250"/>
         <source>&lt;b&gt;Request Feature...&lt;/b&gt;&lt;p&gt;Opens a dialog to send a feature request.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Neue Funktion anfragen...&lt;/b&gt;&lt;p&gt;Öffnet einen Dialog, um eine Anfrage für eine neue Funktion zu senden.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3534"/>
+        <location filename="../UI/UserInterface.py" line="3537"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors language.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Dieser Teil der Statusleiste zeigt die Sprache des aktuellen Editors an.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3562"/>
+        <location filename="../UI/UserInterface.py" line="3565"/>
         <source>&lt;p&gt;This part of the status bar displays the line number of the current editor.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Dieser Teil der Statusleiste zeigt die Zeilennummer des aktuellen Editors an.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3569"/>
+        <location filename="../UI/UserInterface.py" line="3572"/>
         <source>&lt;p&gt;This part of the status bar displays the cursor position of the current editor.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Dieser Teil der Statusleiste zeigt die Cursorposition des aktuellen Editors an.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>Horizontal Toolbox</source>
         <translation>Horizontale Werkzeugbox</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>&amp;Horizontal Toolbox</source>
         <translation>&amp;Horizontale Werkzeugbox</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1919"/>
+        <location filename="../UI/UserInterface.py" line="1922"/>
         <source>Toggle the Horizontal Toolbox window</source>
         <translation>Schalte das Fenster der Horizontalen Werkzeugbox um</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1921"/>
+        <location filename="../UI/UserInterface.py" line="1924"/>
         <source>&lt;b&gt;Toggle the Horizontal Toolbox window&lt;/b&gt;&lt;p&gt;If the Horizontal Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Schalte das Fenster der Horizontalen Werkzeugbox um&lt;/b&gt;&lt;p&gt;Falls das Fenster der Horizontalen Werkzeugbox nicht sichtbar ist, wird es dargestellt. Ist es sichtbar, so wird es versteckt.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>Restart application</source>
         <translation>Anwendung neu starten</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>The application needs to be restarted. Do it now?</source>
         <translation>Die Anwendung muss neu gestartet werden. Jetzt durchführen?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Alt+Shift+A</source>
         <translation>Alt+Shift+A</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3148"/>
+        <location filename="../UI/UserInterface.py" line="3151"/>
         <source>Configure...</source>
         <translation>Einstellungen...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3548"/>
+        <location filename="../UI/UserInterface.py" line="3551"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors eol setting.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Dieser Teil der Statusleiste zeigt die Zeilenendekodierung des aktuellen Editors an.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
+        <location filename="../UI/UserInterface.py" line="2751"/>
         <source>Switch between tabs</source>
         <translation>Zwischen Tabs umschalten</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
+        <location filename="../UI/UserInterface.py" line="2751"/>
         <source>Ctrl+1</source>
         <translation>Ctrl+1</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
+        <location filename="../UI/UserInterface.py" line="2540"/>
         <source>Export Preferences</source>
         <translation>Einstellungen exportieren</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
+        <location filename="../UI/UserInterface.py" line="2540"/>
         <source>E&amp;xport Preferences...</source>
         <translation>Einstellungen e&amp;xportieren...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2542"/>
+        <location filename="../UI/UserInterface.py" line="2545"/>
         <source>Export the current configuration</source>
         <translation>Exportiert die aktuelle Konfiguration</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2544"/>
+        <location filename="../UI/UserInterface.py" line="2547"/>
         <source>&lt;b&gt;Export Preferences&lt;/b&gt;&lt;p&gt;Export the current configuration to a file.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Einstellungen exportieren&lt;/b&gt;&lt;p&gt;Exportiert die aktuelle Konfiguration in eine Datei.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
+        <location filename="../UI/UserInterface.py" line="2554"/>
         <source>Import Preferences</source>
         <translation>Einstellungen importieren</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
+        <location filename="../UI/UserInterface.py" line="2554"/>
         <source>I&amp;mport Preferences...</source>
         <translation>Einstellungen i&amp;mportieren...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2556"/>
+        <location filename="../UI/UserInterface.py" line="2559"/>
         <source>Import a previously exported configuration</source>
         <translation>Importiert eine zuvor exportierte Konfiguration</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2558"/>
+        <location filename="../UI/UserInterface.py" line="2561"/>
         <source>&lt;b&gt;Import Preferences&lt;/b&gt;&lt;p&gt;Import a previously exported configuration.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Einstellungen importieren&lt;/b&gt;&lt;p&gt;Importiert eine zuvor exportierte Konfiguration.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
+        <location filename="../UI/UserInterface.py" line="2733"/>
         <source>Show next</source>
         <translation>Zeige nächste</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
+        <location filename="../UI/UserInterface.py" line="2742"/>
         <source>Show previous</source>
         <translation>Zeige vorherige</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>Left Sidebar</source>
         <translation>Linke Seitenleiste</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>&amp;Left Sidebar</source>
         <translation>&amp;Linke Seitenleiste</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1933"/>
+        <location filename="../UI/UserInterface.py" line="1936"/>
         <source>Toggle the left sidebar window</source>
         <translation>Schalte das Fenster der linken Seitenleiste um</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1934"/>
+        <location filename="../UI/UserInterface.py" line="1937"/>
         <source>&lt;b&gt;Toggle the left sidebar window&lt;/b&gt;&lt;p&gt;If the left sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Schalte das Fenster der linken Seitenleiste um&lt;/b&gt;&lt;p&gt;Falls das Fenster der linken Seitenleiste nicht sichtbar ist, wird es dargestellt. Ist es sichtbar, so wird es versteckt.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>Bottom Sidebar</source>
         <translation>Untere Seitenleiste</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>&amp;Bottom Sidebar</source>
         <translation>&amp;Untere Seitenleiste</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1960"/>
+        <location filename="../UI/UserInterface.py" line="1963"/>
         <source>Toggle the bottom sidebar window</source>
         <translation>Schalte das Fenster der unteren Seitenleiste um</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1962"/>
+        <location filename="../UI/UserInterface.py" line="1965"/>
         <source>&lt;b&gt;Toggle the bottom sidebar window&lt;/b&gt;&lt;p&gt;If the bottom sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Schalte das Fenster der unteren Seitenleiste um&lt;/b&gt;&lt;p&gt;Falls das Fenster der unteren Seitenleiste nicht sichtbar ist, wird es dargestellt. Ist es sichtbar, so wird es versteckt.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>&amp;Debug-Viewer</source>
         <translation>&amp;Debuganzeige</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
+        <location filename="../UI/UserInterface.py" line="2440"/>
         <source>SQL Browser</source>
         <translation>SQL-Browser</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
+        <location filename="../UI/UserInterface.py" line="2440"/>
         <source>SQL &amp;Browser...</source>
         <translation>SQL-&amp;Browser...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2442"/>
+        <location filename="../UI/UserInterface.py" line="2445"/>
         <source>Browse a SQL database</source>
         <translation>Erforsche eine SQL-Datenbank</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2443"/>
+        <location filename="../UI/UserInterface.py" line="2446"/>
         <source>&lt;b&gt;SQL Browser&lt;/b&gt;&lt;p&gt;Browse a SQL database.&lt;/p&gt;</source>
         <translation>&lt;b&gt;SQL-Browser&lt;/b&gt;&lt;p&gt;Erforsche eine SQL-Datenbank.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5377"/>
+        <location filename="../UI/UserInterface.py" line="5380"/>
         <source>&lt;p&gt;Could not start SQL Browser.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Der SQL-Browser konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass er als &lt;b&gt;{0}&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
+        <location filename="../UI/UserInterface.py" line="2495"/>
         <source>Icon Editor</source>
         <translation>Icon-Editor</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
+        <location filename="../UI/UserInterface.py" line="2495"/>
         <source>&amp;Icon Editor...</source>
         <translation>&amp;Icon-Editor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1124"/>
+        <location filename="../UI/UserInterface.py" line="1127"/>
         <source>Cooperation</source>
         <translation>Zusammenarbeit</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Alt+Shift+O</source>
         <translation>Alt+Shift+O</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1180"/>
+        <location filename="../UI/UserInterface.py" line="1183"/>
         <source>Symbols</source>
         <translation>Symbole</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Alt+Shift+Y</source>
         <translation>Alt+Shift+Y</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1189"/>
+        <location filename="../UI/UserInterface.py" line="1192"/>
         <source>Numbers</source>
         <translation>Zahlen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Alt+Shift+B</source>
         <translation>Alt+Shift+B</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2931"/>
+        <location filename="../UI/UserInterface.py" line="2934"/>
         <source>Python 3 Documentation</source>
         <translation>Python 3-Dokumentation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2935"/>
+        <location filename="../UI/UserInterface.py" line="2938"/>
         <source>Open Python 3 Documentation</source>
         <translation>Öffne die Python 3-Dokumentation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>Error getting versions information</source>
         <translation>Fehler beim Herunterladen der Versionsinformationen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7111"/>
+        <location filename="../UI/UserInterface.py" line="7138"/>
         <source>The versions information could not be downloaded. Please go online and try again.</source>
         <translation>Die Versionsinformationen konnten nicht heruntergeladen werden. Bitte gehen Sie online und versuchen Sie es erneut.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Open Browser</source>
         <translation>Browser starten</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Could not start a web browser</source>
         <translation>Der System Web Browser konnte nicht gestartet werden</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>The versions information could not be downloaded for the last 7 days. Please go online and try again.</source>
         <translation>Die Versionsinformationen konnten seit 7 Tagen nicht heruntergeladen werden. Bitte gehen Sie online und versuchen Sie es erneut.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="692"/>
+        <location filename="../UI/UserInterface.py" line="695"/>
         <source>Setting View Profile...</source>
         <translation>Stelle Ansichtenprofil ein...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="705"/>
+        <location filename="../UI/UserInterface.py" line="708"/>
         <source>Reading Tasks...</source>
         <translation>Lese Aufgaben...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="710"/>
+        <location filename="../UI/UserInterface.py" line="713"/>
         <source>Reading Templates...</source>
         <translation>Lese Vorlagen...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="715"/>
+        <location filename="../UI/UserInterface.py" line="718"/>
         <source>Starting Debugger...</source>
         <translation>Starte Debugger...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New Window</source>
         <translation>Neues Fenster</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New &amp;Window</source>
         <translation>Neues &amp;Fenster</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>Ctrl+Shift+N</source>
         <comment>File|New Window</comment>
         <translation>Ctrl+Shift+N</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Unittest Rerun Failed</source>
         <translation>Fehlerhafte Modultests wiederholen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Rerun Failed Tests...</source>
         <translation>Fehlerhafte Tests wiederholen...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2289"/>
+        <location filename="../UI/UserInterface.py" line="2292"/>
         <source>Rerun failed tests of the last run</source>
         <translation>Fehlerhafte Tests des letzten Laufes wiederholen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2291"/>
+        <location filename="../UI/UserInterface.py" line="2294"/>
         <source>&lt;b&gt;Rerun Failed Tests&lt;/b&gt;&lt;p&gt;Rerun all tests that failed during the last unittest run.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Fehlerhafte Tests wiederholen&lt;/b&gt;&lt;p&gt;Alle Tests wiederholen, die während des letzten Modultestlaufes fehlgeschlagen sind.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
+        <location filename="../UI/UserInterface.py" line="2426"/>
         <source>Compare &amp;Files side by side...</source>
         <translation>Dateien &amp;Seite an Seite vergleichen...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>Snapshot</source>
         <translation>Bildschirmfoto</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>&amp;Snapshot...</source>
         <translation>&amp;Bildschirmfoto...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2511"/>
+        <location filename="../UI/UserInterface.py" line="2514"/>
         <source>Take snapshots of a screen region</source>
         <translation>Bildschirmfoto aufnehmen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2513"/>
+        <location filename="../UI/UserInterface.py" line="2516"/>
         <source>&lt;b&gt;Snapshot&lt;/b&gt;&lt;p&gt;This opens a dialog to take snapshots of a screen region.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Bildschirmfoto&lt;/b&gt;&lt;p&gt;Dies öffnet einen Dialog, um ein Bildschirmfoto aufzunehmen.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5449"/>
+        <location filename="../UI/UserInterface.py" line="5465"/>
         <source>&lt;p&gt;Could not start Snapshot tool.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Bildschirmfotoanwendung konnte nicht gestartet werden.&lt;br&gt;Stellen Sie sicher, dass sie als &lt;b&gt;{0}&lt;/b&gt; verfügbar ist.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7324"/>
+        <location filename="../UI/UserInterface.py" line="7351"/>
         <source>Select Workspace Directory</source>
         <translation>Wähle Arbeitsverzeichnis</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
+        <location filename="../UI/UserInterface.py" line="1893"/>
         <source>Left Toolbox</source>
         <translation>Linke Werkzeugbox</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>Right Toolbox</source>
         <translation>Rechte Werkzeugbox</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1754"/>
+        <location filename="../UI/UserInterface.py" line="1757"/>
         <source>Switch the input focus to the Project-Viewer window.</source>
         <translation>Schalte den Eingabefokus auf das Projektanzeigerfenster um.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1756"/>
+        <location filename="../UI/UserInterface.py" line="1759"/>
         <source>&lt;b&gt;Activate Project-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Project-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Projektanzeiger aktivieren&lt;/b&gt;&lt;p&gt;Dies schaltet den Eingabefokus auf das Projektanzeigerfenster um.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1771"/>
+        <location filename="../UI/UserInterface.py" line="1774"/>
         <source>Switch the input focus to the Multiproject-Viewer window.</source>
         <translation>Schalte den Eingabefokus auf das Mehrfachprojektanzeigerfenster um.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1773"/>
+        <location filename="../UI/UserInterface.py" line="1776"/>
         <source>&lt;b&gt;Activate Multiproject-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Multiproject-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Mehrfachprojektanzeiger aktivieren&lt;/b&gt;&lt;p&gt;Dies schaltet den Eingabefokus auf das Mehrfachprojektanzeigerfenster um.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1789"/>
+        <location filename="../UI/UserInterface.py" line="1792"/>
         <source>Switch the input focus to the Debug-Viewer window.</source>
         <translation>Schalte den Eingabefokus auf das Debuganzeigefenster um.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1791"/>
+        <location filename="../UI/UserInterface.py" line="1794"/>
         <source>&lt;b&gt;Activate Debug-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Debug-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Debuganzeige aktivieren&lt;/b&gt;&lt;p&gt;Dies schaltet den Eingabefokus auf das Debuganzeigefenster um.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1807"/>
+        <location filename="../UI/UserInterface.py" line="1810"/>
         <source>Switch the input focus to the Shell window.</source>
         <translation>Schalte den Eingabefokus auf das Shell-Fenster um.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1809"/>
+        <location filename="../UI/UserInterface.py" line="1812"/>
         <source>&lt;b&gt;Activate Shell&lt;/b&gt;&lt;p&gt;This switches the input focus to the Shell window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Shell aktivieren&lt;/b&gt;&lt;p&gt;Dies schaltet den Eingabefokus auf das Shell-Fenster um.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>&amp;File-Browser</source>
         <translation>Datei&amp;browser</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1824"/>
+        <location filename="../UI/UserInterface.py" line="1827"/>
         <source>Switch the input focus to the File-Browser window.</source>
         <translation>Schalte den Eingabefokus auf das Dateibrowserfenster um.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1826"/>
+        <location filename="../UI/UserInterface.py" line="1829"/>
         <source>&lt;b&gt;Activate File-Browser&lt;/b&gt;&lt;p&gt;This switches the input focus to the File-Browser window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Dateibrowser aktivieren&lt;/b&gt;&lt;p&gt;Dies schaltet den Eingabefokus auf das Dateibrowserfenster um.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Lo&amp;g-Viewer</source>
         <translation>&amp;Ausgabefenster</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1841"/>
+        <location filename="../UI/UserInterface.py" line="1844"/>
         <source>Switch the input focus to the Log-Viewer window.</source>
         <translation>Schalte den Eingabefokus auf das Ausgabefenster um.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1843"/>
+        <location filename="../UI/UserInterface.py" line="1846"/>
         <source>&lt;b&gt;Activate Log-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Log-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Ausgabefenster aktivieren&lt;/b&gt;&lt;p&gt;Dies schaltet den Eingabefokus auf das Ausgabefenster um.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>&amp;Task-Viewer</source>
         <translation>&amp;Aufgabenanzeige</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1859"/>
+        <location filename="../UI/UserInterface.py" line="1862"/>
         <source>Switch the input focus to the Task-Viewer window.</source>
         <translation>Schalte den Eingabefokus auf das Aufgabenanzeigefenster um.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Templ&amp;ate-Viewer</source>
         <translation>&amp;Vorlagen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1878"/>
+        <location filename="../UI/UserInterface.py" line="1881"/>
         <source>Switch the input focus to the Template-Viewer window.</source>
         <translation>Schalte den Eingabefokus auf das Vorlagenfenster um.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1880"/>
+        <location filename="../UI/UserInterface.py" line="1883"/>
         <source>&lt;b&gt;Activate Template-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Template-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Vorlagen aktivieren&lt;/b&gt;&lt;p&gt;Dies schaltet den Eingabefokus auf das Vorlagenfenster um.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
-        <source>&amp;Left Toolbox</source>
-        <translation>&amp;Linke Werkzeugbox</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="1893"/>
+        <source>&amp;Left Toolbox</source>
+        <translation>&amp;Linke Werkzeugbox</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1896"/>
         <source>Toggle the Left Toolbox window</source>
         <translation>Schalte das Fenster der linken Werkzeugbox um</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1894"/>
+        <location filename="../UI/UserInterface.py" line="1897"/>
         <source>&lt;b&gt;Toggle the Left Toolbox window&lt;/b&gt;&lt;p&gt;If the Left Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Schalte das Fenster der linken Werkzeugbox um&lt;/b&gt;&lt;p&gt;Falls das Fenster der linken Werkzeugbox nicht sichtbar ist, wird es dargestellt. Ist es sichtbar, so wird es versteckt.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>&amp;Right Toolbox</source>
         <translation>&amp;Rechte Werkzeugbox</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1906"/>
+        <location filename="../UI/UserInterface.py" line="1909"/>
         <source>Toggle the Right Toolbox window</source>
         <translation>Schalte das Fenster der rechten Werkzeugbox um</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1907"/>
+        <location filename="../UI/UserInterface.py" line="1910"/>
         <source>&lt;b&gt;Toggle the Right Toolbox window&lt;/b&gt;&lt;p&gt;If the Right Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Schalte das Fenster der rechten Werkzeugbox um&lt;/b&gt;&lt;p&gt;Falls das Fenster der rechten Werkzeugbox nicht sichtbar ist, wird es dargestellt. Ist es sichtbar, so wird es versteckt.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>Right Sidebar</source>
         <translation>Rechte Seitenleiste</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>&amp;Right Sidebar</source>
         <translation>&amp;Rechte Seitenleiste</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1946"/>
+        <location filename="../UI/UserInterface.py" line="1949"/>
         <source>Toggle the right sidebar window</source>
         <translation>Schalte das Fenster der rechten Seitenleiste um</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1948"/>
+        <location filename="../UI/UserInterface.py" line="1951"/>
         <source>&lt;b&gt;Toggle the right sidebar window&lt;/b&gt;&lt;p&gt;If the right sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Schalte das Fenster der rechten Seitenleiste um&lt;/b&gt;&lt;p&gt;Falls das Fenster der rechten Seitenleiste nicht sichtbar ist, wird es dargestellt. Ist es sichtbar, so wird es versteckt.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Cooperation-Viewer</source>
         <translation>Zusammenarbeit</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Co&amp;operation-Viewer</source>
         <translation>&amp;Zusammenarbeit</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1977"/>
+        <location filename="../UI/UserInterface.py" line="1980"/>
         <source>Switch the input focus to the Cooperation-Viewer window.</source>
         <translation>Schalte den Eingabefokus auf das Fenster zur Zusammenarbeit um.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1979"/>
+        <location filename="../UI/UserInterface.py" line="1982"/>
         <source>&lt;b&gt;Activate Cooperation-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Cooperation-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Zusammenarbeitsfenster aktivieren&lt;/b&gt;&lt;p&gt;Dies schaltet den Eingabefokus auf das Fenster zur Zusammenarbeit um.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Symbols-Viewer</source>
         <translation>Symbolanzeiger</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>S&amp;ymbols-Viewer</source>
         <translation>S&amp;ymbolanzeiger</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2014"/>
+        <location filename="../UI/UserInterface.py" line="2017"/>
         <source>Switch the input focus to the Symbols-Viewer window.</source>
         <translation>Schalte den Eingabefokus auf das Symbolanzeigerfenster um.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2016"/>
+        <location filename="../UI/UserInterface.py" line="2019"/>
         <source>&lt;b&gt;Activate Symbols-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Symbols-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Symbolanzeiger aktivieren&lt;/b&gt;&lt;p&gt;Dies schaltet den Eingabefokus auf das Symbolanzeigerfenster um.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Numbers-Viewer</source>
         <translation>Zahlenanzeiger</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Num&amp;bers-Viewer</source>
         <translation>Za&amp;hlenanzeiger</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2033"/>
+        <location filename="../UI/UserInterface.py" line="2036"/>
         <source>Switch the input focus to the Numbers-Viewer window.</source>
         <translation>Schalte den Eingabefokus auf das Zahlenanzeigerfenster um.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2035"/>
+        <location filename="../UI/UserInterface.py" line="2038"/>
         <source>&lt;b&gt;Activate Numbers-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Numbers-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Zahlenanzeiger aktivieren&lt;/b&gt;&lt;p&gt;Dies schaltet den Eingabefokus auf das Zahlenanzeigerfenster um.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3225"/>
+        <location filename="../UI/UserInterface.py" line="3228"/>
         <source>&amp;Windows</source>
         <translation>&amp;Fenster</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1861"/>
+        <location filename="../UI/UserInterface.py" line="1864"/>
         <source>&lt;b&gt;Activate Task-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Task-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Aufgabenanzeige aktivieren&lt;/b&gt;&lt;p&gt;Dies schaltet den Eingabefokus auf das Aufgabenanzeigefenster um.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>IRC</source>
         <translation>IRC</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>&amp;IRC</source>
         <translation>&amp;IRC</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1996"/>
+        <location filename="../UI/UserInterface.py" line="1999"/>
         <source>Switch the input focus to the IRC window.</source>
         <translation>Schalte den Eingabefokus auf das IRC-Fenster um.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1998"/>
+        <location filename="../UI/UserInterface.py" line="2001"/>
         <source>&lt;b&gt;Activate IRC&lt;/b&gt;&lt;p&gt;This switches the input focus to the IRC window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;IRC aktivieren&lt;/b&gt;&lt;p&gt;Dies schaltet den Eingabefokus auf das IRC-Fenster um.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-Designer</source>
         <translation>Qt Designer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-&amp;Designer...</source>
         <translation>Qt &amp;Designer...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2347"/>
+        <location filename="../UI/UserInterface.py" line="2350"/>
         <source>Start Qt-Designer</source>
         <translation>Starte Qt Designer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2348"/>
+        <location filename="../UI/UserInterface.py" line="2351"/>
         <source>&lt;b&gt;Qt-Designer&lt;/b&gt;&lt;p&gt;Start Qt-Designer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Qt Designer&lt;/b&gt;&lt;p&gt;Starte Qt Designer.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-Linguist</source>
         <translation>Qt Linguist</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-&amp;Linguist...</source>
         <translation>Qt &amp;Linguist...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2373"/>
+        <location filename="../UI/UserInterface.py" line="2376"/>
         <source>Start Qt-Linguist</source>
         <translation>Starte Qt Linguist</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2374"/>
+        <location filename="../UI/UserInterface.py" line="2377"/>
         <source>&lt;b&gt;Qt-Linguist&lt;/b&gt;&lt;p&gt;Start Qt-Linguist.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Qt Linguist&lt;/b&gt;&lt;p&gt;Starte Qt Linguist (Übersetzungsprogramm).&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2862"/>
+        <location filename="../UI/UserInterface.py" line="2865"/>
         <source>Qt5 Documentation</source>
         <translation>Qt5 Dokumentation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2866"/>
+        <location filename="../UI/UserInterface.py" line="2869"/>
         <source>Open Qt5 Documentation</source>
         <translation>Öffne die Qt5 Dokumentation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates</source>
         <translation>SSL-Zertifikate verwalten</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates...</source>
         <translation>SSL-Zertifikate verwalten...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2675"/>
+        <location filename="../UI/UserInterface.py" line="2678"/>
         <source>Manage the saved SSL certificates</source>
         <translation>Verwalten der gespeicherten SSL-Zertifikate</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2677"/>
+        <location filename="../UI/UserInterface.py" line="2680"/>
         <source>&lt;b&gt;Manage SSL Certificates...&lt;/b&gt;&lt;p&gt;Opens a dialog to manage the saved SSL certificates.&lt;/p&gt;</source>
         <translation>&lt;b&gt;SSL-Zertifikate verwalten...&lt;/b&gt;&lt;p&gt;Öffnet einen Dialog zur Verwaltung gespeicherter SSL-Zertifikate.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters</source>
         <translation>Meldungsfilter bearbeiten</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters...</source>
         <translation>Meldungsfilter bearbeiten...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2691"/>
+        <location filename="../UI/UserInterface.py" line="2694"/>
         <source>Edit the message filters used to suppress unwanted messages</source>
         <translation>Bearbeite die Meldungsfilter, die zur Unterdrückung ungewünschter Meldungen verwendet werden</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2693"/>
+        <location filename="../UI/UserInterface.py" line="2696"/>
         <source>&lt;b&gt;Edit Message Filters&lt;/b&gt;&lt;p&gt;Opens a dialog to edit the message filters used to suppress unwanted messages been shown in an error window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Meldungsfilter bearbeiten&lt;/b&gt;&lt;p&gt;Dies öffnet einen Dialog zur Bearbeitung der Meldungsfilter, die zur Unterdrückung ungewünschter Meldungen verwendet werden.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2892"/>
+        <location filename="../UI/UserInterface.py" line="2895"/>
         <source>PyQt5 Documentation</source>
         <translation>PyQt5-Dokumentation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2896"/>
+        <location filename="../UI/UserInterface.py" line="2899"/>
         <source>Open PyQt5 Documentation</source>
         <translation>Öffne die PyQt5-Dokumentation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2937"/>
+        <location filename="../UI/UserInterface.py" line="2940"/>
         <source>&lt;b&gt;Python 3 Documentation&lt;/b&gt;&lt;p&gt;Display the Python 3 documentation. If no documentation directory is configured, the location of the Python 3 documentation is assumed to be the doc directory underneath the location of the Python 3 executable on Windows and &lt;i&gt;/usr/share/doc/packages/python/html&lt;/i&gt; on Unix. Set PYTHON3DOCDIR in your environment to override this.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Python 3-Dokumentation&lt;/b&gt;&lt;p&gt;Zeigt die Python 3-Dokumentation an. Ist kein Dokumentationsverzeichnis konfiguriert, so ist der Ort, an dem die Python 3-Dokumentation gesucht wird, unter Windows das Verzeichnis &lt;i&gt;doc&lt;/i&gt; unter dem Verzeichnis, in dem der Python 3-Interpreter installiert ist, und unter Unix das Verzeichnis &lt;i&gt;/usr/share/doc/packages/python/html&lt;/i&gt;. Um dies zu überschreiben, können Sie die Umgebungsvariable PYTHON3DOCDIR setzen.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>%v/%m</source>
         <translation>%v/%m</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2207"/>
+        <location filename="../UI/UserInterface.py" line="2210"/>
         <source>Show Error Log</source>
         <translation>Zeige Fehlerbericht</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2203"/>
+        <location filename="../UI/UserInterface.py" line="2206"/>
         <source>Show Error &amp;Log...</source>
         <translation>Zeige Fehler&amp;bericht...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2208"/>
+        <location filename="../UI/UserInterface.py" line="2211"/>
         <source>&lt;b&gt;Show Error Log...&lt;/b&gt;&lt;p&gt;Opens a dialog showing the most recent error log.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Zeige Fehlerbericht...&lt;/b&gt;&lt;p&gt;Dies öffnet einen Dialog zur Anzeige des aktuellsten Fehlerberichtes.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7054"/>
+        <location filename="../UI/UserInterface.py" line="7081"/>
         <source>Version Check</source>
         <translation>Versionsprüfung</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="669"/>
-        <source>Generating Plugins Toolbars...</source>
-        <translation>Erzeuge Werkzeugleisten der Plug-ins...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="4182"/>
-        <source>&amp;User Tools</source>
-        <translation>&amp;Benutzerwerkzeuge</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="4252"/>
-        <source>No User Tools Configured</source>
-        <translation>Keine Benutzerwerkzeuge konfiguriert</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
-        <source>Hex Editor</source>
-        <translation>Hex-Editor</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
-        <source>&amp;Hex Editor...</source>
-        <translation>&amp;Hex Editor...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2709"/>
-        <source>Clear private data</source>
-        <translation>Private Daten löschen</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2711"/>
-        <source>&lt;b&gt;Clear private data&lt;/b&gt;&lt;p&gt;Clears the private data like the various list of recently opened files, projects or multi projects.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Private Daten löschen&lt;/b&gt;&lt;p&gt;Löscht private Daten wie die Listen der zuletzt geöffneten Dateien, Projekte oder Mehrfachprojekte.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1669"/>
-        <source>Save session...</source>
-        <translation>Sitzung speichern...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1674"/>
-        <source>&lt;b&gt;Save session...&lt;/b&gt;&lt;p&gt;This saves the current session to disk. A dialog is opened to select the file name.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Sitzung speichern...&lt;/b&gt;&lt;p&gt;Dies speichert die aktuelle Sitzung in eine Datei. Es wird ein Dialog zur Eingabe des Dateinamens geöffnet.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
-        <source>Load session</source>
-        <translation>Sitzung laden</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1682"/>
-        <source>Load session...</source>
-        <translation>Sitzung laden...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1687"/>
-        <source>&lt;b&gt;Load session...&lt;/b&gt;&lt;p&gt;This loads a session saved to disk previously. A dialog is opened to select the file name.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Sitzung laden...&lt;/b&gt;&lt;p&gt;Dies lädt eine zuvor gesicherte Sitzung. Es wird ein Dialog zur Eingabe des Dateinamens geöffnet.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
-        <source>Crash Session found!</source>
-        <translation>Absturzsitzung gefunden!</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
-        <source>A session file of a crashed session was found. Shall this session be restored?</source>
-        <translation>Eine Sitzungsdatei einer abgestürzten Sitzung wurde gefunden. Soll diese Sitzung wiederhergestellt werden?</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="672"/>
+        <source>Generating Plugins Toolbars...</source>
+        <translation>Erzeuge Werkzeugleisten der Plug-ins...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="4185"/>
+        <source>&amp;User Tools</source>
+        <translation>&amp;Benutzerwerkzeuge</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="4255"/>
+        <source>No User Tools Configured</source>
+        <translation>Keine Benutzerwerkzeuge konfiguriert</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2466"/>
+        <source>Hex Editor</source>
+        <translation>Hex-Editor</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2466"/>
+        <source>&amp;Hex Editor...</source>
+        <translation>&amp;Hex Editor...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2712"/>
+        <source>Clear private data</source>
+        <translation>Private Daten löschen</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2714"/>
+        <source>&lt;b&gt;Clear private data&lt;/b&gt;&lt;p&gt;Clears the private data like the various list of recently opened files, projects or multi projects.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Private Daten löschen&lt;/b&gt;&lt;p&gt;Löscht private Daten wie die Listen der zuletzt geöffneten Dateien, Projekte oder Mehrfachprojekte.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1672"/>
+        <source>Save session...</source>
+        <translation>Sitzung speichern...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1677"/>
+        <source>&lt;b&gt;Save session...&lt;/b&gt;&lt;p&gt;This saves the current session to disk. A dialog is opened to select the file name.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Sitzung speichern...&lt;/b&gt;&lt;p&gt;Dies speichert die aktuelle Sitzung in eine Datei. Es wird ein Dialog zur Eingabe des Dateinamens geöffnet.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6660"/>
+        <source>Load session</source>
+        <translation>Sitzung laden</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1685"/>
+        <source>Load session...</source>
+        <translation>Sitzung laden...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1690"/>
+        <source>&lt;b&gt;Load session...&lt;/b&gt;&lt;p&gt;This loads a session saved to disk previously. A dialog is opened to select the file name.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Sitzung laden...&lt;/b&gt;&lt;p&gt;Dies lädt eine zuvor gesicherte Sitzung. Es wird ein Dialog zur Eingabe des Dateinamens geöffnet.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6710"/>
+        <source>Crash Session found!</source>
+        <translation>Absturzsitzung gefunden!</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6710"/>
+        <source>A session file of a crashed session was found. Shall this session be restored?</source>
+        <translation>Eine Sitzungsdatei einer abgestürzten Sitzung wurde gefunden. Soll diese Sitzung wiederhergestellt werden?</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="675"/>
         <source>Cleaning Plugins Download Area...</source>
         <translation>Bereinige den Plugins Downloadbereich...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="664"/>
+        <location filename="../UI/UserInterface.py" line="667"/>
         <source>Initializing Plugins...</source>
         <translation>Initialisiere Plugins...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>Update Check</source>
         <translation>Aktualisierungsprüfung</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>You installed eric directly from the source code. There is no possibility to check for the availability of an update.</source>
         <translation>Eric wurde direkt von vom Quelltext installiert. Eine Aktualitätsprüfung ist daher nicht möglich.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Code Documentation Viewer</source>
         <translation>Dokumentationsanzeige</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2867"/>
+        <location filename="../UI/UserInterface.py" line="2870"/>
         <source>&lt;b&gt;Qt5 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;Qt5-Dokumentation&lt;/b&gt;&lt;p&gt;Zeige die Qt5-Dokumentation an. Abhängig von den Einstellungen wird Erics interner Hilfeanzeiger/Web Browser, ein externer Web Browser oder Qt Assistant verwendet.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2898"/>
+        <location filename="../UI/UserInterface.py" line="2901"/>
         <source>&lt;b&gt;PyQt5 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;PyQt5-Dokumentation&lt;/b&gt;&lt;p&gt;Zeige die PyQt5-Dokumentation an. Abhängig von den Einstellungen wird Erics interner Hilfeanzeiger/Web Browser, ein externer Web Browser oder Qt Assistant verwendet.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2974"/>
+        <location filename="../UI/UserInterface.py" line="2977"/>
         <source>PySide2 Documentation</source>
         <translation>PySide2-Dokumentation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2978"/>
+        <location filename="../UI/UserInterface.py" line="2981"/>
         <source>Open PySide2 Documentation</source>
         <translation>Öffne die PySide2-Dokumentation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2980"/>
+        <location filename="../UI/UserInterface.py" line="2983"/>
         <source>&lt;b&gt;PySide2 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide2 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;PySide2-Dokumentation&lt;/b&gt;&lt;p&gt;Zeige die PySide2-Dokumentation an. Abhängig von den Einstellungen wird Erics interner Hilfeanzeiger/Web Browser, ein externer Web Browser oder Qt Assistant verwendet.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>&lt;p&gt;The PySide{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Der PySide{0}-Dokumentations-Startpunkt ist nicht konfiguriert.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2817"/>
+        <location filename="../UI/UserInterface.py" line="2820"/>
         <source>Virtualenv Manager</source>
         <translation>Virtualenv Manager</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2811"/>
+        <location filename="../UI/UserInterface.py" line="2814"/>
         <source>&amp;Virtualenv Manager...</source>
         <translation>&amp;Virtualenv Manager...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2819"/>
+        <location filename="../UI/UserInterface.py" line="2822"/>
         <source>&lt;b&gt;Virtualenv Manager&lt;/b&gt;&lt;p&gt;This opens a dialog to manage the defined Python virtual environments.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Virtualenv Manager&lt;/b&gt;&lt;p&gt;Dies öffnet einen Dialog zur Verwaltung der definierten virtuellen Python Umgebungen.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2834"/>
+        <location filename="../UI/UserInterface.py" line="2837"/>
         <source>Virtualenv Configurator</source>
         <translation>Virtualenv Konfigurator</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2828"/>
+        <location filename="../UI/UserInterface.py" line="2831"/>
         <source>Virtualenv &amp;Configurator...</source>
         <translation>Virtualenv &amp;Konfigurator...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2836"/>
+        <location filename="../UI/UserInterface.py" line="2839"/>
         <source>&lt;b&gt;Virtualenv Configurator&lt;/b&gt;&lt;p&gt;This opens a dialog for entering all the parameters needed to create a Python virtual environment using virtualenv or pyvenv.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Virtualenv Konfigurator&lt;/b&gt;&lt;p&gt;Dies öffnet einen Dialog zur Eingabe aller Parameter, die zur Erzeugung einer virtuellen Python Umgebung mittels virtualenv oder pyvenv benötigt werden.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3232"/>
+        <location filename="../UI/UserInterface.py" line="3235"/>
         <source>Left Side</source>
         <translation>Linke Seite</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3244"/>
+        <location filename="../UI/UserInterface.py" line="3247"/>
         <source>Bottom Side</source>
         <translation>Unterer Rand</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3251"/>
+        <location filename="../UI/UserInterface.py" line="3254"/>
         <source>Right Side</source>
         <translation>Rechte Seite</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3271"/>
+        <location filename="../UI/UserInterface.py" line="3274"/>
         <source>Plug-ins</source>
         <translation>Plugins</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Restart</source>
         <translation>Neu starten</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Ctrl+Shift+Q</source>
         <comment>File|Quit</comment>
         <translation>Ctrl+Shift+Q</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1659"/>
+        <location filename="../UI/UserInterface.py" line="1662"/>
         <source>Restart the IDE</source>
         <translation>Neustart der Entwicklungsumgebung</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1660"/>
+        <location filename="../UI/UserInterface.py" line="1663"/>
         <source>&lt;b&gt;Restart the IDE&lt;/b&gt;&lt;p&gt;This restarts the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Neustart der Entwicklungsumgebung&lt;/b&gt;&lt;p&gt;Dies startet die Entwicklungsumgebung neu. Ungesicherte Änderungen können zuvor gesichert werden. Ein Python-Programm, das gerade debuggt wird, wird beendet und sämtliche Einstellungen werden gespeichert.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>Start Web Browser</source>
         <translation>Web Browser starten</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Conda</source>
         <translation>Conda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>PyPI</source>
         <translation>PyPI</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3580"/>
+        <location filename="../UI/UserInterface.py" line="3583"/>
         <source>&lt;p&gt;This part of the status bar allows zooming the current editor or shell.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Dieser Teil der Statusleiste erlaubt das Zoomen des aktuellen Editors oder der Shell.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>MicroPython</source>
         <translation>MicroPython</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>Ctrl+Alt+Shift+I</source>
         <translation>Ctrl+Alt+Shift+I</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Ctrl+Alt+Shift+D</source>
         <translation>Ctrl+Alt+Shift+D</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2052"/>
-        <source>Switch the input focus to the Code Documentation Viewer window.</source>
-        <translation>Schalte den Eingabefokus auf die Codedokumentationsanzeige um.</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="2055"/>
+        <source>Switch the input focus to the Code Documentation Viewer window.</source>
+        <translation>Schalte den Eingabefokus auf die Codedokumentationsanzeige um.</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2058"/>
         <source>&lt;b&gt;Code Documentation Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Code Documentation Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Codedokumentationsanzeige&lt;/b&gt;&lt;p&gt;Dies schaltet den Eingabefokus auf die Codedokumentationsanzeige um.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>Ctrl+Alt+Shift+P</source>
         <translation>Ctrl+Alt+Shift+P</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2072"/>
+        <location filename="../UI/UserInterface.py" line="2075"/>
         <source>Switch the input focus to the PyPI window.</source>
         <translation>Schalte den Eingabefokus auf das PyPI-Fenster um.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2074"/>
+        <location filename="../UI/UserInterface.py" line="2077"/>
         <source>&lt;b&gt;PyPI&lt;/b&gt;&lt;p&gt;This switches the input focus to the PyPI window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;PyPI&lt;/b&gt;&lt;p&gt;Dies schaltet den Eingabefokus auf das PyPI-Fenster um.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Ctrl+Alt+Shift+C</source>
         <translation>Ctrl+Alt+Shift+C</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2090"/>
+        <location filename="../UI/UserInterface.py" line="2093"/>
         <source>Switch the input focus to the Conda window.</source>
         <translation>Schalte den Eingabefokus auf das Conda-Fenster um.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2092"/>
+        <location filename="../UI/UserInterface.py" line="2095"/>
         <source>&lt;b&gt;Conda&lt;/b&gt;&lt;p&gt;This switches the input focus to the Conda window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Conda&lt;/b&gt;&lt;p&gt;Dies schaltet den Eingabefokus auf das Conda-Fenster um.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>Ctrl+Alt+Shift+M</source>
         <translation>Ctrl+Alt+Shift+M</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2108"/>
+        <location filename="../UI/UserInterface.py" line="2111"/>
         <source>Switch the input focus to the MicroPython window.</source>
         <translation>Schalte den Eingabefokus auf das MicroPython-Fenster um.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2110"/>
+        <location filename="../UI/UserInterface.py" line="2113"/>
         <source>&lt;b&gt;MicroPython&lt;/b&gt;&lt;p&gt;This switches the input focus to the MicroPython window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;MicroPython&lt;/b&gt;&lt;p&gt;Dies schaltet den Eingabefokus auf das MicroPython-Fenster um.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3229"/>
+        <location filename="../UI/UserInterface.py" line="3232"/>
         <source>Central Park</source>
         <translation>Mittelbereich</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3746"/>
+        <location filename="../UI/UserInterface.py" line="3749"/>
         <source>&lt;h2&gt;Version Numbers&lt;/h2&gt;&lt;table&gt;</source>
         <translation>&lt;h2&gt;Versionsnummern&lt;/h2&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5075"/>
+        <location filename="../UI/UserInterface.py" line="5078"/>
         <source>&lt;p&gt;Could not find the Qt-Designer executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Das Qt-Designer Programm konnte nicht gefunden werden.&lt;br&gt;Stelle sicher, dass es installiert und optional auf der Qt Konfigurationsseite konfiguriert ist.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5145"/>
+        <location filename="../UI/UserInterface.py" line="5148"/>
         <source>&lt;p&gt;Could not find the Qt-Linguist executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Das Qt-Linguist Programm konnte nicht gefunden werden.&lt;br&gt;Stelle sicher, dass es installiert und optional auf der Qt Konfigurationsseite konfiguriert ist.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5189"/>
+        <location filename="../UI/UserInterface.py" line="5192"/>
         <source>&lt;p&gt;Could not find the Qt-Assistant executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Das Qt-Assistant Programm konnte nicht gefunden werden.&lt;br&gt;Stelle sicher, dass es installiert und optional auf der Qt Konfigurationsseite konfiguriert ist.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install Info</source>
         <translation>Installationsinformation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install &amp;Info...</source>
         <translation>&amp;Installationsinformation...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2219"/>
+        <location filename="../UI/UserInterface.py" line="2222"/>
         <source>Show Installation Information</source>
         <translation>Installationsinformation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2221"/>
+        <location filename="../UI/UserInterface.py" line="2224"/>
         <source>&lt;b&gt;Show Install Info...&lt;/b&gt;&lt;p&gt;Opens a dialog showing some information about the installation process.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Installationsinformation&lt;/b&gt;&lt;p&gt;Öffnet einen Dialog zur Anzeige von Informationen über den Installationsprozess.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2877"/>
+        <location filename="../UI/UserInterface.py" line="2880"/>
         <source>Qt6 Documentation</source>
         <translation>Qt6 Dokumentation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2881"/>
+        <location filename="../UI/UserInterface.py" line="2884"/>
         <source>Open Qt6 Documentation</source>
         <translation>Öffne die Qt6 Dokumentation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2882"/>
+        <location filename="../UI/UserInterface.py" line="2885"/>
         <source>&lt;b&gt;Qt6 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;Qt6-Dokumentation&lt;/b&gt;&lt;p&gt;Zeige die Qt6-Dokumentation an. Abhängig von den Einstellungen wird Erics interner Hilfeanzeiger/Web Browser, ein externer Web Browser oder Qt Assistant verwendet.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2909"/>
+        <location filename="../UI/UserInterface.py" line="2912"/>
         <source>PyQt6 Documentation</source>
         <translation>PyQt6-Dokumentation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2913"/>
+        <location filename="../UI/UserInterface.py" line="2916"/>
         <source>Open PyQt6 Documentation</source>
         <translation>Öffne die PyQt6-Dokumentation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2915"/>
+        <location filename="../UI/UserInterface.py" line="2918"/>
         <source>&lt;b&gt;PyQt6 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;PyQt6-Dokumentation&lt;/b&gt;&lt;p&gt;Zeige die PyQt6-Dokumentation an. Abhängig von den Einstellungen wird Erics interner Hilfeanzeiger/Web Browser, ein externer Web Browser oder Qt Assistant verwendet.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2994"/>
+        <location filename="../UI/UserInterface.py" line="2997"/>
         <source>PySide6 Documentation</source>
         <translation>PySide6-Dokumentation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2998"/>
+        <location filename="../UI/UserInterface.py" line="3001"/>
         <source>Open PySide6 Documentation</source>
         <translation>Öffne die PySide6-Dokumentation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3000"/>
+        <location filename="../UI/UserInterface.py" line="3003"/>
         <source>&lt;b&gt;PySide6 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;PySide6-Dokumentation&lt;/b&gt;&lt;p&gt;Zeige die PySide6-Dokumentation an. Abhängig von den Einstellungen wird Erics interner Hilfeanzeiger/Web Browser, ein externer Web Browser oder Qt Assistant verwendet.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5754"/>
+        <location filename="../UI/UserInterface.py" line="5770"/>
         <source>&lt;p&gt;The PyQt{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Der PyQt{0}-Dokumentations-Startpunkt ist nicht konfiguriert.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1701"/>
+        <location filename="../UI/UserInterface.py" line="1704"/>
         <source>Open a new eric instance</source>
         <translation>Öffnet eine neue eric Instanz</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1703"/>
+        <location filename="../UI/UserInterface.py" line="1706"/>
         <source>&lt;b&gt;New Window&lt;/b&gt;&lt;p&gt;This opens a new instance of the eric IDE.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Neues Fenster&lt;/b&gt;&lt;p&gt;Dies öffnet eine neue Instanz der eric IDE.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2146"/>
+        <location filename="../UI/UserInterface.py" line="2149"/>
         <source>&lt;b&gt;Helpviewer&lt;/b&gt;&lt;p&gt;Display the eric web browser. This window will show HTML help files and help from Qt help collections. It has the capability to navigate to links, set bookmarks, print the displayed help and some more features. You may use it to browse the internet as well&lt;/p&gt;&lt;p&gt;If called with a word selected, this word is search in the Qt help collection.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Hilfe-Fenster&lt;/b&gt;&lt;p&gt;Zeige den eric Web Browser an. Dieses Fenster zeigt Hilfedateien im HTML-Format und Qt-Hilfesammlungen an. In ihm kann über Hyperlinks navigiert, Lesezeichen gesetzt und neben anderen Funktionen die dargestellte Seite ausgedruckt werden. Er kann auch zum Surfen im Internet benutzt werden.&lt;/p&gt;&lt;p&gt;Wenn es mit einem selektierten Wort aufgerufen wird, so wird dieses Wort in der Qt-Hilfesammlung gesucht.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2181"/>
+        <location filename="../UI/UserInterface.py" line="2184"/>
         <source>&lt;b&gt;Check for Updates...&lt;/b&gt;&lt;p&gt;Checks the internet for updates of eric.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Auf Aktualisierungen prüfen...&lt;/b&gt;
 &lt;p&gt;Dies prüft im Internet auf Updates von eric.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2194"/>
+        <location filename="../UI/UserInterface.py" line="2197"/>
         <source>&lt;b&gt;Show downloadable versions...&lt;/b&gt;&lt;p&gt;Shows the eric versions available for download from the internet.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Zeige verfügbare Versionen...&lt;/b&gt;&lt;p&gt;Zeigt die eric Versionen, die vom Internet heruntergeladen werden können.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2468"/>
+        <location filename="../UI/UserInterface.py" line="2471"/>
         <source>Start the eric Hex Editor</source>
         <translation>Starte den eric Hex-Editor</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2470"/>
+        <location filename="../UI/UserInterface.py" line="2473"/>
         <source>&lt;b&gt;Hex Editor&lt;/b&gt;&lt;p&gt;Starts the eric Hex Editor for viewing or editing binary files.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Hex-Editor&lt;/b&gt;&lt;p&gt;Startet den eric Hex-Editor zum Ansehen oder Bearbeiten von Binärdateien.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric Web Browser</source>
         <translation>eric Web Browser</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric &amp;Web Browser...</source>
         <translation>eric &amp;Web Browser...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2483"/>
+        <location filename="../UI/UserInterface.py" line="2486"/>
         <source>Start the eric Web Browser</source>
         <translation>Startet den eric Web Browser</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2485"/>
+        <location filename="../UI/UserInterface.py" line="2488"/>
         <source>&lt;b&gt;eric Web Browser&lt;/b&gt;&lt;p&gt;Browse the Internet with the eric Web Browser.&lt;/p&gt;</source>
         <translation>&lt;b&gt;eric Web Browser&lt;/b&gt;&lt;p&gt;Durchforste das Internet mit dem eric Web Browser.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2497"/>
+        <location filename="../UI/UserInterface.py" line="2500"/>
         <source>Start the eric Icon Editor</source>
         <translation>Starte den eric Icon-Editor</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2499"/>
+        <location filename="../UI/UserInterface.py" line="2502"/>
         <source>&lt;b&gt;Icon Editor&lt;/b&gt;&lt;p&gt;Starts the eric Icon Editor for editing simple icons.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Icon-Editor&lt;/b&gt;&lt;p&gt;Startet den eric Icon-Editor zum Editieren einfacher Icons.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2585"/>
+        <location filename="../UI/UserInterface.py" line="2588"/>
         <source>&lt;b&gt;Show external tools&lt;/b&gt;&lt;p&gt;Opens a dialog to show the path and versions of all extenal tools used by eric.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Zeige externe Werkzeuge&lt;/b&gt;&lt;p&gt;Öffnet einen Dialog, der die Pfade und Versionen der von eric genutzten externen Werkzeuge anzeigt.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2959"/>
+        <location filename="../UI/UserInterface.py" line="2962"/>
         <source>&lt;b&gt;Eric API Documentation&lt;/b&gt;&lt;p&gt;Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric installation directory.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Eric API Dokumentation&lt;/b&gt;&lt;p&gt;Zeige die Eric API Dokumentation an. Der Pfad für die Dokumentation ist das Unterverzeichnis Documentation/Source im eric Installationverzeichnis.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5972"/>
+        <location filename="../UI/UserInterface.py" line="5988"/>
         <source>The eric web browser could not be started.</source>
         <translation>Der eric Web Browser konnte nicht gestartet werden.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>&lt;p&gt;The eric web browser is not started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Der eric Web Browser ist nicht gestartet.&lt;/p&gt;&lt;p&gt;Ursache: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>The update to &lt;b&gt;{0}&lt;/b&gt; of eric is available at &lt;b&gt;{1}&lt;/b&gt;. Would you like to get it?</source>
         <translation>Eine Aktualisierung auf &lt;b&gt;{0}&lt;/b&gt; von eric ist unter &lt;b&gt;{1}&lt;/b&gt; verfügbar. Soll sie geladen werden?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7188"/>
+        <location filename="../UI/UserInterface.py" line="7215"/>
         <source>You are using a snapshot release of eric. A more up-to-date stable release might be available.</source>
         <translation>Es wird ein Snapshot-Release von eric verwendet. Eine neueres, stabiles Release könnte verfügbar sein.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>eric is up to date</source>
         <translation>eric ist aktuell</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>You are using the latest version of eric</source>
         <translation>Es wird die aktuellste Version von eric verwendet</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>eric has not been configured yet. The configuration dialog will be started.</source>
         <translation>eric wurde noch nicht konfiguriert. Der Konfigurationsdialog wird nun gestartet.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6290"/>
+        <location filename="../UI/UserInterface.py" line="6306"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard Shortcuts File (*.e4k)</source>
         <translation>Tastaturkurzbefehlsdatei (*.ekj);;XML Tastaturkurzbefehlsdatei (*.e4k)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>&lt;p&gt;The keyboard shortcuts file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Tastaturkurzbefehlsdatei &lt;b&gt;{0}&lt;/b&gt; existiert bereits. Überschreiben?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard shortcut file (*.e4k)</source>
         <translation>Tastaturkurzbefehlsdatei (*.ekj);;XML Tastaturkurzbefehlsdatei (*.e4k)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>Read Tasks</source>
         <translation>Aufgaben lesen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6621"/>
+        <location filename="../UI/UserInterface.py" line="6637"/>
         <source>Save Session</source>
         <translation>Sitzung speichern</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6578"/>
+        <location filename="../UI/UserInterface.py" line="6594"/>
         <source>Read Session</source>
         <translation>Sitzung lesen</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>eric Session Files (*.esj);;eric XML Session Files (*.e5s)</source>
         <translation>eric Sitzungsdateien (*.esj);;eric XML Sitzungsdateien (*.e5s)</translation>
     </message>
@@ -77749,7 +77902,7 @@
 <context>
     <name>Utilities</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="1420"/>
+        <location filename="../Utilities/__init__.py" line="1421"/>
         <source>&lt;p&gt;You may use %-codes as placeholders in the string. Supported codes are:&lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;column of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;directory of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;filename of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;home directory of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;line of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;path of the current project&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;selected text of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;username of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;the percent sign&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</source>
         <translation>&lt;p&gt;Sie können %-Codes als Platzhalter in der Eingabe verwenden. Unterstützte Codes sind:&lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;Spalte des Cursor des aktuellen Editors&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;Verzeichnis des aktuellen Editors&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;Dateiname des aktuellen Editors&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;Home-Verzeichnis des aktullen Nutzers&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;Zeile des Cursor des aktuellen Editors&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;Pfad des aktuellen Projektes&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;selektierter Text des aktuellen Editors&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;Nutzername des aktuellen Nutzers&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;das Prozentzeichen&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</translation>
     </message>
@@ -78338,12 +78491,12 @@
 <context>
     <name>VcsMercurialPlugin</name>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="58"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="54"/>
         <source>Version Control - Mercurial</source>
         <translation>Versionskontrolle – Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="132"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="124"/>
         <source>Mercurial</source>
         <translation>Mercurial</translation>
     </message>
@@ -80100,17 +80253,17 @@
         <translation>Ge&amp;merkte Dateien</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5217"/>
+        <location filename="../ViewManager/ViewManager.py" line="5230"/>
         <source>&amp;Clear</source>
         <translation>&amp;Löschen</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5211"/>
+        <location filename="../ViewManager/ViewManager.py" line="5224"/>
         <source>&amp;Add</source>
         <translation>&amp;Hinzufügen</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5214"/>
+        <location filename="../ViewManager/ViewManager.py" line="5227"/>
         <source>&amp;Edit...</source>
         <translation>&amp;Bearbeiten...</translation>
     </message>
@@ -80899,12 +81052,12 @@
         <translation>Rechtschreibung</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4777"/>
+        <location filename="../ViewManager/ViewManager.py" line="4790"/>
         <source>Line: {0:5}</source>
         <translation>Zeile: {0:5}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4783"/>
+        <location filename="../ViewManager/ViewManager.py" line="4796"/>
         <source>Pos: {0:5}</source>
         <translation>Pos: {0:5}</translation>
     </message>
@@ -81512,27 +81665,27 @@
         <translation>Nutzer-Ausnahmenliste</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>Edit Spelling Dictionary</source>
         <translation>Wörterbuch bearbeiten</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6233"/>
+        <location filename="../ViewManager/ViewManager.py" line="6246"/>
         <source>Editing {0}</source>
         <translation>Bearbeite {0}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6215"/>
+        <location filename="../ViewManager/ViewManager.py" line="6228"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Wörterbuchdatei &lt;b&gt;{0}&lt;/b&gt; konnte nicht gelesen werden.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6244"/>
+        <location filename="../ViewManager/ViewManager.py" line="6257"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Wörterbuchdatei &lt;b&gt;{0}&lt;/b&gt; konnte nicht geschrieben werden.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>The spelling dictionary was saved successfully.</source>
         <translation>Das Wörterbuch wurde erfolgreich gespeichert.</translation>
     </message>
@@ -81652,12 +81805,12 @@
         <translation>&lt;b&gt;Sortieren&lt;/b&gt;&lt;p&gt;Dies sortiert die von der Rechteckauswahl überspannten Zeilen basierend auf der Auswahl. Führende und folgende Leerzeichen werden ignoriert.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4804"/>
+        <location filename="../ViewManager/ViewManager.py" line="4817"/>
         <source>Language: {0}</source>
         <translation>Sprache: {0}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4811"/>
+        <location filename="../ViewManager/ViewManager.py" line="4824"/>
         <source>EOL Mode: {0}</source>
         <translation>EOL-Modus: {0}</translation>
     </message>
@@ -84870,8 +85023,8 @@
     </message>
     <message>
         <location filename="../WebBrowser/WebBrowserView.py" line="657"/>
-        <source>Open Link in New Tab<byte value="x9"/>Ctrl+LMB</source>
-        <translation>Link in neuem Fenster öffnen<byte value="x9"/>Strg+LMK</translation>
+        <source>Open Link in New Tab	Ctrl+LMB</source>
+        <translation>Link in neuem Fenster öffnen	Strg+LMK</translation>
     </message>
     <message>
         <location filename="../WebBrowser/WebBrowserView.py" line="663"/>
--- a/eric6/i18n/eric6_empty.ts	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/i18n/eric6_empty.ts	Thu Jun 03 11:39:23 2021 +0200
@@ -1229,45 +1229,60 @@
 <context>
     <name>ApplicationDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="43"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="47"/>
         <source>Application Diagram {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>Parsing modules...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>%v/%m Modules</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="69"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
         <source>Application Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="197"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="252"/>
         <source>&lt;&lt;Application&gt;&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="199"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="254"/>
         <source>&lt;&lt;Others&gt;&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>Load Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>&lt;p&gt;The diagram belongs to the project &lt;b&gt;{0}&lt;/b&gt;. Shall this project be opened?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="126"/>
+        <source>Select the application directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
+        <source>No application package could be detected. Aborting...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="466"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>ApplicationPage</name>
@@ -1588,47 +1603,47 @@
 <context>
     <name>BackgroundService</name>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="139"/>
+        <location filename="../Utilities/BackgroundService.py" line="142"/>
         <source>{0} not configured.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>Restart background client?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>&lt;p&gt;The background client for &lt;b&gt;{0}&lt;/b&gt; has stopped due to an exception. It&apos;s used by various plug-ins like the different checkers.&lt;/p&gt;&lt;p&gt;Select&lt;ul&gt;&lt;li&gt;&lt;b&gt;&apos;Yes&apos;&lt;/b&gt; to restart the client, but abort the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Retry&apos;&lt;/b&gt; to restart the client and the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;No&apos;&lt;/b&gt; to leave the client off.&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p&gt;Note: The client can be restarted by opening and accepting the preferences dialog or reloading/changing the project.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="456"/>
+        <location filename="../Utilities/BackgroundService.py" line="459"/>
         <source>Eric&apos;s background client disconnected because of an unknown reason.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>Background client disconnected.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>The background client for &lt;b&gt;{0}&lt;/b&gt; disconnected because of an unknown reason.&lt;br&gt;Should it be restarted?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="228"/>
+        <location filename="../Utilities/BackgroundService.py" line="231"/>
         <source>An error in Eric&apos;s background client stopped the service.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>Initialization of Background Service</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>&lt;p&gt;Initialization of Background Service &lt;b&gt;{0}&lt;/b&gt; failed.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2320,222 +2335,222 @@
 <context>
     <name>Browser</name>
     <message>
-        <location filename="../UI/Browser.py" line="94"/>
+        <location filename="../UI/Browser.py" line="96"/>
         <source>File-Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="113"/>
+        <location filename="../UI/Browser.py" line="115"/>
         <source>&lt;b&gt;The Browser Window&lt;/b&gt;&lt;p&gt;This allows you to easily navigate the hierarchy of directories and files on your system, identify the Python programs and open them up in a Source Viewer window. The window displays several separate hierarchies.&lt;/p&gt;&lt;p&gt;The first hierarchy is only shown if you have opened a program for debugging and its root is the directory containing that program. Usually all of the separate files that make up a Python application are held in the same directory, so this hierarchy gives you easy access to most of what you will need.&lt;/p&gt;&lt;p&gt;The next hierarchy is used to easily navigate the directories that are specified in the Python &lt;tt&gt;sys.path&lt;/tt&gt; variable.&lt;/p&gt;&lt;p&gt;The remaining hierarchies allow you navigate your system as a whole. On a UNIX system there will be a hierarchy with &lt;tt&gt;/&lt;/tt&gt; at its root and another with the user home directory. On a Windows system there will be a hierarchy for each drive on the system.&lt;/p&gt;&lt;p&gt;Python programs (i.e. those with a &lt;tt&gt;.py&lt;/tt&gt; file name suffix) are identified in the hierarchies with a Python icon. The right mouse button will popup a menu which lets you open the file in a Source Viewer window, open the file for debugging or use it for a unittest run.&lt;/p&gt;&lt;p&gt;The context menu of a class, function or method allows you to open the file defining this class, function or method and will ensure, that the correct source line is visible.&lt;/p&gt;&lt;p&gt;Qt-Designer files (i.e. those with a &lt;tt&gt;.ui&lt;/tt&gt; file name suffix) are shown with a Designer icon. The context menu of these files allows you to start Qt-Designer with that file.&lt;/p&gt;&lt;p&gt;Qt-Linguist files (i.e. those with a &lt;tt&gt;.ts&lt;/tt&gt; file name suffix) are shown with a Linguist icon. The context menu of these files allows you to start Qt-Linguist with that file.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="284"/>
+        <location filename="../UI/Browser.py" line="286"/>
         <source>Open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="233"/>
+        <location filename="../UI/Browser.py" line="235"/>
         <source>Run unittest...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>Show Mime-Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="316"/>
+        <location filename="../UI/Browser.py" line="318"/>
         <source>Copy Path to Clipboard</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="260"/>
+        <location filename="../UI/Browser.py" line="262"/>
         <source>Open in Hex Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="263"/>
+        <location filename="../UI/Browser.py" line="265"/>
         <source>Open in Icon Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="342"/>
+        <location filename="../UI/Browser.py" line="344"/>
         <source>New toplevel directory...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="298"/>
+        <location filename="../UI/Browser.py" line="300"/>
         <source>Add as toplevel directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="301"/>
+        <location filename="../UI/Browser.py" line="303"/>
         <source>Remove from toplevel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="305"/>
+        <location filename="../UI/Browser.py" line="307"/>
         <source>Refresh directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="309"/>
+        <location filename="../UI/Browser.py" line="311"/>
         <source>Find in this directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="328"/>
+        <location filename="../UI/Browser.py" line="330"/>
         <source>Goto</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="435"/>
+        <location filename="../UI/Browser.py" line="437"/>
         <source>Line {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="528"/>
+        <location filename="../UI/Browser.py" line="531"/>
         <source>The mime type of the file could not be determined.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="546"/>
+        <location filename="../UI/Browser.py" line="549"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="643"/>
+        <location filename="../UI/Browser.py" line="646"/>
         <source>New toplevel directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="312"/>
+        <location filename="../UI/Browser.py" line="314"/>
         <source>Find &amp;&amp; Replace in this directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="241"/>
+        <location filename="../UI/Browser.py" line="243"/>
         <source>Refresh Source File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="214"/>
+        <location filename="../UI/Browser.py" line="216"/>
         <source>Show Hidden Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="221"/>
-        <source>New</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/Browser.py" line="223"/>
+        <source>New</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/Browser.py" line="225"/>
         <source>Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="226"/>
+        <location filename="../UI/Browser.py" line="228"/>
         <source>File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="323"/>
+        <location filename="../UI/Browser.py" line="325"/>
         <source>Delete</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>New Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="861"/>
+        <location filename="../UI/Browser.py" line="864"/>
         <source>Name for new directory:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="902"/>
+        <location filename="../UI/Browser.py" line="905"/>
         <source>A file or directory named &lt;b&gt;{0}&lt;/b&gt; exists already. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>&lt;p&gt;The directory &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>New File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="894"/>
+        <location filename="../UI/Browser.py" line="897"/>
         <source>Name for new file:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="942"/>
+        <location filename="../UI/Browser.py" line="945"/>
         <source>Do you really want to move this file to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="946"/>
+        <location filename="../UI/Browser.py" line="949"/>
         <source>Do you really want to delete this file?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>Delete File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>&lt;p&gt;The selected file &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="979"/>
+        <location filename="../UI/Browser.py" line="982"/>
         <source>Do you really want to move this directory to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="983"/>
+        <location filename="../UI/Browser.py" line="986"/>
         <source>Do you really want to delete this directory?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>Delete Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>&lt;p&gt;The selected directory &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1023"/>
+        <location filename="../UI/Browser.py" line="1026"/>
         <source>Do you really want to move these files to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1027"/>
+        <location filename="../UI/Browser.py" line="1030"/>
         <source>Do you really want to delete these files?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1032"/>
+        <location filename="../UI/Browser.py" line="1035"/>
         <source>Delete Files</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3123,6 +3138,32 @@
     </message>
 </context>
 <context>
+    <name>ClassItem</name>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="176"/>
+        <source>Class Attributes:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="211"/>
+        <source>none</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="191"/>
+        <source>Instance Attributes:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="210"/>
+        <source>Methods:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>ClearPrivateDataDialog</name>
     <message>
         <location filename="../UI/ClearPrivateDataDialog.ui" line="14"/>
@@ -4593,7 +4634,7 @@
 <context>
     <name>CodingError</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="131"/>
+        <location filename="../Utilities/__init__.py" line="132"/>
         <source>The coding &apos;{0}&apos; is wrong for the given text.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6895,7 +6936,7 @@
 <context>
     <name>DebugUI</name>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1980"/>
+        <location filename="../Debugger/DebugUI.py" line="1981"/>
         <source>Run Script</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6915,7 +6956,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>Run Project</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7015,7 +7056,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2121"/>
+        <location filename="../Debugger/DebugUI.py" line="2122"/>
         <source>Debug Script</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7035,7 +7076,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>Debug Project</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7404,67 +7445,67 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>Breakpoint Condition Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>&lt;p&gt;The condition of the breakpoint &lt;b&gt;{0}, {1}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>Watch Expression Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>&lt;p&gt;The watch expression &lt;b&gt;{0}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1530"/>
+        <location filename="../Debugger/DebugUI.py" line="1531"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; already exists.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1535"/>
+        <location filename="../Debugger/DebugUI.py" line="1536"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; for the variable &lt;b&gt;{1}&lt;/b&gt; already exists.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1540"/>
+        <location filename="../Debugger/DebugUI.py" line="1541"/>
         <source>Watch expression already exists</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1709"/>
+        <location filename="../Debugger/DebugUI.py" line="1710"/>
         <source>Coverage of Project</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1690"/>
+        <location filename="../Debugger/DebugUI.py" line="1691"/>
         <source>Coverage of Script</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>There is no main script defined for the current project. Aborting</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1854"/>
+        <location filename="../Debugger/DebugUI.py" line="1855"/>
         <source>Profile of Project</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1835"/>
+        <location filename="../Debugger/DebugUI.py" line="1836"/>
         <source>Profile of Script</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>There is no main script defined for the current project. No debugging possible.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7489,7 +7530,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1418"/>
+        <location filename="../Debugger/DebugUI.py" line="1419"/>
         <source>No locals available.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -9777,9 +9818,17 @@
 </source>
         <translation type="unfinished"></translation>
     </message>
-    <message>
-        <location filename="../E5Graphics/E5GraphicsView.py" line="417"/>
-        <source>{0}, Page {1}</source>
+</context>
+<context>
+    <name>E5JsonServer</name>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>JSON Protocol Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>&lt;p&gt;The response received from the client could not be decoded. Please report this issue with the received data to the eric bugs email address.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;&lt;p&gt;Data:&lt;br/&gt;{1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -11267,7 +11316,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7944"/>
+        <location filename="../QScintilla/Editor.py" line="7941"/>
         <source>Check spelling...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -11982,52 +12031,52 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Imports Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Include imports from external modules?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Application Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Include module names?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7947"/>
+        <location filename="../QScintilla/Editor.py" line="7944"/>
         <source>Add to dictionary</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7949"/>
+        <location filename="../QScintilla/Editor.py" line="7946"/>
         <source>Ignore All</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>Sort Lines</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>The selection contains illegal data for a numerical sort.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>Register Mouse Click Handler</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>A mouse click handler for &quot;{0}&quot; was already registered by &quot;{1}&quot;. Aborting request by &quot;{2}&quot;...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12052,12 +12101,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>EditorConfig Properties</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>&lt;p&gt;The EditorConfig properties for file &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12102,7 +12151,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8766"/>
+        <location filename="../QScintilla/Editor.py" line="8763"/>
         <source>Generate Docstring</source>
         <translation type="unfinished"></translation>
     </message>
@@ -18450,7 +18499,7 @@
 <context>
     <name>FileDialogWizardDialog</name>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="72"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="73"/>
         <source>QFileDialog Wizard</source>
         <translation type="unfinished"></translation>
     </message>
@@ -18680,7 +18729,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="89"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="90"/>
         <source>Test</source>
         <translation type="unfinished"></translation>
     </message>
@@ -18725,7 +18774,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="67"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="68"/>
         <source>E5FileDialog Wizard</source>
         <translation type="unfinished"></translation>
     </message>
@@ -26143,27 +26192,27 @@
 <context>
     <name>Globals</name>
     <message>
-        <location filename="../Globals/__init__.py" line="451"/>
+        <location filename="../Globals/__init__.py" line="455"/>
         <source>{0:4.2f} Bytes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Globals/__init__.py" line="455"/>
-        <source>{0:4.2f} KiB</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../Globals/__init__.py" line="459"/>
-        <source>{0:4.2f} MiB</source>
+        <source>{0:4.2f} KiB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="463"/>
-        <source>{0:4.2f} GiB</source>
+        <source>{0:4.2f} MiB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="467"/>
+        <source>{0:4.2f} GiB</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Globals/__init__.py" line="471"/>
         <source>{0:4.2f} TiB</source>
         <translation type="unfinished"></translation>
     </message>
@@ -28317,7 +28366,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2178"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2179"/>
         <source>Apply changegroups</source>
         <translation type="unfinished"></translation>
     </message>
@@ -28347,267 +28396,267 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1838"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1839"/>
         <source>Created new branch &lt;{0}&gt;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1849"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1850"/>
         <source>Showing current branch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1939"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1940"/>
         <source>Verifying the integrity of the Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1953"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1954"/>
         <source>Showing the combined configuration settings</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1966"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1967"/>
         <source>Showing aliases for remote repositories</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1979"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1980"/>
         <source>Recovering from interrupted transaction</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1992"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1993"/>
         <source>Identifying project directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>Create .hgignore file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2119"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2120"/>
         <source>Create changegroup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2076"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2077"/>
         <source>Mercurial Changegroup Files (*.hg)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2093"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2094"/>
         <source>&lt;p&gt;The Mercurial changegroup file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2129"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2130"/>
         <source>Preview changegroup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2157"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2158"/>
         <source>Mercurial Changegroup Files (*.hg);;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2166"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2167"/>
         <source>Shall the working directory be updated?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2197"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2198"/>
         <source>Bisect subcommand ({0}) invalid.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2217"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2218"/>
         <source>Mercurial Bisect ({0})</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2240"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2241"/>
         <source>Removing files from the Mercurial repository only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2283"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2284"/>
         <source>Backing out changeset</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2263"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2264"/>
         <source>No revision given. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2299"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2300"/>
         <source>Rollback last transaction</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2292"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2293"/>
         <source>Are you sure you want to rollback the last transaction?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2351"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2352"/>
         <source>Import Patch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2392"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2393"/>
         <source>Export Patches</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2431"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2432"/>
         <source>Change Phase</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2480"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2481"/>
         <source>Copy Changesets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2520"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2521"/>
         <source>Copy Changesets (Continue)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2568"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2569"/>
         <source>Create Unversioned Archive</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2663"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2664"/>
         <source>Add Sub-repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2695"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2696"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be read.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2645"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2646"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub already contains an entry &lt;b&gt;{0}&lt;/b&gt;. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be written to.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>Remove Sub-repositories</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2684"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2685"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub does not exist. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>Mercurial Command Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2799"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2800"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be restarted.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3049"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3050"/>
         <source>Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Delete Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Select the bookmark to be deleted:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3074"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3075"/>
         <source>Delete Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3098"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3099"/>
         <source>Rename Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3132"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3133"/>
         <source>Move Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Pull Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Select the bookmark to be pulled:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3213"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3214"/>
         <source>Pulling bookmark from a remote Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Push Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Select the bookmark to be push:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3253"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3254"/>
         <source>Pushing bookmark to a remote Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>Delete All Backups</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>&lt;p&gt;Do you really want to delete all backup bundles stored the backup area &lt;b&gt;{0}&lt;/b&gt;?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2532"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2533"/>
         <source>Copy Changesets (Stop)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2545"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2546"/>
         <source>Copy Changesets (Abort)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -29413,42 +29462,42 @@
 <context>
     <name>HgClient</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="91"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="92"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="140"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="141"/>
         <source>Did not receive the &apos;hello&apos; message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="142"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="143"/>
         <source>Received data on unexpected channel.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="147"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="148"/>
         <source>Bad &apos;hello&apos; message, expected &apos;capabilities: &apos; but got &apos;{0}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="153"/>
         <source>&apos;capabilities&apos; message did not contain any capability.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="160"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="161"/>
         <source>Bad &apos;hello&apos; message, expected &apos;encoding: &apos; but got &apos;{0}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="165"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="166"/>
         <source>&apos;encoding&apos; message did not contain any encoding.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="379"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="380"/>
         <source>For message see output dialog.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -34232,52 +34281,52 @@
 <context>
     <name>HgServeDialog</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="50"/>
         <source>Mercurial Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="53"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="54"/>
         <source>Start Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="59"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="60"/>
         <source>Stop Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="65"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="66"/>
         <source>Start Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="73"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="74"/>
         <source>Enter the server port</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="79"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="80"/>
         <source>Select the style to use</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="83"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="84"/>
         <source>Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="90"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="91"/>
         <source>Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>Process Generation Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -35827,17 +35876,17 @@
 <context>
     <name>HgUtilities</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="93"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="128"/>
         <source>The hg process finished with the exit code {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="98"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="133"/>
         <source>The hg process did not finish within 30s.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="102"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="137"/>
         <source>Could not start the hg executable.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -38043,35 +38092,40 @@
 <context>
     <name>ImportsDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>Parsing modules...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>%v/%m Modules</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="95"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="107"/>
         <source>Imports Diagramm</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="124"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="136"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a Python package.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="410"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>InputDialogWizard</name>
@@ -39724,22 +39778,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="252"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="251"/>
         <source>Yes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="254"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="253"/>
         <source>No</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Delete Channel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Do you really want to delete channel &lt;b&gt;{0}&lt;/b&gt;?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -47616,43 +47670,48 @@
 <context>
     <name>PackageDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>Parsing modules...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>%v/%m Modules</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="158"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="172"/>
         <source>Package Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="205"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="219"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a package.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="214"/>
-        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="231"/>
-        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="230"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules or subpackages.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="247"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes or subpackages.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="555"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -49107,42 +49166,42 @@
 <context>
     <name>PixmapDiagram</name>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>Pixmap-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="93"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="96"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="98"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="101"/>
         <source>Print</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="103"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="106"/>
         <source>Print Preview</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="133"/>
-        <source>Window</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../Graphics/PixmapDiagram.py" line="137"/>
+        <source>Window</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PixmapDiagram.py" line="141"/>
         <source>Graphics</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; cannot be displayed. The format is not supported.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="391"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="416"/>
         <source>Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -49476,12 +49535,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="492"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="476"/>
         <source>Error installing plugin. Reason: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="501"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="485"/>
         <source>Unspecific exception installing plugin.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -49499,52 +49558,52 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="404"/>
+        <location filename="../PluginManager/PluginManager.py" line="410"/>
         <source>Module is missing the &apos;autoactivate&apos; attribute.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="415"/>
+        <location filename="../PluginManager/PluginManager.py" line="421"/>
         <source>Module is missing the &apos;pluginType&apos; and/or &apos;pluginTypename&apos; attributes.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="437"/>
+        <location filename="../PluginManager/PluginManager.py" line="446"/>
         <source>Module failed to load. Error: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="614"/>
+        <location filename="../PluginManager/PluginManager.py" line="623"/>
         <source>Incompatible plugin activation method.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>Plugin Manager Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>&lt;p&gt;The plugin download directory &lt;b&gt;{0}&lt;/b&gt; could not be created. Please configure it via the configuration dialog.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>Error downloading file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>&lt;p&gt;Could not download the requested file from {0}.&lt;/p&gt;&lt;p&gt;Error: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>New plugin versions available</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>&lt;p&gt;There are new plug-ins or plug-in updates available. Use the plug-in repository dialog to get them.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51633,7 +51692,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>Create Package List</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51643,7 +51702,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>Create Plugin Archive</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51763,37 +51822,37 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5264"/>
+        <location filename="../Project/Project.py" line="5265"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; already exists.&lt;/p&gt;&lt;p&gt;Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5331"/>
+        <location filename="../Project/Project.py" line="5332"/>
         <source>The project does not have a main script defined. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5467"/>
+        <location filename="../Project/Project.py" line="5468"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be stored in the archive. Ignoring it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5536"/>
+        <location filename="../Project/Project.py" line="5537"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt; &lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5367"/>
+        <location filename="../Project/Project.py" line="5368"/>
         <source>Create Plugin Archives</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51813,37 +51872,37 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5345"/>
+        <location filename="../Project/Project.py" line="5346"/>
         <source>Select package lists:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Creating plugin archives...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Abort</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>%v/%m Archives</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5378"/>
+        <location filename="../Project/Project.py" line="5379"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5356"/>
+        <location filename="../Project/Project.py" line="5357"/>
         <source>&lt;p&gt;No package list files (PKGLIST*) available or selected. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5405"/>
+        <location filename="../Project/Project.py" line="5406"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; is not ready yet.&lt;/p&gt;&lt;p&gt;Please rework it and delete the&apos;; initial_list&apos; line of the header.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51883,7 +51942,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>Execute Make</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51903,7 +51962,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5744"/>
+        <location filename="../Project/Project.py" line="5745"/>
         <source>Test for Changes</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51928,27 +51987,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5692"/>
+        <location filename="../Project/Project.py" line="5693"/>
         <source>The make process did not start.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5737"/>
+        <location filename="../Project/Project.py" line="5738"/>
         <source>The make process crashed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5747"/>
+        <location filename="../Project/Project.py" line="5748"/>
         <source>&lt;p&gt;There are changes that require the configured make target &lt;b&gt;{0}&lt;/b&gt; to be rebuilt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5752"/>
+        <location filename="../Project/Project.py" line="5753"/>
         <source>&lt;p&gt;There are changes that require the default make target to be rebuilt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>The makefile contains errors.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -52023,17 +52082,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5432"/>
+        <location filename="../Project/Project.py" line="5433"/>
         <source>&lt;p&gt;The eric plugin archive file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5484"/>
+        <location filename="../Project/Project.py" line="5485"/>
         <source>&lt;p&gt;The eric plugin archive files were created with some errors.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5492"/>
+        <location filename="../Project/Project.py" line="5493"/>
         <source>&lt;p&gt;The eric plugin archive files were created successfully.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -52837,7 +52896,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>Show Mime-Type</source>
         <translation type="unfinished"></translation>
     </message>
@@ -52892,27 +52951,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="272"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="273"/>
         <source>The mime type of the file could not be determined.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="286"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="287"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Delete files/directories</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Do you really want to delete these entries from the project?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -53649,32 +53708,32 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Include class attributes?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Imports Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Include imports from external modules?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Package Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Application Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Include module names?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -65480,37 +65539,37 @@
 <context>
     <name>SvgDiagram</name>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="50"/>
+        <location filename="../Graphics/SvgDiagram.py" line="53"/>
         <source>SVG-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="92"/>
+        <location filename="../Graphics/SvgDiagram.py" line="95"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="97"/>
+        <location filename="../Graphics/SvgDiagram.py" line="100"/>
         <source>Print</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="102"/>
+        <location filename="../Graphics/SvgDiagram.py" line="105"/>
         <source>Print Preview</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="132"/>
-        <source>Window</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../Graphics/SvgDiagram.py" line="136"/>
+        <source>Window</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/SvgDiagram.py" line="140"/>
         <source>Graphics</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="363"/>
+        <location filename="../Graphics/SvgDiagram.py" line="385"/>
         <source>Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -71198,65 +71257,105 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="60"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="71"/>
         <source>Creation Time:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="77"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="92"/>
         <source>&amp;Priority:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="87"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="102"/>
         <source>Select the task priority</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="94"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="109"/>
         <source>High</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="99"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="114"/>
         <source>Normal</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="104"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="119"/>
         <source>Low</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="112"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="175"/>
         <source>Select to indicate a task related to the current project</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="115"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="178"/>
         <source>Project &amp;Task</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="128"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="162"/>
         <source>Select to mark this task as completed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="131"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="165"/>
         <source>T&amp;ask completed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="138"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="223"/>
         <source>Filename:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="155"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="216"/>
         <source>Line:</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="127"/>
+        <source>Type:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="134"/>
+        <source>Select the task type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="41"/>
+        <source>Bugfix</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="42"/>
+        <source>Warning</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="43"/>
+        <source>ToDo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="44"/>
+        <source>Note</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="45"/>
+        <source>Test</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="46"/>
+        <source>Documentation</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>TaskViewer</name>
@@ -71371,47 +71470,47 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>Activate task filter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>The task filter doesn&apos;t have any active filters. Do you want to configure the filter settings?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Scan Filter Patterns</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Enter filename patterns of files to be excluded separated by a comma:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Extracting project tasks...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Abort</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>%v/%m Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="734"/>
+        <location filename="../Tasks/TaskViewer.py" line="751"/>
         <source>Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="738"/>
+        <location filename="../Tasks/TaskViewer.py" line="755"/>
         <source>Extracting project tasks...
 {0}</source>
         <translation type="unfinished"></translation>
@@ -71420,22 +71519,22 @@
 <context>
     <name>TasksFile</name>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>Save Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>Read Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -73821,213 +73920,238 @@
 <context>
     <name>UMLClassDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="83"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="96"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; could not be found.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="145"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="159"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="394"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>UMLDialog</name>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="82"/>
+        <location filename="../Graphics/UMLDialog.py" line="113"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="87"/>
+        <location filename="../Graphics/UMLDialog.py" line="118"/>
         <source>Load</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="92"/>
+        <location filename="../Graphics/UMLDialog.py" line="123"/>
         <source>Save</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="97"/>
+        <location filename="../Graphics/UMLDialog.py" line="128"/>
         <source>Save As...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="102"/>
+        <location filename="../Graphics/UMLDialog.py" line="133"/>
         <source>Save as Image</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="107"/>
+        <location filename="../Graphics/UMLDialog.py" line="138"/>
         <source>Print</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="112"/>
+        <location filename="../Graphics/UMLDialog.py" line="143"/>
         <source>Print Preview</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="122"/>
+        <location filename="../Graphics/UMLDialog.py" line="153"/>
         <source>Window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="126"/>
+        <location filename="../Graphics/UMLDialog.py" line="157"/>
         <source>File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="178"/>
-        <source>Illegal diagram type &apos;{0}&apos; given.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>Save Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="274"/>
-        <source>Eric Graphics File (*.e5g);;All Files (*)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Graphics/UMLDialog.py" line="230"/>
+        <location filename="../Graphics/UMLDialog.py" line="257"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="386"/>
+        <location filename="../Graphics/UMLDialog.py" line="551"/>
         <source>Load Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="287"/>
+        <location filename="../Graphics/UMLDialog.py" line="518"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;&lt;p&gt;Invalid line: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="43"/>
+        <source>Class Diagram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="45"/>
+        <source>Package Diagram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="47"/>
+        <source>Imports Diagram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="49"/>
+        <source>Application Diagram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="105"/>
+        <source>Illegal Diagram Type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="289"/>
+        <source>Eric Graphics File (*.egj);;Eric Text Graphics File (*.e5g);;All Files (*)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>UMLGraphicsView</name>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="83"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="85"/>
         <source>Delete shapes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="88"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="90"/>
         <source>Increase width by {0} points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="95"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="97"/>
         <source>Increase height by {0} points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="102"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="104"/>
         <source>Decrease width by {0} points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="109"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="111"/>
         <source>Decrease height by {0} points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="116"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="118"/>
         <source>Set size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="121"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="123"/>
         <source>Re-Scan</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="126"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="128"/>
         <source>Re-Layout</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="131"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="133"/>
         <source>Align Left</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="138"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="140"/>
         <source>Align Center Horizontal</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="145"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="147"/>
         <source>Align Right</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="152"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="154"/>
         <source>Align Top</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="159"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="161"/>
         <source>Align Center Vertical</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="166"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="168"/>
         <source>Align Bottom</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="219"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="233"/>
         <source>Graphics</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>Save Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="341"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="360"/>
         <source>Portable Network Graphics (*.png);;Scalable Vector Graphics (*.svg)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="356"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="375"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -74111,7 +74235,7 @@
 <context>
     <name>UnittestDialog</name>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>Unittest</source>
         <translation type="unfinished"></translation>
     </message>
@@ -74342,42 +74466,42 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="699"/>
         <source>Preparing Testsuite</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="989"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="991"/>
         <source>Running</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1033"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1035"/>
         <source>Failure: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1048"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1050"/>
         <source>Error: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1063"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1065"/>
         <source>    Skipped: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1081"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1083"/>
         <source>    Expected Failure</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1098"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1100"/>
         <source>    Unexpected Success</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1162"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1164"/>
         <source>Show Source</source>
         <translation type="unfinished"></translation>
     </message>
@@ -74444,17 +74568,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="707"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
         <source>Unittest with auto-discovery</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="791"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="787"/>
         <source>You must enter a start directory for auto-discovery.</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="1013"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1015"/>
         <source>Ran %n test(s) in {0:.3f}s</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -74486,29 +74610,29 @@
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="623"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="619"/>
         <source>Discovered %n Test(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
         </translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="628"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="624"/>
         <source>&lt;p&gt;Unable to discover tests.&lt;/p&gt;&lt;p&gt;{0}&lt;br/&gt;{1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="694"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="690"/>
         <source>You must select auto-discovery or enter a test suite file or a dotted test name.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="716"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="712"/>
         <source>&lt;Unnamed Test&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>&lt;p&gt;Unable to run test &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;{1}&lt;br/&gt;{2}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -74538,7 +74662,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="724"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="720"/>
         <source>No test case has been selected. Shall all test cases be run?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -74547,6 +74671,11 @@
         <source>Python3 Files ({0});;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../PyUnit/UnittestDialog.py" line="881"/>
+        <source>No unittest were found. Aborting...</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>UnknownDevicesDialog</name>
@@ -74785,2322 +74914,2322 @@
 <context>
     <name>UserInterface</name>
     <message>
-        <location filename="../UI/UserInterface.py" line="275"/>
+        <location filename="../UI/UserInterface.py" line="276"/>
         <source>Initializing Plugin Manager...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="282"/>
+        <location filename="../UI/UserInterface.py" line="283"/>
         <source>Generating Main User Interface...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="332"/>
+        <location filename="../UI/UserInterface.py" line="333"/>
         <source>Setting up connections...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="577"/>
+        <location filename="../UI/UserInterface.py" line="580"/>
         <source>Initializing Tools...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="587"/>
+        <location filename="../UI/UserInterface.py" line="590"/>
         <source>Registering Objects...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="624"/>
+        <location filename="../UI/UserInterface.py" line="627"/>
         <source>Initializing Actions...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="626"/>
+        <location filename="../UI/UserInterface.py" line="629"/>
         <source>Initializing Menus...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="628"/>
+        <location filename="../UI/UserInterface.py" line="631"/>
         <source>Initializing Toolbars...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="630"/>
+        <location filename="../UI/UserInterface.py" line="633"/>
         <source>Initializing Statusbar...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="657"/>
+        <location filename="../UI/UserInterface.py" line="660"/>
         <source>Initializing Single Application Server...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="667"/>
+        <location filename="../UI/UserInterface.py" line="670"/>
         <source>Activating Plugins...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="669"/>
+        <location filename="../UI/UserInterface.py" line="672"/>
         <source>Generating Plugins Toolbars...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="683"/>
+        <location filename="../UI/UserInterface.py" line="686"/>
         <source>Restoring Toolbarmanager...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="692"/>
+        <location filename="../UI/UserInterface.py" line="695"/>
         <source>Setting View Profile...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="705"/>
+        <location filename="../UI/UserInterface.py" line="708"/>
         <source>Reading Tasks...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="710"/>
+        <location filename="../UI/UserInterface.py" line="713"/>
         <source>Reading Templates...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="715"/>
+        <location filename="../UI/UserInterface.py" line="718"/>
         <source>Starting Debugger...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
-        <source>Left Toolbox</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
-        <source>Horizontal Toolbox</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
-        <source>Right Toolbox</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
-        <source>Project-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
-        <source>Multiproject-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
-        <source>Template-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
-        <source>Debug-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1124"/>
-        <source>Cooperation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
-        <source>IRC</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
-        <source>Task-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
-        <source>Log-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
-        <source>Shell</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
-        <source>File-Browser</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1180"/>
-        <source>Symbols</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1189"/>
-        <source>Numbers</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1602"/>
-        <source>{0} - Passive Mode</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1609"/>
-        <source>{0} - {1} - Passive Mode</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1613"/>
-        <source>{0} - {1} - {2} - Passive Mode</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
-        <source>Quit</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
-        <source>&amp;Quit</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
-        <source>Ctrl+Q</source>
-        <comment>File|Quit</comment>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1642"/>
-        <source>Quit the IDE</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1643"/>
-        <source>&lt;b&gt;Quit the IDE&lt;/b&gt;&lt;p&gt;This quits the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
-        <source>New Window</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
-        <source>New &amp;Window</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
-        <source>Ctrl+Shift+N</source>
-        <comment>File|New Window</comment>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1714"/>
-        <source>Edit Profile</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1720"/>
-        <source>Activate the edit view profile</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1722"/>
-        <source>&lt;b&gt;Edit Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Edit View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1731"/>
-        <source>Debug Profile</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1737"/>
-        <source>Activate the debug view profile</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1739"/>
-        <source>&lt;b&gt;Debug Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Debug View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
-        <source>&amp;Project-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
-        <source>Alt+Shift+P</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1754"/>
-        <source>Switch the input focus to the Project-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1756"/>
-        <source>&lt;b&gt;Activate Project-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Project-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
-        <source>&amp;Multiproject-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
-        <source>Alt+Shift+M</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1771"/>
-        <source>Switch the input focus to the Multiproject-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1773"/>
-        <source>&lt;b&gt;Activate Multiproject-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Multiproject-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
-        <source>&amp;Debug-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
-        <source>Alt+Shift+D</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1789"/>
-        <source>Switch the input focus to the Debug-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1791"/>
-        <source>&lt;b&gt;Activate Debug-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Debug-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
-        <source>&amp;Shell</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
-        <source>Alt+Shift+S</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1807"/>
-        <source>Switch the input focus to the Shell window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1809"/>
-        <source>&lt;b&gt;Activate Shell&lt;/b&gt;&lt;p&gt;This switches the input focus to the Shell window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
-        <source>&amp;File-Browser</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
-        <source>Alt+Shift+F</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1824"/>
-        <source>Switch the input focus to the File-Browser window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1826"/>
-        <source>&lt;b&gt;Activate File-Browser&lt;/b&gt;&lt;p&gt;This switches the input focus to the File-Browser window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
-        <source>Lo&amp;g-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
-        <source>Alt+Shift+G</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1841"/>
-        <source>Switch the input focus to the Log-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1843"/>
-        <source>&lt;b&gt;Activate Log-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Log-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
-        <source>&amp;Task-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
-        <source>Alt+Shift+T</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1859"/>
-        <source>Switch the input focus to the Task-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1861"/>
-        <source>&lt;b&gt;Activate Task-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Task-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
-        <source>Templ&amp;ate-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
-        <source>Alt+Shift+A</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1878"/>
-        <source>Switch the input focus to the Template-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1880"/>
-        <source>&lt;b&gt;Activate Template-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Template-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
-        <source>&amp;Left Toolbox</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="1893"/>
+        <source>Left Toolbox</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1918"/>
+        <source>Horizontal Toolbox</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1905"/>
+        <source>Right Toolbox</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1751"/>
+        <source>Project-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1768"/>
+        <source>Multiproject-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1875"/>
+        <source>Template-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1786"/>
+        <source>Debug-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1127"/>
+        <source>Cooperation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1993"/>
+        <source>IRC</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1856"/>
+        <source>Task-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1838"/>
+        <source>Log-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1804"/>
+        <source>Shell</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1821"/>
+        <source>File-Browser</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1183"/>
+        <source>Symbols</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1192"/>
+        <source>Numbers</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1605"/>
+        <source>{0} - Passive Mode</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1612"/>
+        <source>{0} - {1} - Passive Mode</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1616"/>
+        <source>{0} - {1} - {2} - Passive Mode</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1639"/>
+        <source>Quit</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1639"/>
+        <source>&amp;Quit</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1639"/>
+        <source>Ctrl+Q</source>
+        <comment>File|Quit</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1645"/>
+        <source>Quit the IDE</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1646"/>
+        <source>&lt;b&gt;Quit the IDE&lt;/b&gt;&lt;p&gt;This quits the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1698"/>
+        <source>New Window</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1698"/>
+        <source>New &amp;Window</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1698"/>
+        <source>Ctrl+Shift+N</source>
+        <comment>File|New Window</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1717"/>
+        <source>Edit Profile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1723"/>
+        <source>Activate the edit view profile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1725"/>
+        <source>&lt;b&gt;Edit Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Edit View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1734"/>
+        <source>Debug Profile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1740"/>
+        <source>Activate the debug view profile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1742"/>
+        <source>&lt;b&gt;Debug Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Debug View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1751"/>
+        <source>&amp;Project-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1751"/>
+        <source>Alt+Shift+P</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1757"/>
+        <source>Switch the input focus to the Project-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1759"/>
+        <source>&lt;b&gt;Activate Project-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Project-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1768"/>
+        <source>&amp;Multiproject-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1768"/>
+        <source>Alt+Shift+M</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1774"/>
+        <source>Switch the input focus to the Multiproject-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1776"/>
+        <source>&lt;b&gt;Activate Multiproject-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Multiproject-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1786"/>
+        <source>&amp;Debug-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1786"/>
+        <source>Alt+Shift+D</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1792"/>
+        <source>Switch the input focus to the Debug-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1794"/>
+        <source>&lt;b&gt;Activate Debug-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Debug-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1804"/>
+        <source>&amp;Shell</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1804"/>
+        <source>Alt+Shift+S</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1810"/>
+        <source>Switch the input focus to the Shell window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1812"/>
+        <source>&lt;b&gt;Activate Shell&lt;/b&gt;&lt;p&gt;This switches the input focus to the Shell window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1821"/>
+        <source>&amp;File-Browser</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1821"/>
+        <source>Alt+Shift+F</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1827"/>
+        <source>Switch the input focus to the File-Browser window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1829"/>
+        <source>&lt;b&gt;Activate File-Browser&lt;/b&gt;&lt;p&gt;This switches the input focus to the File-Browser window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1838"/>
+        <source>Lo&amp;g-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1838"/>
+        <source>Alt+Shift+G</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1844"/>
+        <source>Switch the input focus to the Log-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1846"/>
+        <source>&lt;b&gt;Activate Log-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Log-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1856"/>
+        <source>&amp;Task-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1856"/>
+        <source>Alt+Shift+T</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1862"/>
+        <source>Switch the input focus to the Task-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1864"/>
+        <source>&lt;b&gt;Activate Task-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Task-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1875"/>
+        <source>Templ&amp;ate-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1875"/>
+        <source>Alt+Shift+A</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1881"/>
+        <source>Switch the input focus to the Template-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1883"/>
+        <source>&lt;b&gt;Activate Template-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Template-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1893"/>
+        <source>&amp;Left Toolbox</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1896"/>
         <source>Toggle the Left Toolbox window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1894"/>
+        <location filename="../UI/UserInterface.py" line="1897"/>
         <source>&lt;b&gt;Toggle the Left Toolbox window&lt;/b&gt;&lt;p&gt;If the Left Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>&amp;Right Toolbox</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1906"/>
+        <location filename="../UI/UserInterface.py" line="1909"/>
         <source>Toggle the Right Toolbox window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1907"/>
+        <location filename="../UI/UserInterface.py" line="1910"/>
         <source>&lt;b&gt;Toggle the Right Toolbox window&lt;/b&gt;&lt;p&gt;If the Right Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>&amp;Horizontal Toolbox</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1919"/>
+        <location filename="../UI/UserInterface.py" line="1922"/>
         <source>Toggle the Horizontal Toolbox window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1921"/>
+        <location filename="../UI/UserInterface.py" line="1924"/>
         <source>&lt;b&gt;Toggle the Horizontal Toolbox window&lt;/b&gt;&lt;p&gt;If the Horizontal Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>Left Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>&amp;Left Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1933"/>
+        <location filename="../UI/UserInterface.py" line="1936"/>
         <source>Toggle the left sidebar window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1934"/>
+        <location filename="../UI/UserInterface.py" line="1937"/>
         <source>&lt;b&gt;Toggle the left sidebar window&lt;/b&gt;&lt;p&gt;If the left sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>Right Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>&amp;Right Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1946"/>
+        <location filename="../UI/UserInterface.py" line="1949"/>
         <source>Toggle the right sidebar window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1948"/>
+        <location filename="../UI/UserInterface.py" line="1951"/>
         <source>&lt;b&gt;Toggle the right sidebar window&lt;/b&gt;&lt;p&gt;If the right sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>Bottom Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>&amp;Bottom Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1960"/>
+        <location filename="../UI/UserInterface.py" line="1963"/>
         <source>Toggle the bottom sidebar window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1962"/>
+        <location filename="../UI/UserInterface.py" line="1965"/>
         <source>&lt;b&gt;Toggle the bottom sidebar window&lt;/b&gt;&lt;p&gt;If the bottom sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Cooperation-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Co&amp;operation-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Alt+Shift+O</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1977"/>
+        <location filename="../UI/UserInterface.py" line="1980"/>
         <source>Switch the input focus to the Cooperation-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1979"/>
+        <location filename="../UI/UserInterface.py" line="1982"/>
         <source>&lt;b&gt;Activate Cooperation-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Cooperation-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>&amp;IRC</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1996"/>
+        <location filename="../UI/UserInterface.py" line="1999"/>
         <source>Switch the input focus to the IRC window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1998"/>
+        <location filename="../UI/UserInterface.py" line="2001"/>
         <source>&lt;b&gt;Activate IRC&lt;/b&gt;&lt;p&gt;This switches the input focus to the IRC window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Symbols-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>S&amp;ymbols-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Alt+Shift+Y</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2014"/>
+        <location filename="../UI/UserInterface.py" line="2017"/>
         <source>Switch the input focus to the Symbols-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2016"/>
+        <location filename="../UI/UserInterface.py" line="2019"/>
         <source>&lt;b&gt;Activate Symbols-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Symbols-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Numbers-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Num&amp;bers-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Alt+Shift+B</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2033"/>
+        <location filename="../UI/UserInterface.py" line="2036"/>
         <source>Switch the input focus to the Numbers-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2035"/>
+        <location filename="../UI/UserInterface.py" line="2038"/>
         <source>&lt;b&gt;Activate Numbers-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Numbers-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>What&apos;s This?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>&amp;What&apos;s This?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>Shift+F1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2126"/>
+        <location filename="../UI/UserInterface.py" line="2129"/>
         <source>Context sensitive help</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2127"/>
+        <location filename="../UI/UserInterface.py" line="2130"/>
         <source>&lt;b&gt;Display context sensitive help&lt;/b&gt;&lt;p&gt;In What&apos;s This? mode, the mouse cursor shows an arrow with a question mark, and you can click on the interface elements to get a short description of what they do and how to use them. In dialogs, this feature can be accessed using the context help button in the titlebar.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>Helpviewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>&amp;Helpviewer...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>F1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2144"/>
+        <location filename="../UI/UserInterface.py" line="2147"/>
         <source>Open the helpviewer window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show Versions</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show &amp;Versions</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2168"/>
+        <location filename="../UI/UserInterface.py" line="2171"/>
         <source>Display version information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2170"/>
+        <location filename="../UI/UserInterface.py" line="2173"/>
         <source>&lt;b&gt;Show Versions&lt;/b&gt;&lt;p&gt;Display version information.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../UI/UserInterface.py" line="2183"/>
+        <source>Check for Updates</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../UI/UserInterface.py" line="2180"/>
-        <source>Check for Updates</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2177"/>
         <source>Check for &amp;Updates...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show downloadable versions</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show &amp;downloadable versions...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2192"/>
+        <location filename="../UI/UserInterface.py" line="2195"/>
         <source>Show the versions available for download</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2207"/>
+        <location filename="../UI/UserInterface.py" line="2210"/>
         <source>Show Error Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2203"/>
+        <location filename="../UI/UserInterface.py" line="2206"/>
         <source>Show Error &amp;Log...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2208"/>
+        <location filename="../UI/UserInterface.py" line="2211"/>
         <source>&lt;b&gt;Show Error Log...&lt;/b&gt;&lt;p&gt;Opens a dialog showing the most recent error log.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Report Bug</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2229"/>
+        <location filename="../UI/UserInterface.py" line="2232"/>
         <source>Report &amp;Bug...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2233"/>
+        <location filename="../UI/UserInterface.py" line="2236"/>
         <source>Report a bug</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2234"/>
+        <location filename="../UI/UserInterface.py" line="2237"/>
         <source>&lt;b&gt;Report Bug...&lt;/b&gt;&lt;p&gt;Opens a dialog to report a bug.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request Feature</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request &amp;Feature...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2245"/>
+        <location filename="../UI/UserInterface.py" line="2248"/>
         <source>Send a feature request</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2247"/>
+        <location filename="../UI/UserInterface.py" line="2250"/>
         <source>&lt;b&gt;Request Feature...&lt;/b&gt;&lt;p&gt;Opens a dialog to send a feature request.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3365"/>
-        <source>Unittest</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2256"/>
-        <source>&amp;Unittest...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2261"/>
-        <source>Start unittest dialog</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2262"/>
-        <source>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Perform unit tests. The dialog gives you the ability to select and run a unittest suite.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
-        <source>Unittest Restart</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
-        <source>&amp;Restart Unittest...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2275"/>
-        <source>Restart last unittest</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2276"/>
-        <source>&lt;b&gt;Restart Unittest&lt;/b&gt;&lt;p&gt;Restart the unittest performed last.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
-        <source>Unittest Rerun Failed</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
-        <source>Rerun Failed Tests...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2289"/>
-        <source>Rerun failed tests of the last run</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2291"/>
-        <source>&lt;b&gt;Rerun Failed Tests&lt;/b&gt;&lt;p&gt;Rerun all tests that failed during the last unittest run.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
-        <source>Unittest Script</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
-        <source>Unittest &amp;Script...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2305"/>
-        <source>Run unittest with current script</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2307"/>
-        <source>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Run unittest with current script.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
-        <source>Unittest Project</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
-        <source>Unittest &amp;Project...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2320"/>
-        <source>Run unittest with current project</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2322"/>
-        <source>&lt;b&gt;Unittest Project&lt;/b&gt;&lt;p&gt;Run unittest with current project.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
-        <source>Qt-Designer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
-        <source>Qt-&amp;Designer...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2347"/>
-        <source>Start Qt-Designer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2348"/>
-        <source>&lt;b&gt;Qt-Designer&lt;/b&gt;&lt;p&gt;Start Qt-Designer.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
-        <source>Qt-Linguist</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
-        <source>Qt-&amp;Linguist...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2373"/>
-        <source>Start Qt-Linguist</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2374"/>
-        <source>&lt;b&gt;Qt-Linguist&lt;/b&gt;&lt;p&gt;Start Qt-Linguist.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
-        <source>UI Previewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
-        <source>&amp;UI Previewer...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2388"/>
-        <source>Start the UI Previewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2389"/>
-        <source>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Start the UI Previewer.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
-        <source>Translations Previewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
-        <source>&amp;Translations Previewer...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2401"/>
-        <source>Start the Translations Previewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2403"/>
-        <source>&lt;b&gt;Translations Previewer&lt;/b&gt;&lt;p&gt;Start the Translations Previewer.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
-        <source>Compare Files</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
-        <source>&amp;Compare Files...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2428"/>
-        <source>Compare two files</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2416"/>
-        <source>&lt;b&gt;Compare Files&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
-        <source>Compare Files side by side</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
-        <source>Compare &amp;Files side by side...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2429"/>
-        <source>&lt;b&gt;Compare Files side by side&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files and show the result side by side.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
-        <source>SQL Browser</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
-        <source>SQL &amp;Browser...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2442"/>
-        <source>Browse a SQL database</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2443"/>
-        <source>&lt;b&gt;SQL Browser&lt;/b&gt;&lt;p&gt;Browse a SQL database.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2455"/>
-        <source>Mini Editor</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2450"/>
-        <source>Mini &amp;Editor...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2456"/>
-        <source>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Open a dialog with a simplified editor.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
-        <source>Hex Editor</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
-        <source>&amp;Hex Editor...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
-        <source>Icon Editor</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
-        <source>&amp;Icon Editor...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
-        <source>Snapshot</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
-        <source>&amp;Snapshot...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2511"/>
-        <source>Take snapshots of a screen region</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2513"/>
-        <source>&lt;b&gt;Snapshot&lt;/b&gt;&lt;p&gt;This opens a dialog to take snapshots of a screen region.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
-        <source>Preferences</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
-        <source>&amp;Preferences...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2526"/>
-        <source>Set the prefered configuration</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2528"/>
-        <source>&lt;b&gt;Preferences&lt;/b&gt;&lt;p&gt;Set the configuration items of the application with your prefered values.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
-        <source>Export Preferences</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
-        <source>E&amp;xport Preferences...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2542"/>
-        <source>Export the current configuration</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2544"/>
-        <source>&lt;b&gt;Export Preferences&lt;/b&gt;&lt;p&gt;Export the current configuration to a file.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
-        <source>Import Preferences</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
-        <source>I&amp;mport Preferences...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2556"/>
-        <source>Import a previously exported configuration</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2558"/>
-        <source>&lt;b&gt;Import Preferences&lt;/b&gt;&lt;p&gt;Import a previously exported configuration.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
-        <source>Reload APIs</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
-        <source>Reload &amp;APIs</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2569"/>
-        <source>Reload the API information</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2571"/>
-        <source>&lt;b&gt;Reload APIs&lt;/b&gt;&lt;p&gt;Reload the API information.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2583"/>
-        <source>Show external tools</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2578"/>
-        <source>Show external &amp;tools</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
-        <source>View Profiles</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
-        <source>&amp;View Profiles...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2599"/>
-        <source>Configure view profiles</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2601"/>
-        <source>&lt;b&gt;View Profiles&lt;/b&gt;&lt;p&gt;Configure the view profiles. With this dialog you may set the visibility of the various windows for the predetermined view profiles.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
-        <source>Toolbars</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
-        <source>Tool&amp;bars...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2616"/>
-        <source>Configure toolbars</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2617"/>
-        <source>&lt;b&gt;Toolbars&lt;/b&gt;&lt;p&gt;Configure the toolbars. With this dialog you may change the actions shown on the various toolbars and define your own toolbars.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
-        <source>Keyboard Shortcuts</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
-        <source>Keyboard &amp;Shortcuts...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2631"/>
-        <source>Set the keyboard shortcuts</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2633"/>
-        <source>&lt;b&gt;Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Set the keyboard shortcuts of the application with your prefered values.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
-        <source>Export Keyboard Shortcuts</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2641"/>
-        <source>&amp;Export Keyboard Shortcuts...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2646"/>
-        <source>Export the keyboard shortcuts</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2648"/>
-        <source>&lt;b&gt;Export Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Export the keyboard shortcuts of the application.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
-        <source>Import Keyboard Shortcuts</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2655"/>
-        <source>&amp;Import Keyboard Shortcuts...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2660"/>
-        <source>Import the keyboard shortcuts</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2662"/>
-        <source>&lt;b&gt;Import Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Import the keyboard shortcuts of the application.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
-        <source>Manage SSL Certificates</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
-        <source>Manage SSL Certificates...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2675"/>
-        <source>Manage the saved SSL certificates</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2677"/>
-        <source>&lt;b&gt;Manage SSL Certificates...&lt;/b&gt;&lt;p&gt;Opens a dialog to manage the saved SSL certificates.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
-        <source>Edit Message Filters</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
-        <source>Edit Message Filters...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2691"/>
-        <source>Edit the message filters used to suppress unwanted messages</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2693"/>
-        <source>&lt;b&gt;Edit Message Filters&lt;/b&gt;&lt;p&gt;Opens a dialog to edit the message filters used to suppress unwanted messages been shown in an error window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2709"/>
-        <source>Clear private data</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2711"/>
-        <source>&lt;b&gt;Clear private data&lt;/b&gt;&lt;p&gt;Clears the private data like the various list of recently opened files, projects or multi projects.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
-        <source>Activate current editor</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
-        <source>Alt+Shift+E</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
-        <source>Show next</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
-        <source>Ctrl+Alt+Tab</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
-        <source>Show previous</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
-        <source>Shift+Ctrl+Alt+Tab</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
-        <source>Switch between tabs</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
-        <source>Ctrl+1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
-        <source>Plugin Infos</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
-        <source>&amp;Plugin Infos...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2761"/>
-        <source>Show Plugin Infos</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2762"/>
-        <source>&lt;b&gt;Plugin Infos...&lt;/b&gt;&lt;p&gt;This opens a dialog, that show some information about loaded plugins.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2775"/>
-        <source>Install Plugins</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2770"/>
-        <source>&amp;Install Plugins...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2776"/>
-        <source>&lt;b&gt;Install Plugins...&lt;/b&gt;&lt;p&gt;This opens a dialog to install or update plugins.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2788"/>
-        <source>Uninstall Plugin</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2783"/>
-        <source>&amp;Uninstall Plugin...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2789"/>
-        <source>&lt;b&gt;Uninstall Plugin...&lt;/b&gt;&lt;p&gt;This opens a dialog to uninstall a plugin.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
-        <source>Plugin Repository</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
-        <source>Plugin &amp;Repository...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2801"/>
-        <source>Show Plugins available for download</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2803"/>
-        <source>&lt;b&gt;Plugin Repository...&lt;/b&gt;&lt;p&gt;This opens a dialog, that shows a list of plugins available on the Internet.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2862"/>
-        <source>Qt5 Documentation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2866"/>
-        <source>Open Qt5 Documentation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2892"/>
-        <source>PyQt5 Documentation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2896"/>
-        <source>Open PyQt5 Documentation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2931"/>
-        <source>Python 3 Documentation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2935"/>
-        <source>Open Python 3 Documentation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2937"/>
-        <source>&lt;b&gt;Python 3 Documentation&lt;/b&gt;&lt;p&gt;Display the Python 3 documentation. If no documentation directory is configured, the location of the Python 3 documentation is assumed to be the doc directory underneath the location of the Python 3 executable on Windows and &lt;i&gt;/usr/share/doc/packages/python/html&lt;/i&gt; on Unix. Set PYTHON3DOCDIR in your environment to override this.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2953"/>
-        <source>Eric API Documentation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2957"/>
-        <source>Open Eric API Documentation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3158"/>
-        <source>&amp;Unittest</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3102"/>
-        <source>E&amp;xtras</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3112"/>
-        <source>Wi&amp;zards</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3175"/>
-        <source>Select Tool Group</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3186"/>
-        <source>Se&amp;ttings</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3216"/>
-        <source>&amp;Window</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3225"/>
-        <source>&amp;Windows</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3277"/>
-        <source>&amp;Toolbars</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3139"/>
-        <source>P&amp;lugins</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3148"/>
-        <source>Configure...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3291"/>
-        <source>&amp;Help</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3364"/>
-        <source>Tools</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3366"/>
-        <source>Settings</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
-        <source>Help</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="3368"/>
-        <source>Profiles</source>
+        <source>Unittest</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2259"/>
+        <source>&amp;Unittest...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2264"/>
+        <source>Start unittest dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2265"/>
+        <source>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Perform unit tests. The dialog gives you the ability to select and run a unittest suite.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2273"/>
+        <source>Unittest Restart</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2273"/>
+        <source>&amp;Restart Unittest...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2278"/>
+        <source>Restart last unittest</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2279"/>
+        <source>&lt;b&gt;Restart Unittest&lt;/b&gt;&lt;p&gt;Restart the unittest performed last.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2287"/>
+        <source>Unittest Rerun Failed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2287"/>
+        <source>Rerun Failed Tests...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2292"/>
+        <source>Rerun failed tests of the last run</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2294"/>
+        <source>&lt;b&gt;Rerun Failed Tests&lt;/b&gt;&lt;p&gt;Rerun all tests that failed during the last unittest run.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2303"/>
+        <source>Unittest Script</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2303"/>
+        <source>Unittest &amp;Script...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2308"/>
+        <source>Run unittest with current script</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2310"/>
+        <source>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Run unittest with current script.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2318"/>
+        <source>Unittest Project</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2318"/>
+        <source>Unittest &amp;Project...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2323"/>
+        <source>Run unittest with current project</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2325"/>
+        <source>&lt;b&gt;Unittest Project&lt;/b&gt;&lt;p&gt;Run unittest with current project.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2345"/>
+        <source>Qt-Designer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2345"/>
+        <source>Qt-&amp;Designer...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2350"/>
+        <source>Start Qt-Designer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2351"/>
+        <source>&lt;b&gt;Qt-Designer&lt;/b&gt;&lt;p&gt;Start Qt-Designer.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2371"/>
+        <source>Qt-Linguist</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2371"/>
+        <source>Qt-&amp;Linguist...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2376"/>
+        <source>Start Qt-Linguist</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2377"/>
+        <source>&lt;b&gt;Qt-Linguist&lt;/b&gt;&lt;p&gt;Start Qt-Linguist.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2386"/>
+        <source>UI Previewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2386"/>
+        <source>&amp;UI Previewer...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2391"/>
+        <source>Start the UI Previewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2392"/>
+        <source>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Start the UI Previewer.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2399"/>
+        <source>Translations Previewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2399"/>
+        <source>&amp;Translations Previewer...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2404"/>
+        <source>Start the Translations Previewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2406"/>
+        <source>&lt;b&gt;Translations Previewer&lt;/b&gt;&lt;p&gt;Start the Translations Previewer.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2413"/>
+        <source>Compare Files</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2413"/>
+        <source>&amp;Compare Files...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2431"/>
+        <source>Compare two files</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2419"/>
+        <source>&lt;b&gt;Compare Files&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2426"/>
+        <source>Compare Files side by side</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2426"/>
+        <source>Compare &amp;Files side by side...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2432"/>
+        <source>&lt;b&gt;Compare Files side by side&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files and show the result side by side.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2440"/>
+        <source>SQL Browser</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2440"/>
+        <source>SQL &amp;Browser...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2445"/>
+        <source>Browse a SQL database</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2446"/>
+        <source>&lt;b&gt;SQL Browser&lt;/b&gt;&lt;p&gt;Browse a SQL database.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2458"/>
+        <source>Mini Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2453"/>
+        <source>Mini &amp;Editor...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2459"/>
+        <source>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Open a dialog with a simplified editor.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2466"/>
+        <source>Hex Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2466"/>
+        <source>&amp;Hex Editor...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2495"/>
+        <source>Icon Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2495"/>
+        <source>&amp;Icon Editor...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2509"/>
+        <source>Snapshot</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2509"/>
+        <source>&amp;Snapshot...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2514"/>
+        <source>Take snapshots of a screen region</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2516"/>
+        <source>&lt;b&gt;Snapshot&lt;/b&gt;&lt;p&gt;This opens a dialog to take snapshots of a screen region.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2524"/>
+        <source>Preferences</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2524"/>
+        <source>&amp;Preferences...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2529"/>
+        <source>Set the prefered configuration</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2531"/>
+        <source>&lt;b&gt;Preferences&lt;/b&gt;&lt;p&gt;Set the configuration items of the application with your prefered values.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2540"/>
+        <source>Export Preferences</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2540"/>
+        <source>E&amp;xport Preferences...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2545"/>
+        <source>Export the current configuration</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2547"/>
+        <source>&lt;b&gt;Export Preferences&lt;/b&gt;&lt;p&gt;Export the current configuration to a file.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2554"/>
+        <source>Import Preferences</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2554"/>
+        <source>I&amp;mport Preferences...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2559"/>
+        <source>Import a previously exported configuration</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2561"/>
+        <source>&lt;b&gt;Import Preferences&lt;/b&gt;&lt;p&gt;Import a previously exported configuration.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2568"/>
+        <source>Reload APIs</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2568"/>
+        <source>Reload &amp;APIs</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2572"/>
+        <source>Reload the API information</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2574"/>
+        <source>&lt;b&gt;Reload APIs&lt;/b&gt;&lt;p&gt;Reload the API information.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2586"/>
+        <source>Show external tools</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2581"/>
+        <source>Show external &amp;tools</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2597"/>
+        <source>View Profiles</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2597"/>
+        <source>&amp;View Profiles...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2602"/>
+        <source>Configure view profiles</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2604"/>
+        <source>&lt;b&gt;View Profiles&lt;/b&gt;&lt;p&gt;Configure the view profiles. With this dialog you may set the visibility of the various windows for the predetermined view profiles.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2614"/>
+        <source>Toolbars</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2614"/>
+        <source>Tool&amp;bars...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2619"/>
+        <source>Configure toolbars</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2620"/>
+        <source>&lt;b&gt;Toolbars&lt;/b&gt;&lt;p&gt;Configure the toolbars. With this dialog you may change the actions shown on the various toolbars and define your own toolbars.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2629"/>
+        <source>Keyboard Shortcuts</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2629"/>
+        <source>Keyboard &amp;Shortcuts...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2634"/>
+        <source>Set the keyboard shortcuts</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2636"/>
+        <source>&lt;b&gt;Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Set the keyboard shortcuts of the application with your prefered values.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6324"/>
+        <source>Export Keyboard Shortcuts</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2644"/>
+        <source>&amp;Export Keyboard Shortcuts...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2649"/>
+        <source>Export the keyboard shortcuts</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2651"/>
+        <source>&lt;b&gt;Export Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Export the keyboard shortcuts of the application.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6342"/>
+        <source>Import Keyboard Shortcuts</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2658"/>
+        <source>&amp;Import Keyboard Shortcuts...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2663"/>
+        <source>Import the keyboard shortcuts</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2665"/>
+        <source>&lt;b&gt;Import Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Import the keyboard shortcuts of the application.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2673"/>
+        <source>Manage SSL Certificates</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2673"/>
+        <source>Manage SSL Certificates...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2678"/>
+        <source>Manage the saved SSL certificates</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2680"/>
+        <source>&lt;b&gt;Manage SSL Certificates...&lt;/b&gt;&lt;p&gt;Opens a dialog to manage the saved SSL certificates.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2689"/>
+        <source>Edit Message Filters</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2689"/>
+        <source>Edit Message Filters...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2694"/>
+        <source>Edit the message filters used to suppress unwanted messages</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2696"/>
+        <source>&lt;b&gt;Edit Message Filters&lt;/b&gt;&lt;p&gt;Opens a dialog to edit the message filters used to suppress unwanted messages been shown in an error window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2712"/>
+        <source>Clear private data</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2714"/>
+        <source>&lt;b&gt;Clear private data&lt;/b&gt;&lt;p&gt;Clears the private data like the various list of recently opened files, projects or multi projects.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2723"/>
+        <source>Activate current editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2723"/>
+        <source>Alt+Shift+E</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2733"/>
+        <source>Show next</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2733"/>
+        <source>Ctrl+Alt+Tab</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2742"/>
+        <source>Show previous</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2742"/>
+        <source>Shift+Ctrl+Alt+Tab</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2751"/>
+        <source>Switch between tabs</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2751"/>
+        <source>Ctrl+1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2760"/>
+        <source>Plugin Infos</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2760"/>
+        <source>&amp;Plugin Infos...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2764"/>
+        <source>Show Plugin Infos</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2765"/>
+        <source>&lt;b&gt;Plugin Infos...&lt;/b&gt;&lt;p&gt;This opens a dialog, that show some information about loaded plugins.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2778"/>
+        <source>Install Plugins</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2773"/>
+        <source>&amp;Install Plugins...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2779"/>
+        <source>&lt;b&gt;Install Plugins...&lt;/b&gt;&lt;p&gt;This opens a dialog to install or update plugins.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2791"/>
+        <source>Uninstall Plugin</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2786"/>
+        <source>&amp;Uninstall Plugin...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2792"/>
+        <source>&lt;b&gt;Uninstall Plugin...&lt;/b&gt;&lt;p&gt;This opens a dialog to uninstall a plugin.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2799"/>
+        <source>Plugin Repository</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2799"/>
+        <source>Plugin &amp;Repository...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2804"/>
+        <source>Show Plugins available for download</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2806"/>
+        <source>&lt;b&gt;Plugin Repository...&lt;/b&gt;&lt;p&gt;This opens a dialog, that shows a list of plugins available on the Internet.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2865"/>
+        <source>Qt5 Documentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2869"/>
+        <source>Open Qt5 Documentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2895"/>
+        <source>PyQt5 Documentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2899"/>
+        <source>Open PyQt5 Documentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2934"/>
+        <source>Python 3 Documentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2938"/>
+        <source>Open Python 3 Documentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2940"/>
+        <source>&lt;b&gt;Python 3 Documentation&lt;/b&gt;&lt;p&gt;Display the Python 3 documentation. If no documentation directory is configured, the location of the Python 3 documentation is assumed to be the doc directory underneath the location of the Python 3 executable on Windows and &lt;i&gt;/usr/share/doc/packages/python/html&lt;/i&gt; on Unix. Set PYTHON3DOCDIR in your environment to override this.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2956"/>
+        <source>Eric API Documentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2960"/>
+        <source>Open Eric API Documentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3161"/>
+        <source>&amp;Unittest</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3105"/>
+        <source>E&amp;xtras</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3115"/>
+        <source>Wi&amp;zards</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3178"/>
+        <source>Select Tool Group</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3189"/>
+        <source>Se&amp;ttings</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3219"/>
+        <source>&amp;Window</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3228"/>
+        <source>&amp;Windows</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3280"/>
+        <source>&amp;Toolbars</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3142"/>
+        <source>P&amp;lugins</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3151"/>
+        <source>Configure...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3294"/>
+        <source>&amp;Help</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3367"/>
+        <source>Tools</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../UI/UserInterface.py" line="3369"/>
+        <source>Settings</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5216"/>
+        <source>Help</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3371"/>
+        <source>Profiles</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3372"/>
         <source>Plugins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3534"/>
+        <location filename="../UI/UserInterface.py" line="3537"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors language.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3541"/>
+        <location filename="../UI/UserInterface.py" line="3544"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors encoding.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3548"/>
+        <location filename="../UI/UserInterface.py" line="3551"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors eol setting.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3555"/>
+        <location filename="../UI/UserInterface.py" line="3558"/>
         <source>&lt;p&gt;This part of the status bar displays an indication of the current editors files writability.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3562"/>
+        <location filename="../UI/UserInterface.py" line="3565"/>
         <source>&lt;p&gt;This part of the status bar displays the line number of the current editor.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3569"/>
+        <location filename="../UI/UserInterface.py" line="3572"/>
         <source>&lt;p&gt;This part of the status bar displays the cursor position of the current editor.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3640"/>
+        <location filename="../UI/UserInterface.py" line="3643"/>
         <source>External Tools/{0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7268"/>
+        <location filename="../UI/UserInterface.py" line="7295"/>
         <source>&lt;/table&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Email address or mail server address is empty. Please configure your Email settings in the Preferences Dialog.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>Restart application</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>The application needs to be restarted. Do it now?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4162"/>
+        <location filename="../UI/UserInterface.py" line="4165"/>
         <source>&amp;Builtin Tools</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4179"/>
-        <source>&amp;Plugin Tools</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="4182"/>
+        <source>&amp;Plugin Tools</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="4185"/>
         <source>&amp;User Tools</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4207"/>
+        <location filename="../UI/UserInterface.py" line="4210"/>
         <source>Configure Tool Groups ...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4211"/>
+        <location filename="../UI/UserInterface.py" line="4214"/>
         <source>Configure current Tool Group ...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4252"/>
+        <location filename="../UI/UserInterface.py" line="4255"/>
         <source>No User Tools Configured</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4326"/>
+        <location filename="../UI/UserInterface.py" line="4329"/>
         <source>&amp;Show all</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4328"/>
+        <location filename="../UI/UserInterface.py" line="4331"/>
         <source>&amp;Hide all</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>Problem</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not exist or is zero length.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5536"/>
+        <location filename="../UI/UserInterface.py" line="5552"/>
         <source>Process Generation Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5066"/>
+        <location filename="../UI/UserInterface.py" line="5069"/>
         <source>&lt;p&gt;Could not start Qt-Designer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5136"/>
+        <location filename="../UI/UserInterface.py" line="5139"/>
         <source>&lt;p&gt;Could not start Qt-Linguist.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5180"/>
+        <location filename="../UI/UserInterface.py" line="5183"/>
         <source>&lt;p&gt;Could not start Qt-Assistant.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
+        <location filename="../UI/UserInterface.py" line="5216"/>
         <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5227"/>
+        <location filename="../UI/UserInterface.py" line="5230"/>
         <source>&lt;p&gt;Could not start custom viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5247"/>
+        <location filename="../UI/UserInterface.py" line="5250"/>
         <source>&lt;p&gt;Could not start the help viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5297"/>
+        <location filename="../UI/UserInterface.py" line="5300"/>
         <source>&lt;p&gt;Could not start UI Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5354"/>
+        <location filename="../UI/UserInterface.py" line="5357"/>
         <source>&lt;p&gt;Could not start Translation Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5377"/>
+        <location filename="../UI/UserInterface.py" line="5380"/>
         <source>&lt;p&gt;Could not start SQL Browser.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5449"/>
+        <location filename="../UI/UserInterface.py" line="5465"/>
         <source>&lt;p&gt;Could not start Snapshot tool.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
+        <location filename="../UI/UserInterface.py" line="5497"/>
         <source>External Tools</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5472"/>
+        <location filename="../UI/UserInterface.py" line="5488"/>
         <source>No tool entry found for external tool &apos;{0}&apos; in tool group &apos;{1}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
+        <location filename="../UI/UserInterface.py" line="5497"/>
         <source>No toolgroup entry &apos;{0}&apos; found.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5520"/>
-        <source>Starting process &apos;{0} {1}&apos;.
-</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="5536"/>
+        <source>Starting process &apos;{0} {1}&apos;.
+</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5552"/>
         <source>&lt;p&gt;Could not start the tool entry &lt;b&gt;{0}&lt;/b&gt;.&lt;br&gt;Ensure that it is available as &lt;b&gt;{1}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5614"/>
+        <location filename="../UI/UserInterface.py" line="5630"/>
         <source>Process &apos;{0}&apos; has exited.
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>Documentation Missing</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>&lt;p&gt;The documentation starting point &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; could not be found.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Open Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Could not start a web browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1673"/>
+        <location filename="../UI/UserInterface.py" line="1676"/>
         <source>Save session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6550"/>
+        <location filename="../UI/UserInterface.py" line="6566"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>Read session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>Drop Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; is not a file.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>&amp;Cancel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>%v/%m</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7054"/>
+        <location filename="../UI/UserInterface.py" line="7081"/>
         <source>Version Check</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7059"/>
+        <location filename="../UI/UserInterface.py" line="7086"/>
         <source>Trying host {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>Error getting versions information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7111"/>
+        <location filename="../UI/UserInterface.py" line="7138"/>
         <source>The versions information could not be downloaded. Please go online and try again.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>The versions information could not be downloaded for the last 7 days. Please go online and try again.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>Update available</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Error during updates check</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Could not perform updates check.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7253"/>
+        <location filename="../UI/UserInterface.py" line="7280"/>
         <source>&lt;h3&gt;Available versions&lt;/h3&gt;&lt;table&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>First time usage</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7324"/>
+        <location filename="../UI/UserInterface.py" line="7351"/>
         <source>Select Workspace Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1669"/>
+        <location filename="../UI/UserInterface.py" line="1672"/>
         <source>Save session...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1674"/>
+        <location filename="../UI/UserInterface.py" line="1677"/>
         <source>&lt;b&gt;Save session...&lt;/b&gt;&lt;p&gt;This saves the current session to disk. A dialog is opened to select the file name.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>Load session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1682"/>
+        <location filename="../UI/UserInterface.py" line="1685"/>
         <source>Load session...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1687"/>
+        <location filename="../UI/UserInterface.py" line="1690"/>
         <source>&lt;b&gt;Load session...&lt;/b&gt;&lt;p&gt;This loads a session saved to disk previously. A dialog is opened to select the file name.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
+        <location filename="../UI/UserInterface.py" line="6710"/>
         <source>Crash Session found!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
+        <location filename="../UI/UserInterface.py" line="6710"/>
         <source>A session file of a crashed session was found. Shall this session be restored?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="672"/>
+        <location filename="../UI/UserInterface.py" line="675"/>
         <source>Cleaning Plugins Download Area...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="664"/>
+        <location filename="../UI/UserInterface.py" line="667"/>
         <source>Initializing Plugins...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>Update Check</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>You installed eric directly from the source code. There is no possibility to check for the availability of an update.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Code Documentation Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2867"/>
+        <location filename="../UI/UserInterface.py" line="2870"/>
         <source>&lt;b&gt;Qt5 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2898"/>
+        <location filename="../UI/UserInterface.py" line="2901"/>
         <source>&lt;b&gt;PyQt5 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2974"/>
+        <location filename="../UI/UserInterface.py" line="2977"/>
         <source>PySide2 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2978"/>
+        <location filename="../UI/UserInterface.py" line="2981"/>
         <source>Open PySide2 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2980"/>
+        <location filename="../UI/UserInterface.py" line="2983"/>
         <source>&lt;b&gt;PySide2 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide2 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>&lt;p&gt;The PySide{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2817"/>
+        <location filename="../UI/UserInterface.py" line="2820"/>
         <source>Virtualenv Manager</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2811"/>
+        <location filename="../UI/UserInterface.py" line="2814"/>
         <source>&amp;Virtualenv Manager...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2819"/>
+        <location filename="../UI/UserInterface.py" line="2822"/>
         <source>&lt;b&gt;Virtualenv Manager&lt;/b&gt;&lt;p&gt;This opens a dialog to manage the defined Python virtual environments.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2834"/>
+        <location filename="../UI/UserInterface.py" line="2837"/>
         <source>Virtualenv Configurator</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2828"/>
+        <location filename="../UI/UserInterface.py" line="2831"/>
         <source>Virtualenv &amp;Configurator...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2836"/>
+        <location filename="../UI/UserInterface.py" line="2839"/>
         <source>&lt;b&gt;Virtualenv Configurator&lt;/b&gt;&lt;p&gt;This opens a dialog for entering all the parameters needed to create a Python virtual environment using virtualenv or pyvenv.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../UI/UserInterface.py" line="3235"/>
+        <source>Left Side</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3247"/>
+        <source>Bottom Side</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3254"/>
+        <source>Right Side</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3274"/>
+        <source>Plug-ins</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1656"/>
+        <source>Restart</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1656"/>
+        <source>Ctrl+Shift+Q</source>
+        <comment>File|Quit</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1662"/>
+        <source>Restart the IDE</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1663"/>
+        <source>&lt;b&gt;Restart the IDE&lt;/b&gt;&lt;p&gt;This restarts the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6052"/>
+        <source>Start Web Browser</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2087"/>
+        <source>Conda</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2069"/>
+        <source>PyPI</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3583"/>
+        <source>&lt;p&gt;This part of the status bar allows zooming the current editor or shell.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2105"/>
+        <source>MicroPython</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1993"/>
+        <source>Ctrl+Alt+Shift+I</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2049"/>
+        <source>Ctrl+Alt+Shift+D</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2055"/>
+        <source>Switch the input focus to the Code Documentation Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2058"/>
+        <source>&lt;b&gt;Code Documentation Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Code Documentation Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2069"/>
+        <source>Ctrl+Alt+Shift+P</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2075"/>
+        <source>Switch the input focus to the PyPI window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2077"/>
+        <source>&lt;b&gt;PyPI&lt;/b&gt;&lt;p&gt;This switches the input focus to the PyPI window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2087"/>
+        <source>Ctrl+Alt+Shift+C</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2093"/>
+        <source>Switch the input focus to the Conda window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2095"/>
+        <source>&lt;b&gt;Conda&lt;/b&gt;&lt;p&gt;This switches the input focus to the Conda window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2105"/>
+        <source>Ctrl+Alt+Shift+M</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2111"/>
+        <source>Switch the input focus to the MicroPython window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2113"/>
+        <source>&lt;b&gt;MicroPython&lt;/b&gt;&lt;p&gt;This switches the input focus to the MicroPython window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../UI/UserInterface.py" line="3232"/>
-        <source>Left Side</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3244"/>
-        <source>Bottom Side</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3251"/>
-        <source>Right Side</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3271"/>
-        <source>Plug-ins</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
-        <source>Restart</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
-        <source>Ctrl+Shift+Q</source>
-        <comment>File|Quit</comment>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1659"/>
-        <source>Restart the IDE</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1660"/>
-        <source>&lt;b&gt;Restart the IDE&lt;/b&gt;&lt;p&gt;This restarts the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
-        <source>Start Web Browser</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
-        <source>Conda</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
-        <source>PyPI</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3580"/>
-        <source>&lt;p&gt;This part of the status bar allows zooming the current editor or shell.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
-        <source>MicroPython</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
-        <source>Ctrl+Alt+Shift+I</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
-        <source>Ctrl+Alt+Shift+D</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2052"/>
-        <source>Switch the input focus to the Code Documentation Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2055"/>
-        <source>&lt;b&gt;Code Documentation Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Code Documentation Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
-        <source>Ctrl+Alt+Shift+P</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2072"/>
-        <source>Switch the input focus to the PyPI window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2074"/>
-        <source>&lt;b&gt;PyPI&lt;/b&gt;&lt;p&gt;This switches the input focus to the PyPI window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
-        <source>Ctrl+Alt+Shift+C</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2090"/>
-        <source>Switch the input focus to the Conda window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2092"/>
-        <source>&lt;b&gt;Conda&lt;/b&gt;&lt;p&gt;This switches the input focus to the Conda window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
-        <source>Ctrl+Alt+Shift+M</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2108"/>
-        <source>Switch the input focus to the MicroPython window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2110"/>
-        <source>&lt;b&gt;MicroPython&lt;/b&gt;&lt;p&gt;This switches the input focus to the MicroPython window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3229"/>
         <source>Central Park</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3746"/>
+        <location filename="../UI/UserInterface.py" line="3749"/>
         <source>&lt;h2&gt;Version Numbers&lt;/h2&gt;&lt;table&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5075"/>
+        <location filename="../UI/UserInterface.py" line="5078"/>
         <source>&lt;p&gt;Could not find the Qt-Designer executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5145"/>
+        <location filename="../UI/UserInterface.py" line="5148"/>
         <source>&lt;p&gt;Could not find the Qt-Linguist executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5189"/>
+        <location filename="../UI/UserInterface.py" line="5192"/>
         <source>&lt;p&gt;Could not find the Qt-Assistant executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install Info</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install &amp;Info...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2219"/>
+        <location filename="../UI/UserInterface.py" line="2222"/>
         <source>Show Installation Information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2221"/>
+        <location filename="../UI/UserInterface.py" line="2224"/>
         <source>&lt;b&gt;Show Install Info...&lt;/b&gt;&lt;p&gt;Opens a dialog showing some information about the installation process.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2877"/>
+        <location filename="../UI/UserInterface.py" line="2880"/>
         <source>Qt6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2881"/>
+        <location filename="../UI/UserInterface.py" line="2884"/>
         <source>Open Qt6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2882"/>
+        <location filename="../UI/UserInterface.py" line="2885"/>
         <source>&lt;b&gt;Qt6 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2909"/>
+        <location filename="../UI/UserInterface.py" line="2912"/>
         <source>PyQt6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2913"/>
+        <location filename="../UI/UserInterface.py" line="2916"/>
         <source>Open PyQt6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2915"/>
+        <location filename="../UI/UserInterface.py" line="2918"/>
         <source>&lt;b&gt;PyQt6 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2994"/>
+        <location filename="../UI/UserInterface.py" line="2997"/>
         <source>PySide6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2998"/>
+        <location filename="../UI/UserInterface.py" line="3001"/>
         <source>Open PySide6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3000"/>
+        <location filename="../UI/UserInterface.py" line="3003"/>
         <source>&lt;b&gt;PySide6 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5754"/>
+        <location filename="../UI/UserInterface.py" line="5770"/>
         <source>&lt;p&gt;The PyQt{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1701"/>
+        <location filename="../UI/UserInterface.py" line="1704"/>
         <source>Open a new eric instance</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1703"/>
+        <location filename="../UI/UserInterface.py" line="1706"/>
         <source>&lt;b&gt;New Window&lt;/b&gt;&lt;p&gt;This opens a new instance of the eric IDE.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2146"/>
+        <location filename="../UI/UserInterface.py" line="2149"/>
         <source>&lt;b&gt;Helpviewer&lt;/b&gt;&lt;p&gt;Display the eric web browser. This window will show HTML help files and help from Qt help collections. It has the capability to navigate to links, set bookmarks, print the displayed help and some more features. You may use it to browse the internet as well&lt;/p&gt;&lt;p&gt;If called with a word selected, this word is search in the Qt help collection.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2181"/>
+        <location filename="../UI/UserInterface.py" line="2184"/>
         <source>&lt;b&gt;Check for Updates...&lt;/b&gt;&lt;p&gt;Checks the internet for updates of eric.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2194"/>
+        <location filename="../UI/UserInterface.py" line="2197"/>
         <source>&lt;b&gt;Show downloadable versions...&lt;/b&gt;&lt;p&gt;Shows the eric versions available for download from the internet.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2468"/>
+        <location filename="../UI/UserInterface.py" line="2471"/>
         <source>Start the eric Hex Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2470"/>
+        <location filename="../UI/UserInterface.py" line="2473"/>
         <source>&lt;b&gt;Hex Editor&lt;/b&gt;&lt;p&gt;Starts the eric Hex Editor for viewing or editing binary files.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric &amp;Web Browser...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2483"/>
+        <location filename="../UI/UserInterface.py" line="2486"/>
         <source>Start the eric Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2485"/>
+        <location filename="../UI/UserInterface.py" line="2488"/>
         <source>&lt;b&gt;eric Web Browser&lt;/b&gt;&lt;p&gt;Browse the Internet with the eric Web Browser.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2497"/>
+        <location filename="../UI/UserInterface.py" line="2500"/>
         <source>Start the eric Icon Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2499"/>
+        <location filename="../UI/UserInterface.py" line="2502"/>
         <source>&lt;b&gt;Icon Editor&lt;/b&gt;&lt;p&gt;Starts the eric Icon Editor for editing simple icons.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2585"/>
+        <location filename="../UI/UserInterface.py" line="2588"/>
         <source>&lt;b&gt;Show external tools&lt;/b&gt;&lt;p&gt;Opens a dialog to show the path and versions of all extenal tools used by eric.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2959"/>
+        <location filename="../UI/UserInterface.py" line="2962"/>
         <source>&lt;b&gt;Eric API Documentation&lt;/b&gt;&lt;p&gt;Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric installation directory.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5972"/>
+        <location filename="../UI/UserInterface.py" line="5988"/>
         <source>The eric web browser could not be started.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>&lt;p&gt;The eric web browser is not started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>The update to &lt;b&gt;{0}&lt;/b&gt; of eric is available at &lt;b&gt;{1}&lt;/b&gt;. Would you like to get it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7188"/>
+        <location filename="../UI/UserInterface.py" line="7215"/>
         <source>You are using a snapshot release of eric. A more up-to-date stable release might be available.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>eric is up to date</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>You are using the latest version of eric</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>eric has not been configured yet. The configuration dialog will be started.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6290"/>
+        <location filename="../UI/UserInterface.py" line="6306"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard Shortcuts File (*.e4k)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>&lt;p&gt;The keyboard shortcuts file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard shortcut file (*.e4k)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>Read Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6621"/>
+        <location filename="../UI/UserInterface.py" line="6637"/>
         <source>Save Session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6578"/>
+        <location filename="../UI/UserInterface.py" line="6594"/>
         <source>Read Session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>eric Session Files (*.esj);;eric XML Session Files (*.e5s)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -77180,7 +77309,7 @@
 <context>
     <name>Utilities</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="1420"/>
+        <location filename="../Utilities/__init__.py" line="1421"/>
         <source>&lt;p&gt;You may use %-codes as placeholders in the string. Supported codes are:&lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;column of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;directory of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;filename of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;home directory of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;line of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;path of the current project&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;selected text of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;username of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;the percent sign&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -77753,12 +77882,12 @@
 <context>
     <name>VcsMercurialPlugin</name>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="58"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="54"/>
         <source>Version Control - Mercurial</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="132"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="124"/>
         <source>Mercurial</source>
         <translation type="unfinished"></translation>
     </message>
@@ -81188,62 +81317,62 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4777"/>
+        <location filename="../ViewManager/ViewManager.py" line="4790"/>
         <source>Line: {0:5}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4783"/>
+        <location filename="../ViewManager/ViewManager.py" line="4796"/>
         <source>Pos: {0:5}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4804"/>
+        <location filename="../ViewManager/ViewManager.py" line="4817"/>
         <source>Language: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4811"/>
+        <location filename="../ViewManager/ViewManager.py" line="4824"/>
         <source>EOL Mode: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5217"/>
+        <location filename="../ViewManager/ViewManager.py" line="5230"/>
         <source>&amp;Clear</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5211"/>
+        <location filename="../ViewManager/ViewManager.py" line="5224"/>
         <source>&amp;Add</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5214"/>
+        <location filename="../ViewManager/ViewManager.py" line="5227"/>
         <source>&amp;Edit...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>Edit Spelling Dictionary</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6215"/>
+        <location filename="../ViewManager/ViewManager.py" line="6228"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6233"/>
+        <location filename="../ViewManager/ViewManager.py" line="6246"/>
         <source>Editing {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6244"/>
+        <location filename="../ViewManager/ViewManager.py" line="6257"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>The spelling dictionary was saved successfully.</source>
         <translation type="unfinished"></translation>
     </message>
--- a/eric6/i18n/eric6_en.ts	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/i18n/eric6_en.ts	Thu Jun 03 11:39:23 2021 +0200
@@ -1229,45 +1229,60 @@
 <context>
     <name>ApplicationDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="43"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="47"/>
         <source>Application Diagram {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>Parsing modules...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="197"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="252"/>
         <source>&lt;&lt;Application&gt;&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="199"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="254"/>
         <source>&lt;&lt;Others&gt;&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>Load Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>&lt;p&gt;The diagram belongs to the project &lt;b&gt;{0}&lt;/b&gt;. Shall this project be opened?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>%v/%m Modules</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="69"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
         <source>Application Diagram</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="126"/>
+        <source>Select the application directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
+        <source>No application package could be detected. Aborting...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="466"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>ApplicationPage</name>
@@ -1588,47 +1603,47 @@
 <context>
     <name>BackgroundService</name>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="139"/>
+        <location filename="../Utilities/BackgroundService.py" line="142"/>
         <source>{0} not configured.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>Restart background client?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="456"/>
+        <location filename="../Utilities/BackgroundService.py" line="459"/>
         <source>Eric&apos;s background client disconnected because of an unknown reason.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>Background client disconnected.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>&lt;p&gt;The background client for &lt;b&gt;{0}&lt;/b&gt; has stopped due to an exception. It&apos;s used by various plug-ins like the different checkers.&lt;/p&gt;&lt;p&gt;Select&lt;ul&gt;&lt;li&gt;&lt;b&gt;&apos;Yes&apos;&lt;/b&gt; to restart the client, but abort the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Retry&apos;&lt;/b&gt; to restart the client and the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;No&apos;&lt;/b&gt; to leave the client off.&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p&gt;Note: The client can be restarted by opening and accepting the preferences dialog or reloading/changing the project.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>The background client for &lt;b&gt;{0}&lt;/b&gt; disconnected because of an unknown reason.&lt;br&gt;Should it be restarted?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="228"/>
+        <location filename="../Utilities/BackgroundService.py" line="231"/>
         <source>An error in Eric&apos;s background client stopped the service.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>Initialization of Background Service</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>&lt;p&gt;Initialization of Background Service &lt;b&gt;{0}&lt;/b&gt; failed.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2320,222 +2335,222 @@
 <context>
     <name>Browser</name>
     <message>
-        <location filename="../UI/Browser.py" line="94"/>
+        <location filename="../UI/Browser.py" line="96"/>
         <source>File-Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="284"/>
+        <location filename="../UI/Browser.py" line="286"/>
         <source>Open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="233"/>
+        <location filename="../UI/Browser.py" line="235"/>
         <source>Run unittest...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="316"/>
+        <location filename="../UI/Browser.py" line="318"/>
         <source>Copy Path to Clipboard</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="263"/>
+        <location filename="../UI/Browser.py" line="265"/>
         <source>Open in Icon Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="342"/>
+        <location filename="../UI/Browser.py" line="344"/>
         <source>New toplevel directory...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="298"/>
+        <location filename="../UI/Browser.py" line="300"/>
         <source>Add as toplevel directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="301"/>
+        <location filename="../UI/Browser.py" line="303"/>
         <source>Remove from toplevel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="305"/>
+        <location filename="../UI/Browser.py" line="307"/>
         <source>Refresh directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="309"/>
+        <location filename="../UI/Browser.py" line="311"/>
         <source>Find in this directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="643"/>
+        <location filename="../UI/Browser.py" line="646"/>
         <source>New toplevel directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="328"/>
+        <location filename="../UI/Browser.py" line="330"/>
         <source>Goto</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="435"/>
+        <location filename="../UI/Browser.py" line="437"/>
         <source>Line {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="113"/>
+        <location filename="../UI/Browser.py" line="115"/>
         <source>&lt;b&gt;The Browser Window&lt;/b&gt;&lt;p&gt;This allows you to easily navigate the hierarchy of directories and files on your system, identify the Python programs and open them up in a Source Viewer window. The window displays several separate hierarchies.&lt;/p&gt;&lt;p&gt;The first hierarchy is only shown if you have opened a program for debugging and its root is the directory containing that program. Usually all of the separate files that make up a Python application are held in the same directory, so this hierarchy gives you easy access to most of what you will need.&lt;/p&gt;&lt;p&gt;The next hierarchy is used to easily navigate the directories that are specified in the Python &lt;tt&gt;sys.path&lt;/tt&gt; variable.&lt;/p&gt;&lt;p&gt;The remaining hierarchies allow you navigate your system as a whole. On a UNIX system there will be a hierarchy with &lt;tt&gt;/&lt;/tt&gt; at its root and another with the user home directory. On a Windows system there will be a hierarchy for each drive on the system.&lt;/p&gt;&lt;p&gt;Python programs (i.e. those with a &lt;tt&gt;.py&lt;/tt&gt; file name suffix) are identified in the hierarchies with a Python icon. The right mouse button will popup a menu which lets you open the file in a Source Viewer window, open the file for debugging or use it for a unittest run.&lt;/p&gt;&lt;p&gt;The context menu of a class, function or method allows you to open the file defining this class, function or method and will ensure, that the correct source line is visible.&lt;/p&gt;&lt;p&gt;Qt-Designer files (i.e. those with a &lt;tt&gt;.ui&lt;/tt&gt; file name suffix) are shown with a Designer icon. The context menu of these files allows you to start Qt-Designer with that file.&lt;/p&gt;&lt;p&gt;Qt-Linguist files (i.e. those with a &lt;tt&gt;.ts&lt;/tt&gt; file name suffix) are shown with a Linguist icon. The context menu of these files allows you to start Qt-Linguist with that file.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>Show Mime-Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="528"/>
+        <location filename="../UI/Browser.py" line="531"/>
         <source>The mime type of the file could not be determined.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="546"/>
+        <location filename="../UI/Browser.py" line="549"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="260"/>
+        <location filename="../UI/Browser.py" line="262"/>
         <source>Open in Hex Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="312"/>
+        <location filename="../UI/Browser.py" line="314"/>
         <source>Find &amp;&amp; Replace in this directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="241"/>
+        <location filename="../UI/Browser.py" line="243"/>
         <source>Refresh Source File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="214"/>
+        <location filename="../UI/Browser.py" line="216"/>
         <source>Show Hidden Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="221"/>
-        <source>New</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/Browser.py" line="223"/>
+        <source>New</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/Browser.py" line="225"/>
         <source>Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="226"/>
+        <location filename="../UI/Browser.py" line="228"/>
         <source>File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="323"/>
+        <location filename="../UI/Browser.py" line="325"/>
         <source>Delete</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>New Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="861"/>
+        <location filename="../UI/Browser.py" line="864"/>
         <source>Name for new directory:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="902"/>
+        <location filename="../UI/Browser.py" line="905"/>
         <source>A file or directory named &lt;b&gt;{0}&lt;/b&gt; exists already. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>&lt;p&gt;The directory &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>New File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="894"/>
+        <location filename="../UI/Browser.py" line="897"/>
         <source>Name for new file:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="942"/>
+        <location filename="../UI/Browser.py" line="945"/>
         <source>Do you really want to move this file to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="946"/>
+        <location filename="../UI/Browser.py" line="949"/>
         <source>Do you really want to delete this file?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>Delete File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>&lt;p&gt;The selected file &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="979"/>
+        <location filename="../UI/Browser.py" line="982"/>
         <source>Do you really want to move this directory to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="983"/>
+        <location filename="../UI/Browser.py" line="986"/>
         <source>Do you really want to delete this directory?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>Delete Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>&lt;p&gt;The selected directory &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1023"/>
+        <location filename="../UI/Browser.py" line="1026"/>
         <source>Do you really want to move these files to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1027"/>
+        <location filename="../UI/Browser.py" line="1030"/>
         <source>Do you really want to delete these files?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1032"/>
+        <location filename="../UI/Browser.py" line="1035"/>
         <source>Delete Files</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3123,6 +3138,32 @@
     </message>
 </context>
 <context>
+    <name>ClassItem</name>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="176"/>
+        <source>Class Attributes:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="211"/>
+        <source>none</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="191"/>
+        <source>Instance Attributes:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="210"/>
+        <source>Methods:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>ClearPrivateDataDialog</name>
     <message>
         <location filename="../UI/ClearPrivateDataDialog.ui" line="14"/>
@@ -4601,7 +4642,7 @@
 <context>
     <name>CodingError</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="131"/>
+        <location filename="../Utilities/__init__.py" line="132"/>
         <source>The coding &apos;{0}&apos; is wrong for the given text.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6903,7 +6944,7 @@
 <context>
     <name>DebugUI</name>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1980"/>
+        <location filename="../Debugger/DebugUI.py" line="1981"/>
         <source>Run Script</source>
         <translation type="unfinished"></translation>
     </message>
@@ -6923,7 +6964,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>Run Project</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7023,7 +7064,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2121"/>
+        <location filename="../Debugger/DebugUI.py" line="2122"/>
         <source>Debug Script</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7043,7 +7084,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>Debug Project</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7382,67 +7423,67 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>Breakpoint Condition Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>&lt;p&gt;The condition of the breakpoint &lt;b&gt;{0}, {1}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>Watch Expression Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>&lt;p&gt;The watch expression &lt;b&gt;{0}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1530"/>
+        <location filename="../Debugger/DebugUI.py" line="1531"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; already exists.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1535"/>
+        <location filename="../Debugger/DebugUI.py" line="1536"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; for the variable &lt;b&gt;{1}&lt;/b&gt; already exists.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1540"/>
+        <location filename="../Debugger/DebugUI.py" line="1541"/>
         <source>Watch expression already exists</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1709"/>
+        <location filename="../Debugger/DebugUI.py" line="1710"/>
         <source>Coverage of Project</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1690"/>
+        <location filename="../Debugger/DebugUI.py" line="1691"/>
         <source>Coverage of Script</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>There is no main script defined for the current project. Aborting</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1854"/>
+        <location filename="../Debugger/DebugUI.py" line="1855"/>
         <source>Profile of Project</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1835"/>
+        <location filename="../Debugger/DebugUI.py" line="1836"/>
         <source>Profile of Script</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>There is no main script defined for the current project. No debugging possible.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7497,7 +7538,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1418"/>
+        <location filename="../Debugger/DebugUI.py" line="1419"/>
         <source>No locals available.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -9792,9 +9833,17 @@
 </source>
         <translation type="unfinished"></translation>
     </message>
-    <message>
-        <location filename="../E5Graphics/E5GraphicsView.py" line="417"/>
-        <source>{0}, Page {1}</source>
+</context>
+<context>
+    <name>E5JsonServer</name>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>JSON Protocol Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>&lt;p&gt;The response received from the client could not be decoded. Please report this issue with the received data to the eric bugs email address.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;&lt;p&gt;Data:&lt;br/&gt;{1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -11282,7 +11331,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7944"/>
+        <location filename="../QScintilla/Editor.py" line="7941"/>
         <source>Check spelling...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -11892,32 +11941,32 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Imports Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Include imports from external modules?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Application Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Include module names?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7947"/>
+        <location filename="../QScintilla/Editor.py" line="7944"/>
         <source>Add to dictionary</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7949"/>
+        <location filename="../QScintilla/Editor.py" line="7946"/>
         <source>Ignore All</source>
         <translation type="unfinished"></translation>
     </message>
@@ -11957,12 +12006,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>Sort Lines</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>The selection contains illegal data for a numerical sort.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12032,12 +12081,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>Register Mouse Click Handler</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>A mouse click handler for &quot;{0}&quot; was already registered by &quot;{1}&quot;. Aborting request by &quot;{2}&quot;...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12067,12 +12116,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>EditorConfig Properties</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>&lt;p&gt;The EditorConfig properties for file &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12117,7 +12166,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8766"/>
+        <location filename="../QScintilla/Editor.py" line="8763"/>
         <source>Generate Docstring</source>
         <translation type="unfinished"></translation>
     </message>
@@ -18465,7 +18514,7 @@
 <context>
     <name>FileDialogWizardDialog</name>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="72"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="73"/>
         <source>QFileDialog Wizard</source>
         <translation type="unfinished"></translation>
     </message>
@@ -18620,7 +18669,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="89"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="90"/>
         <source>Test</source>
         <translation type="unfinished"></translation>
     </message>
@@ -18740,7 +18789,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="67"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="68"/>
         <source>E5FileDialog Wizard</source>
         <translation type="unfinished"></translation>
     </message>
@@ -26163,27 +26212,27 @@
 <context>
     <name>Globals</name>
     <message>
-        <location filename="../Globals/__init__.py" line="451"/>
+        <location filename="../Globals/__init__.py" line="455"/>
         <source>{0:4.2f} Bytes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Globals/__init__.py" line="455"/>
-        <source>{0:4.2f} KiB</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../Globals/__init__.py" line="459"/>
-        <source>{0:4.2f} MiB</source>
+        <source>{0:4.2f} KiB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="463"/>
-        <source>{0:4.2f} GiB</source>
+        <source>{0:4.2f} MiB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="467"/>
+        <source>{0:4.2f} GiB</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Globals/__init__.py" line="471"/>
         <source>{0:4.2f} TiB</source>
         <translation type="unfinished"></translation>
     </message>
@@ -28284,112 +28333,112 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1849"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1850"/>
         <source>Showing current branch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1939"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1940"/>
         <source>Verifying the integrity of the Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1953"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1954"/>
         <source>Showing the combined configuration settings</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1966"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1967"/>
         <source>Showing aliases for remote repositories</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1979"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1980"/>
         <source>Recovering from interrupted transaction</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1992"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1993"/>
         <source>Identifying project directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>Create .hgignore file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2119"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2120"/>
         <source>Create changegroup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2076"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2077"/>
         <source>Mercurial Changegroup Files (*.hg)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2093"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2094"/>
         <source>&lt;p&gt;The Mercurial changegroup file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2129"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2130"/>
         <source>Preview changegroup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2157"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2158"/>
         <source>Mercurial Changegroup Files (*.hg);;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2178"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2179"/>
         <source>Apply changegroups</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2166"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2167"/>
         <source>Shall the working directory be updated?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2197"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2198"/>
         <source>Bisect subcommand ({0}) invalid.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2217"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2218"/>
         <source>Mercurial Bisect ({0})</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2240"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2241"/>
         <source>Removing files from the Mercurial repository only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2283"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2284"/>
         <source>Backing out changeset</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2263"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2264"/>
         <source>No revision given. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2299"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2300"/>
         <source>Rollback last transaction</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2292"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2293"/>
         <source>Are you sure you want to rollback the last transaction?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -28399,72 +28448,72 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>Mercurial Command Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2799"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2800"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be restarted.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2351"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2352"/>
         <source>Import Patch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2392"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2393"/>
         <source>Export Patches</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2431"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2432"/>
         <source>Change Phase</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2480"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2481"/>
         <source>Copy Changesets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2520"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2521"/>
         <source>Copy Changesets (Continue)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2663"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2664"/>
         <source>Add Sub-repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2695"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2696"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be read.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2645"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2646"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub already contains an entry &lt;b&gt;{0}&lt;/b&gt;. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be written to.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>Remove Sub-repositories</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2684"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2685"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub does not exist. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -28494,7 +28543,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2568"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2569"/>
         <source>Create Unversioned Archive</source>
         <translation type="unfinished"></translation>
     </message>
@@ -28514,7 +28563,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1838"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1839"/>
         <source>Created new branch &lt;{0}&gt;.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -28524,62 +28573,62 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3049"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3050"/>
         <source>Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Delete Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Select the bookmark to be deleted:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3074"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3075"/>
         <source>Delete Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3098"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3099"/>
         <source>Rename Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3132"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3133"/>
         <source>Move Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Pull Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Select the bookmark to be pulled:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3213"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3214"/>
         <source>Pulling bookmark from a remote Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Push Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Select the bookmark to be push:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3253"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3254"/>
         <source>Pushing bookmark to a remote Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
@@ -28614,22 +28663,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>Delete All Backups</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>&lt;p&gt;Do you really want to delete all backup bundles stored the backup area &lt;b&gt;{0}&lt;/b&gt;?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2532"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2533"/>
         <source>Copy Changesets (Stop)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2545"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2546"/>
         <source>Copy Changesets (Abort)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -29435,42 +29484,42 @@
 <context>
     <name>HgClient</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="91"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="92"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="140"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="141"/>
         <source>Did not receive the &apos;hello&apos; message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="142"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="143"/>
         <source>Received data on unexpected channel.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="147"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="148"/>
         <source>Bad &apos;hello&apos; message, expected &apos;capabilities: &apos; but got &apos;{0}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="153"/>
         <source>&apos;capabilities&apos; message did not contain any capability.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="160"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="161"/>
         <source>Bad &apos;hello&apos; message, expected &apos;encoding: &apos; but got &apos;{0}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="165"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="166"/>
         <source>&apos;encoding&apos; message did not contain any encoding.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="379"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="380"/>
         <source>For message see output dialog.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -34254,52 +34303,52 @@
 <context>
     <name>HgServeDialog</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="50"/>
         <source>Mercurial Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="53"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="54"/>
         <source>Start Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="59"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="60"/>
         <source>Stop Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="65"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="66"/>
         <source>Start Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="73"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="74"/>
         <source>Enter the server port</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="79"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="80"/>
         <source>Select the style to use</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="83"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="84"/>
         <source>Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="90"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="91"/>
         <source>Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>Process Generation Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -35859,17 +35908,17 @@
 <context>
     <name>HgUtilities</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="93"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="128"/>
         <source>The hg process finished with the exit code {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="98"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="133"/>
         <source>The hg process did not finish within 30s.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="102"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="137"/>
         <source>Could not start the hg executable.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -38076,35 +38125,40 @@
 <context>
     <name>ImportsDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>Parsing modules...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="124"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="136"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a Python package.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>%v/%m Modules</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="95"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="107"/>
         <source>Imports Diagramm</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="410"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>InputDialogWizard</name>
@@ -39764,22 +39818,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="252"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="251"/>
         <source>Yes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="254"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="253"/>
         <source>No</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Delete Channel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Do you really want to delete channel &lt;b&gt;{0}&lt;/b&gt;?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -47660,45 +47714,50 @@
 <context>
     <name>PackageDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>Parsing modules...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="205"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="219"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a package.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="214"/>
-        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="231"/>
-        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>%v/%m Modules</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="158"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="172"/>
         <source>Package Diagram</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="230"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules or subpackages.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="247"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes or subpackages.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="555"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageScreenDialog</name>
@@ -49152,42 +49211,42 @@
 <context>
     <name>PixmapDiagram</name>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>Pixmap-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="93"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="96"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="98"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="101"/>
         <source>Print</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="103"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="106"/>
         <source>Print Preview</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="133"/>
-        <source>Window</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../Graphics/PixmapDiagram.py" line="137"/>
+        <source>Window</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PixmapDiagram.py" line="141"/>
         <source>Graphics</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; cannot be displayed. The format is not supported.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="391"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="416"/>
         <source>Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -49521,12 +49580,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="492"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="476"/>
         <source>Error installing plugin. Reason: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="501"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="485"/>
         <source>Unspecific exception installing plugin.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -49544,52 +49603,52 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="404"/>
+        <location filename="../PluginManager/PluginManager.py" line="410"/>
         <source>Module is missing the &apos;autoactivate&apos; attribute.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="415"/>
+        <location filename="../PluginManager/PluginManager.py" line="421"/>
         <source>Module is missing the &apos;pluginType&apos; and/or &apos;pluginTypename&apos; attributes.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="437"/>
+        <location filename="../PluginManager/PluginManager.py" line="446"/>
         <source>Module failed to load. Error: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="614"/>
+        <location filename="../PluginManager/PluginManager.py" line="623"/>
         <source>Incompatible plugin activation method.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>Plugin Manager Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>&lt;p&gt;The plugin download directory &lt;b&gt;{0}&lt;/b&gt; could not be created. Please configure it via the configuration dialog.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>Error downloading file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>&lt;p&gt;Could not download the requested file from {0}.&lt;/p&gt;&lt;p&gt;Error: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>New plugin versions available</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>&lt;p&gt;There are new plug-ins or plug-in updates available. Use the plug-in repository dialog to get them.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51588,7 +51647,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>Create Package List</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51598,7 +51657,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>Create Plugin Archive</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51713,27 +51772,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5264"/>
+        <location filename="../Project/Project.py" line="5265"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; already exists.&lt;/p&gt;&lt;p&gt;Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5331"/>
+        <location filename="../Project/Project.py" line="5332"/>
         <source>The project does not have a main script defined. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5467"/>
+        <location filename="../Project/Project.py" line="5468"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be stored in the archive. Ignoring it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5536"/>
+        <location filename="../Project/Project.py" line="5537"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51793,7 +51852,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt; &lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51839,7 +51898,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5367"/>
+        <location filename="../Project/Project.py" line="5368"/>
         <source>Create Plugin Archives</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51859,37 +51918,37 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5345"/>
+        <location filename="../Project/Project.py" line="5346"/>
         <source>Select package lists:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Creating plugin archives...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Abort</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>%v/%m Archives</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5378"/>
+        <location filename="../Project/Project.py" line="5379"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5356"/>
+        <location filename="../Project/Project.py" line="5357"/>
         <source>&lt;p&gt;No package list files (PKGLIST*) available or selected. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5405"/>
+        <location filename="../Project/Project.py" line="5406"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; is not ready yet.&lt;/p&gt;&lt;p&gt;Please rework it and delete the&apos;; initial_list&apos; line of the header.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51929,7 +51988,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>Execute Make</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51949,7 +52008,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5744"/>
+        <location filename="../Project/Project.py" line="5745"/>
         <source>Test for Changes</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51974,27 +52033,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5692"/>
+        <location filename="../Project/Project.py" line="5693"/>
         <source>The make process did not start.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5737"/>
+        <location filename="../Project/Project.py" line="5738"/>
         <source>The make process crashed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5747"/>
+        <location filename="../Project/Project.py" line="5748"/>
         <source>&lt;p&gt;There are changes that require the configured make target &lt;b&gt;{0}&lt;/b&gt; to be rebuilt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5752"/>
+        <location filename="../Project/Project.py" line="5753"/>
         <source>&lt;p&gt;There are changes that require the default make target to be rebuilt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>The makefile contains errors.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -52069,17 +52128,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5432"/>
+        <location filename="../Project/Project.py" line="5433"/>
         <source>&lt;p&gt;The eric plugin archive file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5484"/>
+        <location filename="../Project/Project.py" line="5485"/>
         <source>&lt;p&gt;The eric plugin archive files were created with some errors.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5492"/>
+        <location filename="../Project/Project.py" line="5493"/>
         <source>&lt;p&gt;The eric plugin archive files were created successfully.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -52928,32 +52987,32 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Delete files/directories</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Do you really want to delete these entries from the project?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>Show Mime-Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="272"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="273"/>
         <source>The mime type of the file could not be determined.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="286"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="287"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -53685,32 +53744,32 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Include class attributes?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Imports Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Include imports from external modules?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Package Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Application Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Include module names?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -65528,37 +65587,37 @@
 <context>
     <name>SvgDiagram</name>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="50"/>
+        <location filename="../Graphics/SvgDiagram.py" line="53"/>
         <source>SVG-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="92"/>
+        <location filename="../Graphics/SvgDiagram.py" line="95"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="97"/>
+        <location filename="../Graphics/SvgDiagram.py" line="100"/>
         <source>Print</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="102"/>
+        <location filename="../Graphics/SvgDiagram.py" line="105"/>
         <source>Print Preview</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="132"/>
-        <source>Window</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../Graphics/SvgDiagram.py" line="136"/>
+        <source>Window</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/SvgDiagram.py" line="140"/>
         <source>Graphics</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="363"/>
+        <location filename="../Graphics/SvgDiagram.py" line="385"/>
         <source>Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -71246,65 +71305,105 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="60"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="71"/>
         <source>Creation Time:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="77"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="92"/>
         <source>&amp;Priority:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="87"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="102"/>
         <source>Select the task priority</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="94"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="109"/>
         <source>High</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="99"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="114"/>
         <source>Normal</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="104"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="119"/>
         <source>Low</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="112"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="175"/>
         <source>Select to indicate a task related to the current project</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="115"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="178"/>
         <source>Project &amp;Task</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="128"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="162"/>
         <source>Select to mark this task as completed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="131"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="165"/>
         <source>T&amp;ask completed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="138"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="223"/>
         <source>Filename:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="155"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="216"/>
         <source>Line:</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="127"/>
+        <source>Type:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="134"/>
+        <source>Select the task type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="41"/>
+        <source>Bugfix</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="42"/>
+        <source>Warning</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="43"/>
+        <source>ToDo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="44"/>
+        <source>Note</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="45"/>
+        <source>Test</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="46"/>
+        <source>Documentation</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>TaskViewer</name>
@@ -71389,27 +71488,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>Activate task filter</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>The task filter doesn&apos;t have any active filters. Do you want to configure the filter settings?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Extracting project tasks...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Abort</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="738"/>
+        <location filename="../Tasks/TaskViewer.py" line="755"/>
         <source>Extracting project tasks...
 {0}</source>
         <translation type="unfinished"></translation>
@@ -71420,12 +71519,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Scan Filter Patterns</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Enter filename patterns of files to be excluded separated by a comma:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -71435,12 +71534,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>%v/%m Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="734"/>
+        <location filename="../Tasks/TaskViewer.py" line="751"/>
         <source>Tasks</source>
         <translation type="unfinished"></translation>
     </message>
@@ -71468,22 +71567,22 @@
 <context>
     <name>TasksFile</name>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>Save Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>Read Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -73869,213 +73968,238 @@
 <context>
     <name>UMLClassDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="83"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="96"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; could not be found.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="145"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="159"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="394"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>UMLDialog</name>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="82"/>
+        <location filename="../Graphics/UMLDialog.py" line="113"/>
         <source>Close</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="122"/>
+        <location filename="../Graphics/UMLDialog.py" line="153"/>
         <source>Window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="87"/>
+        <location filename="../Graphics/UMLDialog.py" line="118"/>
         <source>Load</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="92"/>
+        <location filename="../Graphics/UMLDialog.py" line="123"/>
         <source>Save</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="97"/>
+        <location filename="../Graphics/UMLDialog.py" line="128"/>
         <source>Save As...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="107"/>
+        <location filename="../Graphics/UMLDialog.py" line="138"/>
         <source>Print</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="112"/>
+        <location filename="../Graphics/UMLDialog.py" line="143"/>
         <source>Print Preview</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="126"/>
+        <location filename="../Graphics/UMLDialog.py" line="157"/>
         <source>File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="178"/>
-        <source>Illegal diagram type &apos;{0}&apos; given.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>Save Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="230"/>
+        <location filename="../Graphics/UMLDialog.py" line="257"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="386"/>
+        <location filename="../Graphics/UMLDialog.py" line="551"/>
         <source>Load Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="287"/>
+        <location filename="../Graphics/UMLDialog.py" line="518"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;&lt;p&gt;Invalid line: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="102"/>
+        <location filename="../Graphics/UMLDialog.py" line="133"/>
         <source>Save as Image</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="274"/>
-        <source>Eric Graphics File (*.e5g);;All Files (*)</source>
+        <location filename="../Graphics/UMLDialog.py" line="43"/>
+        <source>Class Diagram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="45"/>
+        <source>Package Diagram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="47"/>
+        <source>Imports Diagram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="49"/>
+        <source>Application Diagram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="105"/>
+        <source>Illegal Diagram Type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="289"/>
+        <source>Eric Graphics File (*.egj);;Eric Text Graphics File (*.e5g);;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>UMLGraphicsView</name>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="83"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="85"/>
         <source>Delete shapes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="88"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="90"/>
         <source>Increase width by {0} points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="95"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="97"/>
         <source>Increase height by {0} points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="102"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="104"/>
         <source>Decrease width by {0} points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="109"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="111"/>
         <source>Decrease height by {0} points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="116"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="118"/>
         <source>Set size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="126"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="128"/>
         <source>Re-Layout</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="131"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="133"/>
         <source>Align Left</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="138"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="140"/>
         <source>Align Center Horizontal</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="145"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="147"/>
         <source>Align Right</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="152"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="154"/>
         <source>Align Top</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="159"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="161"/>
         <source>Align Center Vertical</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="166"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="168"/>
         <source>Align Bottom</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="219"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="233"/>
         <source>Graphics</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>Save Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="341"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="360"/>
         <source>Portable Network Graphics (*.png);;Scalable Vector Graphics (*.svg)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="356"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="375"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="121"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="123"/>
         <source>Re-Scan</source>
         <translation type="unfinished"></translation>
     </message>
@@ -74159,7 +74283,7 @@
 <context>
     <name>UnittestDialog</name>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>Unittest</source>
         <translation type="unfinished"></translation>
     </message>
@@ -74325,27 +74449,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="699"/>
         <source>Preparing Testsuite</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="989"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="991"/>
         <source>Running</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1033"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1035"/>
         <source>Failure: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1048"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1050"/>
         <source>Error: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1162"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1164"/>
         <source>Show Source</source>
         <translation type="unfinished"></translation>
     </message>
@@ -74380,17 +74504,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1063"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1065"/>
         <source>    Skipped: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1081"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1083"/>
         <source>    Expected Failure</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1098"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1100"/>
         <source>    Unexpected Success</source>
         <translation type="unfinished"></translation>
     </message>
@@ -74492,17 +74616,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="707"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
         <source>Unittest with auto-discovery</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="791"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="787"/>
         <source>You must enter a start directory for auto-discovery.</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="1013"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1015"/>
         <source>Ran %n test(s) in {0:.3f}s</source>
         <translation>
             <numerusform>Ran %n test in {0:.3f}s</numerusform>
@@ -74535,7 +74659,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="623"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="619"/>
         <source>Discovered %n Test(s)</source>
         <translation>
             <numerusform>Discovered %n Test</numerusform>
@@ -74543,22 +74667,22 @@
         </translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="628"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="624"/>
         <source>&lt;p&gt;Unable to discover tests.&lt;/p&gt;&lt;p&gt;{0}&lt;br/&gt;{1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="694"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="690"/>
         <source>You must select auto-discovery or enter a test suite file or a dotted test name.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="716"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="712"/>
         <source>&lt;Unnamed Test&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>&lt;p&gt;Unable to run test &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;{1}&lt;br/&gt;{2}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -74588,7 +74712,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="724"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="720"/>
         <source>No test case has been selected. Shall all test cases be run?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -74597,6 +74721,11 @@
         <source>Python3 Files ({0});;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../PyUnit/UnittestDialog.py" line="881"/>
+        <source>No unittest were found. Aborting...</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>UnknownDevicesDialog</name>
@@ -74835,2322 +74964,2322 @@
 <context>
     <name>UserInterface</name>
     <message>
-        <location filename="../UI/UserInterface.py" line="275"/>
+        <location filename="../UI/UserInterface.py" line="276"/>
         <source>Initializing Plugin Manager...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="282"/>
+        <location filename="../UI/UserInterface.py" line="283"/>
         <source>Generating Main User Interface...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="332"/>
+        <location filename="../UI/UserInterface.py" line="333"/>
         <source>Setting up connections...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="577"/>
+        <location filename="../UI/UserInterface.py" line="580"/>
         <source>Initializing Tools...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="587"/>
+        <location filename="../UI/UserInterface.py" line="590"/>
         <source>Registering Objects...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="624"/>
+        <location filename="../UI/UserInterface.py" line="627"/>
         <source>Initializing Actions...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="626"/>
+        <location filename="../UI/UserInterface.py" line="629"/>
         <source>Initializing Menus...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="628"/>
+        <location filename="../UI/UserInterface.py" line="631"/>
         <source>Initializing Toolbars...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="630"/>
+        <location filename="../UI/UserInterface.py" line="633"/>
         <source>Initializing Statusbar...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="657"/>
+        <location filename="../UI/UserInterface.py" line="660"/>
         <source>Initializing Single Application Server...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="667"/>
+        <location filename="../UI/UserInterface.py" line="670"/>
         <source>Activating Plugins...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="683"/>
+        <location filename="../UI/UserInterface.py" line="686"/>
         <source>Restoring Toolbarmanager...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Project-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Multiproject-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Debug-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1124"/>
+        <location filename="../UI/UserInterface.py" line="1127"/>
         <source>Cooperation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1180"/>
+        <location filename="../UI/UserInterface.py" line="1183"/>
         <source>Symbols</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Log-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Task-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Template-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1189"/>
+        <location filename="../UI/UserInterface.py" line="1192"/>
         <source>Numbers</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>File-Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Shell</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>Horizontal Toolbox</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1602"/>
+        <location filename="../UI/UserInterface.py" line="1605"/>
         <source>{0} - Passive Mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1609"/>
+        <location filename="../UI/UserInterface.py" line="1612"/>
         <source>{0} - {1} - Passive Mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1613"/>
+        <location filename="../UI/UserInterface.py" line="1616"/>
         <source>{0} - {1} - {2} - Passive Mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Quit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>&amp;Quit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Ctrl+Q</source>
         <comment>File|Quit</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1642"/>
+        <location filename="../UI/UserInterface.py" line="1645"/>
         <source>Quit the IDE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1643"/>
+        <location filename="../UI/UserInterface.py" line="1646"/>
         <source>&lt;b&gt;Quit the IDE&lt;/b&gt;&lt;p&gt;This quits the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1714"/>
+        <location filename="../UI/UserInterface.py" line="1717"/>
         <source>Edit Profile</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1720"/>
+        <location filename="../UI/UserInterface.py" line="1723"/>
         <source>Activate the edit view profile</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1722"/>
+        <location filename="../UI/UserInterface.py" line="1725"/>
         <source>&lt;b&gt;Edit Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Edit View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1731"/>
+        <location filename="../UI/UserInterface.py" line="1734"/>
         <source>Debug Profile</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1737"/>
+        <location filename="../UI/UserInterface.py" line="1740"/>
         <source>Activate the debug view profile</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1739"/>
+        <location filename="../UI/UserInterface.py" line="1742"/>
         <source>&lt;b&gt;Debug Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Debug View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>&amp;Project-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Alt+Shift+P</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>&amp;Multiproject-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Alt+Shift+M</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>&amp;Debug-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Alt+Shift+D</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>&amp;Shell</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Alt+Shift+S</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>Alt+Shift+F</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Alt+Shift+G</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Alt+Shift+T</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Alt+Shift+A</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>&amp;Horizontal Toolbox</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1919"/>
+        <location filename="../UI/UserInterface.py" line="1922"/>
         <source>Toggle the Horizontal Toolbox window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1921"/>
+        <location filename="../UI/UserInterface.py" line="1924"/>
         <source>&lt;b&gt;Toggle the Horizontal Toolbox window&lt;/b&gt;&lt;p&gt;If the Horizontal Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>Left Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>&amp;Left Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1933"/>
+        <location filename="../UI/UserInterface.py" line="1936"/>
         <source>Toggle the left sidebar window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1934"/>
+        <location filename="../UI/UserInterface.py" line="1937"/>
         <source>&lt;b&gt;Toggle the left sidebar window&lt;/b&gt;&lt;p&gt;If the left sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>Bottom Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>&amp;Bottom Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1960"/>
+        <location filename="../UI/UserInterface.py" line="1963"/>
         <source>Toggle the bottom sidebar window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1962"/>
+        <location filename="../UI/UserInterface.py" line="1965"/>
         <source>&lt;b&gt;Toggle the bottom sidebar window&lt;/b&gt;&lt;p&gt;If the bottom sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Alt+Shift+O</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Alt+Shift+Y</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Alt+Shift+B</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>What&apos;s This?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>&amp;What&apos;s This?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>Shift+F1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2126"/>
+        <location filename="../UI/UserInterface.py" line="2129"/>
         <source>Context sensitive help</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2127"/>
+        <location filename="../UI/UserInterface.py" line="2130"/>
         <source>&lt;b&gt;Display context sensitive help&lt;/b&gt;&lt;p&gt;In What&apos;s This? mode, the mouse cursor shows an arrow with a question mark, and you can click on the interface elements to get a short description of what they do and how to use them. In dialogs, this feature can be accessed using the context help button in the titlebar.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>Helpviewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>&amp;Helpviewer...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>F1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2144"/>
+        <location filename="../UI/UserInterface.py" line="2147"/>
         <source>Open the helpviewer window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show Versions</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show &amp;Versions</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2168"/>
+        <location filename="../UI/UserInterface.py" line="2171"/>
         <source>Display version information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2170"/>
+        <location filename="../UI/UserInterface.py" line="2173"/>
         <source>&lt;b&gt;Show Versions&lt;/b&gt;&lt;p&gt;Display version information.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../UI/UserInterface.py" line="2183"/>
+        <source>Check for Updates</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../UI/UserInterface.py" line="2180"/>
-        <source>Check for Updates</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2177"/>
         <source>Check for &amp;Updates...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show downloadable versions</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show &amp;downloadable versions...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2192"/>
+        <location filename="../UI/UserInterface.py" line="2195"/>
         <source>Show the versions available for download</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Report Bug</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2229"/>
+        <location filename="../UI/UserInterface.py" line="2232"/>
         <source>Report &amp;Bug...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2233"/>
+        <location filename="../UI/UserInterface.py" line="2236"/>
         <source>Report a bug</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2234"/>
+        <location filename="../UI/UserInterface.py" line="2237"/>
         <source>&lt;b&gt;Report Bug...&lt;/b&gt;&lt;p&gt;Opens a dialog to report a bug.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request Feature</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request &amp;Feature...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2245"/>
+        <location filename="../UI/UserInterface.py" line="2248"/>
         <source>Send a feature request</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2247"/>
+        <location filename="../UI/UserInterface.py" line="2250"/>
         <source>&lt;b&gt;Request Feature...&lt;/b&gt;&lt;p&gt;Opens a dialog to send a feature request.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3365"/>
-        <source>Unittest</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2256"/>
-        <source>&amp;Unittest...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2261"/>
-        <source>Start unittest dialog</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2262"/>
-        <source>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Perform unit tests. The dialog gives you the ability to select and run a unittest suite.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
-        <source>Unittest Restart</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
-        <source>&amp;Restart Unittest...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2275"/>
-        <source>Restart last unittest</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2276"/>
-        <source>&lt;b&gt;Restart Unittest&lt;/b&gt;&lt;p&gt;Restart the unittest performed last.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
-        <source>Unittest Script</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
-        <source>Unittest &amp;Script...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2305"/>
-        <source>Run unittest with current script</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2307"/>
-        <source>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Run unittest with current script.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
-        <source>Unittest Project</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
-        <source>Unittest &amp;Project...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2320"/>
-        <source>Run unittest with current project</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2322"/>
-        <source>&lt;b&gt;Unittest Project&lt;/b&gt;&lt;p&gt;Run unittest with current project.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
-        <source>UI Previewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
-        <source>&amp;UI Previewer...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2388"/>
-        <source>Start the UI Previewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2389"/>
-        <source>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Start the UI Previewer.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
-        <source>Translations Previewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
-        <source>&amp;Translations Previewer...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2401"/>
-        <source>Start the Translations Previewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2403"/>
-        <source>&lt;b&gt;Translations Previewer&lt;/b&gt;&lt;p&gt;Start the Translations Previewer.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
-        <source>Compare Files</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
-        <source>&amp;Compare Files...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2428"/>
-        <source>Compare two files</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2416"/>
-        <source>&lt;b&gt;Compare Files&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
-        <source>Compare Files side by side</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2429"/>
-        <source>&lt;b&gt;Compare Files side by side&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files and show the result side by side.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
-        <source>SQL Browser</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
-        <source>SQL &amp;Browser...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2442"/>
-        <source>Browse a SQL database</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2443"/>
-        <source>&lt;b&gt;SQL Browser&lt;/b&gt;&lt;p&gt;Browse a SQL database.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2455"/>
-        <source>Mini Editor</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2450"/>
-        <source>Mini &amp;Editor...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2456"/>
-        <source>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Open a dialog with a simplified editor.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
-        <source>Icon Editor</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
-        <source>&amp;Icon Editor...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
-        <source>Preferences</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
-        <source>&amp;Preferences...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2526"/>
-        <source>Set the prefered configuration</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2528"/>
-        <source>&lt;b&gt;Preferences&lt;/b&gt;&lt;p&gt;Set the configuration items of the application with your prefered values.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
-        <source>Export Preferences</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
-        <source>E&amp;xport Preferences...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2542"/>
-        <source>Export the current configuration</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2544"/>
-        <source>&lt;b&gt;Export Preferences&lt;/b&gt;&lt;p&gt;Export the current configuration to a file.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
-        <source>Import Preferences</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
-        <source>I&amp;mport Preferences...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2556"/>
-        <source>Import a previously exported configuration</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2558"/>
-        <source>&lt;b&gt;Import Preferences&lt;/b&gt;&lt;p&gt;Import a previously exported configuration.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
-        <source>Reload APIs</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
-        <source>Reload &amp;APIs</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2569"/>
-        <source>Reload the API information</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2571"/>
-        <source>&lt;b&gt;Reload APIs&lt;/b&gt;&lt;p&gt;Reload the API information.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2583"/>
-        <source>Show external tools</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2578"/>
-        <source>Show external &amp;tools</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
-        <source>View Profiles</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
-        <source>&amp;View Profiles...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2599"/>
-        <source>Configure view profiles</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2601"/>
-        <source>&lt;b&gt;View Profiles&lt;/b&gt;&lt;p&gt;Configure the view profiles. With this dialog you may set the visibility of the various windows for the predetermined view profiles.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
-        <source>Toolbars</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
-        <source>Tool&amp;bars...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2616"/>
-        <source>Configure toolbars</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2617"/>
-        <source>&lt;b&gt;Toolbars&lt;/b&gt;&lt;p&gt;Configure the toolbars. With this dialog you may change the actions shown on the various toolbars and define your own toolbars.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
-        <source>Keyboard Shortcuts</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
-        <source>Keyboard &amp;Shortcuts...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2631"/>
-        <source>Set the keyboard shortcuts</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2633"/>
-        <source>&lt;b&gt;Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Set the keyboard shortcuts of the application with your prefered values.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
-        <source>Export Keyboard Shortcuts</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2641"/>
-        <source>&amp;Export Keyboard Shortcuts...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2646"/>
-        <source>Export the keyboard shortcuts</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2648"/>
-        <source>&lt;b&gt;Export Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Export the keyboard shortcuts of the application.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
-        <source>Import Keyboard Shortcuts</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2655"/>
-        <source>&amp;Import Keyboard Shortcuts...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2660"/>
-        <source>Import the keyboard shortcuts</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2662"/>
-        <source>&lt;b&gt;Import Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Import the keyboard shortcuts of the application.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
-        <source>Activate current editor</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
-        <source>Alt+Shift+E</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
-        <source>Show next</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
-        <source>Ctrl+Alt+Tab</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
-        <source>Show previous</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
-        <source>Shift+Ctrl+Alt+Tab</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
-        <source>Switch between tabs</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
-        <source>Ctrl+1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
-        <source>Plugin Infos</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
-        <source>&amp;Plugin Infos...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2761"/>
-        <source>Show Plugin Infos</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2762"/>
-        <source>&lt;b&gt;Plugin Infos...&lt;/b&gt;&lt;p&gt;This opens a dialog, that show some information about loaded plugins.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2775"/>
-        <source>Install Plugins</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2770"/>
-        <source>&amp;Install Plugins...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2776"/>
-        <source>&lt;b&gt;Install Plugins...&lt;/b&gt;&lt;p&gt;This opens a dialog to install or update plugins.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2788"/>
-        <source>Uninstall Plugin</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2783"/>
-        <source>&amp;Uninstall Plugin...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2789"/>
-        <source>&lt;b&gt;Uninstall Plugin...&lt;/b&gt;&lt;p&gt;This opens a dialog to uninstall a plugin.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
-        <source>Plugin Repository</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
-        <source>Plugin &amp;Repository...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2801"/>
-        <source>Show Plugins available for download</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2803"/>
-        <source>&lt;b&gt;Plugin Repository...&lt;/b&gt;&lt;p&gt;This opens a dialog, that shows a list of plugins available on the Internet.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2953"/>
-        <source>Eric API Documentation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2957"/>
-        <source>Open Eric API Documentation</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3158"/>
-        <source>&amp;Unittest</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3102"/>
-        <source>E&amp;xtras</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3112"/>
-        <source>Wi&amp;zards</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3175"/>
-        <source>Select Tool Group</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3186"/>
-        <source>Se&amp;ttings</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3216"/>
-        <source>&amp;Window</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3277"/>
-        <source>&amp;Toolbars</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3139"/>
-        <source>P&amp;lugins</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3148"/>
-        <source>Configure...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3291"/>
-        <source>&amp;Help</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3364"/>
-        <source>Tools</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3366"/>
-        <source>Settings</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
-        <source>Help</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="3368"/>
-        <source>Profiles</source>
+        <source>Unittest</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2259"/>
+        <source>&amp;Unittest...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2264"/>
+        <source>Start unittest dialog</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2265"/>
+        <source>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Perform unit tests. The dialog gives you the ability to select and run a unittest suite.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2273"/>
+        <source>Unittest Restart</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2273"/>
+        <source>&amp;Restart Unittest...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2278"/>
+        <source>Restart last unittest</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2279"/>
+        <source>&lt;b&gt;Restart Unittest&lt;/b&gt;&lt;p&gt;Restart the unittest performed last.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2303"/>
+        <source>Unittest Script</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2303"/>
+        <source>Unittest &amp;Script...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2308"/>
+        <source>Run unittest with current script</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2310"/>
+        <source>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Run unittest with current script.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2318"/>
+        <source>Unittest Project</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2318"/>
+        <source>Unittest &amp;Project...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2323"/>
+        <source>Run unittest with current project</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2325"/>
+        <source>&lt;b&gt;Unittest Project&lt;/b&gt;&lt;p&gt;Run unittest with current project.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2386"/>
+        <source>UI Previewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2386"/>
+        <source>&amp;UI Previewer...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2391"/>
+        <source>Start the UI Previewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2392"/>
+        <source>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Start the UI Previewer.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2399"/>
+        <source>Translations Previewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2399"/>
+        <source>&amp;Translations Previewer...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2404"/>
+        <source>Start the Translations Previewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2406"/>
+        <source>&lt;b&gt;Translations Previewer&lt;/b&gt;&lt;p&gt;Start the Translations Previewer.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2413"/>
+        <source>Compare Files</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2413"/>
+        <source>&amp;Compare Files...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2431"/>
+        <source>Compare two files</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2419"/>
+        <source>&lt;b&gt;Compare Files&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2426"/>
+        <source>Compare Files side by side</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2432"/>
+        <source>&lt;b&gt;Compare Files side by side&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files and show the result side by side.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2440"/>
+        <source>SQL Browser</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2440"/>
+        <source>SQL &amp;Browser...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2445"/>
+        <source>Browse a SQL database</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2446"/>
+        <source>&lt;b&gt;SQL Browser&lt;/b&gt;&lt;p&gt;Browse a SQL database.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2458"/>
+        <source>Mini Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2453"/>
+        <source>Mini &amp;Editor...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2459"/>
+        <source>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Open a dialog with a simplified editor.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2495"/>
+        <source>Icon Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2495"/>
+        <source>&amp;Icon Editor...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2524"/>
+        <source>Preferences</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2524"/>
+        <source>&amp;Preferences...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2529"/>
+        <source>Set the prefered configuration</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2531"/>
+        <source>&lt;b&gt;Preferences&lt;/b&gt;&lt;p&gt;Set the configuration items of the application with your prefered values.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2540"/>
+        <source>Export Preferences</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2540"/>
+        <source>E&amp;xport Preferences...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2545"/>
+        <source>Export the current configuration</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2547"/>
+        <source>&lt;b&gt;Export Preferences&lt;/b&gt;&lt;p&gt;Export the current configuration to a file.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2554"/>
+        <source>Import Preferences</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2554"/>
+        <source>I&amp;mport Preferences...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2559"/>
+        <source>Import a previously exported configuration</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2561"/>
+        <source>&lt;b&gt;Import Preferences&lt;/b&gt;&lt;p&gt;Import a previously exported configuration.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2568"/>
+        <source>Reload APIs</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2568"/>
+        <source>Reload &amp;APIs</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2572"/>
+        <source>Reload the API information</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2574"/>
+        <source>&lt;b&gt;Reload APIs&lt;/b&gt;&lt;p&gt;Reload the API information.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2586"/>
+        <source>Show external tools</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2581"/>
+        <source>Show external &amp;tools</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2597"/>
+        <source>View Profiles</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2597"/>
+        <source>&amp;View Profiles...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2602"/>
+        <source>Configure view profiles</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2604"/>
+        <source>&lt;b&gt;View Profiles&lt;/b&gt;&lt;p&gt;Configure the view profiles. With this dialog you may set the visibility of the various windows for the predetermined view profiles.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2614"/>
+        <source>Toolbars</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2614"/>
+        <source>Tool&amp;bars...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2619"/>
+        <source>Configure toolbars</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2620"/>
+        <source>&lt;b&gt;Toolbars&lt;/b&gt;&lt;p&gt;Configure the toolbars. With this dialog you may change the actions shown on the various toolbars and define your own toolbars.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2629"/>
+        <source>Keyboard Shortcuts</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2629"/>
+        <source>Keyboard &amp;Shortcuts...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2634"/>
+        <source>Set the keyboard shortcuts</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2636"/>
+        <source>&lt;b&gt;Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Set the keyboard shortcuts of the application with your prefered values.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6324"/>
+        <source>Export Keyboard Shortcuts</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2644"/>
+        <source>&amp;Export Keyboard Shortcuts...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2649"/>
+        <source>Export the keyboard shortcuts</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2651"/>
+        <source>&lt;b&gt;Export Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Export the keyboard shortcuts of the application.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6342"/>
+        <source>Import Keyboard Shortcuts</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2658"/>
+        <source>&amp;Import Keyboard Shortcuts...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2663"/>
+        <source>Import the keyboard shortcuts</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2665"/>
+        <source>&lt;b&gt;Import Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Import the keyboard shortcuts of the application.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2723"/>
+        <source>Activate current editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2723"/>
+        <source>Alt+Shift+E</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2733"/>
+        <source>Show next</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2733"/>
+        <source>Ctrl+Alt+Tab</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2742"/>
+        <source>Show previous</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2742"/>
+        <source>Shift+Ctrl+Alt+Tab</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2751"/>
+        <source>Switch between tabs</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2751"/>
+        <source>Ctrl+1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2760"/>
+        <source>Plugin Infos</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2760"/>
+        <source>&amp;Plugin Infos...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2764"/>
+        <source>Show Plugin Infos</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2765"/>
+        <source>&lt;b&gt;Plugin Infos...&lt;/b&gt;&lt;p&gt;This opens a dialog, that show some information about loaded plugins.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2778"/>
+        <source>Install Plugins</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2773"/>
+        <source>&amp;Install Plugins...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2779"/>
+        <source>&lt;b&gt;Install Plugins...&lt;/b&gt;&lt;p&gt;This opens a dialog to install or update plugins.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2791"/>
+        <source>Uninstall Plugin</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2786"/>
+        <source>&amp;Uninstall Plugin...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2792"/>
+        <source>&lt;b&gt;Uninstall Plugin...&lt;/b&gt;&lt;p&gt;This opens a dialog to uninstall a plugin.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2799"/>
+        <source>Plugin Repository</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2799"/>
+        <source>Plugin &amp;Repository...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2804"/>
+        <source>Show Plugins available for download</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2806"/>
+        <source>&lt;b&gt;Plugin Repository...&lt;/b&gt;&lt;p&gt;This opens a dialog, that shows a list of plugins available on the Internet.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2956"/>
+        <source>Eric API Documentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2960"/>
+        <source>Open Eric API Documentation</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3161"/>
+        <source>&amp;Unittest</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3105"/>
+        <source>E&amp;xtras</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3115"/>
+        <source>Wi&amp;zards</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3178"/>
+        <source>Select Tool Group</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3189"/>
+        <source>Se&amp;ttings</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3219"/>
+        <source>&amp;Window</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3280"/>
+        <source>&amp;Toolbars</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3142"/>
+        <source>P&amp;lugins</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3151"/>
+        <source>Configure...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3294"/>
+        <source>&amp;Help</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3367"/>
+        <source>Tools</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../UI/UserInterface.py" line="3369"/>
+        <source>Settings</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5216"/>
+        <source>Help</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3371"/>
+        <source>Profiles</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3372"/>
         <source>Plugins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3534"/>
+        <location filename="../UI/UserInterface.py" line="3537"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors language.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3541"/>
+        <location filename="../UI/UserInterface.py" line="3544"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors encoding.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3548"/>
+        <location filename="../UI/UserInterface.py" line="3551"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors eol setting.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3555"/>
+        <location filename="../UI/UserInterface.py" line="3558"/>
         <source>&lt;p&gt;This part of the status bar displays an indication of the current editors files writability.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3562"/>
+        <location filename="../UI/UserInterface.py" line="3565"/>
         <source>&lt;p&gt;This part of the status bar displays the line number of the current editor.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3569"/>
+        <location filename="../UI/UserInterface.py" line="3572"/>
         <source>&lt;p&gt;This part of the status bar displays the cursor position of the current editor.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3640"/>
+        <location filename="../UI/UserInterface.py" line="3643"/>
         <source>External Tools/{0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7268"/>
+        <location filename="../UI/UserInterface.py" line="7295"/>
         <source>&lt;/table&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Email address or mail server address is empty. Please configure your Email settings in the Preferences Dialog.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>Restart application</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>The application needs to be restarted. Do it now?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4207"/>
+        <location filename="../UI/UserInterface.py" line="4210"/>
         <source>Configure Tool Groups ...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4211"/>
+        <location filename="../UI/UserInterface.py" line="4214"/>
         <source>Configure current Tool Group ...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4162"/>
+        <location filename="../UI/UserInterface.py" line="4165"/>
         <source>&amp;Builtin Tools</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4179"/>
+        <location filename="../UI/UserInterface.py" line="4182"/>
         <source>&amp;Plugin Tools</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4326"/>
+        <location filename="../UI/UserInterface.py" line="4329"/>
         <source>&amp;Show all</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4328"/>
+        <location filename="../UI/UserInterface.py" line="4331"/>
         <source>&amp;Hide all</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>Problem</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not exist or is zero length.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../UI/UserInterface.py" line="5552"/>
+        <source>Process Generation Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5069"/>
+        <source>&lt;p&gt;Could not start Qt-Designer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5139"/>
+        <source>&lt;p&gt;Could not start Qt-Linguist.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5183"/>
+        <source>&lt;p&gt;Could not start Qt-Assistant.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5216"/>
+        <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5230"/>
+        <source>&lt;p&gt;Could not start custom viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5250"/>
+        <source>&lt;p&gt;Could not start the help viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5300"/>
+        <source>&lt;p&gt;Could not start UI Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5357"/>
+        <source>&lt;p&gt;Could not start Translation Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5380"/>
+        <source>&lt;p&gt;Could not start SQL Browser.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5497"/>
+        <source>External Tools</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5488"/>
+        <source>No tool entry found for external tool &apos;{0}&apos; in tool group &apos;{1}&apos;.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5497"/>
+        <source>No toolgroup entry &apos;{0}&apos; found.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../UI/UserInterface.py" line="5536"/>
-        <source>Process Generation Error</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5066"/>
-        <source>&lt;p&gt;Could not start Qt-Designer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5136"/>
-        <source>&lt;p&gt;Could not start Qt-Linguist.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5180"/>
-        <source>&lt;p&gt;Could not start Qt-Assistant.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
-        <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5227"/>
-        <source>&lt;p&gt;Could not start custom viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5247"/>
-        <source>&lt;p&gt;Could not start the help viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5297"/>
-        <source>&lt;p&gt;Could not start UI Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5354"/>
-        <source>&lt;p&gt;Could not start Translation Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5377"/>
-        <source>&lt;p&gt;Could not start SQL Browser.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
-        <source>External Tools</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5472"/>
-        <source>No tool entry found for external tool &apos;{0}&apos; in tool group &apos;{1}&apos;.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
-        <source>No toolgroup entry &apos;{0}&apos; found.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5520"/>
         <source>Starting process &apos;{0} {1}&apos;.
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5536"/>
+        <location filename="../UI/UserInterface.py" line="5552"/>
         <source>&lt;p&gt;Could not start the tool entry &lt;b&gt;{0}&lt;/b&gt;.&lt;br&gt;Ensure that it is available as &lt;b&gt;{1}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5614"/>
+        <location filename="../UI/UserInterface.py" line="5630"/>
         <source>Process &apos;{0}&apos; has exited.
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>Documentation Missing</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>&lt;p&gt;The documentation starting point &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; could not be found.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1673"/>
+        <location filename="../UI/UserInterface.py" line="1676"/>
         <source>Save session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6550"/>
+        <location filename="../UI/UserInterface.py" line="6566"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>Read session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>Drop Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; is not a file.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>&amp;Cancel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7059"/>
+        <location filename="../UI/UserInterface.py" line="7086"/>
         <source>Trying host {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>Update available</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Error during updates check</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Could not perform updates check.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7253"/>
+        <location filename="../UI/UserInterface.py" line="7280"/>
         <source>&lt;h3&gt;Available versions&lt;/h3&gt;&lt;table&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>First time usage</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2931"/>
+        <location filename="../UI/UserInterface.py" line="2934"/>
         <source>Python 3 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2935"/>
+        <location filename="../UI/UserInterface.py" line="2938"/>
         <source>Open Python 3 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>Error getting versions information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7111"/>
+        <location filename="../UI/UserInterface.py" line="7138"/>
         <source>The versions information could not be downloaded. Please go online and try again.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Open Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Could not start a web browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>The versions information could not be downloaded for the last 7 days. Please go online and try again.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="692"/>
+        <location filename="../UI/UserInterface.py" line="695"/>
         <source>Setting View Profile...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="705"/>
+        <location filename="../UI/UserInterface.py" line="708"/>
         <source>Reading Tasks...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="710"/>
+        <location filename="../UI/UserInterface.py" line="713"/>
         <source>Reading Templates...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="715"/>
+        <location filename="../UI/UserInterface.py" line="718"/>
         <source>Starting Debugger...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New Window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New &amp;Window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>Ctrl+Shift+N</source>
         <comment>File|New Window</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Unittest Rerun Failed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Rerun Failed Tests...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2289"/>
+        <location filename="../UI/UserInterface.py" line="2292"/>
         <source>Rerun failed tests of the last run</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2291"/>
+        <location filename="../UI/UserInterface.py" line="2294"/>
         <source>&lt;b&gt;Rerun Failed Tests&lt;/b&gt;&lt;p&gt;Rerun all tests that failed during the last unittest run.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
+        <location filename="../UI/UserInterface.py" line="2426"/>
         <source>Compare &amp;Files side by side...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>Snapshot</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>&amp;Snapshot...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2511"/>
+        <location filename="../UI/UserInterface.py" line="2514"/>
         <source>Take snapshots of a screen region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2513"/>
+        <location filename="../UI/UserInterface.py" line="2516"/>
         <source>&lt;b&gt;Snapshot&lt;/b&gt;&lt;p&gt;This opens a dialog to take snapshots of a screen region.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5449"/>
+        <location filename="../UI/UserInterface.py" line="5465"/>
         <source>&lt;p&gt;Could not start Snapshot tool.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7324"/>
+        <location filename="../UI/UserInterface.py" line="7351"/>
         <source>Select Workspace Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
+        <location filename="../UI/UserInterface.py" line="1893"/>
         <source>Left Toolbox</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>Right Toolbox</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1754"/>
+        <location filename="../UI/UserInterface.py" line="1757"/>
         <source>Switch the input focus to the Project-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1756"/>
+        <location filename="../UI/UserInterface.py" line="1759"/>
         <source>&lt;b&gt;Activate Project-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Project-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1771"/>
+        <location filename="../UI/UserInterface.py" line="1774"/>
         <source>Switch the input focus to the Multiproject-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1773"/>
+        <location filename="../UI/UserInterface.py" line="1776"/>
         <source>&lt;b&gt;Activate Multiproject-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Multiproject-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1789"/>
+        <location filename="../UI/UserInterface.py" line="1792"/>
         <source>Switch the input focus to the Debug-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1791"/>
+        <location filename="../UI/UserInterface.py" line="1794"/>
         <source>&lt;b&gt;Activate Debug-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Debug-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1807"/>
+        <location filename="../UI/UserInterface.py" line="1810"/>
         <source>Switch the input focus to the Shell window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1809"/>
+        <location filename="../UI/UserInterface.py" line="1812"/>
         <source>&lt;b&gt;Activate Shell&lt;/b&gt;&lt;p&gt;This switches the input focus to the Shell window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>&amp;File-Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1824"/>
+        <location filename="../UI/UserInterface.py" line="1827"/>
         <source>Switch the input focus to the File-Browser window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1826"/>
+        <location filename="../UI/UserInterface.py" line="1829"/>
         <source>&lt;b&gt;Activate File-Browser&lt;/b&gt;&lt;p&gt;This switches the input focus to the File-Browser window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Lo&amp;g-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1841"/>
+        <location filename="../UI/UserInterface.py" line="1844"/>
         <source>Switch the input focus to the Log-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1843"/>
+        <location filename="../UI/UserInterface.py" line="1846"/>
         <source>&lt;b&gt;Activate Log-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Log-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>&amp;Task-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1859"/>
+        <location filename="../UI/UserInterface.py" line="1862"/>
         <source>Switch the input focus to the Task-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Templ&amp;ate-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1878"/>
+        <location filename="../UI/UserInterface.py" line="1881"/>
         <source>Switch the input focus to the Template-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1880"/>
+        <location filename="../UI/UserInterface.py" line="1883"/>
         <source>&lt;b&gt;Activate Template-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Template-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
-        <source>&amp;Left Toolbox</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="1893"/>
+        <source>&amp;Left Toolbox</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1896"/>
         <source>Toggle the Left Toolbox window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1894"/>
+        <location filename="../UI/UserInterface.py" line="1897"/>
         <source>&lt;b&gt;Toggle the Left Toolbox window&lt;/b&gt;&lt;p&gt;If the Left Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>&amp;Right Toolbox</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1906"/>
+        <location filename="../UI/UserInterface.py" line="1909"/>
         <source>Toggle the Right Toolbox window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1907"/>
+        <location filename="../UI/UserInterface.py" line="1910"/>
         <source>&lt;b&gt;Toggle the Right Toolbox window&lt;/b&gt;&lt;p&gt;If the Right Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>Right Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>&amp;Right Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1946"/>
+        <location filename="../UI/UserInterface.py" line="1949"/>
         <source>Toggle the right sidebar window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1948"/>
+        <location filename="../UI/UserInterface.py" line="1951"/>
         <source>&lt;b&gt;Toggle the right sidebar window&lt;/b&gt;&lt;p&gt;If the right sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Cooperation-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Co&amp;operation-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1977"/>
+        <location filename="../UI/UserInterface.py" line="1980"/>
         <source>Switch the input focus to the Cooperation-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1979"/>
+        <location filename="../UI/UserInterface.py" line="1982"/>
         <source>&lt;b&gt;Activate Cooperation-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Cooperation-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Symbols-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>S&amp;ymbols-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2014"/>
+        <location filename="../UI/UserInterface.py" line="2017"/>
         <source>Switch the input focus to the Symbols-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2016"/>
+        <location filename="../UI/UserInterface.py" line="2019"/>
         <source>&lt;b&gt;Activate Symbols-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Symbols-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Numbers-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Num&amp;bers-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2033"/>
+        <location filename="../UI/UserInterface.py" line="2036"/>
         <source>Switch the input focus to the Numbers-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2035"/>
+        <location filename="../UI/UserInterface.py" line="2038"/>
         <source>&lt;b&gt;Activate Numbers-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Numbers-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3225"/>
+        <location filename="../UI/UserInterface.py" line="3228"/>
         <source>&amp;Windows</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1861"/>
+        <location filename="../UI/UserInterface.py" line="1864"/>
         <source>&lt;b&gt;Activate Task-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Task-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>IRC</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>&amp;IRC</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1996"/>
+        <location filename="../UI/UserInterface.py" line="1999"/>
         <source>Switch the input focus to the IRC window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1998"/>
+        <location filename="../UI/UserInterface.py" line="2001"/>
         <source>&lt;b&gt;Activate IRC&lt;/b&gt;&lt;p&gt;This switches the input focus to the IRC window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-Designer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-&amp;Designer...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2347"/>
+        <location filename="../UI/UserInterface.py" line="2350"/>
         <source>Start Qt-Designer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2348"/>
+        <location filename="../UI/UserInterface.py" line="2351"/>
         <source>&lt;b&gt;Qt-Designer&lt;/b&gt;&lt;p&gt;Start Qt-Designer.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-Linguist</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-&amp;Linguist...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2373"/>
+        <location filename="../UI/UserInterface.py" line="2376"/>
         <source>Start Qt-Linguist</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2374"/>
+        <location filename="../UI/UserInterface.py" line="2377"/>
         <source>&lt;b&gt;Qt-Linguist&lt;/b&gt;&lt;p&gt;Start Qt-Linguist.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2862"/>
+        <location filename="../UI/UserInterface.py" line="2865"/>
         <source>Qt5 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2866"/>
+        <location filename="../UI/UserInterface.py" line="2869"/>
         <source>Open Qt5 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2675"/>
+        <location filename="../UI/UserInterface.py" line="2678"/>
         <source>Manage the saved SSL certificates</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2677"/>
+        <location filename="../UI/UserInterface.py" line="2680"/>
         <source>&lt;b&gt;Manage SSL Certificates...&lt;/b&gt;&lt;p&gt;Opens a dialog to manage the saved SSL certificates.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2691"/>
+        <location filename="../UI/UserInterface.py" line="2694"/>
         <source>Edit the message filters used to suppress unwanted messages</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2693"/>
+        <location filename="../UI/UserInterface.py" line="2696"/>
         <source>&lt;b&gt;Edit Message Filters&lt;/b&gt;&lt;p&gt;Opens a dialog to edit the message filters used to suppress unwanted messages been shown in an error window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2892"/>
+        <location filename="../UI/UserInterface.py" line="2895"/>
         <source>PyQt5 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2896"/>
+        <location filename="../UI/UserInterface.py" line="2899"/>
         <source>Open PyQt5 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2937"/>
+        <location filename="../UI/UserInterface.py" line="2940"/>
         <source>&lt;b&gt;Python 3 Documentation&lt;/b&gt;&lt;p&gt;Display the Python 3 documentation. If no documentation directory is configured, the location of the Python 3 documentation is assumed to be the doc directory underneath the location of the Python 3 executable on Windows and &lt;i&gt;/usr/share/doc/packages/python/html&lt;/i&gt; on Unix. Set PYTHON3DOCDIR in your environment to override this.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>%v/%m</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2207"/>
+        <location filename="../UI/UserInterface.py" line="2210"/>
         <source>Show Error Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2203"/>
+        <location filename="../UI/UserInterface.py" line="2206"/>
         <source>Show Error &amp;Log...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2208"/>
+        <location filename="../UI/UserInterface.py" line="2211"/>
         <source>&lt;b&gt;Show Error Log...&lt;/b&gt;&lt;p&gt;Opens a dialog showing the most recent error log.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7054"/>
+        <location filename="../UI/UserInterface.py" line="7081"/>
         <source>Version Check</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="669"/>
-        <source>Generating Plugins Toolbars...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="4182"/>
-        <source>&amp;User Tools</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="4252"/>
-        <source>No User Tools Configured</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
-        <source>Hex Editor</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
-        <source>&amp;Hex Editor...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2709"/>
-        <source>Clear private data</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2711"/>
-        <source>&lt;b&gt;Clear private data&lt;/b&gt;&lt;p&gt;Clears the private data like the various list of recently opened files, projects or multi projects.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1669"/>
-        <source>Save session...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1674"/>
-        <source>&lt;b&gt;Save session...&lt;/b&gt;&lt;p&gt;This saves the current session to disk. A dialog is opened to select the file name.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
-        <source>Load session</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1682"/>
-        <source>Load session...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1687"/>
-        <source>&lt;b&gt;Load session...&lt;/b&gt;&lt;p&gt;This loads a session saved to disk previously. A dialog is opened to select the file name.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
-        <source>Crash Session found!</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
-        <source>A session file of a crashed session was found. Shall this session be restored?</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="672"/>
+        <source>Generating Plugins Toolbars...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="4185"/>
+        <source>&amp;User Tools</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="4255"/>
+        <source>No User Tools Configured</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2466"/>
+        <source>Hex Editor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2466"/>
+        <source>&amp;Hex Editor...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2712"/>
+        <source>Clear private data</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2714"/>
+        <source>&lt;b&gt;Clear private data&lt;/b&gt;&lt;p&gt;Clears the private data like the various list of recently opened files, projects or multi projects.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1672"/>
+        <source>Save session...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1677"/>
+        <source>&lt;b&gt;Save session...&lt;/b&gt;&lt;p&gt;This saves the current session to disk. A dialog is opened to select the file name.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6660"/>
+        <source>Load session</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1685"/>
+        <source>Load session...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1690"/>
+        <source>&lt;b&gt;Load session...&lt;/b&gt;&lt;p&gt;This loads a session saved to disk previously. A dialog is opened to select the file name.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6710"/>
+        <source>Crash Session found!</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6710"/>
+        <source>A session file of a crashed session was found. Shall this session be restored?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="675"/>
         <source>Cleaning Plugins Download Area...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="664"/>
+        <location filename="../UI/UserInterface.py" line="667"/>
         <source>Initializing Plugins...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>Update Check</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>You installed eric directly from the source code. There is no possibility to check for the availability of an update.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Code Documentation Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2867"/>
+        <location filename="../UI/UserInterface.py" line="2870"/>
         <source>&lt;b&gt;Qt5 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2898"/>
+        <location filename="../UI/UserInterface.py" line="2901"/>
         <source>&lt;b&gt;PyQt5 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2974"/>
+        <location filename="../UI/UserInterface.py" line="2977"/>
         <source>PySide2 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2978"/>
+        <location filename="../UI/UserInterface.py" line="2981"/>
         <source>Open PySide2 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2980"/>
+        <location filename="../UI/UserInterface.py" line="2983"/>
         <source>&lt;b&gt;PySide2 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide2 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>&lt;p&gt;The PySide{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2817"/>
+        <location filename="../UI/UserInterface.py" line="2820"/>
         <source>Virtualenv Manager</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2811"/>
+        <location filename="../UI/UserInterface.py" line="2814"/>
         <source>&amp;Virtualenv Manager...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2819"/>
+        <location filename="../UI/UserInterface.py" line="2822"/>
         <source>&lt;b&gt;Virtualenv Manager&lt;/b&gt;&lt;p&gt;This opens a dialog to manage the defined Python virtual environments.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2834"/>
+        <location filename="../UI/UserInterface.py" line="2837"/>
         <source>Virtualenv Configurator</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2828"/>
+        <location filename="../UI/UserInterface.py" line="2831"/>
         <source>Virtualenv &amp;Configurator...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2836"/>
+        <location filename="../UI/UserInterface.py" line="2839"/>
         <source>&lt;b&gt;Virtualenv Configurator&lt;/b&gt;&lt;p&gt;This opens a dialog for entering all the parameters needed to create a Python virtual environment using virtualenv or pyvenv.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3232"/>
+        <location filename="../UI/UserInterface.py" line="3235"/>
         <source>Left Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3244"/>
+        <location filename="../UI/UserInterface.py" line="3247"/>
         <source>Bottom Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3251"/>
+        <location filename="../UI/UserInterface.py" line="3254"/>
         <source>Right Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3271"/>
+        <location filename="../UI/UserInterface.py" line="3274"/>
         <source>Plug-ins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Restart</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Ctrl+Shift+Q</source>
         <comment>File|Quit</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1659"/>
+        <location filename="../UI/UserInterface.py" line="1662"/>
         <source>Restart the IDE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1660"/>
+        <location filename="../UI/UserInterface.py" line="1663"/>
         <source>&lt;b&gt;Restart the IDE&lt;/b&gt;&lt;p&gt;This restarts the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>Start Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Conda</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>PyPI</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3580"/>
+        <location filename="../UI/UserInterface.py" line="3583"/>
         <source>&lt;p&gt;This part of the status bar allows zooming the current editor or shell.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>MicroPython</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>Ctrl+Alt+Shift+I</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Ctrl+Alt+Shift+D</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2052"/>
-        <source>Switch the input focus to the Code Documentation Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="2055"/>
+        <source>Switch the input focus to the Code Documentation Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2058"/>
         <source>&lt;b&gt;Code Documentation Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Code Documentation Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>Ctrl+Alt+Shift+P</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2072"/>
+        <location filename="../UI/UserInterface.py" line="2075"/>
         <source>Switch the input focus to the PyPI window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2074"/>
+        <location filename="../UI/UserInterface.py" line="2077"/>
         <source>&lt;b&gt;PyPI&lt;/b&gt;&lt;p&gt;This switches the input focus to the PyPI window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Ctrl+Alt+Shift+C</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2090"/>
+        <location filename="../UI/UserInterface.py" line="2093"/>
         <source>Switch the input focus to the Conda window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2092"/>
+        <location filename="../UI/UserInterface.py" line="2095"/>
         <source>&lt;b&gt;Conda&lt;/b&gt;&lt;p&gt;This switches the input focus to the Conda window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>Ctrl+Alt+Shift+M</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2108"/>
+        <location filename="../UI/UserInterface.py" line="2111"/>
         <source>Switch the input focus to the MicroPython window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2110"/>
+        <location filename="../UI/UserInterface.py" line="2113"/>
         <source>&lt;b&gt;MicroPython&lt;/b&gt;&lt;p&gt;This switches the input focus to the MicroPython window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3229"/>
+        <location filename="../UI/UserInterface.py" line="3232"/>
         <source>Central Park</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3746"/>
+        <location filename="../UI/UserInterface.py" line="3749"/>
         <source>&lt;h2&gt;Version Numbers&lt;/h2&gt;&lt;table&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5075"/>
+        <location filename="../UI/UserInterface.py" line="5078"/>
         <source>&lt;p&gt;Could not find the Qt-Designer executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5145"/>
+        <location filename="../UI/UserInterface.py" line="5148"/>
         <source>&lt;p&gt;Could not find the Qt-Linguist executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5189"/>
+        <location filename="../UI/UserInterface.py" line="5192"/>
         <source>&lt;p&gt;Could not find the Qt-Assistant executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install Info</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install &amp;Info...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2219"/>
+        <location filename="../UI/UserInterface.py" line="2222"/>
         <source>Show Installation Information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2221"/>
+        <location filename="../UI/UserInterface.py" line="2224"/>
         <source>&lt;b&gt;Show Install Info...&lt;/b&gt;&lt;p&gt;Opens a dialog showing some information about the installation process.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2877"/>
+        <location filename="../UI/UserInterface.py" line="2880"/>
         <source>Qt6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2881"/>
+        <location filename="../UI/UserInterface.py" line="2884"/>
         <source>Open Qt6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2882"/>
+        <location filename="../UI/UserInterface.py" line="2885"/>
         <source>&lt;b&gt;Qt6 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2909"/>
+        <location filename="../UI/UserInterface.py" line="2912"/>
         <source>PyQt6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2913"/>
+        <location filename="../UI/UserInterface.py" line="2916"/>
         <source>Open PyQt6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2915"/>
+        <location filename="../UI/UserInterface.py" line="2918"/>
         <source>&lt;b&gt;PyQt6 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2994"/>
+        <location filename="../UI/UserInterface.py" line="2997"/>
         <source>PySide6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2998"/>
+        <location filename="../UI/UserInterface.py" line="3001"/>
         <source>Open PySide6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3000"/>
+        <location filename="../UI/UserInterface.py" line="3003"/>
         <source>&lt;b&gt;PySide6 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5754"/>
+        <location filename="../UI/UserInterface.py" line="5770"/>
         <source>&lt;p&gt;The PyQt{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1701"/>
+        <location filename="../UI/UserInterface.py" line="1704"/>
         <source>Open a new eric instance</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1703"/>
+        <location filename="../UI/UserInterface.py" line="1706"/>
         <source>&lt;b&gt;New Window&lt;/b&gt;&lt;p&gt;This opens a new instance of the eric IDE.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2146"/>
+        <location filename="../UI/UserInterface.py" line="2149"/>
         <source>&lt;b&gt;Helpviewer&lt;/b&gt;&lt;p&gt;Display the eric web browser. This window will show HTML help files and help from Qt help collections. It has the capability to navigate to links, set bookmarks, print the displayed help and some more features. You may use it to browse the internet as well&lt;/p&gt;&lt;p&gt;If called with a word selected, this word is search in the Qt help collection.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2181"/>
+        <location filename="../UI/UserInterface.py" line="2184"/>
         <source>&lt;b&gt;Check for Updates...&lt;/b&gt;&lt;p&gt;Checks the internet for updates of eric.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2194"/>
+        <location filename="../UI/UserInterface.py" line="2197"/>
         <source>&lt;b&gt;Show downloadable versions...&lt;/b&gt;&lt;p&gt;Shows the eric versions available for download from the internet.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2468"/>
+        <location filename="../UI/UserInterface.py" line="2471"/>
         <source>Start the eric Hex Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2470"/>
+        <location filename="../UI/UserInterface.py" line="2473"/>
         <source>&lt;b&gt;Hex Editor&lt;/b&gt;&lt;p&gt;Starts the eric Hex Editor for viewing or editing binary files.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric &amp;Web Browser...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2483"/>
+        <location filename="../UI/UserInterface.py" line="2486"/>
         <source>Start the eric Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2485"/>
+        <location filename="../UI/UserInterface.py" line="2488"/>
         <source>&lt;b&gt;eric Web Browser&lt;/b&gt;&lt;p&gt;Browse the Internet with the eric Web Browser.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2497"/>
+        <location filename="../UI/UserInterface.py" line="2500"/>
         <source>Start the eric Icon Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2499"/>
+        <location filename="../UI/UserInterface.py" line="2502"/>
         <source>&lt;b&gt;Icon Editor&lt;/b&gt;&lt;p&gt;Starts the eric Icon Editor for editing simple icons.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2585"/>
+        <location filename="../UI/UserInterface.py" line="2588"/>
         <source>&lt;b&gt;Show external tools&lt;/b&gt;&lt;p&gt;Opens a dialog to show the path and versions of all extenal tools used by eric.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2959"/>
+        <location filename="../UI/UserInterface.py" line="2962"/>
         <source>&lt;b&gt;Eric API Documentation&lt;/b&gt;&lt;p&gt;Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric installation directory.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5972"/>
+        <location filename="../UI/UserInterface.py" line="5988"/>
         <source>The eric web browser could not be started.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>&lt;p&gt;The eric web browser is not started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>The update to &lt;b&gt;{0}&lt;/b&gt; of eric is available at &lt;b&gt;{1}&lt;/b&gt;. Would you like to get it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7188"/>
+        <location filename="../UI/UserInterface.py" line="7215"/>
         <source>You are using a snapshot release of eric. A more up-to-date stable release might be available.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>eric is up to date</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>You are using the latest version of eric</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>eric has not been configured yet. The configuration dialog will be started.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6290"/>
+        <location filename="../UI/UserInterface.py" line="6306"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard Shortcuts File (*.e4k)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>&lt;p&gt;The keyboard shortcuts file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard shortcut file (*.e4k)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>Read Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6621"/>
+        <location filename="../UI/UserInterface.py" line="6637"/>
         <source>Save Session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6578"/>
+        <location filename="../UI/UserInterface.py" line="6594"/>
         <source>Read Session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>eric Session Files (*.esj);;eric XML Session Files (*.e5s)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -77230,7 +77359,7 @@
 <context>
     <name>Utilities</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="1420"/>
+        <location filename="../Utilities/__init__.py" line="1421"/>
         <source>&lt;p&gt;You may use %-codes as placeholders in the string. Supported codes are:&lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;column of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;directory of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;filename of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;home directory of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;line of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;path of the current project&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;selected text of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;username of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;the percent sign&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -77803,12 +77932,12 @@
 <context>
     <name>VcsMercurialPlugin</name>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="58"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="54"/>
         <source>Version Control - Mercurial</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="132"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="124"/>
         <source>Mercurial</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80395,27 +80524,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4777"/>
+        <location filename="../ViewManager/ViewManager.py" line="4790"/>
         <source>Line: {0:5}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4783"/>
+        <location filename="../ViewManager/ViewManager.py" line="4796"/>
         <source>Pos: {0:5}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5217"/>
+        <location filename="../ViewManager/ViewManager.py" line="5230"/>
         <source>&amp;Clear</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5211"/>
+        <location filename="../ViewManager/ViewManager.py" line="5224"/>
         <source>&amp;Add</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5214"/>
+        <location filename="../ViewManager/ViewManager.py" line="5227"/>
         <source>&amp;Edit...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80977,27 +81106,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>Edit Spelling Dictionary</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6233"/>
+        <location filename="../ViewManager/ViewManager.py" line="6246"/>
         <source>Editing {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6215"/>
+        <location filename="../ViewManager/ViewManager.py" line="6228"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6244"/>
+        <location filename="../ViewManager/ViewManager.py" line="6257"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>The spelling dictionary was saved successfully.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -81117,12 +81246,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4804"/>
+        <location filename="../ViewManager/ViewManager.py" line="4817"/>
         <source>Language: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4811"/>
+        <location filename="../ViewManager/ViewManager.py" line="4824"/>
         <source>EOL Mode: {0}</source>
         <translation type="unfinished"></translation>
     </message>
Binary file eric6/i18n/eric6_es.qm has changed
--- a/eric6/i18n/eric6_es.ts	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/i18n/eric6_es.ts	Thu Jun 03 11:39:23 2021 +0200
@@ -1242,45 +1242,60 @@
 <context>
     <name>ApplicationDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="43"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="47"/>
         <source>Application Diagram {0}</source>
         <translation>Diagrama de aplicación {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>Parsing modules...</source>
         <translation>Analizando módulos...</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="197"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="252"/>
         <source>&lt;&lt;Application&gt;&gt;</source>
         <translation>&lt;&lt;Aplicación&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="199"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="254"/>
         <source>&lt;&lt;Others&gt;&gt;</source>
         <translation>&lt;&lt;Otros&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>Load Diagram</source>
         <translation>Cargar Diagrama</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>&lt;p&gt;The diagram belongs to the project &lt;b&gt;{0}&lt;/b&gt;. Shall this project be opened?&lt;/p&gt;</source>
         <translation>&lt;p&gt;El diagrama pertenece al proyecto &lt;b&gt;{0}&lt;/b&gt;. ¿Abrir proyecto?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>%v/%m Modules</source>
         <translation>%v/%m Módulos</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="69"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
         <source>Application Diagram</source>
         <translation>Diagrama de aplicación</translation>
     </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="126"/>
+        <source>Select the application directory:</source>
+        <translation>Seleccionar el directorio de aplicación:</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
+        <source>No application package could be detected. Aborting...</source>
+        <translation>No se ha detectado ningún package. Abortando...</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="466"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;El diagrama pertenece al proyecto &lt;b&gt;{0}&lt;/b&gt;. Por favor ábralo e inténtelo de nuevo.&lt;/p&gt;</translation>
+    </message>
 </context>
 <context>
     <name>ApplicationPage</name>
@@ -1601,47 +1616,47 @@
 <context>
     <name>BackgroundService</name>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="139"/>
+        <location filename="../Utilities/BackgroundService.py" line="142"/>
         <source>{0} not configured.</source>
         <translation>{0} no configurado.</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>Restart background client?</source>
         <translation>¿Reiniciar cliente en background?</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>Background client disconnected.</source>
         <translation>Cliente en background desconectado.</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="456"/>
+        <location filename="../Utilities/BackgroundService.py" line="459"/>
         <source>Eric&apos;s background client disconnected because of an unknown reason.</source>
         <translation>El cliente en background de Eric ha desconectado debido a una razón desconocida.</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>&lt;p&gt;The background client for &lt;b&gt;{0}&lt;/b&gt; has stopped due to an exception. It&apos;s used by various plug-ins like the different checkers.&lt;/p&gt;&lt;p&gt;Select&lt;ul&gt;&lt;li&gt;&lt;b&gt;&apos;Yes&apos;&lt;/b&gt; to restart the client, but abort the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Retry&apos;&lt;/b&gt; to restart the client and the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;No&apos;&lt;/b&gt; to leave the client off.&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p&gt;Note: The client can be restarted by opening and accepting the preferences dialog or reloading/changing the project.&lt;/p&gt;</source>
         <translation>&lt;p&gt;El cliente en background para &lt;b&gt;{0}&lt;/b&gt; se ha detenido debido a una excepción. Éste es utilizado por varios plug-ins como los distintos comprobadores.&lt;/p&gt;&lt;p&gt;Seleccionar&lt;ul&gt;&lt;li&gt;&lt;b&gt;&apos;Si&apos;&lt;/b&gt; para reiniciar el cliente, abortando el último trabajo&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Reintentar&apos;&lt;/b&gt; para reiniciar el cliente y el último trabajo&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;No&apos;&lt;/b&gt; para dejar el cliente sin iniciar.&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p&gt;Nota: El cliente se puede reiniciar abriendo y aceptando el diálogo de preferencias o recargando/cambiando el proyecto.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>The background client for &lt;b&gt;{0}&lt;/b&gt; disconnected because of an unknown reason.&lt;br&gt;Should it be restarted?</source>
         <translation>El cliente en background para &lt;b&gt;{0}&lt;/b&gt; ha desconectado por razón desconocida.&lt;br&gt;¿Reiniciarlo?</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="228"/>
+        <location filename="../Utilities/BackgroundService.py" line="231"/>
         <source>An error in Eric&apos;s background client stopped the service.</source>
         <translation>Un error en el cliente en background de Eric ha detenido el servicio.</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>Initialization of Background Service</source>
         <translation>Inicialización de Servicio en Segundo Plano</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>&lt;p&gt;Initialization of Background Service &lt;b&gt;{0}&lt;/b&gt; failed.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Inicialización de Servicio en Segundo Plano &lt;b&gt;{0}&lt;/b&gt; fallida.&lt;/p&gt;&lt;p&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
@@ -2339,222 +2354,222 @@
 <context>
     <name>Browser</name>
     <message>
-        <location filename="../UI/Browser.py" line="94"/>
+        <location filename="../UI/Browser.py" line="96"/>
         <source>File-Browser</source>
         <translation>Explorador de archivos</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="284"/>
+        <location filename="../UI/Browser.py" line="286"/>
         <source>Open</source>
         <translation>Abrir</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="233"/>
+        <location filename="../UI/Browser.py" line="235"/>
         <source>Run unittest...</source>
         <translation>Ejecutar test unitario...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="342"/>
+        <location filename="../UI/Browser.py" line="344"/>
         <source>New toplevel directory...</source>
         <translation>Nuevo directorio raíz...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="298"/>
+        <location filename="../UI/Browser.py" line="300"/>
         <source>Add as toplevel directory</source>
         <translation>Añadir como directorio raíz</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="301"/>
+        <location filename="../UI/Browser.py" line="303"/>
         <source>Remove from toplevel</source>
         <translation>Quitar de la raíz</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="309"/>
+        <location filename="../UI/Browser.py" line="311"/>
         <source>Find in this directory</source>
         <translation>Buscar en este directorio</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="643"/>
+        <location filename="../UI/Browser.py" line="646"/>
         <source>New toplevel directory</source>
         <translation>Nuevo directorio raíz</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="263"/>
+        <location filename="../UI/Browser.py" line="265"/>
         <source>Open in Icon Editor</source>
         <translation>Abrir en Editor de Iconos</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="316"/>
+        <location filename="../UI/Browser.py" line="318"/>
         <source>Copy Path to Clipboard</source>
         <translation>Copiar Ruta al Portapapeles</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="305"/>
+        <location filename="../UI/Browser.py" line="307"/>
         <source>Refresh directory</source>
         <translation>Actualizar directorio</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="328"/>
+        <location filename="../UI/Browser.py" line="330"/>
         <source>Goto</source>
         <translation>Ir a</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="435"/>
+        <location filename="../UI/Browser.py" line="437"/>
         <source>Line {0}</source>
         <translation>Línea {0}</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="113"/>
+        <location filename="../UI/Browser.py" line="115"/>
         <source>&lt;b&gt;The Browser Window&lt;/b&gt;&lt;p&gt;This allows you to easily navigate the hierarchy of directories and files on your system, identify the Python programs and open them up in a Source Viewer window. The window displays several separate hierarchies.&lt;/p&gt;&lt;p&gt;The first hierarchy is only shown if you have opened a program for debugging and its root is the directory containing that program. Usually all of the separate files that make up a Python application are held in the same directory, so this hierarchy gives you easy access to most of what you will need.&lt;/p&gt;&lt;p&gt;The next hierarchy is used to easily navigate the directories that are specified in the Python &lt;tt&gt;sys.path&lt;/tt&gt; variable.&lt;/p&gt;&lt;p&gt;The remaining hierarchies allow you navigate your system as a whole. On a UNIX system there will be a hierarchy with &lt;tt&gt;/&lt;/tt&gt; at its root and another with the user home directory. On a Windows system there will be a hierarchy for each drive on the system.&lt;/p&gt;&lt;p&gt;Python programs (i.e. those with a &lt;tt&gt;.py&lt;/tt&gt; file name suffix) are identified in the hierarchies with a Python icon. The right mouse button will popup a menu which lets you open the file in a Source Viewer window, open the file for debugging or use it for a unittest run.&lt;/p&gt;&lt;p&gt;The context menu of a class, function or method allows you to open the file defining this class, function or method and will ensure, that the correct source line is visible.&lt;/p&gt;&lt;p&gt;Qt-Designer files (i.e. those with a &lt;tt&gt;.ui&lt;/tt&gt; file name suffix) are shown with a Designer icon. The context menu of these files allows you to start Qt-Designer with that file.&lt;/p&gt;&lt;p&gt;Qt-Linguist files (i.e. those with a &lt;tt&gt;.ts&lt;/tt&gt; file name suffix) are shown with a Linguist icon. The context menu of these files allows you to start Qt-Linguist with that file.&lt;/p&gt;</source>
         <translation>&lt;b&gt;La Ventana de Navegación&lt;/b&gt;&lt;p&gt;Permite navegar facilmente la jerarquía de directorios y archivos del sistema, identificar los programas en Python y abrirlos utilizando la ventana de Visor de Código Fuente. La ventana muestra varias jerarquías separadas.&lt;/p&gt;&lt;p&gt;La primera jerarquía se muestra solamente si se tiene abierto un programa para depuración y la raíz es el directorio que contiene dicho programa. Usualmente los distintos archivos que forman una aplicación Python son mantenidos en el mismo directorio, por lo tanto esta jerarquía proporciona un acceso sencillo a la mayor parte de lo que resulta necesario.&lt;/p&gt;&lt;p&gt;La siguiente jerarquía se utiliza para navegar facilmente los directorios especificados en la variable de Python &lt;tt&gt;sys.path&lt;/tt&gt;.&lt;/p&gt;&lt;p&gt;Las restantes jerarquías permiten la navegación por el sistema como un todo. En un sistema UNIX habrá una jerarquía con &lt;tt&gt;/&lt;/tt&gt; en la raíz y otra con el directorio home del usuario. En un sistema Windows habrá una jerarquía por cada uno de los drives en el sistema.&lt;/p&gt;&lt;p&gt;Los programas Python (es decir aquellos archivos con extensión &lt;tt&gt;.py&lt;/tt&gt;) se identifican en las jerarquías con un icono de Python. Un click con el botón derecho del ratón muestra un menú contextual que permite abrir el archivo en la ventana Visor de Fuentes, o bien abrir el archivo para depuración o utilizarlo para ejecutar un test unitario.&lt;/p&gt;&lt;p&gt;El menú contextual de una clase, función o método permite abrir el archivo en donde se define esta clase, función o método y permite asegurar que se muestra la línea de código correcta.&lt;/p&gt;&lt;p&gt;Los archivos de Qt-Designer (es decir aquellos con extensión &lt;tt&gt;.ui&lt;/tt&gt;) son mostrados con un icono de Designer. El menú contextual de estos archivos permite iniciar Qt-Designer a partir de dicho archivo.&lt;/p&gt;&lt;p&gt;Los archivos de Qt-Linguist (es decir aquellos con extensión &lt;tt&gt;.ts&lt;/tt&gt;) son mostrados con un icono de Linguist. El menú contextual de dichos archivos permite iniciar Qt-Linguist a partir de dicho archivo.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>Show Mime-Type</source>
         <translation>Mostrar Mime-Type</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="528"/>
+        <location filename="../UI/Browser.py" line="531"/>
         <source>The mime type of the file could not be determined.</source>
         <translation>El mime type del archivo no se puede determinar.</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="546"/>
+        <location filename="../UI/Browser.py" line="549"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation>El archivo tiene el mime type &lt;b&gt;{0}&lt;/b&gt;.</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation>El archivo tiene el mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; ¿Añadirlo a la lista de mime types?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="260"/>
+        <location filename="../UI/Browser.py" line="262"/>
         <source>Open in Hex Editor</source>
         <translation>Abrir en Editor Hexadecimal</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="312"/>
+        <location filename="../UI/Browser.py" line="314"/>
         <source>Find &amp;&amp; Replace in this directory</source>
         <translation>Buscar &amp;&amp; Reemplazar en este directorio</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="241"/>
+        <location filename="../UI/Browser.py" line="243"/>
         <source>Refresh Source File</source>
         <translation>Actualizar Archivo Fuente</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="214"/>
+        <location filename="../UI/Browser.py" line="216"/>
         <source>Show Hidden Files</source>
         <translation>Mostrar Archivos Ocultos</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="221"/>
-        <source>New</source>
-        <translation>Nuevo</translation>
-    </message>
-    <message>
         <location filename="../UI/Browser.py" line="223"/>
+        <source>New</source>
+        <translation>Nuevo</translation>
+    </message>
+    <message>
+        <location filename="../UI/Browser.py" line="225"/>
         <source>Directory</source>
         <translation>Directorio</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="226"/>
+        <location filename="../UI/Browser.py" line="228"/>
         <source>File</source>
         <translation>Archivo</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="323"/>
+        <location filename="../UI/Browser.py" line="325"/>
         <source>Delete</source>
         <translation>Borrar</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>New Directory</source>
         <translation>Nuevo Directorio</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="861"/>
+        <location filename="../UI/Browser.py" line="864"/>
         <source>Name for new directory:</source>
         <translation>Nombre para el nuevo directorio:</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="902"/>
+        <location filename="../UI/Browser.py" line="905"/>
         <source>A file or directory named &lt;b&gt;{0}&lt;/b&gt; exists already. Aborting...</source>
         <translation>Un archivo o directorio con nombre &lt;b&gt;{0}&lt;/b&gt; ya existe. Abortando...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>&lt;p&gt;The directory &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El directorio &lt;b&gt;{0}&lt;/b&gt; no se ha podido crear.&lt;/p&gt;&lt;p&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>New File</source>
         <translation>Nuevo Archivo</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="894"/>
+        <location filename="../UI/Browser.py" line="897"/>
         <source>Name for new file:</source>
         <translation>Nombre para el nuevo archivo:</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo &lt;b&gt;{0}&lt;/b&gt; no se ha podido crear.&lt;/p&gt;&lt;p&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="942"/>
+        <location filename="../UI/Browser.py" line="945"/>
         <source>Do you really want to move this file to the trash?</source>
         <translation>¿Desea realmente mover este archivo a la papelera?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="946"/>
+        <location filename="../UI/Browser.py" line="949"/>
         <source>Do you really want to delete this file?</source>
         <translation>¿Desea realmente borrar este archivo?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>Delete File</source>
         <translation>Borrar Archivo</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>&lt;p&gt;The selected file &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo seleccionado &lt;b&gt;{0}&lt;/b&gt; no se ha podido borrar.&lt;/p&gt;&lt;p&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="979"/>
+        <location filename="../UI/Browser.py" line="982"/>
         <source>Do you really want to move this directory to the trash?</source>
         <translation>¿Desea realmente mover este directorio a la papelera?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="983"/>
+        <location filename="../UI/Browser.py" line="986"/>
         <source>Do you really want to delete this directory?</source>
         <translation>¿Desea realmente borrar este directorio?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>Delete Directory</source>
         <translation>Borrar Directorio</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>&lt;p&gt;The selected directory &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El directorio seleccionado &lt;b&gt;{0}&lt;/b&gt; no se ha podido borrar.&lt;/p&gt;&lt;p&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1023"/>
+        <location filename="../UI/Browser.py" line="1026"/>
         <source>Do you really want to move these files to the trash?</source>
         <translation>¿Desea realmente mover estos archivos a la papelera?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1027"/>
+        <location filename="../UI/Browser.py" line="1030"/>
         <source>Do you really want to delete these files?</source>
         <translation>¿Desea realmente borrar estos archivos?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1032"/>
+        <location filename="../UI/Browser.py" line="1035"/>
         <source>Delete Files</source>
         <translation>Borrar Archivos</translation>
     </message>
@@ -3153,6 +3168,35 @@
     </message>
 </context>
 <context>
+    <name>ClassItem</name>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="176"/>
+        <source>Class Attributes:
+  </source>
+        <translation>Atributos de Clase:
+  </translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="211"/>
+        <source>none</source>
+        <translation>ninguno</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="191"/>
+        <source>Instance Attributes:
+  </source>
+        <translation>Atributos de Instancia:
+  </translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="210"/>
+        <source>Methods:
+  </source>
+        <translation>Métodos:
+  </translation>
+    </message>
+</context>
+<context>
     <name>ClearPrivateDataDialog</name>
     <message>
         <location filename="../UI/ClearPrivateDataDialog.ui" line="14"/>
@@ -4638,7 +4682,7 @@
 <context>
     <name>CodingError</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="131"/>
+        <location filename="../Utilities/__init__.py" line="132"/>
         <source>The coding &apos;{0}&apos; is wrong for the given text.</source>
         <translation>La codificación &apos;{0}&apos; es incorrecta para el texto indicado.</translation>
     </message>
@@ -6952,7 +6996,7 @@
 <context>
     <name>DebugUI</name>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1980"/>
+        <location filename="../Debugger/DebugUI.py" line="1981"/>
         <source>Run Script</source>
         <translation>Ejecutar Script</translation>
     </message>
@@ -6972,7 +7016,7 @@
         <translation>&lt;b&gt;Ejecutar Script&lt;/b&gt;&lt;p&gt;Establece los parámetros de la línea de comandos y ejecuta el script fuera del depurador. Si tiene cambios sin guardar, deben ser guardados primero.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>Run Project</source>
         <translation>Ejecutar Proyecto</translation>
     </message>
@@ -7072,7 +7116,7 @@
         <translation>&lt;b&gt;Hacer Profiling del Proyecto&lt;/b&gt;&lt;p&gt;Establecer los argumentos de línea de comandos y hacer profiling del proyecto actual. Si hay archivos que tienen cambios sin guardar, se puede guardar primero.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2121"/>
+        <location filename="../Debugger/DebugUI.py" line="2122"/>
         <source>Debug Script</source>
         <translation>Depurar Script</translation>
     </message>
@@ -7092,7 +7136,7 @@
         <translation>&lt;b&gt;Depurar Script&lt;/b&gt;&lt;p&gt;Establecer los argumentos de línea de comandos y establecer la línea actual en la ventana actual de edición como la primera sentencia Python ejecutable. Si el archivo tiene cambios sin guardar, se puede guardar primero.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>Debug Project</source>
         <translation>Depurar proyecto</translation>
     </message>
@@ -7384,47 +7428,47 @@
         <translation>El programa en depuración ha terminado inesperadamente.</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>Breakpoint Condition Error</source>
         <translation>Error en la condición del Breakpoint</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1709"/>
+        <location filename="../Debugger/DebugUI.py" line="1710"/>
         <source>Coverage of Project</source>
         <translation>Cobertura del Proyecto</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1690"/>
+        <location filename="../Debugger/DebugUI.py" line="1691"/>
         <source>Coverage of Script</source>
         <translation>Cobertura del Script</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>There is no main script defined for the current project. Aborting</source>
         <translation>No hay script principal definido para el proyecto actual. Abortando</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1854"/>
+        <location filename="../Debugger/DebugUI.py" line="1855"/>
         <source>Profile of Project</source>
         <translation>Profiling del proyecto</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1835"/>
+        <location filename="../Debugger/DebugUI.py" line="1836"/>
         <source>Profile of Script</source>
         <translation>Profiling del script</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>There is no main script defined for the current project. No debugging possible.</source>
         <translation>No hay script principal definido para el proyecto actual. La depuración no es posible.</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>Watch Expression Error</source>
         <translation>Error en la Expresión a Examinar</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1540"/>
+        <location filename="../Debugger/DebugUI.py" line="1541"/>
         <source>Watch expression already exists</source>
         <translation>La expresión a Examinar ya existe</translation>
     </message>
@@ -7476,22 +7520,22 @@
         <translation>&lt;p&gt;El programa en depuración ha lanzado la excepción &lt;b&gt;{0}&lt;/b&gt;&lt;br&gt;&quot;&lt;b&gt;{1}&lt;/b&gt;&quot;&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>&lt;p&gt;The condition of the breakpoint &lt;b&gt;{0}, {1}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation>&lt;p&gt;La condición del punto de ruptura &lt;b&gt;{0},{1}&lt;/b&gt; tiene un error de sintaxis.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>&lt;p&gt;The watch expression &lt;b&gt;{0}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation>&lt;p&gt;La expresión a examinar &lt;b&gt;{0}&lt;/b&gt; contiene un error de sintaxis.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1530"/>
+        <location filename="../Debugger/DebugUI.py" line="1531"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; already exists.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Una expresión a examinar &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; ya existe.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1535"/>
+        <location filename="../Debugger/DebugUI.py" line="1536"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; for the variable &lt;b&gt;{1}&lt;/b&gt; already exists.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Una expresión a examinar &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; para la variable &lt;b&gt;{1}&lt;/b&gt; ya existe.&lt;/p&gt;</translation>
     </message>
@@ -7546,7 +7590,7 @@
         <translation>&lt;b&gt;Mover Puntero de Instrucción hasta el Cursor&lt;/b&gt;&lt;p&gt;Mover el puntero interno de instrucción de Python hasta la posición actual del cursor sin executar el código entre ambos puntos.&lt;/p&gt;&lt;p&gt;No es posible saltar fuera de una función o saltar a un bloque de código, por ej. un bucle. En estos casos, se imprime un error de mensaje a la ventana de log.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1418"/>
+        <location filename="../Debugger/DebugUI.py" line="1419"/>
         <source>No locals available.</source>
         <translation>No hay locals disponibles.</translation>
     </message>
@@ -9870,10 +9914,18 @@
 &lt;/ul&gt;
 </translation>
     </message>
-    <message>
-        <location filename="../E5Graphics/E5GraphicsView.py" line="417"/>
-        <source>{0}, Page {1}</source>
-        <translation>{0}, Página {1}</translation>
+</context>
+<context>
+    <name>E5JsonServer</name>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>JSON Protocol Error</source>
+        <translation>Error de Protocolo JSON</translation>
+    </message>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>&lt;p&gt;The response received from the client could not be decoded. Please report this issue with the received data to the eric bugs email address.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;&lt;p&gt;Data:&lt;br/&gt;{1}&lt;/p&gt;</source>
+        <translation>&lt;p&gt;La respuesta recibida por el cliente no se ha podido decodificar. Informe por favor de este problema con los datos recibidos a la dirección de correo electrónico de errores de eric.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;&lt;p&gt;Datos:&lt;br/&gt;{1}&lt;/p&gt;</translation>
     </message>
 </context>
 <context>
@@ -11804,22 +11856,22 @@
         <translation>¿Incluir atributos de clase?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Imports Diagram</source>
         <translation>Diagrama de imports</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Include imports from external modules?</source>
         <translation>¿Incluir los imports de módulos externos?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Application Diagram</source>
         <translation>Diagrama de aplicación</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Include module names?</source>
         <translation>¿Incluir nombres de módulos?</translation>
     </message>
@@ -11889,7 +11941,7 @@
         <translation>Seleccionar el Analizador Léxico de Pygments.</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7944"/>
+        <location filename="../QScintilla/Editor.py" line="7941"/>
         <source>Check spelling...</source>
         <translation>Corrección ortográfica...</translation>
     </message>
@@ -11899,12 +11951,12 @@
         <translation>Corrección ortográfica de la selección...</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7947"/>
+        <location filename="../QScintilla/Editor.py" line="7944"/>
         <source>Add to dictionary</source>
         <translation>Añadir al diccionario</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7949"/>
+        <location filename="../QScintilla/Editor.py" line="7946"/>
         <source>Ignore All</source>
         <translation>Ignorar Todo</translation>
     </message>
@@ -12039,12 +12091,12 @@
         <translation>Cambio anterior</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>Sort Lines</source>
         <translation>Ordenar Líneas</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>The selection contains illegal data for a numerical sort.</source>
         <translation>La selección contiene datos ilegales para una ordenación numérica.</translation>
     </message>
@@ -12114,12 +12166,12 @@
         <translation>El proveedor de call-tips&apos;{0}&apos; ya está registrado. Se ignora la solicitud duplicada.</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>Register Mouse Click Handler</source>
         <translation>Registrar Manejador de Clicks de Ratón</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>A mouse click handler for &quot;{0}&quot; was already registered by &quot;{1}&quot;. Aborting request by &quot;{2}&quot;...</source>
         <translation>Un manejador de clicks de ratón para &quot;{0}&quot; ya está registrado por &quot;{1}&quot;. Abortando solicitud por &quot;{2}&quot;...</translation>
     </message>
@@ -12149,12 +12201,12 @@
         <translation>Ejecutar Selección en Consola</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>EditorConfig Properties</source>
         <translation>Propiedades de EditorConfig</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>&lt;p&gt;The EditorConfig properties for file &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Las propiedades de EditorConfig para el archivo &lt;b&gt;{0}&lt;/b&gt; no se ha podido cargar.&lt;/p&gt;</translation>
     </message>
@@ -12199,7 +12251,7 @@
         <translation>&lt;p&gt;El archivo &lt;b&gt;{0}&lt;/b&gt; ha cambiado mientras estaba abierto en eric. ¿Desea volver a cargarlo?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8766"/>
+        <location filename="../QScintilla/Editor.py" line="8763"/>
         <source>Generate Docstring</source>
         <translation>Generar Docstring</translation>
     </message>
@@ -18570,7 +18622,7 @@
 <context>
     <name>FileDialogWizardDialog</name>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="72"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="73"/>
         <source>QFileDialog Wizard</source>
         <translation>Asistente para QFileDialog</translation>
     </message>
@@ -18700,7 +18752,7 @@
         <translation>Mostrar solamente directorios</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="89"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="90"/>
         <source>Test</source>
         <translation>Probar</translation>
     </message>
@@ -18850,7 +18902,7 @@
         <translation>Introducir la lista de esquemas soportados separados por espacios</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="67"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="68"/>
         <source>E5FileDialog Wizard</source>
         <translation>Asistente para E5FileDialog</translation>
     </message>
@@ -26301,27 +26353,27 @@
 <context>
     <name>Globals</name>
     <message>
-        <location filename="../Globals/__init__.py" line="451"/>
+        <location filename="../Globals/__init__.py" line="455"/>
         <source>{0:4.2f} Bytes</source>
         <translation>{0:4.2f} Bytes</translation>
     </message>
     <message>
-        <location filename="../Globals/__init__.py" line="455"/>
-        <source>{0:4.2f} KiB</source>
-        <translation>{0:4.2f} KiB</translation>
-    </message>
-    <message>
         <location filename="../Globals/__init__.py" line="459"/>
-        <source>{0:4.2f} MiB</source>
-        <translation>{0:4.2f} MiB</translation>
+        <source>{0:4.2f} KiB</source>
+        <translation>{0:4.2f} KiB</translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="463"/>
-        <source>{0:4.2f} GiB</source>
-        <translation>{0:4.2f} GiB</translation>
+        <source>{0:4.2f} MiB</source>
+        <translation>{0:4.2f} MiB</translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="467"/>
+        <source>{0:4.2f} GiB</source>
+        <translation>{0:4.2f} GiB</translation>
+    </message>
+    <message>
+        <location filename="../Globals/__init__.py" line="471"/>
         <source>{0:4.2f} TiB</source>
         <translation>{0:4.2f} TiB</translation>
     </message>
@@ -28425,112 +28477,112 @@
         <translation>Creando branch en el repositorio Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1939"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1940"/>
         <source>Verifying the integrity of the Mercurial repository</source>
         <translation>Verificando la integridad del repositorio Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1953"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1954"/>
         <source>Showing the combined configuration settings</source>
         <translation>Mostrando los ajustes de configuración combinados</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1966"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1967"/>
         <source>Showing aliases for remote repositories</source>
         <translation>Mostrando alias para repositorios remotos</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1979"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1980"/>
         <source>Recovering from interrupted transaction</source>
         <translation>Recuperando de transacción interrumpida</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2166"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2167"/>
         <source>Shall the working directory be updated?</source>
         <translation>¿Debe ser actualizado el directorio de trabajo?</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1849"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1850"/>
         <source>Showing current branch</source>
         <translation>Mostrando la branch actual</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2119"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2120"/>
         <source>Create changegroup</source>
         <translation>Crear changegroup</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2178"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2179"/>
         <source>Apply changegroups</source>
         <translation>Aplicar changegroups</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2197"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2198"/>
         <source>Bisect subcommand ({0}) invalid.</source>
         <translation>Subcomando bisect ({0}) inválido.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2217"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2218"/>
         <source>Mercurial Bisect ({0})</source>
         <translation>Mercurial Bisect ({0})</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2129"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2130"/>
         <source>Preview changegroup</source>
         <translation>Previsualizar changegroup</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1992"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1993"/>
         <source>Identifying project directory</source>
         <translation>Identificando directorio de proyecto</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>Create .hgignore file</source>
         <translation>Crear archivo .hgignore</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo &lt;b&gt;{0}&lt;/b&gt; ya existe. ¿Desea sobreescribirlo?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2240"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2241"/>
         <source>Removing files from the Mercurial repository only</source>
         <translation>Eliminando archivos unicamente del repositorio Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2076"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2077"/>
         <source>Mercurial Changegroup Files (*.hg)</source>
         <translation>Archivos Changegroup de Mercurial (*.hg)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2157"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2158"/>
         <source>Mercurial Changegroup Files (*.hg);;All Files (*)</source>
         <translation>Archivos Changegroup de Mercurial (*.hg);;Todos los Archivos (*)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2283"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2284"/>
         <source>Backing out changeset</source>
         <translation>Haciendo respaldo de changeset</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2263"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2264"/>
         <source>No revision given. Aborting...</source>
         <translation>No se ha proporcionado revisión. Abortando...</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2093"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2094"/>
         <source>&lt;p&gt;The Mercurial changegroup file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo changegroup de Mercurial &lt;b&gt;{0}&lt;/b&gt; ya existe. ¿Desea sobreescribirlo?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2299"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2300"/>
         <source>Rollback last transaction</source>
         <translation>Hacer Rollback de la última transacción</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2292"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2293"/>
         <source>Are you sure you want to rollback the last transaction?</source>
         <translation>¿Está seguro de que quiere aplicar un rollback a la última transacción?</translation>
     </message>
@@ -28540,72 +28592,72 @@
         <translation>Haciendo commit de cambios al repositorio Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>Mercurial Command Server</source>
         <translation>Servidor de Comandos de Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2799"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2800"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be restarted.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El Servidor de Comandos de Mercurial no ha podido reiniciarse.&lt;/p&gt;&lt;p&gt;Razón: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El Servidor de Comandos de Mercurial no ha podido iniciarse.&lt;/p&gt;&lt;p&gt;Razón: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2351"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2352"/>
         <source>Import Patch</source>
         <translation>Importar Patch</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2392"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2393"/>
         <source>Export Patches</source>
         <translation>Exportar Patches</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2431"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2432"/>
         <source>Change Phase</source>
         <translation>Cambiar Fase</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2480"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2481"/>
         <source>Copy Changesets</source>
         <translation>Copiar Changesets</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2520"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2521"/>
         <source>Copy Changesets (Continue)</source>
         <translation>Copiar Changesets (Continuar)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2663"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2664"/>
         <source>Add Sub-repository</source>
         <translation>Añadir Sub-repositorio</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2695"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2696"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be read.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;No se ha podido leer el archivo .hgsub de sub-repositorios.&lt;/p&gt;&lt;p&gt;Razón: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2645"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2646"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub already contains an entry &lt;b&gt;{0}&lt;/b&gt;. Aborting...&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo .hgsub de sub-repositorios ya contiene una entrada.&lt;/p&gt;&lt;p&gt;Abortando...&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be written to.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;No se ha podido escribir al archivo .hgsub de sub-repositorios.&lt;/p&gt;&lt;p&gt;Razón: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>Remove Sub-repositories</source>
         <translation>Eliminar Sub-repositorios</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2684"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2685"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub does not exist. Aborting...&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo de subrepositorios .hgsub no existe. Abortando...&lt;/p&gt;</translation>
     </message>
@@ -28635,7 +28687,7 @@
         <translation>¿Realmente desea revertir todos los cambios del proyecto?</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2568"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2569"/>
         <source>Create Unversioned Archive</source>
         <translation>Crear Archivo Sin Versionar</translation>
     </message>
@@ -28655,7 +28707,7 @@
         <translation>Haciendo tag en el repositorio Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1838"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1839"/>
         <source>Created new branch &lt;{0}&gt;.</source>
         <translation>Creada nueva branch &lt;{0}&gt;.</translation>
     </message>
@@ -28665,62 +28717,62 @@
         <translation>Tip branch actual</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3049"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3050"/>
         <source>Mercurial Bookmark</source>
         <translation>Marcador de Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Delete Bookmark</source>
         <translation>Borrar Marcador</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Select the bookmark to be deleted:</source>
         <translation>Seleccionar el marcador a borrar:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3074"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3075"/>
         <source>Delete Mercurial Bookmark</source>
         <translation>Borrar Marcador de Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3098"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3099"/>
         <source>Rename Mercurial Bookmark</source>
         <translation>Renombrar Marcador de Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3132"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3133"/>
         <source>Move Mercurial Bookmark</source>
         <translation>Mover Marcador de Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Pull Bookmark</source>
         <translation>Pull de Marcador</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Select the bookmark to be pulled:</source>
         <translation>Seleccinar el marcador sobre el que hacer pull:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3213"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3214"/>
         <source>Pulling bookmark from a remote Mercurial repository</source>
         <translation>Haciendo pull de marcador desde un repositorio Mercurial remoto</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Push Bookmark</source>
         <translation>Push de Marcador</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Select the bookmark to be push:</source>
         <translation>Seleccinar el marcador sobre el que hacer push:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3253"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3254"/>
         <source>Pushing bookmark to a remote Mercurial repository</source>
         <translation>Haciendo push de marcador desde un repositorio Mercurial remoto</translation>
     </message>
@@ -28755,22 +28807,22 @@
         <translation>Marcando como &apos;resolved&apos;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>Delete All Backups</source>
         <translation>Borrar todas las Copias de Seguridad</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>&lt;p&gt;Do you really want to delete all backup bundles stored the backup area &lt;b&gt;{0}&lt;/b&gt;?&lt;/p&gt;</source>
         <translation>&lt;p&gt;¿Desea realmente borrar todos los bundles de copia de seguridad almacenados en el área de copias de seguridad &lt;b&gt;{0}&lt;/b&gt;?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2532"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2533"/>
         <source>Copy Changesets (Stop)</source>
         <translation>Copiar Changesets (Stop)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2545"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2546"/>
         <source>Copy Changesets (Abort)</source>
         <translation>Copiar Changesets (Abortar)</translation>
     </message>
@@ -29579,42 +29631,42 @@
 <context>
     <name>HgClient</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="91"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="92"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>El proceso {0} no se ha podido ejecutar. Verifique que está en la ruta de búsqueda (search path).</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="140"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="141"/>
         <source>Did not receive the &apos;hello&apos; message.</source>
         <translation>No se ha recibido el mensaje &apos;hello&apos;.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="142"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="143"/>
         <source>Received data on unexpected channel.</source>
         <translation>Datos recibidos en canal no esperado.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="147"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="148"/>
         <source>Bad &apos;hello&apos; message, expected &apos;capabilities: &apos; but got &apos;{0}&apos;.</source>
         <translation>Mensaje &apos;hello&apos; erróneo, se esperaba &apos;capabilities&apos; pero se obtuvo &apos;{0}&apos;.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="153"/>
         <source>&apos;capabilities&apos; message did not contain any capability.</source>
         <translation>El mensaje &apos;capabilities&apos; no contiene ninguna capacidad.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="160"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="161"/>
         <source>Bad &apos;hello&apos; message, expected &apos;encoding: &apos; but got &apos;{0}&apos;.</source>
         <translation>Mensaje &apos;hello&apos; erróneo, se esperaba &apos;encoding&apos; pero se obtuvo &apos;{0}&apos;.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="165"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="166"/>
         <source>&apos;encoding&apos; message did not contain any encoding.</source>
         <translation>El mensaje &apos;encoding&apos; no contiene ninguna codificación.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="379"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="380"/>
         <source>For message see output dialog.</source>
         <translation>Para mensaje ver el diálogo de output.</translation>
     </message>
@@ -34429,52 +34481,52 @@
 <context>
     <name>HgServeDialog</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="53"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="54"/>
         <source>Start Server</source>
         <translation>Iniciar servidor</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="59"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="60"/>
         <source>Stop Server</source>
         <translation>Detener servidor</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="65"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="66"/>
         <source>Start Browser</source>
         <translation>Iniciar servidor</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="73"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="74"/>
         <source>Enter the server port</source>
         <translation>Introducir el puerto del servidor</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="79"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="80"/>
         <source>Select the style to use</source>
         <translation>Seleccionar el estilo a utilizar</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="83"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="84"/>
         <source>Server</source>
         <translation>Servidor</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="90"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="91"/>
         <source>Browser</source>
         <translation>Navegador</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>Process Generation Error</source>
         <translation>Error de Generación de Proceso</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>El proceso {0} no se ha podido ejecutar. Verifique que está en la ruta de búsqueda (search path).</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="50"/>
         <source>Mercurial Server</source>
         <translation>Servidor de Mercurial</translation>
     </message>
@@ -36040,17 +36092,17 @@
 <context>
     <name>HgUtilities</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="93"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="128"/>
         <source>The hg process finished with the exit code {0}</source>
         <translation>El proceso hg ha terminado con código de salida {0}</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="98"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="133"/>
         <source>The hg process did not finish within 30s.</source>
         <translation>El proceso hg no terminó en un plazo de 30s.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="102"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="137"/>
         <source>Could not start the hg executable.</source>
         <translation>No se ha podido iniciar el ejecutable de hg.</translation>
     </message>
@@ -38260,35 +38312,40 @@
 <context>
     <name>ImportsDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm {0}: {1}</source>
         <translation>Diagrama de Imports {0}: {1}</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm: {0}</source>
         <translation>Diagrama de Imports: {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>Parsing modules...</source>
         <translation>Analizando módulos...</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="124"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="136"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a Python package.</source>
         <translation>El directorio &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; no es un paquete Python.</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>%v/%m Modules</source>
         <translation>%v/%m Módulos</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="95"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="107"/>
         <source>Imports Diagramm</source>
         <translation>Diagrama de Imports</translation>
     </message>
+    <message>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="410"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;El diagrama pertenece al proyecto &lt;b&gt;{0}&lt;/b&gt;. Por favor ábralo e inténtelo de nuevo.&lt;/p&gt;</translation>
+    </message>
 </context>
 <context>
     <name>InputDialogWizard</name>
@@ -39949,22 +40006,22 @@
         <translation>Muestra el nombre del servidor</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="252"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="251"/>
         <source>Yes</source>
         <translation>Si</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="254"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="253"/>
         <source>No</source>
         <translation>No</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Delete Channel</source>
         <translation>Borrar Canal</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Do you really want to delete channel &lt;b&gt;{0}&lt;/b&gt;?</source>
         <translation>¿Desea realmente borrar el canal &lt;b&gt;{0}&lt;/b&gt;?</translation>
     </message>
@@ -47857,45 +47914,50 @@
 <context>
     <name>PackageDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram {0}: {1}</source>
         <translation>Diagrama de Paquetes {0}: {1}</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram: {0}</source>
         <translation>Diagrama de Paquetes: {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>Parsing modules...</source>
         <translation>Analizando módulos...</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="205"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="219"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a package.</source>
         <translation>El directorio &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; no es un paquete.</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="214"/>
-        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules.</source>
-        <translation>El paquete &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; no contiene ningún módulo.</translation>
-    </message>
-    <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="231"/>
-        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
-        <translation>El paquete &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; no contiene ninguna clase.</translation>
-    </message>
-    <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>%v/%m Modules</source>
         <translation>%v/%m Módulos</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="158"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="172"/>
         <source>Package Diagram</source>
         <translation>Digrama de paquetes</translation>
     </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="230"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules or subpackages.</source>
+        <translation>El package  &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; no contiene ningún módulo o subpackage.</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="247"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes or subpackages.</source>
+        <translation>El package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; no contiene ninguna clase o subpackage.</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="555"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;El diagrama pertenece al proyecto &lt;b&gt;{0}&lt;/b&gt;. Por favor ábralo e inténtelo de nuevo.&lt;/p&gt;</translation>
+    </message>
 </context>
 <context>
     <name>PageScreenDialog</name>
@@ -49351,42 +49413,42 @@
 <context>
     <name>PixmapDiagram</name>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>Pixmap-Viewer</source>
         <translation>Visor de Pixmaps</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="93"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="96"/>
         <source>Close</source>
         <translation>Cerrar</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="98"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="101"/>
         <source>Print</source>
         <translation>Imprimir</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="133"/>
-        <source>Window</source>
-        <translation>Ventana</translation>
-    </message>
-    <message>
         <location filename="../Graphics/PixmapDiagram.py" line="137"/>
+        <source>Window</source>
+        <translation>Ventana</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PixmapDiagram.py" line="141"/>
         <source>Graphics</source>
         <translation>Gráficos</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="103"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="106"/>
         <source>Print Preview</source>
         <translation>Presentación preliminar</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; cannot be displayed. The format is not supported.&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo &lt;b&gt;{0}&lt;/b&gt; no puede ser mostrado. El formato no esta soportado.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="391"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="416"/>
         <source>Diagram: {0}</source>
         <translation>Diagrama: {0}</translation>
     </message>
@@ -49666,7 +49728,7 @@
         <translation>Algunos plugins no se han podido instalar.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="501"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="485"/>
         <source>Unspecific exception installing plugin.</source>
         <translation>Excepción no especificada durante la instalación del plugin.</translation>
     </message>
@@ -49728,7 +49790,7 @@
         <translation>&lt;p&gt;El módulo de plugin &lt;b&gt;{0}&lt;/b&gt; ya existe. Abortando...&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="492"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="476"/>
         <source>Error installing plugin. Reason: {0}</source>
         <translation>Error al instalar el plugin. Razón: {0}</translation>
     </message>
@@ -49736,22 +49798,22 @@
 <context>
     <name>PluginManager</name>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="404"/>
+        <location filename="../PluginManager/PluginManager.py" line="410"/>
         <source>Module is missing the &apos;autoactivate&apos; attribute.</source>
         <translation>El módulo no tiene el atributo &apos;autoactivate&apos;.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="415"/>
+        <location filename="../PluginManager/PluginManager.py" line="421"/>
         <source>Module is missing the &apos;pluginType&apos; and/or &apos;pluginTypename&apos; attributes.</source>
         <translation>El módulo no tiene el atributo &apos;pluginType&apos; y/o el atributo &apos;pluginTypename&apos;.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="614"/>
+        <location filename="../PluginManager/PluginManager.py" line="623"/>
         <source>Incompatible plugin activation method.</source>
         <translation>Metodo de activación del plugin incompatible.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>Plugin Manager Error</source>
         <translation>Error del Gestor de Plugins</translation>
     </message>
@@ -49766,32 +49828,32 @@
         <translation>El directorio interno de plugin &lt;b&gt;{0}&lt;/b&gt; no existe.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="437"/>
+        <location filename="../PluginManager/PluginManager.py" line="446"/>
         <source>Module failed to load. Error: {0}</source>
         <translation>Ha fallado la carga del módulo. Error: {0}</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>&lt;p&gt;The plugin download directory &lt;b&gt;{0}&lt;/b&gt; could not be created. Please configure it via the configuration dialog.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El directorio de descaga del plugin &lt;b&gt;{0}&lt;/b&gt; no ha podido ser creado. Por favor, configúrelo a través del diálogo de configuración.&lt;/p&gt;&lt;p&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>Error downloading file</source>
         <translation>Error al descargar el fichero</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>&lt;p&gt;Could not download the requested file from {0}.&lt;/p&gt;&lt;p&gt;Error: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;No se pudo descargar el archivo solicitado desde {0}.&lt;/p&gt;&lt;p&gt;Error: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>New plugin versions available</source>
         <translation>Existen nuevas versiones de plugins</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>&lt;p&gt;There are new plug-ins or plug-in updates available. Use the plug-in repository dialog to get them.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Existen nuevos plug-ins o existen bien actualizaciones para plug-in. Utilice el repositorio de plug-ins para su obtención.&lt;/p&gt;</translation>
     </message>
@@ -51676,7 +51738,7 @@
         <translation>&lt;b&gt;Diagrama de Aplicación...&lt;/b&gt;&lt;p&gt;Muestra un diagrama del proyecto.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>Create Package List</source>
         <translation>Crear Lista del Paquete</translation>
     </message>
@@ -51686,7 +51748,7 @@
         <translation>Crear &amp;Package List</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>Create Plugin Archive</source>
         <translation>Crear Archivo de Plugin</translation>
     </message>
@@ -51796,12 +51858,12 @@
         <translation>¿Incluir nombres de módulos?</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5264"/>
+        <location filename="../Project/Project.py" line="5265"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; already exists.&lt;/p&gt;&lt;p&gt;Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo &lt;b&gt;PKGLIST&lt;/b&gt; ya existe.&lt;/p&gt;&lt;p&gt;¿Desea sobreescribirlo?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5331"/>
+        <location filename="../Project/Project.py" line="5332"/>
         <source>The project does not have a main script defined. Aborting...</source>
         <translation>No hay script principal definido para el proyecto actual. Abortando...</translation>
     </message>
@@ -51921,17 +51983,17 @@
         <translation>&lt;p&gt;El VCS seleccionado &lt;b&gt;{0}&lt;/b&gt; no ha sido encontrado.&lt;br&gt;Deshabilitando control de versiones.&lt;/p&gt;&lt;p&gt;{1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo &lt;b&gt;PKGLIST&lt;/b&gt; no puede ser creado.&lt;/p&gt;&lt;p&gt;Causa: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5467"/>
+        <location filename="../Project/Project.py" line="5468"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be stored in the archive. Ignoring it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El fichero&lt;b&gt;{0}&lt;/b&gt; no ha podido ser almacenado en el archivo. Va a ser ignorado.&lt;/p&gt;&lt;p&gt;Causa: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5536"/>
+        <location filename="../Project/Project.py" line="5537"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo de plugin&lt;b&gt;{0}&lt;/b&gt; no puede ser leido.&lt;/p&gt;&lt;p&gt;Causa: {1}&lt;/p&gt;</translation>
     </message>
@@ -52001,7 +52063,7 @@
         <translation>&lt;p&gt;El VCS seleccionado &lt;b&gt;{0}&lt;/b&gt; no ha sido encontrado.&lt;br&gt;Revirtiendo sobreescritura.&lt;/p&gt;&lt;p&gt;{1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt; &lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo de plugin&lt;b&gt;{0}&lt;/b&gt; no puede ser leido.&lt;/p&gt;&lt;p&gt;Causa: {1}&lt;/p&gt;</translation>
     </message>
@@ -52047,7 +52109,7 @@
         <translation>Buscar Archivo en Proyecto...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5367"/>
+        <location filename="../Project/Project.py" line="5368"/>
         <source>Create Plugin Archives</source>
         <translation>Crear Archivos de Plugin</translation>
     </message>
@@ -52062,37 +52124,37 @@
         <translation>Crear Archivos de Plugin (&amp;Snapshot)</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5345"/>
+        <location filename="../Project/Project.py" line="5346"/>
         <source>Select package lists:</source>
         <translation>Seleccionar package lists:</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Creating plugin archives...</source>
         <translation>Creando archivos de plugin...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Abort</source>
         <translation>Abortar</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>%v/%m Archives</source>
         <translation>%v/%m Archivos</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5378"/>
+        <location filename="../Project/Project.py" line="5379"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo&lt;b&gt;{0}&lt;/b&gt; no puede ser leído.&lt;/p&gt;&lt;p&gt;Causa: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5356"/>
+        <location filename="../Project/Project.py" line="5357"/>
         <source>&lt;p&gt;No package list files (PKGLIST*) available or selected. Aborting...&lt;/p&gt;</source>
         <translation>&lt;p&gt;No hay archivo de package list (PKGLIST*) disponible o seleccionado. Abortando...&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5405"/>
+        <location filename="../Project/Project.py" line="5406"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; is not ready yet.&lt;/p&gt;&lt;p&gt;Please rework it and delete the&apos;; initial_list&apos; line of the header.&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo &lt;b&gt;{0}&lt;/b&gt; todavía no está listo.&lt;/p&gt;&lt;p&gt;Por favor, revíselo y borre la línea &apos;; initial_list&apos; del encabezado.&lt;/p&gt;</translation>
     </message>
@@ -52132,7 +52194,7 @@
         <translation>&lt;p&gt;El makefile &lt;b&gt;{0}&lt;/b&gt; no se ha podido crear.&lt;br/&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>Execute Make</source>
         <translation>Ejecutar Make</translation>
     </message>
@@ -52152,7 +52214,7 @@
         <translation>&lt;b&gt;Ejecutar Make&lt;/b&gt;&lt;p&gt;Ejecuta un &apos;make&apos; para reconstruir el target configurado.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5744"/>
+        <location filename="../Project/Project.py" line="5745"/>
         <source>Test for Changes</source>
         <translation>Comprobar Cambios</translation>
     </message>
@@ -52177,27 +52239,27 @@
         <translation>Make</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5692"/>
+        <location filename="../Project/Project.py" line="5693"/>
         <source>The make process did not start.</source>
         <translation>El proceso make no ha comenzado.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5737"/>
+        <location filename="../Project/Project.py" line="5738"/>
         <source>The make process crashed.</source>
         <translation>El proceso make ha fallado.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5747"/>
+        <location filename="../Project/Project.py" line="5748"/>
         <source>&lt;p&gt;There are changes that require the configured make target &lt;b&gt;{0}&lt;/b&gt; to be rebuilt.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Hay cambios que requieren que el target make configurado &lt;b&gt;{0}&lt;/b&gt; se reconstruya.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5752"/>
+        <location filename="../Project/Project.py" line="5753"/>
         <source>&lt;p&gt;There are changes that require the default make target to be rebuilt.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Hay cambios que requieren que el target make por defecto se reconstruya.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>The makefile contains errors.</source>
         <translation>El makefile contiene errores.</translation>
     </message>
@@ -52272,17 +52334,17 @@
         <translation>&lt;b&gt;Crear Archivos de Plugin (Snapshot)&lt;/b&gt;&lt;p&gt;Crea ficheros para archivo de plugin de eric usando el listado de ficheros dado en un archivo PKGLIST*. El nombre del archivo se construye a partir del nombre del script principal si no se designa uno en el archivo de package list. La entrada de versión del script principal se modifica para reflejar una snapshot release.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5432"/>
+        <location filename="../Project/Project.py" line="5433"/>
         <source>&lt;p&gt;The eric plugin archive file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo de plugin de eric &lt;b&gt;{0}&lt;/b&gt; no ha podido ser creado.&lt;/p&gt;&lt;p&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5484"/>
+        <location filename="../Project/Project.py" line="5485"/>
         <source>&lt;p&gt;The eric plugin archive files were created with some errors.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Los ficheros para archivo de plugin de eric se han creado con errores.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5492"/>
+        <location filename="../Project/Project.py" line="5493"/>
         <source>&lt;p&gt;The eric plugin archive files were created successfully.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Los ficheros para archivo de plugin de eric se han creado correctamente.&lt;/p&gt;</translation>
     </message>
@@ -53116,12 +53178,12 @@
         <translation>Contraer todos los directorios</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Delete files/directories</source>
         <translation>Borrar archivos/directorios</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Do you really want to delete these entries from the project?</source>
         <translation>¿Realmente quiere borrar estas entradas del proyecto?</translation>
     </message>
@@ -53141,22 +53203,22 @@
         <translation>Copiar Ruta al Portapapeles</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>Show Mime-Type</source>
         <translation>Mostrar Mime-Type</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="272"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="273"/>
         <source>The mime type of the file could not be determined.</source>
         <translation>El mime type del archivo no se puede determinar.</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="286"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="287"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation>El archivo tiene el mime type &lt;b&gt;{0}&lt;/b&gt;.</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation>El archivo tiene el mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; ¿Añadirlo a la lista de mime types?</translation>
     </message>
@@ -53868,32 +53930,32 @@
         <translation>Diagrama de clases</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Include class attributes?</source>
         <translation>¿Incluir atributos de clase?</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Imports Diagram</source>
         <translation>Diagrama de imports</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Include imports from external modules?</source>
         <translation>¿Incluir los imports de módulos externos?</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Package Diagram</source>
         <translation>Digrama de paquetes</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Application Diagram</source>
         <translation>Diagrama de aplicación</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Include module names?</source>
         <translation>¿Incluir nombres de módulos?</translation>
     </message>
@@ -65943,37 +66005,37 @@
 <context>
     <name>SvgDiagram</name>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="50"/>
+        <location filename="../Graphics/SvgDiagram.py" line="53"/>
         <source>SVG-Viewer</source>
         <translation>Visor de SVG</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="92"/>
+        <location filename="../Graphics/SvgDiagram.py" line="95"/>
         <source>Close</source>
         <translation>Cerrar</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="97"/>
+        <location filename="../Graphics/SvgDiagram.py" line="100"/>
         <source>Print</source>
         <translation>Imprimir</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="132"/>
-        <source>Window</source>
-        <translation>Ventana</translation>
-    </message>
-    <message>
         <location filename="../Graphics/SvgDiagram.py" line="136"/>
+        <source>Window</source>
+        <translation>Ventana</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/SvgDiagram.py" line="140"/>
         <source>Graphics</source>
         <translation>Gráficos</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="102"/>
+        <location filename="../Graphics/SvgDiagram.py" line="105"/>
         <source>Print Preview</source>
         <translation>Presentación preliminar</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="363"/>
+        <location filename="../Graphics/SvgDiagram.py" line="385"/>
         <source>Diagram: {0}</source>
         <translation>Diagrama: {0}</translation>
     </message>
@@ -71701,65 +71763,105 @@
         <translation>Introduzca la descripción de la tarea</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="60"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="71"/>
         <source>Creation Time:</source>
         <translation>Fecha y Hora de Creación:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="77"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="92"/>
         <source>&amp;Priority:</source>
         <translation>&amp;Prioridad:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="87"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="102"/>
         <source>Select the task priority</source>
         <translation>Seleccione la prioridad de la tarea</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="94"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="109"/>
         <source>High</source>
         <translation>Alta</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="99"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="114"/>
         <source>Normal</source>
         <translation>Normal</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="104"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="119"/>
         <source>Low</source>
         <translation>Baja</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="112"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="175"/>
         <source>Select to indicate a task related to the current project</source>
         <translation>Seleccionar para indicar una tarea relacionada con el proyecto actual</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="115"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="178"/>
         <source>Project &amp;Task</source>
         <translation>Tareas de &amp;proyecto</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="128"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="162"/>
         <source>Select to mark this task as completed</source>
         <translation>Seleccionar para marcar esta tarea como completa</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="131"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="165"/>
         <source>T&amp;ask completed</source>
         <translation>&amp;Tareas Completada</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="138"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="223"/>
         <source>Filename:</source>
         <translation>Nombre de archivo:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="155"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="216"/>
         <source>Line:</source>
         <translation>Línea:</translation>
     </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="127"/>
+        <source>Type:</source>
+        <translation>Tipo:</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="134"/>
+        <source>Select the task type</source>
+        <translation>Seleccionar el tipo de tarea</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="41"/>
+        <source>Bugfix</source>
+        <translation>Bugfix</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="42"/>
+        <source>Warning</source>
+        <translation>Advertencia</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="43"/>
+        <source>ToDo</source>
+        <translation>ToDo</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="44"/>
+        <source>Note</source>
+        <translation>Nota</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="45"/>
+        <source>Test</source>
+        <translation>Test</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="46"/>
+        <source>Documentation</source>
+        <translation>Documentación</translation>
+    </message>
 </context>
 <context>
     <name>TaskViewer</name>
@@ -71834,22 +71936,22 @@
         <translation>Cambiar &amp;tamaño de las columnas</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>Activate task filter</source>
         <translation>Activar filtro de tareas</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>The task filter doesn&apos;t have any active filters. Do you want to configure the filter settings?</source>
         <translation>El filtro de tareas no tiene ningún filtro activo. ¿Desea configurar las propiedades del filtro?</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Extracting project tasks...</source>
         <translation>Extrayendo tareas del proyecto...</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Abort</source>
         <translation>Abortar</translation>
     </message>
@@ -71864,7 +71966,7 @@
         <translation>Configurar...</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="738"/>
+        <location filename="../Tasks/TaskViewer.py" line="755"/>
         <source>Extracting project tasks...
 {0}</source>
         <translation>Extrayendo tareas del proyecto...
@@ -71876,12 +71978,12 @@
         <translation>&amp;Configurar opciones de análisis</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Scan Filter Patterns</source>
         <translation>Patrones de filtro de análisis</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <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 una coma:</translation>
     </message>
@@ -71891,12 +71993,12 @@
         <translation>Tareas de P&amp;royecto</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>%v/%m Files</source>
         <translation>%v/%m Archivos</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="734"/>
+        <location filename="../Tasks/TaskViewer.py" line="751"/>
         <source>Tasks</source>
         <translation>Tareas</translation>
     </message>
@@ -71924,22 +72026,22 @@
 <context>
     <name>TasksFile</name>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>Save Tasks</source>
         <translation>Guardar Tareas</translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo de tareas &lt;b&gt;{0}&lt;/b&gt; no se puede escribir.&lt;/p&gt;&lt;p&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>Read Tasks</source>
         <translation>Leer tareas</translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo de tareas&lt;b&gt;{0}&lt;/b&gt; no se puede leer.&lt;/p&gt;&lt;p&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
@@ -74348,213 +74450,238 @@
 <context>
     <name>UMLClassDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram {0}: {1}</source>
         <translation>Diagrama de Clases {0}: {1}</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram: {0}</source>
         <translation>Diagrama de Clases: {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="83"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="96"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; could not be found.</source>
         <translation>No se encuentra el módulo &lt;b&gt;&apos;{0}&apos;&lt;/b&gt;.</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="145"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="159"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
         <translation>El módulo &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; no contiene ninguna clase.</translation>
     </message>
+    <message>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="394"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;El diagrama pertenece al proyecto &lt;b&gt;{0}&lt;/b&gt;. Por favor ábralo e inténtelo de nuevo.&lt;/p&gt;</translation>
+    </message>
 </context>
 <context>
     <name>UMLDialog</name>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="82"/>
+        <location filename="../Graphics/UMLDialog.py" line="113"/>
         <source>Close</source>
         <translation>Cerrar</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="122"/>
+        <location filename="../Graphics/UMLDialog.py" line="153"/>
         <source>Window</source>
         <translation>Ventana</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="87"/>
+        <location filename="../Graphics/UMLDialog.py" line="118"/>
         <source>Load</source>
         <translation>Cargar</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="92"/>
+        <location filename="../Graphics/UMLDialog.py" line="123"/>
         <source>Save</source>
         <translation>Guardar</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="97"/>
+        <location filename="../Graphics/UMLDialog.py" line="128"/>
         <source>Save As...</source>
         <translation>Guardar como...</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="107"/>
+        <location filename="../Graphics/UMLDialog.py" line="138"/>
         <source>Print</source>
         <translation>Imprimir</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="112"/>
+        <location filename="../Graphics/UMLDialog.py" line="143"/>
         <source>Print Preview</source>
         <translation>Vista Previa de Impresión</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="126"/>
+        <location filename="../Graphics/UMLDialog.py" line="157"/>
         <source>File</source>
         <translation>Archivo</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="178"/>
-        <source>Illegal diagram type &apos;{0}&apos; given.</source>
-        <translation>Se ha proporcionado un tipo ilegal de diagrama &apos;{0}&apos;.</translation>
-    </message>
-    <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>Save Diagram</source>
         <translation>Guardar Diagrama</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="230"/>
+        <location filename="../Graphics/UMLDialog.py" line="257"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo &lt;b&gt;{0}&lt;/b&gt; ya existe. ¿Sobreescribirlo?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo &lt;b&gt;{0}&lt;/b&gt; no puede ser guardado.&lt;br&gt;Causa: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="386"/>
+        <location filename="../Graphics/UMLDialog.py" line="551"/>
         <source>Load Diagram</source>
         <translation>Cargar Diagrama</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="287"/>
+        <location filename="../Graphics/UMLDialog.py" line="518"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo&lt;b&gt;{0}&lt;/b&gt; no puede ser leído.&lt;br /&gt;Causa: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo &lt;b&gt;{0}&lt;/b&gt; no contiene datos válidos.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;&lt;p&gt;Invalid line: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo &lt;b&gt;{0}&lt;/b&gt; no contiene datos válidos.&lt;/p&gt;&lt;p&gt;Línea no válida: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="102"/>
+        <location filename="../Graphics/UMLDialog.py" line="133"/>
         <source>Save as Image</source>
         <translation>Guardar como Imagen</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="274"/>
-        <source>Eric Graphics File (*.e5g);;All Files (*)</source>
-        <translation>Archivo de Gráficos Eric (*.e5g);;Todos los Archivos (*)</translation>
+        <location filename="../Graphics/UMLDialog.py" line="43"/>
+        <source>Class Diagram</source>
+        <translation>Diagrama de Clases</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="45"/>
+        <source>Package Diagram</source>
+        <translation>Diagrama de Packages</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="47"/>
+        <source>Imports Diagram</source>
+        <translation>Diagrama de Imports</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="49"/>
+        <source>Application Diagram</source>
+        <translation>Diagrama de Aplicación</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="105"/>
+        <source>Illegal Diagram Type</source>
+        <translation>Tipo de Diagrama Ilegal</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="289"/>
+        <source>Eric Graphics File (*.egj);;Eric Text Graphics File (*.e5g);;All Files (*)</source>
+        <translation>Archivo de Gráficos de Eric (*.egj);;Archivo de Texto de Gráficos de Eric (*.e5g);;All Files (*)</translation>
     </message>
 </context>
 <context>
     <name>UMLGraphicsView</name>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="83"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="85"/>
         <source>Delete shapes</source>
         <translation>Borrar figuras</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="116"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="118"/>
         <source>Set size</source>
         <translation>Establecer tamaño</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="126"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="128"/>
         <source>Re-Layout</source>
         <translation>Reubicar elementos</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="219"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="233"/>
         <source>Graphics</source>
         <translation>Gráficos</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>Save Diagram</source>
         <translation>Guardar Diagrama</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="131"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="133"/>
         <source>Align Left</source>
         <translation>Alinear a la Izquierda</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="138"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="140"/>
         <source>Align Center Horizontal</source>
         <translation>Alinear Centrado Horizontal</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="145"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="147"/>
         <source>Align Right</source>
         <translation>Alinear a la Derecha</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="152"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="154"/>
         <source>Align Top</source>
         <translation>Alinear en la parte Superior</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="159"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="161"/>
         <source>Align Center Vertical</source>
         <translation>Alinear Centrado Vertical</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="166"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="168"/>
         <source>Align Bottom</source>
         <translation>Alinear en la parte Inferior</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="341"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="360"/>
         <source>Portable Network Graphics (*.png);;Scalable Vector Graphics (*.svg)</source>
         <translation>Portable Network Graphics (*.png);;Scalable Vector Graphics (*.svg)</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="88"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="90"/>
         <source>Increase width by {0} points</source>
         <translation>Incrementar anchura por {0} puntos</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="95"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="97"/>
         <source>Increase height by {0} points</source>
         <translation>Incrementar altura por {0} puntos</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="102"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="104"/>
         <source>Decrease width by {0} points</source>
         <translation>Decrementar anchura por {0} puntos</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="109"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="111"/>
         <source>Decrease height by {0} points</source>
         <translation>Decrementar altura por {0} puntos</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo &lt;b&gt;{0}&lt;/b&gt; no pudo ser guardado.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="356"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="375"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo &lt;b&gt;{0}&lt;/b&gt; ya existe. ¿Desea sobreescribirlo?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="121"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="123"/>
         <source>Re-Scan</source>
         <translation>Volver a Escanear</translation>
     </message>
@@ -74638,7 +74765,7 @@
 <context>
     <name>UnittestDialog</name>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>Unittest</source>
         <translation>Test Unitario</translation>
     </message>
@@ -74805,17 +74932,17 @@
         <translation>^Error: </translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="699"/>
         <source>Preparing Testsuite</source>
         <translation>Preparando Suite de Tests</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="989"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="991"/>
         <source>Running</source>
         <translation>Ejecutando</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1162"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1164"/>
         <source>Show Source</source>
         <translation>Mostrar código fuente</translation>
     </message>
@@ -74825,12 +74952,12 @@
         <translation>Archivos Python (*.py);;Todos los Archivos (*)</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1033"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1035"/>
         <source>Failure: {0}</source>
         <translation>Fallido: {0}</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1048"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1050"/>
         <source>Error: {0}</source>
         <translation>Error: {0}</translation>
     </message>
@@ -74865,17 +74992,17 @@
         <translation>Número de tests con éxito inesperado</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1063"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1065"/>
         <source>    Skipped: {0}</source>
         <translation>    Ignorados: {0}</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1081"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1083"/>
         <source>    Expected Failure</source>
         <translation>    Fallo Esperado</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1098"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1100"/>
         <source>    Unexpected Success</source>
         <translation>    Éxito Inesperado</translation>
     </message>
@@ -74979,17 +75106,17 @@
         <translation>Resultados</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="707"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
         <source>Unittest with auto-discovery</source>
         <translation>Test unitario con auto-descubrir</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="791"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="787"/>
         <source>You must enter a start directory for auto-discovery.</source>
         <translation>Se debe introducir un directorio de inicio para auto-descubrir.</translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="1013"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1015"/>
         <source>Ran %n test(s) in {0:.3f}s</source>
         <translation>
             <numerusform>Ejecutado %n test en {0:.3f}s</numerusform>
@@ -75022,7 +75149,7 @@
         <translation>&lt;p&gt;no se pueden descubrir tests.&lt;/p&gt;&lt;p&gt;{0}&lt;/p&gt;</translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="623"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="619"/>
         <source>Discovered %n Test(s)</source>
         <translation>
             <numerusform>Descubierto %n Test</numerusform>
@@ -75030,22 +75157,22 @@
         </translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="628"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="624"/>
         <source>&lt;p&gt;Unable to discover tests.&lt;/p&gt;&lt;p&gt;{0}&lt;br/&gt;{1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;No se pueden descubrir tests.&lt;/p&gt;&lt;p&gt;{0}&lt;br/&gt;{1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="694"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="690"/>
         <source>You must select auto-discovery or enter a test suite file or a dotted test name.</source>
         <translation>Se debe seleccionar auto-descubrir o introducir un archivo de test suite o un nombre de test puntuado.</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="716"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="712"/>
         <source>&lt;Unnamed Test&gt;</source>
         <translation>&lt;Test sin nombre&gt;</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>&lt;p&gt;Unable to run test &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;{1}&lt;br/&gt;{2}&lt;/p&gt;</source>
         <translation>&lt;p&gt;No se puede ejecutar el test &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;{1}&lt;br/&gt;{2}&lt;/p&gt;</translation>
     </message>
@@ -75075,7 +75202,7 @@
         <translation>Ejecutar con Depurador</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="724"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="720"/>
         <source>No test case has been selected. Shall all test cases be run?</source>
         <translation>No se ha seleccionado un caso de test. ¿Desea ejecutar todos los casos de test?</translation>
     </message>
@@ -75084,6 +75211,11 @@
         <source>Python3 Files ({0});;All Files (*)</source>
         <translation>Archivos de Python3 ({0});;Todos los Archivos (*)</translation>
     </message>
+    <message>
+        <location filename="../PyUnit/UnittestDialog.py" line="881"/>
+        <source>No unittest were found. Aborting...</source>
+        <translation>No se han encontrado unittest. Abortando...</translation>
+    </message>
 </context>
 <context>
     <name>UnknownDevicesDialog</name>
@@ -75323,2324 +75455,2324 @@
 <context>
     <name>UserInterface</name>
     <message>
-        <location filename="../UI/UserInterface.py" line="275"/>
+        <location filename="../UI/UserInterface.py" line="276"/>
         <source>Initializing Plugin Manager...</source>
         <translation>Inicializando el administrador de Plugins...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="282"/>
+        <location filename="../UI/UserInterface.py" line="283"/>
         <source>Generating Main User Interface...</source>
         <translation>Generando la interfaz general de usuario...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="332"/>
+        <location filename="../UI/UserInterface.py" line="333"/>
         <source>Setting up connections...</source>
         <translation>Aplicando conexiones...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="577"/>
+        <location filename="../UI/UserInterface.py" line="580"/>
         <source>Initializing Tools...</source>
         <translation>Inicializando Herramientas...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="587"/>
+        <location filename="../UI/UserInterface.py" line="590"/>
         <source>Registering Objects...</source>
         <translation>Registrando Objetos...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="624"/>
+        <location filename="../UI/UserInterface.py" line="627"/>
         <source>Initializing Actions...</source>
         <translation>Inicializando Acciones...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="626"/>
+        <location filename="../UI/UserInterface.py" line="629"/>
         <source>Initializing Menus...</source>
         <translation>Inicializando Menues...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="628"/>
+        <location filename="../UI/UserInterface.py" line="631"/>
         <source>Initializing Toolbars...</source>
         <translation>Inicializando Barras de Herramientas...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="630"/>
+        <location filename="../UI/UserInterface.py" line="633"/>
         <source>Initializing Statusbar...</source>
         <translation>Inicializando Barra de estado...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="657"/>
+        <location filename="../UI/UserInterface.py" line="660"/>
         <source>Initializing Single Application Server...</source>
         <translation>Incializando el servidor de aplicaciones simples...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="667"/>
+        <location filename="../UI/UserInterface.py" line="670"/>
         <source>Activating Plugins...</source>
         <translation>Activando Plugins...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Project-Viewer</source>
         <translation>Visor de Proyecto</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Debug-Viewer</source>
         <translation>Visor Depurador</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Log-Viewer</source>
         <translation>Visor Log</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Task-Viewer</source>
         <translation>Visor de Tareas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Template-Viewer</source>
         <translation>Visor de Plantillas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Shell</source>
         <translation>Shell</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>File-Browser</source>
         <translation>Explorador de archivos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Quit</source>
         <translation>Salir</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>&amp;Quit</source>
         <translation>&amp;Salir</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Ctrl+Q</source>
         <comment>File|Quit</comment>
         <translation>Ctrl+Q</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1642"/>
+        <location filename="../UI/UserInterface.py" line="1645"/>
         <source>Quit the IDE</source>
         <translation>Salir del IDE</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1643"/>
+        <location filename="../UI/UserInterface.py" line="1646"/>
         <source>&lt;b&gt;Quit the IDE&lt;/b&gt;&lt;p&gt;This quits the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Salir del IDE&lt;/b&gt;&lt;p&gt;Sale del IDE. Salve primero cualquier cambio que no haya guardado. Se detendran las depuraciones en curso y las preferencias se guardarán en disco.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1714"/>
+        <location filename="../UI/UserInterface.py" line="1717"/>
         <source>Edit Profile</source>
         <translation>Perfil de Edición</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1720"/>
+        <location filename="../UI/UserInterface.py" line="1723"/>
         <source>Activate the edit view profile</source>
         <translation>Activar el perfil de vista de edición</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1722"/>
+        <location filename="../UI/UserInterface.py" line="1725"/>
         <source>&lt;b&gt;Edit Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Edit View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Perfil de Edición&lt;/b&gt;&lt;p&gt;Activar &quot;Perfil de Vista de Edición&quot;. Las ventanas que se muestran, si este perfil esta activo, pueden ser configuradas con el diálogo &quot;Ver Configuración de Perfil&quot;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1731"/>
+        <location filename="../UI/UserInterface.py" line="1734"/>
         <source>Debug Profile</source>
         <translation>Perfil de Depuración</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1737"/>
+        <location filename="../UI/UserInterface.py" line="1740"/>
         <source>Activate the debug view profile</source>
         <translation>Activar el perfil de vista de depuración</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1739"/>
+        <location filename="../UI/UserInterface.py" line="1742"/>
         <source>&lt;b&gt;Debug Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Debug View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Perfil de Depuración&lt;/b&gt;&lt;p&gt;Activar &quot;Perfil de Vista de Depuracion&quot;. Las ventanas que se muestran, si este perfil esta activo, pueden ser configuradas con el diálogo &quot;Ver Configuración de Perfil&quot;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>&amp;Project-Viewer</source>
         <translation>Visor de &amp;Proyecto</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Alt+Shift+P</source>
         <translation>Alt+Shift+P</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Alt+Shift+D</source>
         <translation>Alt+Shift+D</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>&amp;Shell</source>
         <translation>&amp;Shell</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Alt+Shift+S</source>
         <translation>Alt+Shift+S</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>Alt+Shift+F</source>
         <translation>Alt+Shift+F</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Alt+Shift+G</source>
         <translation>Alt+Shift+G</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Alt+Shift+T</source>
         <translation>Alt+Shift+T</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Alt+Shift+M</source>
         <translation>Alt+Shift+M</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>What&apos;s This?</source>
         <translation>¿Qué es esto?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>&amp;What&apos;s This?</source>
         <translation>¿&amp;Qué es esto?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>Shift+F1</source>
         <translation>Shift+F1</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2126"/>
+        <location filename="../UI/UserInterface.py" line="2129"/>
         <source>Context sensitive help</source>
         <translation>Ayuda sensible al contexto</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2127"/>
+        <location filename="../UI/UserInterface.py" line="2130"/>
         <source>&lt;b&gt;Display context sensitive help&lt;/b&gt;&lt;p&gt;In What&apos;s This? mode, the mouse cursor shows an arrow with a question mark, and you can click on the interface elements to get a short description of what they do and how to use them. In dialogs, this feature can be accessed using the context help button in the titlebar.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Mostrar ayuda sensible al contexto&lt;/b&gt;&lt;p&gt;En modo ¿Qué es esto? el puntero del ratón muestra una flecha con un interrogante, y se puede hacer click en elementos de la interfaz gráfica para obtener una descripción corta de lo que hacen y de cómo se utilizan. En los diálogos, se puede acceder a esta característica utilizando el botón de ayuda de contexto en la barra de título.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>Helpviewer</source>
         <translation>Visor de Ayuda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>&amp;Helpviewer...</source>
         <translation>Visor de &amp;Ayuda...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>F1</source>
         <translation>F1</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2144"/>
+        <location filename="../UI/UserInterface.py" line="2147"/>
         <source>Open the helpviewer window</source>
         <translation>Abrir la ventana del visor de ayuda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show Versions</source>
         <translation>Mostrar Versiones</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show &amp;Versions</source>
         <translation>Mostrar Versione&amp;s</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2168"/>
+        <location filename="../UI/UserInterface.py" line="2171"/>
         <source>Display version information</source>
         <translation>Mostrar información de versiones</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2170"/>
+        <location filename="../UI/UserInterface.py" line="2173"/>
         <source>&lt;b&gt;Show Versions&lt;/b&gt;&lt;p&gt;Display version information.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Mostrar Versiones&lt;/b&gt;&lt;p&gt;Muestra información de versiones.&lt;/p&gt;</translation>
     </message>
     <message>
+        <location filename="../UI/UserInterface.py" line="2183"/>
+        <source>Check for Updates</source>
+        <translation>Buscar actualizaciones</translation>
+    </message>
+    <message>
         <location filename="../UI/UserInterface.py" line="2180"/>
-        <source>Check for Updates</source>
-        <translation>Buscar actualizaciones</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2177"/>
         <source>Check for &amp;Updates...</source>
         <translation>Buscar act&amp;ualizaciones...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show downloadable versions</source>
         <translation>Mostrar versiones descargables</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show &amp;downloadable versions...</source>
         <translation>Mostrar versiones &amp;descargables...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2192"/>
+        <location filename="../UI/UserInterface.py" line="2195"/>
         <source>Show the versions available for download</source>
         <translation>Mostrar las versiones disponibles para descarga</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Report Bug</source>
         <translation>Enviar informe de bugs</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2229"/>
+        <location filename="../UI/UserInterface.py" line="2232"/>
         <source>Report &amp;Bug...</source>
         <translation>Enviar informe de &amp;bugs...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2233"/>
+        <location filename="../UI/UserInterface.py" line="2236"/>
         <source>Report a bug</source>
         <translation>Enviar informe de bugs</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2234"/>
+        <location filename="../UI/UserInterface.py" line="2237"/>
         <source>&lt;b&gt;Report Bug...&lt;/b&gt;&lt;p&gt;Opens a dialog to report a bug.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Enviar informe de Bugs...&lt;/b&gt;&lt;p&gt;Abre un diálogo para enviar un informe de un error (bug).&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3365"/>
-        <source>Unittest</source>
-        <translation>Test Unitario</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2256"/>
-        <source>&amp;Unittest...</source>
-        <translation>Te&amp;st Unitario...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2261"/>
-        <source>Start unittest dialog</source>
-        <translation>Ejecutar diálogo de tests unitarios</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2262"/>
-        <source>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Perform unit tests. The dialog gives you the ability to select and run a unittest suite.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Tests unitarios&lt;/b&gt;&lt;p&gt;Lleva a cabo tests unitarios. Este diálogo proporciona la capacidad de seleccionar y ejecutar una suite de tests unitarios.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
-        <source>Unittest Restart</source>
-        <translation>Ejecutar de nuevo Test Unitario</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
-        <source>&amp;Restart Unittest...</source>
-        <translation>Ejecuta&amp;r de nuevo Test Unitario...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2275"/>
-        <source>Restart last unittest</source>
-        <translation>Ejecutar de nuevo el último test unitario</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2276"/>
-        <source>&lt;b&gt;Restart Unittest&lt;/b&gt;&lt;p&gt;Restart the unittest performed last.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Ejecutar de nuevo Test Unitario&lt;/b&gt;&lt;p&gt;Vuelve a ejecutar el último test unitario que se ha ejecutado.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
-        <source>Unittest Script</source>
-        <translation>Test Unitario de Script</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
-        <source>Unittest &amp;Script...</source>
-        <translation>Test Unitario de &amp;Script...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2305"/>
-        <source>Run unittest with current script</source>
-        <translation>Ejecutar test unitario con el script actual</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2307"/>
-        <source>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Run unittest with current script.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Test Unitario de Script&lt;/b&gt;&lt;p&gt;Ejecuta un test unitario con el script actual.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
-        <source>Unittest Project</source>
-        <translation>Test Unitario de Proyecto</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
-        <source>Unittest &amp;Project...</source>
-        <translation>Test Unitario de &amp;Proyecto...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2320"/>
-        <source>Run unittest with current project</source>
-        <translation>Ejecutar test unitario con el proyecto actual</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2322"/>
-        <source>&lt;b&gt;Unittest Project&lt;/b&gt;&lt;p&gt;Run unittest with current project.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Test Unitario del Proyecto&lt;/b&gt;Ejecuta un test unitario con el proyecto actual.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
-        <source>UI Previewer</source>
-        <translation>Previsualizador de UI</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
-        <source>&amp;UI Previewer...</source>
-        <translation>Previsualizador de &amp;UI...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2388"/>
-        <source>Start the UI Previewer</source>
-        <translation>Ejecutar el Previsualizador de UI</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2389"/>
-        <source>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Start the UI Previewer.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Previsualizador de UI&lt;/b&gt;&lt;p&gt;Ejecuta el Previsualizador de UI.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
-        <source>Translations Previewer</source>
-        <translation>Previsualizador de Traducciones</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
-        <source>&amp;Translations Previewer...</source>
-        <translation>Previsualizador de &amp;Traducciones...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2401"/>
-        <source>Start the Translations Previewer</source>
-        <translation>Ejecutar el Previsualizador de traducciones</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2403"/>
-        <source>&lt;b&gt;Translations Previewer&lt;/b&gt;&lt;p&gt;Start the Translations Previewer.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Previsualizador de traducciones&lt;b&gt;&lt;p&gt;Ejecuta el Previsualizador de traducciones.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
-        <source>Compare Files</source>
-        <translation>Comparar Archivos</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
-        <source>&amp;Compare Files...</source>
-        <translation>&amp;Comparar Archivos...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2428"/>
-        <source>Compare two files</source>
-        <translation>Comparar dos archivos</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2416"/>
-        <source>&lt;b&gt;Compare Files&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Comparar Archivos&lt;/b&gt;&lt;p&gt;Abre un diálogo para comparar dos archivos.&lt;/b&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
-        <source>Compare Files side by side</source>
-        <translation>Comparar Archivos uno al lado de otro</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2429"/>
-        <source>&lt;b&gt;Compare Files side by side&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files and show the result side by side.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Comparar Archivos uno al lado de otro&lt;/b&gt;&lt;p&gt;Abre un diálogo para comparar dos archivos y mostrar los resultados en paralelo.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
-        <source>Preferences</source>
-        <translation>Preferencias</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
-        <source>&amp;Preferences...</source>
-        <translation>&amp;Preferencias...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2526"/>
-        <source>Set the prefered configuration</source>
-        <translation>Establecer la configuración preferida</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2528"/>
-        <source>&lt;b&gt;Preferences&lt;/b&gt;&lt;p&gt;Set the configuration items of the application with your prefered values.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Preferencias&lt;/b&gt;&lt;p&gt;Establecezca los elementos de configuración de la aplicación con sus valores preferidos.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
-        <source>Reload APIs</source>
-        <translation>Recargar APIs</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
-        <source>Reload &amp;APIs</source>
-        <translation>Recargar &amp;APIs</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2569"/>
-        <source>Reload the API information</source>
-        <translation>Recargar la información de API</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2571"/>
-        <source>&lt;b&gt;Reload APIs&lt;/b&gt;&lt;p&gt;Reload the API information.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Recargar APIs&lt;/b&gt;&lt;p&gt;Recarga la información de API.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2583"/>
-        <source>Show external tools</source>
-        <translation>Mostrar herramientas externas</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2578"/>
-        <source>Show external &amp;tools</source>
-        <translation>Mostrar herramien&amp;tas externas</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
-        <source>View Profiles</source>
-        <translation>Perfiles de Vista</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
-        <source>&amp;View Profiles...</source>
-        <translation>Perfiles de &amp;Vista...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2599"/>
-        <source>Configure view profiles</source>
-        <translation>Configurar perfiles de vista</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2601"/>
-        <source>&lt;b&gt;View Profiles&lt;/b&gt;&lt;p&gt;Configure the view profiles. With this dialog you may set the visibility of the various windows for the predetermined view profiles.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Perfiles de Vista&lt;/b&gt;&lt;p&gt;Configure los perfiles de vista. Con este diálogo puede establecer la visibilidad de las diversas ventanas para los perfiles de vista predeterminados.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
-        <source>Keyboard Shortcuts</source>
-        <translation>Atajos de Teclado</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
-        <source>Keyboard &amp;Shortcuts...</source>
-        <translation>Atajo&amp;s de Teclado...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2631"/>
-        <source>Set the keyboard shortcuts</source>
-        <translation>Establecer los atajos de teclado</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2633"/>
-        <source>&lt;b&gt;Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Set the keyboard shortcuts of the application with your prefered values.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Atajos de Teclado&lt;/b&gt;&lt;p&gt;Establezca los atajos de teclado para la aplicación con sus valores preferidos.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
-        <source>Export Keyboard Shortcuts</source>
-        <translation>Exportar Atajos de Teclado</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2641"/>
-        <source>&amp;Export Keyboard Shortcuts...</source>
-        <translation>&amp;Exportar Atajos de Teclado...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2646"/>
-        <source>Export the keyboard shortcuts</source>
-        <translation>Exportar los atajos de teclado</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2648"/>
-        <source>&lt;b&gt;Export Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Export the keyboard shortcuts of the application.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Exportar Atajos de Teclado&lt;/b&gt;&lt;p&gt;Exporte  los atajos de teclado de la aplicación.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
-        <source>Import Keyboard Shortcuts</source>
-        <translation>Importar Atajos de Teclado</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2655"/>
-        <source>&amp;Import Keyboard Shortcuts...</source>
-        <translation>&amp;Importar Atajos de Teclado...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2660"/>
-        <source>Import the keyboard shortcuts</source>
-        <translation>Importar los atajos de teclado</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2662"/>
-        <source>&lt;b&gt;Import Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Import the keyboard shortcuts of the application.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Importar Atajos de Teclado&lt;/b&gt;&lt;p&gt;Importe  los atajos de teclado de la aplicación.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
-        <source>Activate current editor</source>
-        <translation>Activar editor actual</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
-        <source>Alt+Shift+E</source>
-        <translation>Alt+Shift+E</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
-        <source>Ctrl+Alt+Tab</source>
-        <translation>Ctrl+Alt+Tab</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
-        <source>Shift+Ctrl+Alt+Tab</source>
-        <translation>Shift+Ctrl+Alt+Tab</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
-        <source>Plugin Infos</source>
-        <translation>Información sobre Plugins</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
-        <source>&amp;Plugin Infos...</source>
-        <translation>Información sobre &amp;Plugins...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2761"/>
-        <source>Show Plugin Infos</source>
-        <translation>Mostrar Información sobre Plugins</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2762"/>
-        <source>&lt;b&gt;Plugin Infos...&lt;/b&gt;&lt;p&gt;This opens a dialog, that show some information about loaded plugins.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Información sobre Plugins...&lt;/b&gt;&lt;p&gt;Abre un diálogo que muestra información sobre las extensiones (plugins) cargadas.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2788"/>
-        <source>Uninstall Plugin</source>
-        <translation>Desinstalar Plugin</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2783"/>
-        <source>&amp;Uninstall Plugin...</source>
-        <translation>Desinstalar Pl&amp;ugin...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2789"/>
-        <source>&lt;b&gt;Uninstall Plugin...&lt;/b&gt;&lt;p&gt;This opens a dialog to uninstall a plugin.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Desinstalar Plugin...&lt;/b&gt;&lt;p&gt;Abre un diálogo para desinstalar una extensión o plugin.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
-        <source>Plugin Repository</source>
-        <translation>Repositorio de Plugins</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
-        <source>Plugin &amp;Repository...</source>
-        <translation>&amp;Repositorio de Plugins...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2801"/>
-        <source>Show Plugins available for download</source>
-        <translation>Mostrar Plugins disponibles para descarga</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2803"/>
-        <source>&lt;b&gt;Plugin Repository...&lt;/b&gt;&lt;p&gt;This opens a dialog, that shows a list of plugins available on the Internet.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Repositorios de Plugins...&lt;/b&gt;&lt;p&gt;Abre un diálogo que muestra una lista de extensiones (plugins) disponibles en Internet.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2953"/>
-        <source>Eric API Documentation</source>
-        <translation>Documentación de API de Eric</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2957"/>
-        <source>Open Eric API Documentation</source>
-        <translation>Abrir Documentación de API de Eric</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3158"/>
-        <source>&amp;Unittest</source>
-        <translation>Te&amp;st Unitario</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3102"/>
-        <source>E&amp;xtras</source>
-        <translation>E&amp;xtras</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3112"/>
-        <source>Wi&amp;zards</source>
-        <translation>Asis&amp;tentes</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3175"/>
-        <source>Select Tool Group</source>
-        <translation>Seleccionar Grupo de Herramientas</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3186"/>
-        <source>Se&amp;ttings</source>
-        <translation>Con&amp;figuración</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3216"/>
-        <source>&amp;Window</source>
-        <translation>Ven&amp;tana</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3277"/>
-        <source>&amp;Toolbars</source>
-        <translation>&amp;Barra de Herramientas</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3139"/>
-        <source>P&amp;lugins</source>
-        <translation>P&amp;lugins</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3291"/>
-        <source>&amp;Help</source>
-        <translation>Ay&amp;uda</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3364"/>
-        <source>Tools</source>
-        <translation>Herramientas</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3366"/>
-        <source>Settings</source>
-        <translation>Ajustes</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
-        <source>Help</source>
-        <translation>Ayuda</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="3368"/>
-        <source>Profiles</source>
-        <translation>Perfiles</translation>
+        <source>Unittest</source>
+        <translation>Test Unitario</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2259"/>
+        <source>&amp;Unittest...</source>
+        <translation>Te&amp;st Unitario...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2264"/>
+        <source>Start unittest dialog</source>
+        <translation>Ejecutar diálogo de tests unitarios</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2265"/>
+        <source>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Perform unit tests. The dialog gives you the ability to select and run a unittest suite.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Tests unitarios&lt;/b&gt;&lt;p&gt;Lleva a cabo tests unitarios. Este diálogo proporciona la capacidad de seleccionar y ejecutar una suite de tests unitarios.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2273"/>
+        <source>Unittest Restart</source>
+        <translation>Ejecutar de nuevo Test Unitario</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2273"/>
+        <source>&amp;Restart Unittest...</source>
+        <translation>Ejecuta&amp;r de nuevo Test Unitario...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2278"/>
+        <source>Restart last unittest</source>
+        <translation>Ejecutar de nuevo el último test unitario</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2279"/>
+        <source>&lt;b&gt;Restart Unittest&lt;/b&gt;&lt;p&gt;Restart the unittest performed last.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Ejecutar de nuevo Test Unitario&lt;/b&gt;&lt;p&gt;Vuelve a ejecutar el último test unitario que se ha ejecutado.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2303"/>
+        <source>Unittest Script</source>
+        <translation>Test Unitario de Script</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2303"/>
+        <source>Unittest &amp;Script...</source>
+        <translation>Test Unitario de &amp;Script...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2308"/>
+        <source>Run unittest with current script</source>
+        <translation>Ejecutar test unitario con el script actual</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2310"/>
+        <source>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Run unittest with current script.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Test Unitario de Script&lt;/b&gt;&lt;p&gt;Ejecuta un test unitario con el script actual.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2318"/>
+        <source>Unittest Project</source>
+        <translation>Test Unitario de Proyecto</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2318"/>
+        <source>Unittest &amp;Project...</source>
+        <translation>Test Unitario de &amp;Proyecto...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2323"/>
+        <source>Run unittest with current project</source>
+        <translation>Ejecutar test unitario con el proyecto actual</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2325"/>
+        <source>&lt;b&gt;Unittest Project&lt;/b&gt;&lt;p&gt;Run unittest with current project.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Test Unitario del Proyecto&lt;/b&gt;Ejecuta un test unitario con el proyecto actual.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2386"/>
+        <source>UI Previewer</source>
+        <translation>Previsualizador de UI</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2386"/>
+        <source>&amp;UI Previewer...</source>
+        <translation>Previsualizador de &amp;UI...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2391"/>
+        <source>Start the UI Previewer</source>
+        <translation>Ejecutar el Previsualizador de UI</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2392"/>
+        <source>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Start the UI Previewer.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Previsualizador de UI&lt;/b&gt;&lt;p&gt;Ejecuta el Previsualizador de UI.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2399"/>
+        <source>Translations Previewer</source>
+        <translation>Previsualizador de Traducciones</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2399"/>
+        <source>&amp;Translations Previewer...</source>
+        <translation>Previsualizador de &amp;Traducciones...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2404"/>
+        <source>Start the Translations Previewer</source>
+        <translation>Ejecutar el Previsualizador de traducciones</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2406"/>
+        <source>&lt;b&gt;Translations Previewer&lt;/b&gt;&lt;p&gt;Start the Translations Previewer.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Previsualizador de traducciones&lt;b&gt;&lt;p&gt;Ejecuta el Previsualizador de traducciones.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2413"/>
+        <source>Compare Files</source>
+        <translation>Comparar Archivos</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2413"/>
+        <source>&amp;Compare Files...</source>
+        <translation>&amp;Comparar Archivos...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2431"/>
+        <source>Compare two files</source>
+        <translation>Comparar dos archivos</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2419"/>
+        <source>&lt;b&gt;Compare Files&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Comparar Archivos&lt;/b&gt;&lt;p&gt;Abre un diálogo para comparar dos archivos.&lt;/b&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2426"/>
+        <source>Compare Files side by side</source>
+        <translation>Comparar Archivos uno al lado de otro</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2432"/>
+        <source>&lt;b&gt;Compare Files side by side&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files and show the result side by side.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Comparar Archivos uno al lado de otro&lt;/b&gt;&lt;p&gt;Abre un diálogo para comparar dos archivos y mostrar los resultados en paralelo.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2524"/>
+        <source>Preferences</source>
+        <translation>Preferencias</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2524"/>
+        <source>&amp;Preferences...</source>
+        <translation>&amp;Preferencias...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2529"/>
+        <source>Set the prefered configuration</source>
+        <translation>Establecer la configuración preferida</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2531"/>
+        <source>&lt;b&gt;Preferences&lt;/b&gt;&lt;p&gt;Set the configuration items of the application with your prefered values.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Preferencias&lt;/b&gt;&lt;p&gt;Establecezca los elementos de configuración de la aplicación con sus valores preferidos.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2568"/>
+        <source>Reload APIs</source>
+        <translation>Recargar APIs</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2568"/>
+        <source>Reload &amp;APIs</source>
+        <translation>Recargar &amp;APIs</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2572"/>
+        <source>Reload the API information</source>
+        <translation>Recargar la información de API</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2574"/>
+        <source>&lt;b&gt;Reload APIs&lt;/b&gt;&lt;p&gt;Reload the API information.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Recargar APIs&lt;/b&gt;&lt;p&gt;Recarga la información de API.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2586"/>
+        <source>Show external tools</source>
+        <translation>Mostrar herramientas externas</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2581"/>
+        <source>Show external &amp;tools</source>
+        <translation>Mostrar herramien&amp;tas externas</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2597"/>
+        <source>View Profiles</source>
+        <translation>Perfiles de Vista</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2597"/>
+        <source>&amp;View Profiles...</source>
+        <translation>Perfiles de &amp;Vista...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2602"/>
+        <source>Configure view profiles</source>
+        <translation>Configurar perfiles de vista</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2604"/>
+        <source>&lt;b&gt;View Profiles&lt;/b&gt;&lt;p&gt;Configure the view profiles. With this dialog you may set the visibility of the various windows for the predetermined view profiles.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Perfiles de Vista&lt;/b&gt;&lt;p&gt;Configure los perfiles de vista. Con este diálogo puede establecer la visibilidad de las diversas ventanas para los perfiles de vista predeterminados.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2629"/>
+        <source>Keyboard Shortcuts</source>
+        <translation>Atajos de Teclado</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2629"/>
+        <source>Keyboard &amp;Shortcuts...</source>
+        <translation>Atajo&amp;s de Teclado...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2634"/>
+        <source>Set the keyboard shortcuts</source>
+        <translation>Establecer los atajos de teclado</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2636"/>
+        <source>&lt;b&gt;Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Set the keyboard shortcuts of the application with your prefered values.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Atajos de Teclado&lt;/b&gt;&lt;p&gt;Establezca los atajos de teclado para la aplicación con sus valores preferidos.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6324"/>
+        <source>Export Keyboard Shortcuts</source>
+        <translation>Exportar Atajos de Teclado</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2644"/>
+        <source>&amp;Export Keyboard Shortcuts...</source>
+        <translation>&amp;Exportar Atajos de Teclado...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2649"/>
+        <source>Export the keyboard shortcuts</source>
+        <translation>Exportar los atajos de teclado</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2651"/>
+        <source>&lt;b&gt;Export Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Export the keyboard shortcuts of the application.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Exportar Atajos de Teclado&lt;/b&gt;&lt;p&gt;Exporte  los atajos de teclado de la aplicación.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6342"/>
+        <source>Import Keyboard Shortcuts</source>
+        <translation>Importar Atajos de Teclado</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2658"/>
+        <source>&amp;Import Keyboard Shortcuts...</source>
+        <translation>&amp;Importar Atajos de Teclado...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2663"/>
+        <source>Import the keyboard shortcuts</source>
+        <translation>Importar los atajos de teclado</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2665"/>
+        <source>&lt;b&gt;Import Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Import the keyboard shortcuts of the application.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Importar Atajos de Teclado&lt;/b&gt;&lt;p&gt;Importe  los atajos de teclado de la aplicación.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2723"/>
+        <source>Activate current editor</source>
+        <translation>Activar editor actual</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2723"/>
+        <source>Alt+Shift+E</source>
+        <translation>Alt+Shift+E</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2733"/>
+        <source>Ctrl+Alt+Tab</source>
+        <translation>Ctrl+Alt+Tab</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2742"/>
+        <source>Shift+Ctrl+Alt+Tab</source>
+        <translation>Shift+Ctrl+Alt+Tab</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2760"/>
+        <source>Plugin Infos</source>
+        <translation>Información sobre Plugins</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2760"/>
+        <source>&amp;Plugin Infos...</source>
+        <translation>Información sobre &amp;Plugins...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2764"/>
+        <source>Show Plugin Infos</source>
+        <translation>Mostrar Información sobre Plugins</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2765"/>
+        <source>&lt;b&gt;Plugin Infos...&lt;/b&gt;&lt;p&gt;This opens a dialog, that show some information about loaded plugins.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Información sobre Plugins...&lt;/b&gt;&lt;p&gt;Abre un diálogo que muestra información sobre las extensiones (plugins) cargadas.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2791"/>
+        <source>Uninstall Plugin</source>
+        <translation>Desinstalar Plugin</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2786"/>
+        <source>&amp;Uninstall Plugin...</source>
+        <translation>Desinstalar Pl&amp;ugin...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2792"/>
+        <source>&lt;b&gt;Uninstall Plugin...&lt;/b&gt;&lt;p&gt;This opens a dialog to uninstall a plugin.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Desinstalar Plugin...&lt;/b&gt;&lt;p&gt;Abre un diálogo para desinstalar una extensión o plugin.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2799"/>
+        <source>Plugin Repository</source>
+        <translation>Repositorio de Plugins</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2799"/>
+        <source>Plugin &amp;Repository...</source>
+        <translation>&amp;Repositorio de Plugins...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2804"/>
+        <source>Show Plugins available for download</source>
+        <translation>Mostrar Plugins disponibles para descarga</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2806"/>
+        <source>&lt;b&gt;Plugin Repository...&lt;/b&gt;&lt;p&gt;This opens a dialog, that shows a list of plugins available on the Internet.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Repositorios de Plugins...&lt;/b&gt;&lt;p&gt;Abre un diálogo que muestra una lista de extensiones (plugins) disponibles en Internet.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2956"/>
+        <source>Eric API Documentation</source>
+        <translation>Documentación de API de Eric</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2960"/>
+        <source>Open Eric API Documentation</source>
+        <translation>Abrir Documentación de API de Eric</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3161"/>
+        <source>&amp;Unittest</source>
+        <translation>Te&amp;st Unitario</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3105"/>
+        <source>E&amp;xtras</source>
+        <translation>E&amp;xtras</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3115"/>
+        <source>Wi&amp;zards</source>
+        <translation>Asis&amp;tentes</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3178"/>
+        <source>Select Tool Group</source>
+        <translation>Seleccionar Grupo de Herramientas</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3189"/>
+        <source>Se&amp;ttings</source>
+        <translation>Con&amp;figuración</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3219"/>
+        <source>&amp;Window</source>
+        <translation>Ven&amp;tana</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3280"/>
+        <source>&amp;Toolbars</source>
+        <translation>&amp;Barra de Herramientas</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3142"/>
+        <source>P&amp;lugins</source>
+        <translation>P&amp;lugins</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3294"/>
+        <source>&amp;Help</source>
+        <translation>Ay&amp;uda</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3367"/>
+        <source>Tools</source>
+        <translation>Herramientas</translation>
     </message>
     <message>
         <location filename="../UI/UserInterface.py" line="3369"/>
+        <source>Settings</source>
+        <translation>Ajustes</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5216"/>
+        <source>Help</source>
+        <translation>Ayuda</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3371"/>
+        <source>Profiles</source>
+        <translation>Perfiles</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3372"/>
         <source>Plugins</source>
         <translation>Plugins</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7268"/>
+        <location filename="../UI/UserInterface.py" line="7295"/>
         <source>&lt;/table&gt;</source>
         <translation>&lt;/table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Email address or mail server address is empty. Please configure your Email settings in the Preferences Dialog.</source>
         <translation>La dirección de correo electrónico o la dirección del servidor de correo están en blanco. Por favor configure las opciones de Correo Electrónico en el diálogo de Preferencias.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4207"/>
+        <location filename="../UI/UserInterface.py" line="4210"/>
         <source>Configure Tool Groups ...</source>
         <translation>Configurar Grupos de Herramientas ...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4211"/>
+        <location filename="../UI/UserInterface.py" line="4214"/>
         <source>Configure current Tool Group ...</source>
         <translation>Configurar Grupo de Herramientas actual ...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4162"/>
+        <location filename="../UI/UserInterface.py" line="4165"/>
         <source>&amp;Builtin Tools</source>
         <translation>Herramientas de serie (&amp;builtin)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4179"/>
+        <location filename="../UI/UserInterface.py" line="4182"/>
         <source>&amp;Plugin Tools</source>
         <translation>Herramientas de Extensión (&amp;Plugin)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4326"/>
+        <location filename="../UI/UserInterface.py" line="4329"/>
         <source>&amp;Show all</source>
         <translation>&amp;Ver todo</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4328"/>
+        <location filename="../UI/UserInterface.py" line="4331"/>
         <source>&amp;Hide all</source>
         <translation>&amp;Ocultar todo</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>Problem</source>
         <translation>Problema</translation>
     </message>
     <message>
+        <location filename="../UI/UserInterface.py" line="5552"/>
+        <source>Process Generation Error</source>
+        <translation>Error de Generación de Proceso</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5216"/>
+        <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source>
+        <translation>No hay visor personalizado seleccionado actualmente. Por favor, especifique uno en el diálogo de preferencias.</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5250"/>
+        <source>&lt;p&gt;Could not start the help viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;No se ha podido ejecutar el visor de ayuda.&lt;br&gt;Asegúrese de que esta disponible como &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5892"/>
+        <source>Documentation Missing</source>
+        <translation>Falta documentación</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5875"/>
+        <source>Documentation</source>
+        <translation>Documentación</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6915"/>
+        <source>Drop Error</source>
+        <translation>Error de volcado</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="7256"/>
+        <source>Error during updates check</source>
+        <translation>Error durante la verificación de actualización</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="7077"/>
+        <source>&amp;Cancel</source>
+        <translation>&amp;Cancelar</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="7237"/>
+        <source>Update available</source>
+        <translation>Actualizaciones disponibles</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="7256"/>
+        <source>Could not perform updates check.</source>
+        <translation>No se puede llevar a cabo la verificación de actualizaciones.</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="7280"/>
+        <source>&lt;h3&gt;Available versions&lt;/h3&gt;&lt;table&gt;</source>
+        <translation>&lt;h3&gt;Versiones disponibles&lt;/h3&gt;&lt;table&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="7332"/>
+        <source>First time usage</source>
+        <translation>Usado por primera vez</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2458"/>
+        <source>Mini Editor</source>
+        <translation>Mini Editor</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2453"/>
+        <source>Mini &amp;Editor...</source>
+        <translation>Mini &amp;Editor...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2459"/>
+        <source>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Open a dialog with a simplified editor.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Abre un diálogo con un editor simple.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2778"/>
+        <source>Install Plugins</source>
+        <translation>Instalar Plugins</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2773"/>
+        <source>&amp;Install Plugins...</source>
+        <translation>&amp;Instalar Plugins...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2779"/>
+        <source>&lt;b&gt;Install Plugins...&lt;/b&gt;&lt;p&gt;This opens a dialog to install or update plugins.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Instalar Plugins...&lt;/b&gt;&lt;p&gt;Abre un diálogo para instalar o actualizar extensiones (plugins).&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2614"/>
+        <source>Toolbars</source>
+        <translation>Barras de Herramientas</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2614"/>
+        <source>Tool&amp;bars...</source>
+        <translation>&amp;Barras de Herramientas...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2619"/>
+        <source>Configure toolbars</source>
+        <translation>Configurar Barras de Herramientas</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2620"/>
+        <source>&lt;b&gt;Toolbars&lt;/b&gt;&lt;p&gt;Configure the toolbars. With this dialog you may change the actions shown on the various toolbars and define your own toolbars.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Barras de Herramientas&lt;/b&gt;&lt;p&gt;Configure las barras de herramientas. Con este diálogo puede cambiar las accines mostradas en las diversas barras de herramientas, y definir sus propias barras de herramientas.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="686"/>
+        <source>Restoring Toolbarmanager...</source>
+        <translation>Restaurando Gestor de Barras de Herramientas...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5497"/>
+        <source>External Tools</source>
+        <translation>Herramientas Externas</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1768"/>
+        <source>Multiproject-Viewer</source>
+        <translation>Visor de Multiproyecto</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1768"/>
+        <source>&amp;Multiproject-Viewer</source>
+        <translation>Visor de &amp;Multiproyecto</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1676"/>
+        <source>Save session</source>
+        <translation>Guardar sesión</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6621"/>
+        <source>Read session</source>
+        <translation>Cargar sesión</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3544"/>
+        <source>&lt;p&gt;This part of the status bar displays the current editors encoding.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Esta zona de la barra de estado muestra la codificación del editor actual.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3558"/>
+        <source>&lt;p&gt;This part of the status bar displays an indication of the current editors files writability.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Esta zona de la barra de estado muestra una indicación de las propiedades de escritura de los archivos del editor.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2244"/>
+        <source>Request Feature</source>
+        <translation>Solicitar nueva característica</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2244"/>
+        <source>Request &amp;Feature...</source>
+        <translation>Solicitar nueva &amp;característica...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2248"/>
+        <source>Send a feature request</source>
+        <translation>Enviar una solicitud de nueva característica</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2250"/>
+        <source>&lt;b&gt;Request Feature...&lt;/b&gt;&lt;p&gt;Opens a dialog to send a feature request.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Solicitar nueva Característica...&lt;/b&gt;&lt;p&gt;Abre un diálogo para enviar una solicitud de nueva característica.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3537"/>
+        <source>&lt;p&gt;This part of the status bar displays the current editors language.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Esta zona de la barra de estado muestra el lenguaje del editor actual.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3565"/>
+        <source>&lt;p&gt;This part of the status bar displays the line number of the current editor.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Esta zona de la barra de estado muestra el número de línea en el editor actual.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3572"/>
+        <source>&lt;p&gt;This part of the status bar displays the cursor position of the current editor.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Esta zona de la barra de estado muestra la posición del cursor en el editor actual.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1918"/>
+        <source>Horizontal Toolbox</source>
+        <translation>Caja de Herramientas Horizontal</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1875"/>
+        <source>Alt+Shift+A</source>
+        <translation>Alt+Shift+A</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1918"/>
+        <source>&amp;Horizontal Toolbox</source>
+        <translation>Caja de Herramientas &amp;Horizontal</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1922"/>
+        <source>Toggle the Horizontal Toolbox window</source>
+        <translation>Conmutar la ventana de Caja de Herramientas Horizontal</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1924"/>
+        <source>&lt;b&gt;Toggle the Horizontal Toolbox window&lt;/b&gt;&lt;p&gt;If the Horizontal Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Conmutar la ventana de Caja de Herramientas Horizontal&lt;/b&gt;&lt;p&gt;Si la ventana de Caja de Herramientas Horizontal está escondida, se muestra. Si está siendo mostrada, se cierra.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="4127"/>
+        <source>Restart application</source>
+        <translation>Reiniciar aplicación</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="4127"/>
+        <source>The application needs to be restarted. Do it now?</source>
+        <translation>La aplicación necesita ser reiniciada. ¿Desea hacerlo ahora?</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3151"/>
+        <source>Configure...</source>
+        <translation>Configurar...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3551"/>
+        <source>&lt;p&gt;This part of the status bar displays the current editors eol setting.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Esta zona de la barra de estado muestra la configuración actual de fin de línea (eol) para los editores.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2751"/>
+        <source>Switch between tabs</source>
+        <translation>Alternar entre pestañas</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2751"/>
+        <source>Ctrl+1</source>
+        <translation>Ctrl+1</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2540"/>
+        <source>Export Preferences</source>
+        <translation>Exportar Preferencias</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2540"/>
+        <source>E&amp;xport Preferences...</source>
+        <translation>E&amp;xportar Preferencias...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2545"/>
+        <source>Export the current configuration</source>
+        <translation>Exportar la configuración actual</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2547"/>
+        <source>&lt;b&gt;Export Preferences&lt;/b&gt;&lt;p&gt;Export the current configuration to a file.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Exportar Preferencias&lt;/b&gt;&lt;p&gt;Exportar la configuración actual a un archivo.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2554"/>
+        <source>Import Preferences</source>
+        <translation>Importar Preferencias</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2554"/>
+        <source>I&amp;mport Preferences...</source>
+        <translation>I&amp;mportar Preferencias...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2559"/>
+        <source>Import a previously exported configuration</source>
+        <translation>Importar una configuración previamente exportada</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2561"/>
+        <source>&lt;b&gt;Import Preferences&lt;/b&gt;&lt;p&gt;Import a previously exported configuration.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Importar Preferencias&lt;/b&gt;&lt;p&gt;Importar una configuración previamente exportada.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2733"/>
+        <source>Show next</source>
+        <translation>Mostrar siguente</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2742"/>
+        <source>Show previous</source>
+        <translation>Mostrar anterior</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1932"/>
+        <source>Left Sidebar</source>
+        <translation>Barra Lateral a la Izquierda</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1932"/>
+        <source>&amp;Left Sidebar</source>
+        <translation>Barra &amp;Lateral a la Izquierda</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1936"/>
+        <source>Toggle the left sidebar window</source>
+        <translation>Conmutar la barra lateral a la izquierda</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1937"/>
+        <source>&lt;b&gt;Toggle the left sidebar window&lt;/b&gt;&lt;p&gt;If the left sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Conmutar la barra lateral a la izquierda&lt;/b&gt;&lt;p&gt;Si la barra lateral a la izquierda está escondida, se muestra. Si está siendo mostrada, se cierra.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1959"/>
+        <source>Bottom Sidebar</source>
+        <translation>Barra Lateral Inferior</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1959"/>
+        <source>&amp;Bottom Sidebar</source>
+        <translation>&amp;Barra Lateral Inferior</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1963"/>
+        <source>Toggle the bottom sidebar window</source>
+        <translation>Conmutar la barra lateral inferior</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1965"/>
+        <source>&lt;b&gt;Toggle the bottom sidebar window&lt;/b&gt;&lt;p&gt;If the bottom sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Conmutar la barra lateral inferior&lt;/b&gt;&lt;p&gt;Si la barra lateral inferior está escondida, se muestra. Si está siendo mostrada, se cierra.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1786"/>
+        <source>&amp;Debug-Viewer</source>
+        <translation>Visor &amp;Depurador</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2440"/>
+        <source>SQL Browser</source>
+        <translation>Navegador SQL</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2440"/>
+        <source>SQL &amp;Browser...</source>
+        <translation>&amp;Navegador SQL...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2445"/>
+        <source>Browse a SQL database</source>
+        <translation>Navegar una base de datos SQL</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2446"/>
+        <source>&lt;b&gt;SQL Browser&lt;/b&gt;&lt;p&gt;Browse a SQL database.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Navegador SQL&lt;/b&gt;&lt;p&gt;Navegar una base de datos SQL.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2495"/>
+        <source>Icon Editor</source>
+        <translation>Editor de Iconos</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2495"/>
+        <source>&amp;Icon Editor...</source>
+        <translation>Editor de &amp;Iconos...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1605"/>
+        <source>{0} - Passive Mode</source>
+        <translation>{0} - Modo Pasivo</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1612"/>
+        <source>{0} - {1} - Passive Mode</source>
+        <translation>{0} - {1} - Modo Pasivo</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1616"/>
+        <source>{0} - {1} - {2} - Passive Mode</source>
+        <translation>{0} - {1} - {2} - Modo Pasivo</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3643"/>
+        <source>External Tools/{0}</source>
+        <translation>Herramientas Externas/{0}</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5344"/>
+        <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not exist or is zero length.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;El archivo &lt;b&gt;{0}&lt;/b&gt; no existe o tiene longitud nula. &lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5069"/>
+        <source>&lt;p&gt;Could not start Qt-Designer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;No se ha podido ejecutar Qt-Designer.&lt;br&gt;Asegúrese de que esta disponible como &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5139"/>
+        <source>&lt;p&gt;Could not start Qt-Linguist.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;No se ha podido ejecutar Qt-Linguist.&lt;br&gt;Asegúrese de que esta disponible como &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5183"/>
+        <source>&lt;p&gt;Could not start Qt-Assistant.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;No se ha podido ejecutar Qt-Assistant.&lt;br&gt;Asegúrese de que esta disponible como &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5230"/>
+        <source>&lt;p&gt;Could not start custom viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;No se ha podido ejecutar el visor personalizado.&lt;br&gt;Asegúrese de que esta disponible como &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5300"/>
+        <source>&lt;p&gt;Could not start UI Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;No se ha podido ejecutar el Previsualizador de UI.&lt;br&gt;Asegúrese de que esta disponible como &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5357"/>
+        <source>&lt;p&gt;Could not start Translation Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;No se ha podido ejecutar el Previsualizador de Traducciones.&lt;br&gt;Asegúrese de que esta disponible como &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5380"/>
+        <source>&lt;p&gt;Could not start SQL Browser.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;No se ha podido iniciar el navegador SQL.&lt;br&gt;Asegúrese de que está disponible como &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5488"/>
+        <source>No tool entry found for external tool &apos;{0}&apos; in tool group &apos;{1}&apos;.</source>
+        <translation>No se ha encontrado la entrada para la herramienta externa &apos;{0}&apos; en el grupo de herramientas &apos;{1}&apos;.</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5497"/>
+        <source>No toolgroup entry &apos;{0}&apos; found.</source>
+        <translation>No se ha encontrado la entrada para el grupo de herramientas &apos;{0}&apos;.</translation>
+    </message>
+    <message>
         <location filename="../UI/UserInterface.py" line="5536"/>
-        <source>Process Generation Error</source>
-        <translation>Error de Generación de Proceso</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
-        <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source>
-        <translation>No hay visor personalizado seleccionado actualmente. Por favor, especifique uno en el diálogo de preferencias.</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5247"/>
-        <source>&lt;p&gt;Could not start the help viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;No se ha podido ejecutar el visor de ayuda.&lt;br&gt;Asegúrese de que esta disponible como &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
-        <source>Documentation Missing</source>
-        <translation>Falta documentación</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
-        <source>Documentation</source>
-        <translation>Documentación</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
-        <source>Drop Error</source>
-        <translation>Error de volcado</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
-        <source>Error during updates check</source>
-        <translation>Error durante la verificación de actualización</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
-        <source>&amp;Cancel</source>
-        <translation>&amp;Cancelar</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
-        <source>Update available</source>
-        <translation>Actualizaciones disponibles</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
-        <source>Could not perform updates check.</source>
-        <translation>No se puede llevar a cabo la verificación de actualizaciones.</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="7253"/>
-        <source>&lt;h3&gt;Available versions&lt;/h3&gt;&lt;table&gt;</source>
-        <translation>&lt;h3&gt;Versiones disponibles&lt;/h3&gt;&lt;table&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
-        <source>First time usage</source>
-        <translation>Usado por primera vez</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2455"/>
-        <source>Mini Editor</source>
-        <translation>Mini Editor</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2450"/>
-        <source>Mini &amp;Editor...</source>
-        <translation>Mini &amp;Editor...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2456"/>
-        <source>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Open a dialog with a simplified editor.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Abre un diálogo con un editor simple.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2775"/>
-        <source>Install Plugins</source>
-        <translation>Instalar Plugins</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2770"/>
-        <source>&amp;Install Plugins...</source>
-        <translation>&amp;Instalar Plugins...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2776"/>
-        <source>&lt;b&gt;Install Plugins...&lt;/b&gt;&lt;p&gt;This opens a dialog to install or update plugins.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Instalar Plugins...&lt;/b&gt;&lt;p&gt;Abre un diálogo para instalar o actualizar extensiones (plugins).&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
-        <source>Toolbars</source>
-        <translation>Barras de Herramientas</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
-        <source>Tool&amp;bars...</source>
-        <translation>&amp;Barras de Herramientas...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2616"/>
-        <source>Configure toolbars</source>
-        <translation>Configurar Barras de Herramientas</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2617"/>
-        <source>&lt;b&gt;Toolbars&lt;/b&gt;&lt;p&gt;Configure the toolbars. With this dialog you may change the actions shown on the various toolbars and define your own toolbars.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Barras de Herramientas&lt;/b&gt;&lt;p&gt;Configure las barras de herramientas. Con este diálogo puede cambiar las accines mostradas en las diversas barras de herramientas, y definir sus propias barras de herramientas.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="683"/>
-        <source>Restoring Toolbarmanager...</source>
-        <translation>Restaurando Gestor de Barras de Herramientas...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
-        <source>External Tools</source>
-        <translation>Herramientas Externas</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
-        <source>Multiproject-Viewer</source>
-        <translation>Visor de Multiproyecto</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
-        <source>&amp;Multiproject-Viewer</source>
-        <translation>Visor de &amp;Multiproyecto</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1673"/>
-        <source>Save session</source>
-        <translation>Guardar sesión</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
-        <source>Read session</source>
-        <translation>Cargar sesión</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3541"/>
-        <source>&lt;p&gt;This part of the status bar displays the current editors encoding.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Esta zona de la barra de estado muestra la codificación del editor actual.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3555"/>
-        <source>&lt;p&gt;This part of the status bar displays an indication of the current editors files writability.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Esta zona de la barra de estado muestra una indicación de las propiedades de escritura de los archivos del editor.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
-        <source>Request Feature</source>
-        <translation>Solicitar nueva característica</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
-        <source>Request &amp;Feature...</source>
-        <translation>Solicitar nueva &amp;característica...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2245"/>
-        <source>Send a feature request</source>
-        <translation>Enviar una solicitud de nueva característica</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2247"/>
-        <source>&lt;b&gt;Request Feature...&lt;/b&gt;&lt;p&gt;Opens a dialog to send a feature request.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Solicitar nueva Característica...&lt;/b&gt;&lt;p&gt;Abre un diálogo para enviar una solicitud de nueva característica.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3534"/>
-        <source>&lt;p&gt;This part of the status bar displays the current editors language.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Esta zona de la barra de estado muestra el lenguaje del editor actual.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3562"/>
-        <source>&lt;p&gt;This part of the status bar displays the line number of the current editor.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Esta zona de la barra de estado muestra el número de línea en el editor actual.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3569"/>
-        <source>&lt;p&gt;This part of the status bar displays the cursor position of the current editor.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Esta zona de la barra de estado muestra la posición del cursor en el editor actual.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
-        <source>Horizontal Toolbox</source>
-        <translation>Caja de Herramientas Horizontal</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
-        <source>Alt+Shift+A</source>
-        <translation>Alt+Shift+A</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
-        <source>&amp;Horizontal Toolbox</source>
-        <translation>Caja de Herramientas &amp;Horizontal</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1919"/>
-        <source>Toggle the Horizontal Toolbox window</source>
-        <translation>Conmutar la ventana de Caja de Herramientas Horizontal</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1921"/>
-        <source>&lt;b&gt;Toggle the Horizontal Toolbox window&lt;/b&gt;&lt;p&gt;If the Horizontal Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Conmutar la ventana de Caja de Herramientas Horizontal&lt;/b&gt;&lt;p&gt;Si la ventana de Caja de Herramientas Horizontal está escondida, se muestra. Si está siendo mostrada, se cierra.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
-        <source>Restart application</source>
-        <translation>Reiniciar aplicación</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
-        <source>The application needs to be restarted. Do it now?</source>
-        <translation>La aplicación necesita ser reiniciada. ¿Desea hacerlo ahora?</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3148"/>
-        <source>Configure...</source>
-        <translation>Configurar...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3548"/>
-        <source>&lt;p&gt;This part of the status bar displays the current editors eol setting.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Esta zona de la barra de estado muestra la configuración actual de fin de línea (eol) para los editores.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
-        <source>Switch between tabs</source>
-        <translation>Alternar entre pestañas</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
-        <source>Ctrl+1</source>
-        <translation>Ctrl+1</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
-        <source>Export Preferences</source>
-        <translation>Exportar Preferencias</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
-        <source>E&amp;xport Preferences...</source>
-        <translation>E&amp;xportar Preferencias...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2542"/>
-        <source>Export the current configuration</source>
-        <translation>Exportar la configuración actual</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2544"/>
-        <source>&lt;b&gt;Export Preferences&lt;/b&gt;&lt;p&gt;Export the current configuration to a file.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Exportar Preferencias&lt;/b&gt;&lt;p&gt;Exportar la configuración actual a un archivo.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
-        <source>Import Preferences</source>
-        <translation>Importar Preferencias</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
-        <source>I&amp;mport Preferences...</source>
-        <translation>I&amp;mportar Preferencias...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2556"/>
-        <source>Import a previously exported configuration</source>
-        <translation>Importar una configuración previamente exportada</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2558"/>
-        <source>&lt;b&gt;Import Preferences&lt;/b&gt;&lt;p&gt;Import a previously exported configuration.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Importar Preferencias&lt;/b&gt;&lt;p&gt;Importar una configuración previamente exportada.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
-        <source>Show next</source>
-        <translation>Mostrar siguente</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
-        <source>Show previous</source>
-        <translation>Mostrar anterior</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
-        <source>Left Sidebar</source>
-        <translation>Barra Lateral a la Izquierda</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
-        <source>&amp;Left Sidebar</source>
-        <translation>Barra &amp;Lateral a la Izquierda</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1933"/>
-        <source>Toggle the left sidebar window</source>
-        <translation>Conmutar la barra lateral a la izquierda</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1934"/>
-        <source>&lt;b&gt;Toggle the left sidebar window&lt;/b&gt;&lt;p&gt;If the left sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Conmutar la barra lateral a la izquierda&lt;/b&gt;&lt;p&gt;Si la barra lateral a la izquierda está escondida, se muestra. Si está siendo mostrada, se cierra.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
-        <source>Bottom Sidebar</source>
-        <translation>Barra Lateral Inferior</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
-        <source>&amp;Bottom Sidebar</source>
-        <translation>&amp;Barra Lateral Inferior</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1960"/>
-        <source>Toggle the bottom sidebar window</source>
-        <translation>Conmutar la barra lateral inferior</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1962"/>
-        <source>&lt;b&gt;Toggle the bottom sidebar window&lt;/b&gt;&lt;p&gt;If the bottom sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Conmutar la barra lateral inferior&lt;/b&gt;&lt;p&gt;Si la barra lateral inferior está escondida, se muestra. Si está siendo mostrada, se cierra.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
-        <source>&amp;Debug-Viewer</source>
-        <translation>Visor &amp;Depurador</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
-        <source>SQL Browser</source>
-        <translation>Navegador SQL</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
-        <source>SQL &amp;Browser...</source>
-        <translation>&amp;Navegador SQL...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2442"/>
-        <source>Browse a SQL database</source>
-        <translation>Navegar una base de datos SQL</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2443"/>
-        <source>&lt;b&gt;SQL Browser&lt;/b&gt;&lt;p&gt;Browse a SQL database.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Navegador SQL&lt;/b&gt;&lt;p&gt;Navegar una base de datos SQL.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
-        <source>Icon Editor</source>
-        <translation>Editor de Iconos</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
-        <source>&amp;Icon Editor...</source>
-        <translation>Editor de &amp;Iconos...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1602"/>
-        <source>{0} - Passive Mode</source>
-        <translation>{0} - Modo Pasivo</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1609"/>
-        <source>{0} - {1} - Passive Mode</source>
-        <translation>{0} - {1} - Modo Pasivo</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1613"/>
-        <source>{0} - {1} - {2} - Passive Mode</source>
-        <translation>{0} - {1} - {2} - Modo Pasivo</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3640"/>
-        <source>External Tools/{0}</source>
-        <translation>Herramientas Externas/{0}</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
-        <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not exist or is zero length.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;El archivo &lt;b&gt;{0}&lt;/b&gt; no existe o tiene longitud nula. &lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5066"/>
-        <source>&lt;p&gt;Could not start Qt-Designer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;No se ha podido ejecutar Qt-Designer.&lt;br&gt;Asegúrese de que esta disponible como &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5136"/>
-        <source>&lt;p&gt;Could not start Qt-Linguist.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;No se ha podido ejecutar Qt-Linguist.&lt;br&gt;Asegúrese de que esta disponible como &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5180"/>
-        <source>&lt;p&gt;Could not start Qt-Assistant.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;No se ha podido ejecutar Qt-Assistant.&lt;br&gt;Asegúrese de que esta disponible como &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5227"/>
-        <source>&lt;p&gt;Could not start custom viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;No se ha podido ejecutar el visor personalizado.&lt;br&gt;Asegúrese de que esta disponible como &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5297"/>
-        <source>&lt;p&gt;Could not start UI Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;No se ha podido ejecutar el Previsualizador de UI.&lt;br&gt;Asegúrese de que esta disponible como &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5354"/>
-        <source>&lt;p&gt;Could not start Translation Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;No se ha podido ejecutar el Previsualizador de Traducciones.&lt;br&gt;Asegúrese de que esta disponible como &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5377"/>
-        <source>&lt;p&gt;Could not start SQL Browser.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;No se ha podido iniciar el navegador SQL.&lt;br&gt;Asegúrese de que está disponible como &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5472"/>
-        <source>No tool entry found for external tool &apos;{0}&apos; in tool group &apos;{1}&apos;.</source>
-        <translation>No se ha encontrado la entrada para la herramienta externa &apos;{0}&apos; en el grupo de herramientas &apos;{1}&apos;.</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
-        <source>No toolgroup entry &apos;{0}&apos; found.</source>
-        <translation>No se ha encontrado la entrada para el grupo de herramientas &apos;{0}&apos;.</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5520"/>
         <source>Starting process &apos;{0} {1}&apos;.
 </source>
         <translation>Comenzando proceso &apos;{0} {1}&apos;.
 </translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5536"/>
+        <location filename="../UI/UserInterface.py" line="5552"/>
         <source>&lt;p&gt;Could not start the tool entry &lt;b&gt;{0}&lt;/b&gt;.&lt;br&gt;Ensure that it is available as &lt;b&gt;{1}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;No se ha podido ejecutar la entrada de herramienta &lt;b&gt;{0}&lt;/b&gt;.&lt;br&gt;Asegúrese de que esta disponible como &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5614"/>
+        <location filename="../UI/UserInterface.py" line="5630"/>
         <source>Process &apos;{0}&apos; has exited.
 </source>
         <translation>El proceso &apos;{0}&apos; ha finalizado.
 </translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>&lt;p&gt;The documentation starting point &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; could not be found.&lt;/p&gt;</source>
         <translation>&lt;P&gt;El punto de entrada de documentación &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; no ha podido encontrarse.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo de tareas &lt;b&gt;{0}&lt;/b&gt; no puede leerse.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6550"/>
+        <location filename="../UI/UserInterface.py" line="6566"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo de sesión &lt;b&gt;{0}&lt;/b&gt; no ha podido guardarse.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo de sesión &lt;b&gt;&lt;/b&gt; no ha podido ser leído.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; is not a file.&lt;/p&gt;</source>
         <translation>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; no es un archivo.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7059"/>
+        <location filename="../UI/UserInterface.py" line="7086"/>
         <source>Trying host {0}</source>
         <translation>Probando host {0}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1124"/>
+        <location filename="../UI/UserInterface.py" line="1127"/>
         <source>Cooperation</source>
         <translation>Cooperación</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Alt+Shift+O</source>
         <translation>Alt+Shift+O</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1180"/>
+        <location filename="../UI/UserInterface.py" line="1183"/>
         <source>Symbols</source>
         <translation>Símbolos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Alt+Shift+Y</source>
         <translation>Alt+Shift+Y</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1189"/>
+        <location filename="../UI/UserInterface.py" line="1192"/>
         <source>Numbers</source>
         <translation>Números</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Alt+Shift+B</source>
         <translation>Alt+Shift+B</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2931"/>
+        <location filename="../UI/UserInterface.py" line="2934"/>
         <source>Python 3 Documentation</source>
         <translation>Documentación de Python 3</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2935"/>
+        <location filename="../UI/UserInterface.py" line="2938"/>
         <source>Open Python 3 Documentation</source>
         <translation>Abrir Documentación de Python 3</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>Error getting versions information</source>
         <translation>Error al obtener información de versiones</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7111"/>
+        <location filename="../UI/UserInterface.py" line="7138"/>
         <source>The versions information could not be downloaded. Please go online and try again.</source>
         <translation>La información de versiones no se ha podido descargar. Póngase online por favor e inténtelo de nuevo.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Open Browser</source>
         <translation>Abrir Navegador</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Could not start a web browser</source>
         <translation>No se ha podido iniciar el navegador web</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>The versions information could not be downloaded for the last 7 days. Please go online and try again.</source>
         <translation>La información de versiones no se ha podido descargar en los últimos 7 días. Póngase por favor online e inténtelo de nuevo.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="692"/>
+        <location filename="../UI/UserInterface.py" line="695"/>
         <source>Setting View Profile...</source>
         <translation>Estableciendo Perfil de Vista...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="705"/>
+        <location filename="../UI/UserInterface.py" line="708"/>
         <source>Reading Tasks...</source>
         <translation>Leyendo tareas...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="710"/>
+        <location filename="../UI/UserInterface.py" line="713"/>
         <source>Reading Templates...</source>
         <translation>Leyendo Plantillas...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="715"/>
+        <location filename="../UI/UserInterface.py" line="718"/>
         <source>Starting Debugger...</source>
         <translation>Iniciando Depurador...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New Window</source>
         <translation>Nueva Ventana</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New &amp;Window</source>
         <translation>Nueva &amp;Ventana</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>Ctrl+Shift+N</source>
         <comment>File|New Window</comment>
         <translation>Ctrl+Shift+N</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Unittest Rerun Failed</source>
         <translation>Re-ejecución de Test Unitatio Fallida</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Rerun Failed Tests...</source>
         <translation>Re-ejecutar Tests Fallidos...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2289"/>
+        <location filename="../UI/UserInterface.py" line="2292"/>
         <source>Rerun failed tests of the last run</source>
         <translation>Re-ejecutar tests fallidos de la última ejecución</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2291"/>
+        <location filename="../UI/UserInterface.py" line="2294"/>
         <source>&lt;b&gt;Rerun Failed Tests&lt;/b&gt;&lt;p&gt;Rerun all tests that failed during the last unittest run.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Re-ejecución Tests Fallidos&lt;/b&gt;&lt;p&gt;Re-ejecutar todos los tests que fallaron durante la última ejecución de test unitario.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
+        <location filename="../UI/UserInterface.py" line="2426"/>
         <source>Compare &amp;Files side by side...</source>
         <translation>Comparar &amp;Archivos uno al lado de otro...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>Snapshot</source>
         <translation>Captura de Pantalla</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>&amp;Snapshot...</source>
         <translation>Captura de &amp;Pantalla...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2511"/>
+        <location filename="../UI/UserInterface.py" line="2514"/>
         <source>Take snapshots of a screen region</source>
         <translation>Tomar capturas de una región de la pantalla</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2513"/>
+        <location filename="../UI/UserInterface.py" line="2516"/>
         <source>&lt;b&gt;Snapshot&lt;/b&gt;&lt;p&gt;This opens a dialog to take snapshots of a screen region.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Captura de Pantalla&lt;/b&gt;&lt;p&gt;Abre un diálogo para tomar capturas de pantalla de una región de la pantalla.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5449"/>
+        <location filename="../UI/UserInterface.py" line="5465"/>
         <source>&lt;p&gt;Could not start Snapshot tool.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;No se ha podido ejecutar la herramienta de Captura de Pantalla.&lt;br&gt;Asegúrese de que esta disponible como &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7324"/>
+        <location filename="../UI/UserInterface.py" line="7351"/>
         <source>Select Workspace Directory</source>
         <translation>Seleccionar Directorio para el Espacio de Trabajo</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
+        <location filename="../UI/UserInterface.py" line="1893"/>
         <source>Left Toolbox</source>
         <translation>Caja de herramientas de la Izquierda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>Right Toolbox</source>
         <translation>Caja de herramientas de la Derecha</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1754"/>
+        <location filename="../UI/UserInterface.py" line="1757"/>
         <source>Switch the input focus to the Project-Viewer window.</source>
         <translation>Cambiar el foco de input a la ventana de Visor de Proyecto.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1756"/>
+        <location filename="../UI/UserInterface.py" line="1759"/>
         <source>&lt;b&gt;Activate Project-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Project-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Activar Visor de Proyectos&lt;/b&gt;&lt;p&gt;Cambia el foco de input a la ventana de Visor de Proyecto.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1771"/>
+        <location filename="../UI/UserInterface.py" line="1774"/>
         <source>Switch the input focus to the Multiproject-Viewer window.</source>
         <translation>Cambiar el foco de input a la ventana de Visor de Multiproyecto.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1773"/>
+        <location filename="../UI/UserInterface.py" line="1776"/>
         <source>&lt;b&gt;Activate Multiproject-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Multiproject-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Activar Visor de Multiproyecto&lt;/b&gt;&lt;p&gt;Cambia el foco de input a la ventana de Visor de Multiproyecto.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1789"/>
+        <location filename="../UI/UserInterface.py" line="1792"/>
         <source>Switch the input focus to the Debug-Viewer window.</source>
         <translation>Cambiar el foco de input a la ventana de Visor de Depuración.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1791"/>
+        <location filename="../UI/UserInterface.py" line="1794"/>
         <source>&lt;b&gt;Activate Debug-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Debug-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Activar Visor de Depuración&lt;/b&gt;&lt;p&gt;Cambia el foco de input a la ventana de Visor de Depuración.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1807"/>
+        <location filename="../UI/UserInterface.py" line="1810"/>
         <source>Switch the input focus to the Shell window.</source>
         <translation>Cambiar el foco de input a la ventana de Shell.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1809"/>
+        <location filename="../UI/UserInterface.py" line="1812"/>
         <source>&lt;b&gt;Activate Shell&lt;/b&gt;&lt;p&gt;This switches the input focus to the Shell window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Activar Shell&lt;/b&gt;&lt;p&gt;Cambia el foco de input a la ventana de Shell.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>&amp;File-Browser</source>
         <translation>Na&amp;vegador de archivos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1824"/>
+        <location filename="../UI/UserInterface.py" line="1827"/>
         <source>Switch the input focus to the File-Browser window.</source>
         <translation>Cambiar el foco de input a la ventana de Navegador de Archivos.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1826"/>
+        <location filename="../UI/UserInterface.py" line="1829"/>
         <source>&lt;b&gt;Activate File-Browser&lt;/b&gt;&lt;p&gt;This switches the input focus to the File-Browser window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Activar Navegador de Archivos&lt;/b&gt;&lt;p&gt;Cambia el foco de input a la ventana de Navegador de Archivos.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Lo&amp;g-Viewer</source>
         <translation>Visor de Lo&amp;g</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1841"/>
+        <location filename="../UI/UserInterface.py" line="1844"/>
         <source>Switch the input focus to the Log-Viewer window.</source>
         <translation>Cambiar el foco de input a la ventana de Visor de Log.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1843"/>
+        <location filename="../UI/UserInterface.py" line="1846"/>
         <source>&lt;b&gt;Activate Log-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Log-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Activar Visor de Log&lt;/b&gt;&lt;p&gt;Cambia el foco de input a la ventana de Visor de Log.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>&amp;Task-Viewer</source>
         <translation>Visor de &amp;Tareas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1859"/>
+        <location filename="../UI/UserInterface.py" line="1862"/>
         <source>Switch the input focus to the Task-Viewer window.</source>
         <translation>Cambiar el foco de input a la ventana de Visor de Tareas.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Templ&amp;ate-Viewer</source>
         <translation>Visor de Pl&amp;antillas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1878"/>
+        <location filename="../UI/UserInterface.py" line="1881"/>
         <source>Switch the input focus to the Template-Viewer window.</source>
         <translation>Cambiar el foco de input a la ventana de Visor de Plantillas.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1880"/>
+        <location filename="../UI/UserInterface.py" line="1883"/>
         <source>&lt;b&gt;Activate Template-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Template-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Activar Visor de Plantillas&lt;/b&gt;&lt;p&gt;Cambiar el foco de input a la ventana de Visor de Plantillas.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
-        <source>&amp;Left Toolbox</source>
-        <translation>Caja de herramientas de &amp;la Izquierda</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="1893"/>
+        <source>&amp;Left Toolbox</source>
+        <translation>Caja de herramientas de &amp;la Izquierda</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1896"/>
         <source>Toggle the Left Toolbox window</source>
         <translation>Conmutar la ventana de Caja de Herramientas a la izquierda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1894"/>
+        <location filename="../UI/UserInterface.py" line="1897"/>
         <source>&lt;b&gt;Toggle the Left Toolbox window&lt;/b&gt;&lt;p&gt;If the Left Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Conmutar la Caja de Herramientas de la izquierda&lt;/b&gt;&lt;p&gt;Si la ventana Caja de Herramientas de la izquierda está escondida, se muestra. Si está siendo mostrada, se cierra.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>&amp;Right Toolbox</source>
         <translation>Caja de herramientas de la De&amp;recha</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1906"/>
+        <location filename="../UI/UserInterface.py" line="1909"/>
         <source>Toggle the Right Toolbox window</source>
         <translation>Conmutar la ventana de Caja de Herramientas a la derecha</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1907"/>
+        <location filename="../UI/UserInterface.py" line="1910"/>
         <source>&lt;b&gt;Toggle the Right Toolbox window&lt;/b&gt;&lt;p&gt;If the Right Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Conmutar la Caja de Herramientas de la derecha&lt;/b&gt;&lt;p&gt;Si la ventana Caja de Herramientas de la derecha está escondida, se muestra. Si está siendo mostrada, se cierra.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>Right Sidebar</source>
         <translation>Barra Lateral a la Derecha</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>&amp;Right Sidebar</source>
         <translation>Ba&amp;rra Lateral a la Derecha</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1946"/>
+        <location filename="../UI/UserInterface.py" line="1949"/>
         <source>Toggle the right sidebar window</source>
         <translation>Conmutar la ventana de barra lateral de la derecha</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1948"/>
+        <location filename="../UI/UserInterface.py" line="1951"/>
         <source>&lt;b&gt;Toggle the right sidebar window&lt;/b&gt;&lt;p&gt;If the right sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Conmutar la ventana de barra lateral de la derecha&lt;/b&gt;&lt;p&gt;Si la ventana de barra lateral a la derecha está escondida, se muestra. Si está siendo mostrada, se cierra.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Cooperation-Viewer</source>
         <translation>Visor de Cooperación</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Co&amp;operation-Viewer</source>
         <translation>Visor de Co&amp;operación</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1977"/>
+        <location filename="../UI/UserInterface.py" line="1980"/>
         <source>Switch the input focus to the Cooperation-Viewer window.</source>
         <translation>Cambiar el foco de input a la ventana de Visor de Cooperación.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1979"/>
+        <location filename="../UI/UserInterface.py" line="1982"/>
         <source>&lt;b&gt;Activate Cooperation-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Cooperation-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Activar Visor de Cooperación&lt;/b&gt;&lt;p&gt;Cambia el foco de input a la ventana de Visor de Cooperación.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Symbols-Viewer</source>
         <translation>Visor de Símbolos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>S&amp;ymbols-Viewer</source>
         <translation>Visor de S&amp;ímbolos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2014"/>
+        <location filename="../UI/UserInterface.py" line="2017"/>
         <source>Switch the input focus to the Symbols-Viewer window.</source>
         <translation>Cambiar el foco de input a la ventana de Visor de Símbolos.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2016"/>
+        <location filename="../UI/UserInterface.py" line="2019"/>
         <source>&lt;b&gt;Activate Symbols-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Symbols-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Activar Visor de Símbolos&lt;/b&gt;&lt;p&gt;Cambia el foco de input a la ventana de Visor de Símbolos.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Numbers-Viewer</source>
         <translation>Visor de Números</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Num&amp;bers-Viewer</source>
         <translation>Visor de Nú&amp;meros</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2033"/>
+        <location filename="../UI/UserInterface.py" line="2036"/>
         <source>Switch the input focus to the Numbers-Viewer window.</source>
         <translation>Cambiar el foco de input a la ventana de Visor de Números.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2035"/>
+        <location filename="../UI/UserInterface.py" line="2038"/>
         <source>&lt;b&gt;Activate Numbers-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Numbers-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Activar Visor de Números&lt;/b&gt;&lt;p&gt;Cambia el foco de input a la ventana de Visor de Números.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3225"/>
+        <location filename="../UI/UserInterface.py" line="3228"/>
         <source>&amp;Windows</source>
         <translation>&amp;Ventanas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1861"/>
+        <location filename="../UI/UserInterface.py" line="1864"/>
         <source>&lt;b&gt;Activate Task-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Task-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Activar Visor de Tareas&lt;/b&gt;&lt;p&gt;Cambia el foco de input a la ventana de Visor de Tareas.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>IRC</source>
         <translation>IRC</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>&amp;IRC</source>
         <translation>&amp;IRC</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1996"/>
+        <location filename="../UI/UserInterface.py" line="1999"/>
         <source>Switch the input focus to the IRC window.</source>
         <translation>Cambiar el foco de input a la ventana de IRC.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1998"/>
+        <location filename="../UI/UserInterface.py" line="2001"/>
         <source>&lt;b&gt;Activate IRC&lt;/b&gt;&lt;p&gt;This switches the input focus to the IRC window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Activar IRC&lt;/b&gt;&lt;p&gt;Cambia el foco de input a la ventana de IRC.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-Designer</source>
         <translation>Qt Designer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-&amp;Designer...</source>
         <translation>Qt-&amp;Designer...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2347"/>
+        <location filename="../UI/UserInterface.py" line="2350"/>
         <source>Start Qt-Designer</source>
         <translation>Iniciar Qt-Designer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2348"/>
+        <location filename="../UI/UserInterface.py" line="2351"/>
         <source>&lt;b&gt;Qt-Designer&lt;/b&gt;&lt;p&gt;Start Qt-Designer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Qt-Designer&lt;/b&gt;&lt;p&gt;Ejecutar Qt-Designer.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-Linguist</source>
         <translation>Qt-Linguist</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-&amp;Linguist...</source>
         <translation>Qt-&amp;Linguist...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2373"/>
+        <location filename="../UI/UserInterface.py" line="2376"/>
         <source>Start Qt-Linguist</source>
         <translation>Iniciar Qt Linguist</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2374"/>
+        <location filename="../UI/UserInterface.py" line="2377"/>
         <source>&lt;b&gt;Qt-Linguist&lt;/b&gt;&lt;p&gt;Start Qt-Linguist.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Qt-Linguist&lt;/b&gt;&lt;p&gt;Iniciar Qt-Linguist.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2862"/>
+        <location filename="../UI/UserInterface.py" line="2865"/>
         <source>Qt5 Documentation</source>
         <translation>Documentación de Qt5</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2866"/>
+        <location filename="../UI/UserInterface.py" line="2869"/>
         <source>Open Qt5 Documentation</source>
         <translation>Abrir Documentación de Qt5</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates</source>
         <translation>Gestionar Certificados SSL</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates...</source>
         <translation>Gestionar Certificados SSL...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2675"/>
+        <location filename="../UI/UserInterface.py" line="2678"/>
         <source>Manage the saved SSL certificates</source>
         <translation>Gestionar los certificados SSL guardados</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2677"/>
+        <location filename="../UI/UserInterface.py" line="2680"/>
         <source>&lt;b&gt;Manage SSL Certificates...&lt;/b&gt;&lt;p&gt;Opens a dialog to manage the saved SSL certificates.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Gestionar Certificados SSL...&lt;/b&gt;&lt;p&gt;Abre un diálogo para gestionar los certificados SSL guardados.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters</source>
         <translation>Editar Filtros de Mensajes</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters...</source>
         <translation>Editar Filtros de Mensajes...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2691"/>
+        <location filename="../UI/UserInterface.py" line="2694"/>
         <source>Edit the message filters used to suppress unwanted messages</source>
         <translation>Editar los filtros de mensajes utilizados para suprimir mensajes no deseados</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2693"/>
+        <location filename="../UI/UserInterface.py" line="2696"/>
         <source>&lt;b&gt;Edit Message Filters&lt;/b&gt;&lt;p&gt;Opens a dialog to edit the message filters used to suppress unwanted messages been shown in an error window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Editar Filtros de Mensajes&lt;/b&gt;&lt;p&gt;Abre un diálogo para editar los filtros de mensajes utilizados para suprimir mensajes no deseados y que no se muestren en la ventana de error.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2892"/>
+        <location filename="../UI/UserInterface.py" line="2895"/>
         <source>PyQt5 Documentation</source>
         <translation>Documentación de PyQt5</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2896"/>
+        <location filename="../UI/UserInterface.py" line="2899"/>
         <source>Open PyQt5 Documentation</source>
         <translation>Abrir Documentación de PyQt5</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2937"/>
+        <location filename="../UI/UserInterface.py" line="2940"/>
         <source>&lt;b&gt;Python 3 Documentation&lt;/b&gt;&lt;p&gt;Display the Python 3 documentation. If no documentation directory is configured, the location of the Python 3 documentation is assumed to be the doc directory underneath the location of the Python 3 executable on Windows and &lt;i&gt;/usr/share/doc/packages/python/html&lt;/i&gt; on Unix. Set PYTHON3DOCDIR in your environment to override this.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Documentación de Python 3&lt;/b&gt;&lt;p&gt;Mostrar la documentación de Python 3. Si no se ha configurado un directorio con lesta documentación, la ubicación de la documentación de Python 3 se asumirá en el directorio de documentación bajo la ubicación del ejecutable de Python 3 en Windows, y en &lt;i&gt;/usr/share/doc/packages/python/html&lt;/i&gt; para Unix. Establezca el valor de la variable de entorno PYTHON3DOCDIR para sobreescribir estas opciones. &lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>%v/%m</source>
         <translation>%v/%m</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2207"/>
+        <location filename="../UI/UserInterface.py" line="2210"/>
         <source>Show Error Log</source>
         <translation>Mostrar Registro de Errores</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2203"/>
+        <location filename="../UI/UserInterface.py" line="2206"/>
         <source>Show Error &amp;Log...</source>
         <translation>Mostrar &amp;Registro de Errores...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2208"/>
+        <location filename="../UI/UserInterface.py" line="2211"/>
         <source>&lt;b&gt;Show Error Log...&lt;/b&gt;&lt;p&gt;Opens a dialog showing the most recent error log.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Mostrar registro de errores...&lt;/b&gt;&lt;p&gt;Abre un diálogo mostrando el registro más reciente de errores.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7054"/>
+        <location filename="../UI/UserInterface.py" line="7081"/>
         <source>Version Check</source>
         <translation>Verificación de Versión</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="669"/>
-        <source>Generating Plugins Toolbars...</source>
-        <translation>Generando Barras de Herramientas para Plugins...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="4182"/>
-        <source>&amp;User Tools</source>
-        <translation>Herramientas de &amp;Usuario</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="4252"/>
-        <source>No User Tools Configured</source>
-        <translation>No se han Configurado Herramientas de Usuario</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
-        <source>Hex Editor</source>
-        <translation>Editor Hexadecimal</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
-        <source>&amp;Hex Editor...</source>
-        <translation>Editor &amp;Hexadecimal...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2709"/>
-        <source>Clear private data</source>
-        <translation>Limpiar Datos Privados</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2711"/>
-        <source>&lt;b&gt;Clear private data&lt;/b&gt;&lt;p&gt;Clears the private data like the various list of recently opened files, projects or multi projects.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Limpiar datos privados&lt;/b&gt;&lt;p&gt;Limpia los datos privados como las listas de archivos recientes, proyectos o multiproyectos.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1669"/>
-        <source>Save session...</source>
-        <translation>Guardar sesión...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1674"/>
-        <source>&lt;b&gt;Save session...&lt;/b&gt;&lt;p&gt;This saves the current session to disk. A dialog is opened to select the file name.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Guardar sesión...&lt;/b&gt;&lt;p&gt;Guarda la sesión actual a disco. Se muestra un diálogo para seleccionar el nombre de archivo.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
-        <source>Load session</source>
-        <translation>Cargar sesión</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1682"/>
-        <source>Load session...</source>
-        <translation>Cargar sesión...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1687"/>
-        <source>&lt;b&gt;Load session...&lt;/b&gt;&lt;p&gt;This loads a session saved to disk previously. A dialog is opened to select the file name.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Cargar sesión...&lt;/b&gt;&lt;p&gt;Carga una sesión guardada en disco anteriormente. Se muestra un diálogo para seleccionar el nombre de archivo.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
-        <source>Crash Session found!</source>
-        <translation>¡Se ha hallado una sesión perdida!</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
-        <source>A session file of a crashed session was found. Shall this session be restored?</source>
-        <translation>Se ha encontrado un archivo de sesió para una sesión perdida. ¿Desea restaurar esta sesión?</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="672"/>
+        <source>Generating Plugins Toolbars...</source>
+        <translation>Generando Barras de Herramientas para Plugins...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="4185"/>
+        <source>&amp;User Tools</source>
+        <translation>Herramientas de &amp;Usuario</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="4255"/>
+        <source>No User Tools Configured</source>
+        <translation>No se han Configurado Herramientas de Usuario</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2466"/>
+        <source>Hex Editor</source>
+        <translation>Editor Hexadecimal</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2466"/>
+        <source>&amp;Hex Editor...</source>
+        <translation>Editor &amp;Hexadecimal...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2712"/>
+        <source>Clear private data</source>
+        <translation>Limpiar Datos Privados</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2714"/>
+        <source>&lt;b&gt;Clear private data&lt;/b&gt;&lt;p&gt;Clears the private data like the various list of recently opened files, projects or multi projects.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Limpiar datos privados&lt;/b&gt;&lt;p&gt;Limpia los datos privados como las listas de archivos recientes, proyectos o multiproyectos.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1672"/>
+        <source>Save session...</source>
+        <translation>Guardar sesión...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1677"/>
+        <source>&lt;b&gt;Save session...&lt;/b&gt;&lt;p&gt;This saves the current session to disk. A dialog is opened to select the file name.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Guardar sesión...&lt;/b&gt;&lt;p&gt;Guarda la sesión actual a disco. Se muestra un diálogo para seleccionar el nombre de archivo.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6660"/>
+        <source>Load session</source>
+        <translation>Cargar sesión</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1685"/>
+        <source>Load session...</source>
+        <translation>Cargar sesión...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1690"/>
+        <source>&lt;b&gt;Load session...&lt;/b&gt;&lt;p&gt;This loads a session saved to disk previously. A dialog is opened to select the file name.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Cargar sesión...&lt;/b&gt;&lt;p&gt;Carga una sesión guardada en disco anteriormente. Se muestra un diálogo para seleccionar el nombre de archivo.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6710"/>
+        <source>Crash Session found!</source>
+        <translation>¡Se ha hallado una sesión perdida!</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6710"/>
+        <source>A session file of a crashed session was found. Shall this session be restored?</source>
+        <translation>Se ha encontrado un archivo de sesió para una sesión perdida. ¿Desea restaurar esta sesión?</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="675"/>
         <source>Cleaning Plugins Download Area...</source>
         <translation>Limpiar Área de Descarga de Plugins...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="664"/>
+        <location filename="../UI/UserInterface.py" line="667"/>
         <source>Initializing Plugins...</source>
         <translation>Inicializando Plugins...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>Update Check</source>
         <translation>Comprobación Actualización</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>You installed eric directly from the source code. There is no possibility to check for the availability of an update.</source>
         <translation>Ha instalado eric directamente a partir del código fuente. No es posible comprobar la disponibilidad de una actuación.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Code Documentation Viewer</source>
         <translation>Visor de Documentación de Código</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2867"/>
+        <location filename="../UI/UserInterface.py" line="2870"/>
         <source>&lt;b&gt;Qt5 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;Documentación de Qt5&lt;/b&gt;&lt;p&gt;Muestra la Documentación de Qt5. Dependiendo de la configuración, esta documentación será mostrará en el visor de ayuda interno de Eric, o se ejecutará en un navegador web, o Qt Assistant.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2898"/>
+        <location filename="../UI/UserInterface.py" line="2901"/>
         <source>&lt;b&gt;PyQt5 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;Documentación de PyQt5&lt;/b&gt;&lt;p&gt;Muestra la Documentación de PyQt5. Dependiendo de la configuración, esta documentación será mostrará en el visor de ayuda interno de Eric, o se ejecutará en un navegador web, o Qt Assistant.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2974"/>
+        <location filename="../UI/UserInterface.py" line="2977"/>
         <source>PySide2 Documentation</source>
         <translation>Documentación de PySide2</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2978"/>
+        <location filename="../UI/UserInterface.py" line="2981"/>
         <source>Open PySide2 Documentation</source>
         <translation>Abrir Documentación de PySide2</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2980"/>
+        <location filename="../UI/UserInterface.py" line="2983"/>
         <source>&lt;b&gt;PySide2 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide2 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;Documentación de PySide2&lt;/b&gt;&lt;p&gt;Muestra la Documentación de PySide2. Dependiendo de la configuración, esta documentación será mostrará en el visor de ayuda interno de Eric, o se ejecutará en un navegador web, o Qt Assistant.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>&lt;p&gt;The PySide{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation>&lt;P&gt;El punto de entrada de documentación de PySide{0} no ha sido configurado.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2817"/>
+        <location filename="../UI/UserInterface.py" line="2820"/>
         <source>Virtualenv Manager</source>
         <translation>Gestor de Virtualenv</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2811"/>
+        <location filename="../UI/UserInterface.py" line="2814"/>
         <source>&amp;Virtualenv Manager...</source>
         <translation>Gestor de &amp;Virtualenv...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2819"/>
+        <location filename="../UI/UserInterface.py" line="2822"/>
         <source>&lt;b&gt;Virtualenv Manager&lt;/b&gt;&lt;p&gt;This opens a dialog to manage the defined Python virtual environments.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Gestor de Virtualenv&lt;/b&gt;&lt;p&gt;Abre un diálogo para gestionar los entornos virtuales Python definidos.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2834"/>
+        <location filename="../UI/UserInterface.py" line="2837"/>
         <source>Virtualenv Configurator</source>
         <translation>Configurador de Virtualenv</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2828"/>
+        <location filename="../UI/UserInterface.py" line="2831"/>
         <source>Virtualenv &amp;Configurator...</source>
         <translation>Configurador de &amp;Virtualenv...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2836"/>
+        <location filename="../UI/UserInterface.py" line="2839"/>
         <source>&lt;b&gt;Virtualenv Configurator&lt;/b&gt;&lt;p&gt;This opens a dialog for entering all the parameters needed to create a Python virtual environment using virtualenv or pyvenv.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Configurador de Virtualenv&lt;/b&gt;&lt;p&gt;Abre un diálogo para introducir todos los parámetros necesarios para crear un entorno virtual de Python utilizando virtualenv o pyvenv.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3232"/>
+        <location filename="../UI/UserInterface.py" line="3235"/>
         <source>Left Side</source>
         <translation>Lado Izquierdo</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3244"/>
+        <location filename="../UI/UserInterface.py" line="3247"/>
         <source>Bottom Side</source>
         <translation>Lado Inferior</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3251"/>
+        <location filename="../UI/UserInterface.py" line="3254"/>
         <source>Right Side</source>
         <translation>Lado Derecho</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3271"/>
+        <location filename="../UI/UserInterface.py" line="3274"/>
         <source>Plug-ins</source>
         <translation>Plugins</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Restart</source>
         <translation>Reiniciar</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Ctrl+Shift+Q</source>
         <comment>File|Quit</comment>
         <translation>Ctrl+Shift+Q</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1659"/>
+        <location filename="../UI/UserInterface.py" line="1662"/>
         <source>Restart the IDE</source>
         <translation>Reiniciar la IDE</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1660"/>
+        <location filename="../UI/UserInterface.py" line="1663"/>
         <source>&lt;b&gt;Restart the IDE&lt;/b&gt;&lt;p&gt;This restarts the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Reiniciar la IDE&lt;/b&gt;&lt;p&gt;Reinicia la IDE. Todos los cambios sin guardar pueden ser guardados primero. Cualquier programa de Python que esté en depuración será detenido, y las preferencias se guardarán en disco.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>Start Web Browser</source>
         <translation>Iniciar Navegador Web</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Conda</source>
         <translation>Conda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>PyPI</source>
         <translation>PyPI</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3580"/>
+        <location filename="../UI/UserInterface.py" line="3583"/>
         <source>&lt;p&gt;This part of the status bar allows zooming the current editor or shell.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Esta zona de la barra de estado permite hacer zoom sobre el editor actual o la shell.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>MicroPython</source>
         <translation>MicroPython</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>Ctrl+Alt+Shift+I</source>
         <translation>Ctrl+Alt+Shift+I</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Ctrl+Alt+Shift+D</source>
         <translation>Ctrl+Alt+Shift+D</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2052"/>
-        <source>Switch the input focus to the Code Documentation Viewer window.</source>
-        <translation>Cambiar el foco de entrada a la ventana  de Visor de Documentación de Código.</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="2055"/>
+        <source>Switch the input focus to the Code Documentation Viewer window.</source>
+        <translation>Cambiar el foco de entrada a la ventana  de Visor de Documentación de Código.</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2058"/>
         <source>&lt;b&gt;Code Documentation Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Code Documentation Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Visor de Documentación de Código&lt;/b&gt;&lt;p&gt;Cambia el foco de entrada a la ventana del Visor de Documentación de Código.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>Ctrl+Alt+Shift+P</source>
         <translation>Ctrl+Alt+Shift+P</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2072"/>
+        <location filename="../UI/UserInterface.py" line="2075"/>
         <source>Switch the input focus to the PyPI window.</source>
         <translation>Cambiar el foco de entrada a la ventana PyPI.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2074"/>
+        <location filename="../UI/UserInterface.py" line="2077"/>
         <source>&lt;b&gt;PyPI&lt;/b&gt;&lt;p&gt;This switches the input focus to the PyPI window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;PyPI&lt;/b&gt;&lt;p&gt;Cambia el foco de entrada a la ventana de PyPI.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Ctrl+Alt+Shift+C</source>
         <translation>Ctrl+Alt+Shift+C</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2090"/>
+        <location filename="../UI/UserInterface.py" line="2093"/>
         <source>Switch the input focus to the Conda window.</source>
         <translation>Cambiar el foco de entrada a la ventana de Conda.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2092"/>
+        <location filename="../UI/UserInterface.py" line="2095"/>
         <source>&lt;b&gt;Conda&lt;/b&gt;&lt;p&gt;This switches the input focus to the Conda window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Conda&lt;/b&gt;&lt;p&gt;Cambia el foco de entrada a la ventana de Conda.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>Ctrl+Alt+Shift+M</source>
         <translation>Ctrl+Alt+Shift+M</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2108"/>
+        <location filename="../UI/UserInterface.py" line="2111"/>
         <source>Switch the input focus to the MicroPython window.</source>
         <translation>Cambiar el foco de entrada a la ventana de MicroPython.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2110"/>
+        <location filename="../UI/UserInterface.py" line="2113"/>
         <source>&lt;b&gt;MicroPython&lt;/b&gt;&lt;p&gt;This switches the input focus to the MicroPython window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;MicroPython&lt;/b&gt;&lt;p&gt;Cambia el foco de entrada a la ventana de MicroPython.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3229"/>
+        <location filename="../UI/UserInterface.py" line="3232"/>
         <source>Central Park</source>
         <translation>Central Park</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3746"/>
+        <location filename="../UI/UserInterface.py" line="3749"/>
         <source>&lt;h2&gt;Version Numbers&lt;/h2&gt;&lt;table&gt;</source>
         <translation>&lt;h2&gt;Números de Versiones&lt;/h2&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5075"/>
+        <location filename="../UI/UserInterface.py" line="5078"/>
         <source>&lt;p&gt;Could not find the Qt-Designer executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation>&lt;p&gt;No se ha podido encontrar el ejecutable de Qt-Designer.&lt;br&gt;Asegúrese de que está instalado y opcionalmente configurado en la página de configuración de Qt.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5145"/>
+        <location filename="../UI/UserInterface.py" line="5148"/>
         <source>&lt;p&gt;Could not find the Qt-Linguist executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation>&lt;p&gt;No se ha podido encontrar el ejecutable de Qt-Linguist.&lt;br&gt;Asegúrese de que está instalado y opcionalmente configurado en la página de configuración de Qt.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5189"/>
+        <location filename="../UI/UserInterface.py" line="5192"/>
         <source>&lt;p&gt;Could not find the Qt-Assistant executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation>&lt;p&gt;No se ha podido encontrar el ejecutable de Qt-Assistant.&lt;br&gt;Asegúrese de que está instalado y opcionalmente configurado en la página de configuración de Qt.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install Info</source>
         <translation>Mostrar Información de Instalación</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install &amp;Info...</source>
         <translation>Mostrar &amp;Información de Instalación...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2219"/>
+        <location filename="../UI/UserInterface.py" line="2222"/>
         <source>Show Installation Information</source>
         <translation>Mostrar Información de Instalación</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2221"/>
+        <location filename="../UI/UserInterface.py" line="2224"/>
         <source>&lt;b&gt;Show Install Info...&lt;/b&gt;&lt;p&gt;Opens a dialog showing some information about the installation process.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Mostrar información de instalación...&lt;/b&gt;&lt;p&gt;Abre un diálogo que muestra información sobre el proceso de instalación.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2877"/>
+        <location filename="../UI/UserInterface.py" line="2880"/>
         <source>Qt6 Documentation</source>
         <translation>Documentación de Qt6</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2881"/>
+        <location filename="../UI/UserInterface.py" line="2884"/>
         <source>Open Qt6 Documentation</source>
         <translation>Abrir Documentación de Qt6</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2882"/>
+        <location filename="../UI/UserInterface.py" line="2885"/>
         <source>&lt;b&gt;Qt6 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;Documentación de Qt6&lt;/b&gt;&lt;p&gt;Muestra la Documentación de Qt6. Dependiendo de la configuración, esta documentación será mostrará en el visor de ayuda interno de Eric, o se ejecutará en un navegador web, o Qt Assistant.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2909"/>
+        <location filename="../UI/UserInterface.py" line="2912"/>
         <source>PyQt6 Documentation</source>
         <translation>Documentación de PyQt6</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2913"/>
+        <location filename="../UI/UserInterface.py" line="2916"/>
         <source>Open PyQt6 Documentation</source>
         <translation>Abrir Documentación de PyQt6</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2915"/>
+        <location filename="../UI/UserInterface.py" line="2918"/>
         <source>&lt;b&gt;PyQt6 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;Documentación de PyQt6&lt;/b&gt;&lt;p&gt;Muestra la Documentación de PyQt6. Dependiendo de la configuración, esta documentación será mostrará en el visor de ayuda interno de Eric, o se ejecutará en un navegador web, o Qt Assistant.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2994"/>
+        <location filename="../UI/UserInterface.py" line="2997"/>
         <source>PySide6 Documentation</source>
         <translation>Documentación de PySide6</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2998"/>
+        <location filename="../UI/UserInterface.py" line="3001"/>
         <source>Open PySide6 Documentation</source>
         <translation>Abrir Documentación de PySide6</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3000"/>
+        <location filename="../UI/UserInterface.py" line="3003"/>
         <source>&lt;b&gt;PySide6 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;Documentación de PySide6&lt;/b&gt;&lt;p&gt;Muestra la Documentación de PySide6. Dependiendo de la configuración, esta documentación será mostrará en el visor de ayuda interno de Eric, o se ejecutará en un navegador web, o Qt Assistant.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5754"/>
+        <location filename="../UI/UserInterface.py" line="5770"/>
         <source>&lt;p&gt;The PyQt{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation>&lt;P&gt;El punto de entrada de documentación de PyQt{0} no ha sido configurado.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1701"/>
+        <location filename="../UI/UserInterface.py" line="1704"/>
         <source>Open a new eric instance</source>
         <translation>Abrir una nueva instancia de eric</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1703"/>
+        <location filename="../UI/UserInterface.py" line="1706"/>
         <source>&lt;b&gt;New Window&lt;/b&gt;&lt;p&gt;This opens a new instance of the eric IDE.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Nueva Ventana&lt;/b&gt;&lt;p&gt;Abre una nueva instancia del IDE eric.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2146"/>
+        <location filename="../UI/UserInterface.py" line="2149"/>
         <source>&lt;b&gt;Helpviewer&lt;/b&gt;&lt;p&gt;Display the eric web browser. This window will show HTML help files and help from Qt help collections. It has the capability to navigate to links, set bookmarks, print the displayed help and some more features. You may use it to browse the internet as well&lt;/p&gt;&lt;p&gt;If called with a word selected, this word is search in the Qt help collection.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Visor de ayuda&lt;/b&gt;&lt;p&gt;Mostrar el navegador web de eric. Esta ventana mostrará archivos de ayuda HTML y ayuda de las colecciones de ayuda de Qt. Tiene la capacidad de navegar a hiperenlaces, establecer marcadores, imprimir la ayuda visualizada y algunas otras características.&lt;/p&gt;&lt;p&gt;Si se invoca con una palabra seleccionada, esta palabra se busca en la colección de ayuda de Qt.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2181"/>
+        <location filename="../UI/UserInterface.py" line="2184"/>
         <source>&lt;b&gt;Check for Updates...&lt;/b&gt;&lt;p&gt;Checks the internet for updates of eric.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Buscar actualizaciones...&lt;/b&gt;&lt;p&gt;Busca actualizaciones de eric en internet.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2194"/>
+        <location filename="../UI/UserInterface.py" line="2197"/>
         <source>&lt;b&gt;Show downloadable versions...&lt;/b&gt;&lt;p&gt;Shows the eric versions available for download from the internet.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Mostrar versiones descargables...&lt;/b&gt;&lt;p&gt;Muestra las versiones de eric disponibles para descarga de internet.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2468"/>
+        <location filename="../UI/UserInterface.py" line="2471"/>
         <source>Start the eric Hex Editor</source>
         <translation>Iniciar el Editor Hexadecimal de eric</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2470"/>
+        <location filename="../UI/UserInterface.py" line="2473"/>
         <source>&lt;b&gt;Hex Editor&lt;/b&gt;&lt;p&gt;Starts the eric Hex Editor for viewing or editing binary files.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Editor Hexadecimal&lt;/b&gt;&lt;p&gt;Inicia el Editor Hexadecimal de eric para visionado o edición de archivos binarios.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric Web Browser</source>
         <translation>Navegador Web de eric</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric &amp;Web Browser...</source>
         <translation>Navegador &amp;Web de eric...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2483"/>
+        <location filename="../UI/UserInterface.py" line="2486"/>
         <source>Start the eric Web Browser</source>
         <translation>Iniciar el Navegador Web de eric</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2485"/>
+        <location filename="../UI/UserInterface.py" line="2488"/>
         <source>&lt;b&gt;eric Web Browser&lt;/b&gt;&lt;p&gt;Browse the Internet with the eric Web Browser.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Navegador Web de eric&lt;/b&gt;&lt;p&gt;Navegar por Internet con el Navegador Web de eric.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2497"/>
+        <location filename="../UI/UserInterface.py" line="2500"/>
         <source>Start the eric Icon Editor</source>
         <translation>Iniciar el Editor de Iconos de eric</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2499"/>
+        <location filename="../UI/UserInterface.py" line="2502"/>
         <source>&lt;b&gt;Icon Editor&lt;/b&gt;&lt;p&gt;Starts the eric Icon Editor for editing simple icons.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Editor de Iconos&lt;/b&gt;&lt;p&gt;Inicia el Editor de Iconos de eric para editar iconos sencillos.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2585"/>
+        <location filename="../UI/UserInterface.py" line="2588"/>
         <source>&lt;b&gt;Show external tools&lt;/b&gt;&lt;p&gt;Opens a dialog to show the path and versions of all extenal tools used by eric.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Mostrar herramientas externas&lt;/b&gt;&lt;p&gt;Abre un diálogo para mostrar la ruta y versiones de todas las herramientas externas que utiliza eric.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2959"/>
+        <location filename="../UI/UserInterface.py" line="2962"/>
         <source>&lt;b&gt;Eric API Documentation&lt;/b&gt;&lt;p&gt;Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric installation directory.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Documentación de API de Eric&lt;/b&gt;&lt;p&gt;Muestra la documentación de API de Eric. La ubicación de la documentación es el subdirectorio Documentation/Source del directorio de instalación de eric.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5972"/>
+        <location filename="../UI/UserInterface.py" line="5988"/>
         <source>The eric web browser could not be started.</source>
         <translation>El navegador web de eric no se ha podido iniciar.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>&lt;p&gt;The eric web browser is not started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El navegador web de eric no se ha iniciado.&lt;/p&gt;&lt;p&gt;Razón: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>The update to &lt;b&gt;{0}&lt;/b&gt; of eric is available at &lt;b&gt;{1}&lt;/b&gt;. Would you like to get it?</source>
         <translation>La actualización para &lt;b&gt;{0}&lt;/b&gt; de eric está disponible en &lt;b&gt;{1}&lt;/b&gt;. ¿Le gustaría obtenerla?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7188"/>
+        <location filename="../UI/UserInterface.py" line="7215"/>
         <source>You are using a snapshot release of eric. A more up-to-date stable release might be available.</source>
         <translation>Ésta es una snapshot release the eric. Una release estable más reciente podría estar disponible.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>eric is up to date</source>
         <translation>eric está actualizado</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>You are using the latest version of eric</source>
         <translation>Está utilizando la última versión de eric</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>eric has not been configured yet. The configuration dialog will be started.</source>
         <translation>eric todavía no está configurado. El diálogo de configuración va a ser iniciado.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6290"/>
+        <location filename="../UI/UserInterface.py" line="6306"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard Shortcuts File (*.e4k)</source>
         <translation>Archivo de Atajos de Teclado (*.ekj);;Archivo XML de Atajos de Teclado (*.e4k)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>&lt;p&gt;The keyboard shortcuts file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo de atajos de teclado &lt;b&gt;{0}&lt;/b&gt; ya existe. ¿Sobreescribirlo?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard shortcut file (*.e4k)</source>
         <translation>Archivo de Atajos de Teclado (*.ekj);;Archivo XML de Atajos de Teclado (*.e4k)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>Read Tasks</source>
         <translation>Leer tareas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6621"/>
+        <location filename="../UI/UserInterface.py" line="6637"/>
         <source>Save Session</source>
         <translation>Guardar Sesión</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6578"/>
+        <location filename="../UI/UserInterface.py" line="6594"/>
         <source>Read Session</source>
         <translation>Cargar sesión</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>eric Session Files (*.esj);;eric XML Session Files (*.e5s)</source>
         <translation>Archivos de Sesión de eric (*.esj);;Archivos XML de sesión de eric (*.e5s)</translation>
     </message>
@@ -77721,7 +77853,7 @@
 <context>
     <name>Utilities</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="1420"/>
+        <location filename="../Utilities/__init__.py" line="1421"/>
         <source>&lt;p&gt;You may use %-codes as placeholders in the string. Supported codes are:&lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;column of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;directory of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;filename of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;home directory of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;line of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;path of the current project&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;selected text of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;username of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;the percent sign&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</source>
         <translation>&lt;p&gt;Puede utilizar %-códigos como marcadores en la cadena. Los valores sportados son:&lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;columna del cursos en el editor actual&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;directorio del editor actual&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;nombre de archivo del editor actual&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;directorio home del usuario actual&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;línea del cursor en el editor actual&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;ruta del proyecto actual&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;texto seleccionado en el editor actual&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;nombre de usuario del usuario actual&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;signo de porcentaje&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</translation>
     </message>
@@ -78310,12 +78442,12 @@
 <context>
     <name>VcsMercurialPlugin</name>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="58"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="54"/>
         <source>Version Control - Mercurial</source>
         <translation>Control de Versiones - Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="132"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="124"/>
         <source>Mercurial</source>
         <translation>Mercurial</translation>
     </message>
@@ -80698,17 +80830,17 @@
         <translation>Archivo Modificado</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5217"/>
+        <location filename="../ViewManager/ViewManager.py" line="5230"/>
         <source>&amp;Clear</source>
         <translation>&amp;Limpiar</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5211"/>
+        <location filename="../ViewManager/ViewManager.py" line="5224"/>
         <source>&amp;Add</source>
         <translation>&amp;Agregar</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5214"/>
+        <location filename="../ViewManager/ViewManager.py" line="5227"/>
         <source>&amp;Edit...</source>
         <translation>&amp;Editar...</translation>
     </message>
@@ -80871,12 +81003,12 @@
         <translation>&lt;p&gt;El archivo &lt;b&gt;{0}&lt;/b&gt; tiene cambios sin guardar.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4777"/>
+        <location filename="../ViewManager/ViewManager.py" line="4790"/>
         <source>Line: {0:5}</source>
         <translation>Línea: {0:5}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4783"/>
+        <location filename="../ViewManager/ViewManager.py" line="4796"/>
         <source>Pos: {0:5}</source>
         <translation>Pos: {0:5}</translation>
     </message>
@@ -81484,27 +81616,27 @@
         <translation>Lista de Excepciones del Usuario</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>Edit Spelling Dictionary</source>
         <translation>Editar Diccionario Ortográfico</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6233"/>
+        <location filename="../ViewManager/ViewManager.py" line="6246"/>
         <source>Editing {0}</source>
         <translation>Editando {0}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6215"/>
+        <location filename="../ViewManager/ViewManager.py" line="6228"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo de diccionario ortográfico &lt;b&gt;{0}&lt;/b&gt; no se puede leer.&lt;/p&gt;&lt;p&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6244"/>
+        <location filename="../ViewManager/ViewManager.py" line="6257"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;El archivo de diccionario ortográfico &lt;b&gt;{0}&lt;/b&gt; no se puede escribir.&lt;/p&gt;&lt;p&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>The spelling dictionary was saved successfully.</source>
         <translation>El diccionario ortográfico se ha guardado con éxito.</translation>
     </message>
@@ -81624,12 +81756,12 @@
         <translation>&lt;b&gt;Ordenar&lt;/b&gt;&lt;p&gt;Ordenar las líneas contenidas en una selección rectangular basada en la selección, ignorando espacios en blanco delante y detrás.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4804"/>
+        <location filename="../ViewManager/ViewManager.py" line="4817"/>
         <source>Language: {0}</source>
         <translation>Lenguaje: {0}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4811"/>
+        <location filename="../ViewManager/ViewManager.py" line="4824"/>
         <source>EOL Mode: {0}</source>
         <translation>Modo de EOL: {0}</translation>
     </message>
--- a/eric6/i18n/eric6_fr.ts	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/i18n/eric6_fr.ts	Thu Jun 03 11:39:23 2021 +0200
@@ -1290,45 +1290,60 @@
 <context>
     <name>ApplicationDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="43"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="47"/>
         <source>Application Diagram {0}</source>
         <translation>Diagramme de l&apos;application {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>Parsing modules...</source>
         <translation>Analyse des modules...</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="197"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="252"/>
         <source>&lt;&lt;Application&gt;&gt;</source>
         <translation>&lt;&lt;Application&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="199"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="254"/>
         <source>&lt;&lt;Others&gt;&gt;</source>
         <translation>&lt;&lt;Autres&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>Load Diagram</source>
         <translation>Charger le diagramme</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>&lt;p&gt;The diagram belongs to the project &lt;b&gt;{0}&lt;/b&gt;. Shall this project be opened?&lt;/p&gt;</source>
         <translation>&lt;p&gt; Le diagramme appartient au projet &lt;b&gt;{0}&lt;/b&gt;. Est-ce que ce projet devrqit être ouvert ? &lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>%v/%m Modules</source>
         <translation>Modules %v/%m</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="69"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
         <source>Application Diagram</source>
         <translation>Application Diagramme</translation>
     </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="126"/>
+        <source>Select the application directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
+        <source>No application package could be detected. Aborting...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="466"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>ApplicationPage</name>
@@ -1649,47 +1664,47 @@
 <context>
     <name>BackgroundService</name>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="139"/>
+        <location filename="../Utilities/BackgroundService.py" line="142"/>
         <source>{0} not configured.</source>
         <translation>{0} n&apos;est pas configuré.</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>Restart background client?</source>
         <translation>Redémarrer le client en arrière plan ?</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="456"/>
+        <location filename="../Utilities/BackgroundService.py" line="459"/>
         <source>Eric&apos;s background client disconnected because of an unknown reason.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>Background client disconnected.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>&lt;p&gt;The background client for &lt;b&gt;{0}&lt;/b&gt; has stopped due to an exception. It&apos;s used by various plug-ins like the different checkers.&lt;/p&gt;&lt;p&gt;Select&lt;ul&gt;&lt;li&gt;&lt;b&gt;&apos;Yes&apos;&lt;/b&gt; to restart the client, but abort the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Retry&apos;&lt;/b&gt; to restart the client and the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;No&apos;&lt;/b&gt; to leave the client off.&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p&gt;Note: The client can be restarted by opening and accepting the preferences dialog or reloading/changing the project.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>The background client for &lt;b&gt;{0}&lt;/b&gt; disconnected because of an unknown reason.&lt;br&gt;Should it be restarted?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="228"/>
+        <location filename="../Utilities/BackgroundService.py" line="231"/>
         <source>An error in Eric&apos;s background client stopped the service.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>Initialization of Background Service</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>&lt;p&gt;Initialization of Background Service &lt;b&gt;{0}&lt;/b&gt; failed.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2403,42 +2418,42 @@
 <context>
     <name>Browser</name>
     <message>
-        <location filename="../UI/Browser.py" line="284"/>
+        <location filename="../UI/Browser.py" line="286"/>
         <source>Open</source>
         <translation>Ouvrir</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="233"/>
+        <location filename="../UI/Browser.py" line="235"/>
         <source>Run unittest...</source>
         <translation>Lancer un run test...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="94"/>
+        <location filename="../UI/Browser.py" line="96"/>
         <source>File-Browser</source>
         <translation>Navigateur de fichiers</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="342"/>
+        <location filename="../UI/Browser.py" line="344"/>
         <source>New toplevel directory...</source>
         <translation>Nouveau répertoire racine...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="301"/>
+        <location filename="../UI/Browser.py" line="303"/>
         <source>Remove from toplevel</source>
         <translation>Supprimer du niveau racine</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="298"/>
+        <location filename="../UI/Browser.py" line="300"/>
         <source>Add as toplevel directory</source>
         <translation>Ajouter en tant que répertoire racine</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="643"/>
+        <location filename="../UI/Browser.py" line="646"/>
         <source>New toplevel directory</source>
         <translation>Nouveau répertoire racine</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="309"/>
+        <location filename="../UI/Browser.py" line="311"/>
         <source>Find in this directory</source>
         <translation>Trouver dans ce répertoire</translation>
     </message>
@@ -2453,182 +2468,182 @@
         <translation type="obsolete">Rechercher&amp;&amp;Rempacer dans ce répertoire</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="263"/>
+        <location filename="../UI/Browser.py" line="265"/>
         <source>Open in Icon Editor</source>
         <translation>Ouvrir dans Icon Editor</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="316"/>
+        <location filename="../UI/Browser.py" line="318"/>
         <source>Copy Path to Clipboard</source>
         <translation>Copier chemin dans le Presse-Papiers</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="305"/>
+        <location filename="../UI/Browser.py" line="307"/>
         <source>Refresh directory</source>
         <translation>Rafraichir répertoire</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="328"/>
+        <location filename="../UI/Browser.py" line="330"/>
         <source>Goto</source>
         <translation>Aller à</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="435"/>
+        <location filename="../UI/Browser.py" line="437"/>
         <source>Line {0}</source>
         <translation>Ligne {0}</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="113"/>
+        <location filename="../UI/Browser.py" line="115"/>
         <source>&lt;b&gt;The Browser Window&lt;/b&gt;&lt;p&gt;This allows you to easily navigate the hierarchy of directories and files on your system, identify the Python programs and open them up in a Source Viewer window. The window displays several separate hierarchies.&lt;/p&gt;&lt;p&gt;The first hierarchy is only shown if you have opened a program for debugging and its root is the directory containing that program. Usually all of the separate files that make up a Python application are held in the same directory, so this hierarchy gives you easy access to most of what you will need.&lt;/p&gt;&lt;p&gt;The next hierarchy is used to easily navigate the directories that are specified in the Python &lt;tt&gt;sys.path&lt;/tt&gt; variable.&lt;/p&gt;&lt;p&gt;The remaining hierarchies allow you navigate your system as a whole. On a UNIX system there will be a hierarchy with &lt;tt&gt;/&lt;/tt&gt; at its root and another with the user home directory. On a Windows system there will be a hierarchy for each drive on the system.&lt;/p&gt;&lt;p&gt;Python programs (i.e. those with a &lt;tt&gt;.py&lt;/tt&gt; file name suffix) are identified in the hierarchies with a Python icon. The right mouse button will popup a menu which lets you open the file in a Source Viewer window, open the file for debugging or use it for a unittest run.&lt;/p&gt;&lt;p&gt;The context menu of a class, function or method allows you to open the file defining this class, function or method and will ensure, that the correct source line is visible.&lt;/p&gt;&lt;p&gt;Qt-Designer files (i.e. those with a &lt;tt&gt;.ui&lt;/tt&gt; file name suffix) are shown with a Designer icon. The context menu of these files allows you to start Qt-Designer with that file.&lt;/p&gt;&lt;p&gt;Qt-Linguist files (i.e. those with a &lt;tt&gt;.ts&lt;/tt&gt; file name suffix) are shown with a Linguist icon. The context menu of these files allows you to start Qt-Linguist with that file.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>Show Mime-Type</source>
         <translation>Montrer le type Mime</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="528"/>
+        <location filename="../UI/Browser.py" line="531"/>
         <source>The mime type of the file could not be determined.</source>
         <translation>Le type mime du fichier n&apos;a pas pu être déterminé.</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="546"/>
+        <location filename="../UI/Browser.py" line="549"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation>Le fichier a le type mime &lt;b&gt;{0}&lt;/b&gt;.</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation>Le fichier a le type mime &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Faut-il l&apos;ajouter à la liste des types mime texte ?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="260"/>
+        <location filename="../UI/Browser.py" line="262"/>
         <source>Open in Hex Editor</source>
         <translation>Ouvrir dans Hex Editor</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="312"/>
+        <location filename="../UI/Browser.py" line="314"/>
         <source>Find &amp;&amp; Replace in this directory</source>
         <translation>Chercher &amp;&amp; Remplacer dans ce répertoire</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="241"/>
+        <location filename="../UI/Browser.py" line="243"/>
         <source>Refresh Source File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="214"/>
+        <location filename="../UI/Browser.py" line="216"/>
         <source>Show Hidden Files</source>
         <translation type="unfinished">Montrer les fichiers cachés</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="221"/>
-        <source>New</source>
-        <translation type="unfinished">Nouveau</translation>
-    </message>
-    <message>
         <location filename="../UI/Browser.py" line="223"/>
+        <source>New</source>
+        <translation type="unfinished">Nouveau</translation>
+    </message>
+    <message>
+        <location filename="../UI/Browser.py" line="225"/>
         <source>Directory</source>
         <translation type="unfinished">Répertoire</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="226"/>
+        <location filename="../UI/Browser.py" line="228"/>
         <source>File</source>
         <translation type="unfinished">Fichier</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="323"/>
+        <location filename="../UI/Browser.py" line="325"/>
         <source>Delete</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>New Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="861"/>
+        <location filename="../UI/Browser.py" line="864"/>
         <source>Name for new directory:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="902"/>
+        <location filename="../UI/Browser.py" line="905"/>
         <source>A file or directory named &lt;b&gt;{0}&lt;/b&gt; exists already. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>&lt;p&gt;The directory &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished">&lt;p&gt;Le répertoire &lt;b&gt;{0}&lt;/b&gt; ne peut être créé.&lt;/p&gt;&lt;p&gt;Raison : {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>New File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="894"/>
+        <location filename="../UI/Browser.py" line="897"/>
         <source>Name for new file:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="942"/>
+        <location filename="../UI/Browser.py" line="945"/>
         <source>Do you really want to move this file to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="946"/>
+        <location filename="../UI/Browser.py" line="949"/>
         <source>Do you really want to delete this file?</source>
         <translation type="unfinished">Voulez-vous vraiment supprimer ce fichier ?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>Delete File</source>
         <translation type="unfinished">Supprimer le fichier</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>&lt;p&gt;The selected file &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished">&lt;p&gt;Le fichier sélectionné &lt;b&gt;{0}&lt;/b&gt; ne peut être supprimé.&lt;/p&gt;&lt;p&gt;Raison : {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="979"/>
+        <location filename="../UI/Browser.py" line="982"/>
         <source>Do you really want to move this directory to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="983"/>
+        <location filename="../UI/Browser.py" line="986"/>
         <source>Do you really want to delete this directory?</source>
         <translation type="unfinished">Voulez-vous vraiment supprimer ce répertoire ?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>Delete Directory</source>
         <translation type="unfinished">Supprimer le répertoire</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>&lt;p&gt;The selected directory &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished">&lt;p&gt;Le répertoire sélectionné &lt;b&gt;{0}&lt;/b&gt; ne peut être supprimé.&lt;/p&gt;&lt;p&gt;Raison : {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1023"/>
+        <location filename="../UI/Browser.py" line="1026"/>
         <source>Do you really want to move these files to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1027"/>
+        <location filename="../UI/Browser.py" line="1030"/>
         <source>Do you really want to delete these files?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1032"/>
+        <location filename="../UI/Browser.py" line="1035"/>
         <source>Delete Files</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3245,6 +3260,32 @@
     </message>
 </context>
 <context>
+    <name>ClassItem</name>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="176"/>
+        <source>Class Attributes:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="211"/>
+        <source>none</source>
+        <translation type="unfinished">aucun</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="191"/>
+        <source>Instance Attributes:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="210"/>
+        <source>Methods:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>ClearPrivateDataDialog</name>
     <message>
         <location filename="../UI/ClearPrivateDataDialog.ui" line="14"/>
@@ -4772,7 +4813,7 @@
 <context>
     <name>CodingError</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="131"/>
+        <location filename="../Utilities/__init__.py" line="132"/>
         <source>The coding &apos;{0}&apos; is wrong for the given text.</source>
         <translation>L&apos;encodage &apos;{0}&apos; n&apos;est pas adapté pour le texte.</translation>
     </message>
@@ -7150,7 +7191,7 @@
 <context>
     <name>DebugUI</name>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1980"/>
+        <location filename="../Debugger/DebugUI.py" line="1981"/>
         <source>Run Script</source>
         <translation>Lancer le script</translation>
     </message>
@@ -7170,7 +7211,7 @@
         <translation>&lt;b&gt;Lancer le script&lt;/b&gt;&lt;p&gt;Entrer les arguments de la ligne de commande et lancer le script sans le débogueur. Si le script a des modifications, elles doivent d&apos;abord être enregistrées.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>Run Project</source>
         <translation>Lancer le projet</translation>
     </message>
@@ -7270,7 +7311,7 @@
         <translation>&lt;b&gt;Profiler le projet&lt;/b&gt;&lt;p&gt;Entrer les arguments de la ligne de commande et profiler le projet. Si des fichiers du projet ont été modifiés, ils doivent d&apos;abord être enregistrés.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2121"/>
+        <location filename="../Debugger/DebugUI.py" line="2122"/>
         <source>Debug Script</source>
         <translation>Déboguer le script</translation>
     </message>
@@ -7290,7 +7331,7 @@
         <translation>&lt;b&gt;Deboguer le script&lt;/b&gt;&lt;p&gt;Entrer les arguments de la ligne de commande et donner la ligne qui correspond à la première instruction Python. Si le fichier a été modifié, il doit d&apos;abord être sauvé.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>Debug Project</source>
         <translation>Déboguer le projet</translation>
     </message>
@@ -7510,32 +7551,32 @@
         <translation>Le programme débogué s&apos;est terminé de façon prématurée.</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1709"/>
+        <location filename="../Debugger/DebugUI.py" line="1710"/>
         <source>Coverage of Project</source>
         <translation>Coverage du projet</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1690"/>
+        <location filename="../Debugger/DebugUI.py" line="1691"/>
         <source>Coverage of Script</source>
         <translation>Coverage du Script</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>There is no main script defined for the current project. Aborting</source>
         <translation>Il n&apos;y a pas de script principal défini dans le projet en cours. Abandon</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1854"/>
+        <location filename="../Debugger/DebugUI.py" line="1855"/>
         <source>Profile of Project</source>
         <translation>Profil du projet</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1835"/>
+        <location filename="../Debugger/DebugUI.py" line="1836"/>
         <source>Profile of Script</source>
         <translation>Profil du Script</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>There is no main script defined for the current project. No debugging possible.</source>
         <translation>Il n&apos;y a pas de script principal défini dans le projet en cours. Débogage impossible.</translation>
     </message>
@@ -7580,7 +7621,7 @@
         <translation>&lt;b&gt;Filtre de Variables&lt;/b&gt;&lt;p&gt;Configure le filtre de variables. Seuls les types de variables non sélectionnés sont affichés dans la fenêtre des variables globales (resp. locales) pendant la session de débogage.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>Breakpoint Condition Error</source>
         <translation>Erreur de condition pour le point d&apos;arrêt</translation>
     </message>
@@ -7628,12 +7669,12 @@
         <translation>Arrête le run en cours.</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>Watch Expression Error</source>
         <translation>Erreur dans l&apos;expression</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1540"/>
+        <location filename="../Debugger/DebugUI.py" line="1541"/>
         <source>Watch expression already exists</source>
         <translation>L&apos;expression existe déjà</translation>
     </message>
@@ -7685,22 +7726,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>&lt;p&gt;The condition of the breakpoint &lt;b&gt;{0}, {1}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>&lt;p&gt;The watch expression &lt;b&gt;{0}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1530"/>
+        <location filename="../Debugger/DebugUI.py" line="1531"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; already exists.&lt;/p&gt;</source>
         <translation>&lt;p&gt;L&apos;expression de contrôle &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; existe déjà.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1535"/>
+        <location filename="../Debugger/DebugUI.py" line="1536"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; for the variable &lt;b&gt;{1}&lt;/b&gt; already exists.&lt;/p&gt;</source>
         <translation>&lt;p&gt;L&apos;expression de contrôle &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; pour la variable &lt;b&gt;{1}&lt;/b&gt; existe déjà.&lt;/p&gt;</translation>
     </message>
@@ -7792,7 +7833,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1418"/>
+        <location filename="../Debugger/DebugUI.py" line="1419"/>
         <source>No locals available.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -10209,9 +10250,22 @@
 </translation>
     </message>
     <message>
-        <location filename="../E5Graphics/E5GraphicsView.py" line="417"/>
+        <location filename="../E5Graphics/E5GraphicsView.py" line="421"/>
         <source>{0}, Page {1}</source>
-        <translation>{0}, Page {1}</translation>
+        <translation type="obsolete">{0}, Page {1}</translation>
+    </message>
+</context>
+<context>
+    <name>E5JsonServer</name>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>JSON Protocol Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>&lt;p&gt;The response received from the client could not be decoded. Please report this issue with the received data to the eric bugs email address.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;&lt;p&gt;Data:&lt;br/&gt;{1}&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
@@ -12147,12 +12201,12 @@
         <translation>Inclure les attributs de classes ?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Application Diagram</source>
         <translation>Diagramme de l&apos;application</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Include module names?</source>
         <translation>Inclure les noms de modules ?</translation>
     </message>
@@ -12207,12 +12261,12 @@
         <translation>Aucun format d&apos;exportation indiqué. Abandon...</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Imports Diagram</source>
         <translation>Diagramme des modules</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Include imports from external modules?</source>
         <translation>Inclure l&apos;importation de modules externes?</translation>
     </message>
@@ -12282,7 +12336,7 @@
         <translation>Sélectionne l&apos;analyseur Pygments à appliquer.</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7944"/>
+        <location filename="../QScintilla/Editor.py" line="7941"/>
         <source>Check spelling...</source>
         <translation>Correction orthographique...</translation>
     </message>
@@ -12292,12 +12346,12 @@
         <translation>Correction orthographique de la sélection...</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7947"/>
+        <location filename="../QScintilla/Editor.py" line="7944"/>
         <source>Add to dictionary</source>
         <translation>Ajouter au dictionnaire</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7949"/>
+        <location filename="../QScintilla/Editor.py" line="7946"/>
         <source>Ignore All</source>
         <translation>Tout ignorer</translation>
     </message>
@@ -12432,12 +12486,12 @@
         <translation>Modification précédente</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>Sort Lines</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>The selection contains illegal data for a numerical sort.</source>
         <translation>La sélection contient des données illégales pour un tri numérique.</translation>
     </message>
@@ -12512,12 +12566,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>Register Mouse Click Handler</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>A mouse click handler for &quot;{0}&quot; was already registered by &quot;{1}&quot;. Aborting request by &quot;{2}&quot;...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12547,12 +12601,12 @@
         <translation>Exécuter la sélection en console</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>EditorConfig Properties</source>
         <translation>Propriétés d&apos;EditorConfig</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>&lt;p&gt;The EditorConfig properties for file &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Les propriétés d&apos;EditorConfig du fichier &lt;b&gt;{0}&lt;/b&gt; n&apos;ont pas pu être chargées.&lt;/p&gt;</translation>
     </message>
@@ -12597,7 +12651,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8766"/>
+        <location filename="../QScintilla/Editor.py" line="8763"/>
         <source>Generate Docstring</source>
         <translation type="unfinished"></translation>
     </message>
@@ -19350,7 +19404,7 @@
 <context>
     <name>FileDialogWizardDialog</name>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="72"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="73"/>
         <source>QFileDialog Wizard</source>
         <translation>Assistant QFileDialog</translation>
     </message>
@@ -19480,7 +19534,7 @@
         <translation>Afficher uniquement les répertoires</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="89"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="90"/>
         <source>Test</source>
         <translation>Tester</translation>
     </message>
@@ -19630,7 +19684,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="67"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="68"/>
         <source>E5FileDialog Wizard</source>
         <translation>Assistant E5FileDialog</translation>
     </message>
@@ -27186,27 +27240,27 @@
 <context>
     <name>Globals</name>
     <message>
-        <location filename="../Globals/__init__.py" line="451"/>
+        <location filename="../Globals/__init__.py" line="455"/>
         <source>{0:4.2f} Bytes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Globals/__init__.py" line="455"/>
-        <source>{0:4.2f} KiB</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../Globals/__init__.py" line="459"/>
-        <source>{0:4.2f} MiB</source>
+        <source>{0:4.2f} KiB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="463"/>
-        <source>{0:4.2f} GiB</source>
+        <source>{0:4.2f} MiB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="467"/>
+        <source>{0:4.2f} GiB</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Globals/__init__.py" line="471"/>
         <source>{0:4.2f} TiB</source>
         <translation type="unfinished"></translation>
     </message>
@@ -30639,112 +30693,112 @@
         <translation>Création en cours d&apos;une branche sur le dépot Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1939"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1940"/>
         <source>Verifying the integrity of the Mercurial repository</source>
         <translation>Vérification en cours de l&apos;intégrité du dépot Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1953"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1954"/>
         <source>Showing the combined configuration settings</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1966"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1967"/>
         <source>Showing aliases for remote repositories</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1979"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1980"/>
         <source>Recovering from interrupted transaction</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2166"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2167"/>
         <source>Shall the working directory be updated?</source>
         <translation>Faut-il mettre à jour le répertoire de travail ?</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1849"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1850"/>
         <source>Showing current branch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2119"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2120"/>
         <source>Create changegroup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2178"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2179"/>
         <source>Apply changegroups</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2197"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2198"/>
         <source>Bisect subcommand ({0}) invalid.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2217"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2218"/>
         <source>Mercurial Bisect ({0})</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2129"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2130"/>
         <source>Preview changegroup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1992"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1993"/>
         <source>Identifying project directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>Create .hgignore file</source>
         <translation>Créer un fichier .hgignore</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Le fichier &lt;b&gt;{0}&lt;/b&gt;existe déjà. L&apos;écraser ?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2240"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2241"/>
         <source>Removing files from the Mercurial repository only</source>
         <translation>Supprimer les fichiers de dépot Mercurial uniquement</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2076"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2077"/>
         <source>Mercurial Changegroup Files (*.hg)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2157"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2158"/>
         <source>Mercurial Changegroup Files (*.hg);;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2283"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2284"/>
         <source>Backing out changeset</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2263"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2264"/>
         <source>No revision given. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2093"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2094"/>
         <source>&lt;p&gt;The Mercurial changegroup file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2299"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2300"/>
         <source>Rollback last transaction</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2292"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2293"/>
         <source>Are you sure you want to rollback the last transaction?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -30754,72 +30808,72 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>Mercurial Command Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2799"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2800"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be restarted.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2351"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2352"/>
         <source>Import Patch</source>
         <translation>Importer un patch</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2392"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2393"/>
         <source>Export Patches</source>
         <translation>Exporter des patches</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2431"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2432"/>
         <source>Change Phase</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2480"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2481"/>
         <source>Copy Changesets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2520"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2521"/>
         <source>Copy Changesets (Continue)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2663"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2664"/>
         <source>Add Sub-repository</source>
         <translation>Ajouter un sous-dépot</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2695"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2696"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be read.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2645"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2646"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub already contains an entry &lt;b&gt;{0}&lt;/b&gt;. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be written to.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>Remove Sub-repositories</source>
         <translation>Supprimer un sous-répertoire</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2684"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2685"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub does not exist. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -30849,7 +30903,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2568"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2569"/>
         <source>Create Unversioned Archive</source>
         <translation type="unfinished"></translation>
     </message>
@@ -30874,7 +30928,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1838"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1839"/>
         <source>Created new branch &lt;{0}&gt;.</source>
         <translation>Nouvelle branche créée &lt;{0}&gt;.</translation>
     </message>
@@ -30884,62 +30938,62 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3049"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3050"/>
         <source>Mercurial Bookmark</source>
         <translation>Signet Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Delete Bookmark</source>
         <translation>Supprimer le signet</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Select the bookmark to be deleted:</source>
         <translation>Selectionner le signet à supprimer :</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3074"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3075"/>
         <source>Delete Mercurial Bookmark</source>
         <translation>Supprimer le signet Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3098"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3099"/>
         <source>Rename Mercurial Bookmark</source>
         <translation>Renommer le signet Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3132"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3133"/>
         <source>Move Mercurial Bookmark</source>
         <translation>Déplacer le signet Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Pull Bookmark</source>
         <translation>Récuperer le signet</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Select the bookmark to be pulled:</source>
         <translation>Sélectionner le signet à récuperer:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3213"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3214"/>
         <source>Pulling bookmark from a remote Mercurial repository</source>
         <translation>Récupérant le signet d&apos;un dépôt Mercurial distant</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Push Bookmark</source>
         <translation>Envoyer signet</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Select the bookmark to be push:</source>
         <translation>Sélectionner le signet à envoyer:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3253"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3254"/>
         <source>Pushing bookmark to a remote Mercurial repository</source>
         <translation>À envoyer le signet à un dépôt Mercurial distant</translation>
     </message>
@@ -30974,22 +31028,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>Delete All Backups</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>&lt;p&gt;Do you really want to delete all backup bundles stored the backup area &lt;b&gt;{0}&lt;/b&gt;?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2532"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2533"/>
         <source>Copy Changesets (Stop)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2545"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2546"/>
         <source>Copy Changesets (Abort)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -31903,42 +31957,42 @@
 <context>
     <name>HgClient</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="91"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="92"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Impossible de lancer le processus {0}. Assurez-vous qu&apos;il est bien dans le chemin de recherche.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="140"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="141"/>
         <source>Did not receive the &apos;hello&apos; message.</source>
         <translation>N&apos;a pas reçu le message &apos;hello&apos;.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="142"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="143"/>
         <source>Received data on unexpected channel.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="147"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="148"/>
         <source>Bad &apos;hello&apos; message, expected &apos;capabilities: &apos; but got &apos;{0}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="153"/>
         <source>&apos;capabilities&apos; message did not contain any capability.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="160"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="161"/>
         <source>Bad &apos;hello&apos; message, expected &apos;encoding: &apos; but got &apos;{0}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="165"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="166"/>
         <source>&apos;encoding&apos; message did not contain any encoding.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="379"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="380"/>
         <source>For message see output dialog.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -36923,52 +36977,52 @@
 <context>
     <name>HgServeDialog</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="53"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="54"/>
         <source>Start Server</source>
         <translation>Démarrer serveur</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="59"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="60"/>
         <source>Stop Server</source>
         <translation>Arrêter serveur</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="65"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="66"/>
         <source>Start Browser</source>
         <translation>Démarrer le navigateur</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="73"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="74"/>
         <source>Enter the server port</source>
         <translation>Entrer le port du serveur</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="79"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="80"/>
         <source>Select the style to use</source>
         <translation>Sélectionner le style à utiliser</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="83"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="84"/>
         <source>Server</source>
         <translation>Serveur</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="90"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="91"/>
         <source>Browser</source>
         <translation>Navigateur</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>Process Generation Error</source>
         <translation>Erreur du processus</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Impossible de lancer le processus {0}. Assurez-vous qu&apos;il est bien dans le chemin de recherche.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="50"/>
         <source>Mercurial Server</source>
         <translation>Serveur Mercurial</translation>
     </message>
@@ -38649,17 +38703,17 @@
 <context>
     <name>HgUtilities</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="93"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="128"/>
         <source>The hg process finished with the exit code {0}</source>
         <translation>Le processus hg s&apos;est terminé avec le code de sortie {0}</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="98"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="133"/>
         <source>The hg process did not finish within 30s.</source>
         <translation>Le processus hg n&apos;a pas terminé dans les 30s.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="102"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="137"/>
         <source>Could not start the hg executable.</source>
         <translation>Ne peut démarrer l&apos;exécutable hg.</translation>
     </message>
@@ -40895,35 +40949,40 @@
 <context>
     <name>ImportsDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>Parsing modules...</source>
         <translation>Analyse des modules...</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="124"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="136"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a Python package.</source>
         <translation>Le dossier &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; n&apos;est pas un package Python.</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>%v/%m Modules</source>
         <translation>Modules %v/%m</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="95"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="107"/>
         <source>Imports Diagramm</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="410"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>InputDialogWizard</name>
@@ -42686,22 +42745,22 @@
         <translation>Affiche le nom du serveur</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="252"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="251"/>
         <source>Yes</source>
         <translation>Oui</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="254"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="253"/>
         <source>No</source>
         <translation>Non</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Delete Channel</source>
         <translation>Supprimer le salon</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Do you really want to delete channel &lt;b&gt;{0}&lt;/b&gt;?</source>
         <translation>Voulez-vous vraiment supprimer le salon &lt;b&gt;{0}&lt;/b&gt; ?</translation>
     </message>
@@ -50792,45 +50851,60 @@
 <context>
     <name>PackageDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>Parsing modules...</source>
         <translation>Analyse des modules...</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="205"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="219"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a package.</source>
         <translation>Le dossier &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; n&apos;est pas un package.</translation>
     </message>
     <message>
         <location filename="../Graphics/PackageDiagramBuilder.py" line="214"/>
         <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules.</source>
-        <translation>Le package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; ne contient pas de modules.</translation>
+        <translation type="obsolete">Le package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; ne contient pas de modules.</translation>
     </message>
     <message>
         <location filename="../Graphics/PackageDiagramBuilder.py" line="231"/>
         <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
-        <translation>Le package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; ne contient pas de classes.</translation>
-    </message>
-    <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <translation type="obsolete">Le package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; ne contient pas de classes.</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>%v/%m Modules</source>
         <translation>Modules %v/%m</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="158"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="172"/>
         <source>Package Diagram</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="230"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules or subpackages.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="247"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes or subpackages.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="555"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageScreenDialog</name>
@@ -52387,42 +52461,42 @@
 <context>
     <name>PixmapDiagram</name>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>Pixmap-Viewer</source>
         <translation>Pixmap-Viewer</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="98"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="101"/>
         <source>Print</source>
         <translation>Imprimer</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="93"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="96"/>
         <source>Close</source>
         <translation>Fermer</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="133"/>
-        <source>Window</source>
-        <translation>Fenêtre</translation>
-    </message>
-    <message>
         <location filename="../Graphics/PixmapDiagram.py" line="137"/>
+        <source>Window</source>
+        <translation>Fenêtre</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PixmapDiagram.py" line="141"/>
         <source>Graphics</source>
         <translation>Graphiques</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="103"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="106"/>
         <source>Print Preview</source>
         <translation>Aperçu avant impression</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; cannot be displayed. The format is not supported.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Le fichier &lt;b&gt;{0}&lt;/b&gt; ne peut être affiché. Le format n&apos;est pas supporté.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="391"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="416"/>
         <source>Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -52702,7 +52776,7 @@
         <translation>Certains plugins n&apos;ont pu être installés.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="501"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="485"/>
         <source>Unspecific exception installing plugin.</source>
         <translation>Erreur inexpliquée lors de l&apos;installation du plugin.</translation>
     </message>
@@ -52761,7 +52835,7 @@
         <translation>&lt;p&gt;Le module plugin &lt;b&gt;{0}&lt;/b&gt; existe. Annulation...&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="492"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="476"/>
         <source>Error installing plugin. Reason: {0}</source>
         <translation>Erreur lors de l&apos;installation du plugin. Raison : {0}</translation>
     </message>
@@ -52769,22 +52843,22 @@
 <context>
     <name>PluginManager</name>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="614"/>
+        <location filename="../PluginManager/PluginManager.py" line="623"/>
         <source>Incompatible plugin activation method.</source>
         <translation>Méthode d&apos;activation du plugin incompatible.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="404"/>
+        <location filename="../PluginManager/PluginManager.py" line="410"/>
         <source>Module is missing the &apos;autoactivate&apos; attribute.</source>
         <translation>Le module ne comporte pas l&apos;attribut &apos;autoactivate&apos;.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="415"/>
+        <location filename="../PluginManager/PluginManager.py" line="421"/>
         <source>Module is missing the &apos;pluginType&apos; and/or &apos;pluginTypename&apos; attributes.</source>
         <translation>Le module ne comporte pas le(s) attribut(s) &apos;pluginType&apos; et/ou &apos;pluginTypename&apos;.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>Plugin Manager Error</source>
         <translation>Erreur du gestionnaire de plugins</translation>
     </message>
@@ -52799,32 +52873,32 @@
         <translation>Le répertoire de plugin interne&lt;b&gt;{0}&lt;/b&gt; n&apos;existe pas.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="437"/>
+        <location filename="../PluginManager/PluginManager.py" line="446"/>
         <source>Module failed to load. Error: {0}</source>
         <translation>Échec de chargement du module . Erreur {0}</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>&lt;p&gt;The plugin download directory &lt;b&gt;{0}&lt;/b&gt; could not be created. Please configure it via the configuration dialog.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Le répertoire de téléchargement de plugin&lt;b&gt;{0}&lt;/b&gt; n&apos;a pas pu être créé. Veuillez le reconfigurer.&lt;/p&gt;&lt;p&gt;Raison : {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>Error downloading file</source>
         <translation>Erreur de téléchargement du fichier</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>&lt;p&gt;Could not download the requested file from {0}.&lt;/p&gt;&lt;p&gt;Error: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Ne peut télécharger le fichier demandé depuis {0}.&lt;/p&gt;&lt;p&gt;Erreur : {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>New plugin versions available</source>
         <translation>Nouvelle version de plugin disponible</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>&lt;p&gt;There are new plug-ins or plug-in updates available. Use the plug-in repository dialog to get them.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -54904,7 +54978,7 @@
         </translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>Create Package List</source>
         <translation>Création de la liste de package</translation>
     </message>
@@ -54914,17 +54988,17 @@
         <translation>Création de la liste de &amp;package</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>Create Plugin Archive</source>
         <translation>Création de l&apos;archive du plugin</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5264"/>
+        <location filename="../Project/Project.py" line="5265"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; already exists.&lt;/p&gt;&lt;p&gt;Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Le fichier &lt;b&gt;PKGLIST&lt;/b&gt; existe déjà.&lt;/p&gt;&lt;p&gt;Ecraser ?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5331"/>
+        <location filename="../Project/Project.py" line="5332"/>
         <source>The project does not have a main script defined. Aborting...</source>
         <translation>Le projet n&apos;a pas de script principal défini. Abandon...</translation>
     </message>
@@ -55064,17 +55138,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5467"/>
+        <location filename="../Project/Project.py" line="5468"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be stored in the archive. Ignoring it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5536"/>
+        <location filename="../Project/Project.py" line="5537"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Le fichier plugin &lt;b&gt;{0}&lt;/b&gt; ne peut être lu.&lt;/p&gt;&lt;p&gt;Raison : {1}&lt;/p&gt;</translation>
     </message>
@@ -55144,7 +55218,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt; &lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -55200,7 +55274,7 @@
         <translation>Chercher un fichier projet...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5367"/>
+        <location filename="../Project/Project.py" line="5368"/>
         <source>Create Plugin Archives</source>
         <translation>Créer une archive plugin</translation>
     </message>
@@ -55215,37 +55289,37 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5345"/>
+        <location filename="../Project/Project.py" line="5346"/>
         <source>Select package lists:</source>
         <translation>Sélectionner les listes de packages :</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Creating plugin archives...</source>
         <translation>Création en cours des archives de plugin...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Abort</source>
         <translation>Abandonner</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>%v/%m Archives</source>
         <translation>Archives %v/%m</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5378"/>
+        <location filename="../Project/Project.py" line="5379"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Le fichier &lt;b&gt;{0}&lt;/b&gt; ne peut être lu.&lt;/p&gt;&lt;p&gt;Raison : {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5356"/>
+        <location filename="../Project/Project.py" line="5357"/>
         <source>&lt;p&gt;No package list files (PKGLIST*) available or selected. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5405"/>
+        <location filename="../Project/Project.py" line="5406"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; is not ready yet.&lt;/p&gt;&lt;p&gt;Please rework it and delete the&apos;; initial_list&apos; line of the header.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -55285,7 +55359,7 @@
         <translation>&lt;p&gt;Le makefile &lt;b&gt;{0}&lt;/b&gt; n&apos;a pas pu être créé.&lt;br/&gt;Raison : {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>Execute Make</source>
         <translation>Exécuter Make</translation>
     </message>
@@ -55305,7 +55379,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5744"/>
+        <location filename="../Project/Project.py" line="5745"/>
         <source>Test for Changes</source>
         <translation type="unfinished"></translation>
     </message>
@@ -55330,27 +55404,27 @@
         <translation>Make</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5692"/>
+        <location filename="../Project/Project.py" line="5693"/>
         <source>The make process did not start.</source>
         <translation>Le processus make n&apos;a pas démarré.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5737"/>
+        <location filename="../Project/Project.py" line="5738"/>
         <source>The make process crashed.</source>
         <translation>Crash du processus make.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5747"/>
+        <location filename="../Project/Project.py" line="5748"/>
         <source>&lt;p&gt;There are changes that require the configured make target &lt;b&gt;{0}&lt;/b&gt; to be rebuilt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5752"/>
+        <location filename="../Project/Project.py" line="5753"/>
         <source>&lt;p&gt;There are changes that require the default make target to be rebuilt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>The makefile contains errors.</source>
         <translation>Le makefile contient des erreurs.</translation>
     </message>
@@ -55425,17 +55499,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5432"/>
+        <location filename="../Project/Project.py" line="5433"/>
         <source>&lt;p&gt;The eric plugin archive file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5484"/>
+        <location filename="../Project/Project.py" line="5485"/>
         <source>&lt;p&gt;The eric plugin archive files were created with some errors.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5492"/>
+        <location filename="../Project/Project.py" line="5493"/>
         <source>&lt;p&gt;The eric plugin archive files were created successfully.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56269,12 +56343,12 @@
         <translation>Renommer le fichier</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Delete files/directories</source>
         <translation>Supprimer fichiers/répertoires</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Do you really want to delete these entries from the project?</source>
         <translation>Voulez-vous réellement supprimer ces entrées du projet?</translation>
     </message>
@@ -56304,22 +56378,22 @@
         <translation>Copier chemin dans le Presse-Papiers</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>Show Mime-Type</source>
         <translation>Montrer le type mime</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="272"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="273"/>
         <source>The mime type of the file could not be determined.</source>
         <translation>Le type mime du fichier n&apos;a pas pu être déterminé.</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="286"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="287"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation>Le fichier a le type mime &lt;b&gt;{0}&lt;/b&gt;.</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation>Le fichier a le type mime &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Faut il l&apos;ajouter à la liste des fichiers de type mime texte ?</translation>
     </message>
@@ -57031,22 +57105,22 @@
         <translation>Diagramme des classes</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Include class attributes?</source>
         <translation>Inclure les attributs de classes ?</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Package Diagram</source>
         <translation>Diagramme des Packages</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Application Diagram</source>
         <translation>Diagramme de l&apos;application</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Include module names?</source>
         <translation>Inclure les noms de modules ?</translation>
     </message>
@@ -57066,12 +57140,12 @@
         <translation>Ajoute un nouveau package Python</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Imports Diagram</source>
         <translation>Diagramme des modules</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Include imports from external modules?</source>
         <translation>Inclure l&apos;importation de modules externes?</translation>
     </message>
@@ -69874,37 +69948,37 @@
 <context>
     <name>SvgDiagram</name>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="50"/>
+        <location filename="../Graphics/SvgDiagram.py" line="53"/>
         <source>SVG-Viewer</source>
         <translation>Visualiseur SVG</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="92"/>
+        <location filename="../Graphics/SvgDiagram.py" line="95"/>
         <source>Close</source>
         <translation>Fermer</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="97"/>
+        <location filename="../Graphics/SvgDiagram.py" line="100"/>
         <source>Print</source>
         <translation>Imprimer</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="132"/>
-        <source>Window</source>
-        <translation>Fenêtre</translation>
-    </message>
-    <message>
         <location filename="../Graphics/SvgDiagram.py" line="136"/>
+        <source>Window</source>
+        <translation>Fenêtre</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/SvgDiagram.py" line="140"/>
         <source>Graphics</source>
         <translation>Graphiques</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="102"/>
+        <location filename="../Graphics/SvgDiagram.py" line="105"/>
         <source>Print Preview</source>
         <translation>Aperçu avant impression</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="363"/>
+        <location filename="../Graphics/SvgDiagram.py" line="385"/>
         <source>Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -75740,62 +75814,62 @@
         <translation>Entrer la decription de la tâche</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="60"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="71"/>
         <source>Creation Time:</source>
         <translation>Date de création:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="77"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="92"/>
         <source>&amp;Priority:</source>
         <translation>&amp;Priorité:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="138"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="223"/>
         <source>Filename:</source>
         <translation>Nom de fichier:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="155"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="216"/>
         <source>Line:</source>
         <translation>Ligne:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="128"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="162"/>
         <source>Select to mark this task as completed</source>
         <translation>Cocher pour marquer cette tâche comme complétée</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="131"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="165"/>
         <source>T&amp;ask completed</source>
         <translation>Ta&amp;che effectuée</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="112"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="175"/>
         <source>Select to indicate a task related to the current project</source>
         <translation>Cocher pour indiquer si cette tâche doit être rattachée au projet courant</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="115"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="178"/>
         <source>Project &amp;Task</source>
         <translation>&amp;Tâche de projet</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="87"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="102"/>
         <source>Select the task priority</source>
         <translation>Sélectionner la priorité de la tâche</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="94"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="109"/>
         <source>High</source>
         <translation>Haute</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="99"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="114"/>
         <source>Normal</source>
         <translation>Normale</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="104"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="119"/>
         <source>Low</source>
         <translation>Basse</translation>
     </message>
@@ -75809,6 +75883,46 @@
         <source>Enter the task summary</source>
         <translation>Entrer le bilan des tâches</translation>
     </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="127"/>
+        <source>Type:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="134"/>
+        <source>Select the task type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="41"/>
+        <source>Bugfix</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="42"/>
+        <source>Warning</source>
+        <translation type="unfinished">Warning</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="43"/>
+        <source>ToDo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="44"/>
+        <source>Note</source>
+        <translation type="unfinished">Note</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="45"/>
+        <source>Test</source>
+        <translation type="unfinished">Tester</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="46"/>
+        <source>Documentation</source>
+        <translation type="unfinished">Documentation</translation>
+    </message>
 </context>
 <context>
     <name>TaskViewer</name>
@@ -75878,12 +75992,12 @@
         <translation>Ajuster la largeur des &amp;colonnes</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>Activate task filter</source>
         <translation>Activer le filtre de tâches</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>The task filter doesn&apos;t have any active filters. Do you want to configure the filter settings?</source>
         <translation>Le filtre de tâches n&apos;a aucun filtre actif. Voulez-vous configurer les paramètres de filtre ?</translation>
     </message>
@@ -75893,12 +76007,12 @@
         <translation>&amp;Regénérer les tâches de projet</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Extracting project tasks...</source>
         <translation>Extraction des tâches de projet...</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Abort</source>
         <translation>Abandon</translation>
     </message>
@@ -75913,7 +76027,7 @@
         <translation>Configuration...</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="738"/>
+        <location filename="../Tasks/TaskViewer.py" line="755"/>
         <source>Extracting project tasks...
 {0}</source>
         <translation>Extraction en cours des tâches projet...
@@ -75925,12 +76039,12 @@
         <translation>&amp;Configuration des options de scan</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Scan Filter Patterns</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Enter filename patterns of files to be excluded separated by a comma:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -75940,12 +76054,12 @@
         <translation>Tâches p&amp;rojet</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>%v/%m Files</source>
         <translation>Fichiers %v/%m</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="734"/>
+        <location filename="../Tasks/TaskViewer.py" line="751"/>
         <source>Tasks</source>
         <translation>Tâches</translation>
     </message>
@@ -75973,22 +76087,22 @@
 <context>
     <name>TasksFile</name>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>Save Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>Read Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -78443,213 +78557,238 @@
 <context>
     <name>UMLClassDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="83"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="96"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; could not be found.</source>
         <translation>Le module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; n&apos;a pas été trouvé.</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="145"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="159"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
         <translation>Le module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; ne contient pas de classe.</translation>
     </message>
+    <message>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="394"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>UMLDialog</name>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="82"/>
+        <location filename="../Graphics/UMLDialog.py" line="113"/>
         <source>Close</source>
         <translation>Fermer</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="122"/>
+        <location filename="../Graphics/UMLDialog.py" line="153"/>
         <source>Window</source>
         <translation>Fenêtre</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="87"/>
+        <location filename="../Graphics/UMLDialog.py" line="118"/>
         <source>Load</source>
         <translation>Charger</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="92"/>
+        <location filename="../Graphics/UMLDialog.py" line="123"/>
         <source>Save</source>
         <translation>Enregistrer</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="97"/>
+        <location filename="../Graphics/UMLDialog.py" line="128"/>
         <source>Save As...</source>
         <translation>Enregistrer sous...</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="107"/>
+        <location filename="../Graphics/UMLDialog.py" line="138"/>
         <source>Print</source>
         <translation>Imprimer</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="112"/>
+        <location filename="../Graphics/UMLDialog.py" line="143"/>
         <source>Print Preview</source>
         <translation>Aperçu avant impression</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="126"/>
+        <location filename="../Graphics/UMLDialog.py" line="157"/>
         <source>File</source>
         <translation>Fichier</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="178"/>
-        <source>Illegal diagram type &apos;{0}&apos; given.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>Save Diagram</source>
         <translation>Enregistrer le diagramme</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="230"/>
+        <location filename="../Graphics/UMLDialog.py" line="257"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Le fichier &lt;b&gt;{0}&lt;/b&gt;existe déjà. Écraser ?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Le fichier &lt;b&gt;{0}&lt;/b&gt; n&apos;a pas pu être enregistré.&lt;/p&gt;&lt;p&gt;Raison : {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="386"/>
+        <location filename="../Graphics/UMLDialog.py" line="551"/>
         <source>Load Diagram</source>
         <translation>Charger le diagramme</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="287"/>
+        <location filename="../Graphics/UMLDialog.py" line="518"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Le fichier &lt;b&gt;{0}&lt;/b&gt; n&apos;a pas pu être lu.&lt;/p&gt;&lt;p&gt;Raison: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Le fichier&lt;b&gt;{0}&lt;/b&gt; ne contient pas de données valides.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;&lt;p&gt;Invalid line: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Le fichier &lt;b&gt;{0}&lt;/b&gt; ne contient pas de données valides.&lt;/p&gt;&lt;p&gt;Ligne invalide : {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="102"/>
+        <location filename="../Graphics/UMLDialog.py" line="133"/>
         <source>Save as Image</source>
         <translation>Enregistrer en tant qu&apos;image</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="274"/>
-        <source>Eric Graphics File (*.e5g);;All Files (*)</source>
+        <location filename="../Graphics/UMLDialog.py" line="43"/>
+        <source>Class Diagram</source>
+        <translation type="unfinished">Diagramme des classes</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="45"/>
+        <source>Package Diagram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="47"/>
+        <source>Imports Diagram</source>
+        <translation type="unfinished">Diagramme des modules</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="49"/>
+        <source>Application Diagram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="105"/>
+        <source>Illegal Diagram Type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="289"/>
+        <source>Eric Graphics File (*.egj);;Eric Text Graphics File (*.e5g);;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>UMLGraphicsView</name>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="83"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="85"/>
         <source>Delete shapes</source>
         <translation>Effacer les entités</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="116"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="118"/>
         <source>Set size</source>
         <translation>Redimensionnement</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="126"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="128"/>
         <source>Re-Layout</source>
         <translation>Remise en page</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="219"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="233"/>
         <source>Graphics</source>
         <translation>Graphiques</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>Save Diagram</source>
         <translation>Enregistrer le diagramme</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="131"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="133"/>
         <source>Align Left</source>
         <translation>Aligner à gauche</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="138"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="140"/>
         <source>Align Center Horizontal</source>
         <translation>Centrer horizontalement</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="145"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="147"/>
         <source>Align Right</source>
         <translation>Aligner à droite</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="152"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="154"/>
         <source>Align Top</source>
         <translation>Aligner en haut</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="159"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="161"/>
         <source>Align Center Vertical</source>
         <translation>Centrer verticalement</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="166"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="168"/>
         <source>Align Bottom</source>
         <translation>Aligner en bas</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="341"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="360"/>
         <source>Portable Network Graphics (*.png);;Scalable Vector Graphics (*.svg)</source>
         <translation>Portable Network Graphics (*.png);;Scalable Vector Graphics (*.svg)</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="88"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="90"/>
         <source>Increase width by {0} points</source>
         <translation>Augmenter la largeur de {0} points</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="95"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="97"/>
         <source>Increase height by {0} points</source>
         <translation>Augmenter la hauteur de {0} points</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="102"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="104"/>
         <source>Decrease width by {0} points</source>
         <translation>Réduire la largeur de {0} points</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="109"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="111"/>
         <source>Decrease height by {0} points</source>
         <translation>Réduire la largeur de {0} points</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Le fichier &lt;b&gt;{0}&lt;/b&gt; n&apos;a pas pu être enregistré.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="356"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="375"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Le fichier &lt;b&gt;{0}&lt;/b&gt;existe déjà. Écraser ?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="121"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="123"/>
         <source>Re-Scan</source>
         <translation>Re-scanner</translation>
     </message>
@@ -78733,7 +78872,7 @@
 <context>
     <name>UnittestDialog</name>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>Unittest</source>
         <translation>Tests unitaires</translation>
     </message>
@@ -78753,12 +78892,12 @@
         <translation type="obsolete">Vous devez entrer un fichier test correct.</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="699"/>
         <source>Preparing Testsuite</source>
         <translation>Préparation de Testsuite</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="989"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="991"/>
         <source>Running</source>
         <translation>En cours d&apos;execution</translation>
     </message>
@@ -78928,7 +79067,7 @@
         <translation>&lt;b&gt;Stopper le test&lt;/b&gt;&lt;p&gt;Stoppe le test unittest en cours.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1162"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1164"/>
         <source>Show Source</source>
         <translation>Afficher les sources</translation>
     </message>
@@ -78938,12 +79077,12 @@
         <translation>Fichiers Python (*.py);;Tous les fichiers (*)</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1033"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1035"/>
         <source>Failure: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1048"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1050"/>
         <source>Error: {0}</source>
         <translation>Erreur : {0}</translation>
     </message>
@@ -78978,17 +79117,17 @@
         <translation>Nombre de tests avec des succès inattendus</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1063"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1065"/>
         <source>    Skipped: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1081"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1083"/>
         <source>    Expected Failure</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1098"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1100"/>
         <source>    Unexpected Success</source>
         <translation>    Succès inattendus</translation>
     </message>
@@ -79090,17 +79229,17 @@
         <translation>Résultats</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="707"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
         <source>Unittest with auto-discovery</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="791"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="787"/>
         <source>You must enter a start directory for auto-discovery.</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="1013"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1015"/>
         <source>Ran %n test(s) in {0:.3f}s</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -79133,7 +79272,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="623"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="619"/>
         <source>Discovered %n Test(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -79141,22 +79280,22 @@
         </translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="628"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="624"/>
         <source>&lt;p&gt;Unable to discover tests.&lt;/p&gt;&lt;p&gt;{0}&lt;br/&gt;{1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="694"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="690"/>
         <source>You must select auto-discovery or enter a test suite file or a dotted test name.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="716"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="712"/>
         <source>&lt;Unnamed Test&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>&lt;p&gt;Unable to run test &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;{1}&lt;br/&gt;{2}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Incapable de lancer le test&lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;{1}&lt;br/&gt;{2}&lt;/p&gt;</translation>
     </message>
@@ -79186,7 +79325,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="724"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="720"/>
         <source>No test case has been selected. Shall all test cases be run?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -79195,6 +79334,11 @@
         <source>Python3 Files ({0});;All Files (*)</source>
         <translation>Fichiers Python3({0});; Tous les fichiers (*)</translation>
     </message>
+    <message>
+        <location filename="../PyUnit/UnittestDialog.py" line="881"/>
+        <source>No unittest were found. Aborting...</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>UnknownDevicesDialog</name>
@@ -79433,383 +79577,383 @@
 <context>
     <name>UserInterface</name>
     <message>
-        <location filename="../UI/UserInterface.py" line="282"/>
+        <location filename="../UI/UserInterface.py" line="283"/>
         <source>Generating Main User Interface...</source>
         <translation>Création de l&apos;interface utilisateur...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Log-Viewer</source>
         <translation>Fenêtre de log</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="332"/>
+        <location filename="../UI/UserInterface.py" line="333"/>
         <source>Setting up connections...</source>
         <translation>Définition des connexions...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="624"/>
+        <location filename="../UI/UserInterface.py" line="627"/>
         <source>Initializing Actions...</source>
         <translation>Initialisation des actions...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="626"/>
+        <location filename="../UI/UserInterface.py" line="629"/>
         <source>Initializing Menus...</source>
         <translation>Initialisation des menus...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="628"/>
+        <location filename="../UI/UserInterface.py" line="631"/>
         <source>Initializing Toolbars...</source>
         <translation>Initialisation des barres d&apos;outils...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="630"/>
+        <location filename="../UI/UserInterface.py" line="633"/>
         <source>Initializing Statusbar...</source>
         <translation>Initialisation de la barre d&apos;état...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="577"/>
+        <location filename="../UI/UserInterface.py" line="580"/>
         <source>Initializing Tools...</source>
         <translation>Initialisation des outils...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Quit</source>
         <translation>Quitter</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>&amp;Quit</source>
         <translation>&amp;Quitter</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1642"/>
+        <location filename="../UI/UserInterface.py" line="1645"/>
         <source>Quit the IDE</source>
         <translation>Quitter l&apos;IDE</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1643"/>
+        <location filename="../UI/UserInterface.py" line="1646"/>
         <source>&lt;b&gt;Quit the IDE&lt;/b&gt;&lt;p&gt;This quits the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Quitter l&apos;IDE&lt;/b&gt;&lt;p&gt;Cette commande fait quitter l&apos;IDE. Toutes les modifications non-enregistrées devraient d&apos;abord être enregistrées. Tous les programmes Python débogués seront stoppés et les préférences seront écrites sur le disque.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>What&apos;s This?</source>
         <translation>Qu&apos;est-ce que c&apos;est ?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>&amp;What&apos;s This?</source>
         <translation>&amp;Qu&apos;est-ce que c&apos;est?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2126"/>
+        <location filename="../UI/UserInterface.py" line="2129"/>
         <source>Context sensitive help</source>
         <translation>Aide contextuelle</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2127"/>
+        <location filename="../UI/UserInterface.py" line="2130"/>
         <source>&lt;b&gt;Display context sensitive help&lt;/b&gt;&lt;p&gt;In What&apos;s This? mode, the mouse cursor shows an arrow with a question mark, and you can click on the interface elements to get a short description of what they do and how to use them. In dialogs, this feature can be accessed using the context help button in the titlebar.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Affiche l&apos;aide contextuelle&lt;/b&gt;&lt;p&gt;Dans le mode &quot;Qu&apos;est-ce que c&apos;est?&quot;, la souris est affichée avec un point d&apos;interrogation, et on peut cliquer sur les éléments de  l&apos;interface pour obtenir une courte description de l&apos;élément. Cette fonction peut être obtenue avec le bouton d&apos;aide contextuelle de la barre principale.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>Helpviewer</source>
         <translation>Visionneur d&apos;aide</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>&amp;Helpviewer...</source>
         <translation>Visionneur d&apos;&amp;aide...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2144"/>
+        <location filename="../UI/UserInterface.py" line="2147"/>
         <source>Open the helpviewer window</source>
         <translation>Ouvre le visualiseur d&apos;aide</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show Versions</source>
         <translation>Afficher les versions</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show &amp;Versions</source>
         <translation>Afficher les &amp;versions</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2168"/>
+        <location filename="../UI/UserInterface.py" line="2171"/>
         <source>Display version information</source>
         <translation>Affiche les informations sur les versions</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2170"/>
+        <location filename="../UI/UserInterface.py" line="2173"/>
         <source>&lt;b&gt;Show Versions&lt;/b&gt;&lt;p&gt;Display version information.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Afficher les versions&lt;/b&gt;&lt;p&gt;Affiche les informations sur les versions.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Report Bug</source>
         <translation>Rapport de bogue</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2229"/>
+        <location filename="../UI/UserInterface.py" line="2232"/>
         <source>Report &amp;Bug...</source>
         <translation>Rapport de &amp;bogue...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2233"/>
+        <location filename="../UI/UserInterface.py" line="2236"/>
         <source>Report a bug</source>
         <translation>Envoyer un rapport de bogue</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2234"/>
+        <location filename="../UI/UserInterface.py" line="2237"/>
         <source>&lt;b&gt;Report Bug...&lt;/b&gt;&lt;p&gt;Opens a dialog to report a bug.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Rapport de bogue...&lt;/b&gt;&lt;p&gt;Ouvre une fenêtre pour envoyer un rapport de bogue.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3365"/>
+        <location filename="../UI/UserInterface.py" line="3368"/>
         <source>Unittest</source>
         <translation>Tests unitaires</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2256"/>
+        <location filename="../UI/UserInterface.py" line="2259"/>
         <source>&amp;Unittest...</source>
         <translation>&amp;Tests unitaires...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2261"/>
+        <location filename="../UI/UserInterface.py" line="2264"/>
         <source>Start unittest dialog</source>
         <translation>Ouvre la fenêtre Unitest</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
+        <location filename="../UI/UserInterface.py" line="2524"/>
         <source>Preferences</source>
         <translation>Préférences</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
+        <location filename="../UI/UserInterface.py" line="2524"/>
         <source>&amp;Preferences...</source>
         <translation>&amp;Préférences...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2526"/>
+        <location filename="../UI/UserInterface.py" line="2529"/>
         <source>Set the prefered configuration</source>
         <translation>Édition des préférences</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2528"/>
+        <location filename="../UI/UserInterface.py" line="2531"/>
         <source>&lt;b&gt;Preferences&lt;/b&gt;&lt;p&gt;Set the configuration items of the application with your prefered values.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Préférences&lt;/b&gt;&lt;p&gt;Edite les valeurs souhaitées pour la configuration du logiciel.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
+        <location filename="../UI/UserInterface.py" line="2629"/>
         <source>Keyboard Shortcuts</source>
         <translation>Raccourcis clavier</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
+        <location filename="../UI/UserInterface.py" line="2629"/>
         <source>Keyboard &amp;Shortcuts...</source>
         <translation>&amp;Raccourcis claviers...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2631"/>
+        <location filename="../UI/UserInterface.py" line="2634"/>
         <source>Set the keyboard shortcuts</source>
         <translation>Définition des raccourcis clavier</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2633"/>
+        <location filename="../UI/UserInterface.py" line="2636"/>
         <source>&lt;b&gt;Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Set the keyboard shortcuts of the application with your prefered values.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Raccourcis claviers&lt;/b&gt;&lt;p&gt;Edite les raccourcis claviers pour l&apos;application.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>Export Keyboard Shortcuts</source>
         <translation>Exporter les raccourcis clavier</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2641"/>
+        <location filename="../UI/UserInterface.py" line="2644"/>
         <source>&amp;Export Keyboard Shortcuts...</source>
         <translation>&amp;Exporter les raccourcis claviers...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2646"/>
+        <location filename="../UI/UserInterface.py" line="2649"/>
         <source>Export the keyboard shortcuts</source>
         <translation>Exporte les raccourcis claviers</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2648"/>
+        <location filename="../UI/UserInterface.py" line="2651"/>
         <source>&lt;b&gt;Export Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Export the keyboard shortcuts of the application.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Exporter les raccourcis clavier&lt;/b&gt;&lt;p&gt;Exporte les raccourcis claviers de l&apos;application.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Import Keyboard Shortcuts</source>
         <translation>Importer des raccourcis clavier</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2655"/>
+        <location filename="../UI/UserInterface.py" line="2658"/>
         <source>&amp;Import Keyboard Shortcuts...</source>
         <translation>&amp;Importer des raccourcis clavier...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2660"/>
+        <location filename="../UI/UserInterface.py" line="2663"/>
         <source>Import the keyboard shortcuts</source>
         <translation>Importe des raccourcis clavier</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2662"/>
+        <location filename="../UI/UserInterface.py" line="2665"/>
         <source>&lt;b&gt;Import Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Import the keyboard shortcuts of the application.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Importer des raccourcis clavier&lt;/b&gt;&lt;p&gt;Importe des raccourcis claviers de l&apos;application.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3102"/>
+        <location filename="../UI/UserInterface.py" line="3105"/>
         <source>E&amp;xtras</source>
         <translation>E&amp;xtras</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3216"/>
+        <location filename="../UI/UserInterface.py" line="3219"/>
         <source>&amp;Window</source>
         <translation>&amp;Fenêtre</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3291"/>
+        <location filename="../UI/UserInterface.py" line="3294"/>
         <source>&amp;Help</source>
         <translation>A&amp;ide</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3364"/>
+        <location filename="../UI/UserInterface.py" line="3367"/>
         <source>Tools</source>
         <translation>Outils</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
+        <location filename="../UI/UserInterface.py" line="5216"/>
         <source>Help</source>
         <translation>Aide</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3366"/>
+        <location filename="../UI/UserInterface.py" line="3369"/>
         <source>Settings</source>
         <translation>Configuration</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3277"/>
+        <location filename="../UI/UserInterface.py" line="3280"/>
         <source>&amp;Toolbars</source>
         <translation>&amp;Barres d&apos;Outils</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>Problem</source>
         <translation>Problème</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5536"/>
+        <location filename="../UI/UserInterface.py" line="5552"/>
         <source>Process Generation Error</source>
         <translation>Erreur du processus</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="657"/>
+        <location filename="../UI/UserInterface.py" line="660"/>
         <source>Initializing Single Application Server...</source>
         <translation>Initialisation du serveur d&apos;application...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2262"/>
+        <location filename="../UI/UserInterface.py" line="2265"/>
         <source>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Perform unit tests. The dialog gives you the ability to select and run a unittest suite.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Tests unitaires&lt;/b&gt;&lt;p&gt;Effectue les tests d&apos;unitaires. Cette fenêtre permet de sélectionner et de lancer une suite de tests unitaires.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
+        <location filename="../UI/UserInterface.py" line="2273"/>
         <source>Unittest Restart</source>
         <translation>Relancer les tests unitaires</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
+        <location filename="../UI/UserInterface.py" line="2273"/>
         <source>&amp;Restart Unittest...</source>
         <translation>&amp;Relancer les tests unitaires...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2275"/>
+        <location filename="../UI/UserInterface.py" line="2278"/>
         <source>Restart last unittest</source>
         <translation>Relancer le dernier test unitaire</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2276"/>
+        <location filename="../UI/UserInterface.py" line="2279"/>
         <source>&lt;b&gt;Restart Unittest&lt;/b&gt;&lt;p&gt;Restart the unittest performed last.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Relancer le dernier test unitaire&lt;/b&gt;
 &lt;p&gt;Relance le dernier test unitaire effectué.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
+        <location filename="../UI/UserInterface.py" line="2303"/>
         <source>Unittest Script</source>
         <translation>Script de tests unitaires</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
+        <location filename="../UI/UserInterface.py" line="2303"/>
         <source>Unittest &amp;Script...</source>
         <translation>&amp;Script de tests unitaires...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2305"/>
+        <location filename="../UI/UserInterface.py" line="2308"/>
         <source>Run unittest with current script</source>
         <translation>Lance les tests unitaires sur le script courant</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2307"/>
+        <location filename="../UI/UserInterface.py" line="2310"/>
         <source>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Run unittest with current script.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Script de tests unitaires&lt;/b&gt;&lt;p&gt;Lance les tests unitaires sur le script en cours.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
+        <location filename="../UI/UserInterface.py" line="2318"/>
         <source>Unittest Project</source>
         <translation>Projet de tests unitaires</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
+        <location filename="../UI/UserInterface.py" line="2318"/>
         <source>Unittest &amp;Project...</source>
         <translation>&amp;Projet de tests unitaires...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2320"/>
+        <location filename="../UI/UserInterface.py" line="2323"/>
         <source>Run unittest with current project</source>
         <translation>Lance les tests unitaires sur le projet courant</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2322"/>
+        <location filename="../UI/UserInterface.py" line="2325"/>
         <source>&lt;b&gt;Unittest Project&lt;/b&gt;&lt;p&gt;Run unittest with current project.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Projet de tests unitaires&lt;/b&gt;&lt;p&gt;Lance les tests unitaires sur le projet en cours.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
+        <location filename="../UI/UserInterface.py" line="2413"/>
         <source>Compare Files</source>
         <translation>Comparaison de fichiers</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
+        <location filename="../UI/UserInterface.py" line="2413"/>
         <source>&amp;Compare Files...</source>
         <translation>&amp;Comparaison de fichiers...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2428"/>
+        <location filename="../UI/UserInterface.py" line="2431"/>
         <source>Compare two files</source>
         <translation>Compare deux fichiers</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2416"/>
+        <location filename="../UI/UserInterface.py" line="2419"/>
         <source>&lt;b&gt;Compare Files&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Comparaison de Fichiers&lt;/b&gt;&lt;p&gt;Ouvre une fenêtre pour comparer deux fichiers.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
+        <location filename="../UI/UserInterface.py" line="2426"/>
         <source>Compare Files side by side</source>
         <translation>Comparaison de fichiers côte à côte</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2429"/>
+        <location filename="../UI/UserInterface.py" line="2432"/>
         <source>&lt;b&gt;Compare Files side by side&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files and show the result side by side.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Comparaison de fichiers côte à côte&lt;/b&gt;&lt;p&gt;Ouvre une fenêtre pour comparer deux fichiers et affiche les différences côte à côte.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3158"/>
+        <location filename="../UI/UserInterface.py" line="3161"/>
         <source>&amp;Unittest</source>
         <translation>Tests &amp;unitaires</translation>
     </message>
@@ -79819,137 +79963,137 @@
         <translation type="obsolete">Il n&apos;y a pas de script principal défini dans le projet en cours. Abandon</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>Drop Error</source>
         <translation>Erreur de suppression</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>File-Browser</source>
         <translation>Navigateur de fichiers</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1714"/>
+        <location filename="../UI/UserInterface.py" line="1717"/>
         <source>Edit Profile</source>
         <translation>Profil d&apos;Edition</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1720"/>
+        <location filename="../UI/UserInterface.py" line="1723"/>
         <source>Activate the edit view profile</source>
         <translation>Active la fenêtre d&apos;édition des profils Edition/Débogage</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1722"/>
+        <location filename="../UI/UserInterface.py" line="1725"/>
         <source>&lt;b&gt;Edit Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Edit View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Edition des profils&lt;/b&gt;&lt;p&gt;Active la fenêtre d&apos;édition des profils Edition/Débogage. On peut y configurer les différentes fenêtres devant apparaitre en mode Edition ou Débogage.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1731"/>
+        <location filename="../UI/UserInterface.py" line="1734"/>
         <source>Debug Profile</source>
         <translation>Profil Débogage</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1737"/>
+        <location filename="../UI/UserInterface.py" line="1740"/>
         <source>Activate the debug view profile</source>
         <translation>Active le profil Débogage</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1739"/>
+        <location filename="../UI/UserInterface.py" line="1742"/>
         <source>&lt;b&gt;Debug Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Debug View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Profil Debogage&lt;/b&gt;&lt;p&gt;Active le profil Bébogage. La fenêtre affichée dans ce mode peut être configurée avec la fenêtre &quot;Edition des profils&quot;&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
+        <location filename="../UI/UserInterface.py" line="2597"/>
         <source>View Profiles</source>
         <translation>Profils de visualisation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
+        <location filename="../UI/UserInterface.py" line="2597"/>
         <source>&amp;View Profiles...</source>
         <translation>Profils de &amp;Visualisation...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2599"/>
+        <location filename="../UI/UserInterface.py" line="2602"/>
         <source>Configure view profiles</source>
         <translation>Configuration des profils de visualisation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2601"/>
+        <location filename="../UI/UserInterface.py" line="2604"/>
         <source>&lt;b&gt;View Profiles&lt;/b&gt;&lt;p&gt;Configure the view profiles. With this dialog you may set the visibility of the various windows for the predetermined view profiles.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Profils de Visualisation&lt;/b&gt;&lt;p&gt;Configure les modes de visualisation de l&apos;éditeur  (modes Edition/Débogage). Avec cet fenêtre de configuration, on peut sélectionner les sous-fenêtres actives par défaut pour chacun des mode de visualisation.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
+        <location filename="../UI/UserInterface.py" line="2386"/>
         <source>UI Previewer</source>
         <translation>Visionneur d&apos;UI</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
+        <location filename="../UI/UserInterface.py" line="2386"/>
         <source>&amp;UI Previewer...</source>
         <translation>Visionneur d&apos;&amp;UI...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2388"/>
+        <location filename="../UI/UserInterface.py" line="2391"/>
         <source>Start the UI Previewer</source>
         <translation>Démarre le Visionneur d&apos;UI</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2389"/>
+        <location filename="../UI/UserInterface.py" line="2392"/>
         <source>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Start the UI Previewer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Visulaiseur d&apos;UI&lt;/b&gt;&lt;p&gt;Démarre le visualiseur d&apos;UI.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
+        <location filename="../UI/UserInterface.py" line="2399"/>
         <source>Translations Previewer</source>
         <translation>Visionneur de traductions</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
+        <location filename="../UI/UserInterface.py" line="2399"/>
         <source>&amp;Translations Previewer...</source>
         <translation>Visionneur de &amp;Traductions...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2401"/>
+        <location filename="../UI/UserInterface.py" line="2404"/>
         <source>Start the Translations Previewer</source>
         <translation>Démarre le visionneur de traductions</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2403"/>
+        <location filename="../UI/UserInterface.py" line="2406"/>
         <source>&lt;b&gt;Translations Previewer&lt;/b&gt;&lt;p&gt;Start the Translations Previewer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Visionneur de traductions&lt;/b&gt;&lt;p&gt;Démarre le visionneur de traductions.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Shell</source>
         <translation>Shell</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>&amp;Shell</source>
         <translation>&amp;Shell</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
+        <location filename="../UI/UserInterface.py" line="2568"/>
         <source>Reload APIs</source>
         <translation>Recharger les APIs</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
+        <location filename="../UI/UserInterface.py" line="2568"/>
         <source>Reload &amp;APIs</source>
         <translation>Recharger les &amp;APIs</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2569"/>
+        <location filename="../UI/UserInterface.py" line="2572"/>
         <source>Reload the API information</source>
         <translation>Recharger les informations des API</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2571"/>
+        <location filename="../UI/UserInterface.py" line="2574"/>
         <source>&lt;b&gt;Reload APIs&lt;/b&gt;&lt;p&gt;Reload the API information.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Recharger les APIs&lt;/b&gt;&lt;p&gt;Recharger les informations des API.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Task-Viewer</source>
         <translation>Visualisueur de tâches</translation>
     </message>
@@ -79964,77 +80108,77 @@
         <translation type="obsolete">Lecture des tâches</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
+        <location filename="../UI/UserInterface.py" line="5216"/>
         <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source>
         <translation>Aucun visualiseur personalisé n&apos;est sélectionné. Prière d&apos;en spécifier un dans les préférences.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>Documentation Missing</source>
         <translation>Documentation Manquante</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Email address or mail server address is empty. Please configure your Email settings in the Preferences Dialog.</source>
         <translation>L&apos;adresse mail ou l&apos;adresse du serveur mail est vide. Veuillez configurer vos paramètres mails dans la fenêtre des Préférences.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Template-Viewer</source>
         <translation>Gestionnaire de gabarits</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Alt+Shift+P</source>
         <translation>Alt+Shift+P</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Alt+Shift+D</source>
         <translation>Alt+Shift+D</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Alt+Shift+S</source>
         <translation>Alt+Shift+S</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>Alt+Shift+F</source>
         <translation>Alt+Shift+F</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Alt+Shift+T</source>
         <translation>Alt+Shift+T</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Alt+Shift+M</source>
         <translation>Alt+Shift+M</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
+        <location filename="../UI/UserInterface.py" line="2723"/>
         <source>Activate current editor</source>
         <translation>Activer l&apos;éditeur courant</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
+        <location filename="../UI/UserInterface.py" line="2723"/>
         <source>Alt+Shift+E</source>
         <translation>Alt+Shift+E</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
+        <location filename="../UI/UserInterface.py" line="2733"/>
         <source>Ctrl+Alt+Tab</source>
         <translation>Ctrl+Alt+Tab</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
+        <location filename="../UI/UserInterface.py" line="2742"/>
         <source>Shift+Ctrl+Alt+Tab</source>
         <translation>Shift+Ctrl+Alt+Tab</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Alt+Shift+G</source>
         <translation>Alt+Shift+G</translation>
     </message>
@@ -80054,7 +80198,7 @@
         <translation type="obsolete">Lance la Documentation Qt4</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2953"/>
+        <location filename="../UI/UserInterface.py" line="2956"/>
         <source>Eric API Documentation</source>
         <translation>Documentation pour les API Eric</translation>
     </message>
@@ -80064,58 +80208,58 @@
         <translation type="obsolete">Documentation pour les API &amp;Eric</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2957"/>
+        <location filename="../UI/UserInterface.py" line="2960"/>
         <source>Open Eric API Documentation</source>
         <translation>Ouvre la documentation sur les APIs Eric</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5247"/>
+        <location filename="../UI/UserInterface.py" line="5250"/>
         <source>&lt;p&gt;Could not start the help viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Impossible de démarrer le visualiseur d&apos;aide.&lt;br&gt;Assurez-vous qu&apos;il est bien ici &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="587"/>
+        <location filename="../UI/UserInterface.py" line="590"/>
         <source>Registering Objects...</source>
         <translation>Enregistrement des objets...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Project-Viewer</source>
         <translation>Gestionnaire de projet</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Debug-Viewer</source>
         <translation>Gestionnaire de débogage</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Ctrl+Q</source>
         <comment>File|Quit</comment>
         <translation>Ctrl+Q</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>&amp;Project-Viewer</source>
         <translation>Gestionnaire de &amp;projet</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>Shift+F1</source>
         <translation>Shift+F1</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>F1</source>
         <translation>F1</translation>
     </message>
     <message>
+        <location filename="../UI/UserInterface.py" line="2183"/>
+        <source>Check for Updates</source>
+        <translation>Rechercher des mises à jour</translation>
+    </message>
+    <message>
         <location filename="../UI/UserInterface.py" line="2180"/>
-        <source>Check for Updates</source>
-        <translation>Rechercher des mises à jour</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2177"/>
         <source>Check for &amp;Updates...</source>
         <translation>Rechercher des &amp;mises à jour...</translation>
     </message>
@@ -80130,27 +80274,27 @@
         <translation type="obsolete">Lance la documentation PyQt4</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3175"/>
+        <location filename="../UI/UserInterface.py" line="3178"/>
         <source>Select Tool Group</source>
         <translation>Sélection d&apos;un groupe d&apos;outils</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3186"/>
+        <location filename="../UI/UserInterface.py" line="3189"/>
         <source>Se&amp;ttings</source>
         <translation>&amp;Configuration</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3368"/>
+        <location filename="../UI/UserInterface.py" line="3371"/>
         <source>Profiles</source>
         <translation>Profils</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4162"/>
+        <location filename="../UI/UserInterface.py" line="4165"/>
         <source>&amp;Builtin Tools</source>
         <translation>Outils &amp;internes</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>Documentation</source>
         <translation>Documentation</translation>
     </message>
@@ -80160,12 +80304,12 @@
         <translation type="obsolete">&lt;p&gt;L&apos;emplacement de la documentation PyQt4 n&apos;a pas été configuré.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Error during updates check</source>
         <translation>Erreur durant la recherche de mises à jour</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>Update available</source>
         <translation>Mise à jour disponible</translation>
     </message>
@@ -80175,565 +80319,565 @@
         <translation type="obsolete">&lt;h3&gt;Numéros de version&lt;/h3&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7268"/>
+        <location filename="../UI/UserInterface.py" line="7295"/>
         <source>&lt;/table&gt;</source>
         <translation>&lt;/table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Open Browser</source>
         <translation>Ouverture du navigateur</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Could not start a web browser</source>
         <translation>Impossible de lancer le navigateur web</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4207"/>
+        <location filename="../UI/UserInterface.py" line="4210"/>
         <source>Configure Tool Groups ...</source>
         <translation>Configuration des groupes d&apos;outils...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4211"/>
+        <location filename="../UI/UserInterface.py" line="4214"/>
         <source>Configure current Tool Group ...</source>
         <translation>Configuration du groupe d&apos;outils courant...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2583"/>
+        <location filename="../UI/UserInterface.py" line="2586"/>
         <source>Show external tools</source>
         <translation>Afficher les outils externes</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2578"/>
+        <location filename="../UI/UserInterface.py" line="2581"/>
         <source>Show external &amp;tools</source>
         <translation>Afficher les &amp;outils externes</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>&amp;Cancel</source>
         <translation>&amp;Annuler</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Could not perform updates check.</source>
         <translation>Impossible de vérifier les mises à jour.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>First time usage</source>
         <translation>Première utilisation</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="275"/>
+        <location filename="../UI/UserInterface.py" line="276"/>
         <source>Initializing Plugin Manager...</source>
         <translation>Initialisation du gestionnaire de plugins...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3139"/>
+        <location filename="../UI/UserInterface.py" line="3142"/>
         <source>P&amp;lugins</source>
         <translation>P&amp;lugins</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3369"/>
+        <location filename="../UI/UserInterface.py" line="3372"/>
         <source>Plugins</source>
         <translation>Plugins</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
+        <location filename="../UI/UserInterface.py" line="2760"/>
         <source>Plugin Infos</source>
         <translation>Infos Plugins</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2761"/>
+        <location filename="../UI/UserInterface.py" line="2764"/>
         <source>Show Plugin Infos</source>
         <translation>Affiche les infos sur les plugins</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2762"/>
+        <location filename="../UI/UserInterface.py" line="2765"/>
         <source>&lt;b&gt;Plugin Infos...&lt;/b&gt;&lt;p&gt;This opens a dialog, that show some information about loaded plugins.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Infos Plugins...&lt;/b&gt;&lt;p&gt;Affiche une fenêtre donnant des informations sur les plugins chargés.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
+        <location filename="../UI/UserInterface.py" line="2760"/>
         <source>&amp;Plugin Infos...</source>
         <translation>Infos &amp;Plugins...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4179"/>
+        <location filename="../UI/UserInterface.py" line="4182"/>
         <source>&amp;Plugin Tools</source>
         <translation>Outils &amp;plugins</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2788"/>
+        <location filename="../UI/UserInterface.py" line="2791"/>
         <source>Uninstall Plugin</source>
         <translation>Désinstaller un plugin</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2783"/>
+        <location filename="../UI/UserInterface.py" line="2786"/>
         <source>&amp;Uninstall Plugin...</source>
         <translation>&amp;Désinstaller un plugin...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2789"/>
+        <location filename="../UI/UserInterface.py" line="2792"/>
         <source>&lt;b&gt;Uninstall Plugin...&lt;/b&gt;&lt;p&gt;This opens a dialog to uninstall a plugin.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Désinstaller un plugin...&lt;/b&gt;&lt;p&gt;Ouvre une fenêtre pour désinstaller un plugin.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="667"/>
+        <location filename="../UI/UserInterface.py" line="670"/>
         <source>Activating Plugins...</source>
         <translation>Activation des plugins...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3112"/>
+        <location filename="../UI/UserInterface.py" line="3115"/>
         <source>Wi&amp;zards</source>
         <translation>As&amp;sistants</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4326"/>
+        <location filename="../UI/UserInterface.py" line="4329"/>
         <source>&amp;Show all</source>
         <translation>Tout &amp;afficher</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4328"/>
+        <location filename="../UI/UserInterface.py" line="4331"/>
         <source>&amp;Hide all</source>
         <translation>Tout &amp;masquer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show downloadable versions</source>
         <translation>Afficher les versions téléchargeables</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show &amp;downloadable versions...</source>
         <translation>Afficher les versions &amp;téléchargeables...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2192"/>
+        <location filename="../UI/UserInterface.py" line="2195"/>
         <source>Show the versions available for download</source>
         <translation>Affiche les versions disponibles pour le téléchargement</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7253"/>
+        <location filename="../UI/UserInterface.py" line="7280"/>
         <source>&lt;h3&gt;Available versions&lt;/h3&gt;&lt;table&gt;</source>
         <translation>&lt;h3&gt;Versions disponibles&lt;/h3&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
+        <location filename="../UI/UserInterface.py" line="2799"/>
         <source>Plugin Repository</source>
         <translation>Référentiel de plugins</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
+        <location filename="../UI/UserInterface.py" line="2799"/>
         <source>Plugin &amp;Repository...</source>
         <translation>&amp;Référentiel de plugins...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2801"/>
+        <location filename="../UI/UserInterface.py" line="2804"/>
         <source>Show Plugins available for download</source>
         <translation>Affiche les plugins disponibles au téléchargement</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2803"/>
+        <location filename="../UI/UserInterface.py" line="2806"/>
         <source>&lt;b&gt;Plugin Repository...&lt;/b&gt;&lt;p&gt;This opens a dialog, that shows a list of plugins available on the Internet.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Référentiel de plugins...&lt;/b&gt;&lt;p&gt;Affiche une fenêtre donnant la liste des plugins disponibles sur internet.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2775"/>
+        <location filename="../UI/UserInterface.py" line="2778"/>
         <source>Install Plugins</source>
         <translation>Installation de plugins</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2770"/>
+        <location filename="../UI/UserInterface.py" line="2773"/>
         <source>&amp;Install Plugins...</source>
         <translation>&amp;Installation de plugins...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2776"/>
+        <location filename="../UI/UserInterface.py" line="2779"/>
         <source>&lt;b&gt;Install Plugins...&lt;/b&gt;&lt;p&gt;This opens a dialog to install or update plugins.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Installation de plugins...&lt;/b&gt;&lt;p&gt;Ouvre une fenêtre pour installer ou mettre à jour des plugins.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2455"/>
+        <location filename="../UI/UserInterface.py" line="2458"/>
         <source>Mini Editor</source>
         <translation>Mini-éditeur</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2450"/>
+        <location filename="../UI/UserInterface.py" line="2453"/>
         <source>Mini &amp;Editor...</source>
         <translation>Mini édit&amp;eur...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2456"/>
+        <location filename="../UI/UserInterface.py" line="2459"/>
         <source>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Open a dialog with a simplified editor.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Mini Editeur&lt;/b&gt;&lt;p&gt;ouvre une fenêtre avec un éditeur simplifié.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
+        <location filename="../UI/UserInterface.py" line="2614"/>
         <source>Toolbars</source>
         <translation>Barres d&apos;outils</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
+        <location filename="../UI/UserInterface.py" line="2614"/>
         <source>Tool&amp;bars...</source>
         <translation>&amp;Barres d&apos;outils...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2616"/>
+        <location filename="../UI/UserInterface.py" line="2619"/>
         <source>Configure toolbars</source>
         <translation>Configuration des barres d&apos;outils</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2617"/>
+        <location filename="../UI/UserInterface.py" line="2620"/>
         <source>&lt;b&gt;Toolbars&lt;/b&gt;&lt;p&gt;Configure the toolbars. With this dialog you may change the actions shown on the various toolbars and define your own toolbars.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Barres d&apos;outils&lt;/b&gt;&lt;p&gt;Configuration des barres d&apos;outils. Avec cette fenêtre vous pouvez modifier les actions des différentes barres affichées et créer  vos propres barres d&apos;outils&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="683"/>
+        <location filename="../UI/UserInterface.py" line="686"/>
         <source>Restoring Toolbarmanager...</source>
         <translation>Restauration des barres d&apos;outils...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Multiproject-Viewer</source>
         <translation>Gestionnaire de multi-projets</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>&amp;Multiproject-Viewer</source>
         <translation>Gestionnaire de &amp;multi-projet</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
+        <location filename="../UI/UserInterface.py" line="5497"/>
         <source>External Tools</source>
         <translation>Outils externes</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1673"/>
+        <location filename="../UI/UserInterface.py" line="1676"/>
         <source>Save session</source>
         <translation>Enregistrer la session</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>Read session</source>
         <translation>Chargement de session</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3541"/>
+        <location filename="../UI/UserInterface.py" line="3544"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors encoding.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Cette partie de la barre d&apos;état affiche l&apos;encodage des éditeurs.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3555"/>
+        <location filename="../UI/UserInterface.py" line="3558"/>
         <source>&lt;p&gt;This part of the status bar displays an indication of the current editors files writability.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Cette partie de la barre d&apos;état affiche les droits d&apos;écriture des fichiers en cours.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request Feature</source>
         <translation>Suggestion d&apos;amélioration</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request &amp;Feature...</source>
         <translation>Suggestion d&apos;&amp;amélioration...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2245"/>
+        <location filename="../UI/UserInterface.py" line="2248"/>
         <source>Send a feature request</source>
         <translation>Envoyer une suggestion d&apos;amélioration</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2247"/>
+        <location filename="../UI/UserInterface.py" line="2250"/>
         <source>&lt;b&gt;Request Feature...&lt;/b&gt;&lt;p&gt;Opens a dialog to send a feature request.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Demande d&apos;amélioration...&lt;/b&gt;&lt;p&gt;Ouvre une fenêtre permettant d&apos;envoyer une demande d&apos;amélioration.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3534"/>
+        <location filename="../UI/UserInterface.py" line="3537"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors language.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Cette zone de la barre d&apos;état affiche le langage de l&apos;éditeur actif.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3562"/>
+        <location filename="../UI/UserInterface.py" line="3565"/>
         <source>&lt;p&gt;This part of the status bar displays the line number of the current editor.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Cette zone de la barre d&apos;état affiche le numéro de ligne de l&apos;éditeur actif.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3569"/>
+        <location filename="../UI/UserInterface.py" line="3572"/>
         <source>&lt;p&gt;This part of the status bar displays the cursor position of the current editor.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Cette zone de la barre d&apos;état affiche la position du curseur.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>Horizontal Toolbox</source>
         <translation>Barre horizontale</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Alt+Shift+A</source>
         <translation>Alt+Shift+A</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>&amp;Horizontal Toolbox</source>
         <translation>Barre &amp;horizontale</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1919"/>
+        <location filename="../UI/UserInterface.py" line="1922"/>
         <source>Toggle the Horizontal Toolbox window</source>
         <translation>Afficher/Masquer la barre d&apos;outils horizontale</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1921"/>
+        <location filename="../UI/UserInterface.py" line="1924"/>
         <source>&lt;b&gt;Toggle the Horizontal Toolbox window&lt;/b&gt;&lt;p&gt;If the Horizontal Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Afficher/Masquer la barre d&apos;outils horizontale&lt;/b&gt;&lt;p&gt;Affiche ou masque la barre d&apos;outils horizontale, selon.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>Restart application</source>
         <translation>Redémarrage de l&apos;application</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>The application needs to be restarted. Do it now?</source>
         <translation>L&apos;application a bersoin d&apos;être relancée. Relancer maintenant ?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3148"/>
+        <location filename="../UI/UserInterface.py" line="3151"/>
         <source>Configure...</source>
         <translation>Configuration...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3548"/>
+        <location filename="../UI/UserInterface.py" line="3551"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors eol setting.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Cette zone de la barre d&apos;état affiche le type de fin de lignes utilisé pour les éditeurs.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
+        <location filename="../UI/UserInterface.py" line="2751"/>
         <source>Switch between tabs</source>
         <translation>Intervertir les onglets</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
+        <location filename="../UI/UserInterface.py" line="2751"/>
         <source>Ctrl+1</source>
         <translation>Ctrl+1</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
+        <location filename="../UI/UserInterface.py" line="2540"/>
         <source>Export Preferences</source>
         <translation>Exporte les préférences</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
+        <location filename="../UI/UserInterface.py" line="2540"/>
         <source>E&amp;xport Preferences...</source>
         <translation>E&amp;xporter les préférences...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2542"/>
+        <location filename="../UI/UserInterface.py" line="2545"/>
         <source>Export the current configuration</source>
         <translation>Exporte la configuration courante</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2544"/>
+        <location filename="../UI/UserInterface.py" line="2547"/>
         <source>&lt;b&gt;Export Preferences&lt;/b&gt;&lt;p&gt;Export the current configuration to a file.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Exporter les préférences&lt;/b&gt;&lt;p&gt;Export la configuration courante dans un fichier.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
+        <location filename="../UI/UserInterface.py" line="2554"/>
         <source>Import Preferences</source>
         <translation>Importe les préférences</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
+        <location filename="../UI/UserInterface.py" line="2554"/>
         <source>I&amp;mport Preferences...</source>
         <translation>I&amp;mporter les préférences...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2556"/>
+        <location filename="../UI/UserInterface.py" line="2559"/>
         <source>Import a previously exported configuration</source>
         <translation>Importe les préférences d&apos;un fichier précédemment exporté</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2558"/>
+        <location filename="../UI/UserInterface.py" line="2561"/>
         <source>&lt;b&gt;Import Preferences&lt;/b&gt;&lt;p&gt;Import a previously exported configuration.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Importer les préférences&lt;/b&gt;&lt;p&gt;Importe les préférences d&apos;un fichier précédemment exporté.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
+        <location filename="../UI/UserInterface.py" line="2733"/>
         <source>Show next</source>
         <translation>Afficher le suivant</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
+        <location filename="../UI/UserInterface.py" line="2742"/>
         <source>Show previous</source>
         <translation>Afficher le précédent</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>Left Sidebar</source>
         <translation>Barre latérale de gauche</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>&amp;Left Sidebar</source>
         <translation>Barre latérale de &amp;gauche</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1933"/>
+        <location filename="../UI/UserInterface.py" line="1936"/>
         <source>Toggle the left sidebar window</source>
         <translation>Affiche/Masque la barre latérale de gauche</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1934"/>
+        <location filename="../UI/UserInterface.py" line="1937"/>
         <source>&lt;b&gt;Toggle the left sidebar window&lt;/b&gt;&lt;p&gt;If the left sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Affiche/masque la barre latérale de gauche&lt;/b&gt;&lt;p&gt;Affiche ou maque la barre latérale de gauche.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>Bottom Sidebar</source>
         <translation>Barre du bas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>&amp;Bottom Sidebar</source>
         <translation>&amp;Barre du bas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1960"/>
+        <location filename="../UI/UserInterface.py" line="1963"/>
         <source>Toggle the bottom sidebar window</source>
         <translation>Affiche/Masque la barre du bas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1962"/>
+        <location filename="../UI/UserInterface.py" line="1965"/>
         <source>&lt;b&gt;Toggle the bottom sidebar window&lt;/b&gt;&lt;p&gt;If the bottom sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;A/ffiche/Masque la barre du bas&lt;/b&gt;&lt;p&gt;Affiche ou masque la barre du bas&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>&amp;Debug-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
+        <location filename="../UI/UserInterface.py" line="2440"/>
         <source>SQL Browser</source>
         <translation>Navigateur SQL</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
+        <location filename="../UI/UserInterface.py" line="2440"/>
         <source>SQL &amp;Browser...</source>
         <translation>&amp;Navigateur SQL...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2442"/>
+        <location filename="../UI/UserInterface.py" line="2445"/>
         <source>Browse a SQL database</source>
         <translation>Parcourir une base de données SQL</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2443"/>
+        <location filename="../UI/UserInterface.py" line="2446"/>
         <source>&lt;b&gt;SQL Browser&lt;/b&gt;&lt;p&gt;Browse a SQL database.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Navigateur SQL&lt;/b&gt;&lt;p&gt;Parcourir une base de données SQL.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
+        <location filename="../UI/UserInterface.py" line="2495"/>
         <source>Icon Editor</source>
         <translation>Éditeur d&apos;icone</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
+        <location filename="../UI/UserInterface.py" line="2495"/>
         <source>&amp;Icon Editor...</source>
         <translation>Éditeur d&apos;&amp;icone...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1602"/>
+        <location filename="../UI/UserInterface.py" line="1605"/>
         <source>{0} - Passive Mode</source>
         <translation>{0} - Mode passif</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1609"/>
+        <location filename="../UI/UserInterface.py" line="1612"/>
         <source>{0} - {1} - Passive Mode</source>
         <translation>{0} - {1} - Mode Passif</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1613"/>
+        <location filename="../UI/UserInterface.py" line="1616"/>
         <source>{0} - {1} - {2} - Passive Mode</source>
         <translation>{0} - {1} - {2} - Mode Passif</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3640"/>
+        <location filename="../UI/UserInterface.py" line="3643"/>
         <source>External Tools/{0}</source>
         <translation>Outils externe/{0}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not exist or is zero length.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Le fichier &lt;b&gt;{0}&lt;/b&gt; n&apos;existe pas ou est de longeur nulle.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5066"/>
+        <location filename="../UI/UserInterface.py" line="5069"/>
         <source>&lt;p&gt;Could not start Qt-Designer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Ne peut lancer Qt-Designer.&lt;br&gt;Vérifier qu&apos;il est disponible en tant que &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5136"/>
+        <location filename="../UI/UserInterface.py" line="5139"/>
         <source>&lt;p&gt;Could not start Qt-Linguist.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Ne peut lancer Qt-Linguist.&lt;br&gt;Vérifier qu&apos;il est disponible en tant que &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5180"/>
+        <location filename="../UI/UserInterface.py" line="5183"/>
         <source>&lt;p&gt;Could not start Qt-Assistant.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Ne peut lancer Qt-Assistant.&lt;br&gt;Vérifier qu&apos;il est disponible en tant que &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5227"/>
+        <location filename="../UI/UserInterface.py" line="5230"/>
         <source>&lt;p&gt;Could not start custom viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5297"/>
+        <location filename="../UI/UserInterface.py" line="5300"/>
         <source>&lt;p&gt;Could not start UI Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5354"/>
+        <location filename="../UI/UserInterface.py" line="5357"/>
         <source>&lt;p&gt;Could not start Translation Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5377"/>
+        <location filename="../UI/UserInterface.py" line="5380"/>
         <source>&lt;p&gt;Could not start SQL Browser.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Ne peut lancer le navigateur SQL.&lt;br&gt;Vérifier qu&apos;il est disponible en tant que &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5472"/>
+        <location filename="../UI/UserInterface.py" line="5488"/>
         <source>No tool entry found for external tool &apos;{0}&apos; in tool group &apos;{1}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
+        <location filename="../UI/UserInterface.py" line="5497"/>
         <source>No toolgroup entry &apos;{0}&apos; found.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5520"/>
+        <location filename="../UI/UserInterface.py" line="5536"/>
         <source>Starting process &apos;{0} {1}&apos;.
 </source>
         <translation>Démarrage du processus &apos;{0} {1}&apos;.
 </translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5536"/>
+        <location filename="../UI/UserInterface.py" line="5552"/>
         <source>&lt;p&gt;Could not start the tool entry &lt;b&gt;{0}&lt;/b&gt;.&lt;br&gt;Ensure that it is available as &lt;b&gt;{1}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5614"/>
+        <location filename="../UI/UserInterface.py" line="5630"/>
         <source>Process &apos;{0}&apos; has exited.
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>&lt;p&gt;The documentation starting point &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; could not be found.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80743,62 +80887,62 @@
         <translation type="obsolete">&lt;p&gt;Le fichier tâche &lt;b&gt;{0}&lt;/b&gt; ne peut être écrit.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Le fichier tâche &lt;b&gt;{0}&lt;/b&gt; ne peut être lu.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6550"/>
+        <location filename="../UI/UserInterface.py" line="6566"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Le fichier de session &lt;b&gt;{0}&lt;/b&gt; ne peut être écrit.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Le fichier de session &lt;b&gt;{0}&lt;/b&gt; ne peut être lu.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; is not a file.&lt;/p&gt;</source>
         <translation>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; n&apos;est pas un fichier.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7059"/>
+        <location filename="../UI/UserInterface.py" line="7086"/>
         <source>Trying host {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1124"/>
+        <location filename="../UI/UserInterface.py" line="1127"/>
         <source>Cooperation</source>
         <translation>Coopération</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Alt+Shift+O</source>
         <translation>Alt+Shift+O</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1180"/>
+        <location filename="../UI/UserInterface.py" line="1183"/>
         <source>Symbols</source>
         <translation>Symboles</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Alt+Shift+Y</source>
         <translation>Alt+Shift+Y</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1189"/>
+        <location filename="../UI/UserInterface.py" line="1192"/>
         <source>Numbers</source>
         <translation>Nombres</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Alt+Shift+B</source>
         <translation>Alt+Shift+B</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2931"/>
+        <location filename="../UI/UserInterface.py" line="2934"/>
         <source>Python 3 Documentation</source>
         <translation>Documentation Python 3</translation>
     </message>
@@ -80808,398 +80952,398 @@
         <translation type="obsolete">Documentation Python &amp;3</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2935"/>
+        <location filename="../UI/UserInterface.py" line="2938"/>
         <source>Open Python 3 Documentation</source>
         <translation>Ouvrir la Documentation Python 3</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>Error getting versions information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7111"/>
+        <location filename="../UI/UserInterface.py" line="7138"/>
         <source>The versions information could not be downloaded. Please go online and try again.</source>
         <translation>Les informations de versions ne peuvent être téléchargées. Veuillez aller en ligne et réessayer.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>The versions information could not be downloaded for the last 7 days. Please go online and try again.</source>
         <translation>Les informations de versions ne peuvent être téléchargées depuis 7 jours. Veuillez aller en ligne et réessayer.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="692"/>
+        <location filename="../UI/UserInterface.py" line="695"/>
         <source>Setting View Profile...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="705"/>
+        <location filename="../UI/UserInterface.py" line="708"/>
         <source>Reading Tasks...</source>
         <translation>Lecture en cours des tâches...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="710"/>
+        <location filename="../UI/UserInterface.py" line="713"/>
         <source>Reading Templates...</source>
         <translation>Lecture en cours des gabarits...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="715"/>
+        <location filename="../UI/UserInterface.py" line="718"/>
         <source>Starting Debugger...</source>
         <translation>Démarrage du débuggeur...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New Window</source>
         <translation>Nouvelle fenêtre</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New &amp;Window</source>
         <translation>&amp;Nouvelle fenêtre</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>Ctrl+Shift+N</source>
         <comment>File|New Window</comment>
         <translation>Ctrl+Shift+N</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Unittest Rerun Failed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Rerun Failed Tests...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2289"/>
+        <location filename="../UI/UserInterface.py" line="2292"/>
         <source>Rerun failed tests of the last run</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2291"/>
+        <location filename="../UI/UserInterface.py" line="2294"/>
         <source>&lt;b&gt;Rerun Failed Tests&lt;/b&gt;&lt;p&gt;Rerun all tests that failed during the last unittest run.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
+        <location filename="../UI/UserInterface.py" line="2426"/>
         <source>Compare &amp;Files side by side...</source>
         <translation>Comparer des &amp;fichiers côte à côte...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>Snapshot</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>&amp;Snapshot...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2511"/>
+        <location filename="../UI/UserInterface.py" line="2514"/>
         <source>Take snapshots of a screen region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2513"/>
+        <location filename="../UI/UserInterface.py" line="2516"/>
         <source>&lt;b&gt;Snapshot&lt;/b&gt;&lt;p&gt;This opens a dialog to take snapshots of a screen region.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5449"/>
+        <location filename="../UI/UserInterface.py" line="5465"/>
         <source>&lt;p&gt;Could not start Snapshot tool.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7324"/>
+        <location filename="../UI/UserInterface.py" line="7351"/>
         <source>Select Workspace Directory</source>
         <translation>Sélectionner le répertoire de travail</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
+        <location filename="../UI/UserInterface.py" line="1893"/>
         <source>Left Toolbox</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>Right Toolbox</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>IRC</source>
         <translation>IRC</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1754"/>
+        <location filename="../UI/UserInterface.py" line="1757"/>
         <source>Switch the input focus to the Project-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1756"/>
+        <location filename="../UI/UserInterface.py" line="1759"/>
         <source>&lt;b&gt;Activate Project-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Project-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1771"/>
+        <location filename="../UI/UserInterface.py" line="1774"/>
         <source>Switch the input focus to the Multiproject-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1773"/>
+        <location filename="../UI/UserInterface.py" line="1776"/>
         <source>&lt;b&gt;Activate Multiproject-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Multiproject-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1789"/>
+        <location filename="../UI/UserInterface.py" line="1792"/>
         <source>Switch the input focus to the Debug-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1791"/>
+        <location filename="../UI/UserInterface.py" line="1794"/>
         <source>&lt;b&gt;Activate Debug-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Debug-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1807"/>
+        <location filename="../UI/UserInterface.py" line="1810"/>
         <source>Switch the input focus to the Shell window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1809"/>
+        <location filename="../UI/UserInterface.py" line="1812"/>
         <source>&lt;b&gt;Activate Shell&lt;/b&gt;&lt;p&gt;This switches the input focus to the Shell window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>&amp;File-Browser</source>
         <translation>Navigateur de &amp;fichier</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1824"/>
+        <location filename="../UI/UserInterface.py" line="1827"/>
         <source>Switch the input focus to the File-Browser window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1826"/>
+        <location filename="../UI/UserInterface.py" line="1829"/>
         <source>&lt;b&gt;Activate File-Browser&lt;/b&gt;&lt;p&gt;This switches the input focus to the File-Browser window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Lo&amp;g-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1841"/>
+        <location filename="../UI/UserInterface.py" line="1844"/>
         <source>Switch the input focus to the Log-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1843"/>
+        <location filename="../UI/UserInterface.py" line="1846"/>
         <source>&lt;b&gt;Activate Log-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Log-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>&amp;Task-Viewer</source>
         <translation>Visionneur de &amp;tâches</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1859"/>
+        <location filename="../UI/UserInterface.py" line="1862"/>
         <source>Switch the input focus to the Task-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1861"/>
+        <location filename="../UI/UserInterface.py" line="1864"/>
         <source>&lt;b&gt;Activate Task-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Task-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Templ&amp;ate-Viewer</source>
         <translation>Visionneur de g&amp;abarits</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1878"/>
+        <location filename="../UI/UserInterface.py" line="1881"/>
         <source>Switch the input focus to the Template-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1880"/>
+        <location filename="../UI/UserInterface.py" line="1883"/>
         <source>&lt;b&gt;Activate Template-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Template-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
-        <source>&amp;Left Toolbox</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="1893"/>
+        <source>&amp;Left Toolbox</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1896"/>
         <source>Toggle the Left Toolbox window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1894"/>
+        <location filename="../UI/UserInterface.py" line="1897"/>
         <source>&lt;b&gt;Toggle the Left Toolbox window&lt;/b&gt;&lt;p&gt;If the Left Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>&amp;Right Toolbox</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1906"/>
+        <location filename="../UI/UserInterface.py" line="1909"/>
         <source>Toggle the Right Toolbox window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1907"/>
+        <location filename="../UI/UserInterface.py" line="1910"/>
         <source>&lt;b&gt;Toggle the Right Toolbox window&lt;/b&gt;&lt;p&gt;If the Right Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>Right Sidebar</source>
         <translation type="unfinished">Barre latérale de droite</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>&amp;Right Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1946"/>
+        <location filename="../UI/UserInterface.py" line="1949"/>
         <source>Toggle the right sidebar window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1948"/>
+        <location filename="../UI/UserInterface.py" line="1951"/>
         <source>&lt;b&gt;Toggle the right sidebar window&lt;/b&gt;&lt;p&gt;If the right sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Cooperation-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Co&amp;operation-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1977"/>
+        <location filename="../UI/UserInterface.py" line="1980"/>
         <source>Switch the input focus to the Cooperation-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1979"/>
+        <location filename="../UI/UserInterface.py" line="1982"/>
         <source>&lt;b&gt;Activate Cooperation-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Cooperation-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>&amp;IRC</source>
         <translation>&amp;IRC</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1996"/>
+        <location filename="../UI/UserInterface.py" line="1999"/>
         <source>Switch the input focus to the IRC window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1998"/>
+        <location filename="../UI/UserInterface.py" line="2001"/>
         <source>&lt;b&gt;Activate IRC&lt;/b&gt;&lt;p&gt;This switches the input focus to the IRC window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Symbols-Viewer</source>
         <translation>Visionneur de symbole</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>S&amp;ymbols-Viewer</source>
         <translation>Visionneur de s&amp;ymbole</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2014"/>
+        <location filename="../UI/UserInterface.py" line="2017"/>
         <source>Switch the input focus to the Symbols-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2016"/>
+        <location filename="../UI/UserInterface.py" line="2019"/>
         <source>&lt;b&gt;Activate Symbols-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Symbols-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Numbers-Viewer</source>
         <translation>Visionneur de nombres</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Num&amp;bers-Viewer</source>
         <translation>Visionneur de nom&amp;bres</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2033"/>
+        <location filename="../UI/UserInterface.py" line="2036"/>
         <source>Switch the input focus to the Numbers-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2035"/>
+        <location filename="../UI/UserInterface.py" line="2038"/>
         <source>&lt;b&gt;Activate Numbers-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Numbers-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-Designer</source>
         <translation>Qt-Designer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-&amp;Designer...</source>
         <translation>Qt-&amp;Designer...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2347"/>
+        <location filename="../UI/UserInterface.py" line="2350"/>
         <source>Start Qt-Designer</source>
         <translation>Démarrer Qt-Designer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2348"/>
+        <location filename="../UI/UserInterface.py" line="2351"/>
         <source>&lt;b&gt;Qt-Designer&lt;/b&gt;&lt;p&gt;Start Qt-Designer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Qt-Designer&lt;/b&gt;&lt;p&gt;Démarrer Qt-Designer.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-Linguist</source>
         <translation>Qt-Linguist</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-&amp;Linguist...</source>
         <translation>Qt-&amp;Linguist...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2373"/>
+        <location filename="../UI/UserInterface.py" line="2376"/>
         <source>Start Qt-Linguist</source>
         <translation>Démarrer Qt-Linguist</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2374"/>
+        <location filename="../UI/UserInterface.py" line="2377"/>
         <source>&lt;b&gt;Qt-Linguist&lt;/b&gt;&lt;p&gt;Start Qt-Linguist.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Qt-Linguist&lt;/b&gt;&lt;p&gt;Démarrer Qt-Linguist.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2862"/>
+        <location filename="../UI/UserInterface.py" line="2865"/>
         <source>Qt5 Documentation</source>
         <translation>Documentation Qt5</translation>
     </message>
@@ -81209,57 +81353,57 @@
         <translation type="obsolete">Documentation Qt&amp;5</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2866"/>
+        <location filename="../UI/UserInterface.py" line="2869"/>
         <source>Open Qt5 Documentation</source>
         <translation>Lance la Documentation Qt5</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3225"/>
+        <location filename="../UI/UserInterface.py" line="3228"/>
         <source>&amp;Windows</source>
         <translation>&amp;Fenêtres</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates</source>
         <translation>Gestion des certificats SSL</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates...</source>
         <translation>Gestion des certificats SSL...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2675"/>
+        <location filename="../UI/UserInterface.py" line="2678"/>
         <source>Manage the saved SSL certificates</source>
         <translation>Gestion des certificats SSL enregistrés</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2677"/>
+        <location filename="../UI/UserInterface.py" line="2680"/>
         <source>&lt;b&gt;Manage SSL Certificates...&lt;/b&gt;&lt;p&gt;Opens a dialog to manage the saved SSL certificates.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters</source>
         <translation>Éditer les filtres de message</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters...</source>
         <translation>Éditer les filtres de message...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2691"/>
+        <location filename="../UI/UserInterface.py" line="2694"/>
         <source>Edit the message filters used to suppress unwanted messages</source>
         <translation type="unfinished">Éditer les filtres de message utilisés pour supprimer les messages indésirés</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2693"/>
+        <location filename="../UI/UserInterface.py" line="2696"/>
         <source>&lt;b&gt;Edit Message Filters&lt;/b&gt;&lt;p&gt;Opens a dialog to edit the message filters used to suppress unwanted messages been shown in an error window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2892"/>
+        <location filename="../UI/UserInterface.py" line="2895"/>
         <source>PyQt5 Documentation</source>
         <translation>Documentation PyQt5</translation>
     </message>
@@ -81269,7 +81413,7 @@
         <translation type="obsolete">Documentation PyQt&amp;5</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2896"/>
+        <location filename="../UI/UserInterface.py" line="2899"/>
         <source>Open PyQt5 Documentation</source>
         <translation>Lance la documentation PyQt5</translation>
     </message>
@@ -81279,32 +81423,32 @@
         <translation type="obsolete">&lt;p&gt;L&apos;emplacement de la documentation PyQt5 n&apos;a pas été configuré.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2937"/>
+        <location filename="../UI/UserInterface.py" line="2940"/>
         <source>&lt;b&gt;Python 3 Documentation&lt;/b&gt;&lt;p&gt;Display the Python 3 documentation. If no documentation directory is configured, the location of the Python 3 documentation is assumed to be the doc directory underneath the location of the Python 3 executable on Windows and &lt;i&gt;/usr/share/doc/packages/python/html&lt;/i&gt; on Unix. Set PYTHON3DOCDIR in your environment to override this.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>%v/%m</source>
         <translation>%v/%m</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2207"/>
+        <location filename="../UI/UserInterface.py" line="2210"/>
         <source>Show Error Log</source>
         <translation>Montrer l&apos;historique d&apos;erreur</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2203"/>
+        <location filename="../UI/UserInterface.py" line="2206"/>
         <source>Show Error &amp;Log...</source>
         <translation>Montrer &amp;l&apos;historique d&apos;erreur...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2208"/>
+        <location filename="../UI/UserInterface.py" line="2211"/>
         <source>&lt;b&gt;Show Error Log...&lt;/b&gt;&lt;p&gt;Opens a dialog showing the most recent error log.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Montrer l&apos;historique d&apos;erreur...&lt;/b&gt;&lt;p&gt;Ouvre une fenêtre avec les messages d&apos;erreur les plus récents.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7054"/>
+        <location filename="../UI/UserInterface.py" line="7081"/>
         <source>Version Check</source>
         <translation type="unfinished"></translation>
     </message>
@@ -81389,17 +81533,17 @@
         <translation type="obsolete">eric6 n&apos;a pas encore été configuré. La fenêtre de configuration va être ouverte.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="669"/>
+        <location filename="../UI/UserInterface.py" line="672"/>
         <source>Generating Plugins Toolbars...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4182"/>
+        <location filename="../UI/UserInterface.py" line="4185"/>
         <source>&amp;User Tools</source>
         <translation>Outils &amp;utilisateurs</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4252"/>
+        <location filename="../UI/UserInterface.py" line="4255"/>
         <source>No User Tools Configured</source>
         <translation>Pas d&apos;outils utilisateurs configuré</translation>
     </message>
@@ -81409,12 +81553,12 @@
         <translation type="obsolete">Les informations de versions ne peuvent être téléchargés car vous êtes &lt;b&gt;hors ligne&lt;/b&gt;. Veuillez aller en ligne et réessayer.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
+        <location filename="../UI/UserInterface.py" line="2466"/>
         <source>Hex Editor</source>
         <translation>Hex Editor</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
+        <location filename="../UI/UserInterface.py" line="2466"/>
         <source>&amp;Hex Editor...</source>
         <translation>&amp;Hex Editor...</translation>
     </message>
@@ -81429,87 +81573,87 @@
         <translation type="obsolete">&lt;b&gt;Hex Editor&lt;/b&gt;&lt;p&gt;Démarre l&apos;Hex Editor d&apos;eric6 pour voir et modifier des fichiers binaires.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2709"/>
+        <location filename="../UI/UserInterface.py" line="2712"/>
         <source>Clear private data</source>
         <translation>Nettoyer les données privées</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2711"/>
+        <location filename="../UI/UserInterface.py" line="2714"/>
         <source>&lt;b&gt;Clear private data&lt;/b&gt;&lt;p&gt;Clears the private data like the various list of recently opened files, projects or multi projects.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1669"/>
+        <location filename="../UI/UserInterface.py" line="1672"/>
         <source>Save session...</source>
         <translation>Enregistrer session...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1674"/>
+        <location filename="../UI/UserInterface.py" line="1677"/>
         <source>&lt;b&gt;Save session...&lt;/b&gt;&lt;p&gt;This saves the current session to disk. A dialog is opened to select the file name.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Enregistrer session...&lt;/b&gt;&lt;p&gt;Ceci enregistre la session sur le disque. Une fenêtre s&apos;ouvre pour sélectionner le nom de fichier.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>Load session</source>
         <translation>Charger la session</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1682"/>
+        <location filename="../UI/UserInterface.py" line="1685"/>
         <source>Load session...</source>
         <translation>Charger la session...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1687"/>
+        <location filename="../UI/UserInterface.py" line="1690"/>
         <source>&lt;b&gt;Load session...&lt;/b&gt;&lt;p&gt;This loads a session saved to disk previously. A dialog is opened to select the file name.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Charger session...&lt;/b&gt;&lt;p&gt;Ceci charge une session enregistrée sur le disque auparant. Une fenêtre s&apos;ouvre pour sélectionner le fichier.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
+        <location filename="../UI/UserInterface.py" line="6710"/>
         <source>Crash Session found!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
+        <location filename="../UI/UserInterface.py" line="6710"/>
         <source>A session file of a crashed session was found. Shall this session be restored?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="672"/>
+        <location filename="../UI/UserInterface.py" line="675"/>
         <source>Cleaning Plugins Download Area...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="664"/>
+        <location filename="../UI/UserInterface.py" line="667"/>
         <source>Initializing Plugins...</source>
         <translation>Initialisation en cours des plugins...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>Update Check</source>
         <translation>Vérification de mise à jour</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>You installed eric directly from the source code. There is no possibility to check for the availability of an update.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Code Documentation Viewer</source>
         <translation type="unfinished">Visionneur de documentation du code</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2867"/>
+        <location filename="../UI/UserInterface.py" line="2870"/>
         <source>&lt;b&gt;Qt5 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2898"/>
+        <location filename="../UI/UserInterface.py" line="2901"/>
         <source>&lt;b&gt;PyQt5 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2974"/>
+        <location filename="../UI/UserInterface.py" line="2977"/>
         <source>PySide2 Documentation</source>
         <translation>Documentation PySide2</translation>
     </message>
@@ -81519,93 +81663,93 @@
         <translation type="obsolete">Documentation PySide&amp;2</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2978"/>
+        <location filename="../UI/UserInterface.py" line="2981"/>
         <source>Open PySide2 Documentation</source>
         <translation>Ouvrir la Documentation PySide2</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2980"/>
+        <location filename="../UI/UserInterface.py" line="2983"/>
         <source>&lt;b&gt;PySide2 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide2 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>&lt;p&gt;The PySide{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2817"/>
+        <location filename="../UI/UserInterface.py" line="2820"/>
         <source>Virtualenv Manager</source>
         <translation>Gestionnaire Virtualenv</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2811"/>
+        <location filename="../UI/UserInterface.py" line="2814"/>
         <source>&amp;Virtualenv Manager...</source>
         <translation>Gestionnaire &amp;Virtualenv...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2819"/>
+        <location filename="../UI/UserInterface.py" line="2822"/>
         <source>&lt;b&gt;Virtualenv Manager&lt;/b&gt;&lt;p&gt;This opens a dialog to manage the defined Python virtual environments.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Gestionnaire Virtualenv&lt;/b&gt;&lt;p&gt;Ceci ouvre une fenêtre pour gérer les environnement virtuels Python définis.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2834"/>
+        <location filename="../UI/UserInterface.py" line="2837"/>
         <source>Virtualenv Configurator</source>
         <translation>Configurateur Virtualenv</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2828"/>
+        <location filename="../UI/UserInterface.py" line="2831"/>
         <source>Virtualenv &amp;Configurator...</source>
         <translation>&amp;Configurateur Virtualenv...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2836"/>
+        <location filename="../UI/UserInterface.py" line="2839"/>
         <source>&lt;b&gt;Virtualenv Configurator&lt;/b&gt;&lt;p&gt;This opens a dialog for entering all the parameters needed to create a Python virtual environment using virtualenv or pyvenv.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3232"/>
+        <location filename="../UI/UserInterface.py" line="3235"/>
         <source>Left Side</source>
         <translation>Coté gauche</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3244"/>
+        <location filename="../UI/UserInterface.py" line="3247"/>
         <source>Bottom Side</source>
         <translation>Coté bas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3251"/>
+        <location filename="../UI/UserInterface.py" line="3254"/>
         <source>Right Side</source>
         <translation>Coté droit</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3271"/>
+        <location filename="../UI/UserInterface.py" line="3274"/>
         <source>Plug-ins</source>
         <translation>Plugins</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Restart</source>
         <translation>Redémarrer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Ctrl+Shift+Q</source>
         <comment>File|Quit</comment>
         <translation>Ctrl+Shift+Q</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1659"/>
+        <location filename="../UI/UserInterface.py" line="1662"/>
         <source>Restart the IDE</source>
         <translation>Rédémarrer l&apos;IDE</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1660"/>
+        <location filename="../UI/UserInterface.py" line="1663"/>
         <source>&lt;b&gt;Restart the IDE&lt;/b&gt;&lt;p&gt;This restarts the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>Start Web Browser</source>
         <translation>Démarrer le navigateur web</translation>
     </message>
@@ -81620,327 +81764,327 @@
         <translation type="obsolete">&lt;p&gt;Le navigateur web eric6 n&apos;est pas démarré.&lt;/p&gt;&lt;p&gt;Raison : {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Conda</source>
         <translation>Conda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>PyPI</source>
         <translation>PyPI</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3580"/>
+        <location filename="../UI/UserInterface.py" line="3583"/>
         <source>&lt;p&gt;This part of the status bar allows zooming the current editor or shell.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Cette zone de la barre d&apos;état permet de zoomer l&apos;éditeur courant ou le shell.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>MicroPython</source>
         <translation>MicroPython</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>Ctrl+Alt+Shift+I</source>
         <translation>Ctrl+Alt+Shift+I</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Ctrl+Alt+Shift+D</source>
         <translation>Ctrl+Alt+Shift+D</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2052"/>
-        <source>Switch the input focus to the Code Documentation Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="2055"/>
+        <source>Switch the input focus to the Code Documentation Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2058"/>
         <source>&lt;b&gt;Code Documentation Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Code Documentation Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>Ctrl+Alt+Shift+P</source>
         <translation>Ctrl+Alt+Shift+P</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2072"/>
+        <location filename="../UI/UserInterface.py" line="2075"/>
         <source>Switch the input focus to the PyPI window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2074"/>
+        <location filename="../UI/UserInterface.py" line="2077"/>
         <source>&lt;b&gt;PyPI&lt;/b&gt;&lt;p&gt;This switches the input focus to the PyPI window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Ctrl+Alt+Shift+C</source>
         <translation>Ctrl+Alt+Shift+C</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2090"/>
+        <location filename="../UI/UserInterface.py" line="2093"/>
         <source>Switch the input focus to the Conda window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2092"/>
+        <location filename="../UI/UserInterface.py" line="2095"/>
         <source>&lt;b&gt;Conda&lt;/b&gt;&lt;p&gt;This switches the input focus to the Conda window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>Ctrl+Alt+Shift+M</source>
         <translation>Ctrl+Alt+Shift+M</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2108"/>
+        <location filename="../UI/UserInterface.py" line="2111"/>
         <source>Switch the input focus to the MicroPython window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2110"/>
+        <location filename="../UI/UserInterface.py" line="2113"/>
         <source>&lt;b&gt;MicroPython&lt;/b&gt;&lt;p&gt;This switches the input focus to the MicroPython window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3229"/>
+        <location filename="../UI/UserInterface.py" line="3232"/>
         <source>Central Park</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3746"/>
+        <location filename="../UI/UserInterface.py" line="3749"/>
         <source>&lt;h2&gt;Version Numbers&lt;/h2&gt;&lt;table&gt;</source>
         <translation>&lt;h2&gt;Numéros de version&lt;/h2&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5075"/>
+        <location filename="../UI/UserInterface.py" line="5078"/>
         <source>&lt;p&gt;Could not find the Qt-Designer executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5145"/>
+        <location filename="../UI/UserInterface.py" line="5148"/>
         <source>&lt;p&gt;Could not find the Qt-Linguist executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5189"/>
+        <location filename="../UI/UserInterface.py" line="5192"/>
         <source>&lt;p&gt;Could not find the Qt-Assistant executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install Info</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install &amp;Info...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2219"/>
+        <location filename="../UI/UserInterface.py" line="2222"/>
         <source>Show Installation Information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2221"/>
+        <location filename="../UI/UserInterface.py" line="2224"/>
         <source>&lt;b&gt;Show Install Info...&lt;/b&gt;&lt;p&gt;Opens a dialog showing some information about the installation process.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2877"/>
+        <location filename="../UI/UserInterface.py" line="2880"/>
         <source>Qt6 Documentation</source>
         <translation type="unfinished">Documentation Qt5 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2881"/>
+        <location filename="../UI/UserInterface.py" line="2884"/>
         <source>Open Qt6 Documentation</source>
         <translation type="unfinished">Lance la Documentation Qt5 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2882"/>
+        <location filename="../UI/UserInterface.py" line="2885"/>
         <source>&lt;b&gt;Qt6 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2909"/>
+        <location filename="../UI/UserInterface.py" line="2912"/>
         <source>PyQt6 Documentation</source>
         <translation type="unfinished">Documentation PyQt5 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2913"/>
+        <location filename="../UI/UserInterface.py" line="2916"/>
         <source>Open PyQt6 Documentation</source>
         <translation type="unfinished">Lance la documentation PyQt5 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2915"/>
+        <location filename="../UI/UserInterface.py" line="2918"/>
         <source>&lt;b&gt;PyQt6 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2994"/>
+        <location filename="../UI/UserInterface.py" line="2997"/>
         <source>PySide6 Documentation</source>
         <translation type="unfinished">Documentation PySide2 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2998"/>
+        <location filename="../UI/UserInterface.py" line="3001"/>
         <source>Open PySide6 Documentation</source>
         <translation type="unfinished">Ouvrir la Documentation PySide2 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3000"/>
+        <location filename="../UI/UserInterface.py" line="3003"/>
         <source>&lt;b&gt;PySide6 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5754"/>
+        <location filename="../UI/UserInterface.py" line="5770"/>
         <source>&lt;p&gt;The PyQt{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1701"/>
+        <location filename="../UI/UserInterface.py" line="1704"/>
         <source>Open a new eric instance</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1703"/>
+        <location filename="../UI/UserInterface.py" line="1706"/>
         <source>&lt;b&gt;New Window&lt;/b&gt;&lt;p&gt;This opens a new instance of the eric IDE.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2146"/>
+        <location filename="../UI/UserInterface.py" line="2149"/>
         <source>&lt;b&gt;Helpviewer&lt;/b&gt;&lt;p&gt;Display the eric web browser. This window will show HTML help files and help from Qt help collections. It has the capability to navigate to links, set bookmarks, print the displayed help and some more features. You may use it to browse the internet as well&lt;/p&gt;&lt;p&gt;If called with a word selected, this word is search in the Qt help collection.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2181"/>
+        <location filename="../UI/UserInterface.py" line="2184"/>
         <source>&lt;b&gt;Check for Updates...&lt;/b&gt;&lt;p&gt;Checks the internet for updates of eric.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2194"/>
+        <location filename="../UI/UserInterface.py" line="2197"/>
         <source>&lt;b&gt;Show downloadable versions...&lt;/b&gt;&lt;p&gt;Shows the eric versions available for download from the internet.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2468"/>
+        <location filename="../UI/UserInterface.py" line="2471"/>
         <source>Start the eric Hex Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2470"/>
+        <location filename="../UI/UserInterface.py" line="2473"/>
         <source>&lt;b&gt;Hex Editor&lt;/b&gt;&lt;p&gt;Starts the eric Hex Editor for viewing or editing binary files.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric &amp;Web Browser...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2483"/>
+        <location filename="../UI/UserInterface.py" line="2486"/>
         <source>Start the eric Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2485"/>
+        <location filename="../UI/UserInterface.py" line="2488"/>
         <source>&lt;b&gt;eric Web Browser&lt;/b&gt;&lt;p&gt;Browse the Internet with the eric Web Browser.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2497"/>
+        <location filename="../UI/UserInterface.py" line="2500"/>
         <source>Start the eric Icon Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2499"/>
+        <location filename="../UI/UserInterface.py" line="2502"/>
         <source>&lt;b&gt;Icon Editor&lt;/b&gt;&lt;p&gt;Starts the eric Icon Editor for editing simple icons.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2585"/>
+        <location filename="../UI/UserInterface.py" line="2588"/>
         <source>&lt;b&gt;Show external tools&lt;/b&gt;&lt;p&gt;Opens a dialog to show the path and versions of all extenal tools used by eric.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2959"/>
+        <location filename="../UI/UserInterface.py" line="2962"/>
         <source>&lt;b&gt;Eric API Documentation&lt;/b&gt;&lt;p&gt;Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric installation directory.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5972"/>
+        <location filename="../UI/UserInterface.py" line="5988"/>
         <source>The eric web browser could not be started.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>&lt;p&gt;The eric web browser is not started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>The update to &lt;b&gt;{0}&lt;/b&gt; of eric is available at &lt;b&gt;{1}&lt;/b&gt;. Would you like to get it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7188"/>
+        <location filename="../UI/UserInterface.py" line="7215"/>
         <source>You are using a snapshot release of eric. A more up-to-date stable release might be available.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>eric is up to date</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>You are using the latest version of eric</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>eric has not been configured yet. The configuration dialog will be started.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6290"/>
+        <location filename="../UI/UserInterface.py" line="6306"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard Shortcuts File (*.e4k)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>&lt;p&gt;The keyboard shortcuts file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard shortcut file (*.e4k)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>Read Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6621"/>
+        <location filename="../UI/UserInterface.py" line="6637"/>
         <source>Save Session</source>
         <translation type="unfinished">Enregistrer la session</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6578"/>
+        <location filename="../UI/UserInterface.py" line="6594"/>
         <source>Read Session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>eric Session Files (*.esj);;eric XML Session Files (*.e5s)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -82020,7 +82164,7 @@
 <context>
     <name>Utilities</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="1420"/>
+        <location filename="../Utilities/__init__.py" line="1421"/>
         <source>&lt;p&gt;You may use %-codes as placeholders in the string. Supported codes are:&lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;column of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;directory of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;filename of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;home directory of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;line of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;path of the current project&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;selected text of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;username of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;the percent sign&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</source>
         <translation>&lt;p&gt;Vous pouvez utiliser la syntaxe &quot;%-code&quot; dans la chaine de caractères. Les codes supportés sont :&lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;colonne du curseur de l&apos;éditeur courant&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;répertoire de l&apos;éditeur courant&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;nom de fichier de l&apos;éditeur courant&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;répertoire &apos;home&apos; de l&apos;utilisateur courant&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;ligne du curseur de l&apos;éditeur courant&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;chemin du projet courant&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;texte sélectionné dans l&apos;éditeur courant&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;nom d&apos;utilisateur de l&apos;utilisateur courant&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;le signe pourcent&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</translation>
     </message>
@@ -82662,12 +82806,12 @@
 <context>
     <name>VcsMercurialPlugin</name>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="58"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="54"/>
         <source>Version Control - Mercurial</source>
         <translation>Version de contrôle - Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="132"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="124"/>
         <source>Mercurial</source>
         <translation>Mercurial</translation>
     </message>
@@ -84565,17 +84709,17 @@
         <translation>Fichier Modifié</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5217"/>
+        <location filename="../ViewManager/ViewManager.py" line="5230"/>
         <source>&amp;Clear</source>
         <translation>&amp;Effacer</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5211"/>
+        <location filename="../ViewManager/ViewManager.py" line="5224"/>
         <source>&amp;Add</source>
         <translation>&amp;Ajouter</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5214"/>
+        <location filename="../ViewManager/ViewManager.py" line="5227"/>
         <source>&amp;Edit...</source>
         <translation>&amp;Editer...</translation>
     </message>
@@ -85423,12 +85567,12 @@
         <translation>&lt;p&gt;Le fichier &lt;b&gt;{0}&lt;/b&gt; a des modifications non enregistrées. &lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4777"/>
+        <location filename="../ViewManager/ViewManager.py" line="4790"/>
         <source>Line: {0:5}</source>
         <translation>Ligne: {0:5}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4783"/>
+        <location filename="../ViewManager/ViewManager.py" line="4796"/>
         <source>Pos: {0:5}</source>
         <translation>Position: {0:5}</translation>
     </message>
@@ -86130,27 +86274,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>Edit Spelling Dictionary</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6215"/>
+        <location filename="../ViewManager/ViewManager.py" line="6228"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6233"/>
+        <location filename="../ViewManager/ViewManager.py" line="6246"/>
         <source>Editing {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6244"/>
+        <location filename="../ViewManager/ViewManager.py" line="6257"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>The spelling dictionary was saved successfully.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -86176,12 +86320,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4804"/>
+        <location filename="../ViewManager/ViewManager.py" line="4817"/>
         <source>Language: {0}</source>
         <translation>Langage : {0}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4811"/>
+        <location filename="../ViewManager/ViewManager.py" line="4824"/>
         <source>EOL Mode: {0}</source>
         <translation type="unfinished"></translation>
     </message>
--- a/eric6/i18n/eric6_it.ts	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/i18n/eric6_it.ts	Thu Jun 03 11:39:23 2021 +0200
@@ -1287,45 +1287,60 @@
 <context>
     <name>ApplicationDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="43"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="47"/>
         <source>Application Diagram {0}</source>
         <translation>Diagrammi dell&apos;applicazione {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>Parsing modules...</source>
         <translation>Analisi moduli...</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="197"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="252"/>
         <source>&lt;&lt;Application&gt;&gt;</source>
         <translation>&lt;&lt;Applicazione&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="199"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="254"/>
         <source>&lt;&lt;Others&gt;&gt;</source>
         <translation>&lt;&lt;Altri&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>Load Diagram</source>
         <translation>Carico Diagramma</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>&lt;p&gt;The diagram belongs to the project &lt;b&gt;{0}&lt;/b&gt;. Shall this project be opened?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Il Diagramma appartiene al progetto &lt;b&gt;{0}&lt;/b&gt;. Si deve aprire il progetto?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>%v/%m Modules</source>
         <translation>Moduli %v/%m</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="69"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
         <source>Application Diagram</source>
         <translation type="unfinished">Diagrammi dell&apos;applicazione</translation>
     </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="126"/>
+        <source>Select the application directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
+        <source>No application package could be detected. Aborting...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="466"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>ApplicationPage</name>
@@ -1646,47 +1661,47 @@
 <context>
     <name>BackgroundService</name>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="139"/>
+        <location filename="../Utilities/BackgroundService.py" line="142"/>
         <source>{0} not configured.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>Restart background client?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="456"/>
+        <location filename="../Utilities/BackgroundService.py" line="459"/>
         <source>Eric&apos;s background client disconnected because of an unknown reason.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>Background client disconnected.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>&lt;p&gt;The background client for &lt;b&gt;{0}&lt;/b&gt; has stopped due to an exception. It&apos;s used by various plug-ins like the different checkers.&lt;/p&gt;&lt;p&gt;Select&lt;ul&gt;&lt;li&gt;&lt;b&gt;&apos;Yes&apos;&lt;/b&gt; to restart the client, but abort the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Retry&apos;&lt;/b&gt; to restart the client and the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;No&apos;&lt;/b&gt; to leave the client off.&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p&gt;Note: The client can be restarted by opening and accepting the preferences dialog or reloading/changing the project.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>The background client for &lt;b&gt;{0}&lt;/b&gt; disconnected because of an unknown reason.&lt;br&gt;Should it be restarted?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="228"/>
+        <location filename="../Utilities/BackgroundService.py" line="231"/>
         <source>An error in Eric&apos;s background client stopped the service.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>Initialization of Background Service</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>&lt;p&gt;Initialization of Background Service &lt;b&gt;{0}&lt;/b&gt; failed.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2400,42 +2415,42 @@
 <context>
     <name>Browser</name>
     <message>
-        <location filename="../UI/Browser.py" line="284"/>
+        <location filename="../UI/Browser.py" line="286"/>
         <source>Open</source>
         <translation>Apri</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="233"/>
+        <location filename="../UI/Browser.py" line="235"/>
         <source>Run unittest...</source>
         <translation>Esegui unittest...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="94"/>
+        <location filename="../UI/Browser.py" line="96"/>
         <source>File-Browser</source>
         <translation>Browser dei file</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="342"/>
+        <location filename="../UI/Browser.py" line="344"/>
         <source>New toplevel directory...</source>
         <translation>Nuova directory principale...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="301"/>
+        <location filename="../UI/Browser.py" line="303"/>
         <source>Remove from toplevel</source>
         <translation>Rimuovi dal principale</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="298"/>
+        <location filename="../UI/Browser.py" line="300"/>
         <source>Add as toplevel directory</source>
         <translation>Aggiungi come directory principale</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="643"/>
+        <location filename="../UI/Browser.py" line="646"/>
         <source>New toplevel directory</source>
         <translation>Nuova directory principale</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="309"/>
+        <location filename="../UI/Browser.py" line="311"/>
         <source>Find in this directory</source>
         <translation>Trova in questa directory</translation>
     </message>
@@ -2450,182 +2465,182 @@
         <translation type="obsolete">Trova&amp;&amp;Sostituisci in questa directory</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="263"/>
+        <location filename="../UI/Browser.py" line="265"/>
         <source>Open in Icon Editor</source>
         <translation>Apri nell&apos;editor di icone</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="316"/>
+        <location filename="../UI/Browser.py" line="318"/>
         <source>Copy Path to Clipboard</source>
         <translation>Copia il path nella Clipboard</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="305"/>
+        <location filename="../UI/Browser.py" line="307"/>
         <source>Refresh directory</source>
         <translation>Rileggi directory</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="328"/>
+        <location filename="../UI/Browser.py" line="330"/>
         <source>Goto</source>
         <translation>Vai a</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="435"/>
+        <location filename="../UI/Browser.py" line="437"/>
         <source>Line {0}</source>
         <translation>Linea {0}</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="113"/>
+        <location filename="../UI/Browser.py" line="115"/>
         <source>&lt;b&gt;The Browser Window&lt;/b&gt;&lt;p&gt;This allows you to easily navigate the hierarchy of directories and files on your system, identify the Python programs and open them up in a Source Viewer window. The window displays several separate hierarchies.&lt;/p&gt;&lt;p&gt;The first hierarchy is only shown if you have opened a program for debugging and its root is the directory containing that program. Usually all of the separate files that make up a Python application are held in the same directory, so this hierarchy gives you easy access to most of what you will need.&lt;/p&gt;&lt;p&gt;The next hierarchy is used to easily navigate the directories that are specified in the Python &lt;tt&gt;sys.path&lt;/tt&gt; variable.&lt;/p&gt;&lt;p&gt;The remaining hierarchies allow you navigate your system as a whole. On a UNIX system there will be a hierarchy with &lt;tt&gt;/&lt;/tt&gt; at its root and another with the user home directory. On a Windows system there will be a hierarchy for each drive on the system.&lt;/p&gt;&lt;p&gt;Python programs (i.e. those with a &lt;tt&gt;.py&lt;/tt&gt; file name suffix) are identified in the hierarchies with a Python icon. The right mouse button will popup a menu which lets you open the file in a Source Viewer window, open the file for debugging or use it for a unittest run.&lt;/p&gt;&lt;p&gt;The context menu of a class, function or method allows you to open the file defining this class, function or method and will ensure, that the correct source line is visible.&lt;/p&gt;&lt;p&gt;Qt-Designer files (i.e. those with a &lt;tt&gt;.ui&lt;/tt&gt; file name suffix) are shown with a Designer icon. The context menu of these files allows you to start Qt-Designer with that file.&lt;/p&gt;&lt;p&gt;Qt-Linguist files (i.e. those with a &lt;tt&gt;.ts&lt;/tt&gt; file name suffix) are shown with a Linguist icon. The context menu of these files allows you to start Qt-Linguist with that file.&lt;/p&gt;</source>
         <translation>&lt;b&gt;La finestra di navigazione&lt;/b&gt;Questa ti permette di navigare facilmente nella struttura delle directory e dei file sul tuo sistema, identificare i programmi Python e aprirli nella finestra di Visualizzazione dei Sorgenti. La finestra mostra diverse strutture separate.&lt;/p&gt;&lt;p&gt;La prima struttura è mostrata solo se hai aperto un programma da debuggare e la sua radice è la cartella che contiene il programma. Normalmente tutti i file che compongono un&apos;applicazione Python sono contenuti nella stessa cartella, così questa vista permette un accesso veloce a molto di quello che ti serve.&lt;/p&gt;&lt;p&gt;La vista successiva è usata per navigare facilmente nelle cartelle specificate nella variabile Python &lt;tt&gt;sys.path&lt;/tt&gt;.&lt;/p&gt;&lt;p&gt;La vista rimanente permette di navigare in tutto il sistema. Su un sistema UNIX c&apos;è una struttura con &lt;tt&gt;/&lt;/tt&gt; come radice e un&apos;altra con la home dell&apos;utente. Su un sistema Windows c&apos;è una struttura per ogni disco del sistema.&lt;/p&gt;&lt;p&gt;I programmi Python (es. quelli con l&apos;estensione &lt;tt&gt;.py&lt;/tt&gt;) sono identificati nella vista con l&apos;icona di Python. Il pulsante destro del mouse fa apparire un menù che consente di aprire il file nel Visualizzatore dei Sorgenti, aprire il file per il debug o usarlo per uno unittest.&lt;/p&gt;&lt;p&gt;Il menù contestuale di una classe, funzione o metodo consente di aprire il file che la definisce e di posizionarsi sulla riga corretta.&lt;/p&gt;&lt;p&gt;I file di Qt-Designer (es. quelli con estensione &lt;tt&gt;.ui&lt;/tt&gt;) sono mostrati con l&apos;icona del Designer. Il menù contestuale  di questi file consente di avviare Qt-Designer per quel file.&lt;/p&gt;&lt;p&gt;I file di Qt-Linguist (es. quelli con estensione &lt;tt&gt;.ts&lt;/tt&gt;) sono mostrati con l&apos;icona di Linguist. Il menù contestuale di questi file consente di avviare Qt-Linguist per quel file.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>Show Mime-Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="528"/>
+        <location filename="../UI/Browser.py" line="531"/>
         <source>The mime type of the file could not be determined.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="546"/>
+        <location filename="../UI/Browser.py" line="549"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="260"/>
+        <location filename="../UI/Browser.py" line="262"/>
         <source>Open in Hex Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="312"/>
+        <location filename="../UI/Browser.py" line="314"/>
         <source>Find &amp;&amp; Replace in this directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="241"/>
+        <location filename="../UI/Browser.py" line="243"/>
         <source>Refresh Source File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="214"/>
+        <location filename="../UI/Browser.py" line="216"/>
         <source>Show Hidden Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="221"/>
-        <source>New</source>
-        <translation type="unfinished">Nuovo</translation>
-    </message>
-    <message>
         <location filename="../UI/Browser.py" line="223"/>
+        <source>New</source>
+        <translation type="unfinished">Nuovo</translation>
+    </message>
+    <message>
+        <location filename="../UI/Browser.py" line="225"/>
         <source>Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="226"/>
+        <location filename="../UI/Browser.py" line="228"/>
         <source>File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="323"/>
+        <location filename="../UI/Browser.py" line="325"/>
         <source>Delete</source>
         <translation type="unfinished">Cancella</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>New Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="861"/>
+        <location filename="../UI/Browser.py" line="864"/>
         <source>Name for new directory:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="902"/>
+        <location filename="../UI/Browser.py" line="905"/>
         <source>A file or directory named &lt;b&gt;{0}&lt;/b&gt; exists already. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>&lt;p&gt;The directory &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>New File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="894"/>
+        <location filename="../UI/Browser.py" line="897"/>
         <source>Name for new file:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="942"/>
+        <location filename="../UI/Browser.py" line="945"/>
         <source>Do you really want to move this file to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="946"/>
+        <location filename="../UI/Browser.py" line="949"/>
         <source>Do you really want to delete this file?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>Delete File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>&lt;p&gt;The selected file &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="979"/>
+        <location filename="../UI/Browser.py" line="982"/>
         <source>Do you really want to move this directory to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="983"/>
+        <location filename="../UI/Browser.py" line="986"/>
         <source>Do you really want to delete this directory?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>Delete Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>&lt;p&gt;The selected directory &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1023"/>
+        <location filename="../UI/Browser.py" line="1026"/>
         <source>Do you really want to move these files to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1027"/>
+        <location filename="../UI/Browser.py" line="1030"/>
         <source>Do you really want to delete these files?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1032"/>
+        <location filename="../UI/Browser.py" line="1035"/>
         <source>Delete Files</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3222,6 +3237,32 @@
     </message>
 </context>
 <context>
+    <name>ClassItem</name>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="176"/>
+        <source>Class Attributes:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="211"/>
+        <source>none</source>
+        <translation type="unfinished">none</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="191"/>
+        <source>Instance Attributes:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="210"/>
+        <source>Methods:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>ClearPrivateDataDialog</name>
     <message>
         <location filename="../UI/ClearPrivateDataDialog.ui" line="14"/>
@@ -4843,7 +4884,7 @@
 <context>
     <name>CodingError</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="131"/>
+        <location filename="../Utilities/__init__.py" line="132"/>
         <source>The coding &apos;{0}&apos; is wrong for the given text.</source>
         <translation>La codifica &apos;{0}&apos; è errata per questo testo.</translation>
     </message>
@@ -7250,7 +7291,7 @@
 <context>
     <name>DebugUI</name>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1980"/>
+        <location filename="../Debugger/DebugUI.py" line="1981"/>
         <source>Run Script</source>
         <translation>Esegui Script</translation>
     </message>
@@ -7270,7 +7311,7 @@
         <translation>&lt;b&gt;Esegui Script&lt;/b&gt;&lt;p&gt;Imposta gli argomenti della linea di comando ed esegue lo script al di fuori del debugger. Se il file non è stato salvato può essere salvato prima.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>Run Project</source>
         <translation>Esegui Progetto</translation>
     </message>
@@ -7370,7 +7411,7 @@
         <translation>&lt;b&gt;Profila Progetto&lt;/b&gt;&lt;p&gt;Imposta gli argomenti della linea di comando e profila il progetto. Se file del progetto corrente non sono stati salvati, è possibile salvarli prima.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2121"/>
+        <location filename="../Debugger/DebugUI.py" line="2122"/>
         <source>Debug Script</source>
         <translation>Debug dello script</translation>
     </message>
@@ -7390,7 +7431,7 @@
         <translation>&lt;b&gt;Debug dello Script&lt;/b&gt;&lt;p&gt;Imposta gli argomenti della linea di comando e imposta la linea corrente per essere la prima istruzione eseguibile di Python della finestra dell&apos;editor. Se il file ha modifiche non salvate è possibile salvarle prima.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>Debug Project</source>
         <translation>Debug del Progetto</translation>
     </message>
@@ -7610,32 +7651,32 @@
         <translation>Il programma debuggato è terminato in maniera inaspettata.</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1709"/>
+        <location filename="../Debugger/DebugUI.py" line="1710"/>
         <source>Coverage of Project</source>
         <translation>Analisi del Progetto</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1690"/>
+        <location filename="../Debugger/DebugUI.py" line="1691"/>
         <source>Coverage of Script</source>
         <translation>Analisi delle Script</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>There is no main script defined for the current project. Aborting</source>
         <translation>Non c&apos;è uno script principale definito per il progetto. Esco</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1854"/>
+        <location filename="../Debugger/DebugUI.py" line="1855"/>
         <source>Profile of Project</source>
         <translation>Profilazione del progetto</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1835"/>
+        <location filename="../Debugger/DebugUI.py" line="1836"/>
         <source>Profile of Script</source>
         <translation>Profilazione dello script</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>There is no main script defined for the current project. No debugging possible.</source>
         <translation>Non c&apos;è uno script principale per il progetto. Non è possibile il debug.</translation>
     </message>
@@ -7680,7 +7721,7 @@
         <translation>&lt;b&gt;Filtro tipo variabili&lt;/b&gt;&lt;p&gt;Configura il filtro per i tipi variabile. Solo i tipi di variabile che non sono selezionati sono mostrati nella finestra delle variabili globali o locali durante una sessione di debug. &lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>Breakpoint Condition Error</source>
         <translation>Errore condizione di interruzione</translation>
     </message>
@@ -7728,12 +7769,12 @@
         <translation>Ferma lo script in esecuzione.</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>Watch Expression Error</source>
         <translation>Errore espressione di watch</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1540"/>
+        <location filename="../Debugger/DebugUI.py" line="1541"/>
         <source>Watch expression already exists</source>
         <translation>L&apos;espressione di controllo esiste già</translation>
     </message>
@@ -7785,22 +7826,22 @@
         <translation>&lt;p&gt;Il programma debuggato ha sollevato un&apos;eccezione &lt;b&gt;{0}&lt;/b&gt;&lt;br&gt;&quot;&lt;b&gt;{1}&lt;/b&gt;&quot;&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>&lt;p&gt;The condition of the breakpoint &lt;b&gt;{0}, {1}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation>&lt;p&gt;La condizione del breakpoint &lt;b&gt;{0}, {1}&lt;/b&gt; contiene un errore di sintassi.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>&lt;p&gt;The watch expression &lt;b&gt;{0}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation>&lt;p&gt;L&apos;espressione  &lt;b&gt;{0}&lt;/b&gt; contiene un errore di sintassi.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1530"/>
+        <location filename="../Debugger/DebugUI.py" line="1531"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; already exists.&lt;/p&gt;</source>
         <translation>&lt;p&gt;L&apos;espressione &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; esiste già.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1535"/>
+        <location filename="../Debugger/DebugUI.py" line="1536"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; for the variable &lt;b&gt;{1}&lt;/b&gt; already exists.&lt;/p&gt;</source>
         <translation>&lt;p&gt;L&apos;espressione  &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; per la variabile &lt;b&gt;{1}&lt;/b&gt; esiste già.&lt;/p&gt;</translation>
     </message>
@@ -7855,7 +7896,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1418"/>
+        <location filename="../Debugger/DebugUI.py" line="1419"/>
         <source>No locals available.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -10382,9 +10423,22 @@
 </translation>
     </message>
     <message>
-        <location filename="../E5Graphics/E5GraphicsView.py" line="417"/>
+        <location filename="../E5Graphics/E5GraphicsView.py" line="421"/>
         <source>{0}, Page {1}</source>
-        <translation>{0}, Pagina {1}</translation>
+        <translation type="obsolete">{0}, Pagina {1}</translation>
+    </message>
+</context>
+<context>
+    <name>E5JsonServer</name>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>JSON Protocol Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>&lt;p&gt;The response received from the client could not be decoded. Please report this issue with the received data to the eric bugs email address.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;&lt;p&gt;Data:&lt;br/&gt;{1}&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
@@ -12366,12 +12420,12 @@
         <translation>Includi gli attributi della classe ?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Application Diagram</source>
         <translation>Diagrammi dell&apos;applicazione</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Include module names?</source>
         <translation>Includi i nomi dei moduli ?</translation>
     </message>
@@ -12426,12 +12480,12 @@
         <translation>Nessun formato di export impostato. Annullamento...</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Imports Diagram</source>
         <translation>Importa diagrammi</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Include imports from external modules?</source>
         <translation>Includi gli import dai moduli esterni ?</translation>
     </message>
@@ -12501,7 +12555,7 @@
         <translation>Selezione l&apos;analizzatore lessicale di Pygments da applicare.</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7944"/>
+        <location filename="../QScintilla/Editor.py" line="7941"/>
         <source>Check spelling...</source>
         <translation>Controllo sillabazione...</translation>
     </message>
@@ -12511,12 +12565,12 @@
         <translation>Controllo sillabazione della selezione...</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7947"/>
+        <location filename="../QScintilla/Editor.py" line="7944"/>
         <source>Add to dictionary</source>
         <translation>Aggiungi al dizionario</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7949"/>
+        <location filename="../QScintilla/Editor.py" line="7946"/>
         <source>Ignore All</source>
         <translation>Ignora tutto</translation>
     </message>
@@ -12651,12 +12705,12 @@
         <translation>Modifica precedente</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>Sort Lines</source>
         <translation>Righe ordinate</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>The selection contains illegal data for a numerical sort.</source>
         <translation>La selezione contiene dati non validi per un ordinamento numerico.</translation>
     </message>
@@ -12731,12 +12785,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>Register Mouse Click Handler</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>A mouse click handler for &quot;{0}&quot; was already registered by &quot;{1}&quot;. Aborting request by &quot;{2}&quot;...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12766,12 +12820,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>EditorConfig Properties</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>&lt;p&gt;The EditorConfig properties for file &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12816,7 +12870,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8766"/>
+        <location filename="../QScintilla/Editor.py" line="8763"/>
         <source>Generate Docstring</source>
         <translation type="unfinished"></translation>
     </message>
@@ -19725,7 +19779,7 @@
 <context>
     <name>FileDialogWizardDialog</name>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="72"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="73"/>
         <source>QFileDialog Wizard</source>
         <translation>Wizard QFileDialog</translation>
     </message>
@@ -19855,7 +19909,7 @@
         <translation>Mostra solo le directory</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="89"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="90"/>
         <source>Test</source>
         <translation>Test</translation>
     </message>
@@ -20010,7 +20064,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="67"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="68"/>
         <source>E5FileDialog Wizard</source>
         <translation type="unfinished"></translation>
     </message>
@@ -27546,27 +27600,27 @@
 <context>
     <name>Globals</name>
     <message>
-        <location filename="../Globals/__init__.py" line="451"/>
+        <location filename="../Globals/__init__.py" line="455"/>
         <source>{0:4.2f} Bytes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Globals/__init__.py" line="455"/>
-        <source>{0:4.2f} KiB</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../Globals/__init__.py" line="459"/>
-        <source>{0:4.2f} MiB</source>
+        <source>{0:4.2f} KiB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="463"/>
-        <source>{0:4.2f} GiB</source>
+        <source>{0:4.2f} MiB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="467"/>
+        <source>{0:4.2f} GiB</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Globals/__init__.py" line="471"/>
         <source>{0:4.2f} TiB</source>
         <translation type="unfinished"></translation>
     </message>
@@ -32615,112 +32669,112 @@
         <translation>Creazione Branch nel repository Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1939"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1940"/>
         <source>Verifying the integrity of the Mercurial repository</source>
         <translation>Verifica dell&apos;integrità del repository Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1953"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1954"/>
         <source>Showing the combined configuration settings</source>
         <translation>Visualizzazione combinata della impostazioni di configurazione</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1966"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1967"/>
         <source>Showing aliases for remote repositories</source>
         <translation>Visualizzazione degli alias per i repository remoti</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1979"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1980"/>
         <source>Recovering from interrupted transaction</source>
         <translation>Recupero da una transazione interrotta</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2166"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2167"/>
         <source>Shall the working directory be updated?</source>
         <translation>Le directory di lavoro devono essere aggiornate ?</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1849"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1850"/>
         <source>Showing current branch</source>
         <translation>Visualizzazione branch corrente</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2119"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2120"/>
         <source>Create changegroup</source>
         <translation>Crea changegroup</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2178"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2179"/>
         <source>Apply changegroups</source>
         <translation>Applica changegroup</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2197"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2198"/>
         <source>Bisect subcommand ({0}) invalid.</source>
         <translation>Sottocomando Bisect ({0}) non valido.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2217"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2218"/>
         <source>Mercurial Bisect ({0})</source>
         <translation>Mercurial Bisect ({0})</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2129"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2130"/>
         <source>Preview changegroup</source>
         <translation>Anteprima changegroup</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1992"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1993"/>
         <source>Identifying project directory</source>
         <translation>Identificazione directory del progetto</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>Create .hgignore file</source>
         <translation>Crea il file .hgignore</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Il file &lt;b&gt;{0}&lt;/b&gt; esiste già. Sovrascriverlo ?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2240"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2241"/>
         <source>Removing files from the Mercurial repository only</source>
         <translation>Rimozione di file dal solo repository Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2076"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2077"/>
         <source>Mercurial Changegroup Files (*.hg)</source>
         <translation>Mercurial Changegroup Files (*.hg)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2157"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2158"/>
         <source>Mercurial Changegroup Files (*.hg);;All Files (*)</source>
         <translation>Mercurial Changegroup Files (*.hg);;All Files (*)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2283"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2284"/>
         <source>Backing out changeset</source>
         <translation>Ritiro changeset</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2263"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2264"/>
         <source>No revision given. Aborting...</source>
         <translation>Nessuna revisione fornita. Termino...</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2093"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2094"/>
         <source>&lt;p&gt;The Mercurial changegroup file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Il file changegroup di Mercurial&lt;b&gt;{0}&lt;/b&gt; esiste già. Sovrascriverlo ?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2299"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2300"/>
         <source>Rollback last transaction</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2292"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2293"/>
         <source>Are you sure you want to rollback the last transaction?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -32730,72 +32784,72 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>Mercurial Command Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2799"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2800"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be restarted.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2351"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2352"/>
         <source>Import Patch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2392"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2393"/>
         <source>Export Patches</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2431"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2432"/>
         <source>Change Phase</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2480"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2481"/>
         <source>Copy Changesets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2520"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2521"/>
         <source>Copy Changesets (Continue)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2663"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2664"/>
         <source>Add Sub-repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2695"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2696"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be read.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2645"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2646"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub already contains an entry &lt;b&gt;{0}&lt;/b&gt;. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be written to.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>Remove Sub-repositories</source>
         <translation type="unfinished">Rimuovi sotto-archivi</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2684"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2685"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub does not exist. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -32825,7 +32879,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2568"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2569"/>
         <source>Create Unversioned Archive</source>
         <translation type="unfinished"></translation>
     </message>
@@ -32850,7 +32904,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1838"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1839"/>
         <source>Created new branch &lt;{0}&gt;.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -32860,62 +32914,62 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3049"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3050"/>
         <source>Mercurial Bookmark</source>
         <translation type="unfinished">Segnalibro Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Delete Bookmark</source>
         <translation type="unfinished">Cancella segnalibro</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Select the bookmark to be deleted:</source>
         <translation type="unfinished">Seleziona il segnalibro da cancellare:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3074"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3075"/>
         <source>Delete Mercurial Bookmark</source>
         <translation type="unfinished">Cancella Segnalibro Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3098"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3099"/>
         <source>Rename Mercurial Bookmark</source>
         <translation type="unfinished">Rinomina Segnalibro Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3132"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3133"/>
         <source>Move Mercurial Bookmark</source>
         <translation type="unfinished">Sposta Segnalibro Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Pull Bookmark</source>
         <translation type="unfinished">Estrai Segnalibro</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Select the bookmark to be pulled:</source>
         <translation type="unfinished">Seleziona il segnalibro da estrarre:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3213"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3214"/>
         <source>Pulling bookmark from a remote Mercurial repository</source>
         <translation type="unfinished">Etrae segnalibro da un repository Mercurial remoto</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Push Bookmark</source>
         <translation type="unfinished">Inserisce Segnalibro</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Select the bookmark to be push:</source>
         <translation type="unfinished">Seleziona il segnalibro da inserire:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3253"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3254"/>
         <source>Pushing bookmark to a remote Mercurial repository</source>
         <translation type="unfinished">Inserisce segnalibro in un repository Mercurial remoto</translation>
     </message>
@@ -32950,22 +33004,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>Delete All Backups</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>&lt;p&gt;Do you really want to delete all backup bundles stored the backup area &lt;b&gt;{0}&lt;/b&gt;?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2532"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2533"/>
         <source>Copy Changesets (Stop)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2545"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2546"/>
         <source>Copy Changesets (Abort)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -33921,42 +33975,42 @@
 <context>
     <name>HgClient</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="91"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="92"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished">Il processo {0}  non può essere avviato. Assicurarsi che sia nel path.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="140"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="141"/>
         <source>Did not receive the &apos;hello&apos; message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="142"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="143"/>
         <source>Received data on unexpected channel.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="147"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="148"/>
         <source>Bad &apos;hello&apos; message, expected &apos;capabilities: &apos; but got &apos;{0}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="153"/>
         <source>&apos;capabilities&apos; message did not contain any capability.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="160"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="161"/>
         <source>Bad &apos;hello&apos; message, expected &apos;encoding: &apos; but got &apos;{0}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="165"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="166"/>
         <source>&apos;encoding&apos; message did not contain any encoding.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="379"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="380"/>
         <source>For message see output dialog.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -39018,52 +39072,52 @@
 <context>
     <name>HgServeDialog</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="50"/>
         <source>Mercurial Server</source>
         <translation>Server Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="53"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="54"/>
         <source>Start Server</source>
         <translation>Avvia Server</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="59"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="60"/>
         <source>Stop Server</source>
         <translation>Ferma Server</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="65"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="66"/>
         <source>Start Browser</source>
         <translation>Avvia Browser</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="73"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="74"/>
         <source>Enter the server port</source>
         <translation>Inserisci la porta del server</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="79"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="80"/>
         <source>Select the style to use</source>
         <translation>Seleziona lo stile da usare</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="83"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="84"/>
         <source>Server</source>
         <translation>Server</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="90"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="91"/>
         <source>Browser</source>
         <translation>Browser</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>Process Generation Error</source>
         <translation>Errore Generazione Processo</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Il processo {0}  non può essere avviato. Assicurarsi che sia nel path.</translation>
     </message>
@@ -40798,17 +40852,17 @@
 <context>
     <name>HgUtilities</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="93"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="128"/>
         <source>The hg process finished with the exit code {0}</source>
         <translation type="unfinished">Il processo hg è terminato con codice di uscita {0}</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="98"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="133"/>
         <source>The hg process did not finish within 30s.</source>
         <translation type="unfinished">Il processo hg non è finito entro i 30s.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="102"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="137"/>
         <source>Could not start the hg executable.</source>
         <translation type="unfinished">Non posso avviare l&apos;eseguibile hg.</translation>
     </message>
@@ -43032,35 +43086,40 @@
 <context>
     <name>ImportsDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm {0}: {1}</source>
         <translation>Importa diagramma {0}: {1}</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm: {0}</source>
         <translation>Importa diagramma: {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>Parsing modules...</source>
         <translation>Analisi moduli...</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="124"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="136"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a Python package.</source>
         <translation>La cartella &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; non è un pacchetto Python.</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>%v/%m Modules</source>
         <translation>Moduli %v/%m</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="95"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="107"/>
         <source>Imports Diagramm</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="410"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>InputDialogWizard</name>
@@ -44830,22 +44889,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="252"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="251"/>
         <source>Yes</source>
         <translation type="unfinished">Si</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="254"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="253"/>
         <source>No</source>
         <translation type="unfinished">No</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Delete Channel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Do you really want to delete channel &lt;b&gt;{0}&lt;/b&gt;?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -53020,45 +53079,60 @@
 <context>
     <name>PackageDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>Parsing modules...</source>
         <translation type="unfinished">Analisi moduli...</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="205"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="219"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a package.</source>
         <translation type="unfinished">La direcotry &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; non è un pacchetto.</translation>
     </message>
     <message>
         <location filename="../Graphics/PackageDiagramBuilder.py" line="214"/>
         <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules.</source>
-        <translation type="unfinished">La direcotry &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; non contiene nessun modulo.</translation>
+        <translation type="obsolete">La direcotry &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; non contiene nessun modulo.</translation>
     </message>
     <message>
         <location filename="../Graphics/PackageDiagramBuilder.py" line="231"/>
         <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
-        <translation type="unfinished">Il pacchetto &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; non contiene nessuna classe.</translation>
-    </message>
-    <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <translation type="obsolete">Il pacchetto &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; non contiene nessuna classe.</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>%v/%m Modules</source>
         <translation type="unfinished">Moduli %v/%m</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="158"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="172"/>
         <source>Package Diagram</source>
         <translation type="unfinished">Diagrammi del package</translation>
     </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="230"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules or subpackages.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="247"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes or subpackages.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="555"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageScreenDialog</name>
@@ -54584,42 +54658,42 @@
 <context>
     <name>PixmapDiagram</name>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>Pixmap-Viewer</source>
         <translation>Visualizzatore Pixmap</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="98"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="101"/>
         <source>Print</source>
         <translation>Stampa</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="93"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="96"/>
         <source>Close</source>
         <translation>Chiudi</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="133"/>
-        <source>Window</source>
-        <translation>Finestra</translation>
-    </message>
-    <message>
         <location filename="../Graphics/PixmapDiagram.py" line="137"/>
+        <source>Window</source>
+        <translation>Finestra</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PixmapDiagram.py" line="141"/>
         <source>Graphics</source>
         <translation>Grafica</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="103"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="106"/>
         <source>Print Preview</source>
         <translation>Anteprima Stampa</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; cannot be displayed. The format is not supported.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Il file &lt;b&gt;{0}&lt;/b&gt; non può essere visualizzato. Il formato non è supportato.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="391"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="416"/>
         <source>Diagram: {0}</source>
         <translation>Diagramma: {0}</translation>
     </message>
@@ -54899,7 +54973,7 @@
         <translation>Alcuni plugin non possono essere installati.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="501"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="485"/>
         <source>Unspecific exception installing plugin.</source>
         <translation>Eccezione non specificata nell&apos;installazione del plugin.</translation>
     </message>
@@ -54962,7 +55036,7 @@
         <translation>&lt;p&gt;Il modulo plugin &lt;b&gt;{0}&lt;/b&gt; esiste. Uscita...&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="492"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="476"/>
         <source>Error installing plugin. Reason: {0}</source>
         <translation>Errore nell&apos;installazione del plugin, Motivo: {0}</translation>
     </message>
@@ -54970,22 +55044,22 @@
 <context>
     <name>PluginManager</name>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="614"/>
+        <location filename="../PluginManager/PluginManager.py" line="623"/>
         <source>Incompatible plugin activation method.</source>
         <translation>Metodo di attivazione del plugin incompatibile.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="404"/>
+        <location filename="../PluginManager/PluginManager.py" line="410"/>
         <source>Module is missing the &apos;autoactivate&apos; attribute.</source>
         <translation>Il modulo manca dell&apos;attributo &apos;autoactivate&apos;.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="415"/>
+        <location filename="../PluginManager/PluginManager.py" line="421"/>
         <source>Module is missing the &apos;pluginType&apos; and/or &apos;pluginTypename&apos; attributes.</source>
         <translation>Il modulo manca dell&apos;attributo &apos;pluginType&apos; e/oppure &apos;pluginTypename&apos;.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>Plugin Manager Error</source>
         <translation>Errore del gestore dei Plugin</translation>
     </message>
@@ -55000,32 +55074,32 @@
         <translation>La directory dei plugin interni &lt;b&gt;{0}&lt;/b&gt; non esiste.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="437"/>
+        <location filename="../PluginManager/PluginManager.py" line="446"/>
         <source>Module failed to load. Error: {0}</source>
         <translation>Il modulo ha fallito il caricamento. Errore: {0}</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>&lt;p&gt;The plugin download directory &lt;b&gt;{0}&lt;/b&gt; could not be created. Please configure it via the configuration dialog.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;La directory di download dei plugin &lt;b&gt;{0}&lt;/b&gt; non può essere creata. Per favore configurarla con il dialogo di configurazione.&lt;/p&gt;&lt;p&gt;Motivo: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>Error downloading file</source>
         <translation>Errone nello scaricamento del file</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>&lt;p&gt;Could not download the requested file from {0}.&lt;/p&gt;&lt;p&gt;Error: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Non posso scaricare il file richiesto da {0}&lt;/p&gt;&lt;p&gt;Errore: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>New plugin versions available</source>
         <translation>E&apos; disponibile una nuova versione del plug-in</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>&lt;p&gt;There are new plug-ins or plug-in updates available. Use the plug-in repository dialog to get them.&lt;/p&gt;</source>
         <translation type="unfinished">&lt;p&gt;Sono disponibili nuovi plug-in o aggiornamenti di plug-in. Usa la finestra di dialogo del repository di plug-in per ottenerli.&lt;/p&gt;</translation>
     </message>
@@ -57100,7 +57174,7 @@
         </translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>Create Package List</source>
         <translation>Crea lista del package</translation>
     </message>
@@ -57110,17 +57184,17 @@
         <translation type="unfinished">Crea un &amp;archivio per il plugin</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>Create Plugin Archive</source>
         <translation>Crea un archivio per il plugin</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5264"/>
+        <location filename="../Project/Project.py" line="5265"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; already exists.&lt;/p&gt;&lt;p&gt;Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Il file &lt;b&gt;PKGLIST&lt;/b&gt; esiste già.&lt;/p&gt;&lt;p&gt;Sovrascriverlo?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5331"/>
+        <location filename="../Project/Project.py" line="5332"/>
         <source>The project does not have a main script defined. Aborting...</source>
         <translation>Non c&apos;è uno script principale definito per il progetto. Esco...</translation>
     </message>
@@ -57285,17 +57359,17 @@
         <translation>&lt;p&gt;VCS selezionato &lt;b&gt;{0}&lt;/b&gt;non trovato.&lt;br&gt;Disabilito il controllo di versione.&lt;/p&gt;&lt;p&gt;{1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Il file &lt;b&gt;PKGLIST&lt;/b&gt; non può essere creato.&lt;br /&gt;Motivo: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5467"/>
+        <location filename="../Project/Project.py" line="5468"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be stored in the archive. Ignoring it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Il file &lt;b&gt;{0}&lt;/b&gt; non può essere aggiunto all&apos;archivio.Lo ignoro.&lt;/p&gt;&lt;p&gt;Motivo: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5536"/>
+        <location filename="../Project/Project.py" line="5537"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Il file plugin &lt;b&gt;{0}&lt;/b&gt; non può essere salvato.&lt;br /&gt;Motivo: {1}&lt;/p&gt;</translation>
     </message>
@@ -57370,7 +57444,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt; &lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -57431,7 +57505,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5367"/>
+        <location filename="../Project/Project.py" line="5368"/>
         <source>Create Plugin Archives</source>
         <translation type="unfinished"></translation>
     </message>
@@ -57446,37 +57520,37 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5345"/>
+        <location filename="../Project/Project.py" line="5346"/>
         <source>Select package lists:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Creating plugin archives...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Abort</source>
         <translation type="unfinished">Termina</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>%v/%m Archives</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5378"/>
+        <location filename="../Project/Project.py" line="5379"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5356"/>
+        <location filename="../Project/Project.py" line="5357"/>
         <source>&lt;p&gt;No package list files (PKGLIST*) available or selected. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5405"/>
+        <location filename="../Project/Project.py" line="5406"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; is not ready yet.&lt;/p&gt;&lt;p&gt;Please rework it and delete the&apos;; initial_list&apos; line of the header.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -57516,7 +57590,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>Execute Make</source>
         <translation type="unfinished"></translation>
     </message>
@@ -57536,7 +57610,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5744"/>
+        <location filename="../Project/Project.py" line="5745"/>
         <source>Test for Changes</source>
         <translation type="unfinished"></translation>
     </message>
@@ -57561,27 +57635,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5692"/>
+        <location filename="../Project/Project.py" line="5693"/>
         <source>The make process did not start.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5737"/>
+        <location filename="../Project/Project.py" line="5738"/>
         <source>The make process crashed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5747"/>
+        <location filename="../Project/Project.py" line="5748"/>
         <source>&lt;p&gt;There are changes that require the configured make target &lt;b&gt;{0}&lt;/b&gt; to be rebuilt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5752"/>
+        <location filename="../Project/Project.py" line="5753"/>
         <source>&lt;p&gt;There are changes that require the default make target to be rebuilt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>The makefile contains errors.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -57656,17 +57730,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5432"/>
+        <location filename="../Project/Project.py" line="5433"/>
         <source>&lt;p&gt;The eric plugin archive file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5484"/>
+        <location filename="../Project/Project.py" line="5485"/>
         <source>&lt;p&gt;The eric plugin archive files were created with some errors.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5492"/>
+        <location filename="../Project/Project.py" line="5493"/>
         <source>&lt;p&gt;The eric plugin archive files were created successfully.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -58500,12 +58574,12 @@
         <translation>Rinomina file</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Delete files/directories</source>
         <translation>Cancella file/directory</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Do you really want to delete these entries from the project?</source>
         <translation>Vuoi veramente cancellare questi elementi dal progetto ?</translation>
     </message>
@@ -58535,22 +58609,22 @@
         <translation>Copia il path nella Clipboard</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>Show Mime-Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="272"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="273"/>
         <source>The mime type of the file could not be determined.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="286"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="287"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -59262,22 +59336,22 @@
         <translation>Diagramma della classe</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Include class attributes?</source>
         <translation>Includi gli attributi della classe ?</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Package Diagram</source>
         <translation>Diagrammi del package</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Application Diagram</source>
         <translation>Diagrammi dell&apos;applicazione</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Include module names?</source>
         <translation>Includi i nomi dei moduli ?</translation>
     </message>
@@ -59297,12 +59371,12 @@
         <translation>Aggiungi un nuovo package Python</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Imports Diagram</source>
         <translation>Importa diagrammi</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Include imports from external modules?</source>
         <translation>Includi gli import dai moduli esterni ?</translation>
     </message>
@@ -72521,37 +72595,37 @@
 <context>
     <name>SvgDiagram</name>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="50"/>
+        <location filename="../Graphics/SvgDiagram.py" line="53"/>
         <source>SVG-Viewer</source>
         <translation>Viewer SVG</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="92"/>
+        <location filename="../Graphics/SvgDiagram.py" line="95"/>
         <source>Close</source>
         <translation>Chiudi</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="97"/>
+        <location filename="../Graphics/SvgDiagram.py" line="100"/>
         <source>Print</source>
         <translation>Stampa</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="132"/>
-        <source>Window</source>
-        <translation>Finestra</translation>
-    </message>
-    <message>
         <location filename="../Graphics/SvgDiagram.py" line="136"/>
+        <source>Window</source>
+        <translation>Finestra</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/SvgDiagram.py" line="140"/>
         <source>Graphics</source>
         <translation>Grafica</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="102"/>
+        <location filename="../Graphics/SvgDiagram.py" line="105"/>
         <source>Print Preview</source>
         <translation>Anteprima Stampa</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="363"/>
+        <location filename="../Graphics/SvgDiagram.py" line="385"/>
         <source>Diagram: {0}</source>
         <translation>Diagramma: {0}</translation>
     </message>
@@ -78379,62 +78453,62 @@
         <translation>Inserisci la descrizione del task</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="60"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="71"/>
         <source>Creation Time:</source>
         <translation>Ora creazione:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="77"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="92"/>
         <source>&amp;Priority:</source>
         <translation>&amp;Priorità:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="138"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="223"/>
         <source>Filename:</source>
         <translation>Nome File:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="155"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="216"/>
         <source>Line:</source>
         <translation>Linea:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="128"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="162"/>
         <source>Select to mark this task as completed</source>
         <translation>Seleziona per marcare questo task come compleeto</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="131"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="165"/>
         <source>T&amp;ask completed</source>
         <translation>T&amp;ask completato</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="112"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="175"/>
         <source>Select to indicate a task related to the current project</source>
         <translation>Seleziona per indicare un task correlato al progetto corrente</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="115"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="178"/>
         <source>Project &amp;Task</source>
         <translation>&amp;Task Progetto</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="87"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="102"/>
         <source>Select the task priority</source>
         <translation>Seleziona la priorità del task</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="94"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="109"/>
         <source>High</source>
         <translation>Alta</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="99"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="114"/>
         <source>Normal</source>
         <translation>Normale</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="104"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="119"/>
         <source>Low</source>
         <translation>Bassa</translation>
     </message>
@@ -78448,6 +78522,46 @@
         <source>Enter the task summary</source>
         <translation>Inserisci il riassunto del task</translation>
     </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="127"/>
+        <source>Type:</source>
+        <translation type="unfinished">Tipo:</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="134"/>
+        <source>Select the task type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="41"/>
+        <source>Bugfix</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="42"/>
+        <source>Warning</source>
+        <translation type="unfinished">Attenzione</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="43"/>
+        <source>ToDo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="44"/>
+        <source>Note</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="45"/>
+        <source>Test</source>
+        <translation type="unfinished">Test</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="46"/>
+        <source>Documentation</source>
+        <translation type="unfinished">Documentazione</translation>
+    </message>
 </context>
 <context>
     <name>TaskViewer</name>
@@ -78517,12 +78631,12 @@
         <translation>Ridimen&amp;siona colonne</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>Activate task filter</source>
         <translation>Attiva i filtri sui task</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>The task filter doesn&apos;t have any active filters. Do you want to configure the filter settings?</source>
         <translation>Il filtro sui task non ha nessun filtro attivo. Vuoi configurare i filtri ?</translation>
     </message>
@@ -78532,12 +78646,12 @@
         <translation>&amp;Rigenera task del progetto</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Extracting project tasks...</source>
         <translation>Estrazione dei task del progetto...</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Abort</source>
         <translation>Termina</translation>
     </message>
@@ -78552,7 +78666,7 @@
         <translation>Configura...</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="738"/>
+        <location filename="../Tasks/TaskViewer.py" line="755"/>
         <source>Extracting project tasks...
 {0}</source>
         <translation>Estrazione dei task del progetto...
@@ -78569,22 +78683,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Scan Filter Patterns</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Enter filename patterns of files to be excluded separated by a comma:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>%v/%m Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="734"/>
+        <location filename="../Tasks/TaskViewer.py" line="751"/>
         <source>Tasks</source>
         <translation type="unfinished">Task</translation>
     </message>
@@ -78612,22 +78726,22 @@
 <context>
     <name>TasksFile</name>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>Save Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>Read Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -81076,213 +81190,238 @@
 <context>
     <name>UMLClassDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="83"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="96"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; could not be found.</source>
         <translation type="unfinished">Il moduloe &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; non può essere trovato.</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="145"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="159"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
         <translation type="unfinished">Il modulo &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; non contiene nessuna classe.</translation>
     </message>
+    <message>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="394"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>UMLDialog</name>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="82"/>
+        <location filename="../Graphics/UMLDialog.py" line="113"/>
         <source>Close</source>
         <translation>Chiudi</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="122"/>
+        <location filename="../Graphics/UMLDialog.py" line="153"/>
         <source>Window</source>
         <translation>Finestra</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="87"/>
+        <location filename="../Graphics/UMLDialog.py" line="118"/>
         <source>Load</source>
         <translation type="unfinished">Carica</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="92"/>
+        <location filename="../Graphics/UMLDialog.py" line="123"/>
         <source>Save</source>
         <translation type="unfinished">Salva</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="97"/>
+        <location filename="../Graphics/UMLDialog.py" line="128"/>
         <source>Save As...</source>
         <translation type="unfinished">Salva come...</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="107"/>
+        <location filename="../Graphics/UMLDialog.py" line="138"/>
         <source>Print</source>
         <translation type="unfinished">Stampa</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="112"/>
+        <location filename="../Graphics/UMLDialog.py" line="143"/>
         <source>Print Preview</source>
         <translation type="unfinished">Anteprima Stampa</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="126"/>
+        <location filename="../Graphics/UMLDialog.py" line="157"/>
         <source>File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="178"/>
-        <source>Illegal diagram type &apos;{0}&apos; given.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>Save Diagram</source>
         <translation type="unfinished">Salva diagramma</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="230"/>
+        <location filename="../Graphics/UMLDialog.py" line="257"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished">&lt;p&gt;Il file &lt;b&gt;{0}&lt;/b&gt; esiste già. Sovrascriverlo ?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="386"/>
+        <location filename="../Graphics/UMLDialog.py" line="551"/>
         <source>Load Diagram</source>
         <translation type="unfinished">Carico Diagramma</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="287"/>
+        <location filename="../Graphics/UMLDialog.py" line="518"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;&lt;p&gt;Invalid line: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="102"/>
+        <location filename="../Graphics/UMLDialog.py" line="133"/>
         <source>Save as Image</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="274"/>
-        <source>Eric Graphics File (*.e5g);;All Files (*)</source>
+        <location filename="../Graphics/UMLDialog.py" line="43"/>
+        <source>Class Diagram</source>
+        <translation type="unfinished">Diagramma della classe</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="45"/>
+        <source>Package Diagram</source>
+        <translation type="unfinished">Diagrammi del package</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="47"/>
+        <source>Imports Diagram</source>
+        <translation type="unfinished">Importa diagrammi</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="49"/>
+        <source>Application Diagram</source>
+        <translation type="unfinished">Diagrammi dell&apos;applicazione</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="105"/>
+        <source>Illegal Diagram Type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="289"/>
+        <source>Eric Graphics File (*.egj);;Eric Text Graphics File (*.e5g);;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>UMLGraphicsView</name>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="83"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="85"/>
         <source>Delete shapes</source>
         <translation>Cancella forme</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="116"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="118"/>
         <source>Set size</source>
         <translation>Imposta dimensioni</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="126"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="128"/>
         <source>Re-Layout</source>
         <translation>Re-Layout</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="219"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="233"/>
         <source>Graphics</source>
         <translation>Grafica</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>Save Diagram</source>
         <translation>Salva diagramma</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="131"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="133"/>
         <source>Align Left</source>
         <translation>Allinea a sinistra</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="138"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="140"/>
         <source>Align Center Horizontal</source>
         <translation>Allineamento orizzontare centrato</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="145"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="147"/>
         <source>Align Right</source>
         <translation>Allinea a destra</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="152"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="154"/>
         <source>Align Top</source>
         <translation>Allinea in alto</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="159"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="161"/>
         <source>Align Center Vertical</source>
         <translation>Allineamento verticale centrato</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="166"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="168"/>
         <source>Align Bottom</source>
         <translation>Allinea in basso</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="341"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="360"/>
         <source>Portable Network Graphics (*.png);;Scalable Vector Graphics (*.svg)</source>
         <translation>Portable Network Graphics (*.png);;Scalable Vector Graphics (*.svg)</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="88"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="90"/>
         <source>Increase width by {0} points</source>
         <translation>Aumenta larghezza di {0} punti</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="95"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="97"/>
         <source>Increase height by {0} points</source>
         <translation>Aumenta altezza di {0} punti</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="102"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="104"/>
         <source>Decrease width by {0} points</source>
         <translation>Diminuisci larghezza di {0} punti</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="109"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="111"/>
         <source>Decrease height by {0} points</source>
         <translation>Diminuisci altezza di {0} punti</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Il file &lt;b&gt;{0}&lt;/b&gt; non può essere salvato.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="356"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="375"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Il file &lt;b&gt;{0}&lt;/b&gt; esiste già. Sovrascriverlo ?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="121"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="123"/>
         <source>Re-Scan</source>
         <translation type="unfinished"></translation>
     </message>
@@ -81366,7 +81505,7 @@
 <context>
     <name>UnittestDialog</name>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>Unittest</source>
         <translation>Unittest</translation>
     </message>
@@ -81386,12 +81525,12 @@
         <translation type="obsolete">Devi inserire il file di una suite di test.</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="699"/>
         <source>Preparing Testsuite</source>
         <translation>Preparazione Testsuite</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="989"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="991"/>
         <source>Running</source>
         <translation>In esecuzione</translation>
     </message>
@@ -81563,7 +81702,7 @@
         <translation>&lt;b&gt;Ferma test&lt;/b&gt;&lt;p&gt;Questo pulsante ferma una unitttest in esecuzione.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1162"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1164"/>
         <source>Show Source</source>
         <translation>Mostra sorgenti</translation>
     </message>
@@ -81593,12 +81732,12 @@
         <translation type="obsolete">Eseguiti {0} test in {1:.3f} s</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1033"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1035"/>
         <source>Failure: {0}</source>
         <translation>Fallimenti: {0}</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1048"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1050"/>
         <source>Error: {0}</source>
         <translation>Errori: {0}</translation>
     </message>
@@ -81633,17 +81772,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1063"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1065"/>
         <source>    Skipped: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1081"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1083"/>
         <source>    Expected Failure</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1098"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1100"/>
         <source>    Unexpected Success</source>
         <translation type="unfinished"></translation>
     </message>
@@ -81745,17 +81884,17 @@
         <translation type="unfinished">Risultati</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="707"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
         <source>Unittest with auto-discovery</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="791"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="787"/>
         <source>You must enter a start directory for auto-discovery.</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="1013"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1015"/>
         <source>Ran %n test(s) in {0:.3f}s</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -81788,7 +81927,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="623"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="619"/>
         <source>Discovered %n Test(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -81796,22 +81935,22 @@
         </translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="628"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="624"/>
         <source>&lt;p&gt;Unable to discover tests.&lt;/p&gt;&lt;p&gt;{0}&lt;br/&gt;{1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="694"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="690"/>
         <source>You must select auto-discovery or enter a test suite file or a dotted test name.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="716"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="712"/>
         <source>&lt;Unnamed Test&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>&lt;p&gt;Unable to run test &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;{1}&lt;br/&gt;{2}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -81841,7 +81980,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="724"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="720"/>
         <source>No test case has been selected. Shall all test cases be run?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -81850,6 +81989,11 @@
         <source>Python3 Files ({0});;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../PyUnit/UnittestDialog.py" line="881"/>
+        <source>No unittest were found. Aborting...</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>UnknownDevicesDialog</name>
@@ -82088,382 +82232,382 @@
 <context>
     <name>UserInterface</name>
     <message>
-        <location filename="../UI/UserInterface.py" line="282"/>
+        <location filename="../UI/UserInterface.py" line="283"/>
         <source>Generating Main User Interface...</source>
         <translation>Generazione interfaccia utente principale...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Log-Viewer</source>
         <translation>Log-Viewer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="332"/>
+        <location filename="../UI/UserInterface.py" line="333"/>
         <source>Setting up connections...</source>
         <translation>Impostazione connessioni...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="624"/>
+        <location filename="../UI/UserInterface.py" line="627"/>
         <source>Initializing Actions...</source>
         <translation>Inizializzazione Azioni...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="626"/>
+        <location filename="../UI/UserInterface.py" line="629"/>
         <source>Initializing Menus...</source>
         <translation>Inizializzazione Menù...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="628"/>
+        <location filename="../UI/UserInterface.py" line="631"/>
         <source>Initializing Toolbars...</source>
         <translation>Inizializzazione barre degli strumenti...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="630"/>
+        <location filename="../UI/UserInterface.py" line="633"/>
         <source>Initializing Statusbar...</source>
         <translation>Inizializzazione barra di stato...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="577"/>
+        <location filename="../UI/UserInterface.py" line="580"/>
         <source>Initializing Tools...</source>
         <translation>Inizializzazione strumenti...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Quit</source>
         <translation>Esci</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>&amp;Quit</source>
         <translation>&amp;Esci</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1642"/>
+        <location filename="../UI/UserInterface.py" line="1645"/>
         <source>Quit the IDE</source>
         <translation>Esci dall&apos;IDE</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1643"/>
+        <location filename="../UI/UserInterface.py" line="1646"/>
         <source>&lt;b&gt;Quit the IDE&lt;/b&gt;&lt;p&gt;This quits the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Esci dall&apos;IDE&lt;/b&gt;&lt;p&gt;Esci dall&apos;IDE. Ogni cambiamento non salvato dovrebbe essere salvato prima. Ogni programma python in debug verrà fermato e le impostazioni scritte su disco.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>What&apos;s This?</source>
         <translation>Cos&apos;è questo ?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>&amp;What&apos;s This?</source>
         <translation>C&amp;os&apos;è Questo ?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2126"/>
+        <location filename="../UI/UserInterface.py" line="2129"/>
         <source>Context sensitive help</source>
         <translation>Help sensibile al contesto</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2127"/>
+        <location filename="../UI/UserInterface.py" line="2130"/>
         <source>&lt;b&gt;Display context sensitive help&lt;/b&gt;&lt;p&gt;In What&apos;s This? mode, the mouse cursor shows an arrow with a question mark, and you can click on the interface elements to get a short description of what they do and how to use them. In dialogs, this feature can be accessed using the context help button in the titlebar.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Mostra helo sensibile al contesto&lt;/b&gt;&lt;p&gt;Nella modalità Cos&apos;è Questo, il cursore del mouse mostra una freccia con un punto interrogativo e puoi premere sugli elementi dell&apos;interfaccia per avere una breve descrizione di cosa fanno e come usarli. Nel dialoghi questa funzionalità è accessibile usando il bottone di help contestuale nella fisestra del titolo.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>Helpviewer</source>
         <translation>Visualizzatore Help</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>&amp;Helpviewer...</source>
         <translation>Visualizzatore &amp;Help...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2144"/>
+        <location filename="../UI/UserInterface.py" line="2147"/>
         <source>Open the helpviewer window</source>
         <translation>Apri il visualizzatore di help</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show Versions</source>
         <translation>Mostra versione</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show &amp;Versions</source>
         <translation>Mostra &amp;Versione</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2168"/>
+        <location filename="../UI/UserInterface.py" line="2171"/>
         <source>Display version information</source>
         <translation>Mostra informazioni sulla versione</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2170"/>
+        <location filename="../UI/UserInterface.py" line="2173"/>
         <source>&lt;b&gt;Show Versions&lt;/b&gt;&lt;p&gt;Display version information.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Mostra versioni&lt;/b&gt;&lt;p&gt;Mostra delle informazioni sulla versione.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Report Bug</source>
         <translation>Segnala Bug</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2229"/>
+        <location filename="../UI/UserInterface.py" line="2232"/>
         <source>Report &amp;Bug...</source>
         <translation>Segnala &amp;Bug...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2233"/>
+        <location filename="../UI/UserInterface.py" line="2236"/>
         <source>Report a bug</source>
         <translation>Segnala un bug</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2234"/>
+        <location filename="../UI/UserInterface.py" line="2237"/>
         <source>&lt;b&gt;Report Bug...&lt;/b&gt;&lt;p&gt;Opens a dialog to report a bug.&lt;/p&gt;</source>
         <translation>&lt;b&gt;&gt;Segnala Bug...&lt;/b&gt;&lt;p&gt;Apre un dialogo per segnalare un bug.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3365"/>
+        <location filename="../UI/UserInterface.py" line="3368"/>
         <source>Unittest</source>
         <translation>Unittest</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2256"/>
+        <location filename="../UI/UserInterface.py" line="2259"/>
         <source>&amp;Unittest...</source>
         <translation>&amp;Unittest...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2261"/>
+        <location filename="../UI/UserInterface.py" line="2264"/>
         <source>Start unittest dialog</source>
         <translation>Avvia dialogo unittest</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
+        <location filename="../UI/UserInterface.py" line="2524"/>
         <source>Preferences</source>
         <translation>Preferenze</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
+        <location filename="../UI/UserInterface.py" line="2524"/>
         <source>&amp;Preferences...</source>
         <translation>&amp;Preferenze...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2526"/>
+        <location filename="../UI/UserInterface.py" line="2529"/>
         <source>Set the prefered configuration</source>
         <translation>Imposta la configurazione preferita</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2528"/>
+        <location filename="../UI/UserInterface.py" line="2531"/>
         <source>&lt;b&gt;Preferences&lt;/b&gt;&lt;p&gt;Set the configuration items of the application with your prefered values.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Preferenze&lt;/b&gt;&lt;p&gt;Imposta i valori di configurazione dell&apos;applicazione ai valori preferiti&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
+        <location filename="../UI/UserInterface.py" line="2629"/>
         <source>Keyboard Shortcuts</source>
         <translation>Scorciatoie da tastiera</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
+        <location filename="../UI/UserInterface.py" line="2629"/>
         <source>Keyboard &amp;Shortcuts...</source>
         <translation>&amp;Scorciatoie da tastiera...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2631"/>
+        <location filename="../UI/UserInterface.py" line="2634"/>
         <source>Set the keyboard shortcuts</source>
         <translation>Imposta le scorciatoie da tastiera</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2633"/>
+        <location filename="../UI/UserInterface.py" line="2636"/>
         <source>&lt;b&gt;Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Set the keyboard shortcuts of the application with your prefered values.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Scorciatoie da tastiera&lt;/b&gt;&lt;p&gt;Imposta le scorciatoie da tastiera dell&apos;applicazione con i valori personalizzati.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>Export Keyboard Shortcuts</source>
         <translation>Esporta scorciatoie da tastiera</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2641"/>
+        <location filename="../UI/UserInterface.py" line="2644"/>
         <source>&amp;Export Keyboard Shortcuts...</source>
         <translation>&amp;Esporta scorciatoie da tastiera...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2646"/>
+        <location filename="../UI/UserInterface.py" line="2649"/>
         <source>Export the keyboard shortcuts</source>
         <translation>Esporta le scorciatoie da tastiera</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2648"/>
+        <location filename="../UI/UserInterface.py" line="2651"/>
         <source>&lt;b&gt;Export Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Export the keyboard shortcuts of the application.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Esporta scorciatoie da tastiera&lt;/b&gt;&lt;p&gt;Esporta le scorciatoie da tastiera dell&apos;applicazione.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Import Keyboard Shortcuts</source>
         <translation>Importa scorciatoie da tastiera</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2655"/>
+        <location filename="../UI/UserInterface.py" line="2658"/>
         <source>&amp;Import Keyboard Shortcuts...</source>
         <translation>&amp;Importa scorciatoie da tastiera...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2660"/>
+        <location filename="../UI/UserInterface.py" line="2663"/>
         <source>Import the keyboard shortcuts</source>
         <translation>Importa le scorciatoie da tastiera</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2662"/>
+        <location filename="../UI/UserInterface.py" line="2665"/>
         <source>&lt;b&gt;Import Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Import the keyboard shortcuts of the application.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Importa scorciatoie da tastiera&lt;/b&gt;&lt;p&gt;Importa le scorciatoie da tastiera dell&apos;applicazione.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3102"/>
+        <location filename="../UI/UserInterface.py" line="3105"/>
         <source>E&amp;xtras</source>
         <translation>E&amp;xtra</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3216"/>
+        <location filename="../UI/UserInterface.py" line="3219"/>
         <source>&amp;Window</source>
         <translation>&amp;Finestre</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3291"/>
+        <location filename="../UI/UserInterface.py" line="3294"/>
         <source>&amp;Help</source>
         <translation>&amp;Help</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3364"/>
+        <location filename="../UI/UserInterface.py" line="3367"/>
         <source>Tools</source>
         <translation>Strumenti</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
+        <location filename="../UI/UserInterface.py" line="5216"/>
         <source>Help</source>
         <translation>Aiuto</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3366"/>
+        <location filename="../UI/UserInterface.py" line="3369"/>
         <source>Settings</source>
         <translation>Impostazioni</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3277"/>
+        <location filename="../UI/UserInterface.py" line="3280"/>
         <source>&amp;Toolbars</source>
         <translation>&amp;Toolbar</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>Problem</source>
         <translation>Problema</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5536"/>
+        <location filename="../UI/UserInterface.py" line="5552"/>
         <source>Process Generation Error</source>
         <translation>Errore Generazione Processo</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="657"/>
+        <location filename="../UI/UserInterface.py" line="660"/>
         <source>Initializing Single Application Server...</source>
         <translation>Inizializzazione Single Application Server...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2262"/>
+        <location filename="../UI/UserInterface.py" line="2265"/>
         <source>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Perform unit tests. The dialog gives you the ability to select and run a unittest suite.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Unittes&lt;/b&gt;&lt;p&gt;Esegui unit test. Il dialogo offre la possibilità di selezionare ed eseguire uno unittest.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
+        <location filename="../UI/UserInterface.py" line="2273"/>
         <source>Unittest Restart</source>
         <translation>Riavvia Unittest</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
+        <location filename="../UI/UserInterface.py" line="2273"/>
         <source>&amp;Restart Unittest...</source>
         <translation>&amp;Riavvia Unittest...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2275"/>
+        <location filename="../UI/UserInterface.py" line="2278"/>
         <source>Restart last unittest</source>
         <translation>Riavvia l&apos;ultima unittest</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2276"/>
+        <location filename="../UI/UserInterface.py" line="2279"/>
         <source>&lt;b&gt;Restart Unittest&lt;/b&gt;&lt;p&gt;Restart the unittest performed last.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Riavvia Unittest&lt;/b&gt;&lt;p&gt;Riavvia l&apos;ultima unittest eseguita.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
+        <location filename="../UI/UserInterface.py" line="2303"/>
         <source>Unittest Script</source>
         <translation>Script unittest</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
+        <location filename="../UI/UserInterface.py" line="2303"/>
         <source>Unittest &amp;Script...</source>
         <translation>&amp;Script Unittest...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2305"/>
+        <location filename="../UI/UserInterface.py" line="2308"/>
         <source>Run unittest with current script</source>
         <translation>Esegui unittest con lo script corrente</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2307"/>
+        <location filename="../UI/UserInterface.py" line="2310"/>
         <source>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Run unittest with current script.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Script Unittest&lt;/b&gt;&lt;p&gt;Esegui unittest con lo script corrente.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
+        <location filename="../UI/UserInterface.py" line="2318"/>
         <source>Unittest Project</source>
         <translation>Progetto Unittest</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
+        <location filename="../UI/UserInterface.py" line="2318"/>
         <source>Unittest &amp;Project...</source>
         <translation>&amp;Progetto Unittest...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2320"/>
+        <location filename="../UI/UserInterface.py" line="2323"/>
         <source>Run unittest with current project</source>
         <translation>Esegui unittest con il progetto corrente</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2322"/>
+        <location filename="../UI/UserInterface.py" line="2325"/>
         <source>&lt;b&gt;Unittest Project&lt;/b&gt;&lt;p&gt;Run unittest with current project.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Progetto Unittest&lt;/b&gt;&lt;p&gt;Esegui unittest con il progetto corrente.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
+        <location filename="../UI/UserInterface.py" line="2413"/>
         <source>Compare Files</source>
         <translation>Confronta file</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
+        <location filename="../UI/UserInterface.py" line="2413"/>
         <source>&amp;Compare Files...</source>
         <translation>&amp;Confronta file...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2428"/>
+        <location filename="../UI/UserInterface.py" line="2431"/>
         <source>Compare two files</source>
         <translation>Confronta due file</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2416"/>
+        <location filename="../UI/UserInterface.py" line="2419"/>
         <source>&lt;b&gt;Compare Files&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Confronta file&lt;/b&gt;&lt;p&gt;Apre un dialogo per confrontare due file.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
+        <location filename="../UI/UserInterface.py" line="2426"/>
         <source>Compare Files side by side</source>
         <translation>Confronta file affiancati</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2429"/>
+        <location filename="../UI/UserInterface.py" line="2432"/>
         <source>&lt;b&gt;Compare Files side by side&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files and show the result side by side.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Confronta file affiancati&lt;/b&gt;&lt;p&gt;Apri un dialogo per confrontare due file e mostrare i risultati affiancati.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3158"/>
+        <location filename="../UI/UserInterface.py" line="3161"/>
         <source>&amp;Unittest</source>
         <translation>&amp;Unittest</translation>
     </message>
@@ -82473,137 +82617,137 @@
         <translation type="obsolete">Non c&apos;è uno script principale definito per il progetto. Esco</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>Drop Error</source>
         <translation>Errore Drop</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>File-Browser</source>
         <translation>File Browser</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1714"/>
+        <location filename="../UI/UserInterface.py" line="1717"/>
         <source>Edit Profile</source>
         <translation>Modifica profilo</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1720"/>
+        <location filename="../UI/UserInterface.py" line="1723"/>
         <source>Activate the edit view profile</source>
         <translation>Attiva il profilo della vista di editing</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1722"/>
+        <location filename="../UI/UserInterface.py" line="1725"/>
         <source>&lt;b&gt;Edit Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Edit View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Profilo di edit&lt;/p&gt;&lt;p&gt;Attiva il &quot;Profilo di Edit&quot;. Le finestre da mostrare, se il profilo è attivo, possono essere configurate con il dialogo &quot;Configura Profili.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1731"/>
+        <location filename="../UI/UserInterface.py" line="1734"/>
         <source>Debug Profile</source>
         <translation>Profilo Debug</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1737"/>
+        <location filename="../UI/UserInterface.py" line="1740"/>
         <source>Activate the debug view profile</source>
         <translation>Attiva profilo Debug</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1739"/>
+        <location filename="../UI/UserInterface.py" line="1742"/>
         <source>&lt;b&gt;Debug Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Debug View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Profilo di debug&lt;/p&gt;&lt;p&gt;Attiva il &quot;Profilo di Debug&quot;. Le finestre da mostrare, se il profilo è attivo, possono essere configurate con il dialogo &quot;Configura Profili.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
+        <location filename="../UI/UserInterface.py" line="2597"/>
         <source>View Profiles</source>
         <translation>Vista Profili</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
+        <location filename="../UI/UserInterface.py" line="2597"/>
         <source>&amp;View Profiles...</source>
         <translation>&amp;Vista profili...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2599"/>
+        <location filename="../UI/UserInterface.py" line="2602"/>
         <source>Configure view profiles</source>
         <translation>Configura i profili</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2601"/>
+        <location filename="../UI/UserInterface.py" line="2604"/>
         <source>&lt;b&gt;View Profiles&lt;/b&gt;&lt;p&gt;Configure the view profiles. With this dialog you may set the visibility of the various windows for the predetermined view profiles.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Vista Profili&lt;/b&gt;&lt;p&gt;Configura la visualizzazione dei profili. Con questo dialogo si possono impostare la visibilità delle varie finestre per i profili predefiniti.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
+        <location filename="../UI/UserInterface.py" line="2386"/>
         <source>UI Previewer</source>
         <translation>Anteprima UI</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
+        <location filename="../UI/UserInterface.py" line="2386"/>
         <source>&amp;UI Previewer...</source>
         <translation>Antreprima &amp;UI...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2388"/>
+        <location filename="../UI/UserInterface.py" line="2391"/>
         <source>Start the UI Previewer</source>
         <translation>Avvia UI Previewer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2389"/>
+        <location filename="../UI/UserInterface.py" line="2392"/>
         <source>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Start the UI Previewer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Avvia UI Previewer.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
+        <location filename="../UI/UserInterface.py" line="2399"/>
         <source>Translations Previewer</source>
         <translation>Anteprima traduzioni</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
+        <location filename="../UI/UserInterface.py" line="2399"/>
         <source>&amp;Translations Previewer...</source>
         <translation>Anteprima &amp;Traduzioni...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2401"/>
+        <location filename="../UI/UserInterface.py" line="2404"/>
         <source>Start the Translations Previewer</source>
         <translation>Avvia l&apos;anteprima delle traduzioni</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2403"/>
+        <location filename="../UI/UserInterface.py" line="2406"/>
         <source>&lt;b&gt;Translations Previewer&lt;/b&gt;&lt;p&gt;Start the Translations Previewer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Anteprima traduzioni&lt;/b&gt;&lt;p&gt;Avvia l&apos;anteprima delle traduzioni.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Shell</source>
         <translation>Shell</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>&amp;Shell</source>
         <translation>&amp;Shell</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
+        <location filename="../UI/UserInterface.py" line="2568"/>
         <source>Reload APIs</source>
         <translation>Ricarica APIs</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
+        <location filename="../UI/UserInterface.py" line="2568"/>
         <source>Reload &amp;APIs</source>
         <translation>Ricarica &amp;APIs</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2569"/>
+        <location filename="../UI/UserInterface.py" line="2572"/>
         <source>Reload the API information</source>
         <translation>Ricarica le informazioni delle API</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2571"/>
+        <location filename="../UI/UserInterface.py" line="2574"/>
         <source>&lt;b&gt;Reload APIs&lt;/b&gt;&lt;p&gt;Reload the API information.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Ricarica APIs&lt;/b&gt;&lt;p&gt;Ricarica le informazioni delle API.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Task-Viewer</source>
         <translation>Task-Viewer</translation>
     </message>
@@ -82618,77 +82762,77 @@
         <translation type="obsolete">Leggi task</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
+        <location filename="../UI/UserInterface.py" line="5216"/>
         <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source>
         <translation>Attualmente nessun visualizzatore personalizzato è selezionato. Per favore usa il dialogo delle preferenze per specificarne uno.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>Documentation Missing</source>
         <translation>Documentazione mancante</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Email address or mail server address is empty. Please configure your Email settings in the Preferences Dialog.</source>
         <translation>L&apos;indirizzo di posta o il server si posta sono vuoti. Per cortesia configura le opzioni per l&apos;Email nel dialogo delle preferenze.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Template-Viewer</source>
         <translation>Templates-Viewer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Alt+Shift+P</source>
         <translation>Alt+Shift+P</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Alt+Shift+D</source>
         <translation>Alt+Shift+D</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Alt+Shift+S</source>
         <translation>Alt+Shift+S</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>Alt+Shift+F</source>
         <translation>Alt+Shift+M</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Alt+Shift+T</source>
         <translation>Alt+Shift+T</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Alt+Shift+M</source>
         <translation>Alt+Shift+M</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
+        <location filename="../UI/UserInterface.py" line="2723"/>
         <source>Activate current editor</source>
         <translation>Attiva editor corrente</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
+        <location filename="../UI/UserInterface.py" line="2723"/>
         <source>Alt+Shift+E</source>
         <translation>Alt+Shift+E</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
+        <location filename="../UI/UserInterface.py" line="2733"/>
         <source>Ctrl+Alt+Tab</source>
         <translation>Ctrl+Alt+Tab</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
+        <location filename="../UI/UserInterface.py" line="2742"/>
         <source>Shift+Ctrl+Alt+Tab</source>
         <translation>Shift+Ctrl+Alt+Tab</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Alt+Shift+G</source>
         <translation>Alt+Shift+G</translation>
     </message>
@@ -82708,7 +82852,7 @@
         <translation type="obsolete">Apri documentazione su Qt4</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2953"/>
+        <location filename="../UI/UserInterface.py" line="2956"/>
         <source>Eric API Documentation</source>
         <translation>Documentazione API di Eric</translation>
     </message>
@@ -82718,58 +82862,58 @@
         <translation type="obsolete">Documentazione API di &amp;Eric</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2957"/>
+        <location filename="../UI/UserInterface.py" line="2960"/>
         <source>Open Eric API Documentation</source>
         <translation>Apri documentazione API di Eric</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5247"/>
+        <location filename="../UI/UserInterface.py" line="5250"/>
         <source>&lt;p&gt;Could not start the help viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Non posso avviare il visualizzatore di help.&lt;br&gt;Assicurarsi che sia disponibile come &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="587"/>
+        <location filename="../UI/UserInterface.py" line="590"/>
         <source>Registering Objects...</source>
         <translation>Registrazione Oggetti...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Project-Viewer</source>
         <translation>Project-Viewer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Debug-Viewer</source>
         <translation>Debug-Viewer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Ctrl+Q</source>
         <comment>File|Quit</comment>
         <translation>Ctrl+Q</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>&amp;Project-Viewer</source>
         <translation>&amp;Project-Viewer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>Shift+F1</source>
         <translation>Shift+F1</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>F1</source>
         <translation>F1</translation>
     </message>
     <message>
+        <location filename="../UI/UserInterface.py" line="2183"/>
+        <source>Check for Updates</source>
+        <translation>Controlla per aggiornamenti</translation>
+    </message>
+    <message>
         <location filename="../UI/UserInterface.py" line="2180"/>
-        <source>Check for Updates</source>
-        <translation>Controlla per aggiornamenti</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2177"/>
         <source>Check for &amp;Updates...</source>
         <translation>Controlla per &amp;Aggiornamenti...</translation>
     </message>
@@ -82784,27 +82928,27 @@
         <translation type="obsolete">Apri documentazione su PyQt4</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3175"/>
+        <location filename="../UI/UserInterface.py" line="3178"/>
         <source>Select Tool Group</source>
         <translation>Seleziona Tool Group</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3186"/>
+        <location filename="../UI/UserInterface.py" line="3189"/>
         <source>Se&amp;ttings</source>
         <translation>Impos&amp;tazioni</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3368"/>
+        <location filename="../UI/UserInterface.py" line="3371"/>
         <source>Profiles</source>
         <translation>Profili</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4162"/>
+        <location filename="../UI/UserInterface.py" line="4165"/>
         <source>&amp;Builtin Tools</source>
         <translation>Tool &amp;Builtin</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>Documentation</source>
         <translation>Documentazione</translation>
     </message>
@@ -82814,12 +82958,12 @@
         <translation type="obsolete">&lt;p&gt;L&apos;inizio della documentazione di PySide non è stato configurato.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Error during updates check</source>
         <translation>Errore nel controllo per gli update</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>Update available</source>
         <translation>Aggiornamento disponibile</translation>
     </message>
@@ -82829,462 +82973,462 @@
         <translation type="obsolete">&lt;h3&gt;Numeri di versione&lt;/h3&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7268"/>
+        <location filename="../UI/UserInterface.py" line="7295"/>
         <source>&lt;/table&gt;</source>
         <translation>&lt;/table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4207"/>
+        <location filename="../UI/UserInterface.py" line="4210"/>
         <source>Configure Tool Groups ...</source>
         <translation>Configura Tools Groups...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4211"/>
+        <location filename="../UI/UserInterface.py" line="4214"/>
         <source>Configure current Tool Group ...</source>
         <translation>Configura Tools Groups correnti...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2583"/>
+        <location filename="../UI/UserInterface.py" line="2586"/>
         <source>Show external tools</source>
         <translation>Mostra tool esterni</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2578"/>
+        <location filename="../UI/UserInterface.py" line="2581"/>
         <source>Show external &amp;tools</source>
         <translation>Mostra toll &amp;esterni</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>&amp;Cancel</source>
         <translation>&amp;Cancella</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Could not perform updates check.</source>
         <translation>Non posso controllare per gli update.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>First time usage</source>
         <translation>Primo avvio</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="275"/>
+        <location filename="../UI/UserInterface.py" line="276"/>
         <source>Initializing Plugin Manager...</source>
         <translation>Inizializzazione Gestore Plugin...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3139"/>
+        <location filename="../UI/UserInterface.py" line="3142"/>
         <source>P&amp;lugins</source>
         <translation>P&amp;lugins</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3369"/>
+        <location filename="../UI/UserInterface.py" line="3372"/>
         <source>Plugins</source>
         <translation>Plugins</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
+        <location filename="../UI/UserInterface.py" line="2760"/>
         <source>Plugin Infos</source>
         <translation>Informazioni su Plugin</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2761"/>
+        <location filename="../UI/UserInterface.py" line="2764"/>
         <source>Show Plugin Infos</source>
         <translation>Mostra informazioni sui Plugin</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2762"/>
+        <location filename="../UI/UserInterface.py" line="2765"/>
         <source>&lt;b&gt;Plugin Infos...&lt;/b&gt;&lt;p&gt;This opens a dialog, that show some information about loaded plugins.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Informazioni sui Plugin...&lt;/b&gt;&lt;p&gt;Apre un dialogo per mostrare le informazioni sul plugin caricati.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
+        <location filename="../UI/UserInterface.py" line="2760"/>
         <source>&amp;Plugin Infos...</source>
         <translation>Informazioni su &amp;Plugin...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4179"/>
+        <location filename="../UI/UserInterface.py" line="4182"/>
         <source>&amp;Plugin Tools</source>
         <translation>Informazioni sui &amp;Plugin Tools</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2788"/>
+        <location filename="../UI/UserInterface.py" line="2791"/>
         <source>Uninstall Plugin</source>
         <translation>Disinstalla Plugin</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2783"/>
+        <location filename="../UI/UserInterface.py" line="2786"/>
         <source>&amp;Uninstall Plugin...</source>
         <translation>Disinstalla Pl&amp;ugin...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2789"/>
+        <location filename="../UI/UserInterface.py" line="2792"/>
         <source>&lt;b&gt;Uninstall Plugin...&lt;/b&gt;&lt;p&gt;This opens a dialog to uninstall a plugin.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Disinstalla Plugin...&lt;/b&gt;&lt;p&gt;Apre un dialogo per disinstallare un plugin.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="667"/>
+        <location filename="../UI/UserInterface.py" line="670"/>
         <source>Activating Plugins...</source>
         <translation>Attivazione Plugin...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3112"/>
+        <location filename="../UI/UserInterface.py" line="3115"/>
         <source>Wi&amp;zards</source>
         <translation>Wi&amp;zards</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4326"/>
+        <location filename="../UI/UserInterface.py" line="4329"/>
         <source>&amp;Show all</source>
         <translation>Mo&amp;stra tutti</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4328"/>
+        <location filename="../UI/UserInterface.py" line="4331"/>
         <source>&amp;Hide all</source>
         <translation>Nascondi &amp;tutti</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show downloadable versions</source>
         <translation>Mostra versioni scaricabili</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show &amp;downloadable versions...</source>
         <translation>Mostra &amp;versioni scaricabili...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2192"/>
+        <location filename="../UI/UserInterface.py" line="2195"/>
         <source>Show the versions available for download</source>
         <translation>Mostra le versioni disponibili per il download</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7253"/>
+        <location filename="../UI/UserInterface.py" line="7280"/>
         <source>&lt;h3&gt;Available versions&lt;/h3&gt;&lt;table&gt;</source>
         <translation>&lt;h3&gt;Versioni disponibili&lt;/h3&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
+        <location filename="../UI/UserInterface.py" line="2799"/>
         <source>Plugin Repository</source>
         <translation>Repository Plugin</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
+        <location filename="../UI/UserInterface.py" line="2799"/>
         <source>Plugin &amp;Repository...</source>
         <translation>&amp;Repository Plugin...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2801"/>
+        <location filename="../UI/UserInterface.py" line="2804"/>
         <source>Show Plugins available for download</source>
         <translation>Mostra Plugin disponibili per il download</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2803"/>
+        <location filename="../UI/UserInterface.py" line="2806"/>
         <source>&lt;b&gt;Plugin Repository...&lt;/b&gt;&lt;p&gt;This opens a dialog, that shows a list of plugins available on the Internet.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Repository Plugin...&lt;/b&gt;&lt;p&gt;Apre un dialogo che mostra i plugin disponibili.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2775"/>
+        <location filename="../UI/UserInterface.py" line="2778"/>
         <source>Install Plugins</source>
         <translation>Installa Plugin</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2770"/>
+        <location filename="../UI/UserInterface.py" line="2773"/>
         <source>&amp;Install Plugins...</source>
         <translation>&amp;Installa Plugin...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2776"/>
+        <location filename="../UI/UserInterface.py" line="2779"/>
         <source>&lt;b&gt;Install Plugins...&lt;/b&gt;&lt;p&gt;This opens a dialog to install or update plugins.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Installa Plugin...&lt;b&gt;&lt;p&gt;Apre un dialogo per installare o aggiornare i plugin.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2455"/>
+        <location filename="../UI/UserInterface.py" line="2458"/>
         <source>Mini Editor</source>
         <translation>Mini Editor</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2450"/>
+        <location filename="../UI/UserInterface.py" line="2453"/>
         <source>Mini &amp;Editor...</source>
         <translation>Mini &amp;Editor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2456"/>
+        <location filename="../UI/UserInterface.py" line="2459"/>
         <source>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Open a dialog with a simplified editor.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Apre un dialogo con un semplice editor.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
+        <location filename="../UI/UserInterface.py" line="2614"/>
         <source>Toolbars</source>
         <translation>Toolbars</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
+        <location filename="../UI/UserInterface.py" line="2614"/>
         <source>Tool&amp;bars...</source>
         <translation>Tool&amp;bars...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2616"/>
+        <location filename="../UI/UserInterface.py" line="2619"/>
         <source>Configure toolbars</source>
         <translation>Configura toolbars</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2617"/>
+        <location filename="../UI/UserInterface.py" line="2620"/>
         <source>&lt;b&gt;Toolbars&lt;/b&gt;&lt;p&gt;Configure the toolbars. With this dialog you may change the actions shown on the various toolbars and define your own toolbars.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Toolbars&lt;/b&gt;&lt;p&gt;Configura le toolbars. Con questo dialogo puoi cambiare le azioni mostrate sulle varie toolbar e definire le tue.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="683"/>
+        <location filename="../UI/UserInterface.py" line="686"/>
         <source>Restoring Toolbarmanager...</source>
         <translation>Ripristino toolbarmanager...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Multiproject-Viewer</source>
         <translation>Multiproject-Viewer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>&amp;Multiproject-Viewer</source>
         <translation>&amp;Multiproject-Viewer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
+        <location filename="../UI/UserInterface.py" line="5497"/>
         <source>External Tools</source>
         <translation>Tool esterni</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1673"/>
+        <location filename="../UI/UserInterface.py" line="1676"/>
         <source>Save session</source>
         <translation>Salva sessione</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>Read session</source>
         <translation>Leggi sessione</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3541"/>
+        <location filename="../UI/UserInterface.py" line="3544"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors encoding.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Questa zona della barra di stato mostra l&apos;encoding usato dall&apos;editor.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3555"/>
+        <location filename="../UI/UserInterface.py" line="3558"/>
         <source>&lt;p&gt;This part of the status bar displays an indication of the current editors files writability.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Questa zona della barra di stato mostra la possibilità di scrittura del file.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request Feature</source>
         <translation>Richiedi funzionalità</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request &amp;Feature...</source>
         <translation>Richiedi &amp;funzionalità...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2245"/>
+        <location filename="../UI/UserInterface.py" line="2248"/>
         <source>Send a feature request</source>
         <translation>Invia una richiesta di funzionalità</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2247"/>
+        <location filename="../UI/UserInterface.py" line="2250"/>
         <source>&lt;b&gt;Request Feature...&lt;/b&gt;&lt;p&gt;Opens a dialog to send a feature request.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Richiedi funzionalità...&lt;/b&gt;&lt;p&gt;Apre un dialogo per mandare una richiesta di funzionalità.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3534"/>
+        <location filename="../UI/UserInterface.py" line="3537"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors language.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Questa zona della barra di stato mostra il linguaggio usato dall&apos;editor.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3562"/>
+        <location filename="../UI/UserInterface.py" line="3565"/>
         <source>&lt;p&gt;This part of the status bar displays the line number of the current editor.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Questa parte della barra di stato mostra il numero di linea.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3569"/>
+        <location filename="../UI/UserInterface.py" line="3572"/>
         <source>&lt;p&gt;This part of the status bar displays the cursor position of the current editor.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Questa parte della barra di stato mostra la posizione del cursore.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>Horizontal Toolbox</source>
         <translation>Barra dei comandi orizzontale</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Alt+Shift+A</source>
         <translation>Alt+Shift+A</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>&amp;Horizontal Toolbox</source>
         <translation>Toolbox &amp;Orizzontale</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1919"/>
+        <location filename="../UI/UserInterface.py" line="1922"/>
         <source>Toggle the Horizontal Toolbox window</source>
         <translation>Abilita/Disabilita una finestra la toolbox orizzontale</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1921"/>
+        <location filename="../UI/UserInterface.py" line="1924"/>
         <source>&lt;b&gt;Toggle the Horizontal Toolbox window&lt;/b&gt;&lt;p&gt;If the Horizontal Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Abilita/Disabilita la finestra della toolbox orizzontale&lt;/b&gt;&lt;p&gt;Se la finestra della toolbox orizzontale è nascosta verrà mostrata. Se è mostrata verrà chiusa.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>Restart application</source>
         <translation>Riavvia applicazione</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>The application needs to be restarted. Do it now?</source>
         <translation>L&apos;applicazione necessita di un riavvio. Farlo ora ?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3148"/>
+        <location filename="../UI/UserInterface.py" line="3151"/>
         <source>Configure...</source>
         <translation>Configura...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3548"/>
+        <location filename="../UI/UserInterface.py" line="3551"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors eol setting.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Questa zona della barra di stato mostra l&apos;eol usato dall&apos;editor.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
+        <location filename="../UI/UserInterface.py" line="2751"/>
         <source>Switch between tabs</source>
         <translation>Cicla tra le linguette</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
+        <location filename="../UI/UserInterface.py" line="2751"/>
         <source>Ctrl+1</source>
         <translation>Ctrl+1</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
+        <location filename="../UI/UserInterface.py" line="2540"/>
         <source>Export Preferences</source>
         <translation>Esporta preferenze</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
+        <location filename="../UI/UserInterface.py" line="2540"/>
         <source>E&amp;xport Preferences...</source>
         <translation>E&amp;sporta preferenze...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2542"/>
+        <location filename="../UI/UserInterface.py" line="2545"/>
         <source>Export the current configuration</source>
         <translation>Esporta la configurazione attuale</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2544"/>
+        <location filename="../UI/UserInterface.py" line="2547"/>
         <source>&lt;b&gt;Export Preferences&lt;/b&gt;&lt;p&gt;Export the current configuration to a file.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Esporta preferenze&lt;/b&gt;&lt;p&gt;Esporta la configurazione attuale su un file.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
+        <location filename="../UI/UserInterface.py" line="2554"/>
         <source>Import Preferences</source>
         <translation>Importa preferenze</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
+        <location filename="../UI/UserInterface.py" line="2554"/>
         <source>I&amp;mport Preferences...</source>
         <translation>I&amp;mporta preferenze...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2556"/>
+        <location filename="../UI/UserInterface.py" line="2559"/>
         <source>Import a previously exported configuration</source>
         <translation>Importa una configurazione precedentemente esportata</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2558"/>
+        <location filename="../UI/UserInterface.py" line="2561"/>
         <source>&lt;b&gt;Import Preferences&lt;/b&gt;&lt;p&gt;Import a previously exported configuration.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Importa preferenze&lt;/b&gt;&lt;p&gt;Importa una configurazione precedentemente esportata.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
+        <location filename="../UI/UserInterface.py" line="2733"/>
         <source>Show next</source>
         <translation>Mostra successivo</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
+        <location filename="../UI/UserInterface.py" line="2742"/>
         <source>Show previous</source>
         <translation>Mostra precedente</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>Left Sidebar</source>
         <translation>Barra laterale sinistra</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>&amp;Left Sidebar</source>
         <translation>Barra &amp;laterale sinistra</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1933"/>
+        <location filename="../UI/UserInterface.py" line="1936"/>
         <source>Toggle the left sidebar window</source>
         <translation>Abilita/Disabilita la finestra della barra laterale sinistra</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1934"/>
+        <location filename="../UI/UserInterface.py" line="1937"/>
         <source>&lt;b&gt;Toggle the left sidebar window&lt;/b&gt;&lt;p&gt;If the left sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Abilita/Disabilita la finestra della barra laterale sinistra&lt;/b&gt;&lt;p&gt;Se la finestra della barra laterale sinistra è nascosta verrà mostrata. Se è mostrata verrà chiusa.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>Bottom Sidebar</source>
         <translation>Barra in basso</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>&amp;Bottom Sidebar</source>
         <translation>Barra in &amp;basso</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1960"/>
+        <location filename="../UI/UserInterface.py" line="1963"/>
         <source>Toggle the bottom sidebar window</source>
         <translation>Abilita/Disabilita la finestra della barra in basso</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1962"/>
+        <location filename="../UI/UserInterface.py" line="1965"/>
         <source>&lt;b&gt;Toggle the bottom sidebar window&lt;/b&gt;&lt;p&gt;If the bottom sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Abilita/Disabilita la finestra della barra in basso&lt;/b&gt;&lt;p&gt;Se la finestra della barra in basso è nascosta verrà mostrata. Se è mostrata verrà chiusa.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>&amp;Debug-Viewer</source>
         <translation>&amp;Debug-Viewer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
+        <location filename="../UI/UserInterface.py" line="2440"/>
         <source>SQL Browser</source>
         <translation>SQL Browser</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
+        <location filename="../UI/UserInterface.py" line="2440"/>
         <source>SQL &amp;Browser...</source>
         <translation>SQL &amp;Browser...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2442"/>
+        <location filename="../UI/UserInterface.py" line="2445"/>
         <source>Browse a SQL database</source>
         <translation>Naviga un database SQL</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2443"/>
+        <location filename="../UI/UserInterface.py" line="2446"/>
         <source>&lt;b&gt;SQL Browser&lt;/b&gt;&lt;p&gt;Browse a SQL database.&lt;/p&gt;</source>
         <translation>&lt;b&gt;SQL Browser&lt;/b&gt;&lt;p&gt;Naviga un database SQL.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
+        <location filename="../UI/UserInterface.py" line="2495"/>
         <source>Icon Editor</source>
         <translation>Editor di icone</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
+        <location filename="../UI/UserInterface.py" line="2495"/>
         <source>&amp;Icon Editor...</source>
         <translation>Editor di &amp;icone...</translation>
     </message>
@@ -83309,95 +83453,95 @@
         <translation type="obsolete">Apri documentazione PySide</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1602"/>
+        <location filename="../UI/UserInterface.py" line="1605"/>
         <source>{0} - Passive Mode</source>
         <translation>{0} - Passive Debug Mode</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1609"/>
+        <location filename="../UI/UserInterface.py" line="1612"/>
         <source>{0} - {1} - Passive Mode</source>
         <translation>{0} -{1} Passive Debug Mode</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1613"/>
+        <location filename="../UI/UserInterface.py" line="1616"/>
         <source>{0} - {1} - {2} - Passive Mode</source>
         <translation>{0} -{1} - {2} - Passive Debug Mode</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3640"/>
+        <location filename="../UI/UserInterface.py" line="3643"/>
         <source>External Tools/{0}</source>
         <translation>Tool Esterni/{0}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not exist or is zero length.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Il file &lt;b&gt;{0}&lt;/b&gt; non esiste o ha lunghezza zero.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5066"/>
+        <location filename="../UI/UserInterface.py" line="5069"/>
         <source>&lt;p&gt;Could not start Qt-Designer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Non posso avviare Qt-Designer.&lt;br&gt;Assicurarsi che sia disponibile come &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5136"/>
+        <location filename="../UI/UserInterface.py" line="5139"/>
         <source>&lt;p&gt;Could not start Qt-Linguist.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Non posso avviare Qt-Linguist.&lt;br&gt;Assicurarsi che sia disponibile come &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5180"/>
+        <location filename="../UI/UserInterface.py" line="5183"/>
         <source>&lt;p&gt;Could not start Qt-Assistant.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Non posso avviare Qt-Assistant.&lt;br&gt;Assicurarsi che sia disponibile come &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5227"/>
+        <location filename="../UI/UserInterface.py" line="5230"/>
         <source>&lt;p&gt;Could not start custom viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Non posso avviare il visualizzatore personalizzato.&lt;br&gt;Assicurarsi che sia disponibile come &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5297"/>
+        <location filename="../UI/UserInterface.py" line="5300"/>
         <source>&lt;p&gt;Could not start UI Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Non posso avviare UI Previewer.&lt;br&gt;Assicurarsi che sia disponibile come &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5354"/>
+        <location filename="../UI/UserInterface.py" line="5357"/>
         <source>&lt;p&gt;Could not start Translation Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Non posso avviare l&apos;anteprima delle traduzioni.&lt;br&gt;Assicurarsi che sia disponibile come &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5377"/>
+        <location filename="../UI/UserInterface.py" line="5380"/>
         <source>&lt;p&gt;Could not start SQL Browser.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Non posso avviare SQL Browser.&lt;br&gt;Assicurarsi che sia disponibile come &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5472"/>
+        <location filename="../UI/UserInterface.py" line="5488"/>
         <source>No tool entry found for external tool &apos;{0}&apos; in tool group &apos;{1}&apos;.</source>
         <translation>Nessun elemento per il tool esterno &apos;{0}&apos; trovato nel gruppo &apos;{1}&apos;.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
+        <location filename="../UI/UserInterface.py" line="5497"/>
         <source>No toolgroup entry &apos;{0}&apos; found.</source>
         <translation>Nessun gruppo &apos;{0}&apos; trovato.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5520"/>
+        <location filename="../UI/UserInterface.py" line="5536"/>
         <source>Starting process &apos;{0} {1}&apos;.
 </source>
         <translation>Avvio processo &apos;{0} {1}&apos;.
 </translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5536"/>
+        <location filename="../UI/UserInterface.py" line="5552"/>
         <source>&lt;p&gt;Could not start the tool entry &lt;b&gt;{0}&lt;/b&gt;.&lt;br&gt;Ensure that it is available as &lt;b&gt;{1}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Non posso avviare l&apos;elemento degli strumenti &lt;b&gt;{0}&lt;/b&gt;.&lt;br&gt;Assicurarsi che sia disponibile come &lt;b&gt;{1}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5614"/>
+        <location filename="../UI/UserInterface.py" line="5630"/>
         <source>Process &apos;{0}&apos; has exited.
 </source>
         <translation>Il processo &apos;{0}&apos; è terminato.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>&lt;p&gt;The documentation starting point &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; could not be found.&lt;/p&gt;</source>
         <translation>&lt;p&gt;L&apos;inizio della documentazione &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; non viene trovato.&lt;/p&gt;</translation>
     </message>
@@ -83407,57 +83551,57 @@
         <translation type="obsolete">&lt;p&gt;Il file task &lt;b&gt;{0}&lt;/b&gt; non può essere scritto.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Il file task &lt;b&gt;{0}&lt;/b&gt; non può essere letto.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6550"/>
+        <location filename="../UI/UserInterface.py" line="6566"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Il file sessione &lt;b&gt;{0}&lt;/b&gt; non può essere scritto.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Il file sessione &lt;b&gt;{0}&lt;/b&gt; non può essere letto.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; is not a file.&lt;/p&gt;</source>
         <translation>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; non è un file.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7059"/>
+        <location filename="../UI/UserInterface.py" line="7086"/>
         <source>Trying host {0}</source>
         <translation>Tento su host {0}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1124"/>
+        <location filename="../UI/UserInterface.py" line="1127"/>
         <source>Cooperation</source>
         <translation>Cooperazione</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Alt+Shift+O</source>
         <translation>Alt+Shift+O</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1180"/>
+        <location filename="../UI/UserInterface.py" line="1183"/>
         <source>Symbols</source>
         <translation>Simboli</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Alt+Shift+Y</source>
         <translation>Alt+Shift+Y</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1189"/>
+        <location filename="../UI/UserInterface.py" line="1192"/>
         <source>Numbers</source>
         <translation>Numeri</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Alt+Shift+B</source>
         <translation>Alt+Shift+B</translation>
     </message>
@@ -83467,7 +83611,7 @@
         <translation type="obsolete">File scorciatoi tastiera (*.e4k)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2931"/>
+        <location filename="../UI/UserInterface.py" line="2934"/>
         <source>Python 3 Documentation</source>
         <translation>Documentazione Python 3</translation>
     </message>
@@ -83477,7 +83621,7 @@
         <translation type="obsolete">Documentazione Python &amp;3</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2935"/>
+        <location filename="../UI/UserInterface.py" line="2938"/>
         <source>Open Python 3 Documentation</source>
         <translation>Apri documentazione Python 3</translation>
     </message>
@@ -83502,408 +83646,408 @@
         <translation type="obsolete">&lt;b&gt;Documentazione Python 2&lt;/b&gt;&lt;p&gt;Mostra la documentazione Python 2. Se non è configurata una directory per la documentazione, viene assunto che la posizione della documentazione sia nella directory doc nella locazione dell&apos;eseguibile Python 2 su Windows e &lt;i&gt;/usr/share/doc/packages/python/html&lt;/i&gt; su Unix. Imposta PYTHONDOCDIR2 nel tuo ambiente per sovrascrivere questi valori.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>Error getting versions information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7111"/>
+        <location filename="../UI/UserInterface.py" line="7138"/>
         <source>The versions information could not be downloaded. Please go online and try again.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Open Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Could not start a web browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>The versions information could not be downloaded for the last 7 days. Please go online and try again.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="692"/>
+        <location filename="../UI/UserInterface.py" line="695"/>
         <source>Setting View Profile...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="705"/>
+        <location filename="../UI/UserInterface.py" line="708"/>
         <source>Reading Tasks...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="710"/>
+        <location filename="../UI/UserInterface.py" line="713"/>
         <source>Reading Templates...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="715"/>
+        <location filename="../UI/UserInterface.py" line="718"/>
         <source>Starting Debugger...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New Window</source>
         <translation type="unfinished">Nuova finestra</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New &amp;Window</source>
         <translation type="unfinished">Nuova &amp;Finestra</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>Ctrl+Shift+N</source>
         <comment>File|New Window</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Unittest Rerun Failed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Rerun Failed Tests...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2289"/>
+        <location filename="../UI/UserInterface.py" line="2292"/>
         <source>Rerun failed tests of the last run</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2291"/>
+        <location filename="../UI/UserInterface.py" line="2294"/>
         <source>&lt;b&gt;Rerun Failed Tests&lt;/b&gt;&lt;p&gt;Rerun all tests that failed during the last unittest run.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
+        <location filename="../UI/UserInterface.py" line="2426"/>
         <source>Compare &amp;Files side by side...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>Snapshot</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>&amp;Snapshot...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2511"/>
+        <location filename="../UI/UserInterface.py" line="2514"/>
         <source>Take snapshots of a screen region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2513"/>
+        <location filename="../UI/UserInterface.py" line="2516"/>
         <source>&lt;b&gt;Snapshot&lt;/b&gt;&lt;p&gt;This opens a dialog to take snapshots of a screen region.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5449"/>
+        <location filename="../UI/UserInterface.py" line="5465"/>
         <source>&lt;p&gt;Could not start Snapshot tool.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7324"/>
+        <location filename="../UI/UserInterface.py" line="7351"/>
         <source>Select Workspace Directory</source>
         <translation type="unfinished">Seleziona cartella di lavoro</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
+        <location filename="../UI/UserInterface.py" line="1893"/>
         <source>Left Toolbox</source>
         <translation type="unfinished">Barra degli strumenti sinistra</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>Right Toolbox</source>
         <translation type="unfinished">Barra degli strumenti destra</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1754"/>
+        <location filename="../UI/UserInterface.py" line="1757"/>
         <source>Switch the input focus to the Project-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1756"/>
+        <location filename="../UI/UserInterface.py" line="1759"/>
         <source>&lt;b&gt;Activate Project-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Project-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1771"/>
+        <location filename="../UI/UserInterface.py" line="1774"/>
         <source>Switch the input focus to the Multiproject-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1773"/>
+        <location filename="../UI/UserInterface.py" line="1776"/>
         <source>&lt;b&gt;Activate Multiproject-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Multiproject-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1789"/>
+        <location filename="../UI/UserInterface.py" line="1792"/>
         <source>Switch the input focus to the Debug-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1791"/>
+        <location filename="../UI/UserInterface.py" line="1794"/>
         <source>&lt;b&gt;Activate Debug-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Debug-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1807"/>
+        <location filename="../UI/UserInterface.py" line="1810"/>
         <source>Switch the input focus to the Shell window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1809"/>
+        <location filename="../UI/UserInterface.py" line="1812"/>
         <source>&lt;b&gt;Activate Shell&lt;/b&gt;&lt;p&gt;This switches the input focus to the Shell window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>&amp;File-Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1824"/>
+        <location filename="../UI/UserInterface.py" line="1827"/>
         <source>Switch the input focus to the File-Browser window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1826"/>
+        <location filename="../UI/UserInterface.py" line="1829"/>
         <source>&lt;b&gt;Activate File-Browser&lt;/b&gt;&lt;p&gt;This switches the input focus to the File-Browser window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Lo&amp;g-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1841"/>
+        <location filename="../UI/UserInterface.py" line="1844"/>
         <source>Switch the input focus to the Log-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1843"/>
+        <location filename="../UI/UserInterface.py" line="1846"/>
         <source>&lt;b&gt;Activate Log-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Log-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>&amp;Task-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1859"/>
+        <location filename="../UI/UserInterface.py" line="1862"/>
         <source>Switch the input focus to the Task-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Templ&amp;ate-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1878"/>
+        <location filename="../UI/UserInterface.py" line="1881"/>
         <source>Switch the input focus to the Template-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1880"/>
+        <location filename="../UI/UserInterface.py" line="1883"/>
         <source>&lt;b&gt;Activate Template-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Template-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
-        <source>&amp;Left Toolbox</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="1893"/>
+        <source>&amp;Left Toolbox</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1896"/>
         <source>Toggle the Left Toolbox window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1894"/>
+        <location filename="../UI/UserInterface.py" line="1897"/>
         <source>&lt;b&gt;Toggle the Left Toolbox window&lt;/b&gt;&lt;p&gt;If the Left Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>&amp;Right Toolbox</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1906"/>
+        <location filename="../UI/UserInterface.py" line="1909"/>
         <source>Toggle the Right Toolbox window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1907"/>
+        <location filename="../UI/UserInterface.py" line="1910"/>
         <source>&lt;b&gt;Toggle the Right Toolbox window&lt;/b&gt;&lt;p&gt;If the Right Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>Right Sidebar</source>
         <translation type="unfinished">Barra laterale destra</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>&amp;Right Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1946"/>
+        <location filename="../UI/UserInterface.py" line="1949"/>
         <source>Toggle the right sidebar window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1948"/>
+        <location filename="../UI/UserInterface.py" line="1951"/>
         <source>&lt;b&gt;Toggle the right sidebar window&lt;/b&gt;&lt;p&gt;If the right sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Cooperation-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Co&amp;operation-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1977"/>
+        <location filename="../UI/UserInterface.py" line="1980"/>
         <source>Switch the input focus to the Cooperation-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1979"/>
+        <location filename="../UI/UserInterface.py" line="1982"/>
         <source>&lt;b&gt;Activate Cooperation-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Cooperation-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Symbols-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>S&amp;ymbols-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2014"/>
+        <location filename="../UI/UserInterface.py" line="2017"/>
         <source>Switch the input focus to the Symbols-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2016"/>
+        <location filename="../UI/UserInterface.py" line="2019"/>
         <source>&lt;b&gt;Activate Symbols-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Symbols-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Numbers-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Num&amp;bers-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2033"/>
+        <location filename="../UI/UserInterface.py" line="2036"/>
         <source>Switch the input focus to the Numbers-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2035"/>
+        <location filename="../UI/UserInterface.py" line="2038"/>
         <source>&lt;b&gt;Activate Numbers-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Numbers-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3225"/>
+        <location filename="../UI/UserInterface.py" line="3228"/>
         <source>&amp;Windows</source>
         <translation type="unfinished">&amp;Finestre</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1861"/>
+        <location filename="../UI/UserInterface.py" line="1864"/>
         <source>&lt;b&gt;Activate Task-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Task-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>IRC</source>
         <translation type="unfinished">IRC</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>&amp;IRC</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1996"/>
+        <location filename="../UI/UserInterface.py" line="1999"/>
         <source>Switch the input focus to the IRC window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1998"/>
+        <location filename="../UI/UserInterface.py" line="2001"/>
         <source>&lt;b&gt;Activate IRC&lt;/b&gt;&lt;p&gt;This switches the input focus to the IRC window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-Designer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-&amp;Designer...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2347"/>
+        <location filename="../UI/UserInterface.py" line="2350"/>
         <source>Start Qt-Designer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2348"/>
+        <location filename="../UI/UserInterface.py" line="2351"/>
         <source>&lt;b&gt;Qt-Designer&lt;/b&gt;&lt;p&gt;Start Qt-Designer.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-Linguist</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-&amp;Linguist...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2373"/>
+        <location filename="../UI/UserInterface.py" line="2376"/>
         <source>Start Qt-Linguist</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2374"/>
+        <location filename="../UI/UserInterface.py" line="2377"/>
         <source>&lt;b&gt;Qt-Linguist&lt;/b&gt;&lt;p&gt;Start Qt-Linguist.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2862"/>
+        <location filename="../UI/UserInterface.py" line="2865"/>
         <source>Qt5 Documentation</source>
         <translation type="unfinished">Documentazione Qt4 {5 ?}</translation>
     </message>
@@ -83913,57 +84057,57 @@
         <translation type="obsolete">Documentazione Qt&amp;4 {5 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2866"/>
+        <location filename="../UI/UserInterface.py" line="2869"/>
         <source>Open Qt5 Documentation</source>
         <translation type="unfinished">Apri documentazione su Qt4 {5 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2675"/>
+        <location filename="../UI/UserInterface.py" line="2678"/>
         <source>Manage the saved SSL certificates</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2677"/>
+        <location filename="../UI/UserInterface.py" line="2680"/>
         <source>&lt;b&gt;Manage SSL Certificates...&lt;/b&gt;&lt;p&gt;Opens a dialog to manage the saved SSL certificates.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2691"/>
+        <location filename="../UI/UserInterface.py" line="2694"/>
         <source>Edit the message filters used to suppress unwanted messages</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2693"/>
+        <location filename="../UI/UserInterface.py" line="2696"/>
         <source>&lt;b&gt;Edit Message Filters&lt;/b&gt;&lt;p&gt;Opens a dialog to edit the message filters used to suppress unwanted messages been shown in an error window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2892"/>
+        <location filename="../UI/UserInterface.py" line="2895"/>
         <source>PyQt5 Documentation</source>
         <translation type="unfinished">Documentazione PyQt4 {5 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2896"/>
+        <location filename="../UI/UserInterface.py" line="2899"/>
         <source>Open PyQt5 Documentation</source>
         <translation type="unfinished">Apri documentazione su PyQt4 {5 ?}</translation>
     </message>
@@ -83973,32 +84117,32 @@
         <translation type="obsolete">&lt;p&gt;L&apos;inizio della documentazione di PyQt4 non è stato configurato.&lt;/p&gt; {5 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2937"/>
+        <location filename="../UI/UserInterface.py" line="2940"/>
         <source>&lt;b&gt;Python 3 Documentation&lt;/b&gt;&lt;p&gt;Display the Python 3 documentation. If no documentation directory is configured, the location of the Python 3 documentation is assumed to be the doc directory underneath the location of the Python 3 executable on Windows and &lt;i&gt;/usr/share/doc/packages/python/html&lt;/i&gt; on Unix. Set PYTHON3DOCDIR in your environment to override this.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>%v/%m</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2207"/>
+        <location filename="../UI/UserInterface.py" line="2210"/>
         <source>Show Error Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2203"/>
+        <location filename="../UI/UserInterface.py" line="2206"/>
         <source>Show Error &amp;Log...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2208"/>
+        <location filename="../UI/UserInterface.py" line="2211"/>
         <source>&lt;b&gt;Show Error Log...&lt;/b&gt;&lt;p&gt;Opens a dialog showing the most recent error log.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7054"/>
+        <location filename="../UI/UserInterface.py" line="7081"/>
         <source>Version Check</source>
         <translation type="unfinished"></translation>
     </message>
@@ -84073,528 +84217,528 @@
         <translation type="obsolete">eric6 non è ancora stato configurato. Il dialogo di configurazione verrà avviato.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="669"/>
+        <location filename="../UI/UserInterface.py" line="672"/>
         <source>Generating Plugins Toolbars...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4182"/>
+        <location filename="../UI/UserInterface.py" line="4185"/>
         <source>&amp;User Tools</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4252"/>
+        <location filename="../UI/UserInterface.py" line="4255"/>
         <source>No User Tools Configured</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
+        <location filename="../UI/UserInterface.py" line="2466"/>
         <source>Hex Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
+        <location filename="../UI/UserInterface.py" line="2466"/>
         <source>&amp;Hex Editor...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2709"/>
+        <location filename="../UI/UserInterface.py" line="2712"/>
         <source>Clear private data</source>
         <translation type="unfinished">Pulisci dati privati</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2711"/>
+        <location filename="../UI/UserInterface.py" line="2714"/>
         <source>&lt;b&gt;Clear private data&lt;/b&gt;&lt;p&gt;Clears the private data like the various list of recently opened files, projects or multi projects.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1669"/>
+        <location filename="../UI/UserInterface.py" line="1672"/>
         <source>Save session...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1674"/>
+        <location filename="../UI/UserInterface.py" line="1677"/>
         <source>&lt;b&gt;Save session...&lt;/b&gt;&lt;p&gt;This saves the current session to disk. A dialog is opened to select the file name.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>Load session</source>
         <translation type="unfinished">Carica sessione</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1682"/>
+        <location filename="../UI/UserInterface.py" line="1685"/>
         <source>Load session...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1687"/>
+        <location filename="../UI/UserInterface.py" line="1690"/>
         <source>&lt;b&gt;Load session...&lt;/b&gt;&lt;p&gt;This loads a session saved to disk previously. A dialog is opened to select the file name.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
+        <location filename="../UI/UserInterface.py" line="6710"/>
         <source>Crash Session found!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
+        <location filename="../UI/UserInterface.py" line="6710"/>
         <source>A session file of a crashed session was found. Shall this session be restored?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="672"/>
+        <location filename="../UI/UserInterface.py" line="675"/>
         <source>Cleaning Plugins Download Area...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="664"/>
+        <location filename="../UI/UserInterface.py" line="667"/>
         <source>Initializing Plugins...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>Update Check</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>You installed eric directly from the source code. There is no possibility to check for the availability of an update.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Code Documentation Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2867"/>
+        <location filename="../UI/UserInterface.py" line="2870"/>
         <source>&lt;b&gt;Qt5 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2898"/>
+        <location filename="../UI/UserInterface.py" line="2901"/>
         <source>&lt;b&gt;PyQt5 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2974"/>
+        <location filename="../UI/UserInterface.py" line="2977"/>
         <source>PySide2 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2978"/>
+        <location filename="../UI/UserInterface.py" line="2981"/>
         <source>Open PySide2 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2980"/>
+        <location filename="../UI/UserInterface.py" line="2983"/>
         <source>&lt;b&gt;PySide2 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide2 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>&lt;p&gt;The PySide{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2817"/>
+        <location filename="../UI/UserInterface.py" line="2820"/>
         <source>Virtualenv Manager</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2811"/>
+        <location filename="../UI/UserInterface.py" line="2814"/>
         <source>&amp;Virtualenv Manager...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2819"/>
+        <location filename="../UI/UserInterface.py" line="2822"/>
         <source>&lt;b&gt;Virtualenv Manager&lt;/b&gt;&lt;p&gt;This opens a dialog to manage the defined Python virtual environments.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2834"/>
+        <location filename="../UI/UserInterface.py" line="2837"/>
         <source>Virtualenv Configurator</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2828"/>
+        <location filename="../UI/UserInterface.py" line="2831"/>
         <source>Virtualenv &amp;Configurator...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2836"/>
+        <location filename="../UI/UserInterface.py" line="2839"/>
         <source>&lt;b&gt;Virtualenv Configurator&lt;/b&gt;&lt;p&gt;This opens a dialog for entering all the parameters needed to create a Python virtual environment using virtualenv or pyvenv.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3232"/>
+        <location filename="../UI/UserInterface.py" line="3235"/>
         <source>Left Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3244"/>
+        <location filename="../UI/UserInterface.py" line="3247"/>
         <source>Bottom Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3251"/>
+        <location filename="../UI/UserInterface.py" line="3254"/>
         <source>Right Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3271"/>
+        <location filename="../UI/UserInterface.py" line="3274"/>
         <source>Plug-ins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Restart</source>
         <translation type="unfinished">Riavvio</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Ctrl+Shift+Q</source>
         <comment>File|Quit</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1659"/>
+        <location filename="../UI/UserInterface.py" line="1662"/>
         <source>Restart the IDE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1660"/>
+        <location filename="../UI/UserInterface.py" line="1663"/>
         <source>&lt;b&gt;Restart the IDE&lt;/b&gt;&lt;p&gt;This restarts the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>Start Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Conda</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>PyPI</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3580"/>
+        <location filename="../UI/UserInterface.py" line="3583"/>
         <source>&lt;p&gt;This part of the status bar allows zooming the current editor or shell.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>MicroPython</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>Ctrl+Alt+Shift+I</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Ctrl+Alt+Shift+D</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2052"/>
-        <source>Switch the input focus to the Code Documentation Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="2055"/>
+        <source>Switch the input focus to the Code Documentation Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2058"/>
         <source>&lt;b&gt;Code Documentation Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Code Documentation Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>Ctrl+Alt+Shift+P</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2072"/>
+        <location filename="../UI/UserInterface.py" line="2075"/>
         <source>Switch the input focus to the PyPI window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2074"/>
+        <location filename="../UI/UserInterface.py" line="2077"/>
         <source>&lt;b&gt;PyPI&lt;/b&gt;&lt;p&gt;This switches the input focus to the PyPI window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Ctrl+Alt+Shift+C</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2090"/>
+        <location filename="../UI/UserInterface.py" line="2093"/>
         <source>Switch the input focus to the Conda window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2092"/>
+        <location filename="../UI/UserInterface.py" line="2095"/>
         <source>&lt;b&gt;Conda&lt;/b&gt;&lt;p&gt;This switches the input focus to the Conda window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>Ctrl+Alt+Shift+M</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2108"/>
+        <location filename="../UI/UserInterface.py" line="2111"/>
         <source>Switch the input focus to the MicroPython window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2110"/>
+        <location filename="../UI/UserInterface.py" line="2113"/>
         <source>&lt;b&gt;MicroPython&lt;/b&gt;&lt;p&gt;This switches the input focus to the MicroPython window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3229"/>
+        <location filename="../UI/UserInterface.py" line="3232"/>
         <source>Central Park</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3746"/>
+        <location filename="../UI/UserInterface.py" line="3749"/>
         <source>&lt;h2&gt;Version Numbers&lt;/h2&gt;&lt;table&gt;</source>
         <translation type="unfinished">&lt;h3&gt;Numeri di versione&lt;/h3&gt;&lt;table&gt; {2&gt;?} {2&gt;?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5075"/>
+        <location filename="../UI/UserInterface.py" line="5078"/>
         <source>&lt;p&gt;Could not find the Qt-Designer executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5145"/>
+        <location filename="../UI/UserInterface.py" line="5148"/>
         <source>&lt;p&gt;Could not find the Qt-Linguist executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5189"/>
+        <location filename="../UI/UserInterface.py" line="5192"/>
         <source>&lt;p&gt;Could not find the Qt-Assistant executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install Info</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install &amp;Info...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2219"/>
+        <location filename="../UI/UserInterface.py" line="2222"/>
         <source>Show Installation Information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2221"/>
+        <location filename="../UI/UserInterface.py" line="2224"/>
         <source>&lt;b&gt;Show Install Info...&lt;/b&gt;&lt;p&gt;Opens a dialog showing some information about the installation process.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2877"/>
+        <location filename="../UI/UserInterface.py" line="2880"/>
         <source>Qt6 Documentation</source>
         <translation type="unfinished">Documentazione Qt4 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2881"/>
+        <location filename="../UI/UserInterface.py" line="2884"/>
         <source>Open Qt6 Documentation</source>
         <translation type="unfinished">Apri documentazione su Qt4 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2882"/>
+        <location filename="../UI/UserInterface.py" line="2885"/>
         <source>&lt;b&gt;Qt6 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2909"/>
+        <location filename="../UI/UserInterface.py" line="2912"/>
         <source>PyQt6 Documentation</source>
         <translation type="unfinished">Documentazione PyQt4 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2913"/>
+        <location filename="../UI/UserInterface.py" line="2916"/>
         <source>Open PyQt6 Documentation</source>
         <translation type="unfinished">Apri documentazione su PyQt4 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2915"/>
+        <location filename="../UI/UserInterface.py" line="2918"/>
         <source>&lt;b&gt;PyQt6 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2994"/>
+        <location filename="../UI/UserInterface.py" line="2997"/>
         <source>PySide6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2998"/>
+        <location filename="../UI/UserInterface.py" line="3001"/>
         <source>Open PySide6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3000"/>
+        <location filename="../UI/UserInterface.py" line="3003"/>
         <source>&lt;b&gt;PySide6 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5754"/>
+        <location filename="../UI/UserInterface.py" line="5770"/>
         <source>&lt;p&gt;The PyQt{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1701"/>
+        <location filename="../UI/UserInterface.py" line="1704"/>
         <source>Open a new eric instance</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1703"/>
+        <location filename="../UI/UserInterface.py" line="1706"/>
         <source>&lt;b&gt;New Window&lt;/b&gt;&lt;p&gt;This opens a new instance of the eric IDE.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2146"/>
+        <location filename="../UI/UserInterface.py" line="2149"/>
         <source>&lt;b&gt;Helpviewer&lt;/b&gt;&lt;p&gt;Display the eric web browser. This window will show HTML help files and help from Qt help collections. It has the capability to navigate to links, set bookmarks, print the displayed help and some more features. You may use it to browse the internet as well&lt;/p&gt;&lt;p&gt;If called with a word selected, this word is search in the Qt help collection.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2181"/>
+        <location filename="../UI/UserInterface.py" line="2184"/>
         <source>&lt;b&gt;Check for Updates...&lt;/b&gt;&lt;p&gt;Checks the internet for updates of eric.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2194"/>
+        <location filename="../UI/UserInterface.py" line="2197"/>
         <source>&lt;b&gt;Show downloadable versions...&lt;/b&gt;&lt;p&gt;Shows the eric versions available for download from the internet.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2468"/>
+        <location filename="../UI/UserInterface.py" line="2471"/>
         <source>Start the eric Hex Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2470"/>
+        <location filename="../UI/UserInterface.py" line="2473"/>
         <source>&lt;b&gt;Hex Editor&lt;/b&gt;&lt;p&gt;Starts the eric Hex Editor for viewing or editing binary files.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric &amp;Web Browser...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2483"/>
+        <location filename="../UI/UserInterface.py" line="2486"/>
         <source>Start the eric Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2485"/>
+        <location filename="../UI/UserInterface.py" line="2488"/>
         <source>&lt;b&gt;eric Web Browser&lt;/b&gt;&lt;p&gt;Browse the Internet with the eric Web Browser.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2497"/>
+        <location filename="../UI/UserInterface.py" line="2500"/>
         <source>Start the eric Icon Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2499"/>
+        <location filename="../UI/UserInterface.py" line="2502"/>
         <source>&lt;b&gt;Icon Editor&lt;/b&gt;&lt;p&gt;Starts the eric Icon Editor for editing simple icons.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2585"/>
+        <location filename="../UI/UserInterface.py" line="2588"/>
         <source>&lt;b&gt;Show external tools&lt;/b&gt;&lt;p&gt;Opens a dialog to show the path and versions of all extenal tools used by eric.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2959"/>
+        <location filename="../UI/UserInterface.py" line="2962"/>
         <source>&lt;b&gt;Eric API Documentation&lt;/b&gt;&lt;p&gt;Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric installation directory.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5972"/>
+        <location filename="../UI/UserInterface.py" line="5988"/>
         <source>The eric web browser could not be started.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>&lt;p&gt;The eric web browser is not started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>The update to &lt;b&gt;{0}&lt;/b&gt; of eric is available at &lt;b&gt;{1}&lt;/b&gt;. Would you like to get it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7188"/>
+        <location filename="../UI/UserInterface.py" line="7215"/>
         <source>You are using a snapshot release of eric. A more up-to-date stable release might be available.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>eric is up to date</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>You are using the latest version of eric</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>eric has not been configured yet. The configuration dialog will be started.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6290"/>
+        <location filename="../UI/UserInterface.py" line="6306"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard Shortcuts File (*.e4k)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>&lt;p&gt;The keyboard shortcuts file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard shortcut file (*.e4k)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>Read Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6621"/>
+        <location filename="../UI/UserInterface.py" line="6637"/>
         <source>Save Session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6578"/>
+        <location filename="../UI/UserInterface.py" line="6594"/>
         <source>Read Session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>eric Session Files (*.esj);;eric XML Session Files (*.e5s)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -84675,7 +84819,7 @@
 <context>
     <name>Utilities</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="1420"/>
+        <location filename="../Utilities/__init__.py" line="1421"/>
         <source>&lt;p&gt;You may use %-codes as placeholders in the string. Supported codes are:&lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;column of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;directory of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;filename of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;home directory of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;line of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;path of the current project&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;selected text of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;username of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;the percent sign&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</source>
         <translation>&lt;p&gt;Puoi usare i codici % come segnaposti nella stringa. I codici supportati sono: &lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;colonna del cursore nell&apos;editor attuale&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;directory dell&apos;editor attuale&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;nome file dell&apos;editor corrente&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;directory home dell&apos;utente attuale&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;linea del cursore dell&apos;editor attuale&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;percorso del progetto attuale&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;testo selezionato dell&apos;editor attuale&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;username dell&apos;utente attuale&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;Segno percentuale&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</translation>
     </message>
@@ -85322,12 +85466,12 @@
 <context>
     <name>VcsMercurialPlugin</name>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="58"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="54"/>
         <source>Version Control - Mercurial</source>
         <translation>Controllo di versione - Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="132"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="124"/>
         <source>Mercurial</source>
         <translation>Mercurial</translation>
     </message>
@@ -87224,17 +87368,17 @@
         <translation>File modificato</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5217"/>
+        <location filename="../ViewManager/ViewManager.py" line="5230"/>
         <source>&amp;Clear</source>
         <translation>Pulis&amp;ci</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5211"/>
+        <location filename="../ViewManager/ViewManager.py" line="5224"/>
         <source>&amp;Add</source>
         <translation>&amp;Aggiungi</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5214"/>
+        <location filename="../ViewManager/ViewManager.py" line="5227"/>
         <source>&amp;Edit...</source>
         <translation>&amp;Modifica...</translation>
     </message>
@@ -88082,12 +88226,12 @@
         <translation>&lt;p&gt;Il file &lt;b&gt;{0}&lt;/b&gt; contiene modifiche non salvate.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4777"/>
+        <location filename="../ViewManager/ViewManager.py" line="4790"/>
         <source>Line: {0:5}</source>
         <translation>Linea: {0:5}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4783"/>
+        <location filename="../ViewManager/ViewManager.py" line="4796"/>
         <source>Pos: {0:5}</source>
         <translation>Pos: {0:5}</translation>
     </message>
@@ -88695,27 +88839,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>Edit Spelling Dictionary</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6233"/>
+        <location filename="../ViewManager/ViewManager.py" line="6246"/>
         <source>Editing {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6215"/>
+        <location filename="../ViewManager/ViewManager.py" line="6228"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6244"/>
+        <location filename="../ViewManager/ViewManager.py" line="6257"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>The spelling dictionary was saved successfully.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -88835,12 +88979,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4804"/>
+        <location filename="../ViewManager/ViewManager.py" line="4817"/>
         <source>Language: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4811"/>
+        <location filename="../ViewManager/ViewManager.py" line="4824"/>
         <source>EOL Mode: {0}</source>
         <translation type="unfinished"></translation>
     </message>
--- a/eric6/i18n/eric6_pt.ts	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/i18n/eric6_pt.ts	Thu Jun 03 11:39:23 2021 +0200
@@ -1289,45 +1289,60 @@
 <context>
     <name>ApplicationDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="43"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="47"/>
         <source>Application Diagram {0}</source>
         <translation>Diagrama da Aplicação {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>Parsing modules...</source>
         <translation>A analisar módulos...</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="197"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="252"/>
         <source>&lt;&lt;Application&gt;&gt;</source>
         <translation>&lt;&lt;Aplicação&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="199"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="254"/>
         <source>&lt;&lt;Others&gt;&gt;</source>
         <translation>&lt;&lt;Outros&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>Load Diagram</source>
         <translation>Carregar Diagrama</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>&lt;p&gt;The diagram belongs to the project &lt;b&gt;{0}&lt;/b&gt;. Shall this project be opened?&lt;/p&gt;</source>
         <translation>&lt;p&gt;O diagrama pertence ao projeto &lt;b&gt;{0}&lt;/b&gt;. Abrir este projeto?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>%v/%m Modules</source>
         <translation>%v%m Módulos</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="69"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
         <source>Application Diagram</source>
         <translation>Diagrama da Aplicação</translation>
     </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="126"/>
+        <source>Select the application directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
+        <source>No application package could be detected. Aborting...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="466"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>ApplicationPage</name>
@@ -1648,17 +1663,17 @@
 <context>
     <name>BackgroundService</name>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="139"/>
+        <location filename="../Utilities/BackgroundService.py" line="142"/>
         <source>{0} not configured.</source>
         <translation>{0} sem configurar.</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>Restart background client?</source>
         <translation>Reiniciar cliente de fundo?</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>&lt;p&gt;The background client for &lt;b&gt;{0}&lt;/b&gt; has stopped due to an exception. It&apos;s used by various plug-ins like the different checkers.&lt;/p&gt;&lt;p&gt;Select&lt;ul&gt;&lt;li&gt;&lt;b&gt;&apos;Yes&apos;&lt;/b&gt; to restart the client, but abort the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Retry&apos;&lt;/b&gt; to restart the client and the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;No&apos;&lt;/b&gt; to leave the client off.&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p&gt;Note: The client can be restarted by opening and accepting the preferences dialog or reloading/changing the project.&lt;/p&gt;</source>
         <translation>&lt;p&gt;O cliente de fundo para &lt;b&gt;{0}&lt;/b&gt; parou devido a uma exceção. Usa-se por varios complementos tais como os diferentes verificadores.&lt;/p&gt;&lt;p&gt;Selecionar&lt;ul&gt;&lt;li&gt;&lt;b&gt;&apos;Sim&apos;&lt;/b&gt; para reiniciar o cliente mas abandona o último trabalho&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Reintentar&apos;&lt;/b&gt; para reiniciar o cliente e o último trabalho&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Não&apos;&lt;/b&gt; para deixar o cliente apagado.&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p&gt;Nota: O cliente pode reiniciar-se abrindo e confirmando a caixa de diálogo de preferências ou recarregando/alterando o projeto.&lt;/p&gt;</translation>
     </message>
@@ -1668,32 +1683,32 @@
         <translation type="obsolete">Um erro no cliente de fundo de Eric parou o serviço.</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="456"/>
+        <location filename="../Utilities/BackgroundService.py" line="459"/>
         <source>Eric&apos;s background client disconnected because of an unknown reason.</source>
         <translation type="unfinished">Cliente de fundo de Eric desconectou-se por motivo desconhecido.</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>Background client disconnected.</source>
         <translation>Cliente de fundo desconectado.</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>The background client for &lt;b&gt;{0}&lt;/b&gt; disconnected because of an unknown reason.&lt;br&gt;Should it be restarted?</source>
         <translation>Cliente de fundo para &lt;b&gt;{0}&lt;/b&gt; desconetou-se por um motivo desconhecido. &lt;br&gt;Deveria reiniciar-se?</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="228"/>
+        <location filename="../Utilities/BackgroundService.py" line="231"/>
         <source>An error in Eric&apos;s background client stopped the service.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>Initialization of Background Service</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>&lt;p&gt;Initialization of Background Service &lt;b&gt;{0}&lt;/b&gt; failed.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2407,27 +2422,27 @@
 <context>
     <name>Browser</name>
     <message>
-        <location filename="../UI/Browser.py" line="94"/>
+        <location filename="../UI/Browser.py" line="96"/>
         <source>File-Browser</source>
         <translation>Navegador de Ficheiros</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="284"/>
+        <location filename="../UI/Browser.py" line="286"/>
         <source>Open</source>
         <translation>Abrir</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="233"/>
+        <location filename="../UI/Browser.py" line="235"/>
         <source>Run unittest...</source>
         <translation>Executar teste unitário...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="316"/>
+        <location filename="../UI/Browser.py" line="318"/>
         <source>Copy Path to Clipboard</source>
         <translation>Copiar Rota à Área de Transferência</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="263"/>
+        <location filename="../UI/Browser.py" line="265"/>
         <source>Open in Icon Editor</source>
         <translation>Abrir no Editor de Ícones</translation>
     </message>
@@ -2437,27 +2452,27 @@
         <translation type="obsolete">Configurar...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="342"/>
+        <location filename="../UI/Browser.py" line="344"/>
         <source>New toplevel directory...</source>
         <translation>Diretório de nível superior novo...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="298"/>
+        <location filename="../UI/Browser.py" line="300"/>
         <source>Add as toplevel directory</source>
         <translation>Adicionar como diretório de nível superior</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="301"/>
+        <location filename="../UI/Browser.py" line="303"/>
         <source>Remove from toplevel</source>
         <translation>Retirar do nível superior</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="305"/>
+        <location filename="../UI/Browser.py" line="307"/>
         <source>Refresh directory</source>
         <translation>Atualizar diretório</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="309"/>
+        <location filename="../UI/Browser.py" line="311"/>
         <source>Find in this directory</source>
         <translation>Encontrar neste diretório</translation>
     </message>
@@ -2467,172 +2482,172 @@
         <translation type="obsolete">Encontrar&amp;&amp;Substituir neste diretório</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="643"/>
+        <location filename="../UI/Browser.py" line="646"/>
         <source>New toplevel directory</source>
         <translation>Diretório de nível superior novo</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="328"/>
+        <location filename="../UI/Browser.py" line="330"/>
         <source>Goto</source>
         <translation>Ir a</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="435"/>
+        <location filename="../UI/Browser.py" line="437"/>
         <source>Line {0}</source>
         <translation>Linha {0}</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="113"/>
+        <location filename="../UI/Browser.py" line="115"/>
         <source>&lt;b&gt;The Browser Window&lt;/b&gt;&lt;p&gt;This allows you to easily navigate the hierarchy of directories and files on your system, identify the Python programs and open them up in a Source Viewer window. The window displays several separate hierarchies.&lt;/p&gt;&lt;p&gt;The first hierarchy is only shown if you have opened a program for debugging and its root is the directory containing that program. Usually all of the separate files that make up a Python application are held in the same directory, so this hierarchy gives you easy access to most of what you will need.&lt;/p&gt;&lt;p&gt;The next hierarchy is used to easily navigate the directories that are specified in the Python &lt;tt&gt;sys.path&lt;/tt&gt; variable.&lt;/p&gt;&lt;p&gt;The remaining hierarchies allow you navigate your system as a whole. On a UNIX system there will be a hierarchy with &lt;tt&gt;/&lt;/tt&gt; at its root and another with the user home directory. On a Windows system there will be a hierarchy for each drive on the system.&lt;/p&gt;&lt;p&gt;Python programs (i.e. those with a &lt;tt&gt;.py&lt;/tt&gt; file name suffix) are identified in the hierarchies with a Python icon. The right mouse button will popup a menu which lets you open the file in a Source Viewer window, open the file for debugging or use it for a unittest run.&lt;/p&gt;&lt;p&gt;The context menu of a class, function or method allows you to open the file defining this class, function or method and will ensure, that the correct source line is visible.&lt;/p&gt;&lt;p&gt;Qt-Designer files (i.e. those with a &lt;tt&gt;.ui&lt;/tt&gt; file name suffix) are shown with a Designer icon. The context menu of these files allows you to start Qt-Designer with that file.&lt;/p&gt;&lt;p&gt;Qt-Linguist files (i.e. those with a &lt;tt&gt;.ts&lt;/tt&gt; file name suffix) are shown with a Linguist icon. The context menu of these files allows you to start Qt-Linguist with that file.&lt;/p&gt;</source>
         <translation>&lt;b&gt;A Janela de Navegação&lt;/b&gt;&lt;p&gt;Permite navegar facilmente pela hierarquia dos diretório e ficheiros do sistema, identificar os programas de Python e abri-los na janela do Visor de Fontes. A janela mostra várias hierarquias separadas.&lt;/p&gt;&lt;p&gt;Apenas se mostrará a primeira hierarquia se está aberto um programa para depurar e o seu diretório raíz é o diretório que o contém. Geralmente, os distintos ficheiros que formam uma aplicação Python mantêm-se no mesmo diretório, deste modo a hierarquia dá acesso à maior parte do que se necessite.&lt;/p&gt;&lt;p&gt;A hierarquia seguinte utiliza-se para navagar facilmente nos diretórios especificados pela variável Python &lt;tt&gt;sys.path&lt;/tt&gt;.&lt;/p&gt;&lt;p&gt;As hierarquias restantes permitem navegar no seu sistema como um todo. Num sistema UNIX haverá uma hierarquia com &lt;tt&gt;/&lt;/tt&gt; como raíz e outra com o diretório do usuário. Num sistema Windows haverá uma hierarquia para cada unidade de disco no sistema.&lt;/p&gt;&lt;p&gt;Os programas Python (como aqueles que têm a extensão &lt;tt&gt;.py&lt;/tt&gt;) identificam-se nas hierarquias com um ícone Python. Um clique com o botão direito do rato frará aparecer um menú que permitirá abrir o ficheiro numa janela do Visor de Fontes, abrir para depurar ou usá-lo para executar um teste unitário.&lt;/p&gt;&lt;p&gt;O menú contextual de uma classe, função ou método permite abrir o ficheiro definindo esta classe, função ou método e assegurará que a linha de código correta esteja visível.&lt;/p&gt;&lt;p&gt;Os ficheiros de Qt-Designer (como os que têm extensão &lt;tt&gt;.ui&lt;/tt&gt;) aparecem com o ícone de Designer. O menú contextual destes ficheiros permite abrí-los com Qt-Designer.&lt;/p&gt;&lt;p&gt;Os ficheiros de Qt-Linguist (como os que têm extensão &lt;tt&gt;.ts&lt;/tt&gt;) aparecem com o ícone de Linguist. O menú contextual destes ficheiros permite abrí-los com Qt-Linguist.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>Show Mime-Type</source>
         <translation>Mostrar Tipos MIME</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="528"/>
+        <location filename="../UI/Browser.py" line="531"/>
         <source>The mime type of the file could not be determined.</source>
         <translation>O tipo MIME do ficheiro não pôde ser identificado.</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="546"/>
+        <location filename="../UI/Browser.py" line="549"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation>O ficheiro tem o tipo MIME &lt;b&gt;{0}&lt;/b&gt;.</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation>O ficheiro tem o tipo MIME &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt;Deverá ser adicionado à lista de tipos MIME de texto?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="260"/>
+        <location filename="../UI/Browser.py" line="262"/>
         <source>Open in Hex Editor</source>
         <translation>Abrir com Editor Hexadecimal</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="312"/>
+        <location filename="../UI/Browser.py" line="314"/>
         <source>Find &amp;&amp; Replace in this directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="241"/>
+        <location filename="../UI/Browser.py" line="243"/>
         <source>Refresh Source File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="214"/>
+        <location filename="../UI/Browser.py" line="216"/>
         <source>Show Hidden Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="221"/>
-        <source>New</source>
-        <translation type="unfinished">Novo</translation>
-    </message>
-    <message>
         <location filename="../UI/Browser.py" line="223"/>
+        <source>New</source>
+        <translation type="unfinished">Novo</translation>
+    </message>
+    <message>
+        <location filename="../UI/Browser.py" line="225"/>
         <source>Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="226"/>
+        <location filename="../UI/Browser.py" line="228"/>
         <source>File</source>
         <translation type="unfinished">Ficheiro</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="323"/>
+        <location filename="../UI/Browser.py" line="325"/>
         <source>Delete</source>
         <translation type="unfinished">Apagar</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>New Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="861"/>
+        <location filename="../UI/Browser.py" line="864"/>
         <source>Name for new directory:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="902"/>
+        <location filename="../UI/Browser.py" line="905"/>
         <source>A file or directory named &lt;b&gt;{0}&lt;/b&gt; exists already. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>&lt;p&gt;The directory &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>New File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="894"/>
+        <location filename="../UI/Browser.py" line="897"/>
         <source>Name for new file:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="942"/>
+        <location filename="../UI/Browser.py" line="945"/>
         <source>Do you really want to move this file to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="946"/>
+        <location filename="../UI/Browser.py" line="949"/>
         <source>Do you really want to delete this file?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>Delete File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>&lt;p&gt;The selected file &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="979"/>
+        <location filename="../UI/Browser.py" line="982"/>
         <source>Do you really want to move this directory to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="983"/>
+        <location filename="../UI/Browser.py" line="986"/>
         <source>Do you really want to delete this directory?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>Delete Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>&lt;p&gt;The selected directory &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1023"/>
+        <location filename="../UI/Browser.py" line="1026"/>
         <source>Do you really want to move these files to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1027"/>
+        <location filename="../UI/Browser.py" line="1030"/>
         <source>Do you really want to delete these files?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1032"/>
+        <location filename="../UI/Browser.py" line="1035"/>
         <source>Delete Files</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3225,6 +3240,32 @@
     </message>
 </context>
 <context>
+    <name>ClassItem</name>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="176"/>
+        <source>Class Attributes:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="211"/>
+        <source>none</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="191"/>
+        <source>Instance Attributes:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="210"/>
+        <source>Methods:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>ClearPrivateDataDialog</name>
     <message>
         <location filename="../UI/ClearPrivateDataDialog.ui" line="14"/>
@@ -4852,7 +4893,7 @@
 <context>
     <name>CodingError</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="131"/>
+        <location filename="../Utilities/__init__.py" line="132"/>
         <source>The coding &apos;{0}&apos; is wrong for the given text.</source>
         <translation>A codificação &apos;{0}&apos; é incorreta para o texto indicado.</translation>
     </message>
@@ -7263,7 +7304,7 @@
 <context>
     <name>DebugUI</name>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1980"/>
+        <location filename="../Debugger/DebugUI.py" line="1981"/>
         <source>Run Script</source>
         <translation>Executar Script</translation>
     </message>
@@ -7283,7 +7324,7 @@
         <translation>&lt;b&gt;Executar Script&lt;/b&gt;&lt;p&gt;Definir os argumentos da linha de comandos e executar o script fora do depurador. Poderão gravar-se primeiro as alterações que estejam por gravar.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>Run Project</source>
         <translation>Executar Projeto</translation>
     </message>
@@ -7383,7 +7424,7 @@
         <translation>&lt;b&gt;Perfilar Projeto&lt;/b&gt;&lt;p&gt;Define os argumentos da linha de comandos e perfila o projeto atual. Poderá gravar antes os ficheiros alterados por gravar.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2121"/>
+        <location filename="../Debugger/DebugUI.py" line="2122"/>
         <source>Debug Script</source>
         <translation>Depurar Script</translation>
     </message>
@@ -7403,7 +7444,7 @@
         <translation>&lt;b&gt;Depurar Script&lt;/b&gt;&lt;p&gt;Definir os argumentos da linha de comandos e definir a linha atual para que seja a primeira instrução Python executável da janela do editor atual. Poderão gravar-se primeiro as alterações que estejam por gravar.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>Debug Project</source>
         <translation>Depurar projeto</translation>
     </message>
@@ -7747,67 +7788,67 @@
         <translation>O programa a depurar acabou inesperadamente.</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>Breakpoint Condition Error</source>
         <translation>Erro de Condição de Ponto de Interrupção</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>&lt;p&gt;The condition of the breakpoint &lt;b&gt;{0}, {1}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation>&lt;p&gt;A condição do ponto de interrupção &lt;b&gt;{0}, {1}&lt;/b&gt;tem um erro de sintaxe.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>Watch Expression Error</source>
         <translation>Observar Erro de Expressão</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>&lt;p&gt;The watch expression &lt;b&gt;{0}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1530"/>
+        <location filename="../Debugger/DebugUI.py" line="1531"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; already exists.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1535"/>
+        <location filename="../Debugger/DebugUI.py" line="1536"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; for the variable &lt;b&gt;{1}&lt;/b&gt; already exists.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1540"/>
+        <location filename="../Debugger/DebugUI.py" line="1541"/>
         <source>Watch expression already exists</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1709"/>
+        <location filename="../Debugger/DebugUI.py" line="1710"/>
         <source>Coverage of Project</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1690"/>
+        <location filename="../Debugger/DebugUI.py" line="1691"/>
         <source>Coverage of Script</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>There is no main script defined for the current project. Aborting</source>
         <translation>O projeto atual não tem um script principal definido. A cancelar</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1854"/>
+        <location filename="../Debugger/DebugUI.py" line="1855"/>
         <source>Profile of Project</source>
         <translation>Perfil de Projeto</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1835"/>
+        <location filename="../Debugger/DebugUI.py" line="1836"/>
         <source>Profile of Script</source>
         <translation>Perfil do Script</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>There is no main script defined for the current project. No debugging possible.</source>
         <translation>O projeto atual não tem um script principal definido. Impossível depurar.</translation>
     </message>
@@ -7862,7 +7903,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1418"/>
+        <location filename="../Debugger/DebugUI.py" line="1419"/>
         <source>No locals available.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -10396,9 +10437,22 @@
 </translation>
     </message>
     <message>
-        <location filename="../E5Graphics/E5GraphicsView.py" line="417"/>
+        <location filename="../E5Graphics/E5GraphicsView.py" line="421"/>
         <source>{0}, Page {1}</source>
-        <translation>{0}, Página {1}</translation>
+        <translation type="obsolete">{0}, Página {1}</translation>
+    </message>
+</context>
+<context>
+    <name>E5JsonServer</name>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>JSON Protocol Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>&lt;p&gt;The response received from the client could not be decoded. Please report this issue with the received data to the eric bugs email address.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;&lt;p&gt;Data:&lt;br/&gt;{1}&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
@@ -11989,7 +12043,7 @@
         <translation>Desselecionar tudo</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7944"/>
+        <location filename="../QScintilla/Editor.py" line="7941"/>
         <source>Check spelling...</source>
         <translation>Verificação ortográfica...</translation>
     </message>
@@ -12599,32 +12653,32 @@
         <translation>Incluir atributos de classes?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Imports Diagram</source>
         <translation>Diagrama de Imports</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Include imports from external modules?</source>
         <translation>Incluir imports de módulos externos?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Application Diagram</source>
         <translation>Diagrama da Aplicação</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Include module names?</source>
         <translation>Incluir nome dos módulos?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7947"/>
+        <location filename="../QScintilla/Editor.py" line="7944"/>
         <source>Add to dictionary</source>
         <translation>Adicionar dicionário</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7949"/>
+        <location filename="../QScintilla/Editor.py" line="7946"/>
         <source>Ignore All</source>
         <translation>Ignorar Tudo</translation>
     </message>
@@ -12669,12 +12723,12 @@
         <translation>Alteração anterior</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>Sort Lines</source>
         <translation>Ordenar Linhas</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>The selection contains illegal data for a numerical sort.</source>
         <translation>A seleção contém dados ilegais para uma ordenação numérica.</translation>
     </message>
@@ -12744,12 +12798,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>Register Mouse Click Handler</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>A mouse click handler for &quot;{0}&quot; was already registered by &quot;{1}&quot;. Aborting request by &quot;{2}&quot;...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12779,12 +12833,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>EditorConfig Properties</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>&lt;p&gt;The EditorConfig properties for file &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12829,7 +12883,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8766"/>
+        <location filename="../QScintilla/Editor.py" line="8763"/>
         <source>Generate Docstring</source>
         <translation type="unfinished"></translation>
     </message>
@@ -19666,7 +19720,7 @@
 <context>
     <name>FileDialogWizardDialog</name>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="72"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="73"/>
         <source>QFileDialog Wizard</source>
         <translation>Assistente para QFileDialog</translation>
     </message>
@@ -19826,7 +19880,7 @@
         <translation>Mostrar Apenas Directórios</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="89"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="90"/>
         <source>Test</source>
         <translation>Teste</translation>
     </message>
@@ -19951,7 +20005,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="67"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="68"/>
         <source>E5FileDialog Wizard</source>
         <translation type="unfinished"></translation>
     </message>
@@ -27477,27 +27531,27 @@
 <context>
     <name>Globals</name>
     <message>
-        <location filename="../Globals/__init__.py" line="451"/>
+        <location filename="../Globals/__init__.py" line="455"/>
         <source>{0:4.2f} Bytes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Globals/__init__.py" line="455"/>
-        <source>{0:4.2f} KiB</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../Globals/__init__.py" line="459"/>
-        <source>{0:4.2f} MiB</source>
+        <source>{0:4.2f} KiB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="463"/>
-        <source>{0:4.2f} GiB</source>
+        <source>{0:4.2f} MiB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="467"/>
+        <source>{0:4.2f} GiB</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Globals/__init__.py" line="471"/>
         <source>{0:4.2f} TiB</source>
         <translation type="unfinished"></translation>
     </message>
@@ -32195,112 +32249,112 @@
         <translation>A criar ramo no repositorio Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1849"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1850"/>
         <source>Showing current branch</source>
         <translation>A mostrar o ramo atual</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1939"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1940"/>
         <source>Verifying the integrity of the Mercurial repository</source>
         <translation>A verificar a integridade do repositorio Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1953"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1954"/>
         <source>Showing the combined configuration settings</source>
         <translation>A mostrar as definições de configuração combinadas</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1966"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1967"/>
         <source>Showing aliases for remote repositories</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1979"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1980"/>
         <source>Recovering from interrupted transaction</source>
         <translation>A recuperar duma transação interrompida</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1992"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1993"/>
         <source>Identifying project directory</source>
         <translation>A identificar o diretorio do projeto</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>Create .hgignore file</source>
         <translation>Criar ficheiro .hgignore</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;O ficheiro &lt;b&gt;{0}&lt;/b&gt; já existe. Sobreescrever?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2119"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2120"/>
         <source>Create changegroup</source>
         <translation>Criar conjunto de alterações</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2076"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2077"/>
         <source>Mercurial Changegroup Files (*.hg)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2093"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2094"/>
         <source>&lt;p&gt;The Mercurial changegroup file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2129"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2130"/>
         <source>Preview changegroup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2157"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2158"/>
         <source>Mercurial Changegroup Files (*.hg);;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2178"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2179"/>
         <source>Apply changegroups</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2166"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2167"/>
         <source>Shall the working directory be updated?</source>
         <translation>O diretorio de trabalho deve ser atualizado?</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2197"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2198"/>
         <source>Bisect subcommand ({0}) invalid.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2217"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2218"/>
         <source>Mercurial Bisect ({0})</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2240"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2241"/>
         <source>Removing files from the Mercurial repository only</source>
         <translation>A retirar ficheiros apenas do repositorio Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2283"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2284"/>
         <source>Backing out changeset</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2263"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2264"/>
         <source>No revision given. Aborting...</source>
         <translation>Não foi dada revisão. Terminando...</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2299"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2300"/>
         <source>Rollback last transaction</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2292"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2293"/>
         <source>Are you sure you want to rollback the last transaction?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -32310,72 +32364,72 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>Mercurial Command Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2799"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2800"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be restarted.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2351"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2352"/>
         <source>Import Patch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2392"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2393"/>
         <source>Export Patches</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2431"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2432"/>
         <source>Change Phase</source>
         <translation>Mudar Fase</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2480"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2481"/>
         <source>Copy Changesets</source>
         <translation type="unfinished">Copiar Conjuntos de Alterações</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2520"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2521"/>
         <source>Copy Changesets (Continue)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2663"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2664"/>
         <source>Add Sub-repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2695"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2696"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be read.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2645"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2646"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub already contains an entry &lt;b&gt;{0}&lt;/b&gt;. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be written to.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>Remove Sub-repositories</source>
         <translation>Retirar Sub Repositórios</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2684"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2685"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub does not exist. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -32405,7 +32459,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2568"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2569"/>
         <source>Create Unversioned Archive</source>
         <translation type="unfinished"></translation>
     </message>
@@ -32465,87 +32519,87 @@
         <translation>A marcar como &apos;resolvido&apos;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1838"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1839"/>
         <source>Created new branch &lt;{0}&gt;.</source>
         <translation>Criado o novo ramo &lt;{0}&gt;.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3049"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3050"/>
         <source>Mercurial Bookmark</source>
         <translation>Marcador de Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Delete Bookmark</source>
         <translation>Apagar Marcador</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Select the bookmark to be deleted:</source>
         <translation>Selecionar o marcador a apagar:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3074"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3075"/>
         <source>Delete Mercurial Bookmark</source>
         <translation>Apagar o Marcador de Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3098"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3099"/>
         <source>Rename Mercurial Bookmark</source>
         <translation>Renomear o Marcador de Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3132"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3133"/>
         <source>Move Mercurial Bookmark</source>
         <translation>Mover o Marcador de Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Pull Bookmark</source>
         <translation>Puxar Marcador</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Select the bookmark to be pulled:</source>
         <translation>Selecionar o marcador a puxar:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3213"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3214"/>
         <source>Pulling bookmark from a remote Mercurial repository</source>
         <translation>A puxar marcador desde o repositório remoto de Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Push Bookmark</source>
         <translation>Empurrar Marcador</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Select the bookmark to be push:</source>
         <translation>Selecione o marcador a empurrar:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3253"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3254"/>
         <source>Pushing bookmark to a remote Mercurial repository</source>
         <translation>A empurrar marcador a um repositório remoto de Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>Delete All Backups</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>&lt;p&gt;Do you really want to delete all backup bundles stored the backup area &lt;b&gt;{0}&lt;/b&gt;?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2532"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2533"/>
         <source>Copy Changesets (Stop)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2545"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2546"/>
         <source>Copy Changesets (Abort)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -33504,42 +33558,42 @@
 <context>
     <name>HgClient</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="91"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="92"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Não pôde iniciar {0}.&lt;br&gt;Certifique-se de que está na rota de pesquisa.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="140"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="141"/>
         <source>Did not receive the &apos;hello&apos; message.</source>
         <translation>Não recebeu a mensagem &apos;hello&apos;.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="142"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="143"/>
         <source>Received data on unexpected channel.</source>
         <translation>Dados recebidos num canal imprevisto.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="147"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="148"/>
         <source>Bad &apos;hello&apos; message, expected &apos;capabilities: &apos; but got &apos;{0}&apos;.</source>
         <translation>Mensagem &apos;hello&apos; má, esperava-se &apos;capabilities: &apos; mas teve &apos;{0}&apos;.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="153"/>
         <source>&apos;capabilities&apos; message did not contain any capability.</source>
         <translation>Mensagem &apos;capabilities&apos; não tinha nenhuma capacidade.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="160"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="161"/>
         <source>Bad &apos;hello&apos; message, expected &apos;encoding: &apos; but got &apos;{0}&apos;.</source>
         <translation>Mensagem &apos;hello&apos; má, esperava-se &apos;encoding: &apos; mas teve &apos;{0}&apos;.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="165"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="166"/>
         <source>&apos;encoding&apos; message did not contain any encoding.</source>
         <translation>Mensagem &apos;encoding&apos; não tinha nenhuma codificação.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="379"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="380"/>
         <source>For message see output dialog.</source>
         <translation>Para a mensagem ver a caixa de diálogo da saída de comandos.</translation>
     </message>
@@ -38597,52 +38651,52 @@
 <context>
     <name>HgServeDialog</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="50"/>
         <source>Mercurial Server</source>
         <translation>Servidor Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="53"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="54"/>
         <source>Start Server</source>
         <translation>Iniciar Servidor</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="59"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="60"/>
         <source>Stop Server</source>
         <translation>Parar Servidor</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="65"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="66"/>
         <source>Start Browser</source>
         <translation>Iniciar Navegador</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="73"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="74"/>
         <source>Enter the server port</source>
         <translation>Introduza o porto do servidor</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="79"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="80"/>
         <source>Select the style to use</source>
         <translation>Selecionar o estilo a usar</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="83"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="84"/>
         <source>Server</source>
         <translation>Servidor</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="90"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="91"/>
         <source>Browser</source>
         <translation>Navegador</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>Process Generation Error</source>
         <translation>Erro na Criação de Processo</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Não pôde iniciar {0}.&lt;br&gt;Certifique-se de que está na rota de pesquisa.</translation>
     </message>
@@ -40383,17 +40437,17 @@
 <context>
     <name>HgUtilities</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="93"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="128"/>
         <source>The hg process finished with the exit code {0}</source>
         <translation type="unfinished">O processo hg terminou com o código de saída {0}</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="98"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="133"/>
         <source>The hg process did not finish within 30s.</source>
         <translation type="unfinished">O processo hg não acabou em 30s.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="102"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="137"/>
         <source>Could not start the hg executable.</source>
         <translation type="unfinished">Não se pôde iniciar o executável hg.</translation>
     </message>
@@ -42620,35 +42674,40 @@
 <context>
     <name>ImportsDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm {0}: {1}</source>
         <translation>Diagrama de Imports {0}: {1}</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm: {0}</source>
         <translation>Diagrama de Imports: {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>Parsing modules...</source>
         <translation>A analisar módulos...</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="124"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="136"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a Python package.</source>
         <translation>O diretório &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; não é um pacote Python.</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>%v/%m Modules</source>
         <translation>%v/%m Módulos</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="95"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="107"/>
         <source>Imports Diagramm</source>
         <translation>Diagrama de Imports</translation>
     </message>
+    <message>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="410"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>InputDialogWizard</name>
@@ -44348,22 +44407,22 @@
         <translation>Mostra o nome do servidor</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="252"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="251"/>
         <source>Yes</source>
         <translation>Sim</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="254"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="253"/>
         <source>No</source>
         <translation>Não</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Delete Channel</source>
         <translation>Apagar Canal</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Do you really want to delete channel &lt;b&gt;{0}&lt;/b&gt;?</source>
         <translation>Tem a certeza de que quer apagar o canal &lt;b&gt;{0}&lt;/b&gt;?</translation>
     </message>
@@ -52453,45 +52512,60 @@
 <context>
     <name>PackageDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram {0}: {1}</source>
         <translation>Diagrama do Pacote {0}: {1}</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram: {0}</source>
         <translation>Diagrama do Pacote: {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>Parsing modules...</source>
         <translation>A analisar módulos...</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="205"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="219"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a package.</source>
         <translation>O diretório &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; não é um pacote.</translation>
     </message>
     <message>
         <location filename="../Graphics/PackageDiagramBuilder.py" line="214"/>
         <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules.</source>
-        <translation>O pacote &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; não tem nenhum módulo.</translation>
+        <translation type="obsolete">O pacote &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; não tem nenhum módulo.</translation>
     </message>
     <message>
         <location filename="../Graphics/PackageDiagramBuilder.py" line="231"/>
         <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
-        <translation>O pacote &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; não tem nenhuma classe.</translation>
-    </message>
-    <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <translation type="obsolete">O pacote &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; não tem nenhuma classe.</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>%v/%m Modules</source>
         <translation>%v/%m Módulos</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="158"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="172"/>
         <source>Package Diagram</source>
         <translation>Diagrama do Pacote</translation>
     </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="230"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules or subpackages.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="247"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes or subpackages.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="555"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageScreenDialog</name>
@@ -54026,42 +54100,42 @@
 <context>
     <name>PixmapDiagram</name>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>Pixmap-Viewer</source>
         <translation>Visor de Pixmap</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="93"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="96"/>
         <source>Close</source>
         <translation>Fechar</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="98"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="101"/>
         <source>Print</source>
         <translation>Imprimir</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="103"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="106"/>
         <source>Print Preview</source>
         <translation>Antevisão da Impressão</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="133"/>
-        <source>Window</source>
-        <translation>Janela</translation>
-    </message>
-    <message>
         <location filename="../Graphics/PixmapDiagram.py" line="137"/>
+        <source>Window</source>
+        <translation>Janela</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PixmapDiagram.py" line="141"/>
         <source>Graphics</source>
         <translation>Gráficos</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; cannot be displayed. The format is not supported.&lt;/p&gt;</source>
         <translation>&lt;p&gt;O ficheiro &lt;b&gt;{0}&lt;/b&gt; não se pode mostrar. O formato não é suportado.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="391"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="416"/>
         <source>Diagram: {0}</source>
         <translation>Diagrama: {0}</translation>
     </message>
@@ -54399,12 +54473,12 @@
         <translation>&lt;p&gt;Existe o módulo de complemento &lt;b&gt;{0}&lt;/b&gt;. A cancelar...&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="492"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="476"/>
         <source>Error installing plugin. Reason: {0}</source>
         <translation>Erro ao instalar complemento. Motivo: {0}</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="501"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="485"/>
         <source>Unspecific exception installing plugin.</source>
         <translation>Exceção não especificada ao instalar complemento.</translation>
     </message>
@@ -54422,52 +54496,52 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="404"/>
+        <location filename="../PluginManager/PluginManager.py" line="410"/>
         <source>Module is missing the &apos;autoactivate&apos; attribute.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="415"/>
+        <location filename="../PluginManager/PluginManager.py" line="421"/>
         <source>Module is missing the &apos;pluginType&apos; and/or &apos;pluginTypename&apos; attributes.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="437"/>
+        <location filename="../PluginManager/PluginManager.py" line="446"/>
         <source>Module failed to load. Error: {0}</source>
         <translation>Falho na carga de módulo. Erro: {0}</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="614"/>
+        <location filename="../PluginManager/PluginManager.py" line="623"/>
         <source>Incompatible plugin activation method.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>Plugin Manager Error</source>
         <translation>Erro do Gestor de Complementos</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>&lt;p&gt;The plugin download directory &lt;b&gt;{0}&lt;/b&gt; could not be created. Please configure it via the configuration dialog.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>Error downloading file</source>
         <translation>Erro ao descarregar ficheiro</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>&lt;p&gt;Could not download the requested file from {0}.&lt;/p&gt;&lt;p&gt;Error: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>New plugin versions available</source>
         <translation>Disponível novas versões de complementos</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>&lt;p&gt;There are new plug-ins or plug-in updates available. Use the plug-in repository dialog to get them.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56601,7 +56675,7 @@
         <translation>&lt;b&gt;Diagrama da Aplicação...&lt;/b&gt;&lt;p&gt;Mostra um diagrama do projeto.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>Create Package List</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56611,7 +56685,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>Create Plugin Archive</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56726,27 +56800,27 @@
         <translation>Incluir nomes de módulos?</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5264"/>
+        <location filename="../Project/Project.py" line="5265"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; already exists.&lt;/p&gt;&lt;p&gt;Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5331"/>
+        <location filename="../Project/Project.py" line="5332"/>
         <source>The project does not have a main script defined. Aborting...</source>
         <translation>O projeto atual não tem um script principal definido. A cancelar...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5467"/>
+        <location filename="../Project/Project.py" line="5468"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be stored in the archive. Ignoring it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5536"/>
+        <location filename="../Project/Project.py" line="5537"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56816,7 +56890,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt; &lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56877,7 +56951,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5367"/>
+        <location filename="../Project/Project.py" line="5368"/>
         <source>Create Plugin Archives</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56897,37 +56971,37 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5345"/>
+        <location filename="../Project/Project.py" line="5346"/>
         <source>Select package lists:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Creating plugin archives...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Abort</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>%v/%m Archives</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5378"/>
+        <location filename="../Project/Project.py" line="5379"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished">&lt;p&gt;O ficheiro &lt;b&gt;{0}&lt;/b&gt; não se pôde ler. &lt;/p&gt;&lt;p&gt;Motivo: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5356"/>
+        <location filename="../Project/Project.py" line="5357"/>
         <source>&lt;p&gt;No package list files (PKGLIST*) available or selected. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5405"/>
+        <location filename="../Project/Project.py" line="5406"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; is not ready yet.&lt;/p&gt;&lt;p&gt;Please rework it and delete the&apos;; initial_list&apos; line of the header.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56967,7 +57041,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>Execute Make</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56987,7 +57061,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5744"/>
+        <location filename="../Project/Project.py" line="5745"/>
         <source>Test for Changes</source>
         <translation type="unfinished"></translation>
     </message>
@@ -57012,27 +57086,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5692"/>
+        <location filename="../Project/Project.py" line="5693"/>
         <source>The make process did not start.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5737"/>
+        <location filename="../Project/Project.py" line="5738"/>
         <source>The make process crashed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5747"/>
+        <location filename="../Project/Project.py" line="5748"/>
         <source>&lt;p&gt;There are changes that require the configured make target &lt;b&gt;{0}&lt;/b&gt; to be rebuilt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5752"/>
+        <location filename="../Project/Project.py" line="5753"/>
         <source>&lt;p&gt;There are changes that require the default make target to be rebuilt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>The makefile contains errors.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -57107,17 +57181,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5432"/>
+        <location filename="../Project/Project.py" line="5433"/>
         <source>&lt;p&gt;The eric plugin archive file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5484"/>
+        <location filename="../Project/Project.py" line="5485"/>
         <source>&lt;p&gt;The eric plugin archive files were created with some errors.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5492"/>
+        <location filename="../Project/Project.py" line="5493"/>
         <source>&lt;p&gt;The eric plugin archive files were created successfully.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -57976,32 +58050,32 @@
         <translation>Configurar...</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Delete files/directories</source>
         <translation>Apagar ficheiros/diretórios</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Do you really want to delete these entries from the project?</source>
         <translation>Tem a certeza de que quer apagar estas entradas do projeto?</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>Show Mime-Type</source>
         <translation type="unfinished">Mostrar Tipos MIME</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="272"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="273"/>
         <source>The mime type of the file could not be determined.</source>
         <translation type="unfinished">O tipo MIME do ficheiro não pôde ser identificado.</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="286"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="287"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation type="unfinished">O ficheiro tem o tipo MIME &lt;b&gt;{0}&lt;/b&gt;.</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation type="unfinished">O ficheiro tem o tipo MIME &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt;Deverá ser adicionado à lista de tipos MIME de texto?</translation>
     </message>
@@ -58733,32 +58807,32 @@
         <translation>Diagrama de Classes</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Include class attributes?</source>
         <translation>Incluir atributos da classe?</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Imports Diagram</source>
         <translation>Diagrama de Imports</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Include imports from external modules?</source>
         <translation>Incluir imports dos módulos externos?</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Package Diagram</source>
         <translation>Diagrama do Pacote</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Application Diagram</source>
         <translation>Diagrama da Aplicação</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Include module names?</source>
         <translation>Incluir nome dos módulos?</translation>
     </message>
@@ -71089,37 +71163,37 @@
 <context>
     <name>SvgDiagram</name>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="50"/>
+        <location filename="../Graphics/SvgDiagram.py" line="53"/>
         <source>SVG-Viewer</source>
         <translation>Visor de SVG</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="92"/>
+        <location filename="../Graphics/SvgDiagram.py" line="95"/>
         <source>Close</source>
         <translation>Fechar</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="97"/>
+        <location filename="../Graphics/SvgDiagram.py" line="100"/>
         <source>Print</source>
         <translation>Imprimir</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="102"/>
+        <location filename="../Graphics/SvgDiagram.py" line="105"/>
         <source>Print Preview</source>
         <translation>Antevisão da Impressão</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="132"/>
-        <source>Window</source>
-        <translation>Janela</translation>
-    </message>
-    <message>
         <location filename="../Graphics/SvgDiagram.py" line="136"/>
+        <source>Window</source>
+        <translation>Janela</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/SvgDiagram.py" line="140"/>
         <source>Graphics</source>
         <translation>Gráficos</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="363"/>
+        <location filename="../Graphics/SvgDiagram.py" line="385"/>
         <source>Diagram: {0}</source>
         <translation>Diagrama: {0}</translation>
     </message>
@@ -76896,65 +76970,105 @@
         <translation>Introduzir a descriçtrackeo da tarefa</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="60"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="71"/>
         <source>Creation Time:</source>
         <translation>Data de criaçtrackeo:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="77"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="92"/>
         <source>&amp;Priority:</source>
         <translation>&amp;Prioridade:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="87"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="102"/>
         <source>Select the task priority</source>
         <translation>Selecionar prioridade da tarefa</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="94"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="109"/>
         <source>High</source>
         <translation>Alta</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="99"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="114"/>
         <source>Normal</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="104"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="119"/>
         <source>Low</source>
         <translation>Baixa</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="112"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="175"/>
         <source>Select to indicate a task related to the current project</source>
         <translation>Selecionar para indicar uma tarefa relacionada com o projeto atual</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="115"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="178"/>
         <source>Project &amp;Task</source>
         <translation>&amp;Tarefa de Projeto</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="128"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="162"/>
         <source>Select to mark this task as completed</source>
         <translation>Selecionar para marcar esta tarefa como completa</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="131"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="165"/>
         <source>T&amp;ask completed</source>
         <translation>T&amp;arefa completa</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="138"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="223"/>
         <source>Filename:</source>
         <translation>Nome do ficheiro:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="155"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="216"/>
         <source>Line:</source>
         <translation>Linha:</translation>
     </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="127"/>
+        <source>Type:</source>
+        <translation type="unfinished">Tipo:</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="134"/>
+        <source>Select the task type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="41"/>
+        <source>Bugfix</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="42"/>
+        <source>Warning</source>
+        <translation type="unfinished">Aviso</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="43"/>
+        <source>ToDo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="44"/>
+        <source>Note</source>
+        <translation type="unfinished">Nota</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="45"/>
+        <source>Test</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="46"/>
+        <source>Documentation</source>
+        <translation type="unfinished">Documentação</translation>
+    </message>
 </context>
 <context>
     <name>TaskViewer</name>
@@ -77039,27 +77153,27 @@
         <translation>Configurar...</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>Activate task filter</source>
         <translation>Ativar filtro de tareias</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>The task filter doesn&apos;t have any active filters. Do you want to configure the filter settings?</source>
         <translation>Filtro de tarefas não tem nenhum filtro ativo. Deseja configurar defenições de filtro?</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Extracting project tasks...</source>
         <translation>A extrair tarefas do projeto...</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Abort</source>
         <translation>Cancelar</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="738"/>
+        <location filename="../Tasks/TaskViewer.py" line="755"/>
         <source>Extracting project tasks...
 {0}</source>
         <translation>A extrair tarefas do projeto...
@@ -77071,12 +77185,12 @@
         <translation>&amp;Configurar opções de escaneio</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Scan Filter Patterns</source>
         <translation>Padrões de Filtros de Escaneio</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Enter filename patterns of files to be excluded separated by a comma:</source>
         <translation>Introduzir padrões de nomes dos ficheiros a excluir separados por uma vírgula:</translation>
     </message>
@@ -77086,12 +77200,12 @@
         <translation>Tarefas do P&amp;rojeto</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>%v/%m Files</source>
         <translation>%v/%m Ficheiros</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="734"/>
+        <location filename="../Tasks/TaskViewer.py" line="751"/>
         <source>Tasks</source>
         <translation>Tarefas</translation>
     </message>
@@ -77119,22 +77233,22 @@
 <context>
     <name>TasksFile</name>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>Save Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>Read Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -79551,213 +79665,248 @@
 <context>
     <name>UMLClassDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram {0}: {1}</source>
         <translation>Diagrama de Classes {0}: {1}</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram: {0}</source>
         <translation>Diagrama de Classes: {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="83"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="96"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; could not be found.</source>
         <translation>Não se encontrou o módulo &lt;b&gt;&apos;{0}&apos;&lt;/b&gt;.</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="145"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="159"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
         <translation>O módulo &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; não tem nenhuma classe.</translation>
     </message>
+    <message>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="394"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>UMLDialog</name>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="82"/>
+        <location filename="../Graphics/UMLDialog.py" line="113"/>
         <source>Close</source>
         <translation>Fechar</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="122"/>
+        <location filename="../Graphics/UMLDialog.py" line="153"/>
         <source>Window</source>
         <translation>Janela</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="87"/>
+        <location filename="../Graphics/UMLDialog.py" line="118"/>
         <source>Load</source>
         <translation>Carregar</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="92"/>
+        <location filename="../Graphics/UMLDialog.py" line="123"/>
         <source>Save</source>
         <translation>Gravar</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="97"/>
+        <location filename="../Graphics/UMLDialog.py" line="128"/>
         <source>Save As...</source>
         <translation>Gravar Como...</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="107"/>
+        <location filename="../Graphics/UMLDialog.py" line="138"/>
         <source>Print</source>
         <translation>Imprimir</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="112"/>
+        <location filename="../Graphics/UMLDialog.py" line="143"/>
         <source>Print Preview</source>
         <translation>Antevisão da Impressão</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="126"/>
+        <location filename="../Graphics/UMLDialog.py" line="157"/>
         <source>File</source>
         <translation>Ficheiro</translation>
     </message>
     <message>
         <location filename="../Graphics/UMLDialog.py" line="178"/>
         <source>Illegal diagram type &apos;{0}&apos; given.</source>
-        <translation>Dado um tipo de diagrama ilegal &apos;{0}&apos;.</translation>
-    </message>
-    <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <translation type="obsolete">Dado um tipo de diagrama ilegal &apos;{0}&apos;.</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>Save Diagram</source>
         <translation>Gravar Diagrama</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="230"/>
+        <location filename="../Graphics/UMLDialog.py" line="257"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;O ficheiro &lt;b&gt;{0}&lt;/b&gt; já existe. Sobreescrever?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;O ficheiro &lt;b&gt;{0}&lt;/b&gt; não se pôde gravar. &lt;/p&gt;&lt;p&gt;Motivo: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="386"/>
+        <location filename="../Graphics/UMLDialog.py" line="551"/>
         <source>Load Diagram</source>
         <translation>Carregar Diagrama</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="287"/>
+        <location filename="../Graphics/UMLDialog.py" line="518"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;O ficheiro &lt;b&gt;{0}&lt;/b&gt; não se pôde ler. &lt;/p&gt;&lt;p&gt;Motivo: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;</source>
         <translation>&lt;p&gt;O ficheiro &lt;b&gt;{0}&lt;/b&gt; não contém dados válidos.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;&lt;p&gt;Invalid line: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;O ficheiro &lt;b&gt;{0}&lt;/b&gt; não contém dados válidos.&lt;/p&gt;&lt;p&gt;Linha inválida: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="102"/>
+        <location filename="../Graphics/UMLDialog.py" line="133"/>
         <source>Save as Image</source>
         <translation>Gravar como Imagem</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="274"/>
+        <location filename="../Graphics/UMLDialog.py" line="282"/>
         <source>Eric Graphics File (*.e5g);;All Files (*)</source>
-        <translation>Ficheiro de Gráficos Eric (*.e5g);;Ficheiros Todos (*)</translation>
+        <translation type="obsolete">Ficheiro de Gráficos Eric (*.e5g);;Ficheiros Todos (*)</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="43"/>
+        <source>Class Diagram</source>
+        <translation type="unfinished">Diagrama de Classes</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="45"/>
+        <source>Package Diagram</source>
+        <translation type="unfinished">Diagrama do Pacote</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="47"/>
+        <source>Imports Diagram</source>
+        <translation type="unfinished">Diagrama de Imports</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="49"/>
+        <source>Application Diagram</source>
+        <translation type="unfinished">Diagrama da Aplicação</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="105"/>
+        <source>Illegal Diagram Type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="289"/>
+        <source>Eric Graphics File (*.egj);;Eric Text Graphics File (*.e5g);;All Files (*)</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>UMLGraphicsView</name>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="83"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="85"/>
         <source>Delete shapes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="88"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="90"/>
         <source>Increase width by {0} points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="95"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="97"/>
         <source>Increase height by {0} points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="102"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="104"/>
         <source>Decrease width by {0} points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="109"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="111"/>
         <source>Decrease height by {0} points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="116"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="118"/>
         <source>Set size</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="126"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="128"/>
         <source>Re-Layout</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="131"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="133"/>
         <source>Align Left</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="138"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="140"/>
         <source>Align Center Horizontal</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="145"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="147"/>
         <source>Align Right</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="152"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="154"/>
         <source>Align Top</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="159"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="161"/>
         <source>Align Center Vertical</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="166"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="168"/>
         <source>Align Bottom</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="219"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="233"/>
         <source>Graphics</source>
         <translation>Gráficos</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>Save Diagram</source>
         <translation>Gravar Diagrama</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="341"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="360"/>
         <source>Portable Network Graphics (*.png);;Scalable Vector Graphics (*.svg)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="356"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="375"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;O ficheiro &lt;b&gt;{0}&lt;/b&gt; já existe. Sobreescrever?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="121"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="123"/>
         <source>Re-Scan</source>
         <translation type="unfinished"></translation>
     </message>
@@ -79841,7 +79990,7 @@
 <context>
     <name>UnittestDialog</name>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>Unittest</source>
         <translation>Teste Unitário</translation>
     </message>
@@ -80037,7 +80186,7 @@
         <translation type="obsolete">Deve introduzir um ficheiro de suite de testes.</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="699"/>
         <source>Preparing Testsuite</source>
         <translation>A preparar Suite de Testes</translation>
     </message>
@@ -80047,7 +80196,7 @@
         <translation type="obsolete">&lt;p&gt;Incapaz de executar teste &lt;b&gt;{0}&lt;/b&gt;.&lt;br&gt;{1}&lt;br&gt;{2}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="989"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="991"/>
         <source>Running</source>
         <translation>A executar</translation>
     </message>
@@ -80062,17 +80211,17 @@
         <translation type="obsolete">Executados {0} testes em {1:.3f}s</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1033"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1035"/>
         <source>Failure: {0}</source>
         <translation>Falho: {0}</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1048"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1050"/>
         <source>Error: {0}</source>
         <translation>Erro: {0}</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1162"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1164"/>
         <source>Show Source</source>
         <translation>Mostrar Fonte</translation>
     </message>
@@ -80107,17 +80256,17 @@
         <translation>Número de testes com êxito imprevistos</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1063"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1065"/>
         <source>    Skipped: {0}</source>
         <translation>    Saltado: {0}</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1081"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1083"/>
         <source>    Expected Failure</source>
         <translation>    Falhos esperados</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1098"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1100"/>
         <source>    Unexpected Success</source>
         <translation>    Sucessos Inesperados</translation>
     </message>
@@ -80219,17 +80368,17 @@
         <translation type="unfinished">Resultados</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="707"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
         <source>Unittest with auto-discovery</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="791"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="787"/>
         <source>You must enter a start directory for auto-discovery.</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="1013"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1015"/>
         <source>Ran %n test(s) in {0:.3f}s</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -80262,7 +80411,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="623"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="619"/>
         <source>Discovered %n Test(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -80270,22 +80419,22 @@
         </translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="628"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="624"/>
         <source>&lt;p&gt;Unable to discover tests.&lt;/p&gt;&lt;p&gt;{0}&lt;br/&gt;{1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="694"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="690"/>
         <source>You must select auto-discovery or enter a test suite file or a dotted test name.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="716"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="712"/>
         <source>&lt;Unnamed Test&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>&lt;p&gt;Unable to run test &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;{1}&lt;br/&gt;{2}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80315,7 +80464,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="724"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="720"/>
         <source>No test case has been selected. Shall all test cases be run?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80324,6 +80473,11 @@
         <source>Python3 Files ({0});;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../PyUnit/UnittestDialog.py" line="881"/>
+        <source>No unittest were found. Aborting...</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>UnknownDevicesDialog</name>
@@ -80562,948 +80716,948 @@
 <context>
     <name>UserInterface</name>
     <message>
-        <location filename="../UI/UserInterface.py" line="275"/>
+        <location filename="../UI/UserInterface.py" line="276"/>
         <source>Initializing Plugin Manager...</source>
         <translation>A iniciar Gestor de Complementos...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="282"/>
+        <location filename="../UI/UserInterface.py" line="283"/>
         <source>Generating Main User Interface...</source>
         <translation>A criar Interface Principal de Usuário...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="332"/>
+        <location filename="../UI/UserInterface.py" line="333"/>
         <source>Setting up connections...</source>
         <translation>A definir coneções...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="577"/>
+        <location filename="../UI/UserInterface.py" line="580"/>
         <source>Initializing Tools...</source>
         <translation>A iniciar Ferramentas...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="587"/>
+        <location filename="../UI/UserInterface.py" line="590"/>
         <source>Registering Objects...</source>
         <translation>A registar Objetos...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="624"/>
+        <location filename="../UI/UserInterface.py" line="627"/>
         <source>Initializing Actions...</source>
         <translation>A iniciar Ações...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="626"/>
+        <location filename="../UI/UserInterface.py" line="629"/>
         <source>Initializing Menus...</source>
         <translation>A iniciar Menús...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="628"/>
+        <location filename="../UI/UserInterface.py" line="631"/>
         <source>Initializing Toolbars...</source>
         <translation>A iniciar Barras de Ferramentas...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="630"/>
+        <location filename="../UI/UserInterface.py" line="633"/>
         <source>Initializing Statusbar...</source>
         <translation>A iniciar Barra de Estado...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="657"/>
+        <location filename="../UI/UserInterface.py" line="660"/>
         <source>Initializing Single Application Server...</source>
         <translation>A iniciar Servidor de Aplicação Única...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="667"/>
+        <location filename="../UI/UserInterface.py" line="670"/>
         <source>Activating Plugins...</source>
         <translation>A ativar Complementos...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="683"/>
+        <location filename="../UI/UserInterface.py" line="686"/>
         <source>Restoring Toolbarmanager...</source>
         <translation>A restaurar Gestor da Barra de Ferramentas...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Project-Viewer</source>
         <translation>Visor de Projeto</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Multiproject-Viewer</source>
         <translation>Visor de Multiprojeto</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Debug-Viewer</source>
         <translation>Visor de Depuração</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1124"/>
+        <location filename="../UI/UserInterface.py" line="1127"/>
         <source>Cooperation</source>
         <translation>Colaboração</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1180"/>
+        <location filename="../UI/UserInterface.py" line="1183"/>
         <source>Symbols</source>
         <translation>Símbolos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Log-Viewer</source>
         <translation>Visor de Registos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Task-Viewer</source>
         <translation>Visor de Tarefas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Template-Viewer</source>
         <translation>Visor de Modelos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1189"/>
+        <location filename="../UI/UserInterface.py" line="1192"/>
         <source>Numbers</source>
         <translation>Números</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>File-Browser</source>
         <translation>Navegador de Ficheiros</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Shell</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>Horizontal Toolbox</source>
         <translation>Caixa de Ferramentas Horizontal</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1602"/>
+        <location filename="../UI/UserInterface.py" line="1605"/>
         <source>{0} - Passive Mode</source>
         <translation>{0} - Modo Passivo</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1609"/>
+        <location filename="../UI/UserInterface.py" line="1612"/>
         <source>{0} - {1} - Passive Mode</source>
         <translation>{0} - {1} - Modo Passivo</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1613"/>
+        <location filename="../UI/UserInterface.py" line="1616"/>
         <source>{0} - {1} - {2} - Passive Mode</source>
         <translation>{0} - {1} - {2} - Modo Passivo</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Quit</source>
         <translation>Sair</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>&amp;Quit</source>
         <translation>Sai&amp;r</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Ctrl+Q</source>
         <comment>File|Quit</comment>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1642"/>
+        <location filename="../UI/UserInterface.py" line="1645"/>
         <source>Quit the IDE</source>
         <translation>Sair do IDE</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1643"/>
+        <location filename="../UI/UserInterface.py" line="1646"/>
         <source>&lt;b&gt;Quit the IDE&lt;/b&gt;&lt;p&gt;This quits the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Sair do IDE&lt;/b&gt;&lt;p&gt;Isto sai do IDE. Pode gravar antes as alterações. Qualquer programa Python que esteja a ser depurado será parado e as preferências serão escritas no disco.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1714"/>
+        <location filename="../UI/UserInterface.py" line="1717"/>
         <source>Edit Profile</source>
         <translation>Perfil de Edição</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1720"/>
+        <location filename="../UI/UserInterface.py" line="1723"/>
         <source>Activate the edit view profile</source>
         <translation>Ativar o perfil de vista de edição</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1722"/>
+        <location filename="../UI/UserInterface.py" line="1725"/>
         <source>&lt;b&gt;Edit Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Edit View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Perfil de Edição&lt;/b&gt;&lt;p&gt;Activa o &quot;Perfil da Vista de Edição&quot;. As janelas a serem mostradas, se este perfil está activado, podem ser configuradas com a caixa de diálogo &quot;Configuração de Vista do Perfil&quot;&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1731"/>
+        <location filename="../UI/UserInterface.py" line="1734"/>
         <source>Debug Profile</source>
         <translation>Perfil de Depuração</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1737"/>
+        <location filename="../UI/UserInterface.py" line="1740"/>
         <source>Activate the debug view profile</source>
         <translation>Ativar o perfile de vista de depuração</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1739"/>
+        <location filename="../UI/UserInterface.py" line="1742"/>
         <source>&lt;b&gt;Debug Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Debug View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Perfil de Depuração&lt;/b&gt;&lt;p&gt;Activa o &quot;Perfile da Vista de Depuração&quot;. As janelas a serem mostradas, se este perfil está activado, podem ser configuradas com a caixa de diálogo &quot;Configuração de Vista do Perfil&quot;&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>&amp;Project-Viewer</source>
         <translation>Visor de &amp;Projeto</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Alt+Shift+P</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>&amp;Multiproject-Viewer</source>
         <translation>Visor de &amp;Multiprojeto</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Alt+Shift+M</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>&amp;Debug-Viewer</source>
         <translation>Visor de &amp;Depuração</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Alt+Shift+D</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>&amp;Shell</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Alt+Shift+S</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>Alt+Shift+F</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Alt+Shift+G</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Alt+Shift+T</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Alt+Shift+A</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>&amp;Horizontal Toolbox</source>
         <translation>Caixa de Ferramentas &amp;Horizontal</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1919"/>
+        <location filename="../UI/UserInterface.py" line="1922"/>
         <source>Toggle the Horizontal Toolbox window</source>
         <translation>Alternar a janela de Caixa de Ferramentas Horizontal</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1921"/>
+        <location filename="../UI/UserInterface.py" line="1924"/>
         <source>&lt;b&gt;Toggle the Horizontal Toolbox window&lt;/b&gt;&lt;p&gt;If the Horizontal Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>Left Sidebar</source>
         <translation>Barra Esquerda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>&amp;Left Sidebar</source>
         <translation>Barra Lateral &amp;Esquerda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1933"/>
+        <location filename="../UI/UserInterface.py" line="1936"/>
         <source>Toggle the left sidebar window</source>
         <translation>Alternar a janela da barra lateral esquerda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1934"/>
+        <location filename="../UI/UserInterface.py" line="1937"/>
         <source>&lt;b&gt;Toggle the left sidebar window&lt;/b&gt;&lt;p&gt;If the left sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>Bottom Sidebar</source>
         <translation>Barra Inferior</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>&amp;Bottom Sidebar</source>
         <translation>Barra Lateral &amp;Inferior</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1960"/>
+        <location filename="../UI/UserInterface.py" line="1963"/>
         <source>Toggle the bottom sidebar window</source>
         <translation>Alternar janela da barra lateral inferior</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1962"/>
+        <location filename="../UI/UserInterface.py" line="1965"/>
         <source>&lt;b&gt;Toggle the bottom sidebar window&lt;/b&gt;&lt;p&gt;If the bottom sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Alternar janela da barra lateral inferior&lt;/b&gt;&lt;p&gt;Mostra a janela da barra lateral inferior se está escondida. Esconde-a se está visível.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Alt+Shift+O</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Alt+Shift+Y</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Alt+Shift+B</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>What&apos;s This?</source>
         <translation>O que é Isto?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>&amp;What&apos;s This?</source>
         <translation>O &amp;que é Isto?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>Shift+F1</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2126"/>
+        <location filename="../UI/UserInterface.py" line="2129"/>
         <source>Context sensitive help</source>
         <translation type="unfinished">Ajuda sensível ao contexto</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2127"/>
+        <location filename="../UI/UserInterface.py" line="2130"/>
         <source>&lt;b&gt;Display context sensitive help&lt;/b&gt;&lt;p&gt;In What&apos;s This? mode, the mouse cursor shows an arrow with a question mark, and you can click on the interface elements to get a short description of what they do and how to use them. In dialogs, this feature can be accessed using the context help button in the titlebar.&lt;/p&gt;</source>
         <translation type="unfinished">&lt;b&gt;Mostrar ajuda sensível a contexto&lt;/b&gt;&lt;p&gt;No modo &apos;Que é Isto?&apos; o cursor do rato mostra uma flecha com um ponto de  interrogação, e pode clicar nos elementos da interface para ver uma breve descrição do que fazem e como se usam. Nas caixas de diálogo, pode-se aceder a esta característica através do botão de ajuda contextual da barra de título.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>Helpviewer</source>
         <translation>Visor de Ajuda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>&amp;Helpviewer...</source>
         <translation>Visor de &amp;Ajuda...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>F1</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2144"/>
+        <location filename="../UI/UserInterface.py" line="2147"/>
         <source>Open the helpviewer window</source>
         <translation>Abrir a janela do visor de ajuda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show Versions</source>
         <translation>Mostrar Versões</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show &amp;Versions</source>
         <translation>Mostrar &amp;Versões</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2168"/>
+        <location filename="../UI/UserInterface.py" line="2171"/>
         <source>Display version information</source>
         <translation>Mostrar a informação da versão</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2170"/>
+        <location filename="../UI/UserInterface.py" line="2173"/>
         <source>&lt;b&gt;Show Versions&lt;/b&gt;&lt;p&gt;Display version information.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../UI/UserInterface.py" line="2183"/>
+        <source>Check for Updates</source>
+        <translation>Procurar Atualizações</translation>
+    </message>
+    <message>
         <location filename="../UI/UserInterface.py" line="2180"/>
-        <source>Check for Updates</source>
-        <translation>Procurar Atualizações</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2177"/>
         <source>Check for &amp;Updates...</source>
         <translation>Procurar &amp;Atualizações...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show downloadable versions</source>
         <translation>Mostrar versões descarregáveis</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show &amp;downloadable versions...</source>
         <translation>Mostrar versões &amp;descarregáveis...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2192"/>
+        <location filename="../UI/UserInterface.py" line="2195"/>
         <source>Show the versions available for download</source>
         <translation>Mostrar as versões disponíveis para descarregar</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Report Bug</source>
         <translation>Reportar Falho</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2229"/>
+        <location filename="../UI/UserInterface.py" line="2232"/>
         <source>Report &amp;Bug...</source>
         <translation>Reportar &amp;Falho...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2233"/>
+        <location filename="../UI/UserInterface.py" line="2236"/>
         <source>Report a bug</source>
         <translation>Reportar um falho</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2234"/>
+        <location filename="../UI/UserInterface.py" line="2237"/>
         <source>&lt;b&gt;Report Bug...&lt;/b&gt;&lt;p&gt;Opens a dialog to report a bug.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Reportar Falho...&lt;/b&gt;&lt;p&gt;Abre uma caixa de diálogo para reportar um falho.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request Feature</source>
         <translation>Solicitar Característica</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request &amp;Feature...</source>
         <translation>Solicitar Ca&amp;racterística...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2245"/>
+        <location filename="../UI/UserInterface.py" line="2248"/>
         <source>Send a feature request</source>
         <translation>Enviar uma solicitude de característica</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2247"/>
+        <location filename="../UI/UserInterface.py" line="2250"/>
         <source>&lt;b&gt;Request Feature...&lt;/b&gt;&lt;p&gt;Opens a dialog to send a feature request.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Solicitar Característica...&lt;/b&gt;&lt;p&gt;Abre uma caixa de diálogo para enviar uma solicitude de característica.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3365"/>
+        <location filename="../UI/UserInterface.py" line="3368"/>
         <source>Unittest</source>
         <translation>Teste Unitário</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2256"/>
+        <location filename="../UI/UserInterface.py" line="2259"/>
         <source>&amp;Unittest...</source>
         <translation>Teste &amp;Unitário...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2261"/>
+        <location filename="../UI/UserInterface.py" line="2264"/>
         <source>Start unittest dialog</source>
         <translation>Iniciar a caixa de diálogo de teste unitário</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2262"/>
+        <location filename="../UI/UserInterface.py" line="2265"/>
         <source>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Perform unit tests. The dialog gives you the ability to select and run a unittest suite.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
+        <location filename="../UI/UserInterface.py" line="2273"/>
         <source>Unittest Restart</source>
         <translation>Reiniciar Teste Unitário</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
+        <location filename="../UI/UserInterface.py" line="2273"/>
         <source>&amp;Restart Unittest...</source>
         <translation>&amp;Reiniciar Teste Unitário...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2275"/>
+        <location filename="../UI/UserInterface.py" line="2278"/>
         <source>Restart last unittest</source>
         <translation>Reiniciar o último teste unitário</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2276"/>
+        <location filename="../UI/UserInterface.py" line="2279"/>
         <source>&lt;b&gt;Restart Unittest&lt;/b&gt;&lt;p&gt;Restart the unittest performed last.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
+        <location filename="../UI/UserInterface.py" line="2303"/>
         <source>Unittest Script</source>
         <translation>Teste Unitário ao Script</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
+        <location filename="../UI/UserInterface.py" line="2303"/>
         <source>Unittest &amp;Script...</source>
         <translation>Teste Unitário ao &amp;Script...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2305"/>
+        <location filename="../UI/UserInterface.py" line="2308"/>
         <source>Run unittest with current script</source>
         <translation>Executar teste unitário com o script atual</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2307"/>
+        <location filename="../UI/UserInterface.py" line="2310"/>
         <source>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Run unittest with current script.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Teste Unitário ao Script&lt;/b&gt;&lt;p&gt;Executar teste unitário com o script atual.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
+        <location filename="../UI/UserInterface.py" line="2318"/>
         <source>Unittest Project</source>
         <translation>Teste Unitário ao Projeto</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
+        <location filename="../UI/UserInterface.py" line="2318"/>
         <source>Unittest &amp;Project...</source>
         <translation>Teste Unitário ao &amp;Projeto...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2320"/>
+        <location filename="../UI/UserInterface.py" line="2323"/>
         <source>Run unittest with current project</source>
         <translation>Executar teste unitário com o projeto atual</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2322"/>
+        <location filename="../UI/UserInterface.py" line="2325"/>
         <source>&lt;b&gt;Unittest Project&lt;/b&gt;&lt;p&gt;Run unittest with current project.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Teste Unitário ao Projeto&lt;/b&gt;&lt;p&gt;Executar teste unitário com o projeto atual.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
+        <location filename="../UI/UserInterface.py" line="2386"/>
         <source>UI Previewer</source>
         <translation>Antevisor de UI</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
+        <location filename="../UI/UserInterface.py" line="2386"/>
         <source>&amp;UI Previewer...</source>
         <translation>Antevisor &amp;UI...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2388"/>
+        <location filename="../UI/UserInterface.py" line="2391"/>
         <source>Start the UI Previewer</source>
         <translation>Iniciar Antevisor de UI</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2389"/>
+        <location filename="../UI/UserInterface.py" line="2392"/>
         <source>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Start the UI Previewer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Antevisor de UI&lt;/b&gt;&lt;p&gt;Inicia o Antevisor de UI.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
+        <location filename="../UI/UserInterface.py" line="2399"/>
         <source>Translations Previewer</source>
         <translation>Antevisor de Traduções</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
+        <location filename="../UI/UserInterface.py" line="2399"/>
         <source>&amp;Translations Previewer...</source>
         <translation>Antevisor de &amp;Traduções...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2401"/>
+        <location filename="../UI/UserInterface.py" line="2404"/>
         <source>Start the Translations Previewer</source>
         <translation>Iniciar Antevisor de Traduções</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2403"/>
+        <location filename="../UI/UserInterface.py" line="2406"/>
         <source>&lt;b&gt;Translations Previewer&lt;/b&gt;&lt;p&gt;Start the Translations Previewer.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
+        <location filename="../UI/UserInterface.py" line="2413"/>
         <source>Compare Files</source>
         <translation>Comparar Ficheiros</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
+        <location filename="../UI/UserInterface.py" line="2413"/>
         <source>&amp;Compare Files...</source>
         <translation>&amp;Comparar Ficheiros...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2428"/>
+        <location filename="../UI/UserInterface.py" line="2431"/>
         <source>Compare two files</source>
         <translation>Comparar dois ficheiros</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2416"/>
+        <location filename="../UI/UserInterface.py" line="2419"/>
         <source>&lt;b&gt;Compare Files&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
+        <location filename="../UI/UserInterface.py" line="2426"/>
         <source>Compare Files side by side</source>
         <translation>Comparar Ficheiros lado-a-lado</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2429"/>
+        <location filename="../UI/UserInterface.py" line="2432"/>
         <source>&lt;b&gt;Compare Files side by side&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files and show the result side by side.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
+        <location filename="../UI/UserInterface.py" line="2440"/>
         <source>SQL Browser</source>
         <translation>Navegador SQL</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
+        <location filename="../UI/UserInterface.py" line="2440"/>
         <source>SQL &amp;Browser...</source>
         <translation>Navegador S&amp;QL...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2442"/>
+        <location filename="../UI/UserInterface.py" line="2445"/>
         <source>Browse a SQL database</source>
         <translation>Navegar numa base de dados SQL</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2443"/>
+        <location filename="../UI/UserInterface.py" line="2446"/>
         <source>&lt;b&gt;SQL Browser&lt;/b&gt;&lt;p&gt;Browse a SQL database.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Navegador SQL&lt;/b&gt;&lt;p&gt;Navegar numa base de dados SQL.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2455"/>
+        <location filename="../UI/UserInterface.py" line="2458"/>
         <source>Mini Editor</source>
         <translation>Mini Editor</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2450"/>
+        <location filename="../UI/UserInterface.py" line="2453"/>
         <source>Mini &amp;Editor...</source>
         <translation>Mini &amp;Editor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2456"/>
+        <location filename="../UI/UserInterface.py" line="2459"/>
         <source>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Open a dialog with a simplified editor.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Abre uma caixa de diálogo com um editor simplificado.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
+        <location filename="../UI/UserInterface.py" line="2495"/>
         <source>Icon Editor</source>
         <translation>Editor de Ícones</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
+        <location filename="../UI/UserInterface.py" line="2495"/>
         <source>&amp;Icon Editor...</source>
         <translation>Editor de &amp;Ícones...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
+        <location filename="../UI/UserInterface.py" line="2524"/>
         <source>Preferences</source>
         <translation>Preferências</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
+        <location filename="../UI/UserInterface.py" line="2524"/>
         <source>&amp;Preferences...</source>
         <translation>&amp;Preferências...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2526"/>
+        <location filename="../UI/UserInterface.py" line="2529"/>
         <source>Set the prefered configuration</source>
         <translation>Definir a configuração desejada</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2528"/>
+        <location filename="../UI/UserInterface.py" line="2531"/>
         <source>&lt;b&gt;Preferences&lt;/b&gt;&lt;p&gt;Set the configuration items of the application with your prefered values.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Preferências&lt;/b&gt;&lt;p&gt;Define os elementos de configuração da aplicação com os valores desejados.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
+        <location filename="../UI/UserInterface.py" line="2540"/>
         <source>Export Preferences</source>
         <translation>Exportar Preferências</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
+        <location filename="../UI/UserInterface.py" line="2540"/>
         <source>E&amp;xport Preferences...</source>
         <translation>E&amp;xportar Preferências...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2542"/>
+        <location filename="../UI/UserInterface.py" line="2545"/>
         <source>Export the current configuration</source>
         <translation>Exportar a configuração atual</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2544"/>
+        <location filename="../UI/UserInterface.py" line="2547"/>
         <source>&lt;b&gt;Export Preferences&lt;/b&gt;&lt;p&gt;Export the current configuration to a file.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Exportar Preferências&lt;/b&gt;&lt;p&gt;Exporta a configuração atual a um ficheiro.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
+        <location filename="../UI/UserInterface.py" line="2554"/>
         <source>Import Preferences</source>
         <translation>Importar Preferências</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
+        <location filename="../UI/UserInterface.py" line="2554"/>
         <source>I&amp;mport Preferences...</source>
         <translation>&amp;Importar Preferências...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2556"/>
+        <location filename="../UI/UserInterface.py" line="2559"/>
         <source>Import a previously exported configuration</source>
         <translation>Importar uma configuração exportada antes</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2558"/>
+        <location filename="../UI/UserInterface.py" line="2561"/>
         <source>&lt;b&gt;Import Preferences&lt;/b&gt;&lt;p&gt;Import a previously exported configuration.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Importar Preferências&lt;/b&gt;&lt;p&gt;Importa uma configuração anteriormente exportada.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
+        <location filename="../UI/UserInterface.py" line="2568"/>
         <source>Reload APIs</source>
         <translation>Recarregar APIs</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
+        <location filename="../UI/UserInterface.py" line="2568"/>
         <source>Reload &amp;APIs</source>
         <translation>Recarregar &amp;APIs</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2569"/>
+        <location filename="../UI/UserInterface.py" line="2572"/>
         <source>Reload the API information</source>
         <translation>Recarregar a informação de API</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2571"/>
+        <location filename="../UI/UserInterface.py" line="2574"/>
         <source>&lt;b&gt;Reload APIs&lt;/b&gt;&lt;p&gt;Reload the API information.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2583"/>
+        <location filename="../UI/UserInterface.py" line="2586"/>
         <source>Show external tools</source>
         <translation>Mostrar ferramentas externas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2578"/>
+        <location filename="../UI/UserInterface.py" line="2581"/>
         <source>Show external &amp;tools</source>
         <translation>Mostrar &amp;ferramentas externas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
+        <location filename="../UI/UserInterface.py" line="2597"/>
         <source>View Profiles</source>
         <translation>Perfiles de Vista</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
+        <location filename="../UI/UserInterface.py" line="2597"/>
         <source>&amp;View Profiles...</source>
         <translation>Perfiles de &amp;Vista...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2599"/>
+        <location filename="../UI/UserInterface.py" line="2602"/>
         <source>Configure view profiles</source>
         <translation>Configurar perfiles de vista</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2601"/>
+        <location filename="../UI/UserInterface.py" line="2604"/>
         <source>&lt;b&gt;View Profiles&lt;/b&gt;&lt;p&gt;Configure the view profiles. With this dialog you may set the visibility of the various windows for the predetermined view profiles.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Perfiles de Vista&lt;/b&gt;&lt;p&gt;Configurar os perfiles de vista. Com esta caixa de diálogo pode definir a visibilidade de várias janelas para os perfiles de vista predefinidos.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
+        <location filename="../UI/UserInterface.py" line="2614"/>
         <source>Toolbars</source>
         <translation>Barras de Ferramentas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
+        <location filename="../UI/UserInterface.py" line="2614"/>
         <source>Tool&amp;bars...</source>
         <translation>&amp;Barras de Ferramentas...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2616"/>
+        <location filename="../UI/UserInterface.py" line="2619"/>
         <source>Configure toolbars</source>
         <translation>Configurar as barras de ferramentas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2617"/>
+        <location filename="../UI/UserInterface.py" line="2620"/>
         <source>&lt;b&gt;Toolbars&lt;/b&gt;&lt;p&gt;Configure the toolbars. With this dialog you may change the actions shown on the various toolbars and define your own toolbars.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
+        <location filename="../UI/UserInterface.py" line="2629"/>
         <source>Keyboard Shortcuts</source>
         <translation>Atalhos de Teclado</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
+        <location filename="../UI/UserInterface.py" line="2629"/>
         <source>Keyboard &amp;Shortcuts...</source>
         <translation>Atalho&amp;s de Teclado...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2631"/>
+        <location filename="../UI/UserInterface.py" line="2634"/>
         <source>Set the keyboard shortcuts</source>
         <translation>Definir os atalhos de teclado</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2633"/>
+        <location filename="../UI/UserInterface.py" line="2636"/>
         <source>&lt;b&gt;Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Set the keyboard shortcuts of the application with your prefered values.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>Export Keyboard Shortcuts</source>
         <translation>Exportar Atalhos de Teclado</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2641"/>
+        <location filename="../UI/UserInterface.py" line="2644"/>
         <source>&amp;Export Keyboard Shortcuts...</source>
         <translation>&amp;Exportar Atalhos de Teclado...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2646"/>
+        <location filename="../UI/UserInterface.py" line="2649"/>
         <source>Export the keyboard shortcuts</source>
         <translation>Exportar os Atalhos de Teclado</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2648"/>
+        <location filename="../UI/UserInterface.py" line="2651"/>
         <source>&lt;b&gt;Export Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Export the keyboard shortcuts of the application.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Import Keyboard Shortcuts</source>
         <translation>Importar Atalhos de Teclado</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2655"/>
+        <location filename="../UI/UserInterface.py" line="2658"/>
         <source>&amp;Import Keyboard Shortcuts...</source>
         <translation>&amp;Importar Atalhos de Teclado...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2660"/>
+        <location filename="../UI/UserInterface.py" line="2663"/>
         <source>Import the keyboard shortcuts</source>
         <translation>Importar os atalhos de teclado</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2662"/>
+        <location filename="../UI/UserInterface.py" line="2665"/>
         <source>&lt;b&gt;Import Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Import the keyboard shortcuts of the application.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
+        <location filename="../UI/UserInterface.py" line="2723"/>
         <source>Activate current editor</source>
         <translation>Ativar o editor atual</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
+        <location filename="../UI/UserInterface.py" line="2723"/>
         <source>Alt+Shift+E</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
+        <location filename="../UI/UserInterface.py" line="2733"/>
         <source>Show next</source>
         <translation>Mostrar próximo</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
+        <location filename="../UI/UserInterface.py" line="2733"/>
         <source>Ctrl+Alt+Tab</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
+        <location filename="../UI/UserInterface.py" line="2742"/>
         <source>Show previous</source>
         <translation>Mostrar anterior</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
+        <location filename="../UI/UserInterface.py" line="2742"/>
         <source>Shift+Ctrl+Alt+Tab</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
+        <location filename="../UI/UserInterface.py" line="2751"/>
         <source>Switch between tabs</source>
         <translation>Mudar entre separadores</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
+        <location filename="../UI/UserInterface.py" line="2751"/>
         <source>Ctrl+1</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
+        <location filename="../UI/UserInterface.py" line="2760"/>
         <source>Plugin Infos</source>
         <translation>Informação dos Complementos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
+        <location filename="../UI/UserInterface.py" line="2760"/>
         <source>&amp;Plugin Infos...</source>
         <translation>Informação dos &amp;Complementos...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2761"/>
+        <location filename="../UI/UserInterface.py" line="2764"/>
         <source>Show Plugin Infos</source>
         <translation>Mostrar Informação dos Complementos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2762"/>
+        <location filename="../UI/UserInterface.py" line="2765"/>
         <source>&lt;b&gt;Plugin Infos...&lt;/b&gt;&lt;p&gt;This opens a dialog, that show some information about loaded plugins.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Informação dos Complementos...&lt;/b&gt;&lt;p&gt;Abre uma caixa de diálogo que mostra alguma informação sobre os complementos carregados.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2775"/>
+        <location filename="../UI/UserInterface.py" line="2778"/>
         <source>Install Plugins</source>
         <translation>Instalar Complementos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2770"/>
+        <location filename="../UI/UserInterface.py" line="2773"/>
         <source>&amp;Install Plugins...</source>
         <translation>&amp;Instalar Complementos...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2776"/>
+        <location filename="../UI/UserInterface.py" line="2779"/>
         <source>&lt;b&gt;Install Plugins...&lt;/b&gt;&lt;p&gt;This opens a dialog to install or update plugins.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Instalar Complementos...&lt;/b&gt;&lt;p&gt;Abre uma caixa de diálogo para instalar ou atualizar complementos.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2788"/>
+        <location filename="../UI/UserInterface.py" line="2791"/>
         <source>Uninstall Plugin</source>
         <translation>Desinstalar Complemento</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2783"/>
+        <location filename="../UI/UserInterface.py" line="2786"/>
         <source>&amp;Uninstall Plugin...</source>
         <translation>&amp;Desinstalar Complemento...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2789"/>
+        <location filename="../UI/UserInterface.py" line="2792"/>
         <source>&lt;b&gt;Uninstall Plugin...&lt;/b&gt;&lt;p&gt;This opens a dialog to uninstall a plugin.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Desinstalar Complemento...&lt;/b&gt;&lt;p&gt;Abre uma caixa de diálogo para desinstalar um complemento.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
+        <location filename="../UI/UserInterface.py" line="2799"/>
         <source>Plugin Repository</source>
         <translation>Repositório de Complementos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
+        <location filename="../UI/UserInterface.py" line="2799"/>
         <source>Plugin &amp;Repository...</source>
         <translation>&amp;Repositório de Complementos...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2801"/>
+        <location filename="../UI/UserInterface.py" line="2804"/>
         <source>Show Plugins available for download</source>
         <translation>Mostrar Complementos disponíveis para descarregar</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2803"/>
+        <location filename="../UI/UserInterface.py" line="2806"/>
         <source>&lt;b&gt;Plugin Repository...&lt;/b&gt;&lt;p&gt;This opens a dialog, that shows a list of plugins available on the Internet.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Repositório de Complementos...&lt;/b&gt;&lt;p&gt;Abre uma caixa de diálogo que mostra a lista de complementos disponíveis em Internet.&lt;/p&gt;</translation>
     </message>
@@ -81533,7 +81687,7 @@
         <translation type="obsolete">Abrir a Documentação de PyQt4</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2953"/>
+        <location filename="../UI/UserInterface.py" line="2956"/>
         <source>Eric API Documentation</source>
         <translation>Documentação de API do Eric</translation>
     </message>
@@ -81543,7 +81697,7 @@
         <translation type="obsolete">Documentação de API do &amp;Eric</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2957"/>
+        <location filename="../UI/UserInterface.py" line="2960"/>
         <source>Open Eric API Documentation</source>
         <translation>Abrir a Documentação de API do Eric</translation>
     </message>
@@ -81563,112 +81717,112 @@
         <translation type="obsolete">Abrir Documentação de PySide</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3158"/>
+        <location filename="../UI/UserInterface.py" line="3161"/>
         <source>&amp;Unittest</source>
         <translation>Teste &amp;Unitário</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3102"/>
+        <location filename="../UI/UserInterface.py" line="3105"/>
         <source>E&amp;xtras</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3112"/>
+        <location filename="../UI/UserInterface.py" line="3115"/>
         <source>Wi&amp;zards</source>
         <translation>A&amp;ssistentes</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3175"/>
+        <location filename="../UI/UserInterface.py" line="3178"/>
         <source>Select Tool Group</source>
         <translation>Selecionar Grupo de Ferramentas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3186"/>
+        <location filename="../UI/UserInterface.py" line="3189"/>
         <source>Se&amp;ttings</source>
         <translation>Definiçõe&amp;s</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3216"/>
+        <location filename="../UI/UserInterface.py" line="3219"/>
         <source>&amp;Window</source>
         <translation>&amp;Janela</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3277"/>
+        <location filename="../UI/UserInterface.py" line="3280"/>
         <source>&amp;Toolbars</source>
         <translation>Barras de Ferramen&amp;tas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3139"/>
+        <location filename="../UI/UserInterface.py" line="3142"/>
         <source>P&amp;lugins</source>
         <translation>Comp&amp;lementos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3148"/>
+        <location filename="../UI/UserInterface.py" line="3151"/>
         <source>Configure...</source>
         <translation>Configurar...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3291"/>
+        <location filename="../UI/UserInterface.py" line="3294"/>
         <source>&amp;Help</source>
         <translation>&amp;Ajuda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3364"/>
+        <location filename="../UI/UserInterface.py" line="3367"/>
         <source>Tools</source>
         <translation>Ferramentas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3366"/>
-        <source>Settings</source>
-        <translation>Definições</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
-        <source>Help</source>
-        <translation>Ajuda</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3368"/>
-        <source>Profiles</source>
-        <translation>Perfiles</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="3369"/>
+        <source>Settings</source>
+        <translation>Definições</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5216"/>
+        <source>Help</source>
+        <translation>Ajuda</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3371"/>
+        <source>Profiles</source>
+        <translation>Perfiles</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3372"/>
         <source>Plugins</source>
         <translation>Complementos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3534"/>
+        <location filename="../UI/UserInterface.py" line="3537"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors language.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3541"/>
+        <location filename="../UI/UserInterface.py" line="3544"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors encoding.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3548"/>
+        <location filename="../UI/UserInterface.py" line="3551"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors eol setting.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3555"/>
+        <location filename="../UI/UserInterface.py" line="3558"/>
         <source>&lt;p&gt;This part of the status bar displays an indication of the current editors files writability.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3562"/>
+        <location filename="../UI/UserInterface.py" line="3565"/>
         <source>&lt;p&gt;This part of the status bar displays the line number of the current editor.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3569"/>
+        <location filename="../UI/UserInterface.py" line="3572"/>
         <source>&lt;p&gt;This part of the status bar displays the cursor position of the current editor.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3640"/>
+        <location filename="../UI/UserInterface.py" line="3643"/>
         <source>External Tools/{0}</source>
         <translation>Ferramentas Externas/{0}</translation>
     </message>
@@ -81678,52 +81832,52 @@
         <translation type="obsolete">&lt;h3&gt;Números de Versão&lt;/h3&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7268"/>
+        <location filename="../UI/UserInterface.py" line="7295"/>
         <source>&lt;/table&gt;</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Email address or mail server address is empty. Please configure your Email settings in the Preferences Dialog.</source>
         <translation>A direção do correio eletrónico ou a direção do servidor de correio está vazia. Por favor configure as Definiçães de Correio Eletrónico na Caixa de Diálogo de Preferências.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>Restart application</source>
         <translation>Reiniciar a aplicação</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>The application needs to be restarted. Do it now?</source>
         <translation>A aplicação necessita ser reiniciada. Reiniciar agora?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4207"/>
+        <location filename="../UI/UserInterface.py" line="4210"/>
         <source>Configure Tool Groups ...</source>
         <translation>Configurar Grupos de Ferramentas...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4211"/>
+        <location filename="../UI/UserInterface.py" line="4214"/>
         <source>Configure current Tool Group ...</source>
         <translation>Configurar o atual Grupo de Ferramentas ...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4162"/>
+        <location filename="../UI/UserInterface.py" line="4165"/>
         <source>&amp;Builtin Tools</source>
         <translation>Ferramentas &amp;Internas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4179"/>
+        <location filename="../UI/UserInterface.py" line="4182"/>
         <source>&amp;Plugin Tools</source>
         <translation>Ferramentas dos &amp;Complementos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4326"/>
+        <location filename="../UI/UserInterface.py" line="4329"/>
         <source>&amp;Show all</source>
         <translation>&amp;Mostrar tudo</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4328"/>
+        <location filename="../UI/UserInterface.py" line="4331"/>
         <source>&amp;Hide all</source>
         <translation>&amp;Esconder tudo</translation>
     </message>
@@ -81738,110 +81892,110 @@
         <translation type="obsolete">Suporte Qt3</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>Problem</source>
         <translation>Problema</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not exist or is zero length.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../UI/UserInterface.py" line="5552"/>
+        <source>Process Generation Error</source>
+        <translation>Erro na Criação de Processo</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5069"/>
+        <source>&lt;p&gt;Could not start Qt-Designer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5139"/>
+        <source>&lt;p&gt;Could not start Qt-Linguist.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5183"/>
+        <source>&lt;p&gt;Could not start Qt-Assistant.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5216"/>
+        <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source>
+        <translation>Não há nenhum visor personalizado selecionado. Por favor use a caixa de diálogo das preferências para escolher um.</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5230"/>
+        <source>&lt;p&gt;Could not start custom viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5250"/>
+        <source>&lt;p&gt;Could not start the help viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5300"/>
+        <source>&lt;p&gt;Could not start UI Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5357"/>
+        <source>&lt;p&gt;Could not start Translation Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5380"/>
+        <source>&lt;p&gt;Could not start SQL Browser.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5497"/>
+        <source>External Tools</source>
+        <translation>Ferramentas Externas</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5488"/>
+        <source>No tool entry found for external tool &apos;{0}&apos; in tool group &apos;{1}&apos;.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5497"/>
+        <source>No toolgroup entry &apos;{0}&apos; found.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../UI/UserInterface.py" line="5536"/>
-        <source>Process Generation Error</source>
-        <translation>Erro na Criação de Processo</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5066"/>
-        <source>&lt;p&gt;Could not start Qt-Designer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5136"/>
-        <source>&lt;p&gt;Could not start Qt-Linguist.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5180"/>
-        <source>&lt;p&gt;Could not start Qt-Assistant.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
-        <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source>
-        <translation>Não há nenhum visor personalizado selecionado. Por favor use a caixa de diálogo das preferências para escolher um.</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5227"/>
-        <source>&lt;p&gt;Could not start custom viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5247"/>
-        <source>&lt;p&gt;Could not start the help viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5297"/>
-        <source>&lt;p&gt;Could not start UI Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5354"/>
-        <source>&lt;p&gt;Could not start Translation Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5377"/>
-        <source>&lt;p&gt;Could not start SQL Browser.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
-        <source>External Tools</source>
-        <translation>Ferramentas Externas</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5472"/>
-        <source>No tool entry found for external tool &apos;{0}&apos; in tool group &apos;{1}&apos;.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
-        <source>No toolgroup entry &apos;{0}&apos; found.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5520"/>
         <source>Starting process &apos;{0} {1}&apos;.
 </source>
         <translation>A iniciar processo &apos;{0} {1}&apos;.
 </translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5536"/>
+        <location filename="../UI/UserInterface.py" line="5552"/>
         <source>&lt;p&gt;Could not start the tool entry &lt;b&gt;{0}&lt;/b&gt;.&lt;br&gt;Ensure that it is available as &lt;b&gt;{1}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5614"/>
+        <location filename="../UI/UserInterface.py" line="5630"/>
         <source>Process &apos;{0}&apos; has exited.
 </source>
         <translation>Processo &apos;{0}&apos; saiu.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>Documentation Missing</source>
         <translation>Falta a Documentação</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>&lt;p&gt;The documentation starting point &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; could not be found.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>Documentation</source>
         <translation>Documentação</translation>
     </message>
@@ -81861,77 +82015,77 @@
         <translation type="obsolete">Ler tarefas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1673"/>
+        <location filename="../UI/UserInterface.py" line="1676"/>
         <source>Save session</source>
         <translation>Guargar sessão</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6550"/>
+        <location filename="../UI/UserInterface.py" line="6566"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>Read session</source>
         <translation>Sessão de leitura</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>Drop Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; is not a file.&lt;/p&gt;</source>
         <translation>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; não é um ficheiro.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>&amp;Cancel</source>
         <translation>&amp;Cancelar</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7059"/>
+        <location filename="../UI/UserInterface.py" line="7086"/>
         <source>Trying host {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>Update available</source>
         <translation>Atualização disponível</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Error during updates check</source>
         <translation>Erro na verificação de atualizações</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Could not perform updates check.</source>
         <translation>Não procurar atualizações.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7253"/>
+        <location filename="../UI/UserInterface.py" line="7280"/>
         <source>&lt;h3&gt;Available versions&lt;/h3&gt;&lt;table&gt;</source>
         <translation>&lt;h3&gt;Versões Disponíveis&lt;/h3&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>First time usage</source>
         <translation>Usado a primeira vez</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2931"/>
+        <location filename="../UI/UserInterface.py" line="2934"/>
         <source>Python 3 Documentation</source>
         <translation>Documentação de Python 3</translation>
     </message>
@@ -81941,7 +82095,7 @@
         <translation type="obsolete">Documentação de Python &amp;3</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2935"/>
+        <location filename="../UI/UserInterface.py" line="2938"/>
         <source>Open Python 3 Documentation</source>
         <translation>Abrir a Documentação de Python 3</translation>
     </message>
@@ -81961,408 +82115,408 @@
         <translation type="obsolete">Abrir a Documentação de Python 2</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>Error getting versions information</source>
         <translation>Erro na obtenção da informação de versões</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7111"/>
+        <location filename="../UI/UserInterface.py" line="7138"/>
         <source>The versions information could not be downloaded. Please go online and try again.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Open Browser</source>
         <translation>Abrir Navegador</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Could not start a web browser</source>
         <translation>Não se pôde iniciar um navegador web</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>The versions information could not be downloaded for the last 7 days. Please go online and try again.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="692"/>
+        <location filename="../UI/UserInterface.py" line="695"/>
         <source>Setting View Profile...</source>
         <translation>A definir Perfil de Vista...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="705"/>
+        <location filename="../UI/UserInterface.py" line="708"/>
         <source>Reading Tasks...</source>
         <translation>A Ler Tarefas...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="710"/>
+        <location filename="../UI/UserInterface.py" line="713"/>
         <source>Reading Templates...</source>
         <translation>A ler Modelos...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="715"/>
+        <location filename="../UI/UserInterface.py" line="718"/>
         <source>Starting Debugger...</source>
         <translation>A iniciar Depurador...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New Window</source>
         <translation>Nova Janela</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New &amp;Window</source>
         <translation>Nova &amp;Janela</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>Ctrl+Shift+N</source>
         <comment>File|New Window</comment>
         <translation>Ctrl+Shift+N</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Unittest Rerun Failed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Rerun Failed Tests...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2289"/>
+        <location filename="../UI/UserInterface.py" line="2292"/>
         <source>Rerun failed tests of the last run</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2291"/>
+        <location filename="../UI/UserInterface.py" line="2294"/>
         <source>&lt;b&gt;Rerun Failed Tests&lt;/b&gt;&lt;p&gt;Rerun all tests that failed during the last unittest run.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
+        <location filename="../UI/UserInterface.py" line="2426"/>
         <source>Compare &amp;Files side by side...</source>
         <translation>Comparar &amp;Ficheiros lado-a-lado...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>Snapshot</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>&amp;Snapshot...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2511"/>
+        <location filename="../UI/UserInterface.py" line="2514"/>
         <source>Take snapshots of a screen region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2513"/>
+        <location filename="../UI/UserInterface.py" line="2516"/>
         <source>&lt;b&gt;Snapshot&lt;/b&gt;&lt;p&gt;This opens a dialog to take snapshots of a screen region.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5449"/>
+        <location filename="../UI/UserInterface.py" line="5465"/>
         <source>&lt;p&gt;Could not start Snapshot tool.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7324"/>
+        <location filename="../UI/UserInterface.py" line="7351"/>
         <source>Select Workspace Directory</source>
         <translation>Selecionar o Diretório de Trabalho</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
+        <location filename="../UI/UserInterface.py" line="1893"/>
         <source>Left Toolbox</source>
         <translation>Caixa de Ferramentas Esquerda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>Right Toolbox</source>
         <translation>Caixa de Ferramentas Direita</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1754"/>
+        <location filename="../UI/UserInterface.py" line="1757"/>
         <source>Switch the input focus to the Project-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1756"/>
+        <location filename="../UI/UserInterface.py" line="1759"/>
         <source>&lt;b&gt;Activate Project-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Project-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1771"/>
+        <location filename="../UI/UserInterface.py" line="1774"/>
         <source>Switch the input focus to the Multiproject-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1773"/>
+        <location filename="../UI/UserInterface.py" line="1776"/>
         <source>&lt;b&gt;Activate Multiproject-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Multiproject-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1789"/>
+        <location filename="../UI/UserInterface.py" line="1792"/>
         <source>Switch the input focus to the Debug-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1791"/>
+        <location filename="../UI/UserInterface.py" line="1794"/>
         <source>&lt;b&gt;Activate Debug-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Debug-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1807"/>
+        <location filename="../UI/UserInterface.py" line="1810"/>
         <source>Switch the input focus to the Shell window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1809"/>
+        <location filename="../UI/UserInterface.py" line="1812"/>
         <source>&lt;b&gt;Activate Shell&lt;/b&gt;&lt;p&gt;This switches the input focus to the Shell window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>&amp;File-Browser</source>
         <translation>Navegador de &amp;Ficheiros</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1824"/>
+        <location filename="../UI/UserInterface.py" line="1827"/>
         <source>Switch the input focus to the File-Browser window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1826"/>
+        <location filename="../UI/UserInterface.py" line="1829"/>
         <source>&lt;b&gt;Activate File-Browser&lt;/b&gt;&lt;p&gt;This switches the input focus to the File-Browser window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Lo&amp;g-Viewer</source>
         <translation>Visor de Re&amp;gistos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1841"/>
+        <location filename="../UI/UserInterface.py" line="1844"/>
         <source>Switch the input focus to the Log-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1843"/>
+        <location filename="../UI/UserInterface.py" line="1846"/>
         <source>&lt;b&gt;Activate Log-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Log-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>&amp;Task-Viewer</source>
         <translation>Visor de &amp;Tarefas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1859"/>
+        <location filename="../UI/UserInterface.py" line="1862"/>
         <source>Switch the input focus to the Task-Viewer window.</source>
         <translation>Muda o enfoque de entrada à janela do Visor de Tarefas.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Templ&amp;ate-Viewer</source>
         <translation>Visor de Mod&amp;elos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1878"/>
+        <location filename="../UI/UserInterface.py" line="1881"/>
         <source>Switch the input focus to the Template-Viewer window.</source>
         <translation>Muda o enfoque de entrada à janela do Visor de Modelos.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1880"/>
+        <location filename="../UI/UserInterface.py" line="1883"/>
         <source>&lt;b&gt;Activate Template-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Template-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
-        <source>&amp;Left Toolbox</source>
-        <translation>Caixa de Ferramentas &amp;Esquerda</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="1893"/>
+        <source>&amp;Left Toolbox</source>
+        <translation>Caixa de Ferramentas &amp;Esquerda</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1896"/>
         <source>Toggle the Left Toolbox window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1894"/>
+        <location filename="../UI/UserInterface.py" line="1897"/>
         <source>&lt;b&gt;Toggle the Left Toolbox window&lt;/b&gt;&lt;p&gt;If the Left Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>&amp;Right Toolbox</source>
         <translation>Caixa de Ferramentas Di&amp;reita</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1906"/>
+        <location filename="../UI/UserInterface.py" line="1909"/>
         <source>Toggle the Right Toolbox window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1907"/>
+        <location filename="../UI/UserInterface.py" line="1910"/>
         <source>&lt;b&gt;Toggle the Right Toolbox window&lt;/b&gt;&lt;p&gt;If the Right Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>Right Sidebar</source>
         <translation>Barra Direita</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>&amp;Right Sidebar</source>
         <translation>Barra Lateral Di&amp;reita</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1946"/>
+        <location filename="../UI/UserInterface.py" line="1949"/>
         <source>Toggle the right sidebar window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1948"/>
+        <location filename="../UI/UserInterface.py" line="1951"/>
         <source>&lt;b&gt;Toggle the right sidebar window&lt;/b&gt;&lt;p&gt;If the right sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Cooperation-Viewer</source>
         <translation>Visor de Colaboração</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Co&amp;operation-Viewer</source>
         <translation>Visor de C&amp;olaboração</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1977"/>
+        <location filename="../UI/UserInterface.py" line="1980"/>
         <source>Switch the input focus to the Cooperation-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1979"/>
+        <location filename="../UI/UserInterface.py" line="1982"/>
         <source>&lt;b&gt;Activate Cooperation-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Cooperation-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Ativar Visor de Colaboração&lt;/b&gt;&lt;p&gt;Muda o enfoque de entrada para a janela do Visualizador de Colaboração.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Symbols-Viewer</source>
         <translation>Visor de Símbolos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>S&amp;ymbols-Viewer</source>
         <translation>V&amp;isor de Símbolos</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2014"/>
+        <location filename="../UI/UserInterface.py" line="2017"/>
         <source>Switch the input focus to the Symbols-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2016"/>
+        <location filename="../UI/UserInterface.py" line="2019"/>
         <source>&lt;b&gt;Activate Symbols-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Symbols-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Numbers-Viewer</source>
         <translation>Visor de Números</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Num&amp;bers-Viewer</source>
         <translation>Visor de Nú&amp;meros</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2033"/>
+        <location filename="../UI/UserInterface.py" line="2036"/>
         <source>Switch the input focus to the Numbers-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2035"/>
+        <location filename="../UI/UserInterface.py" line="2038"/>
         <source>&lt;b&gt;Activate Numbers-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Numbers-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3225"/>
+        <location filename="../UI/UserInterface.py" line="3228"/>
         <source>&amp;Windows</source>
         <translation>&amp;Janelas</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1861"/>
+        <location filename="../UI/UserInterface.py" line="1864"/>
         <source>&lt;b&gt;Activate Task-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Task-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>IRC</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>&amp;IRC</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1996"/>
+        <location filename="../UI/UserInterface.py" line="1999"/>
         <source>Switch the input focus to the IRC window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1998"/>
+        <location filename="../UI/UserInterface.py" line="2001"/>
         <source>&lt;b&gt;Activate IRC&lt;/b&gt;&lt;p&gt;This switches the input focus to the IRC window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-Designer</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-&amp;Designer...</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2347"/>
+        <location filename="../UI/UserInterface.py" line="2350"/>
         <source>Start Qt-Designer</source>
         <translation>Iniciar Qt-Designer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2348"/>
+        <location filename="../UI/UserInterface.py" line="2351"/>
         <source>&lt;b&gt;Qt-Designer&lt;/b&gt;&lt;p&gt;Start Qt-Designer.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-Linguist</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-&amp;Linguist...</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2373"/>
+        <location filename="../UI/UserInterface.py" line="2376"/>
         <source>Start Qt-Linguist</source>
         <translation>Iniciar Qt-Linguist</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2374"/>
+        <location filename="../UI/UserInterface.py" line="2377"/>
         <source>&lt;b&gt;Qt-Linguist&lt;/b&gt;&lt;p&gt;Start Qt-Linguist.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2862"/>
+        <location filename="../UI/UserInterface.py" line="2865"/>
         <source>Qt5 Documentation</source>
         <translation>Documentação de Qt5</translation>
     </message>
@@ -82372,47 +82526,47 @@
         <translation type="obsolete">Documentação de Qt&amp;5</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2866"/>
+        <location filename="../UI/UserInterface.py" line="2869"/>
         <source>Open Qt5 Documentation</source>
         <translation>Abrir a Documentação de Qt5</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates</source>
         <translation>Gestionar Certificados SSL</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates...</source>
         <translation>Gestionar Certificados SSL...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2675"/>
+        <location filename="../UI/UserInterface.py" line="2678"/>
         <source>Manage the saved SSL certificates</source>
         <translation>Gestionar certificados SSL gravados</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2677"/>
+        <location filename="../UI/UserInterface.py" line="2680"/>
         <source>&lt;b&gt;Manage SSL Certificates...&lt;/b&gt;&lt;p&gt;Opens a dialog to manage the saved SSL certificates.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters</source>
         <translation>Editar Filtros de Mensagens</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters...</source>
         <translation>Editar Filtros de Mensagens...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2691"/>
+        <location filename="../UI/UserInterface.py" line="2694"/>
         <source>Edit the message filters used to suppress unwanted messages</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2693"/>
+        <location filename="../UI/UserInterface.py" line="2696"/>
         <source>&lt;b&gt;Edit Message Filters&lt;/b&gt;&lt;p&gt;Opens a dialog to edit the message filters used to suppress unwanted messages been shown in an error window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -82422,7 +82576,7 @@
         <translation type="obsolete">Documentação do PyQt&amp;4</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2892"/>
+        <location filename="../UI/UserInterface.py" line="2895"/>
         <source>PyQt5 Documentation</source>
         <translation>Documentação do PyQt5</translation>
     </message>
@@ -82432,32 +82586,32 @@
         <translation type="obsolete">Documentação do PyQt&amp;5</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2896"/>
+        <location filename="../UI/UserInterface.py" line="2899"/>
         <source>Open PyQt5 Documentation</source>
         <translation>Abrir a Documentação de PyQt5</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2937"/>
+        <location filename="../UI/UserInterface.py" line="2940"/>
         <source>&lt;b&gt;Python 3 Documentation&lt;/b&gt;&lt;p&gt;Display the Python 3 documentation. If no documentation directory is configured, the location of the Python 3 documentation is assumed to be the doc directory underneath the location of the Python 3 executable on Windows and &lt;i&gt;/usr/share/doc/packages/python/html&lt;/i&gt; on Unix. Set PYTHON3DOCDIR in your environment to override this.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>%v/%m</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2207"/>
+        <location filename="../UI/UserInterface.py" line="2210"/>
         <source>Show Error Log</source>
         <translation>Mostrar Registo de Erros</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2203"/>
+        <location filename="../UI/UserInterface.py" line="2206"/>
         <source>Show Error &amp;Log...</source>
         <translation>Mostrar &amp;Registo de Erros...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2208"/>
+        <location filename="../UI/UserInterface.py" line="2211"/>
         <source>&lt;b&gt;Show Error Log...&lt;/b&gt;&lt;p&gt;Opens a dialog showing the most recent error log.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -82492,7 +82646,7 @@
         <translation type="obsolete">Qt v.3 não está suportado por eric6.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7054"/>
+        <location filename="../UI/UserInterface.py" line="7081"/>
         <source>Version Check</source>
         <translation type="unfinished"></translation>
     </message>
@@ -82517,528 +82671,528 @@
         <translation type="obsolete">eric6 ainda não foi configurado. A caixa de diálogo de configuração vai iniciar-se.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="669"/>
+        <location filename="../UI/UserInterface.py" line="672"/>
         <source>Generating Plugins Toolbars...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4182"/>
+        <location filename="../UI/UserInterface.py" line="4185"/>
         <source>&amp;User Tools</source>
         <translation>Ferramentas de &amp;Utilizador</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4252"/>
+        <location filename="../UI/UserInterface.py" line="4255"/>
         <source>No User Tools Configured</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
+        <location filename="../UI/UserInterface.py" line="2466"/>
         <source>Hex Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
+        <location filename="../UI/UserInterface.py" line="2466"/>
         <source>&amp;Hex Editor...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2709"/>
+        <location filename="../UI/UserInterface.py" line="2712"/>
         <source>Clear private data</source>
         <translation type="unfinished">Limpar dados privados</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2711"/>
+        <location filename="../UI/UserInterface.py" line="2714"/>
         <source>&lt;b&gt;Clear private data&lt;/b&gt;&lt;p&gt;Clears the private data like the various list of recently opened files, projects or multi projects.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1669"/>
+        <location filename="../UI/UserInterface.py" line="1672"/>
         <source>Save session...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1674"/>
+        <location filename="../UI/UserInterface.py" line="1677"/>
         <source>&lt;b&gt;Save session...&lt;/b&gt;&lt;p&gt;This saves the current session to disk. A dialog is opened to select the file name.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>Load session</source>
         <translation type="unfinished">Carregar sessão</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1682"/>
+        <location filename="../UI/UserInterface.py" line="1685"/>
         <source>Load session...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1687"/>
+        <location filename="../UI/UserInterface.py" line="1690"/>
         <source>&lt;b&gt;Load session...&lt;/b&gt;&lt;p&gt;This loads a session saved to disk previously. A dialog is opened to select the file name.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
+        <location filename="../UI/UserInterface.py" line="6710"/>
         <source>Crash Session found!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
+        <location filename="../UI/UserInterface.py" line="6710"/>
         <source>A session file of a crashed session was found. Shall this session be restored?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="672"/>
+        <location filename="../UI/UserInterface.py" line="675"/>
         <source>Cleaning Plugins Download Area...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="664"/>
+        <location filename="../UI/UserInterface.py" line="667"/>
         <source>Initializing Plugins...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>Update Check</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>You installed eric directly from the source code. There is no possibility to check for the availability of an update.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Code Documentation Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2867"/>
+        <location filename="../UI/UserInterface.py" line="2870"/>
         <source>&lt;b&gt;Qt5 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2898"/>
+        <location filename="../UI/UserInterface.py" line="2901"/>
         <source>&lt;b&gt;PyQt5 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2974"/>
+        <location filename="../UI/UserInterface.py" line="2977"/>
         <source>PySide2 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2978"/>
+        <location filename="../UI/UserInterface.py" line="2981"/>
         <source>Open PySide2 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2980"/>
+        <location filename="../UI/UserInterface.py" line="2983"/>
         <source>&lt;b&gt;PySide2 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide2 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>&lt;p&gt;The PySide{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2817"/>
+        <location filename="../UI/UserInterface.py" line="2820"/>
         <source>Virtualenv Manager</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2811"/>
+        <location filename="../UI/UserInterface.py" line="2814"/>
         <source>&amp;Virtualenv Manager...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2819"/>
+        <location filename="../UI/UserInterface.py" line="2822"/>
         <source>&lt;b&gt;Virtualenv Manager&lt;/b&gt;&lt;p&gt;This opens a dialog to manage the defined Python virtual environments.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2834"/>
+        <location filename="../UI/UserInterface.py" line="2837"/>
         <source>Virtualenv Configurator</source>
         <translation type="unfinished">Assistente para Virtualenv</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2828"/>
+        <location filename="../UI/UserInterface.py" line="2831"/>
         <source>Virtualenv &amp;Configurator...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2836"/>
+        <location filename="../UI/UserInterface.py" line="2839"/>
         <source>&lt;b&gt;Virtualenv Configurator&lt;/b&gt;&lt;p&gt;This opens a dialog for entering all the parameters needed to create a Python virtual environment using virtualenv or pyvenv.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3232"/>
+        <location filename="../UI/UserInterface.py" line="3235"/>
         <source>Left Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3244"/>
+        <location filename="../UI/UserInterface.py" line="3247"/>
         <source>Bottom Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3251"/>
+        <location filename="../UI/UserInterface.py" line="3254"/>
         <source>Right Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3271"/>
+        <location filename="../UI/UserInterface.py" line="3274"/>
         <source>Plug-ins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Restart</source>
         <translation type="unfinished">Reiniciar</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Ctrl+Shift+Q</source>
         <comment>File|Quit</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1659"/>
+        <location filename="../UI/UserInterface.py" line="1662"/>
         <source>Restart the IDE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1660"/>
+        <location filename="../UI/UserInterface.py" line="1663"/>
         <source>&lt;b&gt;Restart the IDE&lt;/b&gt;&lt;p&gt;This restarts the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>Start Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Conda</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>PyPI</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3580"/>
+        <location filename="../UI/UserInterface.py" line="3583"/>
         <source>&lt;p&gt;This part of the status bar allows zooming the current editor or shell.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>MicroPython</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>Ctrl+Alt+Shift+I</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Ctrl+Alt+Shift+D</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2052"/>
-        <source>Switch the input focus to the Code Documentation Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="2055"/>
+        <source>Switch the input focus to the Code Documentation Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2058"/>
         <source>&lt;b&gt;Code Documentation Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Code Documentation Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>Ctrl+Alt+Shift+P</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2072"/>
+        <location filename="../UI/UserInterface.py" line="2075"/>
         <source>Switch the input focus to the PyPI window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2074"/>
+        <location filename="../UI/UserInterface.py" line="2077"/>
         <source>&lt;b&gt;PyPI&lt;/b&gt;&lt;p&gt;This switches the input focus to the PyPI window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Ctrl+Alt+Shift+C</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2090"/>
+        <location filename="../UI/UserInterface.py" line="2093"/>
         <source>Switch the input focus to the Conda window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2092"/>
+        <location filename="../UI/UserInterface.py" line="2095"/>
         <source>&lt;b&gt;Conda&lt;/b&gt;&lt;p&gt;This switches the input focus to the Conda window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>Ctrl+Alt+Shift+M</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2108"/>
+        <location filename="../UI/UserInterface.py" line="2111"/>
         <source>Switch the input focus to the MicroPython window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2110"/>
+        <location filename="../UI/UserInterface.py" line="2113"/>
         <source>&lt;b&gt;MicroPython&lt;/b&gt;&lt;p&gt;This switches the input focus to the MicroPython window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3229"/>
+        <location filename="../UI/UserInterface.py" line="3232"/>
         <source>Central Park</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3746"/>
+        <location filename="../UI/UserInterface.py" line="3749"/>
         <source>&lt;h2&gt;Version Numbers&lt;/h2&gt;&lt;table&gt;</source>
         <translation type="unfinished">&lt;h3&gt;Números de Versão&lt;/h3&gt;&lt;table&gt; {2&gt;?} {2&gt;?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5075"/>
+        <location filename="../UI/UserInterface.py" line="5078"/>
         <source>&lt;p&gt;Could not find the Qt-Designer executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5145"/>
+        <location filename="../UI/UserInterface.py" line="5148"/>
         <source>&lt;p&gt;Could not find the Qt-Linguist executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5189"/>
+        <location filename="../UI/UserInterface.py" line="5192"/>
         <source>&lt;p&gt;Could not find the Qt-Assistant executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install Info</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install &amp;Info...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2219"/>
+        <location filename="../UI/UserInterface.py" line="2222"/>
         <source>Show Installation Information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2221"/>
+        <location filename="../UI/UserInterface.py" line="2224"/>
         <source>&lt;b&gt;Show Install Info...&lt;/b&gt;&lt;p&gt;Opens a dialog showing some information about the installation process.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2877"/>
+        <location filename="../UI/UserInterface.py" line="2880"/>
         <source>Qt6 Documentation</source>
         <translation type="unfinished">Documentação de Qt5 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2881"/>
+        <location filename="../UI/UserInterface.py" line="2884"/>
         <source>Open Qt6 Documentation</source>
         <translation type="unfinished">Abrir a Documentação de Qt5 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2882"/>
+        <location filename="../UI/UserInterface.py" line="2885"/>
         <source>&lt;b&gt;Qt6 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2909"/>
+        <location filename="../UI/UserInterface.py" line="2912"/>
         <source>PyQt6 Documentation</source>
         <translation type="unfinished">Documentação do PyQt5 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2913"/>
+        <location filename="../UI/UserInterface.py" line="2916"/>
         <source>Open PyQt6 Documentation</source>
         <translation type="unfinished">Abrir a Documentação de PyQt5 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2915"/>
+        <location filename="../UI/UserInterface.py" line="2918"/>
         <source>&lt;b&gt;PyQt6 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2994"/>
+        <location filename="../UI/UserInterface.py" line="2997"/>
         <source>PySide6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2998"/>
+        <location filename="../UI/UserInterface.py" line="3001"/>
         <source>Open PySide6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3000"/>
+        <location filename="../UI/UserInterface.py" line="3003"/>
         <source>&lt;b&gt;PySide6 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5754"/>
+        <location filename="../UI/UserInterface.py" line="5770"/>
         <source>&lt;p&gt;The PyQt{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1701"/>
+        <location filename="../UI/UserInterface.py" line="1704"/>
         <source>Open a new eric instance</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1703"/>
+        <location filename="../UI/UserInterface.py" line="1706"/>
         <source>&lt;b&gt;New Window&lt;/b&gt;&lt;p&gt;This opens a new instance of the eric IDE.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2146"/>
+        <location filename="../UI/UserInterface.py" line="2149"/>
         <source>&lt;b&gt;Helpviewer&lt;/b&gt;&lt;p&gt;Display the eric web browser. This window will show HTML help files and help from Qt help collections. It has the capability to navigate to links, set bookmarks, print the displayed help and some more features. You may use it to browse the internet as well&lt;/p&gt;&lt;p&gt;If called with a word selected, this word is search in the Qt help collection.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2181"/>
+        <location filename="../UI/UserInterface.py" line="2184"/>
         <source>&lt;b&gt;Check for Updates...&lt;/b&gt;&lt;p&gt;Checks the internet for updates of eric.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2194"/>
+        <location filename="../UI/UserInterface.py" line="2197"/>
         <source>&lt;b&gt;Show downloadable versions...&lt;/b&gt;&lt;p&gt;Shows the eric versions available for download from the internet.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2468"/>
+        <location filename="../UI/UserInterface.py" line="2471"/>
         <source>Start the eric Hex Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2470"/>
+        <location filename="../UI/UserInterface.py" line="2473"/>
         <source>&lt;b&gt;Hex Editor&lt;/b&gt;&lt;p&gt;Starts the eric Hex Editor for viewing or editing binary files.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric &amp;Web Browser...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2483"/>
+        <location filename="../UI/UserInterface.py" line="2486"/>
         <source>Start the eric Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2485"/>
+        <location filename="../UI/UserInterface.py" line="2488"/>
         <source>&lt;b&gt;eric Web Browser&lt;/b&gt;&lt;p&gt;Browse the Internet with the eric Web Browser.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2497"/>
+        <location filename="../UI/UserInterface.py" line="2500"/>
         <source>Start the eric Icon Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2499"/>
+        <location filename="../UI/UserInterface.py" line="2502"/>
         <source>&lt;b&gt;Icon Editor&lt;/b&gt;&lt;p&gt;Starts the eric Icon Editor for editing simple icons.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2585"/>
+        <location filename="../UI/UserInterface.py" line="2588"/>
         <source>&lt;b&gt;Show external tools&lt;/b&gt;&lt;p&gt;Opens a dialog to show the path and versions of all extenal tools used by eric.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2959"/>
+        <location filename="../UI/UserInterface.py" line="2962"/>
         <source>&lt;b&gt;Eric API Documentation&lt;/b&gt;&lt;p&gt;Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric installation directory.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5972"/>
+        <location filename="../UI/UserInterface.py" line="5988"/>
         <source>The eric web browser could not be started.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>&lt;p&gt;The eric web browser is not started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>The update to &lt;b&gt;{0}&lt;/b&gt; of eric is available at &lt;b&gt;{1}&lt;/b&gt;. Would you like to get it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7188"/>
+        <location filename="../UI/UserInterface.py" line="7215"/>
         <source>You are using a snapshot release of eric. A more up-to-date stable release might be available.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>eric is up to date</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>You are using the latest version of eric</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>eric has not been configured yet. The configuration dialog will be started.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6290"/>
+        <location filename="../UI/UserInterface.py" line="6306"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard Shortcuts File (*.e4k)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>&lt;p&gt;The keyboard shortcuts file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard shortcut file (*.e4k)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>Read Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6621"/>
+        <location filename="../UI/UserInterface.py" line="6637"/>
         <source>Save Session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6578"/>
+        <location filename="../UI/UserInterface.py" line="6594"/>
         <source>Read Session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>eric Session Files (*.esj);;eric XML Session Files (*.e5s)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -83119,7 +83273,7 @@
 <context>
     <name>Utilities</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="1420"/>
+        <location filename="../Utilities/__init__.py" line="1421"/>
         <source>&lt;p&gt;You may use %-codes as placeholders in the string. Supported codes are:&lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;column of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;directory of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;filename of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;home directory of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;line of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;path of the current project&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;selected text of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;username of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;the percent sign&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</source>
         <translation>&lt;p&gt;Pode usar códigos % como espaços reservados dentro da string. Os códigos suportados são:&lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;coluna do cursor do editor atual&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;directório do editor atual&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;nome do ficheiro do editor atual&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;diretório home do usuário atual&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;linha do cursor do editor atual&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;rota do projeto atual&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;texto selecionado do editor atual&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;nome de usuário do usuário atual&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;sinal de percentagem&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</translation>
     </message>
@@ -83750,12 +83904,12 @@
 <context>
     <name>VcsMercurialPlugin</name>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="58"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="54"/>
         <source>Version Control - Mercurial</source>
         <translation>Controlo de Versão - Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="132"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="124"/>
         <source>Mercurial</source>
         <translation></translation>
     </message>
@@ -86447,27 +86601,27 @@
         <translation>&lt;p&gt;O ficheiro &lt;b&gt;{0}&lt;/b&gt; tem alterações por gravar.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4777"/>
+        <location filename="../ViewManager/ViewManager.py" line="4790"/>
         <source>Line: {0:5}</source>
         <translation>Linha: {0:5}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4783"/>
+        <location filename="../ViewManager/ViewManager.py" line="4796"/>
         <source>Pos: {0:5}</source>
         <translation></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5217"/>
+        <location filename="../ViewManager/ViewManager.py" line="5230"/>
         <source>&amp;Clear</source>
         <translation>&amp;Limpar</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5211"/>
+        <location filename="../ViewManager/ViewManager.py" line="5224"/>
         <source>&amp;Add</source>
         <translation>&amp;Adicionar</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5214"/>
+        <location filename="../ViewManager/ViewManager.py" line="5227"/>
         <source>&amp;Edit...</source>
         <translation>&amp;Editar...</translation>
     </message>
@@ -87029,27 +87183,27 @@
         <translation>Lista de Exceções do Usuário</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>Edit Spelling Dictionary</source>
         <translation>Editar Dicionário Ortográfico</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6233"/>
+        <location filename="../ViewManager/ViewManager.py" line="6246"/>
         <source>Editing {0}</source>
         <translation>A editar {0}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6215"/>
+        <location filename="../ViewManager/ViewManager.py" line="6228"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6244"/>
+        <location filename="../ViewManager/ViewManager.py" line="6257"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>The spelling dictionary was saved successfully.</source>
         <translation>O dicionário ortográfico foi guradado com êxito.</translation>
     </message>
@@ -87169,12 +87323,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4804"/>
+        <location filename="../ViewManager/ViewManager.py" line="4817"/>
         <source>Language: {0}</source>
         <translation>Linguagem: {0}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4811"/>
+        <location filename="../ViewManager/ViewManager.py" line="4824"/>
         <source>EOL Mode: {0}</source>
         <translation>Modo EOL: {0}</translation>
     </message>
Binary file eric6/i18n/eric6_ru.qm has changed
--- a/eric6/i18n/eric6_ru.ts	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/i18n/eric6_ru.ts	Thu Jun 03 11:39:23 2021 +0200
@@ -1209,11 +1209,6 @@
         <translation>отсутствует аннотация типа возвращаемого значения для class метода</translation>
     </message>
     <message>
-        <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Annotations/translations.py" line="57"/>
-        <source>{0}: {1}</source>
-        <translation type="obsolete">{0}: {1}</translation>
-    </message>
-    <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Annotations/translations.py" line="24"/>
         <source>missing type annotation for &apos;self&apos; in method</source>
         <translation>отсутствует аннотация типа для &apos;self&apos; метода</translation>
@@ -1236,56 +1231,71 @@
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Annotations/translations.py" line="48"/>
         <source>PEP 484 disallows both type annotations and type comments</source>
-        <translation type="unfinished"></translation>
+        <translation>PEP 484 запрещает как аннотации типа, так и комментарии типа</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Annotations/translations.py" line="59"/>
         <source>type annotation is too long ({0} &gt; {1})</source>
-        <translation type="unfinished"></translation>
+        <translation>аннотация типа слишком длинная ({0}&gt; {1})</translation>
     </message>
 </context>
 <context>
     <name>ApplicationDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="43"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="47"/>
         <source>Application Diagram {0}</source>
         <translation>Диаграмма приложения {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>Parsing modules...</source>
         <translation>Разбор модулей...</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="197"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="252"/>
         <source>&lt;&lt;Application&gt;&gt;</source>
         <translation>&lt;&lt;Приложение&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="199"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="254"/>
         <source>&lt;&lt;Others&gt;&gt;</source>
         <translation>&lt;&lt;Другие&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>Load Diagram</source>
         <translation>Загрузить диаграмму</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>&lt;p&gt;The diagram belongs to the project &lt;b&gt;{0}&lt;/b&gt;. Shall this project be opened?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Диаграмма относится к проекту&lt;b&gt;{0}&lt;/b&gt;.Хотите открыть этот проект?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>%v/%m Modules</source>
         <translation>%v из %m модулей</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="69"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
         <source>Application Diagram</source>
         <translation>Диаграмма приложения</translation>
     </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="126"/>
+        <source>Select the application directory:</source>
+        <translation>Выберите директорию приложения:</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
+        <source>No application package could be detected. Aborting...</source>
+        <translation>Пакет приложений не обнаружен. Прерывание ...</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="466"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Диаграмма принадлежит проекту &lt;b&gt;{0}&lt;/b&gt;. Пожалуйста, откройте его и попробуйте еще раз.&lt;/p&gt;</translation>
+    </message>
 </context>
 <context>
     <name>ApplicationPage</name>
@@ -1606,49 +1616,49 @@
 <context>
     <name>BackgroundService</name>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="139"/>
+        <location filename="../Utilities/BackgroundService.py" line="142"/>
         <source>{0} not configured.</source>
         <translation>{0} не сконфигурирован.</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>Restart background client?</source>
         <translation>Перезапустить клиента в фоновом режиме?</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="456"/>
+        <location filename="../Utilities/BackgroundService.py" line="459"/>
         <source>Eric&apos;s background client disconnected because of an unknown reason.</source>
         <translation>Фоновый клиент Eric&apos;а прервал соединение по неизвестной причине.</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>Background client disconnected.</source>
         <translation>Соединение фонового клиента прервано.</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>&lt;p&gt;The background client for &lt;b&gt;{0}&lt;/b&gt; has stopped due to an exception. It&apos;s used by various plug-ins like the different checkers.&lt;/p&gt;&lt;p&gt;Select&lt;ul&gt;&lt;li&gt;&lt;b&gt;&apos;Yes&apos;&lt;/b&gt; to restart the client, but abort the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Retry&apos;&lt;/b&gt; to restart the client and the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;No&apos;&lt;/b&gt; to leave the client off.&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p&gt;Note: The client can be restarted by opening and accepting the preferences dialog or reloading/changing the project.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Фоновый клиент &lt;b&gt;{0}&lt;/b&gt; прекратил выполнение из-за ошибки. Этот клиент необходим для работы различных плагинов.&lt;/p&gt;&lt;p&gt;Выберите &lt;ul&gt;&lt;li&gt;&lt;b&gt;&apos;Да&apos;&lt;/b&gt; чтобы перезапустить его и отменить последнее задание &lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Повторить&apos;&lt;/b&gt; чтобы перезапустить его и последнее задание &lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Нет&apos;&lt;/b&gt; чтобы не перезапускать клиента.&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p&gt;Заметьте: Клиента можно перезапустить, открыв и сохранив диалог предпочтений или закрыв и снова открыв текущий проект.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>The background client for &lt;b&gt;{0}&lt;/b&gt; disconnected because of an unknown reason.&lt;br&gt;Should it be restarted?</source>
         <translation>Соединение фонового клиента &lt;b&gt;{0}&lt;/b&gt; прервано по неизвестной причине.&lt;br&gt;Перезапустить клиента?</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="228"/>
+        <location filename="../Utilities/BackgroundService.py" line="231"/>
         <source>An error in Eric&apos;s background client stopped the service.</source>
         <translation>Ошибка фонового клиента остановила сервис.</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>Initialization of Background Service</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <translation>Инициализация фоновой службы</translation>
+    </message>
+    <message>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>&lt;p&gt;Initialization of Background Service &lt;b&gt;{0}&lt;/b&gt; failed.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
+        <translation>&lt;p&gt;Инициализация фоновой службы &lt;b&gt;{0}&lt;/b&gt; не удалась.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
 </context>
 <context>
@@ -2345,223 +2355,223 @@
 <context>
     <name>Browser</name>
     <message>
-        <location filename="../UI/Browser.py" line="94"/>
+        <location filename="../UI/Browser.py" line="96"/>
         <source>File-Browser</source>
         <translation>Браузер файлов</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="284"/>
+        <location filename="../UI/Browser.py" line="286"/>
         <source>Open</source>
         <translation>Открыть</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="233"/>
+        <location filename="../UI/Browser.py" line="235"/>
         <source>Run unittest...</source>
         <translation>Запустить юниттест...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="316"/>
+        <location filename="../UI/Browser.py" line="318"/>
         <source>Copy Path to Clipboard</source>
         <translation>Копировать путь в буфер обмена</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="263"/>
+        <location filename="../UI/Browser.py" line="265"/>
         <source>Open in Icon Editor</source>
         <translation>Открыть в редакторе иконок</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="342"/>
+        <location filename="../UI/Browser.py" line="344"/>
         <source>New toplevel directory...</source>
         <translation>Новая директория верхнего уровня...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="298"/>
+        <location filename="../UI/Browser.py" line="300"/>
         <source>Add as toplevel directory</source>
         <translation>Добавить как директорию верхнего уровня</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="301"/>
+        <location filename="../UI/Browser.py" line="303"/>
         <source>Remove from toplevel</source>
         <translation>Удалить из верхнего уровня</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="305"/>
+        <location filename="../UI/Browser.py" line="307"/>
         <source>Refresh directory</source>
         <translation>Освежить директорию</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="309"/>
+        <location filename="../UI/Browser.py" line="311"/>
         <source>Find in this directory</source>
         <translation>Найти в этой директории</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="643"/>
+        <location filename="../UI/Browser.py" line="646"/>
         <source>New toplevel directory</source>
         <translation>Новая директория верхнего уровня</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="328"/>
+        <location filename="../UI/Browser.py" line="330"/>
         <source>Goto</source>
         <translation>Перейти</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="435"/>
+        <location filename="../UI/Browser.py" line="437"/>
         <source>Line {0}</source>
         <translation>Строка: {0}</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="113"/>
+        <location filename="../UI/Browser.py" line="115"/>
         <source>&lt;b&gt;The Browser Window&lt;/b&gt;&lt;p&gt;This allows you to easily navigate the hierarchy of directories and files on your system, identify the Python programs and open them up in a Source Viewer window. The window displays several separate hierarchies.&lt;/p&gt;&lt;p&gt;The first hierarchy is only shown if you have opened a program for debugging and its root is the directory containing that program. Usually all of the separate files that make up a Python application are held in the same directory, so this hierarchy gives you easy access to most of what you will need.&lt;/p&gt;&lt;p&gt;The next hierarchy is used to easily navigate the directories that are specified in the Python &lt;tt&gt;sys.path&lt;/tt&gt; variable.&lt;/p&gt;&lt;p&gt;The remaining hierarchies allow you navigate your system as a whole. On a UNIX system there will be a hierarchy with &lt;tt&gt;/&lt;/tt&gt; at its root and another with the user home directory. On a Windows system there will be a hierarchy for each drive on the system.&lt;/p&gt;&lt;p&gt;Python programs (i.e. those with a &lt;tt&gt;.py&lt;/tt&gt; file name suffix) are identified in the hierarchies with a Python icon. The right mouse button will popup a menu which lets you open the file in a Source Viewer window, open the file for debugging or use it for a unittest run.&lt;/p&gt;&lt;p&gt;The context menu of a class, function or method allows you to open the file defining this class, function or method and will ensure, that the correct source line is visible.&lt;/p&gt;&lt;p&gt;Qt-Designer files (i.e. those with a &lt;tt&gt;.ui&lt;/tt&gt; file name suffix) are shown with a Designer icon. The context menu of these files allows you to start Qt-Designer with that file.&lt;/p&gt;&lt;p&gt;Qt-Linguist files (i.e. those with a &lt;tt&gt;.ts&lt;/tt&gt; file name suffix) are shown with a Linguist icon. The context menu of these files allows you to start Qt-Linguist with that file.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Окно браузера&lt;/b&gt;&lt;p&gt;Помогает легко перемещаться по иерархии директорий и файлов вашей системы, находить программы на Python и открывать их в окне исходных текстов. Окно показывает несколько разных деревьев&lt;/p&gt;
 &lt;p&gt;Первое дерево показывается только тогда, когда вы отлаживаете программу и root-директория дерева является директорией, содержащей программу. Обычно все файлы, составляющие приложение на Python, находятся в одной директории, так что это дерево даёт почти всю необходимую информацию.&lt;/p&gt;&lt;p&gt;Следующее дерево используется для лёгкого перемещения по директориям, перечисленным в переменной Python &lt;tt&gt;sys.path&lt;/tt&gt;&lt;p&gt;Оставшиеся деревья позволяют перемещаться по системе в целом. В системах UNIX будут показаны 2 дерева: дерево с вершиной в root-директории (&lt;tt&gt;/&lt;/tt&gt;) и домашней директории пользователя. В Windows для каждого диска будет показано своё дерево.&lt;/p&gt;&lt;p&gt;Программы на Python (с расширением &lt;tt&gt;.py&lt;/tt&gt;) показываются с иконкой Python. Доступно контекстное меню, позволяющее открыть программу в редакторе, запустить её на отладку или протестировать с помощью unittest.&lt;/p&gt;&lt;p&gt;Контекстное меню на классе, функции или методе откроет файл и перейдёт на нужное место&lt;/p&gt;&lt;p&gt;Файлы описания интерфейса ( &lt;tt&gt;.ui&lt;/tt&gt;, отмеченные иконкой Designer) могут быть открыты Designer&apos;ом через контекстное меню или по двойному щелчку&lt;/p&gt;&lt;p&gt;Файлы перевода (&lt;tt&gt;.ts&lt;/tt&gt;, отмеченные иконкой Linguist) могут быть отредактированы с помощью Linguist&apos;а&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>Show Mime-Type</source>
         <translation>Показ Mime-Types</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="528"/>
+        <location filename="../UI/Browser.py" line="531"/>
         <source>The mime type of the file could not be determined.</source>
         <translation>Невозможно определить тип mime файла.</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="546"/>
+        <location filename="../UI/Browser.py" line="549"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation>Файл типа &lt;b&gt;{0}&lt;/b&gt; по стандарту MIME.</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation>Файл типа &lt;b&gt;{0}&lt;/b&gt; по стандарту MIME.&lt;br/&gt; Добавить ли в текстовый список типов MIME?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="260"/>
+        <location filename="../UI/Browser.py" line="262"/>
         <source>Open in Hex Editor</source>
         <translation>Открыть в Hex-редакторе</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="312"/>
+        <location filename="../UI/Browser.py" line="314"/>
         <source>Find &amp;&amp; Replace in this directory</source>
         <translation>Найти &amp;&amp; заменить в этой директории</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="241"/>
+        <location filename="../UI/Browser.py" line="243"/>
         <source>Refresh Source File</source>
         <translation>Освежить исходный файл</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="214"/>
+        <location filename="../UI/Browser.py" line="216"/>
         <source>Show Hidden Files</source>
         <translation>Показывать скрытые файлы</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="221"/>
-        <source>New</source>
-        <translation>Новый</translation>
-    </message>
-    <message>
         <location filename="../UI/Browser.py" line="223"/>
+        <source>New</source>
+        <translation>Новый</translation>
+    </message>
+    <message>
+        <location filename="../UI/Browser.py" line="225"/>
         <source>Directory</source>
         <translation>Директория</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="226"/>
+        <location filename="../UI/Browser.py" line="228"/>
         <source>File</source>
         <translation>Файл</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="323"/>
+        <location filename="../UI/Browser.py" line="325"/>
         <source>Delete</source>
         <translation>Удалить</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>New Directory</source>
         <translation>Новая директория</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="861"/>
+        <location filename="../UI/Browser.py" line="864"/>
         <source>Name for new directory:</source>
         <translation>Имя новой директории:</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="902"/>
+        <location filename="../UI/Browser.py" line="905"/>
         <source>A file or directory named &lt;b&gt;{0}&lt;/b&gt; exists already. Aborting...</source>
         <translation>Файл или директория с именем &lt;b&gt;{0}&lt;/b&gt; уже существует. Отмена...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>&lt;p&gt;The directory &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Не удается создать директорию {0}.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>New File</source>
         <translation>Новый файл</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="894"/>
+        <location filename="../UI/Browser.py" line="897"/>
         <source>Name for new file:</source>
         <translation>Имя нового файла:</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Не удалось создать файл &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="942"/>
+        <location filename="../UI/Browser.py" line="945"/>
         <source>Do you really want to move this file to the trash?</source>
         <translation>Вы действительно хотите переместить этот файл в корзину?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="946"/>
+        <location filename="../UI/Browser.py" line="949"/>
         <source>Do you really want to delete this file?</source>
         <translation>Вы действительно хотите удалить этот файл?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>Delete File</source>
         <translation>Удалить файл</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>&lt;p&gt;The selected file &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно удалить выбранный файл &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="979"/>
+        <location filename="../UI/Browser.py" line="982"/>
         <source>Do you really want to move this directory to the trash?</source>
         <translation>Вы действительно хотите переместить эту директорию в корзину?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="983"/>
+        <location filename="../UI/Browser.py" line="986"/>
         <source>Do you really want to delete this directory?</source>
         <translation>Вы действительно хотите удалить эту директорию?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>Delete Directory</source>
         <translation>Удалить директорию</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>&lt;p&gt;The selected directory &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно удалить выбранную директорию &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1023"/>
+        <location filename="../UI/Browser.py" line="1026"/>
         <source>Do you really want to move these files to the trash?</source>
         <translation>Вы действительно хотите переместить эти файлы в корзину?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1027"/>
+        <location filename="../UI/Browser.py" line="1030"/>
         <source>Do you really want to delete these files?</source>
         <translation>Вы действительно хотите удалить эти файлы?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1032"/>
+        <location filename="../UI/Browser.py" line="1035"/>
         <source>Delete Files</source>
         <translation>Удалить файлы</translation>
     </message>
@@ -3058,7 +3068,7 @@
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.py" line="94"/>
         <source>Simplify Code</source>
-        <translation type="unfinished"></translation>
+        <translation>Упрощенный код</translation>
     </message>
 </context>
 <context>
@@ -3160,6 +3170,35 @@
     </message>
 </context>
 <context>
+    <name>ClassItem</name>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="176"/>
+        <source>Class Attributes:
+  </source>
+        <translation>Атрибуты класса:
+  </translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="211"/>
+        <source>none</source>
+        <translation>none</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="191"/>
+        <source>Instance Attributes:
+  </source>
+        <translation>Атрибуты экземпляра:
+  </translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="210"/>
+        <source>Methods:
+  </source>
+        <translation>Методы:
+  </translation>
+    </message>
+</context>
+<context>
     <name>ClearPrivateDataDialog</name>
     <message>
         <location filename="../UI/ClearPrivateDataDialog.ui" line="14"/>
@@ -3808,12 +3847,12 @@
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="490"/>
         <source>Min. File Size:</source>
-        <translation>Мин. размер файла:</translation>
+        <translation>Минимальный размер файла:</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="497"/>
         <source>Enter the minimum size a file must have to be checked (0 for all files)</source>
-        <translation>Укажите минимальный размер файла, которые должны быть проверены (0 для всех файлов)</translation>
+        <translation>Задайте минимальный размер файла, которые должны быть проверены (0 для всех файлов)</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="523"/>
@@ -4188,102 +4227,102 @@
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="1521"/>
         <source>Code Filter:</source>
-        <translation type="unfinished"></translation>
+        <translation>Код сообщения:</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="1528"/>
         <source>Select the message code to be shown (empty for all)</source>
-        <translation type="unfinished"></translation>
+        <translation>Выберите код сообщения для отображения (пустое поле - все коды)</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="1535"/>
         <source>Press to filter the list of messages</source>
-        <translation type="unfinished"></translation>
+        <translation>Отфильтровать список сообщений</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="1538"/>
         <source>Filter</source>
-        <translation type="unfinished">Фильтр</translation>
+        <translation>Отфильтровать</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="871"/>
         <source>Max. Length:</source>
-        <translation type="unfinished"></translation>
+        <translation>Максимальная длина:</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="878"/>
         <source>Enter the maximum type annotation length</source>
-        <translation type="unfinished"></translation>
+        <translation>Задайте максимальную длину аннотации типа</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="898"/>
         <source>Select to not report functions without returns or with only bare returns</source>
-        <translation type="unfinished"></translation>
+        <translation>Разрешить не сообщать о функциях без возврата или только с пустым возвратом</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="901"/>
         <source>Suppress &apos;None&apos; return</source>
-        <translation type="unfinished"></translation>
+        <translation>Подавлять возврат &apos;None&apos;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="911"/>
         <source>Suppress Dummy Arguments</source>
-        <translation type="unfinished"></translation>
+        <translation>Подавлять фиктивные аргументы</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="918"/>
         <source>Select to not report dynamically typed functions</source>
-        <translation type="unfinished"></translation>
+        <translation>Разрешить не сообщать о динамически типизированных функциях</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="921"/>
         <source>Allow Untyped Functions</source>
-        <translation type="unfinished"></translation>
+        <translation>Разрешить нетипизированные функции</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="928"/>
         <source>Select to not report dynamically typed nested functions</source>
-        <translation type="unfinished"></translation>
+        <translation>Разрешить не сообщать о динамически типизированных вложенных функциях</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="931"/>
         <source>Allow Untyped Nested Functions</source>
-        <translation type="unfinished"></translation>
+        <translation>Разрешить нетипизированные вложенные функции</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="938"/>
         <source>Select to not report unhinted &apos;__init__&apos; return</source>
-        <translation type="unfinished"></translation>
+        <translation>Разрешить не сообщать о незамеченном возврате &apos;__init__&apos;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="941"/>
         <source>Allow Untyped &apos;__init__&apos; function</source>
-        <translation type="unfinished"></translation>
+        <translation>Разрешить нетипизированную функцию &apos;__init__&apos;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="950"/>
         <source>Dispatch Decorators:</source>
-        <translation type="unfinished"></translation>
+        <translation>Декораторы диспетчеризации:</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="957"/>
         <source>Enter the list of dispatch decorators separated by comma</source>
-        <translation type="unfinished"></translation>
+        <translation>Введите через запятую список декораторов диспетчеризации</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="964"/>
         <source>Overload Decorators:</source>
-        <translation type="unfinished"></translation>
+        <translation>Декораторы перегрузки:</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="971"/>
         <source>Enter the list of typing.overload decorators separated by comma</source>
-        <translation type="unfinished"></translation>
+        <translation>Введите через запятую список typing.overload декораторов</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleCheckerDialog.ui" line="908"/>
         <source>Select to not report dummy (i.e. &apos;_&apos;) arguments</source>
-        <translation type="unfinished"></translation>
+        <translation>Разрешить не сообщать о фиктивных (например, &apos;_&apos;) аргументах</translation>
     </message>
 </context>
 <context>
@@ -4577,11 +4616,6 @@
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleStatisticsDialog.ui" line="30"/>
-        <source>Count</source>
-        <translation type="obsolete">Количество</translation>
-    </message>
-    <message>
-        <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleStatisticsDialog.ui" line="30"/>
         <source>Code</source>
         <translation>Код</translation>
     </message>
@@ -4647,18 +4681,18 @@
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleStatisticsDialog.ui" line="35"/>
         <source>Open</source>
-        <translation type="unfinished">Открыть</translation>
+        <translation>Открыто</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleStatisticsDialog.ui" line="40"/>
         <source>Ignored</source>
-        <translation type="unfinished"></translation>
+        <translation>Проигнорировано</translation>
     </message>
 </context>
 <context>
     <name>CodingError</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="131"/>
+        <location filename="../Utilities/__init__.py" line="132"/>
         <source>The coding &apos;{0}&apos; is wrong for the given text.</source>
         <translation>Кодировка &apos;{0}&apos; не подходит для выбранного текста.</translation>
     </message>
@@ -5080,11 +5114,6 @@
         <source>overall source code line complexity is too high ({0})</source>
         <translation>слишком большая общая сложность исходного кода ({0})</translation>
     </message>
-    <message>
-        <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Complexity/translations.py" line="22"/>
-        <source>{0}: {1}</source>
-        <translation type="obsolete">{0}: {1}</translation>
-    </message>
 </context>
 <context>
     <name>Conda</name>
@@ -6978,7 +7007,7 @@
 <context>
     <name>DebugUI</name>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1980"/>
+        <location filename="../Debugger/DebugUI.py" line="1981"/>
         <source>Run Script</source>
         <translation>Выполнить сценарий</translation>
     </message>
@@ -6999,7 +7028,7 @@
 &lt;p&gt;Установка аргументов командной строки и запуск сценария вне отладчика. Если файл имеет несохранённые изменения, он может быть сохранен первым.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>Run Project</source>
         <translation>Выполнить проект</translation>
     </message>
@@ -7104,7 +7133,7 @@
 &lt;p&gt;Задание аргументов и запуск проекта на профилирование. Если файлы проекта не были сохранены, изменения можно предварительно сохранить.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2121"/>
+        <location filename="../Debugger/DebugUI.py" line="2122"/>
         <source>Debug Script</source>
         <translation>Отладка сценария</translation>
     </message>
@@ -7125,7 +7154,7 @@
 &lt;p&gt;Установка аргументов командной строки и задание текущей строки в качестве первой исполняемой инструкции Python текущего окна редактора. Если файл имеет несохранённые изменения, он может быть сохранен первым.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>Debug Project</source>
         <translation>Отладка проекта</translation>
     </message>
@@ -7476,67 +7505,67 @@
         <translation>Отлаживаемая программа была неожиданно прервана.</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>Breakpoint Condition Error</source>
         <translation>Ошибка в условиях точки останова</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>&lt;p&gt;The condition of the breakpoint &lt;b&gt;{0}, {1}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Условие точки останова &lt;b&gt;{0}, {1}&lt;/b&gt; содержит синтаксическую ошибку.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>Watch Expression Error</source>
         <translation>Ошибка в выражении для отслеживания</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>&lt;p&gt;The watch expression &lt;b&gt;{0}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Выражение для отслеживания &lt;b&gt;{0}&lt;/b&gt; содержит синтаксическую ошибку.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1530"/>
+        <location filename="../Debugger/DebugUI.py" line="1531"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; already exists.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Выражение для отслеживания &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; уже существует.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1535"/>
+        <location filename="../Debugger/DebugUI.py" line="1536"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; for the variable &lt;b&gt;{1}&lt;/b&gt; already exists.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Выражение для отслеживания &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; для переменной &lt;b&gt;{1}&lt;/b&gt; уже существует.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1540"/>
+        <location filename="../Debugger/DebugUI.py" line="1541"/>
         <source>Watch expression already exists</source>
         <translation>Выражение для отслеживания уже существует</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1709"/>
+        <location filename="../Debugger/DebugUI.py" line="1710"/>
         <source>Coverage of Project</source>
         <translation>Покрытие проекта</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1690"/>
+        <location filename="../Debugger/DebugUI.py" line="1691"/>
         <source>Coverage of Script</source>
         <translation>Покрытие сценария</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>There is no main script defined for the current project. Aborting</source>
         <translation>Для текущего проекта не определён главный сценарий. Отмена</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1854"/>
+        <location filename="../Debugger/DebugUI.py" line="1855"/>
         <source>Profile of Project</source>
         <translation>Профиль проекта</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1835"/>
+        <location filename="../Debugger/DebugUI.py" line="1836"/>
         <source>Profile of Script</source>
         <translation>Профиль сценария</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>There is no main script defined for the current project. No debugging possible.</source>
         <translation>Для текущего проекта не определён главный сценарий. Отладка невозможна.</translation>
     </message>
@@ -7591,7 +7620,7 @@
         <translation>&lt;b&gt;Переместить указатель инструкции к курсору&lt;/b&gt;&lt;p&gt;Перемещение указателя внутренней инструкции Python к текущей позиции курсора без выполнения промежуточного кода между ними.&lt;/p&gt;&lt;p&gt;При этом невозможно выйти из функции или перейти в блок кода, например в цикл. В таких случаях в журнал выводится сообщение об ошибке.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1418"/>
+        <location filename="../Debugger/DebugUI.py" line="1419"/>
         <source>No locals available.</source>
         <translation>Нет доступных локальных переменных.</translation>
     </message>
@@ -9004,11 +9033,6 @@
         <translation>docstring содержит @exception, но function/method не вызывает исключение</translation>
     </message>
     <message>
-        <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/DocStyle/translations.py" line="161"/>
-        <source>{0}: {1}</source>
-        <translation type="obsolete">{0}: {1}</translation>
-    </message>
-    <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/DocStyle/translations.py" line="36"/>
         <source>docstring does not contain a summary</source>
         <translation>docstring не содержит резюме</translation>
@@ -9843,7 +9867,7 @@
     <message>
         <location filename="../E5Gui/E5ErrorMessageFilterDialog.py" line="32"/>
         <source>&lt;b&gt;Error Message Filters&lt;/b&gt;&lt;p&gt;This list shows the configured message filters used to suppress error messages from within Qt.&lt;/p&gt;&lt;p&gt;A default list of message filters is added to this user list.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Фильтры сообщений об ошибках&lt;/b&gt;&lt;p&gt;Этот список отображает настроенные фильтры сообщений, используемые для подавления сообщений об ошибках из Qt.&lt;/p&gt;&lt;p&gt;В этот список фильтров сообщений по умолчанию добавляется список пользователя.&lt;/p&gt;</translation>
+        <translation>&lt;b&gt;Фильтры сообщений об ошибках&lt;/b&gt;&lt;p&gt;Этот список отображает настроенные фильтры сообщений, используемые для подавления сообщений об ошибках из Qt.&lt;/p&gt;&lt;p&gt;В этот пользовательский список добавляется список фильтров сообщений по умолчанию.&lt;/p&gt;</translation>
     </message>
 </context>
 <context>
@@ -9925,10 +9949,18 @@
 &lt;/ul&gt;
 </translation>
     </message>
-    <message>
-        <location filename="../E5Graphics/E5GraphicsView.py" line="417"/>
-        <source>{0}, Page {1}</source>
-        <translation>{0}, лист {1}</translation>
+</context>
+<context>
+    <name>E5JsonServer</name>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>JSON Protocol Error</source>
+        <translation>Ошибка протокола JSON</translation>
+    </message>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>&lt;p&gt;The response received from the client could not be decoded. Please report this issue with the received data to the eric bugs email address.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;&lt;p&gt;Data:&lt;br/&gt;{1}&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Не удалось декодировать ответ, полученный от клиента. Сообщите об этой проблеме, с полученными данными, на адрес электронной почты eric bugs.&lt;/p&gt;&lt;p&gt;Error: {0} &lt;/p&gt;&lt;p&gt;Data:&lt;br/&gt;{1}&lt;/p&gt;</translation>
     </message>
 </context>
 <context>
@@ -11419,7 +11451,7 @@
         <translation>Снять выделение</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7944"/>
+        <location filename="../QScintilla/Editor.py" line="7941"/>
         <source>Check spelling...</source>
         <translation>Проверка орфографии...</translation>
     </message>
@@ -12029,32 +12061,32 @@
         <translation>Включать атрибуты класса?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Imports Diagram</source>
         <translation>Диаграмма импортов</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Include imports from external modules?</source>
         <translation>Включать импорты из внешних модулей?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Application Diagram</source>
         <translation>Диаграмма приложения</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Include module names?</source>
         <translation>Включать имена модулей?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7947"/>
+        <location filename="../QScintilla/Editor.py" line="7944"/>
         <source>Add to dictionary</source>
         <translation>Добавить в словарь</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7949"/>
+        <location filename="../QScintilla/Editor.py" line="7946"/>
         <source>Ignore All</source>
         <translation>Игнорировать всё</translation>
     </message>
@@ -12094,12 +12126,12 @@
         <translation>Предыдущее изменение</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>Sort Lines</source>
         <translation>Сортировать строки</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>The selection contains illegal data for a numerical sort.</source>
         <translation>Выборка содержит данные неподходящие для сортировки как числа.</translation>
     </message>
@@ -12169,12 +12201,12 @@
         <translation>Источник всплывающих подсказок &apos;{0}&apos; уже зарегистрирован. Повторный запрос проигнорирован.</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>Register Mouse Click Handler</source>
         <translation>Регистрация обработчика кликов мышки</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>A mouse click handler for &quot;{0}&quot; was already registered by &quot;{1}&quot;. Aborting request by &quot;{2}&quot;...</source>
         <translation>Обработчик кликов мышки для &quot;{0}&quot; уже зарегистрирован &quot;{1}&quot;. Запрос прерван &quot;{2}&quot;...</translation>
     </message>
@@ -12204,12 +12236,12 @@
         <translation>Выполнить выбор в консоли</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>EditorConfig Properties</source>
         <translation>Свойства EditorConfig</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>&lt;p&gt;The EditorConfig properties for file &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Не удается загрузить свойства EditorConfig для файла &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
@@ -12254,7 +12286,7 @@
         <translation>&lt;p&gt;Файл &lt;b&gt;{0}&lt;/b&gt; был изменён, будучи открытым в eric. Перепрочесть?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8766"/>
+        <location filename="../QScintilla/Editor.py" line="8763"/>
         <source>Generate Docstring</source>
         <translation>Генерировать строки документации</translation>
     </message>
@@ -17967,13 +17999,8 @@
     </message>
     <message>
         <location filename="../MicroPython/EspFirmwareSelectionDialog.ui" line="79"/>
-        <source>Select the baud rate to be used foor flashing (default: 115.200 bps)</source>
-        <translation type="obsolete">Выберите скорость передачи для прошивки (по умолчанию: 115.200 бит/с)</translation>
-    </message>
-    <message>
-        <location filename="../MicroPython/EspFirmwareSelectionDialog.ui" line="79"/>
         <source>Select the baud rate to be used for flashing (default: 115.200 bps)</source>
-        <translation type="unfinished"></translation>
+        <translation>Выберите скорость передачи для прошивки (по умолчанию: 115.200 бит/с)</translation>
     </message>
 </context>
 <context>
@@ -18635,7 +18662,7 @@
 <context>
     <name>FileDialogWizardDialog</name>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="72"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="73"/>
         <source>QFileDialog Wizard</source>
         <translation>Мастер QFileDialog</translation>
     </message>
@@ -18795,7 +18822,7 @@
         <translation>Отображать только директории</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="89"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="90"/>
         <source>Test</source>
         <translation>Тест</translation>
     </message>
@@ -18915,7 +18942,7 @@
         <translation>Введите список поддерживаемых схем, разделенных пробелами</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="67"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="68"/>
         <source>E5FileDialog Wizard</source>
         <translation>Мастер E5FileDialog</translation>
     </message>
@@ -26369,27 +26396,27 @@
 <context>
     <name>Globals</name>
     <message>
-        <location filename="../Globals/__init__.py" line="451"/>
+        <location filename="../Globals/__init__.py" line="455"/>
         <source>{0:4.2f} Bytes</source>
         <translation>{0:4.2f} байтов</translation>
     </message>
     <message>
-        <location filename="../Globals/__init__.py" line="455"/>
-        <source>{0:4.2f} KiB</source>
-        <translation>{0:4.2f} KiB</translation>
-    </message>
-    <message>
         <location filename="../Globals/__init__.py" line="459"/>
-        <source>{0:4.2f} MiB</source>
-        <translation>{0:4.2f} MiB</translation>
+        <source>{0:4.2f} KiB</source>
+        <translation>{0:4.2f} KiB</translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="463"/>
-        <source>{0:4.2f} GiB</source>
-        <translation>{0:4.2f} GiB</translation>
+        <source>{0:4.2f} MiB</source>
+        <translation>{0:4.2f} MiB</translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="467"/>
+        <source>{0:4.2f} GiB</source>
+        <translation>{0:4.2f} GiB</translation>
+    </message>
+    <message>
+        <location filename="../Globals/__init__.py" line="471"/>
         <source>{0:4.2f} TiB</source>
         <translation>{0:4.2f} TiB</translation>
     </message>
@@ -28496,112 +28523,112 @@
         <translation>Создание ветви в Mercurial репозитории</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1849"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1850"/>
         <source>Showing current branch</source>
         <translation>Отображение текущей ветви</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1939"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1940"/>
         <source>Verifying the integrity of the Mercurial repository</source>
         <translation>Mercurial: Проверка целостности репозитория</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1953"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1954"/>
         <source>Showing the combined configuration settings</source>
         <translation>Отображение обобщенных параметров конфигурации</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1966"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1967"/>
         <source>Showing aliases for remote repositories</source>
         <translation>Отображение алиасов удалённых репозиториев</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1979"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1980"/>
         <source>Recovering from interrupted transaction</source>
         <translation>Восстановление после прерванной транзакции</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1992"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1993"/>
         <source>Identifying project directory</source>
         <translation>Идентификация директории проекта</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>Create .hgignore file</source>
         <translation>Создать файл .hgignore</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Файл &lt;b&gt;{0}&lt;/b&gt; уже существует. Перезаписать?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2119"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2120"/>
         <source>Create changegroup</source>
         <translation>Создать группу изменений</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2076"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2077"/>
         <source>Mercurial Changegroup Files (*.hg)</source>
         <translation>Файлы группы изменений Mercurial (*.hg)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2093"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2094"/>
         <source>&lt;p&gt;The Mercurial changegroup file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Файл группы изменений Mercurial&lt;b&gt;{0}&lt;/b&gt; уже существует. Переписать?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2129"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2130"/>
         <source>Preview changegroup</source>
         <translation>Просмотр группы изменений</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2157"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2158"/>
         <source>Mercurial Changegroup Files (*.hg);;All Files (*)</source>
         <translation>Файлы группы изменений Mercurial (*.hg);;Все файлы (*)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2178"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2179"/>
         <source>Apply changegroups</source>
         <translation>Применить группу изменений</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2166"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2167"/>
         <source>Shall the working directory be updated?</source>
         <translation>Обновить рабочую директорию?</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2197"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2198"/>
         <source>Bisect subcommand ({0}) invalid.</source>
         <translation>Bisect: Недействительная подкоманда ({0}).</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2217"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2218"/>
         <source>Mercurial Bisect ({0})</source>
         <translation>Mercurial: Bisect ({0})</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2240"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2241"/>
         <source>Removing files from the Mercurial repository only</source>
         <translation>Mercurial: Удаление файлов только из репозитория</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2283"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2284"/>
         <source>Backing out changeset</source>
         <translation>Отмена набора изменений</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2263"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2264"/>
         <source>No revision given. Aborting...</source>
         <translation>Не задана ревизия. Отмена...</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2299"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2300"/>
         <source>Rollback last transaction</source>
         <translation>Откатить последнюю транзакцию</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2292"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2293"/>
         <source>Are you sure you want to rollback the last transaction?</source>
         <translation>Вы действительно хотите откатить последнюю транзакцию?</translation>
     </message>
@@ -28611,72 +28638,72 @@
         <translation>Mercurial: Фиксация изменений в репозитории</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>Mercurial Command Server</source>
         <translation>Mercurial: Сервер команд</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2799"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2800"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be restarted.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Mercurial: Невозможно перезапустить сервер.&lt;br&gt;Причина: {0}.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Mercurial: Невозможно запустить сервер.&lt;br&gt;Причина: {0}.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2351"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2352"/>
         <source>Import Patch</source>
         <translation>Импорт патча</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2392"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2393"/>
         <source>Export Patches</source>
         <translation>Экспорт патчей</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2431"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2432"/>
         <source>Change Phase</source>
         <translation>Изменить фазу</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2480"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2481"/>
         <source>Copy Changesets</source>
         <translation>Копировать набор изменений</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2520"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2521"/>
         <source>Copy Changesets (Continue)</source>
         <translation>Копировать набор изменений (Continue)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2663"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2664"/>
         <source>Add Sub-repository</source>
         <translation>Добавить субрепозиторий</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2695"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2696"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be read.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно прочитать файл субрепозиториев .hgsub.&lt;b&gt;&lt;/b&gt;Причина {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2645"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2646"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub already contains an entry &lt;b&gt;{0}&lt;/b&gt;. Aborting...&lt;/p&gt;</source>
         <translation>&lt;p&gt;Файл субрепозиториев .hgsub уже содержит запись &lt;b&gt;{0}&lt;/b&gt;. Отмена...&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be written to.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно записать файл субрепозиториев .hgsub.&lt;p&gt;&lt;p&gt;Причина: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>Remove Sub-repositories</source>
         <translation>Удалить субрепозитории</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2684"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2685"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub does not exist. Aborting...&lt;/p&gt;</source>
         <translation>&lt;p&gt;Отсутствует файл субрепозиториев .hgsub. Отмена...&lt;/p&gt;</translation>
     </message>
@@ -28706,7 +28733,7 @@
         <translation>Вы действительно хотите вернуть все изменения в проекте?</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2568"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2569"/>
         <source>Create Unversioned Archive</source>
         <translation>Создать неверсированный архив</translation>
     </message>
@@ -28726,7 +28753,7 @@
         <translation>Mercurial: Добавление тегов в репозиторий</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1838"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1839"/>
         <source>Created new branch &lt;{0}&gt;.</source>
         <translation>Создана новая ветвь &lt;{0}&gt;.</translation>
     </message>
@@ -28736,62 +28763,62 @@
         <translation>Конечная ревизия текущей ветви</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3049"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3050"/>
         <source>Mercurial Bookmark</source>
         <translation>Mercurial: Закладка</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Delete Bookmark</source>
         <translation>Удалить закладку</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Select the bookmark to be deleted:</source>
         <translation>Выберите закладку для удаления:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3074"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3075"/>
         <source>Delete Mercurial Bookmark</source>
         <translation>Mercurial: Удалить закладку</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3098"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3099"/>
         <source>Rename Mercurial Bookmark</source>
         <translation>Mercurial: Переименовать закладку</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3132"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3133"/>
         <source>Move Mercurial Bookmark</source>
         <translation>Mercurial: Переместить закладку</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Pull Bookmark</source>
         <translation>Затянуть закладку</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Select the bookmark to be pulled:</source>
         <translation>Выберите закладку для затягивания:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3213"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3214"/>
         <source>Pulling bookmark from a remote Mercurial repository</source>
         <translation>Затянуть закладку из удалённого Mercurial репозитория</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Push Bookmark</source>
         <translation>Протолкнуть закладку</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Select the bookmark to be push:</source>
         <translation>Выберите закладку для проталкивания:</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3253"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3254"/>
         <source>Pushing bookmark to a remote Mercurial repository</source>
         <translation>Mercurial: Проталкивание закладки в удалённый репозиторий</translation>
     </message>
@@ -28826,22 +28853,22 @@
         <translation>Помеченные как &apos;resolved&apos;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>Delete All Backups</source>
         <translation>Удалить все резервные копии</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>&lt;p&gt;Do you really want to delete all backup bundles stored the backup area &lt;b&gt;{0}&lt;/b&gt;?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Вы действительно хотите удалить все резервные комплекты, сохраненные в &apos;области резервного копирования&apos;&lt;b&gt;{0}&lt;/b&gt;?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2532"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2533"/>
         <source>Copy Changesets (Stop)</source>
         <translation>Копировать набор изменений (Stop)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2545"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2546"/>
         <source>Copy Changesets (Abort)</source>
         <translation>Копировать набор изменений (Abort)</translation>
     </message>
@@ -29649,42 +29676,42 @@
 <context>
     <name>HgClient</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="91"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="92"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Невозможно запустить процесс {0}. Убедитесь, что он находится в путях поиска.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="140"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="141"/>
         <source>Did not receive the &apos;hello&apos; message.</source>
         <translation>Сообщение &apos;hello&apos; не получено.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="142"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="143"/>
         <source>Received data on unexpected channel.</source>
         <translation>Получены данные по неожиданному каналу.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="147"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="148"/>
         <source>Bad &apos;hello&apos; message, expected &apos;capabilities: &apos; but got &apos;{0}&apos;.</source>
         <translation>Неправильное &apos;hello&apos; сообщение, ожидалось &apos;capabilities: &apos;, а получено &apos;{0}&apos;.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="153"/>
         <source>&apos;capabilities&apos; message did not contain any capability.</source>
         <translation>Сообщение &apos;capabilities&apos; пусто.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="160"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="161"/>
         <source>Bad &apos;hello&apos; message, expected &apos;encoding: &apos; but got &apos;{0}&apos;.</source>
         <translation>Неправильное &apos;hello&apos; сообщение, ожидалось &apos;encoding: &apos;, а получено &apos;{0}&apos;.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="165"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="166"/>
         <source>&apos;encoding&apos; message did not contain any encoding.</source>
         <translation>Сообщение &apos;encoding&apos; пусто.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="379"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="380"/>
         <source>For message see output dialog.</source>
         <translation>Сообщение можно увидеть в окне вывода.</translation>
     </message>
@@ -34498,52 +34525,52 @@
 <context>
     <name>HgServeDialog</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="50"/>
         <source>Mercurial Server</source>
         <translation>Mercurial: Сервер</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="53"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="54"/>
         <source>Start Server</source>
         <translation>Запустить сервер</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="59"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="60"/>
         <source>Stop Server</source>
         <translation>Остановить сервер</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="65"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="66"/>
         <source>Start Browser</source>
         <translation>Запустить браузер</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="73"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="74"/>
         <source>Enter the server port</source>
         <translation>Введите номер порта сервера</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="79"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="80"/>
         <source>Select the style to use</source>
         <translation>Выберите стиль</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="83"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="84"/>
         <source>Server</source>
         <translation>Сервер</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="90"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="91"/>
         <source>Browser</source>
         <translation>Браузер</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>Process Generation Error</source>
         <translation>Ошибка при запуске процесса</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Невозможно запустить процесс {0}. Убедитесь, что он находится в путях поиска.</translation>
     </message>
@@ -36119,17 +36146,17 @@
 <context>
     <name>HgUtilities</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="93"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="128"/>
         <source>The hg process finished with the exit code {0}</source>
         <translation>hg процесс завершен с кодом возврата {0}</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="98"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="133"/>
         <source>The hg process did not finish within 30s.</source>
         <translation>hg процесс не завершился в течение 30 секунд.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="102"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="137"/>
         <source>Could not start the hg executable.</source>
         <translation>Невозможно запустить исполняемый файл hg.</translation>
     </message>
@@ -38340,35 +38367,40 @@
 <context>
     <name>ImportsDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm {0}: {1}</source>
         <translation>Диаграмма импортов {0}: {1}</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm: {0}</source>
         <translation>Диаграмма импортов: {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>Parsing modules...</source>
         <translation>Разбор модулей...</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="124"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="136"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a Python package.</source>
         <translation>Каталог &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; не является пакетом Python.</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>%v/%m Modules</source>
         <translation>%v из %m модулей</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="95"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="107"/>
         <source>Imports Diagramm</source>
         <translation>Импорт диаграмм</translation>
     </message>
+    <message>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="410"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Диаграмма принадлежит проекту &lt;b&gt;{0}&lt;/b&gt;. Пожалуйста, откройте его и попробуйте еще раз.&lt;/p&gt;</translation>
+    </message>
 </context>
 <context>
     <name>InputDialogWizard</name>
@@ -40037,22 +40069,22 @@
         <translation>Отображение имени сервера</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="252"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="251"/>
         <source>Yes</source>
         <translation>Да</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="254"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="253"/>
         <source>No</source>
         <translation>Нет</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Delete Channel</source>
         <translation>Удалить канал</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Do you really want to delete channel &lt;b&gt;{0}&lt;/b&gt;?</source>
         <translation>Вы действительно хотите удалить канал &lt;b&gt;{0}&lt;/b&gt;?</translation>
     </message>
@@ -42214,11 +42246,6 @@
         <translation>Выделенные идентификаторы</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Lexers/LexerPython.py" line="89"/>
-        <source>PyQt5 Modules</source>
-        <translation type="obsolete">PyQt5 модули</translation>
-    </message>
-    <message>
         <location filename="../QScintilla/Lexers/LexerPython.py" line="107"/>
         <source>Cython Specifics</source>
         <translation>Особенности Cython</translation>
@@ -42226,7 +42253,7 @@
     <message>
         <location filename="../QScintilla/Lexers/LexerPython.py" line="91"/>
         <source>PyQt5/6 Modules</source>
-        <translation type="unfinished"></translation>
+        <translation>Модули PyQt5/6</translation>
     </message>
 </context>
 <context>
@@ -44095,7 +44122,7 @@
     <message>
         <location filename="../MicroPython/MicroPythonDevices.py" line="153"/>
         <source>Generic Board</source>
-        <translation>Типовая плата</translation>
+        <translation>Универсальная плата</translation>
     </message>
     <message>
         <location filename="../MicroPython/MicroPythonDevices.py" line="144"/>
@@ -46091,11 +46118,6 @@
         <translation>один элемент кортежа найден</translation>
     </message>
     <message>
-        <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Miscellaneous/translations.py" line="323"/>
-        <source>{0}: {1}</source>
-        <translation type="obsolete">{0}: {1}</translation>
-    </message>
-    <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Miscellaneous/translations.py" line="27"/>
         <source>&quot;{0}&quot; is a Python builtin and is being shadowed; consider renaming the variable</source>
         <translation>&quot;{0}&quot; является встроенным именем Python и затеняется; рассмотрите возможность переименования переменной</translation>
@@ -47971,45 +47993,50 @@
 <context>
     <name>PackageDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram {0}: {1}</source>
         <translation>Диаграмма пакетов {0}: {1}</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram: {0}</source>
         <translation>Диаграмма пакетов: {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>Parsing modules...</source>
         <translation>Разбор модулей...</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="205"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="219"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a package.</source>
         <translation>Директория &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; не является пакетом.</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="214"/>
-        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules.</source>
-        <translation>Пакет &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; не содержит ни одного модуля.</translation>
-    </message>
-    <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="231"/>
-        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
-        <translation>Пакет &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; не содержит ни одного класса.</translation>
-    </message>
-    <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>%v/%m Modules</source>
         <translation>%v из %m модулей</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="158"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="172"/>
         <source>Package Diagram</source>
         <translation>Диаграмма пакетов</translation>
     </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="230"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules or subpackages.</source>
+        <translation>Пакет &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; не содержит никаких модулей или субпакетов.</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="247"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes or subpackages.</source>
+        <translation>Пакет &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; не содержит никаких модулей или субпакетов.</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="555"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Диаграмма принадлежит проекту &lt;b&gt;{0}&lt;/b&gt;. Пожалуйста, откройте его и попробуйте еще раз.&lt;/p&gt;</translation>
+    </message>
 </context>
 <context>
     <name>PageScreenDialog</name>
@@ -49466,42 +49493,42 @@
 <context>
     <name>PixmapDiagram</name>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>Pixmap-Viewer</source>
         <translation>Просмотр Pixmap</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="93"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="96"/>
         <source>Close</source>
         <translation>Закрыть</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="98"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="101"/>
         <source>Print</source>
         <translation>Печать</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="103"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="106"/>
         <source>Print Preview</source>
         <translation>Предварительный просмотр печати</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="133"/>
-        <source>Window</source>
-        <translation>Окно</translation>
-    </message>
-    <message>
         <location filename="../Graphics/PixmapDiagram.py" line="137"/>
+        <source>Window</source>
+        <translation>Окно</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PixmapDiagram.py" line="141"/>
         <source>Graphics</source>
         <translation>Графика</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; cannot be displayed. The format is not supported.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно отобразить файл &lt;b&gt;{0}&lt;/b&gt;. Формат файла не поддерживается.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="391"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="416"/>
         <source>Diagram: {0}</source>
         <translation>Диаграмма: {0}</translation>
     </message>
@@ -49840,12 +49867,12 @@
         <translation>&lt;p&gt;Модуль плагина &lt;b&gt;{0}&lt;/b&gt; существует. Прерывание...&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="492"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="476"/>
         <source>Error installing plugin. Reason: {0}</source>
         <translation>Ошибка установки плагина. Причина: {0}</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="501"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="485"/>
         <source>Unspecific exception installing plugin.</source>
         <translation>Неизвестное исключение при установке плагина.</translation>
     </message>
@@ -49853,62 +49880,62 @@
 <context>
     <name>PluginManager</name>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="210"/>
+        <location filename="../PluginManager/PluginManager.py" line="211"/>
         <source>Could not create a package for {0}.</source>
         <translation>Невозможно создать пакет для {0}.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="240"/>
+        <location filename="../PluginManager/PluginManager.py" line="241"/>
         <source>The internal plugin directory &lt;b&gt;{0}&lt;/b&gt; does not exits.</source>
         <translation>Внутренняя директория плагинов &lt;b&gt;{0}&lt;/b&gt; не существует.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="404"/>
+        <location filename="../PluginManager/PluginManager.py" line="411"/>
         <source>Module is missing the &apos;autoactivate&apos; attribute.</source>
         <translation>Модуль не содержит атрибута &apos;autoactivate&apos;.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="415"/>
+        <location filename="../PluginManager/PluginManager.py" line="426"/>
         <source>Module is missing the &apos;pluginType&apos; and/or &apos;pluginTypename&apos; attributes.</source>
         <translation>Модуль не содержит атрибутов &apos;pluginType&apos; и/или &apos;pluginTypename&apos;.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="437"/>
+        <location filename="../PluginManager/PluginManager.py" line="456"/>
         <source>Module failed to load. Error: {0}</source>
         <translation>Неудачная загрузка модуля. Ошибка: {0}</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="614"/>
+        <location filename="../PluginManager/PluginManager.py" line="637"/>
         <source>Incompatible plugin activation method.</source>
         <translation>Несовместимый метод активации плагина.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1222"/>
         <source>Plugin Manager Error</source>
         <translation>Ошибка менеджера плагинов</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1222"/>
         <source>&lt;p&gt;The plugin download directory &lt;b&gt;{0}&lt;/b&gt; could not be created. Please configure it via the configuration dialog.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Директория для загрузки плагинов &lt;b&gt;{0}&lt;/b&gt; не может быть создана. Задайте её посредством диалога конфигурации.&lt;/p&gt;&lt;p&gt;Причина:{1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1299"/>
         <source>Error downloading file</source>
         <translation>Ошибка загрузки файла</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1299"/>
         <source>&lt;p&gt;Could not download the requested file from {0}.&lt;/p&gt;&lt;p&gt;Error: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Не удалось загрузить запрашиваемый файл из {0}.&lt;/p&gt;&lt;p&gt;Ошибка: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1336"/>
         <source>New plugin versions available</source>
         <translation>Новые версии плагинов доступны для загрузки</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1336"/>
         <source>&lt;p&gt;There are new plug-ins or plug-in updates available. Use the plug-in repository dialog to get them.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Имеются новые плагины или их обновления. Воспользуйтесь диалогом репозитория плагинов для их загрузки.&lt;/p&gt;</translation>
     </message>
@@ -51927,7 +51954,7 @@
         <translation>&lt;b&gt;Диаграмма приложения...&lt;/b&gt;&lt;p&gt;Отображает диаграмму проекта.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>Create Package List</source>
         <translation>Создать список пакета</translation>
     </message>
@@ -51937,7 +51964,7 @@
         <translation>&amp;Создать список пакета</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>Create Plugin Archive</source>
         <translation>Создать архив плагина</translation>
     </message>
@@ -52057,27 +52084,27 @@
         <translation>Включать имена модулей?</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5264"/>
+        <location filename="../Project/Project.py" line="5265"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; already exists.&lt;/p&gt;&lt;p&gt;Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Файл &lt;b&gt;PKGLIST&lt;/b&gt; уже существует. Переписать?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно создать файл &lt;b&gt;PKGLIST&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Причина: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5331"/>
+        <location filename="../Project/Project.py" line="5332"/>
         <source>The project does not have a main script defined. Aborting...</source>
         <translation>Для текущего проекта не определён главный сценарий. Отмена...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5467"/>
+        <location filename="../Project/Project.py" line="5468"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be stored in the archive. Ignoring it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно сохранить файл &lt;b&gt;{0}&lt;/b&gt; в архиве. Игнорируем его.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5536"/>
+        <location filename="../Project/Project.py" line="5537"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно прочитать файл плагина &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
@@ -52137,7 +52164,7 @@
         <translation>&lt;p&gt;Выбранная VCS &lt;b&gt;{0}&lt;/b&gt; не найдена.&lt;br/&gt;Возврат отвергнут.&lt;/p&gt;&lt;p&gt;{1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt; &lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно прочитать файл плагина &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
@@ -52183,7 +52210,7 @@
         <translation>Поиск файла проекта...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5367"/>
+        <location filename="../Project/Project.py" line="5368"/>
         <source>Create Plugin Archives</source>
         <translation>Создать архивы плагина</translation>
     </message>
@@ -52198,37 +52225,37 @@
         <translation>Создать архивы плагина (&amp;Snapshot)</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5345"/>
+        <location filename="../Project/Project.py" line="5346"/>
         <source>Select package lists:</source>
         <translation>Выбор списков пакета:</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Creating plugin archives...</source>
         <translation>Создание архивов плагина...</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Abort</source>
         <translation>Прервать</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>%v/%m Archives</source>
         <translation>%v из %m архивов</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5378"/>
+        <location filename="../Project/Project.py" line="5379"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно прочитать файл &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5356"/>
+        <location filename="../Project/Project.py" line="5357"/>
         <source>&lt;p&gt;No package list files (PKGLIST*) available or selected. Aborting...&lt;/p&gt;</source>
         <translation>&lt;p&gt;Файлы со списком пакета (PKGLIST*) не доступны или не выбраны. Отмена...&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5405"/>
+        <location filename="../Project/Project.py" line="5406"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; is not ready yet.&lt;/p&gt;&lt;p&gt;Please rework it and delete the&apos;; initial_list&apos; line of the header.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Файл &lt;b&gt;{0}&lt;/b&gt; пока не готов.&lt;/p&gt;&lt;p&gt;Пожалуйста переработайте его и удалите строки &apos;; initial_list&apos; из его заголовка.&lt;/p&gt;</translation>
     </message>
@@ -52268,7 +52295,7 @@
         <translation>&lt;p&gt;Файл makefile &lt;b&gt;{0}&lt;/b&gt; невозможно создать.&lt;br/&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>Execute Make</source>
         <translation>Выполнить Make</translation>
     </message>
@@ -52288,7 +52315,7 @@
         <translation>&lt;b&gt;Выполнить Make&lt;/b&gt;&lt;p&gt;Выполнение прогона &apos;make&apos; для пересборки настроеной цели.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5744"/>
+        <location filename="../Project/Project.py" line="5745"/>
         <source>Test for Changes</source>
         <translation>Проверить изменения</translation>
     </message>
@@ -52313,27 +52340,27 @@
         <translation>Make</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5692"/>
+        <location filename="../Project/Project.py" line="5693"/>
         <source>The make process did not start.</source>
         <translation>Make-процесс не был запущен.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5737"/>
+        <location filename="../Project/Project.py" line="5738"/>
         <source>The make process crashed.</source>
         <translation>Make-процесс разрушен.</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5747"/>
+        <location filename="../Project/Project.py" line="5748"/>
         <source>&lt;p&gt;There are changes that require the configured make target &lt;b&gt;{0}&lt;/b&gt; to be rebuilt.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Существуют изменения, которые требуют конфигурации make-цели &lt;b&gt;{0}&lt;/b&gt; для ее пересборки.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5752"/>
+        <location filename="../Project/Project.py" line="5753"/>
         <source>&lt;p&gt;There are changes that require the default make target to be rebuilt.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Существуют изменения, которые требуют make-цель по умолчанию для ее пересборки.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>The makefile contains errors.</source>
         <translation>Makefile содержит ошибки.</translation>
     </message>
@@ -52408,17 +52435,17 @@
         <translation>&lt;b&gt;Создать архивы плагина (Snapshot)&lt;/b&gt;&lt;p&gt;Создание архивных файлов плагина eric, используя список файлов, приведенный в файле PKGLIST. Имя архива, если оно не задано в файле со списком пакета, создается из имени главного сценария. Версия главного скрипта изменяется в соответствии релизом snapshot.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5432"/>
+        <location filename="../Project/Project.py" line="5433"/>
         <source>&lt;p&gt;The eric plugin archive file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно создать архив плагина &lt;b&gt;{0}&lt;/b&gt; eric.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5484"/>
+        <location filename="../Project/Project.py" line="5485"/>
         <source>&lt;p&gt;The eric plugin archive files were created with some errors.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Файлы архива плагина eric были созданы с ошибками.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5492"/>
+        <location filename="../Project/Project.py" line="5493"/>
         <source>&lt;p&gt;The eric plugin archive files were created successfully.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Файлы архива плагина eric созданы успешно.&lt;/p&gt;</translation>
     </message>
@@ -53268,32 +53295,32 @@
         <translation>Настроить...</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Delete files/directories</source>
         <translation>Удаление файлов/каталогов</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Do you really want to delete these entries from the project?</source>
         <translation>Вы действительно хотите удалить эти элементы из проекта?</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>Show Mime-Type</source>
         <translation>Показ Mime-Types</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="272"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="273"/>
         <source>The mime type of the file could not be determined.</source>
         <translation>Невозможно определить тип mime файла.</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="286"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="287"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation>Файл типа &lt;b&gt;{0}&lt;/b&gt; по стандарту MIME.</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation>Файл типа &lt;b&gt;{0}&lt;/b&gt; по стандарту MIME.&lt;br/&gt; Добавить ли в текстовый список типов MIME?</translation>
     </message>
@@ -54025,32 +54052,32 @@
         <translation>Диаграмма классов</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Include class attributes?</source>
         <translation>Включать атрибуты класса?</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Imports Diagram</source>
         <translation>Диаграмма импортов</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Include imports from external modules?</source>
         <translation>Включать импорты из внешних модулей?</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Package Diagram</source>
         <translation>Диаграмма пакетов</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Application Diagram</source>
         <translation>Диаграмма приложения</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Include module names?</source>
         <translation>Включать имена модулей?</translation>
     </message>
@@ -61141,11 +61168,6 @@
         <translation>Потенциальный XSS на функцию &apos;mark_safe()&apos;.</translation>
     </message>
     <message>
-        <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Security/translations.py" line="373"/>
-        <source>{0}: {1}</source>
-        <translation type="obsolete">{0}: {1}</translation>
-    </message>
-    <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Security/translations.py" line="365"/>
         <source>Possible hardcoded AWS access key ID: {0}</source>
         <translation>Возможный жестко закодированный идентификатор ключа доступа AWS: {0}</translation>
@@ -63196,207 +63218,207 @@
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="16"/>
         <source>Multiple &quot;isinstance()&quot; calls which can be merged into a single call for variable &quot;{0}&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Несколько вызовов isinstance(), которые можно объединить в один вызов переменной &quot;{0}&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="20"/>
         <source>Use a single if-statement instead of nested if-statements</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте одиночный оператор if вместо вложенных операторов if</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="23"/>
         <source>Return the condition &quot;{0}&quot; directly</source>
-        <translation type="unfinished"></translation>
+        <translation>Возвращайте условие &quot;{0}&quot; напрямую</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="26"/>
         <source>Use &quot;yield from {0}&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;yield from {0}&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="29"/>
         <source>Use &quot;with contextlib.suppress({0}):&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;with contextlib.suppress({0}):&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="32"/>
         <source>Handle error-cases first</source>
-        <translation type="unfinished"></translation>
+        <translation>Сначала обрабатывайте error-cases</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="35"/>
         <source>Don&apos;t use return in try/except and finally</source>
-        <translation type="unfinished"></translation>
+        <translation>Не используйте return в try/except и finally</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="38"/>
         <source>Use ternary operator &quot;{0} = {1} if {2} else {3}&quot; instead of if-else-block</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте тернарный оператор &quot;{0} = {1} if {2} else {3}&quot; вместо if-else-block</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="42"/>
         <source>Use &quot;{0} in {1}&quot; instead of &quot;{2}&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;{0} in {1}&quot; вместо &quot;{2}&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="87"/>
         <source>Use &quot;{0}&quot; instead of &quot;{1}&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;{0}&quot; вместо &quot;{1}&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="54"/>
         <source>Use enumerate instead of &quot;{0}&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте перечисление вместо &quot;{0}&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="57"/>
         <source>Use logical or (&quot;({0}) or ({1})&quot;) and a single body</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте логическое ИЛИ (&quot;({0}) or ({1})&quot;) и единый конструктив</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="60"/>
         <source>Use context handler for opening files</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте обработчик контекста для открытия файлов</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="63"/>
         <source>Use a dictionary lookup instead of 3+ if/elif-statements: return {0}</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте поиск по словарю вместо 3 и более if/elif операторов: return {0}</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="67"/>
         <source>Use &quot;{0}&quot; instead of multiple with statements</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;{0}&quot; вместо нескольких операторов with</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="70"/>
         <source>Use &quot;{0} in {1}&quot; instead of &quot;{0} in {1}.keys()&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;{0} in {1}&quot; вместо &quot;{0} in {1}.keys()&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="73"/>
         <source>Use a dataclass for &quot;class {0}&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте dataclass для &quot;class {0}&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="76"/>
         <source>Use &quot;class {0}:&quot; instead of &quot;class {0}(object):&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;class {0}:&quot; вместо &quot;class {0}(object):&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="95"/>
         <source>Use &quot;{0} != {1}&quot; instead of &quot;not {0} == {1}&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;{0} != {1}&quot; вместо &quot;not {0} == {1}&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="98"/>
         <source>Use &quot;{0} == {1}&quot; instead of &quot;not {0} != {1}&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;{0} == {1}&quot; вместо &quot;not {0} != {1}&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="101"/>
         <source>Use &quot;{0} not in {1}&quot; instead of &quot;not {0} in {1}&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;{0} not in {1}&quot; вместо &quot;not {0} in {1}&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="104"/>
         <source>Use &quot;{0} &gt;= {1}&quot; instead of &quot;not ({0} &lt; {1})&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;{0} &gt;= {1}&quot; вместо &quot;not ({0} &lt; {1})&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="107"/>
         <source>Use &quot;{0} &gt; {1}&quot; instead of &quot;not ({0} &lt;= {1})&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;{0} &gt; {1}&quot; вместо &quot;not ({0} &lt;= {1})&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="110"/>
         <source>Use &quot;{0} &lt;= {1}&quot; instead of &quot;not ({0} &gt; {1})&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;{0} &lt;= {1}&quot; вместо &quot;not ({0} &gt; {1})&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="113"/>
         <source>Use &quot;{0} &lt; {1}&quot; instead of &quot;not ({0} &gt;= {1})&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;{0} &lt; {1}&quot; вместо &quot;not ({0} &gt;= {1})&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="116"/>
         <source>Use &quot;{0}&quot; instead of &quot;not (not {0})&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;{0}&quot; вместо &quot;not (not {0})&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="120"/>
         <source>Use &quot;{1}&quot; instead of &quot;True if {0} else False&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;{1}&quot; вместо &quot;True if {0} else False&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="123"/>
         <source>Use &quot;{1}&quot; instead of &quot;False if {0} else True&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;{1}&quot; вместо &quot;False if {0} else True&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="126"/>
         <source>Use &quot;{0} if {0} else {1}&quot; instead of &quot;{1} if not {0} else {0}&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;{0} if {0} else {1}&quot; вместо &quot;{1} if not {0} else {0}&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="130"/>
         <source>Use &quot;False&quot; instead of &quot;{0} and not {0}&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;False&quot; вместо &quot;{0} and not {0}&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="133"/>
         <source>Use &quot;True&quot; instead of &quot;{0} or not {0}&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;True&quot; вместо &quot;{0} or not {0}&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="136"/>
         <source>Use &quot;True&quot; instead of &quot;... or True&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;True&quot; вместо &quot;... or True&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="139"/>
         <source>Use &quot;False&quot; instead of &quot;... and False&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;False&quot; вместо &quot;... and False&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="144"/>
         <source>Use &quot;{1} == {0}&quot; instead of &quot;{0} == {1}&quot; (Yoda-condition)</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;{1} == {0}&quot; вместо &quot;{0} == {1}&quot; (Yoda-condition)</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="45"/>
         <source>Use &quot;any({0} for {1} in {2})&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;any({0} for {1} in {2})&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="48"/>
         <source>Use &quot;all({0} for {1} in {2})&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;all({0} for {1} in {2})&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="79"/>
         <source>Use &quot;class {0}({1}):&quot; instead of &quot;class {0}({1}, object):&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;class {0}({1}):&quot; вместо &quot;class {0}({1}, object):&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="82"/>
         <source>Use &quot;{0}.get({1})&quot; instead of &quot;if {1} in {0}: {0}[{1}]&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;{0}.get({1})&quot; вместо &quot;if {1} in {0}: {0}[{1}]&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="90"/>
         <source>Use &quot;super()&quot; instead of &quot;{0}&quot;</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте &quot;super()&quot; вместо &quot;{0}&quot;</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="149"/>
         <source>Use keyword-argument instead of magic boolean</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте keyword-argument вместо magic boolean</translation>
     </message>
     <message>
         <location filename="../Plugins/CheckerPlugins/CodeStyleChecker/Simplify/translations.py" line="152"/>
         <source>Use keyword-argument instead of magic number</source>
-        <translation type="unfinished"></translation>
+        <translation>Используйте keyword-argument вместо magic number</translation>
     </message>
 </context>
 <context>
@@ -64695,11 +64717,6 @@
         <translation>Переменные среды окружения:</translation>
     </message>
     <message>
-        <location filename="../Debugger/StartCoverageDialog.ui" line="80"/>
-        <source>Enter the environment variables to be set.</source>
-        <translation type="obsolete">Введите переменные среды окружения которые необходимо установить.</translation>
-    </message>
-    <message>
         <location filename="../Debugger/StartCoverageDialog.ui" line="193"/>
         <source>Uncheck to disable exception reporting</source>
         <translation>Разрешить перехват исключений</translation>
@@ -64824,7 +64841,7 @@
     <message>
         <location filename="../Debugger/StartCoverageDialog.ui" line="80"/>
         <source>Enter the environment variables to be set separated by whitespace.</source>
-        <translation type="unfinished"></translation>
+        <translation>Введите через пробел переменные среды окружения, которые необходимо установить.</translation>
     </message>
 </context>
 <context>
@@ -64869,11 +64886,6 @@
         <translation>Переменные среды окружения:</translation>
     </message>
     <message>
-        <location filename="../Debugger/StartDebugDialog.ui" line="137"/>
-        <source>Enter the environment variables to be set.</source>
-        <translation type="obsolete">Введите переменные среды окружения которые необходимо установить.</translation>
-    </message>
-    <message>
         <location filename="../Debugger/StartDebugDialog.ui" line="235"/>
         <source>Uncheck to disable exception reporting</source>
         <translation>Разрешить перехват исключений</translation>
@@ -65026,7 +65038,7 @@
     <message>
         <location filename="../Debugger/StartDebugDialog.ui" line="137"/>
         <source>Enter the environment variables to be set separated by whitespace.</source>
-        <translation type="unfinished"></translation>
+        <translation>Введите через пробел переменные среды окружения, которые необходимо установить.</translation>
     </message>
 </context>
 <context>
@@ -65190,11 +65202,6 @@
         <translation>Переменные среды окружения:</translation>
     </message>
     <message>
-        <location filename="../Debugger/StartProfileDialog.ui" line="137"/>
-        <source>Enter the environment variables to be set.</source>
-        <translation type="obsolete">Введите переменные среды окружения которые необходимо установить.</translation>
-    </message>
-    <message>
         <location filename="../Debugger/StartProfileDialog.ui" line="190"/>
         <source>Uncheck to disable exception reporting</source>
         <translation>Разрешить перехват исключений</translation>
@@ -65319,7 +65326,7 @@
     <message>
         <location filename="../Debugger/StartProfileDialog.ui" line="137"/>
         <source>Enter the environment variables to be set separated by whitespace.</source>
-        <translation type="unfinished"></translation>
+        <translation>Введите через пробел переменные среды окружения, которые необходимо установить.</translation>
     </message>
 </context>
 <context>
@@ -65364,11 +65371,6 @@
         <translation>Переменные среды окружения:</translation>
     </message>
     <message>
-        <location filename="../Debugger/StartRunDialog.ui" line="137"/>
-        <source>Enter the environment variables to be set.</source>
-        <translation type="obsolete">Введите переменные среды окружения которые необходимо установить.</translation>
-    </message>
-    <message>
         <location filename="../Debugger/StartRunDialog.ui" line="190"/>
         <source>Uncheck to disable exception reporting</source>
         <translation>Разрешить перехват исключений</translation>
@@ -65471,7 +65473,7 @@
     <message>
         <location filename="../Debugger/StartRunDialog.ui" line="137"/>
         <source>Enter the environment variables to be set separated by whitespace.</source>
-        <translation type="unfinished"></translation>
+        <translation>Введите через пробел переменные среды окружения, которые необходимо установить.</translation>
     </message>
 </context>
 <context>
@@ -66159,37 +66161,37 @@
 <context>
     <name>SvgDiagram</name>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="50"/>
+        <location filename="../Graphics/SvgDiagram.py" line="53"/>
         <source>SVG-Viewer</source>
         <translation>Просмотр SVG</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="92"/>
+        <location filename="../Graphics/SvgDiagram.py" line="95"/>
         <source>Close</source>
         <translation>Закрыть</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="97"/>
+        <location filename="../Graphics/SvgDiagram.py" line="100"/>
         <source>Print</source>
         <translation>Печать</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="102"/>
+        <location filename="../Graphics/SvgDiagram.py" line="105"/>
         <source>Print Preview</source>
         <translation>Предварительный просмотр печати</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="132"/>
-        <source>Window</source>
-        <translation>Окно</translation>
-    </message>
-    <message>
         <location filename="../Graphics/SvgDiagram.py" line="136"/>
+        <source>Window</source>
+        <translation>Окно</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/SvgDiagram.py" line="140"/>
         <source>Graphics</source>
         <translation>Графика</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="363"/>
+        <location filename="../Graphics/SvgDiagram.py" line="385"/>
         <source>Diagram: {0}</source>
         <translation>Диаграмма: {0}</translation>
     </message>
@@ -71926,65 +71928,105 @@
         <translation>Введите описание задачи</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="60"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="71"/>
         <source>Creation Time:</source>
         <translation>Время создания:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="77"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="92"/>
         <source>&amp;Priority:</source>
         <translation>&amp;Приоритет:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="87"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="102"/>
         <source>Select the task priority</source>
         <translation>Задайте приоритет задачи</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="94"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="109"/>
         <source>High</source>
         <translation>Высокий</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="99"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="114"/>
         <source>Normal</source>
         <translation>Нормальный</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="104"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="119"/>
         <source>Low</source>
         <translation>Низкий</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="112"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="175"/>
         <source>Select to indicate a task related to the current project</source>
         <translation>Указать, что задача относится к текущему проекту</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="115"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="178"/>
         <source>Project &amp;Task</source>
         <translation>&amp;Задача проекта</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="128"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="162"/>
         <source>Select to mark this task as completed</source>
         <translation>Пометить задачу как завершённую</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="131"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="165"/>
         <source>T&amp;ask completed</source>
         <translation>З&amp;адача завершена</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="138"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="223"/>
         <source>Filename:</source>
         <translation>Имя файла:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="155"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="216"/>
         <source>Line:</source>
         <translation>Строка:</translation>
     </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="127"/>
+        <source>Type:</source>
+        <translation>Тип:</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="134"/>
+        <source>Select the task type</source>
+        <translation>Выберите тип задачи</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="41"/>
+        <source>Bugfix</source>
+        <translation>Исправление ошибок</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="42"/>
+        <source>Warning</source>
+        <translation>Предупреждение</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="43"/>
+        <source>ToDo</source>
+        <translation>ToDo</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="44"/>
+        <source>Note</source>
+        <translation>Примечание</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="45"/>
+        <source>Test</source>
+        <translation>Тест</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="46"/>
+        <source>Documentation</source>
+        <translation>Документация</translation>
+    </message>
 </context>
 <context>
     <name>TaskViewer</name>
@@ -72069,27 +72111,27 @@
         <translation>Настроить...</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>Activate task filter</source>
         <translation>Включить фильтр задач</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>The task filter doesn&apos;t have any active filters. Do you want to configure the filter settings?</source>
         <translation>Фильтр задач не содержит ни одного активного фильтра. Настроить фильтры?</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Extracting project tasks...</source>
         <translation>Извлечение задач проекта...</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Abort</source>
         <translation>Прервать</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="738"/>
+        <location filename="../Tasks/TaskViewer.py" line="755"/>
         <source>Extracting project tasks...
 {0}</source>
         <translation>Извлечение задач проекта...
@@ -72101,12 +72143,12 @@
         <translation>&amp;Настройка параметров сканирования</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Scan Filter Patterns</source>
         <translation>Шаблоны фильтров</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Enter filename patterns of files to be excluded separated by a comma:</source>
         <translation>Задайте маски файлов для исключения, разделённые запятой:</translation>
     </message>
@@ -72116,12 +72158,12 @@
         <translation>&amp;Задачи проекта</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>%v/%m Files</source>
         <translation>%v из %m файла(ов)</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="734"/>
+        <location filename="../Tasks/TaskViewer.py" line="751"/>
         <source>Tasks</source>
         <translation>Задачи</translation>
     </message>
@@ -72149,22 +72191,22 @@
 <context>
     <name>TasksFile</name>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>Save Tasks</source>
         <translation>Сохранить задачи</translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно записать файл задач &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>Read Tasks</source>
         <translation>Прочитать задачи</translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно причитать файл задач &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
@@ -72209,17 +72251,17 @@
     <message>
         <location filename="../Preferences/ConfigurationPages/TasksPage.ui" line="175"/>
         <source>Warning tasks:</source>
-        <translation>Предупреждения задач:</translation>
+        <translation>Предупреждение:</translation>
     </message>
     <message>
         <location filename="../Preferences/ConfigurationPages/TasksPage.ui" line="198"/>
         <source>Todo tasks:</source>
-        <translation>Задачи Todo:</translation>
+        <translation>Todo:</translation>
     </message>
     <message>
         <location filename="../Preferences/ConfigurationPages/TasksPage.ui" line="221"/>
         <source>Note tasks:</source>
-        <translation>Примечания задач:</translation>
+        <translation>Примечание:</translation>
     </message>
     <message>
         <location filename="../Preferences/ConfigurationPages/TasksPage.ui" line="133"/>
@@ -72234,12 +72276,12 @@
     <message>
         <location filename="../Preferences/ConfigurationPages/TasksPage.ui" line="244"/>
         <source>Test tasks:</source>
-        <translation>Тестовые задачи:</translation>
+        <translation>Тест:</translation>
     </message>
     <message>
         <location filename="../Preferences/ConfigurationPages/TasksPage.ui" line="267"/>
         <source>Documentation tasks:</source>
-        <translation>Задачи документации:</translation>
+        <translation>Документации:</translation>
     </message>
 </context>
 <context>
@@ -74575,213 +74617,238 @@
 <context>
     <name>UMLClassDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram {0}: {1}</source>
         <translation>Диаграмма классов {0}: {1}</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram: {0}</source>
         <translation>Диаграмма классов: {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="83"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="96"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; could not be found.</source>
         <translation>Модуль &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; не найден.</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="145"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="159"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
         <translation>Модуль &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; не содержит ни одного класса.</translation>
     </message>
+    <message>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="394"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Диаграмма принадлежит проекту &lt;b&gt;{0}&lt;/b&gt;. Пожалуйста, откройте его и попробуйте еще раз.&lt;/p&gt;</translation>
+    </message>
 </context>
 <context>
     <name>UMLDialog</name>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="82"/>
+        <location filename="../Graphics/UMLDialog.py" line="113"/>
         <source>Close</source>
         <translation>Закрыть</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="122"/>
+        <location filename="../Graphics/UMLDialog.py" line="153"/>
         <source>Window</source>
         <translation>Окно</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="87"/>
+        <location filename="../Graphics/UMLDialog.py" line="118"/>
         <source>Load</source>
         <translation>Загрузить</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="92"/>
+        <location filename="../Graphics/UMLDialog.py" line="123"/>
         <source>Save</source>
         <translation>Сохранить</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="97"/>
+        <location filename="../Graphics/UMLDialog.py" line="128"/>
         <source>Save As...</source>
         <translation>Сохранить как...</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="107"/>
+        <location filename="../Graphics/UMLDialog.py" line="138"/>
         <source>Print</source>
         <translation>Печать</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="112"/>
+        <location filename="../Graphics/UMLDialog.py" line="143"/>
         <source>Print Preview</source>
         <translation>Предварительный просмотр печати</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="126"/>
+        <location filename="../Graphics/UMLDialog.py" line="157"/>
         <source>File</source>
         <translation>Файл</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="178"/>
-        <source>Illegal diagram type &apos;{0}&apos; given.</source>
-        <translation>Запрещённый тип диаграммы &apos;{0}&apos;.</translation>
-    </message>
-    <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>Save Diagram</source>
         <translation>Сохранить диаграмму</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="230"/>
+        <location filename="../Graphics/UMLDialog.py" line="257"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Файл &lt;b&gt;{0}&lt;/b&gt; уже существует. Переписать?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно сохранить файл &lt;b&gt;{0}&lt;/b&gt;:&lt;br&gt;Причина: {1}.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="386"/>
+        <location filename="../Graphics/UMLDialog.py" line="551"/>
         <source>Load Diagram</source>
         <translation>Загрузить диаграмму</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="287"/>
+        <location filename="../Graphics/UMLDialog.py" line="518"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно прочитать файл &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Файл &lt;b&gt;{0}&lt;/b&gt; не содержит правильных данных.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;&lt;p&gt;Invalid line: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Файл &lt;b&gt;{0}&lt;/b&gt; не содержит правильных данных.&lt;/p&gt;&lt;p&gt;Неправильная строка: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="102"/>
+        <location filename="../Graphics/UMLDialog.py" line="133"/>
         <source>Save as Image</source>
         <translation>Сохранить как изображение</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="274"/>
-        <source>Eric Graphics File (*.e5g);;All Files (*)</source>
-        <translation>Файлы Eric Graphics (*.e5g);;Все файлы (*)</translation>
+        <location filename="../Graphics/UMLDialog.py" line="43"/>
+        <source>Class Diagram</source>
+        <translation>Диаграмма классов</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="45"/>
+        <source>Package Diagram</source>
+        <translation>Диаграмма пакетов</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="47"/>
+        <source>Imports Diagram</source>
+        <translation>Диаграмма импортов</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="49"/>
+        <source>Application Diagram</source>
+        <translation>Диаграмма приложения</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="105"/>
+        <source>Illegal Diagram Type</source>
+        <translation>Недопустимый тип диаграммы</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="289"/>
+        <source>Eric Graphics File (*.egj);;Eric Text Graphics File (*.e5g);;All Files (*)</source>
+        <translation>Файлы Eric Graphics (*.egj);;Файлы Eric Text Graphics (*.e5g);;Все файлы (*)</translation>
     </message>
 </context>
 <context>
     <name>UMLGraphicsView</name>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="83"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="85"/>
         <source>Delete shapes</source>
         <translation>Удалить фигуры</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="88"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="90"/>
         <source>Increase width by {0} points</source>
         <translation>Увеличить ширину на {0} точек</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="95"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="97"/>
         <source>Increase height by {0} points</source>
         <translation>Увеличить высоту на {0} точек</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="102"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="104"/>
         <source>Decrease width by {0} points</source>
         <translation>Уменьшить ширину на {0} точек</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="109"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="111"/>
         <source>Decrease height by {0} points</source>
         <translation>Уменьшить высоту на {0} точек</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="116"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="118"/>
         <source>Set size</source>
         <translation>Установить размер</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="126"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="128"/>
         <source>Re-Layout</source>
         <translation>Перекомпоновать</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="131"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="133"/>
         <source>Align Left</source>
         <translation>Выравнить слева</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="138"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="140"/>
         <source>Align Center Horizontal</source>
         <translation>Выравнить по горизонтали по центру</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="145"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="147"/>
         <source>Align Right</source>
         <translation>Выравнить справа</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="152"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="154"/>
         <source>Align Top</source>
         <translation>Выравнить сверху</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="159"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="161"/>
         <source>Align Center Vertical</source>
         <translation>Выравнить по вертикали по центру</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="166"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="168"/>
         <source>Align Bottom</source>
         <translation>Выравнить снизу</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="219"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="233"/>
         <source>Graphics</source>
         <translation>Графика</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>Save Diagram</source>
         <translation>Сохранить диаграмму</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="341"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="360"/>
         <source>Portable Network Graphics (*.png);;Scalable Vector Graphics (*.svg)</source>
         <translation>PNG файл (*.png);;SVG файл (*.svg)</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="356"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="375"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Файл &lt;b&gt;{0}&lt;/b&gt; уже существует. Переписать?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно сохранить файл: &lt;b&gt;{0}&lt;/b&gt;&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="121"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="123"/>
         <source>Re-Scan</source>
         <translation>Повторное сканирование</translation>
     </message>
@@ -74865,7 +74932,7 @@
 <context>
     <name>UnittestDialog</name>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>Unittest</source>
         <translation>Юниттест</translation>
     </message>
@@ -75037,27 +75104,27 @@
         <translation>Файлы Python (*.py);;Все файлы (*)</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="699"/>
         <source>Preparing Testsuite</source>
         <translation>Подготовка комплекта тестов</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="989"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="991"/>
         <source>Running</source>
         <translation>Выполнение</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1033"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1035"/>
         <source>Failure: {0}</source>
         <translation>Сбой: {0}</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1048"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1050"/>
         <source>Error: {0}</source>
         <translation>Ошибка: {0}</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1162"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1164"/>
         <source>Show Source</source>
         <translation>Показать источник</translation>
     </message>
@@ -75092,17 +75159,17 @@
         <translation>Количество тестов с неожиданным успехом</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1063"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1065"/>
         <source>    Skipped: {0}</source>
         <translation>    Пропущен: {0}</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1081"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1083"/>
         <source>    Expected Failure</source>
         <translation>    Ожидаемый сбой</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1098"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1100"/>
         <source>    Unexpected Success</source>
         <translation>    Неожидаемый успех</translation>
     </message>
@@ -75207,17 +75274,17 @@
         <translation>Результаты</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="707"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
         <source>Unittest with auto-discovery</source>
         <translation>Unittest с автообнаружением</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="791"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="787"/>
         <source>You must enter a start directory for auto-discovery.</source>
         <translation>Необходимо задать начальную директорию для автообнаружения.</translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="1013"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1015"/>
         <source>Ran %n test(s) in {0:.3f}s</source>
         <translation>
             <numerusform>Выполнен %n тест за {0:.3f} сек</numerusform>
@@ -75251,7 +75318,7 @@
         <translation>&lt;p&gt;Невозможно обнаружить тесты.&lt;/p&gt;&lt;p&gt;{0}&lt;/p&gt;</translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="623"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="619"/>
         <source>Discovered %n Test(s)</source>
         <translation>
             <numerusform>Обнаружен %n тест</numerusform>
@@ -75260,22 +75327,22 @@
         </translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="628"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="624"/>
         <source>&lt;p&gt;Unable to discover tests.&lt;/p&gt;&lt;p&gt;{0}&lt;br/&gt;{1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно обнаружить тесты.&lt;/p&gt;&lt;p&gt;{0}&lt;br/&gt;{1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="694"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="690"/>
         <source>You must select auto-discovery or enter a test suite file or a dotted test name.</source>
         <translation>Необходимо выбрать автообнаружение, или задать файл комплекта тестов, или предваренное точкой имя теста.</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="716"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="712"/>
         <source>&lt;Unnamed Test&gt;</source>
         <translation>&lt;Безымянный тест&gt;</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>&lt;p&gt;Unable to run test &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;{1}&lt;br/&gt;{2}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно выполнить тест &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;{1}&lt;br/&gt;{2}&lt;/p&gt;</translation>
     </message>
@@ -75305,7 +75372,7 @@
         <translation>Выполнять с отладчиком</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="724"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="720"/>
         <source>No test case has been selected. Shall all test cases be run?</source>
         <translation>Не был выбран тестовый случай. Должны ли быть выполнять все тестовые случаи?</translation>
     </message>
@@ -75314,6 +75381,11 @@
         <source>Python3 Files ({0});;All Files (*)</source>
         <translation>Файлы Python3 ({0});;Все файлы (*)</translation>
     </message>
+    <message>
+        <location filename="../PyUnit/UnittestDialog.py" line="881"/>
+        <source>No unittest were found. Aborting...</source>
+        <translation>Unittest не найден. Прерывание ...</translation>
+    </message>
 </context>
 <context>
     <name>UnknownDevicesDialog</name>
@@ -75553,2336 +75625,2336 @@
 <context>
     <name>UserInterface</name>
     <message>
-        <location filename="../UI/UserInterface.py" line="275"/>
+        <location filename="../UI/UserInterface.py" line="276"/>
         <source>Initializing Plugin Manager...</source>
         <translation>Инициализация менеджера плагинов...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="282"/>
+        <location filename="../UI/UserInterface.py" line="283"/>
         <source>Generating Main User Interface...</source>
         <translation>Создание главного пользовательского интерфейса...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="332"/>
+        <location filename="../UI/UserInterface.py" line="333"/>
         <source>Setting up connections...</source>
         <translation>Установка соединений...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="577"/>
+        <location filename="../UI/UserInterface.py" line="580"/>
         <source>Initializing Tools...</source>
         <translation>Инициализация инструментов...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="587"/>
+        <location filename="../UI/UserInterface.py" line="590"/>
         <source>Registering Objects...</source>
         <translation>Регистрация объектов...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="624"/>
+        <location filename="../UI/UserInterface.py" line="627"/>
         <source>Initializing Actions...</source>
         <translation>Инициализация действий...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="626"/>
+        <location filename="../UI/UserInterface.py" line="629"/>
         <source>Initializing Menus...</source>
         <translation>Инициализация меню...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="628"/>
+        <location filename="../UI/UserInterface.py" line="631"/>
         <source>Initializing Toolbars...</source>
         <translation>Инициализация панелей инструментов...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="630"/>
+        <location filename="../UI/UserInterface.py" line="633"/>
         <source>Initializing Statusbar...</source>
         <translation>Инициализация строки состояния...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="657"/>
+        <location filename="../UI/UserInterface.py" line="660"/>
         <source>Initializing Single Application Server...</source>
         <translation>Инициализация сервера уникального приложения...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="667"/>
+        <location filename="../UI/UserInterface.py" line="670"/>
         <source>Activating Plugins...</source>
         <translation>Активация плагинов...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="683"/>
+        <location filename="../UI/UserInterface.py" line="686"/>
         <source>Restoring Toolbarmanager...</source>
         <translation>Восстановление менеджера панелей инструментов...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Project-Viewer</source>
         <translation>Просмотр проекта</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Multiproject-Viewer</source>
         <translation>Просмотр мультипроекта</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Debug-Viewer</source>
         <translation>Просмотр отладки</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1124"/>
+        <location filename="../UI/UserInterface.py" line="1127"/>
         <source>Cooperation</source>
         <translation>Кооперация</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1180"/>
+        <location filename="../UI/UserInterface.py" line="1183"/>
         <source>Symbols</source>
         <translation>Символы</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Log-Viewer</source>
         <translation>Просмотр журналов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Task-Viewer</source>
         <translation>Просмотр задач</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Template-Viewer</source>
         <translation>Просмотр шаблонов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1189"/>
+        <location filename="../UI/UserInterface.py" line="1192"/>
         <source>Numbers</source>
         <translation>Числа</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>File-Browser</source>
         <translation>Браузер файлов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Shell</source>
         <translation>Оболочка</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>Horizontal Toolbox</source>
         <translation>Горизонтальная панель инструментов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1602"/>
+        <location filename="../UI/UserInterface.py" line="1605"/>
         <source>{0} - Passive Mode</source>
         <translation>{0} - пассивный режим</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1609"/>
+        <location filename="../UI/UserInterface.py" line="1612"/>
         <source>{0} - {1} - Passive Mode</source>
         <translation>{0} - {1} - пассивный режим</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1613"/>
+        <location filename="../UI/UserInterface.py" line="1616"/>
         <source>{0} - {1} - {2} - Passive Mode</source>
         <translation>{0} - {1} - {2} - пассивный режим</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Quit</source>
         <translation>Выход</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>&amp;Quit</source>
         <translation>&amp;Выход</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Ctrl+Q</source>
         <comment>File|Quit</comment>
         <translation>Ctrl+Q</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1642"/>
+        <location filename="../UI/UserInterface.py" line="1645"/>
         <source>Quit the IDE</source>
         <translation>Выход из IDE</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1643"/>
+        <location filename="../UI/UserInterface.py" line="1646"/>
         <source>&lt;b&gt;Quit the IDE&lt;/b&gt;&lt;p&gt;This quits the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Выход из IDE&lt;/b&gt;
 &lt;p&gt;Перед выходом все изменения могут быть сохранены. Отлаживаемая программа (если есть) будет остановлена, и предпочтения будут сохранены на диск.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1714"/>
+        <location filename="../UI/UserInterface.py" line="1717"/>
         <source>Edit Profile</source>
         <translation>Профиль редактирования</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1720"/>
+        <location filename="../UI/UserInterface.py" line="1723"/>
         <source>Activate the edit view profile</source>
         <translation>Активизировать профиль редактирования</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1722"/>
+        <location filename="../UI/UserInterface.py" line="1725"/>
         <source>&lt;b&gt;Edit Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Edit View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Профиль редактирования&lt;/b&gt;&lt;p&gt;Активизировать &quot;профиль редактирования&quot;. Окна, отображаемые в этом профиле, можно настроить в диалоге &quot;Конфигурация профилей&quot;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1731"/>
+        <location filename="../UI/UserInterface.py" line="1734"/>
         <source>Debug Profile</source>
         <translation>Профиль отладки</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1737"/>
+        <location filename="../UI/UserInterface.py" line="1740"/>
         <source>Activate the debug view profile</source>
         <translation>Активизировать профиль отладки</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1739"/>
+        <location filename="../UI/UserInterface.py" line="1742"/>
         <source>&lt;b&gt;Debug Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Debug View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Профиль отладки&lt;/b&gt;&lt;p&gt;Активизировать &quot;профиль отладки&quot;. Окна, отображаемые в этом профиле, можно настроить в диалоге &quot;Конфигурация профилей&quot;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>&amp;Project-Viewer</source>
         <translation>Просмотр &amp;проекта</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Alt+Shift+P</source>
         <translation>Alt+Shift+P</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>&amp;Multiproject-Viewer</source>
         <translation>Просмотр &amp;мультипроекта</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Alt+Shift+M</source>
         <translation>Alt+Shift+M</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>&amp;Debug-Viewer</source>
         <translation>Просмотр &amp;отладки</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Alt+Shift+D</source>
         <translation>Alt+Shift+D</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>&amp;Shell</source>
         <translation>&amp;Оболочка</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Alt+Shift+S</source>
         <translation>Alt+Shift+S</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>Alt+Shift+F</source>
         <translation>Alt+Shift+F</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Alt+Shift+G</source>
         <translation>Alt+Shift+G</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Alt+Shift+T</source>
         <translation>Alt+Shift+T</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Alt+Shift+A</source>
         <translation>Alt+Shift+A</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>&amp;Horizontal Toolbox</source>
         <translation>&amp;Горизонтальная панель инструментов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1919"/>
+        <location filename="../UI/UserInterface.py" line="1922"/>
         <source>Toggle the Horizontal Toolbox window</source>
         <translation>Включить/Выключить горизонтальную панель инструментов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1921"/>
+        <location filename="../UI/UserInterface.py" line="1924"/>
         <source>&lt;b&gt;Toggle the Horizontal Toolbox window&lt;/b&gt;&lt;p&gt;If the Horizontal Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Включить/Выключить горизонтальную панель инструментов&lt;/b&gt;&lt;p&gt;Включить/Выключить горизонтальную панель инструментов&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>Left Sidebar</source>
         <translation>Левая док-панель</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>&amp;Left Sidebar</source>
         <translation>&amp;Левая док-панель</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1933"/>
+        <location filename="../UI/UserInterface.py" line="1936"/>
         <source>Toggle the left sidebar window</source>
         <translation>Показать/Скрыть левую док-панель</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1934"/>
+        <location filename="../UI/UserInterface.py" line="1937"/>
         <source>&lt;b&gt;Toggle the left sidebar window&lt;/b&gt;&lt;p&gt;If the left sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Показать/Скрыть левую док-панель&lt;/b&gt;
 &lt;p&gt;Если левая док-панель скрыта, показать её. Иначе - закрыть.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>Bottom Sidebar</source>
         <translation>Нижняя док-панель</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>&amp;Bottom Sidebar</source>
         <translation>&amp;Нижняя док-панель</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1960"/>
+        <location filename="../UI/UserInterface.py" line="1963"/>
         <source>Toggle the bottom sidebar window</source>
         <translation>Показать/Скрыть нижнюю док-панель</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1962"/>
+        <location filename="../UI/UserInterface.py" line="1965"/>
         <source>&lt;b&gt;Toggle the bottom sidebar window&lt;/b&gt;&lt;p&gt;If the bottom sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Показать/Скрыть нижнюю док-панель&lt;/b&gt;
 &lt;p&gt;Если нижняя док-панель скрыта, показать её. Иначе - закрыть.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Alt+Shift+O</source>
         <translation>Alt+Shift+O</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Alt+Shift+Y</source>
         <translation>Alt+Shift+Y</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Alt+Shift+B</source>
         <translation>Alt+Shift+B</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>What&apos;s This?</source>
         <translation>Что это?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>&amp;What&apos;s This?</source>
         <translation>&amp;Что это?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>Shift+F1</source>
         <translation>Shift+F1</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2126"/>
+        <location filename="../UI/UserInterface.py" line="2129"/>
         <source>Context sensitive help</source>
         <translation>Контекстнозависимая справка</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2127"/>
+        <location filename="../UI/UserInterface.py" line="2130"/>
         <source>&lt;b&gt;Display context sensitive help&lt;/b&gt;&lt;p&gt;In What&apos;s This? mode, the mouse cursor shows an arrow with a question mark, and you can click on the interface elements to get a short description of what they do and how to use them. In dialogs, this feature can be accessed using the context help button in the titlebar.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Показ контекстнозависимой справки&lt;/b&gt;&lt;p&gt;В режиме &quot;What&apos;s This?&quot;(Что это?)курсор мыши отображается как стрелка со знаком вопроса, и вы можете, кликнув по элементу интерфейса, получить краткое описание того, что он делает и как его использовать. В диалоговом окне эта функция может быть вызвана кнопкой контекстной справки в панели заголовка.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>Helpviewer</source>
         <translation>Просмотр справки</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>&amp;Helpviewer...</source>
         <translation>Просмотр спр&amp;авки...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>F1</source>
         <translation>F1</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2144"/>
+        <location filename="../UI/UserInterface.py" line="2147"/>
         <source>Open the helpviewer window</source>
         <translation>Открыть окно просмотра справки</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show Versions</source>
         <translation>Показать версии</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show &amp;Versions</source>
         <translation>Показать &amp;версии</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2168"/>
+        <location filename="../UI/UserInterface.py" line="2171"/>
         <source>Display version information</source>
         <translation>Информация о версии</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2170"/>
+        <location filename="../UI/UserInterface.py" line="2173"/>
         <source>&lt;b&gt;Show Versions&lt;/b&gt;&lt;p&gt;Display version information.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Показать версии&lt;/b&gt;&lt;p&gt;Информация о версиях.&lt;/p&gt;</translation>
     </message>
     <message>
+        <location filename="../UI/UserInterface.py" line="2183"/>
+        <source>Check for Updates</source>
+        <translation>Проверить наличие обновлений</translation>
+    </message>
+    <message>
         <location filename="../UI/UserInterface.py" line="2180"/>
-        <source>Check for Updates</source>
-        <translation>Проверить наличие обновлений</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2177"/>
         <source>Check for &amp;Updates...</source>
         <translation>Наличие &amp;обновлений...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show downloadable versions</source>
         <translation>Показать версии, доступные для загрузки</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show &amp;downloadable versions...</source>
         <translation>Версии, доступные для &amp;загрузки...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2192"/>
+        <location filename="../UI/UserInterface.py" line="2195"/>
         <source>Show the versions available for download</source>
         <translation>Показать версии, доступные для загрузки</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Report Bug</source>
         <translation>Сообщение об ошибке</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2229"/>
+        <location filename="../UI/UserInterface.py" line="2232"/>
         <source>Report &amp;Bug...</source>
         <translation>Сообщить об &amp;ошибке...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2233"/>
+        <location filename="../UI/UserInterface.py" line="2236"/>
         <source>Report a bug</source>
         <translation>Сообщить об ошибке</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2234"/>
+        <location filename="../UI/UserInterface.py" line="2237"/>
         <source>&lt;b&gt;Report Bug...&lt;/b&gt;&lt;p&gt;Opens a dialog to report a bug.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Сообщить об ошибке...&lt;/b&gt;&lt;p&gt;Открытие диалога для сообщения об ошибке.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request Feature</source>
         <translation>Запросить функционал</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request &amp;Feature...</source>
         <translation>Запросить &amp;функционал...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2245"/>
+        <location filename="../UI/UserInterface.py" line="2248"/>
         <source>Send a feature request</source>
         <translation>Послать запрос</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2247"/>
+        <location filename="../UI/UserInterface.py" line="2250"/>
         <source>&lt;b&gt;Request Feature...&lt;/b&gt;&lt;p&gt;Opens a dialog to send a feature request.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Послать запрос...&lt;/b&gt;&lt;p&gt;Отображение диалога создания запроса.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3365"/>
+        <location filename="../UI/UserInterface.py" line="3368"/>
         <source>Unittest</source>
         <translation>Юниттест</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2256"/>
+        <location filename="../UI/UserInterface.py" line="2259"/>
         <source>&amp;Unittest...</source>
         <translation>&amp;Юниттест...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2261"/>
+        <location filename="../UI/UserInterface.py" line="2264"/>
         <source>Start unittest dialog</source>
         <translation>Открыть диалог юниттеста</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2262"/>
+        <location filename="../UI/UserInterface.py" line="2265"/>
         <source>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Perform unit tests. The dialog gives you the ability to select and run a unittest suite.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Юниттест&lt;/b&gt;
 &lt;p&gt;Выполнение тестов. Диалог даёт возможность выбрать и выполнить комплект юниттестов.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
+        <location filename="../UI/UserInterface.py" line="2273"/>
         <source>Unittest Restart</source>
         <translation>Перезапуск юниттеста</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
+        <location filename="../UI/UserInterface.py" line="2273"/>
         <source>&amp;Restart Unittest...</source>
         <translation>&amp;Перезапустить юниттест...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2275"/>
+        <location filename="../UI/UserInterface.py" line="2278"/>
         <source>Restart last unittest</source>
         <translation>Перезапустить последний юниттест</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2276"/>
+        <location filename="../UI/UserInterface.py" line="2279"/>
         <source>&lt;b&gt;Restart Unittest&lt;/b&gt;&lt;p&gt;Restart the unittest performed last.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Перезапустить юниттест&lt;/b&gt;
 &lt;p&gt;Перезапустить последний выполненный юниттест.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
+        <location filename="../UI/UserInterface.py" line="2303"/>
         <source>Unittest Script</source>
         <translation>Юниттест на сценарии</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
+        <location filename="../UI/UserInterface.py" line="2303"/>
         <source>Unittest &amp;Script...</source>
         <translation>Юниттест на &amp;сценарии...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2305"/>
+        <location filename="../UI/UserInterface.py" line="2308"/>
         <source>Run unittest with current script</source>
         <translation>Выполнить юниттест на текущем сценарии</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2307"/>
+        <location filename="../UI/UserInterface.py" line="2310"/>
         <source>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Run unittest with current script.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Юниттест на сценарии&lt;/b&gt;&lt;p&gt;Выполнить юниттест на с текущем сценарии.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
+        <location filename="../UI/UserInterface.py" line="2318"/>
         <source>Unittest Project</source>
         <translation>Юниттест на проекте</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
+        <location filename="../UI/UserInterface.py" line="2318"/>
         <source>Unittest &amp;Project...</source>
         <translation>Юниттест на &amp;проекте...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2320"/>
+        <location filename="../UI/UserInterface.py" line="2323"/>
         <source>Run unittest with current project</source>
         <translation>Выполнить юниттест на текущем проекте</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2322"/>
+        <location filename="../UI/UserInterface.py" line="2325"/>
         <source>&lt;b&gt;Unittest Project&lt;/b&gt;&lt;p&gt;Run unittest with current project.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Юниттест на проекте&lt;/b&gt;&lt;p&gt;Выполнить юниттест на текущем проекте.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
+        <location filename="../UI/UserInterface.py" line="2386"/>
         <source>UI Previewer</source>
         <translation>Предпросмотр UI</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
+        <location filename="../UI/UserInterface.py" line="2386"/>
         <source>&amp;UI Previewer...</source>
         <translation>Предпросмотр &amp;UI...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2388"/>
+        <location filename="../UI/UserInterface.py" line="2391"/>
         <source>Start the UI Previewer</source>
         <translation>Запуск предпросмотра UI (пользовательского интерфейса)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2389"/>
+        <location filename="../UI/UserInterface.py" line="2392"/>
         <source>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Start the UI Previewer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Запустить the UI Previewer.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
+        <location filename="../UI/UserInterface.py" line="2399"/>
         <source>Translations Previewer</source>
         <translation>Предпросмотр переводов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
+        <location filename="../UI/UserInterface.py" line="2399"/>
         <source>&amp;Translations Previewer...</source>
         <translation>&amp;Предпросмотр переводов...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2401"/>
+        <location filename="../UI/UserInterface.py" line="2404"/>
         <source>Start the Translations Previewer</source>
         <translation>Запустить предпросмотр переводов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2403"/>
+        <location filename="../UI/UserInterface.py" line="2406"/>
         <source>&lt;b&gt;Translations Previewer&lt;/b&gt;&lt;p&gt;Start the Translations Previewer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Предпросмотр переводов&lt;/b&gt;&lt;p&gt;Запустить предпросмотр переводов.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
+        <location filename="../UI/UserInterface.py" line="2413"/>
         <source>Compare Files</source>
         <translation>Сравнить файлы</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
+        <location filename="../UI/UserInterface.py" line="2413"/>
         <source>&amp;Compare Files...</source>
         <translation>&amp;Сравнить файлы...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2428"/>
+        <location filename="../UI/UserInterface.py" line="2431"/>
         <source>Compare two files</source>
         <translation>Сравнить два файла</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2416"/>
+        <location filename="../UI/UserInterface.py" line="2419"/>
         <source>&lt;b&gt;Compare Files&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Сравнение файлов&lt;/b&gt;
 &lt;p&gt;Открытие диалога сравнения двух файлов.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
+        <location filename="../UI/UserInterface.py" line="2426"/>
         <source>Compare Files side by side</source>
         <translation>Сравнение файлов построчно</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2429"/>
+        <location filename="../UI/UserInterface.py" line="2432"/>
         <source>&lt;b&gt;Compare Files side by side&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files and show the result side by side.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Сравнить файлы построчно (side by side)&lt;/b&gt;
 &lt;p&gt;Открыть диалог, в котором показаны различия между файлами, в две колонки.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
+        <location filename="../UI/UserInterface.py" line="2440"/>
         <source>SQL Browser</source>
         <translation>SQL браузер</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
+        <location filename="../UI/UserInterface.py" line="2440"/>
         <source>SQL &amp;Browser...</source>
         <translation>&amp;SQL браузер...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2442"/>
+        <location filename="../UI/UserInterface.py" line="2445"/>
         <source>Browse a SQL database</source>
         <translation>Просмотреть SQL базу данных</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2443"/>
+        <location filename="../UI/UserInterface.py" line="2446"/>
         <source>&lt;b&gt;SQL Browser&lt;/b&gt;&lt;p&gt;Browse a SQL database.&lt;/p&gt;</source>
         <translation>&lt;b&gt;SQL браузер&lt;/b&gt;&lt;p&gt;Просмотреть SQL базу данных.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2455"/>
+        <location filename="../UI/UserInterface.py" line="2458"/>
         <source>Mini Editor</source>
         <translation>Миниредактор</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2450"/>
+        <location filename="../UI/UserInterface.py" line="2453"/>
         <source>Mini &amp;Editor...</source>
         <translation>Мини&amp;редактор...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2456"/>
+        <location filename="../UI/UserInterface.py" line="2459"/>
         <source>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Open a dialog with a simplified editor.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Миниредактор&lt;/b&gt;&lt;p&gt;Открывает диалог в упрощённым редакторе.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
+        <location filename="../UI/UserInterface.py" line="2495"/>
         <source>Icon Editor</source>
         <translation>Редактор иконок</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
+        <location filename="../UI/UserInterface.py" line="2495"/>
         <source>&amp;Icon Editor...</source>
         <translation>Редактор &amp;иконок...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
+        <location filename="../UI/UserInterface.py" line="2524"/>
         <source>Preferences</source>
         <translation>Предпочтения</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
+        <location filename="../UI/UserInterface.py" line="2524"/>
         <source>&amp;Preferences...</source>
         <translation>&amp;Предпочтения...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2526"/>
+        <location filename="../UI/UserInterface.py" line="2529"/>
         <source>Set the prefered configuration</source>
         <translation>Установите предпочтительную конфигурацию</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2528"/>
+        <location filename="../UI/UserInterface.py" line="2531"/>
         <source>&lt;b&gt;Preferences&lt;/b&gt;&lt;p&gt;Set the configuration items of the application with your prefered values.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Предпочтения&lt;/b&gt;
 &lt;p&gt;Установка элементов конфигурации приложения согласно вашим предпочтениям.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
+        <location filename="../UI/UserInterface.py" line="2540"/>
         <source>Export Preferences</source>
         <translation>Экспорт предпочтений</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
+        <location filename="../UI/UserInterface.py" line="2540"/>
         <source>E&amp;xport Preferences...</source>
         <translation>&amp;Экспорт предпочтений...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2542"/>
+        <location filename="../UI/UserInterface.py" line="2545"/>
         <source>Export the current configuration</source>
         <translation>Экспорт текущих настроек</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2544"/>
+        <location filename="../UI/UserInterface.py" line="2547"/>
         <source>&lt;b&gt;Export Preferences&lt;/b&gt;&lt;p&gt;Export the current configuration to a file.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Экспорт предпочтений&lt;/b&gt;&lt;p&gt;Экспорт текущих предпочтений в файл.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
+        <location filename="../UI/UserInterface.py" line="2554"/>
         <source>Import Preferences</source>
         <translation>Импорт предпочтений</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
+        <location filename="../UI/UserInterface.py" line="2554"/>
         <source>I&amp;mport Preferences...</source>
         <translation>&amp;Импорт предпочтений...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2556"/>
+        <location filename="../UI/UserInterface.py" line="2559"/>
         <source>Import a previously exported configuration</source>
         <translation>Импорт сохранённых ранее настроек</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2558"/>
+        <location filename="../UI/UserInterface.py" line="2561"/>
         <source>&lt;b&gt;Import Preferences&lt;/b&gt;&lt;p&gt;Import a previously exported configuration.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Импорт предпочтений&lt;/b&gt;&lt;p&gt;Импорт сохранённой ранее конфигурации.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
+        <location filename="../UI/UserInterface.py" line="2568"/>
         <source>Reload APIs</source>
         <translation>Перезагрузить API</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
+        <location filename="../UI/UserInterface.py" line="2568"/>
         <source>Reload &amp;APIs</source>
         <translation>Перезагрузить &amp;API</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2569"/>
+        <location filename="../UI/UserInterface.py" line="2572"/>
         <source>Reload the API information</source>
         <translation>Перезагрузить информацию об API</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2571"/>
+        <location filename="../UI/UserInterface.py" line="2574"/>
         <source>&lt;b&gt;Reload APIs&lt;/b&gt;&lt;p&gt;Reload the API information.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Перезагрузить API&lt;/b&gt;&lt;p&gt;Перезагрузить информацию об API.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2583"/>
+        <location filename="../UI/UserInterface.py" line="2586"/>
         <source>Show external tools</source>
         <translation>Показать внешние инструменты</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2578"/>
+        <location filename="../UI/UserInterface.py" line="2581"/>
         <source>Show external &amp;tools</source>
         <translation>&amp;Внешние инструменты</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
+        <location filename="../UI/UserInterface.py" line="2597"/>
         <source>View Profiles</source>
         <translation>Профили</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
+        <location filename="../UI/UserInterface.py" line="2597"/>
         <source>&amp;View Profiles...</source>
         <translation>&amp;Профили...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2599"/>
+        <location filename="../UI/UserInterface.py" line="2602"/>
         <source>Configure view profiles</source>
         <translation>Конфигурация профилей</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2601"/>
+        <location filename="../UI/UserInterface.py" line="2604"/>
         <source>&lt;b&gt;View Profiles&lt;/b&gt;&lt;p&gt;Configure the view profiles. With this dialog you may set the visibility of the various windows for the predetermined view profiles.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Профили&lt;/b&gt;&lt;p&gt;Конфигурация профилей. С помощью этого диалога вы можете устанавливать видимость разных окон для заданных профилей.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
+        <location filename="../UI/UserInterface.py" line="2614"/>
         <source>Toolbars</source>
         <translation>Панели инструментов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
+        <location filename="../UI/UserInterface.py" line="2614"/>
         <source>Tool&amp;bars...</source>
         <translation>Панели &amp;инструментов...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2616"/>
+        <location filename="../UI/UserInterface.py" line="2619"/>
         <source>Configure toolbars</source>
         <translation>Настройка панелей инструментов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2617"/>
+        <location filename="../UI/UserInterface.py" line="2620"/>
         <source>&lt;b&gt;Toolbars&lt;/b&gt;&lt;p&gt;Configure the toolbars. With this dialog you may change the actions shown on the various toolbars and define your own toolbars.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Панели инструментов&lt;/b&gt;&lt;p&gt;Настроить панели инструментов. В этом диалоге Вы можете изменить имеющиеся панели инструментов, а так же создать новые.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
+        <location filename="../UI/UserInterface.py" line="2629"/>
         <source>Keyboard Shortcuts</source>
         <translation>Горячие клавиши</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
+        <location filename="../UI/UserInterface.py" line="2629"/>
         <source>Keyboard &amp;Shortcuts...</source>
         <translation>Горячие &amp;клавиши...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2631"/>
+        <location filename="../UI/UserInterface.py" line="2634"/>
         <source>Set the keyboard shortcuts</source>
         <translation>Определение горячих клавиш</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2633"/>
+        <location filename="../UI/UserInterface.py" line="2636"/>
         <source>&lt;b&gt;Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Set the keyboard shortcuts of the application with your prefered values.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Горячие клавиши&lt;/b&gt;&lt;p&gt;Определите горячие клавиши приложения согласно вашим предпочтениям.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>Export Keyboard Shortcuts</source>
         <translation>Экспорт горячих клавиш</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2641"/>
+        <location filename="../UI/UserInterface.py" line="2644"/>
         <source>&amp;Export Keyboard Shortcuts...</source>
         <translation>&amp;Экспорт горячих клавиш...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2646"/>
+        <location filename="../UI/UserInterface.py" line="2649"/>
         <source>Export the keyboard shortcuts</source>
         <translation>Экспортировать горячие клавиши</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2648"/>
+        <location filename="../UI/UserInterface.py" line="2651"/>
         <source>&lt;b&gt;Export Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Export the keyboard shortcuts of the application.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Экспорт горячих клавиш&lt;/b&gt;
 &lt;p&gt;Экспортировать горячие клавиши приложения.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Import Keyboard Shortcuts</source>
         <translation>Импорт горячих клавиш</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2655"/>
+        <location filename="../UI/UserInterface.py" line="2658"/>
         <source>&amp;Import Keyboard Shortcuts...</source>
         <translation>&amp;Импорт горячих клавиш...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2660"/>
+        <location filename="../UI/UserInterface.py" line="2663"/>
         <source>Import the keyboard shortcuts</source>
         <translation>Импортировать горячие клавиши</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2662"/>
+        <location filename="../UI/UserInterface.py" line="2665"/>
         <source>&lt;b&gt;Import Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Import the keyboard shortcuts of the application.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Импорт горячих клавиш&lt;/b&gt;
 &lt;p&gt;Импортировать горячие клавиши приложения.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
+        <location filename="../UI/UserInterface.py" line="2723"/>
         <source>Activate current editor</source>
         <translation>Активировать текущий редактор</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
+        <location filename="../UI/UserInterface.py" line="2723"/>
         <source>Alt+Shift+E</source>
         <translation>Alt+Shift+E</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
+        <location filename="../UI/UserInterface.py" line="2733"/>
         <source>Show next</source>
         <translation>Показать следующую</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
+        <location filename="../UI/UserInterface.py" line="2733"/>
         <source>Ctrl+Alt+Tab</source>
         <translation>Ctrl+Alt+Tab</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
+        <location filename="../UI/UserInterface.py" line="2742"/>
         <source>Show previous</source>
         <translation>Показать предыдущую</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
+        <location filename="../UI/UserInterface.py" line="2742"/>
         <source>Shift+Ctrl+Alt+Tab</source>
         <translation>Shift+Ctrl+Alt+Tab</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
+        <location filename="../UI/UserInterface.py" line="2751"/>
         <source>Switch between tabs</source>
         <translation>Переключение между вкладками</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
+        <location filename="../UI/UserInterface.py" line="2751"/>
         <source>Ctrl+1</source>
         <translation>Ctrl+1</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
+        <location filename="../UI/UserInterface.py" line="2760"/>
         <source>Plugin Infos</source>
         <translation>Информация о плагинах</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
+        <location filename="../UI/UserInterface.py" line="2760"/>
         <source>&amp;Plugin Infos...</source>
         <translation>Ин&amp;формация о плагинах...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2761"/>
+        <location filename="../UI/UserInterface.py" line="2764"/>
         <source>Show Plugin Infos</source>
         <translation>Отображение информации о плагинах</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2762"/>
+        <location filename="../UI/UserInterface.py" line="2765"/>
         <source>&lt;b&gt;Plugin Infos...&lt;/b&gt;&lt;p&gt;This opens a dialog, that show some information about loaded plugins.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Информация о плагинах...&lt;/b&gt;
 &lt;p&gt;Открытие диалога, отображающего информацию о загруженных плагинах.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2775"/>
+        <location filename="../UI/UserInterface.py" line="2778"/>
         <source>Install Plugins</source>
         <translation>Установить плагины</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2770"/>
+        <location filename="../UI/UserInterface.py" line="2773"/>
         <source>&amp;Install Plugins...</source>
         <translation>&amp;Установить плагины...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2776"/>
+        <location filename="../UI/UserInterface.py" line="2779"/>
         <source>&lt;b&gt;Install Plugins...&lt;/b&gt;&lt;p&gt;This opens a dialog to install or update plugins.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Установить плагины...&lt;/b&gt;&lt;p&gt;Открытие диалога установки или обновления плагинов.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2788"/>
+        <location filename="../UI/UserInterface.py" line="2791"/>
         <source>Uninstall Plugin</source>
         <translation>Удалить плагин</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2783"/>
+        <location filename="../UI/UserInterface.py" line="2786"/>
         <source>&amp;Uninstall Plugin...</source>
         <translation>Уда&amp;лить плагин...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2789"/>
+        <location filename="../UI/UserInterface.py" line="2792"/>
         <source>&lt;b&gt;Uninstall Plugin...&lt;/b&gt;&lt;p&gt;This opens a dialog to uninstall a plugin.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Деинсталлировать плагин...&lt;/b&gt;&lt;p&gt;Открытие диалога деинсталляции плагина.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
+        <location filename="../UI/UserInterface.py" line="2799"/>
         <source>Plugin Repository</source>
         <translation>Репозиторий плагинов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
+        <location filename="../UI/UserInterface.py" line="2799"/>
         <source>Plugin &amp;Repository...</source>
         <translation>&amp;Репозиторий плагинов...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2801"/>
+        <location filename="../UI/UserInterface.py" line="2804"/>
         <source>Show Plugins available for download</source>
         <translation>Показать плагины, доступные для загрузки</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2803"/>
+        <location filename="../UI/UserInterface.py" line="2806"/>
         <source>&lt;b&gt;Plugin Repository...&lt;/b&gt;&lt;p&gt;This opens a dialog, that shows a list of plugins available on the Internet.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Репозиторий плагинов...&lt;/b&gt;&lt;p&gt;Открытие диалога, отображающего список плагинов, доступных для скачивания с интернета.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2953"/>
+        <location filename="../UI/UserInterface.py" line="2956"/>
         <source>Eric API Documentation</source>
         <translation>Документация API Eric</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2957"/>
+        <location filename="../UI/UserInterface.py" line="2960"/>
         <source>Open Eric API Documentation</source>
         <translation>Открыть документацию API Eric</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3158"/>
+        <location filename="../UI/UserInterface.py" line="3161"/>
         <source>&amp;Unittest</source>
         <translation>&amp;Юниттест</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3102"/>
+        <location filename="../UI/UserInterface.py" line="3105"/>
         <source>E&amp;xtras</source>
         <translation>&amp;Дополнительно</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3112"/>
+        <location filename="../UI/UserInterface.py" line="3115"/>
         <source>Wi&amp;zards</source>
         <translation>&amp;Мастера</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3175"/>
+        <location filename="../UI/UserInterface.py" line="3178"/>
         <source>Select Tool Group</source>
         <translation>Выберите группу инструментов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3186"/>
+        <location filename="../UI/UserInterface.py" line="3189"/>
         <source>Se&amp;ttings</source>
         <translation>&amp;Настройки</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3216"/>
+        <location filename="../UI/UserInterface.py" line="3219"/>
         <source>&amp;Window</source>
         <translation>&amp;Окна</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3277"/>
+        <location filename="../UI/UserInterface.py" line="3280"/>
         <source>&amp;Toolbars</source>
         <translation>&amp;Панели инструментов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3139"/>
+        <location filename="../UI/UserInterface.py" line="3142"/>
         <source>P&amp;lugins</source>
         <translation>Пла&amp;гины</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3148"/>
+        <location filename="../UI/UserInterface.py" line="3151"/>
         <source>Configure...</source>
         <translation>Настроить...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3291"/>
+        <location filename="../UI/UserInterface.py" line="3294"/>
         <source>&amp;Help</source>
         <translation>&amp;Справка</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3364"/>
+        <location filename="../UI/UserInterface.py" line="3367"/>
         <source>Tools</source>
         <translation>Инструменты</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3366"/>
-        <source>Settings</source>
-        <translation>Настройки</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
-        <source>Help</source>
-        <translation>Справка</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3368"/>
-        <source>Profiles</source>
-        <translation>Профили</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="3369"/>
+        <source>Settings</source>
+        <translation>Настройки</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5216"/>
+        <source>Help</source>
+        <translation>Справка</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3371"/>
+        <source>Profiles</source>
+        <translation>Профили</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3372"/>
         <source>Plugins</source>
         <translation>Плагины</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3534"/>
+        <location filename="../UI/UserInterface.py" line="3537"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors language.&lt;/p&gt;</source>
         <translation>&lt;p&gt;В этой части строки состояния отображается язык текущего окна редактора.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3541"/>
+        <location filename="../UI/UserInterface.py" line="3544"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors encoding.&lt;/p&gt;</source>
         <translation>&lt;p&gt;В этой части строки состояния отображается текущая кодировка редактора.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3548"/>
+        <location filename="../UI/UserInterface.py" line="3551"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors eol setting.&lt;/p&gt;</source>
         <translation>&lt;p&gt;В этой части строки состояния отображается режим конца строки текущего редактора.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3555"/>
+        <location filename="../UI/UserInterface.py" line="3558"/>
         <source>&lt;p&gt;This part of the status bar displays an indication of the current editors files writability.&lt;/p&gt;</source>
         <translation>&lt;p&gt;В этой части строки состояния отображается режим ro/rw файла, открытого в редакторе.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3562"/>
+        <location filename="../UI/UserInterface.py" line="3565"/>
         <source>&lt;p&gt;This part of the status bar displays the line number of the current editor.&lt;/p&gt;</source>
         <translation>&lt;p&gt;В этой части строки состояния отображается номер текущей строки редактора.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3569"/>
+        <location filename="../UI/UserInterface.py" line="3572"/>
         <source>&lt;p&gt;This part of the status bar displays the cursor position of the current editor.&lt;/p&gt;</source>
         <translation>&lt;p&gt;В этой части строки состояния отображается текущая позиция курсора в редакторе.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3640"/>
+        <location filename="../UI/UserInterface.py" line="3643"/>
         <source>External Tools/{0}</source>
         <translation>Внешние инструменты/{0}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7268"/>
+        <location filename="../UI/UserInterface.py" line="7295"/>
         <source>&lt;/table&gt;</source>
         <translation>&lt;/table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Email address or mail server address is empty. Please configure your Email settings in the Preferences Dialog.</source>
         <translation>Почтовый адрес или адрес почтового сервера пуст. &lt;p&gt;Настройте параметры вашей электронной почты в диалоге предпочтений.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>Restart application</source>
         <translation>Перезапустить приложение</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>The application needs to be restarted. Do it now?</source>
         <translation>Необходимо перезапустить приложение. Сделать это сейчас?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4207"/>
+        <location filename="../UI/UserInterface.py" line="4210"/>
         <source>Configure Tool Groups ...</source>
         <translation>Настройка группы инструментов...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4211"/>
+        <location filename="../UI/UserInterface.py" line="4214"/>
         <source>Configure current Tool Group ...</source>
         <translation>Настроить текущую группу инструментов...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4162"/>
+        <location filename="../UI/UserInterface.py" line="4165"/>
         <source>&amp;Builtin Tools</source>
         <translation>&amp;Встроенные инструменты</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4179"/>
+        <location filename="../UI/UserInterface.py" line="4182"/>
         <source>&amp;Plugin Tools</source>
         <translation>Инструменты - &amp;плагины</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4326"/>
+        <location filename="../UI/UserInterface.py" line="4329"/>
         <source>&amp;Show all</source>
         <translation>Показать &amp;всё</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4328"/>
+        <location filename="../UI/UserInterface.py" line="4331"/>
         <source>&amp;Hide all</source>
         <translation>Ск&amp;рыть всё</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>Problem</source>
         <translation>Проблема</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not exist or is zero length.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Файл &lt;b&gt;{0}&lt;/b&gt; либо не существует, либо нулевой длины.&lt;/p&gt;</translation>
     </message>
     <message>
+        <location filename="../UI/UserInterface.py" line="5552"/>
+        <source>Process Generation Error</source>
+        <translation>Ошибка при запуске процесса</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5069"/>
+        <source>&lt;p&gt;Could not start Qt-Designer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Невозможно запустить Qt-Designer.&lt;br&gt;Убедитесь, что он доступен в &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5139"/>
+        <source>&lt;p&gt;Could not start Qt-Linguist.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Невозможно запустить Qt-Linguist.&lt;br&gt;Убедитесь, что он доступен в &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5183"/>
+        <source>&lt;p&gt;Could not start Qt-Assistant.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Невозможно запустить Qt-Assistant.&lt;br&gt;Убедитесь, что он доступен в &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5216"/>
+        <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source>
+        <translation>В настоящее время просмотрщик пользователя не выбран. Используйте диалог предпочтений для его выбора.</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5230"/>
+        <source>&lt;p&gt;Could not start custom viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Невозможно запустить пользовательский просмотрщик.&lt;br&gt;Убедитесь, что он находится в &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5250"/>
+        <source>&lt;p&gt;Could not start the help viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Невозможно запустить просмотрщик справки.&lt;br&gt;Убедитесь, что он доступен под именем &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5300"/>
+        <source>&lt;p&gt;Could not start UI Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Невозможно запустить UI Previewer (предпросмотр интерфейсов).&lt;br&gt;Убедитесь, что он находится в &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5357"/>
+        <source>&lt;p&gt;Could not start Translation Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Невозможно запустить Translation Previewer (предпросмотр переводов).&lt;br&gt;Убедитесь, что он находится в &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5380"/>
+        <source>&lt;p&gt;Could not start SQL Browser.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation>&lt;p&gt;Невозможно запустить SQL браузер.&lt;br&gt;Убедитесь, что он доступен как &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5497"/>
+        <source>External Tools</source>
+        <translation>Внешние инструменты</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5488"/>
+        <source>No tool entry found for external tool &apos;{0}&apos; in tool group &apos;{1}&apos;.</source>
+        <translation>Запись для внешнего инструмента &apos;{0}&apos; не найдена в группе инструментов &apos;{1}&apos;.</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5497"/>
+        <source>No toolgroup entry &apos;{0}&apos; found.</source>
+        <translation>Запись для группы инструментов &apos;{0}&apos; не найдена.</translation>
+    </message>
+    <message>
         <location filename="../UI/UserInterface.py" line="5536"/>
-        <source>Process Generation Error</source>
-        <translation>Ошибка при запуске процесса</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5066"/>
-        <source>&lt;p&gt;Could not start Qt-Designer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Невозможно запустить Qt-Designer.&lt;br&gt;Убедитесь, что он доступен в &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5136"/>
-        <source>&lt;p&gt;Could not start Qt-Linguist.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Невозможно запустить Qt-Linguist.&lt;br&gt;Убедитесь, что он доступен в &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5180"/>
-        <source>&lt;p&gt;Could not start Qt-Assistant.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Невозможно запустить Qt-Assistant.&lt;br&gt;Убедитесь, что он доступен в &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
-        <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source>
-        <translation>В настоящее время просмотрщик пользователя не выбран. Используйте диалог предпочтений для его выбора.</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5227"/>
-        <source>&lt;p&gt;Could not start custom viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Невозможно запустить пользовательский просмотрщик.&lt;br&gt;Убедитесь, что он находится в &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5247"/>
-        <source>&lt;p&gt;Could not start the help viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Невозможно запустить просмотрщик справки.&lt;br&gt;Убедитесь, что он доступен под именем &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5297"/>
-        <source>&lt;p&gt;Could not start UI Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Невозможно запустить UI Previewer (предпросмотр интерфейсов).&lt;br&gt;Убедитесь, что он находится в &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5354"/>
-        <source>&lt;p&gt;Could not start Translation Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Невозможно запустить Translation Previewer (предпросмотр переводов).&lt;br&gt;Убедитесь, что он находится в &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5377"/>
-        <source>&lt;p&gt;Could not start SQL Browser.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;Невозможно запустить SQL браузер.&lt;br&gt;Убедитесь, что он доступен как &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
-        <source>External Tools</source>
-        <translation>Внешние инструменты</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5472"/>
-        <source>No tool entry found for external tool &apos;{0}&apos; in tool group &apos;{1}&apos;.</source>
-        <translation>Запись для внешнего инструмента &apos;{0}&apos; не найдена в группе инструментов &apos;{1}&apos;.</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
-        <source>No toolgroup entry &apos;{0}&apos; found.</source>
-        <translation>Запись для группы инструментов &apos;{0}&apos; не найдена.</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5520"/>
         <source>Starting process &apos;{0} {1}&apos;.
 </source>
         <translation>Запускается процесс &apos;{0} {1}&apos;.
 </translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5536"/>
+        <location filename="../UI/UserInterface.py" line="5552"/>
         <source>&lt;p&gt;Could not start the tool entry &lt;b&gt;{0}&lt;/b&gt;.&lt;br&gt;Ensure that it is available as &lt;b&gt;{1}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно запустить инструмент &lt;b&gt;{0}&lt;/b&gt;.&lt;br&gt;Убедитесь, что он доступен в &lt;b&gt;{1}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5614"/>
+        <location filename="../UI/UserInterface.py" line="5630"/>
         <source>Process &apos;{0}&apos; has exited.
 </source>
         <translation>Процесс &apos;{0}&apos; завершен.
 </translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>Documentation Missing</source>
         <translation>Документация отсутствует</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>&lt;p&gt;The documentation starting point &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; could not be found.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Стартовый каталог документации &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; не найден.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>Documentation</source>
         <translation>Документация</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно прочитать файл задач: &lt;b&gt;{0}&lt;/b&gt;&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1673"/>
+        <location filename="../UI/UserInterface.py" line="1676"/>
         <source>Save session</source>
         <translation>Сохранить сессию</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6550"/>
+        <location filename="../UI/UserInterface.py" line="6566"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно записать файл сессии &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>Read session</source>
         <translation>Загрузить сессию</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно прочитать файл сессии &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>Drop Error</source>
         <translation>Ошибка Drag&amp;&amp;Drop</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; is not a file.&lt;/p&gt;</source>
         <translation>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; не является файлом&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>&amp;Cancel</source>
         <translation>От&amp;мена</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7059"/>
+        <location filename="../UI/UserInterface.py" line="7086"/>
         <source>Trying host {0}</source>
         <translation>Подключение к хосту {0}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>Update available</source>
         <translation>Обновления доступны</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Error during updates check</source>
         <translation>Ошибка при проверке обновлений</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Could not perform updates check.</source>
         <translation>Невозможно запустить проверку обновлений.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7253"/>
+        <location filename="../UI/UserInterface.py" line="7280"/>
         <source>&lt;h3&gt;Available versions&lt;/h3&gt;&lt;table&gt;</source>
         <translation>&lt;h3&gt;Доступные версии&lt;/h3&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>First time usage</source>
         <translation>Первое использование</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2931"/>
+        <location filename="../UI/UserInterface.py" line="2934"/>
         <source>Python 3 Documentation</source>
         <translation>Документация Python 3</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2935"/>
+        <location filename="../UI/UserInterface.py" line="2938"/>
         <source>Open Python 3 Documentation</source>
         <translation>Открыть документацию Python 3</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>Error getting versions information</source>
         <translation>Ошибка при получении информации о версии</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7111"/>
+        <location filename="../UI/UserInterface.py" line="7138"/>
         <source>The versions information could not be downloaded. Please go online and try again.</source>
         <translation>Невозможно загрузить информацию о версии. Пожалуйста попробуйте ещё раз.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Open Browser</source>
         <translation>Открыть браузер</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Could not start a web browser</source>
         <translation>Невозможно запустить web-браузер</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>The versions information could not be downloaded for the last 7 days. Please go online and try again.</source>
         <translation>Невозможно загрузить информацию о версии в течении последних 7 дней. Пожалуйста попробуйте ещё раз.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="692"/>
+        <location filename="../UI/UserInterface.py" line="695"/>
         <source>Setting View Profile...</source>
         <translation>Установка профилей...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="705"/>
+        <location filename="../UI/UserInterface.py" line="708"/>
         <source>Reading Tasks...</source>
         <translation>Чтение задач...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="710"/>
+        <location filename="../UI/UserInterface.py" line="713"/>
         <source>Reading Templates...</source>
         <translation>Чтение шаблонов...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="715"/>
+        <location filename="../UI/UserInterface.py" line="718"/>
         <source>Starting Debugger...</source>
         <translation>Запуск отладчика...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New Window</source>
         <translation>Новое окно</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New &amp;Window</source>
         <translation>&amp;Новое окно</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>Ctrl+Shift+N</source>
         <comment>File|New Window</comment>
         <translation>Ctrl+Shift+N</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Unittest Rerun Failed</source>
         <translation>Неудачный перезапуск юниттеста</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Rerun Failed Tests...</source>
         <translation>Повторить неудачные тесты...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2289"/>
+        <location filename="../UI/UserInterface.py" line="2292"/>
         <source>Rerun failed tests of the last run</source>
         <translation>Повторить неудачные тесты последнего запуска</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2291"/>
+        <location filename="../UI/UserInterface.py" line="2294"/>
         <source>&lt;b&gt;Rerun Failed Tests&lt;/b&gt;&lt;p&gt;Rerun all tests that failed during the last unittest run.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Повторить неудачные тесты&lt;/b&gt;&lt;p&gt;Перезапустить все тесты, провалившиеся при последней попытке.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
+        <location filename="../UI/UserInterface.py" line="2426"/>
         <source>Compare &amp;Files side by side...</source>
         <translation>Сравнить &amp;файлы построчно...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>Snapshot</source>
         <translation>Снимки</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>&amp;Snapshot...</source>
         <translation>&amp;Снимки...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2511"/>
+        <location filename="../UI/UserInterface.py" line="2514"/>
         <source>Take snapshots of a screen region</source>
         <translation>Сделать снимок области экрана</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2513"/>
+        <location filename="../UI/UserInterface.py" line="2516"/>
         <source>&lt;b&gt;Snapshot&lt;/b&gt;&lt;p&gt;This opens a dialog to take snapshots of a screen region.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Снимки&lt;/b&gt;&lt;p&gt;Сделать снимок области экрана.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5449"/>
+        <location filename="../UI/UserInterface.py" line="5465"/>
         <source>&lt;p&gt;Could not start Snapshot tool.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно запустить программу для создания снимка экрана.&lt;br&gt;Убедитесь что она установлена как &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7324"/>
+        <location filename="../UI/UserInterface.py" line="7351"/>
         <source>Select Workspace Directory</source>
         <translation>Выбор директории рабочей области</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
+        <location filename="../UI/UserInterface.py" line="1893"/>
         <source>Left Toolbox</source>
         <translation>Левая панель инструментов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>Right Toolbox</source>
         <translation>Правая панель инструментов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1754"/>
+        <location filename="../UI/UserInterface.py" line="1757"/>
         <source>Switch the input focus to the Project-Viewer window.</source>
         <translation>Переключить фокус ввода в окно просмотра проекта.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1756"/>
+        <location filename="../UI/UserInterface.py" line="1759"/>
         <source>&lt;b&gt;Activate Project-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Project-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Активировать просмотрщик проекта&lt;/b&gt;&lt;p&gt;Переключить фокус ввода в окно просмотра проекта.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1771"/>
+        <location filename="../UI/UserInterface.py" line="1774"/>
         <source>Switch the input focus to the Multiproject-Viewer window.</source>
         <translation>Переключить фокус ввода в окно просмотра мультипроекта.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1773"/>
+        <location filename="../UI/UserInterface.py" line="1776"/>
         <source>&lt;b&gt;Activate Multiproject-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Multiproject-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Активировать просмотрщик проектов&lt;/b&gt;&lt;p&gt;Переключить фокус ввода в окно просмотра мультипроекта.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1789"/>
+        <location filename="../UI/UserInterface.py" line="1792"/>
         <source>Switch the input focus to the Debug-Viewer window.</source>
         <translation>Переключить фокус ввода в окно просмотра отладки.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1791"/>
+        <location filename="../UI/UserInterface.py" line="1794"/>
         <source>&lt;b&gt;Activate Debug-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Debug-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Активировать просмотрщик отладки&lt;/b&gt;&lt;p&gt;Переключить фокус ввода в окно просмотра отладки.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1807"/>
+        <location filename="../UI/UserInterface.py" line="1810"/>
         <source>Switch the input focus to the Shell window.</source>
         <translation>Переключить фокус ввода в окно оболочки.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1809"/>
+        <location filename="../UI/UserInterface.py" line="1812"/>
         <source>&lt;b&gt;Activate Shell&lt;/b&gt;&lt;p&gt;This switches the input focus to the Shell window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Активировать оболочку&lt;/b&gt;&lt;p&gt;Переключить фокус ввода в окно оболочки.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>&amp;File-Browser</source>
         <translation>&amp;Браузер файлов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1824"/>
+        <location filename="../UI/UserInterface.py" line="1827"/>
         <source>Switch the input focus to the File-Browser window.</source>
         <translation>Переключить фокус ввода в окно браузера файлов.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1826"/>
+        <location filename="../UI/UserInterface.py" line="1829"/>
         <source>&lt;b&gt;Activate File-Browser&lt;/b&gt;&lt;p&gt;This switches the input focus to the File-Browser window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Активировать браузер файлов&lt;/b&gt;&lt;p&gt;Переключить фокус ввода в окно браузера файлов.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Lo&amp;g-Viewer</source>
         <translation>Просмотр &amp;журнала</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1841"/>
+        <location filename="../UI/UserInterface.py" line="1844"/>
         <source>Switch the input focus to the Log-Viewer window.</source>
         <translation>Переключить фокус ввода в окно просмотра журналов.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1843"/>
+        <location filename="../UI/UserInterface.py" line="1846"/>
         <source>&lt;b&gt;Activate Log-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Log-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Активировать просмотрщик журнала&lt;/b&gt;&lt;p&gt;Переключить фокус ввода в окно просмотра журнала.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>&amp;Task-Viewer</source>
         <translation>Просмотр &amp;задач</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1859"/>
+        <location filename="../UI/UserInterface.py" line="1862"/>
         <source>Switch the input focus to the Task-Viewer window.</source>
         <translation>Переключить фокус ввода в окно просмотра задач.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Templ&amp;ate-Viewer</source>
         <translation>Просмотр &amp;шаблонов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1878"/>
+        <location filename="../UI/UserInterface.py" line="1881"/>
         <source>Switch the input focus to the Template-Viewer window.</source>
         <translation>Переключить фокус ввода в окно просмотра шаблонов.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1880"/>
+        <location filename="../UI/UserInterface.py" line="1883"/>
         <source>&lt;b&gt;Activate Template-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Template-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Активировать просмотрщик шаблонов&lt;/b&gt;&lt;p&gt;Переключить фокус ввода в окно просмотра шаблонов.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
-        <source>&amp;Left Toolbox</source>
-        <translation>&amp;Левая панель инструментов</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="1893"/>
+        <source>&amp;Left Toolbox</source>
+        <translation>&amp;Левая панель инструментов</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1896"/>
         <source>Toggle the Left Toolbox window</source>
         <translation>Показать/Скрыть левую панель инструментов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1894"/>
+        <location filename="../UI/UserInterface.py" line="1897"/>
         <source>&lt;b&gt;Toggle the Left Toolbox window&lt;/b&gt;&lt;p&gt;If the Left Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Показать/скрыть левую панель инструментов&lt;/b&gt;&lt;p&gt;Если левая панель инструментов скрыта, то показать ее. Если отображается, то скрыть.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>&amp;Right Toolbox</source>
         <translation>&amp;Правая панель инструментов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1906"/>
+        <location filename="../UI/UserInterface.py" line="1909"/>
         <source>Toggle the Right Toolbox window</source>
         <translation>Показать/Скрыть правую панель инструментов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1907"/>
+        <location filename="../UI/UserInterface.py" line="1910"/>
         <source>&lt;b&gt;Toggle the Right Toolbox window&lt;/b&gt;&lt;p&gt;If the Right Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Показать/Скрыть правую панель инструментов&lt;/b&gt;&lt;p&gt;Если аравая панель инструментов скрыта, то показать ее. Если отображается, то скрыть.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>Right Sidebar</source>
         <translation>Правая боковая панель</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>&amp;Right Sidebar</source>
         <translation>&amp;Правая боковая панель</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1946"/>
+        <location filename="../UI/UserInterface.py" line="1949"/>
         <source>Toggle the right sidebar window</source>
         <translation>Показать/Скрыть окно правой боковой панели</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1948"/>
+        <location filename="../UI/UserInterface.py" line="1951"/>
         <source>&lt;b&gt;Toggle the right sidebar window&lt;/b&gt;&lt;p&gt;If the right sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Показать/Скрыть окно правой боковой панели&lt;/b&gt;&lt;p&gt;Если окно правой боковой панели скрыто, то показать его. Если отображается, то закрыть.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Cooperation-Viewer</source>
         <translation>Просмотр кооперации</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Co&amp;operation-Viewer</source>
         <translation>Просмотр ко&amp;операции</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1977"/>
+        <location filename="../UI/UserInterface.py" line="1980"/>
         <source>Switch the input focus to the Cooperation-Viewer window.</source>
         <translation>Переключить фокус ввода в окно просмотра кооперации.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1979"/>
+        <location filename="../UI/UserInterface.py" line="1982"/>
         <source>&lt;b&gt;Activate Cooperation-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Cooperation-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Активировать просмотрщик кооперации&lt;/b&gt;&lt;p&gt;Переключить фокус ввода в окно просмотра кооперации.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Symbols-Viewer</source>
         <translation>Просмотр символов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>S&amp;ymbols-Viewer</source>
         <translation>Просмотр с&amp;имволов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2014"/>
+        <location filename="../UI/UserInterface.py" line="2017"/>
         <source>Switch the input focus to the Symbols-Viewer window.</source>
         <translation>Переключить фокус ввода в окно просмотра символов.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2016"/>
+        <location filename="../UI/UserInterface.py" line="2019"/>
         <source>&lt;b&gt;Activate Symbols-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Symbols-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Активировать просмотрщик символов&lt;/b&gt;&lt;p&gt;Переключить фокус ввода в окно просмотра символов.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Numbers-Viewer</source>
         <translation>Отображение чисел</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Num&amp;bers-Viewer</source>
         <translation>Отображение &amp;чисел</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2033"/>
+        <location filename="../UI/UserInterface.py" line="2036"/>
         <source>Switch the input focus to the Numbers-Viewer window.</source>
         <translation>Переключить фокус ввода в окно просмотра чисел.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2035"/>
+        <location filename="../UI/UserInterface.py" line="2038"/>
         <source>&lt;b&gt;Activate Numbers-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Numbers-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Активировать просмотрщик чисел&lt;/b&gt;&lt;p&gt;Переключить фокус ввода в окно просмотра чисел.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3225"/>
+        <location filename="../UI/UserInterface.py" line="3228"/>
         <source>&amp;Windows</source>
         <translation>&amp;Окна</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1861"/>
+        <location filename="../UI/UserInterface.py" line="1864"/>
         <source>&lt;b&gt;Activate Task-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Task-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Активировать просмотрщик задач&lt;/b&gt;&lt;p&gt;Переключить фокус ввода в окно просмотра задач.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>IRC</source>
         <translation>IRC</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>&amp;IRC</source>
         <translation>&amp;IRC</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1996"/>
+        <location filename="../UI/UserInterface.py" line="1999"/>
         <source>Switch the input focus to the IRC window.</source>
         <translation>Переключить фокус ввода в окно IRC.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1998"/>
+        <location filename="../UI/UserInterface.py" line="2001"/>
         <source>&lt;b&gt;Activate IRC&lt;/b&gt;&lt;p&gt;This switches the input focus to the IRC window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Активировать IRC&lt;/b&gt;&lt;p&gt;Переключить фокус ввода в окно IRC.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-Designer</source>
         <translation>Qt-Designer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-&amp;Designer...</source>
         <translation>Qt-&amp;Designer...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2347"/>
+        <location filename="../UI/UserInterface.py" line="2350"/>
         <source>Start Qt-Designer</source>
         <translation>Запуск Qt-Designer</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2348"/>
+        <location filename="../UI/UserInterface.py" line="2351"/>
         <source>&lt;b&gt;Qt-Designer&lt;/b&gt;&lt;p&gt;Start Qt-Designer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Qt-Designer&lt;/b&gt;&lt;p&gt;Запуск Qt-Designer.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-Linguist</source>
         <translation>Qt-Linguist</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-&amp;Linguist...</source>
         <translation>Qt-&amp;Linguist...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2373"/>
+        <location filename="../UI/UserInterface.py" line="2376"/>
         <source>Start Qt-Linguist</source>
         <translation>Запуск Qt-Linguist</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2374"/>
+        <location filename="../UI/UserInterface.py" line="2377"/>
         <source>&lt;b&gt;Qt-Linguist&lt;/b&gt;&lt;p&gt;Start Qt-Linguist.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Qt-Linguist&lt;/b&gt;&lt;p&gt;Запуск Qt-Linguist.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2862"/>
+        <location filename="../UI/UserInterface.py" line="2865"/>
         <source>Qt5 Documentation</source>
         <translation>Документация Qt5</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2866"/>
+        <location filename="../UI/UserInterface.py" line="2869"/>
         <source>Open Qt5 Documentation</source>
         <translation>Открыть документацию Qt5</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates</source>
         <translation>Менеджер SSL сертификатов</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates...</source>
         <translation>Менеджер SSL сертификатов...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2675"/>
+        <location filename="../UI/UserInterface.py" line="2678"/>
         <source>Manage the saved SSL certificates</source>
         <translation>Управление сохранёнными SSL сертификатами</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2677"/>
+        <location filename="../UI/UserInterface.py" line="2680"/>
         <source>&lt;b&gt;Manage SSL Certificates...&lt;/b&gt;&lt;p&gt;Opens a dialog to manage the saved SSL certificates.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Менеджер SSL сертификатов...&lt;/b&gt;&lt;p&gt;Менеджер сохранённых SSL сертификатов.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters</source>
         <translation>Редактировать фильтры сообщений</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters...</source>
         <translation>Редактировать фильтры сообщений...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2691"/>
+        <location filename="../UI/UserInterface.py" line="2694"/>
         <source>Edit the message filters used to suppress unwanted messages</source>
         <translation>Редактировать фильтры нежелательных сообщений</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2693"/>
+        <location filename="../UI/UserInterface.py" line="2696"/>
         <source>&lt;b&gt;Edit Message Filters&lt;/b&gt;&lt;p&gt;Opens a dialog to edit the message filters used to suppress unwanted messages been shown in an error window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Редактировать фильтры сообщений&lt;/b&gt;&lt;p&gt;Редактировать фильтры нежелательных сообщений об ошибках.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2892"/>
+        <location filename="../UI/UserInterface.py" line="2895"/>
         <source>PyQt5 Documentation</source>
         <translation>Документация PyQt5</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2896"/>
+        <location filename="../UI/UserInterface.py" line="2899"/>
         <source>Open PyQt5 Documentation</source>
         <translation>Открыть документацию PyQt5</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2937"/>
+        <location filename="../UI/UserInterface.py" line="2940"/>
         <source>&lt;b&gt;Python 3 Documentation&lt;/b&gt;&lt;p&gt;Display the Python 3 documentation. If no documentation directory is configured, the location of the Python 3 documentation is assumed to be the doc directory underneath the location of the Python 3 executable on Windows and &lt;i&gt;/usr/share/doc/packages/python/html&lt;/i&gt; on Unix. Set PYTHON3DOCDIR in your environment to override this.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Документация Python 3&lt;/b&gt;&lt;p&gt;Показать документацию Python 3. Если местонахождение документации не было настроено, то искать в директории &lt;i&gt;doc&lt;/i&gt; каталога где находится исполняемый файл Python 3 под Windows и в директории &lt;i&gt;/usr/share/doc/packages/python/html/python-docs-html&lt;/i&gt; под UNIX. Местонахождение документации можно задать с помощью переменной среды окружения PYTHON3DOCDIR.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>%v/%m</source>
         <translation>%v/%m</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2207"/>
+        <location filename="../UI/UserInterface.py" line="2210"/>
         <source>Show Error Log</source>
         <translation>Показать журнал ошибок</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2203"/>
+        <location filename="../UI/UserInterface.py" line="2206"/>
         <source>Show Error &amp;Log...</source>
         <translation>&amp;Журнал ошибок...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2208"/>
+        <location filename="../UI/UserInterface.py" line="2211"/>
         <source>&lt;b&gt;Show Error Log...&lt;/b&gt;&lt;p&gt;Opens a dialog showing the most recent error log.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Показать журнал ошибок...&lt;/b&gt;&lt;p&gt;Показать журнал ошибок.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7054"/>
+        <location filename="../UI/UserInterface.py" line="7081"/>
         <source>Version Check</source>
         <translation>Проверка версии</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="669"/>
-        <source>Generating Plugins Toolbars...</source>
-        <translation>Генерация панели инструментов...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="4182"/>
-        <source>&amp;User Tools</source>
-        <translation>&amp;Инструменты пользователя</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="4252"/>
-        <source>No User Tools Configured</source>
-        <translation>Инструменты пользователя не сконфигурированы</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
-        <source>Hex Editor</source>
-        <translation>Hex-редактор</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
-        <source>&amp;Hex Editor...</source>
-        <translation>&amp;Hex-редактор...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2709"/>
-        <source>Clear private data</source>
-        <translation>Очистить приватные данные</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2711"/>
-        <source>&lt;b&gt;Clear private data&lt;/b&gt;&lt;p&gt;Clears the private data like the various list of recently opened files, projects or multi projects.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Очистить приватные данные&lt;/b&gt;&lt;p&gt;Очистка приватных данных, таких как различные списки недавно открытых файлов, проектов или мультипроектов.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1669"/>
-        <source>Save session...</source>
-        <translation>Сохранить сессию...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1674"/>
-        <source>&lt;b&gt;Save session...&lt;/b&gt;&lt;p&gt;This saves the current session to disk. A dialog is opened to select the file name.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Сохранить сессию...&lt;/b&gt;&lt;p&gt;Позволяет сохранить текущую сессию на диск. Открывается диалог для выбора имени файла.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
-        <source>Load session</source>
-        <translation>Загрузить сессию</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1682"/>
-        <source>Load session...</source>
-        <translation>Загрузить сессию...</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1687"/>
-        <source>&lt;b&gt;Load session...&lt;/b&gt;&lt;p&gt;This loads a session saved to disk previously. A dialog is opened to select the file name.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;Загрузить сессию...&lt;/b&gt;&lt;p&gt;Позволяет загрузить сессию, ранее сохраненную на диске. Открывается диалог для выбора имени файла.&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
-        <source>Crash Session found!</source>
-        <translation>Обнаружена crash-сессия!</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
-        <source>A session file of a crashed session was found. Shall this session be restored?</source>
-        <translation>Найден файл crashed-сессии. Должна ли эта сессия быть восстановлена?</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="672"/>
+        <source>Generating Plugins Toolbars...</source>
+        <translation>Генерация панели инструментов...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="4185"/>
+        <source>&amp;User Tools</source>
+        <translation>&amp;Инструменты пользователя</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="4255"/>
+        <source>No User Tools Configured</source>
+        <translation>Инструменты пользователя не сконфигурированы</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2466"/>
+        <source>Hex Editor</source>
+        <translation>Hex-редактор</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2466"/>
+        <source>&amp;Hex Editor...</source>
+        <translation>&amp;Hex-редактор...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2712"/>
+        <source>Clear private data</source>
+        <translation>Очистить приватные данные</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2714"/>
+        <source>&lt;b&gt;Clear private data&lt;/b&gt;&lt;p&gt;Clears the private data like the various list of recently opened files, projects or multi projects.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Очистить приватные данные&lt;/b&gt;&lt;p&gt;Очистка приватных данных, таких как различные списки недавно открытых файлов, проектов или мультипроектов.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1672"/>
+        <source>Save session...</source>
+        <translation>Сохранить сессию...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1677"/>
+        <source>&lt;b&gt;Save session...&lt;/b&gt;&lt;p&gt;This saves the current session to disk. A dialog is opened to select the file name.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Сохранить сессию...&lt;/b&gt;&lt;p&gt;Позволяет сохранить текущую сессию на диск. Открывается диалог для выбора имени файла.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6660"/>
+        <source>Load session</source>
+        <translation>Загрузить сессию</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1685"/>
+        <source>Load session...</source>
+        <translation>Загрузить сессию...</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1690"/>
+        <source>&lt;b&gt;Load session...&lt;/b&gt;&lt;p&gt;This loads a session saved to disk previously. A dialog is opened to select the file name.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;Загрузить сессию...&lt;/b&gt;&lt;p&gt;Позволяет загрузить сессию, ранее сохраненную на диске. Открывается диалог для выбора имени файла.&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6710"/>
+        <source>Crash Session found!</source>
+        <translation>Обнаружена crash-сессия!</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="6710"/>
+        <source>A session file of a crashed session was found. Shall this session be restored?</source>
+        <translation>Найден файл crashed-сессии. Должна ли эта сессия быть восстановлена?</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="675"/>
         <source>Cleaning Plugins Download Area...</source>
         <translation>Очистка области загрузки плагинов...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="664"/>
+        <location filename="../UI/UserInterface.py" line="667"/>
         <source>Initializing Plugins...</source>
         <translation>Инициализация плагинов...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>Update Check</source>
         <translation>Проверка обновлений</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>You installed eric directly from the source code. There is no possibility to check for the availability of an update.</source>
         <translation>Eric установлен непосредственно из исходного кода.
 Наличие обновлений проверить невозможно.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Code Documentation Viewer</source>
         <translation>Просмотр документации кода</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2867"/>
+        <location filename="../UI/UserInterface.py" line="2870"/>
         <source>&lt;b&gt;Qt5 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;Документация Qt5&lt;/b&gt;&lt;p&gt;Отображение документации Qt5. В зависимости от ваших настроек это может быть отображение справки либо во встроенных средствах просмотра справки Eric-вьюере/web-браузере, либо в Qt Assistant, либо во внешнем web-браузере. &lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2898"/>
+        <location filename="../UI/UserInterface.py" line="2901"/>
         <source>&lt;b&gt;PyQt5 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;Докуметация PyQt5&lt;/b&gt;&lt;p&gt;Отображение документации PyQt5. В зависимости от ваших настроек это может быть отображение справки либо во встроенных средствах просмотра справки Eric-вьюере/web-браузере, либо в Qt Assistant, либо во внешнем web-браузере. &lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2974"/>
+        <location filename="../UI/UserInterface.py" line="2977"/>
         <source>PySide2 Documentation</source>
         <translation>Документация PySide2</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2978"/>
+        <location filename="../UI/UserInterface.py" line="2981"/>
         <source>Open PySide2 Documentation</source>
         <translation>Открыть документацию PySide2</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2980"/>
+        <location filename="../UI/UserInterface.py" line="2983"/>
         <source>&lt;b&gt;PySide2 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide2 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;Документация PySide2&lt;/b&gt;&lt;p&gt;Отображение документации PySide2.  В зависимости от ваших настроек это может быть отображение справки либо во встроенных средствах просмотра справки Eric-вьюере/web-браузере, либо в Qt Assistant, либо во внешнем web-браузере. &lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>&lt;p&gt;The PySide{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Просмотр документации PySide{0} не настроен.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2817"/>
+        <location filename="../UI/UserInterface.py" line="2820"/>
         <source>Virtualenv Manager</source>
         <translation>Менеджер Virtualenv</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2811"/>
+        <location filename="../UI/UserInterface.py" line="2814"/>
         <source>&amp;Virtualenv Manager...</source>
         <translation>Менеджер &amp;Virtualenv...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2819"/>
+        <location filename="../UI/UserInterface.py" line="2822"/>
         <source>&lt;b&gt;Virtualenv Manager&lt;/b&gt;&lt;p&gt;This opens a dialog to manage the defined Python virtual environments.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Менеджер Virtualenv&lt;/b&gt;&lt;p&gt;Открытие диалога управления определенными виртуальными окружениями Python.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2834"/>
+        <location filename="../UI/UserInterface.py" line="2837"/>
         <source>Virtualenv Configurator</source>
         <translation>Конфигуратор Virtualenv</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2828"/>
+        <location filename="../UI/UserInterface.py" line="2831"/>
         <source>Virtualenv &amp;Configurator...</source>
         <translation>Конфигуратор &amp;Virtualenv...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2836"/>
+        <location filename="../UI/UserInterface.py" line="2839"/>
         <source>&lt;b&gt;Virtualenv Configurator&lt;/b&gt;&lt;p&gt;This opens a dialog for entering all the parameters needed to create a Python virtual environment using virtualenv or pyvenv.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Конфигуратор Virtualenv&lt;/b&gt;&lt;p&gt;Открытие диалога для задания всех параметров, необходимых для создания виртуального окружения Python посредством приложений virtualenv или pyvenv.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3232"/>
+        <location filename="../UI/UserInterface.py" line="3235"/>
         <source>Left Side</source>
         <translation>Левая панель</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3244"/>
+        <location filename="../UI/UserInterface.py" line="3247"/>
         <source>Bottom Side</source>
         <translation>Нижняя панель</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3251"/>
+        <location filename="../UI/UserInterface.py" line="3254"/>
         <source>Right Side</source>
         <translation>Правая панель</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3271"/>
+        <location filename="../UI/UserInterface.py" line="3274"/>
         <source>Plug-ins</source>
         <translation>Плагины</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Restart</source>
         <translation>Рестарт</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Ctrl+Shift+Q</source>
         <comment>File|Quit</comment>
         <translation>Ctrl+Shift+Q</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1659"/>
+        <location filename="../UI/UserInterface.py" line="1662"/>
         <source>Restart the IDE</source>
         <translation>Перезапуск IDE</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1660"/>
+        <location filename="../UI/UserInterface.py" line="1663"/>
         <source>&lt;b&gt;Restart the IDE&lt;/b&gt;&lt;p&gt;This restarts the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Рестарт IDEE&lt;/b&gt;&lt;p&gt;Перезапуск среды IDE. Любые несохраненные изменения сохраняются в первую очередь. Любая программа Python, находящаяся в процессе отладки, будет остановлена, предпочтения будут записаны на диск.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>Start Web Browser</source>
         <translation>Запуск web-браузера</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Conda</source>
         <translation>Conda</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>PyPI</source>
         <translation>PyPI</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3580"/>
+        <location filename="../UI/UserInterface.py" line="3583"/>
         <source>&lt;p&gt;This part of the status bar allows zooming the current editor or shell.&lt;/p&gt;</source>
         <translation>&lt;p&gt;В этой части строки состояния разрешено масштабирование редактора или оболочки.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>MicroPython</source>
         <translation>MicroPython</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>Ctrl+Alt+Shift+I</source>
         <translation>Ctrl+Alt+Shift+I</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Ctrl+Alt+Shift+D</source>
         <translation>Ctrl+Alt+Shift+D</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2052"/>
-        <source>Switch the input focus to the Code Documentation Viewer window.</source>
-        <translation>Переключить фокус ввода в окно просмотра документации кода.</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="2055"/>
+        <source>Switch the input focus to the Code Documentation Viewer window.</source>
+        <translation>Переключить фокус ввода в окно просмотра документации кода.</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2058"/>
         <source>&lt;b&gt;Code Documentation Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Code Documentation Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Просмотр документации кода&lt;/b&gt;&lt;p&gt;Переключение фокуса ввода в окно просмотра документации кода.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>Ctrl+Alt+Shift+P</source>
         <translation>Ctrl+Alt+Shift+P</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2072"/>
+        <location filename="../UI/UserInterface.py" line="2075"/>
         <source>Switch the input focus to the PyPI window.</source>
         <translation>Переключить фокус ввода в окно PyPI.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2074"/>
+        <location filename="../UI/UserInterface.py" line="2077"/>
         <source>&lt;b&gt;PyPI&lt;/b&gt;&lt;p&gt;This switches the input focus to the PyPI window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;PyPI&lt;/b&gt;&lt;p&gt;Переключение фокуса ввода в окно PyPI.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Ctrl+Alt+Shift+C</source>
         <translation>Ctrl+Alt+Shift+C</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2090"/>
+        <location filename="../UI/UserInterface.py" line="2093"/>
         <source>Switch the input focus to the Conda window.</source>
         <translation>Переключить фокус ввода в окно Conda.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2092"/>
+        <location filename="../UI/UserInterface.py" line="2095"/>
         <source>&lt;b&gt;Conda&lt;/b&gt;&lt;p&gt;This switches the input focus to the Conda window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Conda&lt;/b&gt;&lt;p&gt;Переключение фокуса ввода в окно Conda.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>Ctrl+Alt+Shift+M</source>
         <translation>Ctrl+Alt+Shift+M</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2108"/>
+        <location filename="../UI/UserInterface.py" line="2111"/>
         <source>Switch the input focus to the MicroPython window.</source>
         <translation>Переключить фокус ввода в окно MicroPython.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2110"/>
+        <location filename="../UI/UserInterface.py" line="2113"/>
         <source>&lt;b&gt;MicroPython&lt;/b&gt;&lt;p&gt;This switches the input focus to the MicroPython window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;MicroPython&lt;/b&gt;&lt;p&gt;Переключение фокуса ввода в окно MicroPython.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3229"/>
+        <location filename="../UI/UserInterface.py" line="3232"/>
         <source>Central Park</source>
         <translation>Центральное окно</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3746"/>
+        <location filename="../UI/UserInterface.py" line="3749"/>
         <source>&lt;h2&gt;Version Numbers&lt;/h2&gt;&lt;table&gt;</source>
         <translation>&lt;h2&gt;Номера версий&lt;/h2&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5075"/>
+        <location filename="../UI/UserInterface.py" line="5078"/>
         <source>&lt;p&gt;Could not find the Qt-Designer executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Не удается найти исполняемый файл Qt-Designer.&lt;br&gt;На странице настройки Qt убедитесь, что он установлен и дополнительно настроен.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5145"/>
+        <location filename="../UI/UserInterface.py" line="5148"/>
         <source>&lt;p&gt;Could not find the Qt-Linguist executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Не удается найти исполняемый файл Qt-Linguist.&lt;br&gt;На странице настройки Qt убедитесь, что он установлен и дополнительно настроен.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5189"/>
+        <location filename="../UI/UserInterface.py" line="5192"/>
         <source>&lt;p&gt;Could not find the Qt-Assistant executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Не удается найти исполняемый файл Qt-Assistant.&lt;br&gt;На странице настройки Qt убедитесь, что он установлен и дополнительно настроен.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install Info</source>
         <translation>Показать информацию об установке</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install &amp;Info...</source>
         <translation>Показать информацию об &amp;установке...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2219"/>
+        <location filename="../UI/UserInterface.py" line="2222"/>
         <source>Show Installation Information</source>
         <translation>Показать информацию об установке</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2221"/>
+        <location filename="../UI/UserInterface.py" line="2224"/>
         <source>&lt;b&gt;Show Install Info...&lt;/b&gt;&lt;p&gt;Opens a dialog showing some information about the installation process.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Показать информацию об установке...&lt;/b&gt;&lt;p&gt;Открывает диалоговое окно, в котором отображается некая информация о процессе установки.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2877"/>
+        <location filename="../UI/UserInterface.py" line="2880"/>
         <source>Qt6 Documentation</source>
         <translation>Документация Qt6</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2881"/>
+        <location filename="../UI/UserInterface.py" line="2884"/>
         <source>Open Qt6 Documentation</source>
         <translation>Открыть документацию Qt6</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2882"/>
+        <location filename="../UI/UserInterface.py" line="2885"/>
         <source>&lt;b&gt;Qt6 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;Документация Qt6&lt;/b&gt;&lt;p&gt;Отображение документации Qt6. В зависимости от ваших настроек это может быть отображение справки либо во встроенных средствах просмотра справки Eric-вьюере/web-браузере, либо в Qt Assistant, либо во внешнем web-браузере. &lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2909"/>
+        <location filename="../UI/UserInterface.py" line="2912"/>
         <source>PyQt6 Documentation</source>
         <translation>Документация PyQt6</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2913"/>
+        <location filename="../UI/UserInterface.py" line="2916"/>
         <source>Open PyQt6 Documentation</source>
         <translation>Открыть документацию PyQt6</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2915"/>
+        <location filename="../UI/UserInterface.py" line="2918"/>
         <source>&lt;b&gt;PyQt6 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;Докуметация PyQt6&lt;/b&gt;&lt;p&gt;Отображение документации PyQt6. В зависимости от ваших настроек это может быть отображение справки либо во встроенных средствах просмотра справки Eric-вьюере/web-браузере, либо в Qt Assistant, либо во внешнем web-браузере. &lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2994"/>
+        <location filename="../UI/UserInterface.py" line="2997"/>
         <source>PySide6 Documentation</source>
         <translation>Документация PySide6</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2998"/>
+        <location filename="../UI/UserInterface.py" line="3001"/>
         <source>Open PySide6 Documentation</source>
         <translation>Открыть документацию PySide6</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3000"/>
+        <location filename="../UI/UserInterface.py" line="3003"/>
         <source>&lt;b&gt;PySide6 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation>&lt;b&gt;Документация PySide6&lt;/b&gt;&lt;p&gt;Отображение документации PySide6.  В зависимости от ваших настроек это может быть отображение справки либо во встроенных средствах просмотра справки Eric-вьюере/web-браузере, либо в Qt Assistant, либо во внешнем web-браузере. &lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5754"/>
+        <location filename="../UI/UserInterface.py" line="5770"/>
         <source>&lt;p&gt;The PyQt{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation>&lt;p&gt;Стартовый каталог документации PyQt{0} не настроен.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1701"/>
+        <location filename="../UI/UserInterface.py" line="1704"/>
         <source>Open a new eric instance</source>
         <translation>Запустить ещё один экземпляр eric</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1703"/>
+        <location filename="../UI/UserInterface.py" line="1706"/>
         <source>&lt;b&gt;New Window&lt;/b&gt;&lt;p&gt;This opens a new instance of the eric IDE.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Новое окно&lt;/b&gt;&lt;p&gt;Запустить ещё один экземпляр eric IDE.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2146"/>
+        <location filename="../UI/UserInterface.py" line="2149"/>
         <source>&lt;b&gt;Helpviewer&lt;/b&gt;&lt;p&gt;Display the eric web browser. This window will show HTML help files and help from Qt help collections. It has the capability to navigate to links, set bookmarks, print the displayed help and some more features. You may use it to browse the internet as well&lt;/p&gt;&lt;p&gt;If called with a word selected, this word is search in the Qt help collection.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Просмотр справки&lt;/b&gt;&lt;p&gt;Открытие eric web-браузера. В его окне будут показываться HTML файлы справки. Оно поддерживает навигацию по ссылкам, закладки, печать и некоторые другие функции. Его можно использовать для просмотра интернета.&lt;/p&gt;&lt;p&gt;Если перед вызовом окна отображения справки был подсвечен какой-либо текст, то будет произведён поиск этого текста в коллекции справки Qt.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2181"/>
+        <location filename="../UI/UserInterface.py" line="2184"/>
         <source>&lt;b&gt;Check for Updates...&lt;/b&gt;&lt;p&gt;Checks the internet for updates of eric.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Проверить наличие обновлений...&lt;/b&gt;&lt;p&gt;Проверить наличие обновлений eric в интернете.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2194"/>
+        <location filename="../UI/UserInterface.py" line="2197"/>
         <source>&lt;b&gt;Show downloadable versions...&lt;/b&gt;&lt;p&gt;Shows the eric versions available for download from the internet.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Показать версии, доступные для загрузки...&lt;/b&gt;&lt;p&gt;Показывает версии eric, которые можно скачать с интернета.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2468"/>
+        <location filename="../UI/UserInterface.py" line="2471"/>
         <source>Start the eric Hex Editor</source>
         <translation>Запуск eric Hex-редактора</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2470"/>
+        <location filename="../UI/UserInterface.py" line="2473"/>
         <source>&lt;b&gt;Hex Editor&lt;/b&gt;&lt;p&gt;Starts the eric Hex Editor for viewing or editing binary files.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Hex-редактор&lt;/b&gt;&lt;p&gt;Запускает eric Hex-редактор для просмотра или редактирования двоичного файла.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric Web Browser</source>
         <translation>Eric web-браузер</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric &amp;Web Browser...</source>
         <translation>Eric &amp;web-браузер...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2483"/>
+        <location filename="../UI/UserInterface.py" line="2486"/>
         <source>Start the eric Web Browser</source>
         <translation>Запустить eric web-браузер</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2485"/>
+        <location filename="../UI/UserInterface.py" line="2488"/>
         <source>&lt;b&gt;eric Web Browser&lt;/b&gt;&lt;p&gt;Browse the Internet with the eric Web Browser.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Eric web-браузер&lt;/b&gt;&lt;p&gt;Просмотр интернета используя web-браузер, встроенный в eric.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2497"/>
+        <location filename="../UI/UserInterface.py" line="2500"/>
         <source>Start the eric Icon Editor</source>
         <translation>Запустить eric редактор иконок</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2499"/>
+        <location filename="../UI/UserInterface.py" line="2502"/>
         <source>&lt;b&gt;Icon Editor&lt;/b&gt;&lt;p&gt;Starts the eric Icon Editor for editing simple icons.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Редактор иконок&lt;/b&gt;&lt;p&gt;Запустить eric редактор иконок.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2585"/>
+        <location filename="../UI/UserInterface.py" line="2588"/>
         <source>&lt;b&gt;Show external tools&lt;/b&gt;&lt;p&gt;Opens a dialog to show the path and versions of all extenal tools used by eric.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Показать внешние инструменты&lt;/b&gt;&lt;p&gt;Открытие диалога отображения пути и версий внешних инструментов, используемых eric.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2959"/>
+        <location filename="../UI/UserInterface.py" line="2962"/>
         <source>&lt;b&gt;Eric API Documentation&lt;/b&gt;&lt;p&gt;Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric installation directory.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Документация API eric&lt;/b&gt;&lt;p&gt;Показать документацию API eric. Местонахождение документации - каталог Documentation/Source, расположенный в директории инсталляции eric.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5972"/>
+        <location filename="../UI/UserInterface.py" line="5988"/>
         <source>The eric web browser could not be started.</source>
         <translation>Невозможно запустить eric web-браузер.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>&lt;p&gt;The eric web browser is not started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Eric web-браузер не запущен.&lt;/p&gt;&lt;p&gt;Причина: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>The update to &lt;b&gt;{0}&lt;/b&gt; of eric is available at &lt;b&gt;{1}&lt;/b&gt;. Would you like to get it?</source>
         <translation>На сайте &lt;b&gt;{1}&lt;/b&gt; доступно обновление eric до версии &lt;b&gt;{0}&lt;/b&gt;. Загрузить?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7188"/>
+        <location filename="../UI/UserInterface.py" line="7215"/>
         <source>You are using a snapshot release of eric. A more up-to-date stable release might be available.</source>
         <translation>Вы используете промежуточный релиз eric. Возможно на сайте доступна и более свежий стабильный релиз.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>eric is up to date</source>
         <translation>eric не требует обновлений</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>You are using the latest version of eric</source>
         <translation>Вы используете самую последнюю версию eric</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>eric has not been configured yet. The configuration dialog will be started.</source>
         <translation>Настройка eric ещё не выполнена. Сейчас будет запущен диалог конфигурации.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6290"/>
+        <location filename="../UI/UserInterface.py" line="6306"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard Shortcuts File (*.e4k)</source>
         <translation>Файл горячих клавиш (*.ekj);;XML-файл горячих клавиш (*.e4k)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>&lt;p&gt;The keyboard shortcuts file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;Файл горячих клавиш &lt;b&gt;{0}&lt;/b&gt; уже существует. Переписать?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard shortcut file (*.e4k)</source>
         <translation>Файл горячих клавиш (*.ekj);;XML-файл горячих клавиш (*.e4k)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>Read Tasks</source>
         <translation>Прочитать задачи</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6621"/>
+        <location filename="../UI/UserInterface.py" line="6637"/>
         <source>Save Session</source>
         <translation>Сохранить сессию</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6578"/>
+        <location filename="../UI/UserInterface.py" line="6594"/>
         <source>Read Session</source>
         <translation>Загрузить сессию</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>eric Session Files (*.esj);;eric XML Session Files (*.e5s)</source>
         <translation>Файлы сессии eric (*.esj);;XML-файл сессии eric (*.e5s)</translation>
     </message>
@@ -77962,7 +78034,7 @@
 <context>
     <name>Utilities</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="1420"/>
+        <location filename="../Utilities/__init__.py" line="1421"/>
         <source>&lt;p&gt;You may use %-codes as placeholders in the string. Supported codes are:&lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;column of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;directory of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;filename of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;home directory of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;line of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;path of the current project&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;selected text of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;username of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;the percent sign&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</source>
         <translation>&lt;p&gt;Вы можете использовать %-коды как заполнители в строке:
 &lt;table&gt;
@@ -78563,12 +78635,12 @@
 <context>
     <name>VcsMercurialPlugin</name>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="58"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="54"/>
         <source>Version Control - Mercurial</source>
         <translation>Контроль версий - Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="132"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="124"/>
         <source>Mercurial</source>
         <translation>Mercurial</translation>
     </message>
@@ -81189,27 +81261,27 @@
         <translation>&lt;p&gt;В файле &lt;b&gt;{0}&lt;/b&gt; есть несохранённые изменения.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4777"/>
+        <location filename="../ViewManager/ViewManager.py" line="4790"/>
         <source>Line: {0:5}</source>
         <translation>Строка: {0:5}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4783"/>
+        <location filename="../ViewManager/ViewManager.py" line="4796"/>
         <source>Pos: {0:5}</source>
         <translation>Позиция: {0:5}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5217"/>
+        <location filename="../ViewManager/ViewManager.py" line="5230"/>
         <source>&amp;Clear</source>
         <translation>&amp;Очистить</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5211"/>
+        <location filename="../ViewManager/ViewManager.py" line="5224"/>
         <source>&amp;Add</source>
         <translation>&amp;Добавить</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5214"/>
+        <location filename="../ViewManager/ViewManager.py" line="5227"/>
         <source>&amp;Edit...</source>
         <translation>&amp;Правка...</translation>
     </message>
@@ -81771,27 +81843,27 @@
         <translation>Список исключений пользователя</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>Edit Spelling Dictionary</source>
         <translation>Редактировать орфографический словарь</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6233"/>
+        <location filename="../ViewManager/ViewManager.py" line="6246"/>
         <source>Editing {0}</source>
         <translation>Редактирование {0}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6215"/>
+        <location filename="../ViewManager/ViewManager.py" line="6228"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно прочитать файл словаря&lt;b&gt;{0}&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6244"/>
+        <location filename="../ViewManager/ViewManager.py" line="6257"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Невозможно записать файл словаря&lt;b&gt;{0}&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>The spelling dictionary was saved successfully.</source>
         <translation>Файл словаря успешно сохранён.</translation>
     </message>
@@ -81911,12 +81983,12 @@
         <translation>&lt;b&gt;Сортировка&lt;/b&gt;&lt;p&gt;Сортировать строки в прямоугольной выборке, принимая во внимание только выделенную часть и игнорируя символы пропуска.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4804"/>
+        <location filename="../ViewManager/ViewManager.py" line="4817"/>
         <source>Language: {0}</source>
         <translation>Язык: {0}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4811"/>
+        <location filename="../ViewManager/ViewManager.py" line="4824"/>
         <source>EOL Mode: {0}</source>
         <translation>Режим конца строк: {0}</translation>
     </message>
--- a/eric6/i18n/eric6_tr.ts	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/i18n/eric6_tr.ts	Thu Jun 03 11:39:23 2021 +0200
@@ -1264,45 +1264,60 @@
 <context>
     <name>ApplicationDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="43"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="47"/>
         <source>Application Diagram {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>Parsing modules...</source>
         <translation type="unfinished">Moduller İnceleniyor...</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="197"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="252"/>
         <source>&lt;&lt;Application&gt;&gt;</source>
         <translation type="unfinished">&lt;&lt;Uygulama&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="199"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="254"/>
         <source>&lt;&lt;Others&gt;&gt;</source>
         <translation type="unfinished">&lt;&lt;Diğerleri&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>Load Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>&lt;p&gt;The diagram belongs to the project &lt;b&gt;{0}&lt;/b&gt;. Shall this project be opened?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>%v/%m Modules</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="69"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
         <source>Application Diagram</source>
         <translation type="unfinished">Uygulama Şeması</translation>
     </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="126"/>
+        <source>Select the application directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
+        <source>No application package could be detected. Aborting...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="466"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>ApplicationPage</name>
@@ -1623,47 +1638,47 @@
 <context>
     <name>BackgroundService</name>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="139"/>
+        <location filename="../Utilities/BackgroundService.py" line="142"/>
         <source>{0} not configured.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>Restart background client?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="456"/>
+        <location filename="../Utilities/BackgroundService.py" line="459"/>
         <source>Eric&apos;s background client disconnected because of an unknown reason.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>Background client disconnected.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>&lt;p&gt;The background client for &lt;b&gt;{0}&lt;/b&gt; has stopped due to an exception. It&apos;s used by various plug-ins like the different checkers.&lt;/p&gt;&lt;p&gt;Select&lt;ul&gt;&lt;li&gt;&lt;b&gt;&apos;Yes&apos;&lt;/b&gt; to restart the client, but abort the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Retry&apos;&lt;/b&gt; to restart the client and the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;No&apos;&lt;/b&gt; to leave the client off.&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p&gt;Note: The client can be restarted by opening and accepting the preferences dialog or reloading/changing the project.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>The background client for &lt;b&gt;{0}&lt;/b&gt; disconnected because of an unknown reason.&lt;br&gt;Should it be restarted?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="228"/>
+        <location filename="../Utilities/BackgroundService.py" line="231"/>
         <source>An error in Eric&apos;s background client stopped the service.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>Initialization of Background Service</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>&lt;p&gt;Initialization of Background Service &lt;b&gt;{0}&lt;/b&gt; failed.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2374,27 +2389,27 @@
 <context>
     <name>Browser</name>
     <message>
-        <location filename="../UI/Browser.py" line="94"/>
+        <location filename="../UI/Browser.py" line="96"/>
         <source>File-Browser</source>
         <translation>Dosya-Gözatıcısı</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="284"/>
+        <location filename="../UI/Browser.py" line="286"/>
         <source>Open</source>
         <translation>Aç</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="233"/>
+        <location filename="../UI/Browser.py" line="235"/>
         <source>Run unittest...</source>
         <translation>Test Arabirimini çalıştır...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="316"/>
+        <location filename="../UI/Browser.py" line="318"/>
         <source>Copy Path to Clipboard</source>
         <translation>Yolu Panoya kopyala</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="263"/>
+        <location filename="../UI/Browser.py" line="265"/>
         <source>Open in Icon Editor</source>
         <translation>İcon Düzenleyicide Aç</translation>
     </message>
@@ -2404,27 +2419,27 @@
         <translation type="obsolete">Ayarlanıyor...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="342"/>
+        <location filename="../UI/Browser.py" line="344"/>
         <source>New toplevel directory...</source>
         <translation>Yeni enüstseviye dizini...</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="298"/>
+        <location filename="../UI/Browser.py" line="300"/>
         <source>Add as toplevel directory</source>
         <translation>Dizinin en üst seviyesi olarak ekle</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="301"/>
+        <location filename="../UI/Browser.py" line="303"/>
         <source>Remove from toplevel</source>
         <translation>Enüst seviyeyi kaldır</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="305"/>
+        <location filename="../UI/Browser.py" line="307"/>
         <source>Refresh directory</source>
         <translation>Dizini tazele</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="309"/>
+        <location filename="../UI/Browser.py" line="311"/>
         <source>Find in this directory</source>
         <translation>Bu dizin içinde bul</translation>
     </message>
@@ -2434,172 +2449,172 @@
         <translation type="obsolete">Bul&amp;&amp;Değiştir bu dizin içinde</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="643"/>
+        <location filename="../UI/Browser.py" line="646"/>
         <source>New toplevel directory</source>
         <translation>Yeni enüstseviye dizini</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="328"/>
+        <location filename="../UI/Browser.py" line="330"/>
         <source>Goto</source>
         <translation type="unfinished">Buraya git</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="435"/>
+        <location filename="../UI/Browser.py" line="437"/>
         <source>Line {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="113"/>
+        <location filename="../UI/Browser.py" line="115"/>
         <source>&lt;b&gt;The Browser Window&lt;/b&gt;&lt;p&gt;This allows you to easily navigate the hierarchy of directories and files on your system, identify the Python programs and open them up in a Source Viewer window. The window displays several separate hierarchies.&lt;/p&gt;&lt;p&gt;The first hierarchy is only shown if you have opened a program for debugging and its root is the directory containing that program. Usually all of the separate files that make up a Python application are held in the same directory, so this hierarchy gives you easy access to most of what you will need.&lt;/p&gt;&lt;p&gt;The next hierarchy is used to easily navigate the directories that are specified in the Python &lt;tt&gt;sys.path&lt;/tt&gt; variable.&lt;/p&gt;&lt;p&gt;The remaining hierarchies allow you navigate your system as a whole. On a UNIX system there will be a hierarchy with &lt;tt&gt;/&lt;/tt&gt; at its root and another with the user home directory. On a Windows system there will be a hierarchy for each drive on the system.&lt;/p&gt;&lt;p&gt;Python programs (i.e. those with a &lt;tt&gt;.py&lt;/tt&gt; file name suffix) are identified in the hierarchies with a Python icon. The right mouse button will popup a menu which lets you open the file in a Source Viewer window, open the file for debugging or use it for a unittest run.&lt;/p&gt;&lt;p&gt;The context menu of a class, function or method allows you to open the file defining this class, function or method and will ensure, that the correct source line is visible.&lt;/p&gt;&lt;p&gt;Qt-Designer files (i.e. those with a &lt;tt&gt;.ui&lt;/tt&gt; file name suffix) are shown with a Designer icon. The context menu of these files allows you to start Qt-Designer with that file.&lt;/p&gt;&lt;p&gt;Qt-Linguist files (i.e. those with a &lt;tt&gt;.ts&lt;/tt&gt; file name suffix) are shown with a Linguist icon. The context menu of these files allows you to start Qt-Linguist with that file.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>Show Mime-Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="528"/>
+        <location filename="../UI/Browser.py" line="531"/>
         <source>The mime type of the file could not be determined.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="546"/>
+        <location filename="../UI/Browser.py" line="549"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="260"/>
+        <location filename="../UI/Browser.py" line="262"/>
         <source>Open in Hex Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="312"/>
+        <location filename="../UI/Browser.py" line="314"/>
         <source>Find &amp;&amp; Replace in this directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="241"/>
+        <location filename="../UI/Browser.py" line="243"/>
         <source>Refresh Source File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="214"/>
+        <location filename="../UI/Browser.py" line="216"/>
         <source>Show Hidden Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="221"/>
-        <source>New</source>
-        <translation type="unfinished">Yeni</translation>
-    </message>
-    <message>
         <location filename="../UI/Browser.py" line="223"/>
+        <source>New</source>
+        <translation type="unfinished">Yeni</translation>
+    </message>
+    <message>
+        <location filename="../UI/Browser.py" line="225"/>
         <source>Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="226"/>
+        <location filename="../UI/Browser.py" line="228"/>
         <source>File</source>
         <translation type="unfinished">Dosya</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="323"/>
+        <location filename="../UI/Browser.py" line="325"/>
         <source>Delete</source>
         <translation type="unfinished">Sil</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>New Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="861"/>
+        <location filename="../UI/Browser.py" line="864"/>
         <source>Name for new directory:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="902"/>
+        <location filename="../UI/Browser.py" line="905"/>
         <source>A file or directory named &lt;b&gt;{0}&lt;/b&gt; exists already. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>&lt;p&gt;The directory &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>New File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="894"/>
+        <location filename="../UI/Browser.py" line="897"/>
         <source>Name for new file:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="942"/>
+        <location filename="../UI/Browser.py" line="945"/>
         <source>Do you really want to move this file to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="946"/>
+        <location filename="../UI/Browser.py" line="949"/>
         <source>Do you really want to delete this file?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>Delete File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>&lt;p&gt;The selected file &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="979"/>
+        <location filename="../UI/Browser.py" line="982"/>
         <source>Do you really want to move this directory to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="983"/>
+        <location filename="../UI/Browser.py" line="986"/>
         <source>Do you really want to delete this directory?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>Delete Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>&lt;p&gt;The selected directory &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1023"/>
+        <location filename="../UI/Browser.py" line="1026"/>
         <source>Do you really want to move these files to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1027"/>
+        <location filename="../UI/Browser.py" line="1030"/>
         <source>Do you really want to delete these files?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1032"/>
+        <location filename="../UI/Browser.py" line="1035"/>
         <source>Delete Files</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3194,6 +3209,32 @@
     </message>
 </context>
 <context>
+    <name>ClassItem</name>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="176"/>
+        <source>Class Attributes:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="211"/>
+        <source>none</source>
+        <translation type="unfinished">yok</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="191"/>
+        <source>Instance Attributes:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="210"/>
+        <source>Methods:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>ClearPrivateDataDialog</name>
     <message>
         <location filename="../UI/ClearPrivateDataDialog.ui" line="14"/>
@@ -4715,7 +4756,7 @@
 <context>
     <name>CodingError</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="131"/>
+        <location filename="../Utilities/__init__.py" line="132"/>
         <source>The coding &apos;{0}&apos; is wrong for the given text.</source>
         <translation>Verilen metin için &apos;{0}&apos;nun kodlaması hatalı.</translation>
     </message>
@@ -7113,7 +7154,7 @@
 <context>
     <name>DebugUI</name>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1980"/>
+        <location filename="../Debugger/DebugUI.py" line="1981"/>
         <source>Run Script</source>
         <translation>Betiği Çalıştır</translation>
     </message>
@@ -7133,7 +7174,7 @@
         <translation>&lt;b&gt;Betiği Çalıştır&lt;/b&gt;&lt;p&gt; KOmut satırı argumanlarını ayarla ve hata ayıklayıcının dışında çalıştır. Eğer dosyada kaydedilmemiş değişiklikler varsa önce kaydedilmelidir.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>Run Project</source>
         <translation>Projeyi Çalıştır</translation>
     </message>
@@ -7233,7 +7274,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2121"/>
+        <location filename="../Debugger/DebugUI.py" line="2122"/>
         <source>Debug Script</source>
         <translation>Betik Hata Ayıklama</translation>
     </message>
@@ -7253,7 +7294,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>Debug Project</source>
         <translation>Proje Hata Ayıklama</translation>
     </message>
@@ -7603,67 +7644,67 @@
         <translation>Hata ayıklanmaya başlanan program beklenmeyen bir şekilde sonlandı.</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>Breakpoint Condition Error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>&lt;p&gt;The condition of the breakpoint &lt;b&gt;{0}, {1}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>Watch Expression Error</source>
         <translation>Gözetleme İfade hatası</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>&lt;p&gt;The watch expression &lt;b&gt;{0}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1530"/>
+        <location filename="../Debugger/DebugUI.py" line="1531"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; already exists.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1535"/>
+        <location filename="../Debugger/DebugUI.py" line="1536"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; for the variable &lt;b&gt;{1}&lt;/b&gt; already exists.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1540"/>
+        <location filename="../Debugger/DebugUI.py" line="1541"/>
         <source>Watch expression already exists</source>
         <translation>Hali hazırda gözetleme ifadesi var</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1709"/>
+        <location filename="../Debugger/DebugUI.py" line="1710"/>
         <source>Coverage of Project</source>
         <translation>Proje Kapsamı</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1690"/>
+        <location filename="../Debugger/DebugUI.py" line="1691"/>
         <source>Coverage of Script</source>
         <translation>Betik Kapsamı</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>There is no main script defined for the current project. Aborting</source>
         <translation>Bugeçerli projede tanımlanan ana betik değil. Durduruluyor</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1854"/>
+        <location filename="../Debugger/DebugUI.py" line="1855"/>
         <source>Profile of Project</source>
         <translation>Proje Kesiti</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1835"/>
+        <location filename="../Debugger/DebugUI.py" line="1836"/>
         <source>Profile of Script</source>
         <translation>Betik Kesiti</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>There is no main script defined for the current project. No debugging possible.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7718,7 +7759,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1418"/>
+        <location filename="../Debugger/DebugUI.py" line="1419"/>
         <source>No locals available.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -10209,9 +10250,17 @@
 &lt;/ul&gt;
 </translation>
     </message>
-    <message>
-        <location filename="../E5Graphics/E5GraphicsView.py" line="417"/>
-        <source>{0}, Page {1}</source>
+</context>
+<context>
+    <name>E5JsonServer</name>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>JSON Protocol Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>&lt;p&gt;The response received from the client could not be decoded. Please report this issue with the received data to the eric bugs email address.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;&lt;p&gt;Data:&lt;br/&gt;{1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -11800,7 +11849,7 @@
         <translation>Tüm seçimi iptal et</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7944"/>
+        <location filename="../QScintilla/Editor.py" line="7941"/>
         <source>Check spelling...</source>
         <translation>Yazım Kontrolü...</translation>
     </message>
@@ -12400,32 +12449,32 @@
         <translation>Sınıf nitelikleri dahil edilsin mi?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Imports Diagram</source>
         <translation>Şemayı İçe Aktar</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Include imports from external modules?</source>
         <translation>Harici modüllerdan içe aktarım dahil edilsin mi?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Application Diagram</source>
         <translation>Uygulama Şeması</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Include module names?</source>
         <translation>Modül isimleri dahil edilsin mi?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7947"/>
+        <location filename="../QScintilla/Editor.py" line="7944"/>
         <source>Add to dictionary</source>
         <translation>Sözlüğe ekle</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7949"/>
+        <location filename="../QScintilla/Editor.py" line="7946"/>
         <source>Ignore All</source>
         <translation>Hepsini Yoksay</translation>
     </message>
@@ -12475,12 +12524,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>Sort Lines</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>The selection contains illegal data for a numerical sort.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12555,12 +12604,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>Register Mouse Click Handler</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>A mouse click handler for &quot;{0}&quot; was already registered by &quot;{1}&quot;. Aborting request by &quot;{2}&quot;...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12590,12 +12639,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>EditorConfig Properties</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>&lt;p&gt;The EditorConfig properties for file &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12640,7 +12689,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8766"/>
+        <location filename="../QScintilla/Editor.py" line="8763"/>
         <source>Generate Docstring</source>
         <translation type="unfinished"></translation>
     </message>
@@ -19271,7 +19320,7 @@
 <context>
     <name>FileDialogWizardDialog</name>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="72"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="73"/>
         <source>QFileDialog Wizard</source>
         <translation>QFileDialog Sihirbazı</translation>
     </message>
@@ -19431,7 +19480,7 @@
         <translation>Yalnızca Dizinleri Göster</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="89"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="90"/>
         <source>Test</source>
         <translation>Test</translation>
     </message>
@@ -19551,7 +19600,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="67"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="68"/>
         <source>E5FileDialog Wizard</source>
         <translation type="unfinished"></translation>
     </message>
@@ -27029,27 +27078,27 @@
 <context>
     <name>Globals</name>
     <message>
-        <location filename="../Globals/__init__.py" line="451"/>
+        <location filename="../Globals/__init__.py" line="455"/>
         <source>{0:4.2f} Bytes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Globals/__init__.py" line="455"/>
-        <source>{0:4.2f} KiB</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../Globals/__init__.py" line="459"/>
-        <source>{0:4.2f} MiB</source>
+        <source>{0:4.2f} KiB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="463"/>
-        <source>{0:4.2f} GiB</source>
+        <source>{0:4.2f} MiB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="467"/>
+        <source>{0:4.2f} GiB</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Globals/__init__.py" line="471"/>
         <source>{0:4.2f} TiB</source>
         <translation type="unfinished"></translation>
     </message>
@@ -31244,112 +31293,112 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1849"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1850"/>
         <source>Showing current branch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1939"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1940"/>
         <source>Verifying the integrity of the Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1953"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1954"/>
         <source>Showing the combined configuration settings</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1966"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1967"/>
         <source>Showing aliases for remote repositories</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1979"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1980"/>
         <source>Recovering from interrupted transaction</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1992"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1993"/>
         <source>Identifying project directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>Create .hgignore file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; dosyası halihazırda bulunuyor. Üzerine yazılsın mı?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2119"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2120"/>
         <source>Create changegroup</source>
         <translation>Değişimgrubu oluştur</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2076"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2077"/>
         <source>Mercurial Changegroup Files (*.hg)</source>
         <translation>Mercurial Değiştirme grubu Dosyaları (*.hg)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2129"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2130"/>
         <source>Preview changegroup</source>
         <translation>Değişimgrubu öngörünümü</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2157"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2158"/>
         <source>Mercurial Changegroup Files (*.hg);;All Files (*)</source>
         <translation>Mercurial Değişimgrubu Dosyaları (*.hg);;Tüm Dosyalar (*)</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2178"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2179"/>
         <source>Apply changegroups</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2166"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2167"/>
         <source>Shall the working directory be updated?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2197"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2198"/>
         <source>Bisect subcommand ({0}) invalid.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2217"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2218"/>
         <source>Mercurial Bisect ({0})</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2240"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2241"/>
         <source>Removing files from the Mercurial repository only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2283"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2284"/>
         <source>Backing out changeset</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2263"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2264"/>
         <source>No revision given. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2093"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2094"/>
         <source>&lt;p&gt;The Mercurial changegroup file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2299"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2300"/>
         <source>Rollback last transaction</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2292"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2293"/>
         <source>Are you sure you want to rollback the last transaction?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -31359,72 +31408,72 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>Mercurial Command Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2799"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2800"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be restarted.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2351"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2352"/>
         <source>Import Patch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2392"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2393"/>
         <source>Export Patches</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2431"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2432"/>
         <source>Change Phase</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2480"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2481"/>
         <source>Copy Changesets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2520"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2521"/>
         <source>Copy Changesets (Continue)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2663"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2664"/>
         <source>Add Sub-repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2695"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2696"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be read.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2645"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2646"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub already contains an entry &lt;b&gt;{0}&lt;/b&gt;. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be written to.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>Remove Sub-repositories</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2684"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2685"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub does not exist. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -31454,7 +31503,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2568"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2569"/>
         <source>Create Unversioned Archive</source>
         <translation type="unfinished"></translation>
     </message>
@@ -31479,7 +31528,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1838"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1839"/>
         <source>Created new branch &lt;{0}&gt;.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -31489,62 +31538,62 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3049"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3050"/>
         <source>Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Delete Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Select the bookmark to be deleted:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3074"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3075"/>
         <source>Delete Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3098"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3099"/>
         <source>Rename Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3132"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3133"/>
         <source>Move Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Pull Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Select the bookmark to be pulled:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3213"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3214"/>
         <source>Pulling bookmark from a remote Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Push Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Select the bookmark to be push:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3253"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3254"/>
         <source>Pushing bookmark to a remote Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
@@ -31579,22 +31628,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>Delete All Backups</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>&lt;p&gt;Do you really want to delete all backup bundles stored the backup area &lt;b&gt;{0}&lt;/b&gt;?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2532"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2533"/>
         <source>Copy Changesets (Stop)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2545"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2546"/>
         <source>Copy Changesets (Abort)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -32550,42 +32599,42 @@
 <context>
     <name>HgClient</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="91"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="92"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished">Süreç {0} başlatılamadı. Bunun arama yolunda olduğundan emin olun.</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="140"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="141"/>
         <source>Did not receive the &apos;hello&apos; message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="142"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="143"/>
         <source>Received data on unexpected channel.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="147"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="148"/>
         <source>Bad &apos;hello&apos; message, expected &apos;capabilities: &apos; but got &apos;{0}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="153"/>
         <source>&apos;capabilities&apos; message did not contain any capability.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="160"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="161"/>
         <source>Bad &apos;hello&apos; message, expected &apos;encoding: &apos; but got &apos;{0}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="165"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="166"/>
         <source>&apos;encoding&apos; message did not contain any encoding.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="379"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="380"/>
         <source>For message see output dialog.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -37630,52 +37679,52 @@
 <context>
     <name>HgServeDialog</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="50"/>
         <source>Mercurial Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="53"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="54"/>
         <source>Start Server</source>
         <translation>Sunucuyu Başlat</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="59"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="60"/>
         <source>Stop Server</source>
         <translation>Sunucuyu durdur</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="65"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="66"/>
         <source>Start Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="73"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="74"/>
         <source>Enter the server port</source>
         <translation>Sunucu bağlantı noktsasını giriniz</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="79"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="80"/>
         <source>Select the style to use</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="83"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="84"/>
         <source>Server</source>
         <translation>Sunucu</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="90"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="91"/>
         <source>Browser</source>
         <translation>Gözatıcı</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>Process Generation Error</source>
         <translation>İşlem Üretecinde Hata</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation>Süreç {0} başlatılamadı. Bunun arama yolunda olduğundan emin olun.</translation>
     </message>
@@ -39404,17 +39453,17 @@
 <context>
     <name>HgUtilities</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="93"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="128"/>
         <source>The hg process finished with the exit code {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="98"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="133"/>
         <source>The hg process did not finish within 30s.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="102"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="137"/>
         <source>Could not start the hg executable.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -41638,35 +41687,40 @@
 <context>
     <name>ImportsDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>Parsing modules...</source>
         <translation type="unfinished">Moduller İnceleniyor...</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="124"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="136"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a Python package.</source>
         <translation type="unfinished">&lt;b&gt;&apos;{0}&apos;&lt;/b&gt; dizini bir Python paketi değil.</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>%v/%m Modules</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="95"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="107"/>
         <source>Imports Diagramm</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="410"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>InputDialogWizard</name>
@@ -43431,22 +43485,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="252"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="251"/>
         <source>Yes</source>
         <translation type="unfinished">Evet</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="254"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="253"/>
         <source>No</source>
         <translation type="unfinished">Hayır</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Delete Channel</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Do you really want to delete channel &lt;b&gt;{0}&lt;/b&gt;?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -51480,45 +51534,60 @@
 <context>
     <name>PackageDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>Parsing modules...</source>
         <translation type="unfinished">Moduller İnceleniyor...</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="205"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="219"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a package.</source>
         <translation type="unfinished">&lt;b&gt;&apos;{0}&apos;&lt;/b&gt; dizini bir paket değil.</translation>
     </message>
     <message>
         <location filename="../Graphics/PackageDiagramBuilder.py" line="214"/>
         <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules.</source>
-        <translation type="unfinished">&lt;b&gt;&apos;{0}&apos;&lt;/b&gt;paketi hiçbir modül içermiyor.</translation>
+        <translation type="obsolete">&lt;b&gt;&apos;{0}&apos;&lt;/b&gt;paketi hiçbir modül içermiyor.</translation>
     </message>
     <message>
         <location filename="../Graphics/PackageDiagramBuilder.py" line="231"/>
         <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
-        <translation type="unfinished">&lt;b&gt;&apos;{0}&apos;&lt;/b&gt;paketi hiçbir modül içermiyor.</translation>
-    </message>
-    <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <translation type="obsolete">&lt;b&gt;&apos;{0}&apos;&lt;/b&gt;paketi hiçbir modül içermiyor.</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>%v/%m Modules</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="158"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="172"/>
         <source>Package Diagram</source>
         <translation type="unfinished">Paket Şeması</translation>
     </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="230"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules or subpackages.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="247"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes or subpackages.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="555"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageScreenDialog</name>
@@ -53044,42 +53113,42 @@
 <context>
     <name>PixmapDiagram</name>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>Pixmap-Viewer</source>
         <translation>Pixmap-Gösterici</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="93"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="96"/>
         <source>Close</source>
         <translation>Kapat</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="98"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="101"/>
         <source>Print</source>
         <translation>Yazdır</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="103"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="106"/>
         <source>Print Preview</source>
         <translation>Baskı Öngörünümü</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="133"/>
-        <source>Window</source>
-        <translation>Pencere</translation>
-    </message>
-    <message>
         <location filename="../Graphics/PixmapDiagram.py" line="137"/>
+        <source>Window</source>
+        <translation>Pencere</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PixmapDiagram.py" line="141"/>
         <source>Graphics</source>
         <translation>Grafik</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; cannot be displayed. The format is not supported.&lt;/p&gt;</source>
         <translation>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; dosyası  gösterilemiyor. Formatı desteklenmiyor.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="391"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="416"/>
         <source>Diagram: {0}</source>
         <translation>Şema: {0}</translation>
     </message>
@@ -53413,12 +53482,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="492"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="476"/>
         <source>Error installing plugin. Reason: {0}</source>
         <translation>Eklenti kurulrmrunda hata. Sebep: {0}</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="501"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="485"/>
         <source>Unspecific exception installing plugin.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -53436,52 +53505,52 @@
         <translation>Dahili eklenti dizini &lt;b&gt;{0}&lt;/b&gt; mevcut değil.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="404"/>
+        <location filename="../PluginManager/PluginManager.py" line="410"/>
         <source>Module is missing the &apos;autoactivate&apos; attribute.</source>
         <translation>Modülün &apos;otomatikaktileşme&apos; niteliği eksik.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="415"/>
+        <location filename="../PluginManager/PluginManager.py" line="421"/>
         <source>Module is missing the &apos;pluginType&apos; and/or &apos;pluginTypename&apos; attributes.</source>
         <translation>Modülün &apos;eklentitipi&apos; ve/veya &apos;eklentiTipadı&apos; niteliği eksik.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="437"/>
+        <location filename="../PluginManager/PluginManager.py" line="446"/>
         <source>Module failed to load. Error: {0}</source>
         <translation>Modül yüklemede başarısızlık. Hata: {0}</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="614"/>
+        <location filename="../PluginManager/PluginManager.py" line="623"/>
         <source>Incompatible plugin activation method.</source>
         <translation>Eklenti etkinleştirme yöntemi uyuşmuyor.</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>Plugin Manager Error</source>
         <translation>Eklenti Yöneticisi Hatası</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>&lt;p&gt;The plugin download directory &lt;b&gt;{0}&lt;/b&gt; could not be created. Please configure it via the configuration dialog.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;eklenti dizini &lt;b&gt;{0}&lt;/b&gt; oluşturulamıyor. Lütfen ayarlama diyaloğu aracılığı ile düzenleyin.&lt;/p&gt;&lt;p&gt;Sebep: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>Error downloading file</source>
         <translation type="unfinished">Dosya yüklenirken hata</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>&lt;p&gt;Could not download the requested file from {0}.&lt;/p&gt;&lt;p&gt;Error: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>New plugin versions available</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>&lt;p&gt;There are new plug-ins or plug-in updates available. Use the plug-in repository dialog to get them.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -55585,7 +55654,7 @@
         <translation>&lt;b&gt;Uygulama Şeması...&lt;/b&gt;&lt;p&gt;Bu projenin bir şemasını gösterir.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>Create Package List</source>
         <translation>Paket Listesini Oluştur</translation>
     </message>
@@ -55595,7 +55664,7 @@
         <translation type="unfinished">Eklenti &amp;Arşivi Oluştur</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>Create Plugin Archive</source>
         <translation>Eklenti Arşivi Oluştur</translation>
     </message>
@@ -55715,27 +55784,27 @@
         <translation>Modül isimleri dahil edilsin mi?</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5264"/>
+        <location filename="../Project/Project.py" line="5265"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; already exists.&lt;/p&gt;&lt;p&gt;Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5331"/>
+        <location filename="../Project/Project.py" line="5332"/>
         <source>The project does not have a main script defined. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5467"/>
+        <location filename="../Project/Project.py" line="5468"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be stored in the archive. Ignoring it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5536"/>
+        <location filename="../Project/Project.py" line="5537"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -55795,7 +55864,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt; &lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -55846,7 +55915,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5367"/>
+        <location filename="../Project/Project.py" line="5368"/>
         <source>Create Plugin Archives</source>
         <translation type="unfinished"></translation>
     </message>
@@ -55861,37 +55930,37 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5345"/>
+        <location filename="../Project/Project.py" line="5346"/>
         <source>Select package lists:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Creating plugin archives...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Abort</source>
         <translation type="unfinished">Vazgeç</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>%v/%m Archives</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5378"/>
+        <location filename="../Project/Project.py" line="5379"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5356"/>
+        <location filename="../Project/Project.py" line="5357"/>
         <source>&lt;p&gt;No package list files (PKGLIST*) available or selected. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5405"/>
+        <location filename="../Project/Project.py" line="5406"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; is not ready yet.&lt;/p&gt;&lt;p&gt;Please rework it and delete the&apos;; initial_list&apos; line of the header.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -55931,7 +56000,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>Execute Make</source>
         <translation type="unfinished"></translation>
     </message>
@@ -55951,7 +56020,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5744"/>
+        <location filename="../Project/Project.py" line="5745"/>
         <source>Test for Changes</source>
         <translation type="unfinished"></translation>
     </message>
@@ -55976,27 +56045,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5692"/>
+        <location filename="../Project/Project.py" line="5693"/>
         <source>The make process did not start.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5737"/>
+        <location filename="../Project/Project.py" line="5738"/>
         <source>The make process crashed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5747"/>
+        <location filename="../Project/Project.py" line="5748"/>
         <source>&lt;p&gt;There are changes that require the configured make target &lt;b&gt;{0}&lt;/b&gt; to be rebuilt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5752"/>
+        <location filename="../Project/Project.py" line="5753"/>
         <source>&lt;p&gt;There are changes that require the default make target to be rebuilt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>The makefile contains errors.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56071,17 +56140,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5432"/>
+        <location filename="../Project/Project.py" line="5433"/>
         <source>&lt;p&gt;The eric plugin archive file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5484"/>
+        <location filename="../Project/Project.py" line="5485"/>
         <source>&lt;p&gt;The eric plugin archive files were created with some errors.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5492"/>
+        <location filename="../Project/Project.py" line="5493"/>
         <source>&lt;p&gt;The eric plugin archive files were created successfully.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56940,32 +57009,32 @@
         <translation>Ayarlanıyor...</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Delete files/directories</source>
         <translation>Dosyaları/Dizinleri Sil</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Do you really want to delete these entries from the project?</source>
         <translation>Bu girişi projeden silmek istediğinizden gerçekten emin misiniz?</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>Show Mime-Type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="272"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="273"/>
         <source>The mime type of the file could not be determined.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="286"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="287"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -57702,32 +57771,32 @@
         <translation>Sınıf Şeması</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Include class attributes?</source>
         <translation>Sınıf nitelikleri dahil edilsin mi?</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Imports Diagram</source>
         <translation>Şemayı İçe Aktar</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Include imports from external modules?</source>
         <translation>Harici modüllerdan içe aktarım dahil edilsin mi?</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Package Diagram</source>
         <translation>Paket Şeması</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Application Diagram</source>
         <translation>Uygulama Şeması</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Include module names?</source>
         <translation>Modül isimleri dahil edilsin mi?</translation>
     </message>
@@ -70145,37 +70214,37 @@
 <context>
     <name>SvgDiagram</name>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="50"/>
+        <location filename="../Graphics/SvgDiagram.py" line="53"/>
         <source>SVG-Viewer</source>
         <translation>SVG-Gösterici</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="92"/>
+        <location filename="../Graphics/SvgDiagram.py" line="95"/>
         <source>Close</source>
         <translation>Kapat</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="97"/>
+        <location filename="../Graphics/SvgDiagram.py" line="100"/>
         <source>Print</source>
         <translation>Yazdır</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="102"/>
+        <location filename="../Graphics/SvgDiagram.py" line="105"/>
         <source>Print Preview</source>
         <translation>Baskı Öngörünümü</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="132"/>
-        <source>Window</source>
-        <translation>Pencere</translation>
-    </message>
-    <message>
         <location filename="../Graphics/SvgDiagram.py" line="136"/>
+        <source>Window</source>
+        <translation>Pencere</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/SvgDiagram.py" line="140"/>
         <source>Graphics</source>
         <translation>Grafik</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="363"/>
+        <location filename="../Graphics/SvgDiagram.py" line="385"/>
         <source>Diagram: {0}</source>
         <translation>Şema: {0}</translation>
     </message>
@@ -75960,65 +76029,105 @@
         <translation>Görev açıklamasını gir</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="60"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="71"/>
         <source>Creation Time:</source>
         <translation>Oluşum Zamanı:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="77"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="92"/>
         <source>&amp;Priority:</source>
         <translation>&amp;Öncelik:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="87"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="102"/>
         <source>Select the task priority</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="94"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="109"/>
         <source>High</source>
         <translation>Yükseklik</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="99"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="114"/>
         <source>Normal</source>
         <translation>Normal</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="104"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="119"/>
         <source>Low</source>
         <translation>Alçek</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="112"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="175"/>
         <source>Select to indicate a task related to the current project</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="115"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="178"/>
         <source>Project &amp;Task</source>
         <translation>Proje &amp;Görevi</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="128"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="162"/>
         <source>Select to mark this task as completed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="131"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="165"/>
         <source>T&amp;ask completed</source>
         <translation>Görev T&amp;amamlandı</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="138"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="223"/>
         <source>Filename:</source>
         <translation>Dosyaadı:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="155"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="216"/>
         <source>Line:</source>
         <translation>Satır:</translation>
     </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="127"/>
+        <source>Type:</source>
+        <translation type="unfinished">Tip:</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="134"/>
+        <source>Select the task type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="41"/>
+        <source>Bugfix</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="42"/>
+        <source>Warning</source>
+        <translation type="unfinished">Dikkat</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="43"/>
+        <source>ToDo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="44"/>
+        <source>Note</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="45"/>
+        <source>Test</source>
+        <translation type="unfinished">Test</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="46"/>
+        <source>Documentation</source>
+        <translation type="unfinished">Belgeleme</translation>
+    </message>
 </context>
 <context>
     <name>TaskViewer</name>
@@ -76103,27 +76212,27 @@
         <translation>Ayarlanıyor...</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>Activate task filter</source>
         <translation>Görev süzgeçini etkinleştir</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>The task filter doesn&apos;t have any active filters. Do you want to configure the filter settings?</source>
         <translation>Görev süzgeçlerinin etkin olan hiç süzgeçi yok. Bu süzgeçlerin ayarlarını yapmak ister misiniz?</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Extracting project tasks...</source>
         <translation>Proje görevleri çıkarılıyor...</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Abort</source>
         <translation>Vazgeç</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="738"/>
+        <location filename="../Tasks/TaskViewer.py" line="755"/>
         <source>Extracting project tasks...
 {0}</source>
         <translation>Proje görevleri çıkarılıyor...
@@ -76135,12 +76244,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Scan Filter Patterns</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Enter filename patterns of files to be excluded separated by a comma:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -76150,12 +76259,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>%v/%m Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="734"/>
+        <location filename="../Tasks/TaskViewer.py" line="751"/>
         <source>Tasks</source>
         <translation type="unfinished">Görevler</translation>
     </message>
@@ -76183,22 +76292,22 @@
 <context>
     <name>TasksFile</name>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>Save Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>Read Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -78636,213 +78745,238 @@
 <context>
     <name>UMLClassDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="83"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="96"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; could not be found.</source>
         <translation type="unfinished">Modül &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; bulunamadı.</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="145"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="159"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
         <translation type="unfinished">Modül&lt;b&gt;&apos;{0}&apos;&lt;/b&gt; hiçbir sınıf içermiyor.</translation>
     </message>
+    <message>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="394"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>UMLDialog</name>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="82"/>
+        <location filename="../Graphics/UMLDialog.py" line="113"/>
         <source>Close</source>
         <translation>Kapat</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="122"/>
+        <location filename="../Graphics/UMLDialog.py" line="153"/>
         <source>Window</source>
         <translation>Pencere</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="87"/>
+        <location filename="../Graphics/UMLDialog.py" line="118"/>
         <source>Load</source>
         <translation type="unfinished">Yükle</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="92"/>
+        <location filename="../Graphics/UMLDialog.py" line="123"/>
         <source>Save</source>
         <translation type="unfinished">Kaydet</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="97"/>
+        <location filename="../Graphics/UMLDialog.py" line="128"/>
         <source>Save As...</source>
         <translation type="unfinished">Farklı Kaydet...</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="107"/>
+        <location filename="../Graphics/UMLDialog.py" line="138"/>
         <source>Print</source>
         <translation type="unfinished">Yazdır</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="112"/>
+        <location filename="../Graphics/UMLDialog.py" line="143"/>
         <source>Print Preview</source>
         <translation type="unfinished">Baskı Öngörünümü</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="126"/>
+        <location filename="../Graphics/UMLDialog.py" line="157"/>
         <source>File</source>
         <translation type="unfinished">Dosya</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="178"/>
-        <source>Illegal diagram type &apos;{0}&apos; given.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>Save Diagram</source>
         <translation type="unfinished">Şemayı Kaydet</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="230"/>
+        <location filename="../Graphics/UMLDialog.py" line="257"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished">&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; dosyası halen mevcut. Üzerine yazılsın mı?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="386"/>
+        <location filename="../Graphics/UMLDialog.py" line="551"/>
         <source>Load Diagram</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="287"/>
+        <location filename="../Graphics/UMLDialog.py" line="518"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;&lt;p&gt;Invalid line: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="102"/>
+        <location filename="../Graphics/UMLDialog.py" line="133"/>
         <source>Save as Image</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="274"/>
-        <source>Eric Graphics File (*.e5g);;All Files (*)</source>
+        <location filename="../Graphics/UMLDialog.py" line="43"/>
+        <source>Class Diagram</source>
+        <translation type="unfinished">Sınıf Şeması</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="45"/>
+        <source>Package Diagram</source>
+        <translation type="unfinished">Paket Şeması</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="47"/>
+        <source>Imports Diagram</source>
+        <translation type="unfinished">Şemayı İçe Aktar</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="49"/>
+        <source>Application Diagram</source>
+        <translation type="unfinished">Uygulama Şeması</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="105"/>
+        <source>Illegal Diagram Type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="289"/>
+        <source>Eric Graphics File (*.egj);;Eric Text Graphics File (*.e5g);;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>UMLGraphicsView</name>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="83"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="85"/>
         <source>Delete shapes</source>
         <translation>KAlıpları sil</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="88"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="90"/>
         <source>Increase width by {0} points</source>
         <translation>{0} nokta büyüt</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="95"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="97"/>
         <source>Increase height by {0} points</source>
         <translation>Yüksekleği {0} nokta büyüt</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="102"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="104"/>
         <source>Decrease width by {0} points</source>
         <translation>Genişliği {0} nokta küçült</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="109"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="111"/>
         <source>Decrease height by {0} points</source>
         <translation>Yüksekleği {0} nokta küçült</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="116"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="118"/>
         <source>Set size</source>
         <translation>Boyutları ayarla</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="126"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="128"/>
         <source>Re-Layout</source>
         <translation>Yeniden-Yerleşim</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="131"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="133"/>
         <source>Align Left</source>
         <translation>Sola Hizala</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="138"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="140"/>
         <source>Align Center Horizontal</source>
         <translation>Yatay Ortaya Hizala</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="145"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="147"/>
         <source>Align Right</source>
         <translation>Sağa Hizala</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="152"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="154"/>
         <source>Align Top</source>
         <translation>Yukarı Hizala</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="159"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="161"/>
         <source>Align Center Vertical</source>
         <translation>Dikey Ortaya Hizala</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="166"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="168"/>
         <source>Align Bottom</source>
         <translation>Aşağı Hizala</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="219"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="233"/>
         <source>Graphics</source>
         <translation>Grafik</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>Save Diagram</source>
         <translation>Şemayı Kaydet</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="341"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="360"/>
         <source>Portable Network Graphics (*.png);;Scalable Vector Graphics (*.svg)</source>
         <translation>Taşınabilir Şebeke Grafikleri (*.png);;Ölçeklenebilir vektör Grafikleri (*.svg)</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;</source>
         <translation>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt;dosyası kaydedilemedi.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="356"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="375"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; dosyası halen mevcut. Üzerine yazılsın mı?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="121"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="123"/>
         <source>Re-Scan</source>
         <translation type="unfinished"></translation>
     </message>
@@ -78926,7 +79060,7 @@
 <context>
     <name>UnittestDialog</name>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>Unittest</source>
         <translation>Birimtest</translation>
     </message>
@@ -79117,27 +79251,27 @@
         <translation type="obsolete">Testyönteminin dosyasını girmelisiniz.</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="699"/>
         <source>Preparing Testsuite</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="989"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="991"/>
         <source>Running</source>
         <translation>Çalışıyor</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1033"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1035"/>
         <source>Failure: {0}</source>
         <translation>Başarısızlık:{0}</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1048"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1050"/>
         <source>Error: {0}</source>
         <translation>Hata: {0}</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1162"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1164"/>
         <source>Show Source</source>
         <translation>Kaynağı Göster</translation>
     </message>
@@ -79172,17 +79306,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1063"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1065"/>
         <source>    Skipped: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1081"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1083"/>
         <source>    Expected Failure</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1098"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1100"/>
         <source>    Unexpected Success</source>
         <translation type="unfinished"></translation>
     </message>
@@ -79284,17 +79418,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="707"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
         <source>Unittest with auto-discovery</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="791"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="787"/>
         <source>You must enter a start directory for auto-discovery.</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="1013"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1015"/>
         <source>Ran %n test(s) in {0:.3f}s</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -79327,7 +79461,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="623"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="619"/>
         <source>Discovered %n Test(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -79335,22 +79469,22 @@
         </translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="628"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="624"/>
         <source>&lt;p&gt;Unable to discover tests.&lt;/p&gt;&lt;p&gt;{0}&lt;br/&gt;{1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="694"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="690"/>
         <source>You must select auto-discovery or enter a test suite file or a dotted test name.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="716"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="712"/>
         <source>&lt;Unnamed Test&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>&lt;p&gt;Unable to run test &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;{1}&lt;br/&gt;{2}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -79380,7 +79514,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="724"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="720"/>
         <source>No test case has been selected. Shall all test cases be run?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -79389,6 +79523,11 @@
         <source>Python3 Files ({0});;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../PyUnit/UnittestDialog.py" line="881"/>
+        <source>No unittest were found. Aborting...</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>UnknownDevicesDialog</name>
@@ -79627,928 +79766,928 @@
 <context>
     <name>UserInterface</name>
     <message>
-        <location filename="../UI/UserInterface.py" line="275"/>
+        <location filename="../UI/UserInterface.py" line="276"/>
         <source>Initializing Plugin Manager...</source>
         <translation>Eklenti Yöneticisi Hazırlanıyor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="282"/>
+        <location filename="../UI/UserInterface.py" line="283"/>
         <source>Generating Main User Interface...</source>
         <translation>Ana Kullanıcı Arayüzü Üretiliyor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="332"/>
+        <location filename="../UI/UserInterface.py" line="333"/>
         <source>Setting up connections...</source>
         <translation>Bağlantılar ayarlanıyor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="577"/>
+        <location filename="../UI/UserInterface.py" line="580"/>
         <source>Initializing Tools...</source>
         <translation>Araçlar Hazırlanıyor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="587"/>
+        <location filename="../UI/UserInterface.py" line="590"/>
         <source>Registering Objects...</source>
         <translation>Nesneler Kaydediliyor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="624"/>
+        <location filename="../UI/UserInterface.py" line="627"/>
         <source>Initializing Actions...</source>
         <translation>İşlemler Hazırlanıyor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="626"/>
+        <location filename="../UI/UserInterface.py" line="629"/>
         <source>Initializing Menus...</source>
         <translation>Menüler Hazırlanıyor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="628"/>
+        <location filename="../UI/UserInterface.py" line="631"/>
         <source>Initializing Toolbars...</source>
         <translation>Araççubuğu Hazırlanıyor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="630"/>
+        <location filename="../UI/UserInterface.py" line="633"/>
         <source>Initializing Statusbar...</source>
         <translation>Durumçubuğu Hazırlanıyor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="657"/>
+        <location filename="../UI/UserInterface.py" line="660"/>
         <source>Initializing Single Application Server...</source>
         <translation>Tekli Uygulama Senveri Hazırlanıyor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="667"/>
+        <location filename="../UI/UserInterface.py" line="670"/>
         <source>Activating Plugins...</source>
         <translation>Eklentiler Aktif oluyor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="683"/>
+        <location filename="../UI/UserInterface.py" line="686"/>
         <source>Restoring Toolbarmanager...</source>
         <translation>Araççubuğu Yöneticisi Yeniden yapılandırılıyor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Project-Viewer</source>
         <translation>Proje-Görüntüleyici</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Multiproject-Viewer</source>
         <translation>Çokluproje-Görüntüleyici</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Debug-Viewer</source>
         <translation>Hata Ayıklama Göstericisi</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1124"/>
+        <location filename="../UI/UserInterface.py" line="1127"/>
         <source>Cooperation</source>
         <translation>İşbirliği</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Log-Viewer</source>
         <translation>Kayıt-Gösterici</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Task-Viewer</source>
         <translation>Görev-Gösterici</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Template-Viewer</source>
         <translation>Şablon-Gösterici</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>File-Browser</source>
         <translation>Dosya-Gözatıcısı</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Shell</source>
         <translation>Kabuk</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>Horizontal Toolbox</source>
         <translation>Yatay Araçkutusu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1602"/>
+        <location filename="../UI/UserInterface.py" line="1605"/>
         <source>{0} - Passive Mode</source>
         <translation>{0} - Pasif Mod</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1609"/>
+        <location filename="../UI/UserInterface.py" line="1612"/>
         <source>{0} - {1} - Passive Mode</source>
         <translation>{0} - {1} -Pasif Mod</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1613"/>
+        <location filename="../UI/UserInterface.py" line="1616"/>
         <source>{0} - {1} - {2} - Passive Mode</source>
         <translation>{0} - {1} - {2} - Pasif Mod</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Quit</source>
         <translation>Çık</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>&amp;Quit</source>
         <translation>&amp;Çıkış</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Ctrl+Q</source>
         <comment>File|Quit</comment>
         <translation>Ctrl+Q</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1642"/>
+        <location filename="../UI/UserInterface.py" line="1645"/>
         <source>Quit the IDE</source>
         <translation>IDE den Çık</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1643"/>
+        <location filename="../UI/UserInterface.py" line="1646"/>
         <source>&lt;b&gt;Quit the IDE&lt;/b&gt;&lt;p&gt;This quits the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1714"/>
+        <location filename="../UI/UserInterface.py" line="1717"/>
         <source>Edit Profile</source>
         <translation>Düzenleme Kesiti</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1720"/>
+        <location filename="../UI/UserInterface.py" line="1723"/>
         <source>Activate the edit view profile</source>
         <translation>Düzenleyici görüntü kesitini aktif yap</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1722"/>
+        <location filename="../UI/UserInterface.py" line="1725"/>
         <source>&lt;b&gt;Edit Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Edit View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1731"/>
+        <location filename="../UI/UserInterface.py" line="1734"/>
         <source>Debug Profile</source>
         <translation>Hata Ayıklama Kesiti</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1737"/>
+        <location filename="../UI/UserInterface.py" line="1740"/>
         <source>Activate the debug view profile</source>
         <translation>Debug görüntü kesitini aktif et</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1739"/>
+        <location filename="../UI/UserInterface.py" line="1742"/>
         <source>&lt;b&gt;Debug Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Debug View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>&amp;Project-Viewer</source>
         <translation>&amp;proje-Görüntüleyici</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Alt+Shift+P</source>
         <translation>Alt+Shift+P</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>&amp;Multiproject-Viewer</source>
         <translation>Çokluproje-Görü&amp;ntüleyici</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Alt+Shift+M</source>
         <translation>Alt+Shift+M</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>&amp;Debug-Viewer</source>
         <translation>Ha&amp;ta Ayıklama-Göstericisi</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Alt+Shift+D</source>
         <translation>Alt+Shift+D</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>&amp;Shell</source>
         <translation>&amp;Kabuk</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Alt+Shift+S</source>
         <translation>Alt+Shift+S</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>Alt+Shift+F</source>
         <translation>Alt+Shift+F</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Alt+Shift+G</source>
         <translation>Alt+Shift+G</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Alt+Shift+T</source>
         <translation>Alt+Shift+T</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Alt+Shift+A</source>
         <translation>Alt+Shift+A</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>&amp;Horizontal Toolbox</source>
         <translation>Ya&amp;tay Araçkutusu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1919"/>
+        <location filename="../UI/UserInterface.py" line="1922"/>
         <source>Toggle the Horizontal Toolbox window</source>
         <translation>Yatay Araçkutusu penceresini açkapa</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1921"/>
+        <location filename="../UI/UserInterface.py" line="1924"/>
         <source>&lt;b&gt;Toggle the Horizontal Toolbox window&lt;/b&gt;&lt;p&gt;If the Horizontal Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>Left Sidebar</source>
         <translation>Sol Durumçubuğu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>&amp;Left Sidebar</source>
         <translation>So&amp;l Durumçubuğu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1933"/>
+        <location filename="../UI/UserInterface.py" line="1936"/>
         <source>Toggle the left sidebar window</source>
         <translation>Sol Durum çubuğu penceresini açkapa</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1934"/>
+        <location filename="../UI/UserInterface.py" line="1937"/>
         <source>&lt;b&gt;Toggle the left sidebar window&lt;/b&gt;&lt;p&gt;If the left sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Sol durum çubuğu penceresini açkapa&lt;/b&gt;&lt;p&gt;Eğer sol durum çubuğu penceresi gizli ise onu görünür yap. Eğer görünüyor ise kapat.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>Bottom Sidebar</source>
         <translation>Alt Durumçubuğu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>&amp;Bottom Sidebar</source>
         <translation>Alt Durumçu&amp;buğu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1960"/>
+        <location filename="../UI/UserInterface.py" line="1963"/>
         <source>Toggle the bottom sidebar window</source>
         <translation>Alt Durum çubuğu penceresini açkapa</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1962"/>
+        <location filename="../UI/UserInterface.py" line="1965"/>
         <source>&lt;b&gt;Toggle the bottom sidebar window&lt;/b&gt;&lt;p&gt;If the bottom sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Alt+Shift+O</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>What&apos;s This?</source>
         <translation>Bu nedir?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>&amp;What&apos;s This?</source>
         <translation>Bu &amp;Nedir?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>Shift+F1</source>
         <translation>Shift+F1</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2126"/>
+        <location filename="../UI/UserInterface.py" line="2129"/>
         <source>Context sensitive help</source>
         <translation>Duyarlı yardım</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2127"/>
+        <location filename="../UI/UserInterface.py" line="2130"/>
         <source>&lt;b&gt;Display context sensitive help&lt;/b&gt;&lt;p&gt;In What&apos;s This? mode, the mouse cursor shows an arrow with a question mark, and you can click on the interface elements to get a short description of what they do and how to use them. In dialogs, this feature can be accessed using the context help button in the titlebar.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Duyarlı yardım içeriğini görüntüle&lt;/b&gt;&lt;p&gt;Bu Nedir? modunda, Fare imleci soru işeretiyle beraber bir ok şeklindedir ve bir arayüz elemanı üzerinde tıklarsanız bu elemanın nasıl kullanılacağı ve hakkında kısa bilgi verir. bu özellik diyaloglarda başlık çubuğu üzerindeyken çıkarılan açılır menülerde de bulunmaktadır.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>Helpviewer</source>
         <translation>Yardımgösterici</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>&amp;Helpviewer...</source>
         <translation>&amp;Yardım Gösterici...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>F1</source>
         <translation>F1</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2144"/>
+        <location filename="../UI/UserInterface.py" line="2147"/>
         <source>Open the helpviewer window</source>
         <translation>Yardımgösterici penceresini aç</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show Versions</source>
         <translation>Sürümü Göster</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show &amp;Versions</source>
         <translation>Sürümü G&amp;öster</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2168"/>
+        <location filename="../UI/UserInterface.py" line="2171"/>
         <source>Display version information</source>
         <translation>Sürüm bilgisini görüntüle</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2170"/>
+        <location filename="../UI/UserInterface.py" line="2173"/>
         <source>&lt;b&gt;Show Versions&lt;/b&gt;&lt;p&gt;Display version information.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Sürümleri Göster&lt;/b&gt;&lt;p&gt;Sürüm bilgisini göster.&lt;/p&gt;</translation>
     </message>
     <message>
+        <location filename="../UI/UserInterface.py" line="2183"/>
+        <source>Check for Updates</source>
+        <translation>Güncellemeleri kontrol et</translation>
+    </message>
+    <message>
         <location filename="../UI/UserInterface.py" line="2180"/>
-        <source>Check for Updates</source>
-        <translation>Güncellemeleri kontrol et</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2177"/>
         <source>Check for &amp;Updates...</source>
         <translation>G&amp;üncellemeleri kontrol et...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show downloadable versions</source>
         <translation>Yüklenebilir sürümleri göster</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show &amp;downloadable versions...</source>
         <translation>Yüklenebilir sürümler&amp;i göster...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2192"/>
+        <location filename="../UI/UserInterface.py" line="2195"/>
         <source>Show the versions available for download</source>
         <translation>İndirmek için mümkün olan sürümü göster</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Report Bug</source>
         <translation>Hata Raporu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2229"/>
+        <location filename="../UI/UserInterface.py" line="2232"/>
         <source>Report &amp;Bug...</source>
         <translation>Hata &amp;Raporu...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2233"/>
+        <location filename="../UI/UserInterface.py" line="2236"/>
         <source>Report a bug</source>
         <translation>Bir hata rapor et</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2234"/>
+        <location filename="../UI/UserInterface.py" line="2237"/>
         <source>&lt;b&gt;Report Bug...&lt;/b&gt;&lt;p&gt;Opens a dialog to report a bug.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request Feature</source>
         <translation>İhtiyaç Duyulan Özellikler</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request &amp;Feature...</source>
         <translation>İhtiyaç Duyulan Özellikler &amp;F...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2245"/>
+        <location filename="../UI/UserInterface.py" line="2248"/>
         <source>Send a feature request</source>
         <translation>ihtiyaç duyuulan bir özelliği gönder</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2247"/>
+        <location filename="../UI/UserInterface.py" line="2250"/>
         <source>&lt;b&gt;Request Feature...&lt;/b&gt;&lt;p&gt;Opens a dialog to send a feature request.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3365"/>
+        <location filename="../UI/UserInterface.py" line="3368"/>
         <source>Unittest</source>
         <translation>Birimtest</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2256"/>
+        <location filename="../UI/UserInterface.py" line="2259"/>
         <source>&amp;Unittest...</source>
         <translation>B&amp;irimtest...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2261"/>
+        <location filename="../UI/UserInterface.py" line="2264"/>
         <source>Start unittest dialog</source>
         <translation>Birimtest diyaloğunu başlat</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2262"/>
+        <location filename="../UI/UserInterface.py" line="2265"/>
         <source>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Perform unit tests. The dialog gives you the ability to select and run a unittest suite.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
+        <location filename="../UI/UserInterface.py" line="2273"/>
         <source>Unittest Restart</source>
         <translation>Birimtestini yeniden başlat</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
+        <location filename="../UI/UserInterface.py" line="2273"/>
         <source>&amp;Restart Unittest...</source>
         <translation>Bi&amp;rimtestini Yeniden Başlat...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2275"/>
+        <location filename="../UI/UserInterface.py" line="2278"/>
         <source>Restart last unittest</source>
         <translation>En son birimtesti yeniden başlat</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2276"/>
+        <location filename="../UI/UserInterface.py" line="2279"/>
         <source>&lt;b&gt;Restart Unittest&lt;/b&gt;&lt;p&gt;Restart the unittest performed last.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
+        <location filename="../UI/UserInterface.py" line="2303"/>
         <source>Unittest Script</source>
         <translation>Betik Birimtesti</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
+        <location filename="../UI/UserInterface.py" line="2303"/>
         <source>Unittest &amp;Script...</source>
         <translation>Betik Birimte&amp;sti...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2305"/>
+        <location filename="../UI/UserInterface.py" line="2308"/>
         <source>Run unittest with current script</source>
         <translation>Geçerli betikle test arabirimini çalıştır</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2307"/>
+        <location filename="../UI/UserInterface.py" line="2310"/>
         <source>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Run unittest with current script.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
+        <location filename="../UI/UserInterface.py" line="2318"/>
         <source>Unittest Project</source>
         <translation>Proje Birimtesti</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
+        <location filename="../UI/UserInterface.py" line="2318"/>
         <source>Unittest &amp;Project...</source>
         <translation>Birimtest &amp;Proje...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2320"/>
+        <location filename="../UI/UserInterface.py" line="2323"/>
         <source>Run unittest with current project</source>
         <translation>Geçerli proje ile test arabirimini çalıştır</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2322"/>
+        <location filename="../UI/UserInterface.py" line="2325"/>
         <source>&lt;b&gt;Unittest Project&lt;/b&gt;&lt;p&gt;Run unittest with current project.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
+        <location filename="../UI/UserInterface.py" line="2386"/>
         <source>UI Previewer</source>
         <translation>UI Öngörünümü</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
+        <location filename="../UI/UserInterface.py" line="2386"/>
         <source>&amp;UI Previewer...</source>
         <translation>&amp;UI Öngörünümü...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2388"/>
+        <location filename="../UI/UserInterface.py" line="2391"/>
         <source>Start the UI Previewer</source>
         <translation>UI Öngörünümünü Başlat</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2389"/>
+        <location filename="../UI/UserInterface.py" line="2392"/>
         <source>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Start the UI Previewer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;UI Öngörünümü&lt;/b&gt;&lt;p&gt;UI Öngörünümünü Başlat.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
+        <location filename="../UI/UserInterface.py" line="2399"/>
         <source>Translations Previewer</source>
         <translation>Çevirilerin Öngörünümleri</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
+        <location filename="../UI/UserInterface.py" line="2399"/>
         <source>&amp;Translations Previewer...</source>
         <translation>Çevirilerin &amp;Öngörünümleri...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2401"/>
+        <location filename="../UI/UserInterface.py" line="2404"/>
         <source>Start the Translations Previewer</source>
         <translation>Çevirilerin Öngörünümlerini Başlat</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2403"/>
+        <location filename="../UI/UserInterface.py" line="2406"/>
         <source>&lt;b&gt;Translations Previewer&lt;/b&gt;&lt;p&gt;Start the Translations Previewer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Çeviri Öngörünümü&lt;/b&gt;&lt;p&gt;Çeviri Öngörünümünü Başlat.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
+        <location filename="../UI/UserInterface.py" line="2413"/>
         <source>Compare Files</source>
         <translation>Dosyaları Karşılaştır</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
+        <location filename="../UI/UserInterface.py" line="2413"/>
         <source>&amp;Compare Files...</source>
         <translation>D&amp;osyaları Karşılaştır...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2428"/>
+        <location filename="../UI/UserInterface.py" line="2431"/>
         <source>Compare two files</source>
         <translation>İki dosyayı karşılaştır</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2416"/>
+        <location filename="../UI/UserInterface.py" line="2419"/>
         <source>&lt;b&gt;Compare Files&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Dosyaları Karşılaştır&lt;/b&gt;&lt;p&gt;İki dosyayı karşılaştırmak için diyalog aç.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
+        <location filename="../UI/UserInterface.py" line="2426"/>
         <source>Compare Files side by side</source>
         <translation>Dosyaları yan yana karşılaştır</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2429"/>
+        <location filename="../UI/UserInterface.py" line="2432"/>
         <source>&lt;b&gt;Compare Files side by side&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files and show the result side by side.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Dosyaları biribir karşılaştır&lt;/b&gt;&lt;p&gt;İki dosyayı karşılaştırmak için bir diyalog aç ve sonuçları yan yana göster.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
+        <location filename="../UI/UserInterface.py" line="2440"/>
         <source>SQL Browser</source>
         <translation>SQL Gözatıcısı</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
+        <location filename="../UI/UserInterface.py" line="2440"/>
         <source>SQL &amp;Browser...</source>
         <translation>SQL &amp;Gözatıcısı...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2442"/>
+        <location filename="../UI/UserInterface.py" line="2445"/>
         <source>Browse a SQL database</source>
         <translation>Bir SQL veritabanına gözat</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2443"/>
+        <location filename="../UI/UserInterface.py" line="2446"/>
         <source>&lt;b&gt;SQL Browser&lt;/b&gt;&lt;p&gt;Browse a SQL database.&lt;/p&gt;</source>
         <translation>&lt;b&gt;SQL Gözatıcısı&lt;/b&gt;&lt;p&gt;Bir SQL veritabanına gözat.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2455"/>
+        <location filename="../UI/UserInterface.py" line="2458"/>
         <source>Mini Editor</source>
         <translation>Mini Düzenleyici</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2450"/>
+        <location filename="../UI/UserInterface.py" line="2453"/>
         <source>Mini &amp;Editor...</source>
         <translation>Mini &amp;Düzenleyici...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2456"/>
+        <location filename="../UI/UserInterface.py" line="2459"/>
         <source>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Open a dialog with a simplified editor.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Mini Düzenleyici&lt;/b&gt;&lt;p&gt;Basit bir düzenleyci ile bir diyalog açılır.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
+        <location filename="../UI/UserInterface.py" line="2495"/>
         <source>Icon Editor</source>
         <translation>İkon Düzenleyici</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
+        <location filename="../UI/UserInterface.py" line="2495"/>
         <source>&amp;Icon Editor...</source>
         <translation>&amp;İkon Düzenleyici...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
+        <location filename="../UI/UserInterface.py" line="2524"/>
         <source>Preferences</source>
         <translation>Seçenekler</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
+        <location filename="../UI/UserInterface.py" line="2524"/>
         <source>&amp;Preferences...</source>
         <translation>&amp;Seçenekler...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2526"/>
+        <location filename="../UI/UserInterface.py" line="2529"/>
         <source>Set the prefered configuration</source>
         <translation>tercih edilen ayarları yapınız</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2528"/>
+        <location filename="../UI/UserInterface.py" line="2531"/>
         <source>&lt;b&gt;Preferences&lt;/b&gt;&lt;p&gt;Set the configuration items of the application with your prefered values.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Tercihler&lt;/b&gt;&lt;p&gt;Uygulamanın ayarlama maddelerini tercih ettiğiniz değerlerle ayarlayınız.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
+        <location filename="../UI/UserInterface.py" line="2540"/>
         <source>Export Preferences</source>
         <translation>Seçenekleri Dışa Aktar</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
+        <location filename="../UI/UserInterface.py" line="2540"/>
         <source>E&amp;xport Preferences...</source>
         <translation>Tercihleri Dı&amp;şa Aktar...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2542"/>
+        <location filename="../UI/UserInterface.py" line="2545"/>
         <source>Export the current configuration</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2544"/>
+        <location filename="../UI/UserInterface.py" line="2547"/>
         <source>&lt;b&gt;Export Preferences&lt;/b&gt;&lt;p&gt;Export the current configuration to a file.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
+        <location filename="../UI/UserInterface.py" line="2554"/>
         <source>Import Preferences</source>
         <translation>Seçenekleri İçe Aktar</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
+        <location filename="../UI/UserInterface.py" line="2554"/>
         <source>I&amp;mport Preferences...</source>
         <translation>Tercihleri İ&amp;çeri Aktar...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2556"/>
+        <location filename="../UI/UserInterface.py" line="2559"/>
         <source>Import a previously exported configuration</source>
         <translation>daha önce dışa aktarılan ayrlamaları içe aktar</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2558"/>
+        <location filename="../UI/UserInterface.py" line="2561"/>
         <source>&lt;b&gt;Import Preferences&lt;/b&gt;&lt;p&gt;Import a previously exported configuration.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
+        <location filename="../UI/UserInterface.py" line="2568"/>
         <source>Reload APIs</source>
         <translation>API&apos;leri yeniden yükle</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
+        <location filename="../UI/UserInterface.py" line="2568"/>
         <source>Reload &amp;APIs</source>
         <translation>&amp;API&apos;leri yeniden yükle</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2569"/>
+        <location filename="../UI/UserInterface.py" line="2572"/>
         <source>Reload the API information</source>
         <translation>API bilgisini yeniden yükle</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2571"/>
+        <location filename="../UI/UserInterface.py" line="2574"/>
         <source>&lt;b&gt;Reload APIs&lt;/b&gt;&lt;p&gt;Reload the API information.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2583"/>
+        <location filename="../UI/UserInterface.py" line="2586"/>
         <source>Show external tools</source>
         <translation>Harici araçları göster</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2578"/>
+        <location filename="../UI/UserInterface.py" line="2581"/>
         <source>Show external &amp;tools</source>
         <translation>Karak&amp;ter tablosunu göster</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
+        <location filename="../UI/UserInterface.py" line="2597"/>
         <source>View Profiles</source>
         <translation>Görünüm Kesiti</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
+        <location filename="../UI/UserInterface.py" line="2597"/>
         <source>&amp;View Profiles...</source>
         <translation>&amp;Görünüm Kesiti...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2599"/>
+        <location filename="../UI/UserInterface.py" line="2602"/>
         <source>Configure view profiles</source>
         <translation>Görünüm kesitlerini ayarla</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2601"/>
+        <location filename="../UI/UserInterface.py" line="2604"/>
         <source>&lt;b&gt;View Profiles&lt;/b&gt;&lt;p&gt;Configure the view profiles. With this dialog you may set the visibility of the various windows for the predetermined view profiles.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
+        <location filename="../UI/UserInterface.py" line="2614"/>
         <source>Toolbars</source>
         <translation>Araççubuğu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
+        <location filename="../UI/UserInterface.py" line="2614"/>
         <source>Tool&amp;bars...</source>
         <translation>Araççu&amp;buğu...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2616"/>
+        <location filename="../UI/UserInterface.py" line="2619"/>
         <source>Configure toolbars</source>
         <translation>Araççubuğunu ayarla</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2617"/>
+        <location filename="../UI/UserInterface.py" line="2620"/>
         <source>&lt;b&gt;Toolbars&lt;/b&gt;&lt;p&gt;Configure the toolbars. With this dialog you may change the actions shown on the various toolbars and define your own toolbars.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
+        <location filename="../UI/UserInterface.py" line="2629"/>
         <source>Keyboard Shortcuts</source>
         <translation>Klavye Kısayolları</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
+        <location filename="../UI/UserInterface.py" line="2629"/>
         <source>Keyboard &amp;Shortcuts...</source>
         <translation>Klavye Kı&amp;sayolları...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2631"/>
+        <location filename="../UI/UserInterface.py" line="2634"/>
         <source>Set the keyboard shortcuts</source>
         <translation>Klavye kısayollarını ayarla</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2633"/>
+        <location filename="../UI/UserInterface.py" line="2636"/>
         <source>&lt;b&gt;Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Set the keyboard shortcuts of the application with your prefered values.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>Export Keyboard Shortcuts</source>
         <translation>Kılavye Kısa Yollarını Dışa Aktar</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2641"/>
+        <location filename="../UI/UserInterface.py" line="2644"/>
         <source>&amp;Export Keyboard Shortcuts...</source>
         <translation>Kılavye Kısa Yo&amp;llarını Dışa Aktar...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2646"/>
+        <location filename="../UI/UserInterface.py" line="2649"/>
         <source>Export the keyboard shortcuts</source>
         <translation>Kılavye kısa yollarını dışa aktar</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2648"/>
+        <location filename="../UI/UserInterface.py" line="2651"/>
         <source>&lt;b&gt;Export Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Export the keyboard shortcuts of the application.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Import Keyboard Shortcuts</source>
         <translation>Klavye kısayollarını İçe Aktar</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2655"/>
+        <location filename="../UI/UserInterface.py" line="2658"/>
         <source>&amp;Import Keyboard Shortcuts...</source>
         <translation>Klavye K&amp;ısayollarını İçe Aktar...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2660"/>
+        <location filename="../UI/UserInterface.py" line="2663"/>
         <source>Import the keyboard shortcuts</source>
         <translation>Klavye kısayolları içeri aktarılıyor</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2662"/>
+        <location filename="../UI/UserInterface.py" line="2665"/>
         <source>&lt;b&gt;Import Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Import the keyboard shortcuts of the application.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
+        <location filename="../UI/UserInterface.py" line="2723"/>
         <source>Activate current editor</source>
         <translation>Geçerli düzenleyiciyi aktif yap</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
+        <location filename="../UI/UserInterface.py" line="2723"/>
         <source>Alt+Shift+E</source>
         <translation>Alt+Shift+E</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
+        <location filename="../UI/UserInterface.py" line="2733"/>
         <source>Show next</source>
         <translation>Sonrakini göster</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
+        <location filename="../UI/UserInterface.py" line="2733"/>
         <source>Ctrl+Alt+Tab</source>
         <translation>Ctrl+Alt+Tab</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
+        <location filename="../UI/UserInterface.py" line="2742"/>
         <source>Show previous</source>
         <translation>Öncekini göster</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
+        <location filename="../UI/UserInterface.py" line="2742"/>
         <source>Shift+Ctrl+Alt+Tab</source>
         <translation>Shift+Ctrl+Alt+Tab</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
+        <location filename="../UI/UserInterface.py" line="2751"/>
         <source>Switch between tabs</source>
         <translation>Sekmeler arasında değiştir</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
+        <location filename="../UI/UserInterface.py" line="2751"/>
         <source>Ctrl+1</source>
         <translation>Ctrl+1</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
+        <location filename="../UI/UserInterface.py" line="2760"/>
         <source>Plugin Infos</source>
         <translation>Eklenti Bilgisi</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
+        <location filename="../UI/UserInterface.py" line="2760"/>
         <source>&amp;Plugin Infos...</source>
         <translation>Eklenti Bil&amp;gisi...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2761"/>
+        <location filename="../UI/UserInterface.py" line="2764"/>
         <source>Show Plugin Infos</source>
         <translation>Eklenti Bilgisini Göster</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2762"/>
+        <location filename="../UI/UserInterface.py" line="2765"/>
         <source>&lt;b&gt;Plugin Infos...&lt;/b&gt;&lt;p&gt;This opens a dialog, that show some information about loaded plugins.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Eklenti Bilgileri...&lt;/b&gt;&lt;p&gt;Bu yüklenen eklentiler hakkında bazı bilgileri gösteren bir diyalog açar.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2775"/>
+        <location filename="../UI/UserInterface.py" line="2778"/>
         <source>Install Plugins</source>
         <translation>Eklenti Kur</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2770"/>
+        <location filename="../UI/UserInterface.py" line="2773"/>
         <source>&amp;Install Plugins...</source>
         <translation>Ekle&amp;nti Kur...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2776"/>
+        <location filename="../UI/UserInterface.py" line="2779"/>
         <source>&lt;b&gt;Install Plugins...&lt;/b&gt;&lt;p&gt;This opens a dialog to install or update plugins.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Eklenti Kur...&lt;/b&gt;&lt;p&gt;Bu eklenti kurmak yada güncellemek için bir diyalog açar.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2788"/>
+        <location filename="../UI/UserInterface.py" line="2791"/>
         <source>Uninstall Plugin</source>
         <translation>Eklenti Kaldır</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2783"/>
+        <location filename="../UI/UserInterface.py" line="2786"/>
         <source>&amp;Uninstall Plugin...</source>
         <translation>Ekle&amp;nti Kaldır...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2789"/>
+        <location filename="../UI/UserInterface.py" line="2792"/>
         <source>&lt;b&gt;Uninstall Plugin...&lt;/b&gt;&lt;p&gt;This opens a dialog to uninstall a plugin.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Eklenti Kaldır...&lt;/b&gt;&lt;p&gt;Bu bir eklentiyi kaldırmak için bir diyalog açar.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
+        <location filename="../UI/UserInterface.py" line="2799"/>
         <source>Plugin Repository</source>
         <translation>Eklenti Havuzu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
+        <location filename="../UI/UserInterface.py" line="2799"/>
         <source>Plugin &amp;Repository...</source>
         <translation>Eklenti Hav&amp;uzu...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2801"/>
+        <location filename="../UI/UserInterface.py" line="2804"/>
         <source>Show Plugins available for download</source>
         <translation>İndirme için uygun olan eklentileri göster</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2803"/>
+        <location filename="../UI/UserInterface.py" line="2806"/>
         <source>&lt;b&gt;Plugin Repository...&lt;/b&gt;&lt;p&gt;This opens a dialog, that shows a list of plugins available on the Internet.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Eklenti Kaynak Havuzu...&lt;/b&gt;&lt;p&gt;Bu internette hazır olan eklentilerin listelendiği bir diyalog açar.&lt;/p&gt;</translation>
     </message>
@@ -80578,7 +80717,7 @@
         <translation type="obsolete">PyQt4 Begelerini aç</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2953"/>
+        <location filename="../UI/UserInterface.py" line="2956"/>
         <source>Eric API Documentation</source>
         <translation>Eric API Belgeleri</translation>
     </message>
@@ -80588,7 +80727,7 @@
         <translation type="obsolete">&amp;Eric API Dökümanı</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2957"/>
+        <location filename="../UI/UserInterface.py" line="2960"/>
         <source>Open Eric API Documentation</source>
         <translation>Eric API Belgelerini Aç</translation>
     </message>
@@ -80608,112 +80747,112 @@
         <translation type="obsolete">PySide belgelerini açın</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3158"/>
+        <location filename="../UI/UserInterface.py" line="3161"/>
         <source>&amp;Unittest</source>
         <translation>Bir&amp;imtest</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3102"/>
+        <location filename="../UI/UserInterface.py" line="3105"/>
         <source>E&amp;xtras</source>
         <translation>İla&amp;veler</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3112"/>
+        <location filename="../UI/UserInterface.py" line="3115"/>
         <source>Wi&amp;zards</source>
         <translation>Sihirba&amp;z</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3175"/>
+        <location filename="../UI/UserInterface.py" line="3178"/>
         <source>Select Tool Group</source>
         <translation>Araç Grubunu Seç</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3186"/>
+        <location filename="../UI/UserInterface.py" line="3189"/>
         <source>Se&amp;ttings</source>
         <translation>Ayar&amp;lar</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3216"/>
+        <location filename="../UI/UserInterface.py" line="3219"/>
         <source>&amp;Window</source>
         <translation>&amp;Pencere</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3277"/>
+        <location filename="../UI/UserInterface.py" line="3280"/>
         <source>&amp;Toolbars</source>
         <translation>&amp;Araççubuğu</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3139"/>
+        <location filename="../UI/UserInterface.py" line="3142"/>
         <source>P&amp;lugins</source>
         <translation>Ek&amp;lentiler</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3148"/>
+        <location filename="../UI/UserInterface.py" line="3151"/>
         <source>Configure...</source>
         <translation>Ayarlanıyor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3291"/>
+        <location filename="../UI/UserInterface.py" line="3294"/>
         <source>&amp;Help</source>
         <translation>&amp;Yardım</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3364"/>
+        <location filename="../UI/UserInterface.py" line="3367"/>
         <source>Tools</source>
         <translation>Araçlar</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3366"/>
-        <source>Settings</source>
-        <translation>Ayarlar</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
-        <source>Help</source>
-        <translation>Yardım</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3368"/>
-        <source>Profiles</source>
-        <translation>Kesitler</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="3369"/>
+        <source>Settings</source>
+        <translation>Ayarlar</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5216"/>
+        <source>Help</source>
+        <translation>Yardım</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3371"/>
+        <source>Profiles</source>
+        <translation>Kesitler</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3372"/>
         <source>Plugins</source>
         <translation>Eklentiler</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3534"/>
+        <location filename="../UI/UserInterface.py" line="3537"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors language.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3541"/>
+        <location filename="../UI/UserInterface.py" line="3544"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors encoding.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3548"/>
+        <location filename="../UI/UserInterface.py" line="3551"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors eol setting.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3555"/>
+        <location filename="../UI/UserInterface.py" line="3558"/>
         <source>&lt;p&gt;This part of the status bar displays an indication of the current editors files writability.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3562"/>
+        <location filename="../UI/UserInterface.py" line="3565"/>
         <source>&lt;p&gt;This part of the status bar displays the line number of the current editor.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3569"/>
+        <location filename="../UI/UserInterface.py" line="3572"/>
         <source>&lt;p&gt;This part of the status bar displays the cursor position of the current editor.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3640"/>
+        <location filename="../UI/UserInterface.py" line="3643"/>
         <source>External Tools/{0}</source>
         <translation>Harici Araçlar/{0}</translation>
     </message>
@@ -80723,52 +80862,52 @@
         <translation type="obsolete">&lt;h3&gt;Sürüm Numaraları&lt;/h3&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7268"/>
+        <location filename="../UI/UserInterface.py" line="7295"/>
         <source>&lt;/table&gt;</source>
         <translation>&lt;/table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Email address or mail server address is empty. Please configure your Email settings in the Preferences Dialog.</source>
         <translation>E-posta adresi veya posta  sunucu adresi  boş. Lütfen e-posta ayarlarını özellikler diyaloğundan giriniz.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>Restart application</source>
         <translation>Uygulmayı yeniden başlat</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>The application needs to be restarted. Do it now?</source>
         <translation>Uygulama yeniden başlatılmaya ihtiyaç duyuyor. Şimdi yapılsın mı?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4207"/>
+        <location filename="../UI/UserInterface.py" line="4210"/>
         <source>Configure Tool Groups ...</source>
         <translation>Alet Grupları Ayarlanıyor...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4211"/>
+        <location filename="../UI/UserInterface.py" line="4214"/>
         <source>Configure current Tool Group ...</source>
         <translation>Geçerli alet grubunu ayarla...</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4162"/>
+        <location filename="../UI/UserInterface.py" line="4165"/>
         <source>&amp;Builtin Tools</source>
         <translation>Ya&amp;pılandırma Araçları</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4179"/>
+        <location filename="../UI/UserInterface.py" line="4182"/>
         <source>&amp;Plugin Tools</source>
         <translation>Eklen&amp;ti Araçları</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4326"/>
+        <location filename="../UI/UserInterface.py" line="4329"/>
         <source>&amp;Show all</source>
         <translation>Hepsini Gö&amp;ster</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4328"/>
+        <location filename="../UI/UserInterface.py" line="4331"/>
         <source>&amp;Hide all</source>
         <translation>&amp;Hepsini gizle</translation>
     </message>
@@ -80783,109 +80922,109 @@
         <translation type="obsolete">Qt3 Desteği</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>Problem</source>
         <translation>Problem</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not exist or is zero length.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../UI/UserInterface.py" line="5552"/>
+        <source>Process Generation Error</source>
+        <translation>İşlem Üretecinde Hata</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5069"/>
+        <source>&lt;p&gt;Could not start Qt-Designer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5139"/>
+        <source>&lt;p&gt;Could not start Qt-Linguist.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5183"/>
+        <source>&lt;p&gt;Could not start Qt-Assistant.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5216"/>
+        <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source>
+        <translation>Hali hazırda kullanıcı göstericisi seçilmedi. Lütfen .birini belirlemek için özellikler diyaloğunu kullanının.</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5230"/>
+        <source>&lt;p&gt;Could not start custom viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5250"/>
+        <source>&lt;p&gt;Could not start the help viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5300"/>
+        <source>&lt;p&gt;Could not start UI Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5357"/>
+        <source>&lt;p&gt;Could not start Translation Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5380"/>
+        <source>&lt;p&gt;Could not start SQL Browser.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5497"/>
+        <source>External Tools</source>
+        <translation>Harici Araçlar</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5488"/>
+        <source>No tool entry found for external tool &apos;{0}&apos; in tool group &apos;{1}&apos;.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5497"/>
+        <source>No toolgroup entry &apos;{0}&apos; found.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../UI/UserInterface.py" line="5536"/>
-        <source>Process Generation Error</source>
-        <translation>İşlem Üretecinde Hata</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5066"/>
-        <source>&lt;p&gt;Could not start Qt-Designer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5136"/>
-        <source>&lt;p&gt;Could not start Qt-Linguist.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5180"/>
-        <source>&lt;p&gt;Could not start Qt-Assistant.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
-        <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source>
-        <translation>Hali hazırda kullanıcı göstericisi seçilmedi. Lütfen .birini belirlemek için özellikler diyaloğunu kullanının.</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5227"/>
-        <source>&lt;p&gt;Could not start custom viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5247"/>
-        <source>&lt;p&gt;Could not start the help viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5297"/>
-        <source>&lt;p&gt;Could not start UI Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5354"/>
-        <source>&lt;p&gt;Could not start Translation Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5377"/>
-        <source>&lt;p&gt;Could not start SQL Browser.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
-        <source>External Tools</source>
-        <translation>Harici Araçlar</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5472"/>
-        <source>No tool entry found for external tool &apos;{0}&apos; in tool group &apos;{1}&apos;.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
-        <source>No toolgroup entry &apos;{0}&apos; found.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5520"/>
         <source>Starting process &apos;{0} {1}&apos;.
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5536"/>
+        <location filename="../UI/UserInterface.py" line="5552"/>
         <source>&lt;p&gt;Could not start the tool entry &lt;b&gt;{0}&lt;/b&gt;.&lt;br&gt;Ensure that it is available as &lt;b&gt;{1}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5614"/>
+        <location filename="../UI/UserInterface.py" line="5630"/>
         <source>Process &apos;{0}&apos; has exited.
 </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>Documentation Missing</source>
         <translation>Eksik Belgeleme</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>&lt;p&gt;The documentation starting point &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; could not be found.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>Documentation</source>
         <translation>Belgeleme</translation>
     </message>
@@ -80905,508 +81044,508 @@
         <translation type="obsolete">Görevler Okunuyor</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1673"/>
+        <location filename="../UI/UserInterface.py" line="1676"/>
         <source>Save session</source>
         <translation>Oturumu kaydet</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6550"/>
+        <location filename="../UI/UserInterface.py" line="6566"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>Read session</source>
         <translation>Oturumu oku</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>Drop Error</source>
         <translation>Düşme hatası</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; is not a file.&lt;/p&gt;</source>
         <translation>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; bir dosya değil.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>&amp;Cancel</source>
         <translation>&amp;Vazgeç</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7059"/>
+        <location filename="../UI/UserInterface.py" line="7086"/>
         <source>Trying host {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>Update available</source>
         <translation>Güncelleme mümkün değil</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Error during updates check</source>
         <translation>Güncellemeleri kontrol esnasında hata</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Could not perform updates check.</source>
         <translation>Güncellemelere ulaşamıyorum.</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7253"/>
+        <location filename="../UI/UserInterface.py" line="7280"/>
         <source>&lt;h3&gt;Available versions&lt;/h3&gt;&lt;table&gt;</source>
         <translation>&lt;h3&gt;Mümkün sürümler&lt;/h3&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>First time usage</source>
         <translation>İlk kullanım</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1180"/>
+        <location filename="../UI/UserInterface.py" line="1183"/>
         <source>Symbols</source>
         <translation>Semboller</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1189"/>
+        <location filename="../UI/UserInterface.py" line="1192"/>
         <source>Numbers</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Alt+Shift+Y</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Alt+Shift+B</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2931"/>
+        <location filename="../UI/UserInterface.py" line="2934"/>
         <source>Python 3 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2935"/>
+        <location filename="../UI/UserInterface.py" line="2938"/>
         <source>Open Python 3 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>Error getting versions information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7111"/>
+        <location filename="../UI/UserInterface.py" line="7138"/>
         <source>The versions information could not be downloaded. Please go online and try again.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Open Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Could not start a web browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>The versions information could not be downloaded for the last 7 days. Please go online and try again.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="692"/>
+        <location filename="../UI/UserInterface.py" line="695"/>
         <source>Setting View Profile...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="705"/>
+        <location filename="../UI/UserInterface.py" line="708"/>
         <source>Reading Tasks...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="710"/>
+        <location filename="../UI/UserInterface.py" line="713"/>
         <source>Reading Templates...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="715"/>
+        <location filename="../UI/UserInterface.py" line="718"/>
         <source>Starting Debugger...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New Window</source>
         <translation type="unfinished">Yeni Pencere</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New &amp;Window</source>
         <translation type="unfinished">Yeni &amp;Pencere</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>Ctrl+Shift+N</source>
         <comment>File|New Window</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Unittest Rerun Failed</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Rerun Failed Tests...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2289"/>
+        <location filename="../UI/UserInterface.py" line="2292"/>
         <source>Rerun failed tests of the last run</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2291"/>
+        <location filename="../UI/UserInterface.py" line="2294"/>
         <source>&lt;b&gt;Rerun Failed Tests&lt;/b&gt;&lt;p&gt;Rerun all tests that failed during the last unittest run.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
+        <location filename="../UI/UserInterface.py" line="2426"/>
         <source>Compare &amp;Files side by side...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>Snapshot</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>&amp;Snapshot...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2511"/>
+        <location filename="../UI/UserInterface.py" line="2514"/>
         <source>Take snapshots of a screen region</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2513"/>
+        <location filename="../UI/UserInterface.py" line="2516"/>
         <source>&lt;b&gt;Snapshot&lt;/b&gt;&lt;p&gt;This opens a dialog to take snapshots of a screen region.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5449"/>
+        <location filename="../UI/UserInterface.py" line="5465"/>
         <source>&lt;p&gt;Could not start Snapshot tool.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7324"/>
+        <location filename="../UI/UserInterface.py" line="7351"/>
         <source>Select Workspace Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
-        <source>Left Toolbox</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
-        <source>Right Toolbox</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1754"/>
-        <source>Switch the input focus to the Project-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1756"/>
-        <source>&lt;b&gt;Activate Project-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Project-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1771"/>
-        <source>Switch the input focus to the Multiproject-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1773"/>
-        <source>&lt;b&gt;Activate Multiproject-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Multiproject-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1789"/>
-        <source>Switch the input focus to the Debug-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1791"/>
-        <source>&lt;b&gt;Activate Debug-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Debug-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1807"/>
-        <source>Switch the input focus to the Shell window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1809"/>
-        <source>&lt;b&gt;Activate Shell&lt;/b&gt;&lt;p&gt;This switches the input focus to the Shell window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
-        <source>&amp;File-Browser</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1824"/>
-        <source>Switch the input focus to the File-Browser window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1826"/>
-        <source>&lt;b&gt;Activate File-Browser&lt;/b&gt;&lt;p&gt;This switches the input focus to the File-Browser window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
-        <source>Lo&amp;g-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1841"/>
-        <source>Switch the input focus to the Log-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1843"/>
-        <source>&lt;b&gt;Activate Log-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Log-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
-        <source>&amp;Task-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1859"/>
-        <source>Switch the input focus to the Task-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
-        <source>Templ&amp;ate-Viewer</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1878"/>
-        <source>Switch the input focus to the Template-Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1880"/>
-        <source>&lt;b&gt;Activate Template-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Template-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
-        <source>&amp;Left Toolbox</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="1893"/>
+        <source>Left Toolbox</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1905"/>
+        <source>Right Toolbox</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1757"/>
+        <source>Switch the input focus to the Project-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1759"/>
+        <source>&lt;b&gt;Activate Project-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Project-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1774"/>
+        <source>Switch the input focus to the Multiproject-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1776"/>
+        <source>&lt;b&gt;Activate Multiproject-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Multiproject-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1792"/>
+        <source>Switch the input focus to the Debug-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1794"/>
+        <source>&lt;b&gt;Activate Debug-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Debug-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1810"/>
+        <source>Switch the input focus to the Shell window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1812"/>
+        <source>&lt;b&gt;Activate Shell&lt;/b&gt;&lt;p&gt;This switches the input focus to the Shell window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1821"/>
+        <source>&amp;File-Browser</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1827"/>
+        <source>Switch the input focus to the File-Browser window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1829"/>
+        <source>&lt;b&gt;Activate File-Browser&lt;/b&gt;&lt;p&gt;This switches the input focus to the File-Browser window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1838"/>
+        <source>Lo&amp;g-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1844"/>
+        <source>Switch the input focus to the Log-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1846"/>
+        <source>&lt;b&gt;Activate Log-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Log-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1856"/>
+        <source>&amp;Task-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1862"/>
+        <source>Switch the input focus to the Task-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1875"/>
+        <source>Templ&amp;ate-Viewer</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1881"/>
+        <source>Switch the input focus to the Template-Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1883"/>
+        <source>&lt;b&gt;Activate Template-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Template-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1893"/>
+        <source>&amp;Left Toolbox</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1896"/>
         <source>Toggle the Left Toolbox window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1894"/>
+        <location filename="../UI/UserInterface.py" line="1897"/>
         <source>&lt;b&gt;Toggle the Left Toolbox window&lt;/b&gt;&lt;p&gt;If the Left Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>&amp;Right Toolbox</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1906"/>
+        <location filename="../UI/UserInterface.py" line="1909"/>
         <source>Toggle the Right Toolbox window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1907"/>
+        <location filename="../UI/UserInterface.py" line="1910"/>
         <source>&lt;b&gt;Toggle the Right Toolbox window&lt;/b&gt;&lt;p&gt;If the Right Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>Right Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>&amp;Right Sidebar</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1946"/>
+        <location filename="../UI/UserInterface.py" line="1949"/>
         <source>Toggle the right sidebar window</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1948"/>
+        <location filename="../UI/UserInterface.py" line="1951"/>
         <source>&lt;b&gt;Toggle the right sidebar window&lt;/b&gt;&lt;p&gt;If the right sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Cooperation-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Co&amp;operation-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1977"/>
+        <location filename="../UI/UserInterface.py" line="1980"/>
         <source>Switch the input focus to the Cooperation-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1979"/>
+        <location filename="../UI/UserInterface.py" line="1982"/>
         <source>&lt;b&gt;Activate Cooperation-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Cooperation-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Symbols-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>S&amp;ymbols-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2014"/>
+        <location filename="../UI/UserInterface.py" line="2017"/>
         <source>Switch the input focus to the Symbols-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2016"/>
+        <location filename="../UI/UserInterface.py" line="2019"/>
         <source>&lt;b&gt;Activate Symbols-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Symbols-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Numbers-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Num&amp;bers-Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2033"/>
+        <location filename="../UI/UserInterface.py" line="2036"/>
         <source>Switch the input focus to the Numbers-Viewer window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2035"/>
+        <location filename="../UI/UserInterface.py" line="2038"/>
         <source>&lt;b&gt;Activate Numbers-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Numbers-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3225"/>
+        <location filename="../UI/UserInterface.py" line="3228"/>
         <source>&amp;Windows</source>
         <translation type="unfinished">&amp;Pencereler</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1861"/>
+        <location filename="../UI/UserInterface.py" line="1864"/>
         <source>&lt;b&gt;Activate Task-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Task-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>IRC</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>&amp;IRC</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1996"/>
+        <location filename="../UI/UserInterface.py" line="1999"/>
         <source>Switch the input focus to the IRC window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1998"/>
+        <location filename="../UI/UserInterface.py" line="2001"/>
         <source>&lt;b&gt;Activate IRC&lt;/b&gt;&lt;p&gt;This switches the input focus to the IRC window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-Designer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-&amp;Designer...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2347"/>
+        <location filename="../UI/UserInterface.py" line="2350"/>
         <source>Start Qt-Designer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2348"/>
+        <location filename="../UI/UserInterface.py" line="2351"/>
         <source>&lt;b&gt;Qt-Designer&lt;/b&gt;&lt;p&gt;Start Qt-Designer.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-Linguist</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-&amp;Linguist...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2373"/>
+        <location filename="../UI/UserInterface.py" line="2376"/>
         <source>Start Qt-Linguist</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2374"/>
+        <location filename="../UI/UserInterface.py" line="2377"/>
         <source>&lt;b&gt;Qt-Linguist&lt;/b&gt;&lt;p&gt;Start Qt-Linguist.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2862"/>
+        <location filename="../UI/UserInterface.py" line="2865"/>
         <source>Qt5 Documentation</source>
         <translation type="unfinished">Qt4 Belgeleri {5 ?}</translation>
     </message>
@@ -81416,57 +81555,57 @@
         <translation type="obsolete">Qt&amp;4 Belgeleri {5 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2866"/>
+        <location filename="../UI/UserInterface.py" line="2869"/>
         <source>Open Qt5 Documentation</source>
         <translation type="unfinished">QT4 Belgelerini Aç {5 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2675"/>
+        <location filename="../UI/UserInterface.py" line="2678"/>
         <source>Manage the saved SSL certificates</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2677"/>
+        <location filename="../UI/UserInterface.py" line="2680"/>
         <source>&lt;b&gt;Manage SSL Certificates...&lt;/b&gt;&lt;p&gt;Opens a dialog to manage the saved SSL certificates.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2691"/>
+        <location filename="../UI/UserInterface.py" line="2694"/>
         <source>Edit the message filters used to suppress unwanted messages</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2693"/>
+        <location filename="../UI/UserInterface.py" line="2696"/>
         <source>&lt;b&gt;Edit Message Filters&lt;/b&gt;&lt;p&gt;Opens a dialog to edit the message filters used to suppress unwanted messages been shown in an error window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2892"/>
+        <location filename="../UI/UserInterface.py" line="2895"/>
         <source>PyQt5 Documentation</source>
         <translation type="unfinished">PyQt4 Belgeleri {5 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2896"/>
+        <location filename="../UI/UserInterface.py" line="2899"/>
         <source>Open PyQt5 Documentation</source>
         <translation type="unfinished">PyQt4 Begelerini aç {5 ?}</translation>
     </message>
@@ -81476,32 +81615,32 @@
         <translation type="obsolete">&lt;p&gt;PyQt4 Belgelerinin başlama noktası ayarlanmamış.&lt;/p&gt; {5 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2937"/>
+        <location filename="../UI/UserInterface.py" line="2940"/>
         <source>&lt;b&gt;Python 3 Documentation&lt;/b&gt;&lt;p&gt;Display the Python 3 documentation. If no documentation directory is configured, the location of the Python 3 documentation is assumed to be the doc directory underneath the location of the Python 3 executable on Windows and &lt;i&gt;/usr/share/doc/packages/python/html&lt;/i&gt; on Unix. Set PYTHON3DOCDIR in your environment to override this.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>%v/%m</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2207"/>
+        <location filename="../UI/UserInterface.py" line="2210"/>
         <source>Show Error Log</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2203"/>
+        <location filename="../UI/UserInterface.py" line="2206"/>
         <source>Show Error &amp;Log...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2208"/>
+        <location filename="../UI/UserInterface.py" line="2211"/>
         <source>&lt;b&gt;Show Error Log...&lt;/b&gt;&lt;p&gt;Opens a dialog showing the most recent error log.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7054"/>
+        <location filename="../UI/UserInterface.py" line="7081"/>
         <source>Version Check</source>
         <translation type="unfinished"></translation>
     </message>
@@ -81536,528 +81675,528 @@
         <translation type="obsolete">Eric5 henüz ayarlanmadı. Ayarlar Diyaloğu başlatılıyor. {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="669"/>
+        <location filename="../UI/UserInterface.py" line="672"/>
         <source>Generating Plugins Toolbars...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4182"/>
+        <location filename="../UI/UserInterface.py" line="4185"/>
         <source>&amp;User Tools</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4252"/>
+        <location filename="../UI/UserInterface.py" line="4255"/>
         <source>No User Tools Configured</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
+        <location filename="../UI/UserInterface.py" line="2466"/>
         <source>Hex Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
+        <location filename="../UI/UserInterface.py" line="2466"/>
         <source>&amp;Hex Editor...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2709"/>
+        <location filename="../UI/UserInterface.py" line="2712"/>
         <source>Clear private data</source>
         <translation type="unfinished">Özel verileri temizle</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2711"/>
+        <location filename="../UI/UserInterface.py" line="2714"/>
         <source>&lt;b&gt;Clear private data&lt;/b&gt;&lt;p&gt;Clears the private data like the various list of recently opened files, projects or multi projects.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1669"/>
+        <location filename="../UI/UserInterface.py" line="1672"/>
         <source>Save session...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1674"/>
+        <location filename="../UI/UserInterface.py" line="1677"/>
         <source>&lt;b&gt;Save session...&lt;/b&gt;&lt;p&gt;This saves the current session to disk. A dialog is opened to select the file name.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>Load session</source>
         <translation type="unfinished">Oturum yükleniyor</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1682"/>
+        <location filename="../UI/UserInterface.py" line="1685"/>
         <source>Load session...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1687"/>
+        <location filename="../UI/UserInterface.py" line="1690"/>
         <source>&lt;b&gt;Load session...&lt;/b&gt;&lt;p&gt;This loads a session saved to disk previously. A dialog is opened to select the file name.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
+        <location filename="../UI/UserInterface.py" line="6710"/>
         <source>Crash Session found!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
+        <location filename="../UI/UserInterface.py" line="6710"/>
         <source>A session file of a crashed session was found. Shall this session be restored?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="672"/>
+        <location filename="../UI/UserInterface.py" line="675"/>
         <source>Cleaning Plugins Download Area...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="664"/>
+        <location filename="../UI/UserInterface.py" line="667"/>
         <source>Initializing Plugins...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>Update Check</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>You installed eric directly from the source code. There is no possibility to check for the availability of an update.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Code Documentation Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2867"/>
+        <location filename="../UI/UserInterface.py" line="2870"/>
         <source>&lt;b&gt;Qt5 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2898"/>
+        <location filename="../UI/UserInterface.py" line="2901"/>
         <source>&lt;b&gt;PyQt5 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2974"/>
+        <location filename="../UI/UserInterface.py" line="2977"/>
         <source>PySide2 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2978"/>
+        <location filename="../UI/UserInterface.py" line="2981"/>
         <source>Open PySide2 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2980"/>
+        <location filename="../UI/UserInterface.py" line="2983"/>
         <source>&lt;b&gt;PySide2 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide2 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>&lt;p&gt;The PySide{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2817"/>
+        <location filename="../UI/UserInterface.py" line="2820"/>
         <source>Virtualenv Manager</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2811"/>
+        <location filename="../UI/UserInterface.py" line="2814"/>
         <source>&amp;Virtualenv Manager...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2819"/>
+        <location filename="../UI/UserInterface.py" line="2822"/>
         <source>&lt;b&gt;Virtualenv Manager&lt;/b&gt;&lt;p&gt;This opens a dialog to manage the defined Python virtual environments.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2834"/>
+        <location filename="../UI/UserInterface.py" line="2837"/>
         <source>Virtualenv Configurator</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2828"/>
+        <location filename="../UI/UserInterface.py" line="2831"/>
         <source>Virtualenv &amp;Configurator...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2836"/>
+        <location filename="../UI/UserInterface.py" line="2839"/>
         <source>&lt;b&gt;Virtualenv Configurator&lt;/b&gt;&lt;p&gt;This opens a dialog for entering all the parameters needed to create a Python virtual environment using virtualenv or pyvenv.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3232"/>
+        <location filename="../UI/UserInterface.py" line="3235"/>
         <source>Left Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3244"/>
+        <location filename="../UI/UserInterface.py" line="3247"/>
         <source>Bottom Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3251"/>
+        <location filename="../UI/UserInterface.py" line="3254"/>
         <source>Right Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3271"/>
+        <location filename="../UI/UserInterface.py" line="3274"/>
         <source>Plug-ins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Restart</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Ctrl+Shift+Q</source>
         <comment>File|Quit</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1659"/>
+        <location filename="../UI/UserInterface.py" line="1662"/>
         <source>Restart the IDE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1660"/>
+        <location filename="../UI/UserInterface.py" line="1663"/>
         <source>&lt;b&gt;Restart the IDE&lt;/b&gt;&lt;p&gt;This restarts the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>Start Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Conda</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>PyPI</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3580"/>
+        <location filename="../UI/UserInterface.py" line="3583"/>
         <source>&lt;p&gt;This part of the status bar allows zooming the current editor or shell.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>MicroPython</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>Ctrl+Alt+Shift+I</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Ctrl+Alt+Shift+D</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2052"/>
-        <source>Switch the input focus to the Code Documentation Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="2055"/>
+        <source>Switch the input focus to the Code Documentation Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2058"/>
         <source>&lt;b&gt;Code Documentation Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Code Documentation Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>Ctrl+Alt+Shift+P</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2072"/>
+        <location filename="../UI/UserInterface.py" line="2075"/>
         <source>Switch the input focus to the PyPI window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2074"/>
+        <location filename="../UI/UserInterface.py" line="2077"/>
         <source>&lt;b&gt;PyPI&lt;/b&gt;&lt;p&gt;This switches the input focus to the PyPI window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Ctrl+Alt+Shift+C</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2090"/>
+        <location filename="../UI/UserInterface.py" line="2093"/>
         <source>Switch the input focus to the Conda window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2092"/>
+        <location filename="../UI/UserInterface.py" line="2095"/>
         <source>&lt;b&gt;Conda&lt;/b&gt;&lt;p&gt;This switches the input focus to the Conda window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>Ctrl+Alt+Shift+M</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2108"/>
+        <location filename="../UI/UserInterface.py" line="2111"/>
         <source>Switch the input focus to the MicroPython window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2110"/>
+        <location filename="../UI/UserInterface.py" line="2113"/>
         <source>&lt;b&gt;MicroPython&lt;/b&gt;&lt;p&gt;This switches the input focus to the MicroPython window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3229"/>
+        <location filename="../UI/UserInterface.py" line="3232"/>
         <source>Central Park</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3746"/>
+        <location filename="../UI/UserInterface.py" line="3749"/>
         <source>&lt;h2&gt;Version Numbers&lt;/h2&gt;&lt;table&gt;</source>
         <translation type="unfinished">&lt;h3&gt;Sürüm Numaraları&lt;/h3&gt;&lt;table&gt; {2&gt;?} {2&gt;?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5075"/>
+        <location filename="../UI/UserInterface.py" line="5078"/>
         <source>&lt;p&gt;Could not find the Qt-Designer executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5145"/>
+        <location filename="../UI/UserInterface.py" line="5148"/>
         <source>&lt;p&gt;Could not find the Qt-Linguist executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5189"/>
+        <location filename="../UI/UserInterface.py" line="5192"/>
         <source>&lt;p&gt;Could not find the Qt-Assistant executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install Info</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install &amp;Info...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2219"/>
+        <location filename="../UI/UserInterface.py" line="2222"/>
         <source>Show Installation Information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2221"/>
+        <location filename="../UI/UserInterface.py" line="2224"/>
         <source>&lt;b&gt;Show Install Info...&lt;/b&gt;&lt;p&gt;Opens a dialog showing some information about the installation process.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2877"/>
+        <location filename="../UI/UserInterface.py" line="2880"/>
         <source>Qt6 Documentation</source>
         <translation type="unfinished">Qt4 Belgeleri {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2881"/>
+        <location filename="../UI/UserInterface.py" line="2884"/>
         <source>Open Qt6 Documentation</source>
         <translation type="unfinished">QT4 Belgelerini Aç {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2882"/>
+        <location filename="../UI/UserInterface.py" line="2885"/>
         <source>&lt;b&gt;Qt6 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2909"/>
+        <location filename="../UI/UserInterface.py" line="2912"/>
         <source>PyQt6 Documentation</source>
         <translation type="unfinished">PyQt4 Belgeleri {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2913"/>
+        <location filename="../UI/UserInterface.py" line="2916"/>
         <source>Open PyQt6 Documentation</source>
         <translation type="unfinished">PyQt4 Begelerini aç {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2915"/>
+        <location filename="../UI/UserInterface.py" line="2918"/>
         <source>&lt;b&gt;PyQt6 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2994"/>
+        <location filename="../UI/UserInterface.py" line="2997"/>
         <source>PySide6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2998"/>
+        <location filename="../UI/UserInterface.py" line="3001"/>
         <source>Open PySide6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3000"/>
+        <location filename="../UI/UserInterface.py" line="3003"/>
         <source>&lt;b&gt;PySide6 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5754"/>
+        <location filename="../UI/UserInterface.py" line="5770"/>
         <source>&lt;p&gt;The PyQt{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1701"/>
+        <location filename="../UI/UserInterface.py" line="1704"/>
         <source>Open a new eric instance</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1703"/>
+        <location filename="../UI/UserInterface.py" line="1706"/>
         <source>&lt;b&gt;New Window&lt;/b&gt;&lt;p&gt;This opens a new instance of the eric IDE.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2146"/>
+        <location filename="../UI/UserInterface.py" line="2149"/>
         <source>&lt;b&gt;Helpviewer&lt;/b&gt;&lt;p&gt;Display the eric web browser. This window will show HTML help files and help from Qt help collections. It has the capability to navigate to links, set bookmarks, print the displayed help and some more features. You may use it to browse the internet as well&lt;/p&gt;&lt;p&gt;If called with a word selected, this word is search in the Qt help collection.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2181"/>
+        <location filename="../UI/UserInterface.py" line="2184"/>
         <source>&lt;b&gt;Check for Updates...&lt;/b&gt;&lt;p&gt;Checks the internet for updates of eric.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2194"/>
+        <location filename="../UI/UserInterface.py" line="2197"/>
         <source>&lt;b&gt;Show downloadable versions...&lt;/b&gt;&lt;p&gt;Shows the eric versions available for download from the internet.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2468"/>
+        <location filename="../UI/UserInterface.py" line="2471"/>
         <source>Start the eric Hex Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2470"/>
+        <location filename="../UI/UserInterface.py" line="2473"/>
         <source>&lt;b&gt;Hex Editor&lt;/b&gt;&lt;p&gt;Starts the eric Hex Editor for viewing or editing binary files.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric &amp;Web Browser...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2483"/>
+        <location filename="../UI/UserInterface.py" line="2486"/>
         <source>Start the eric Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2485"/>
+        <location filename="../UI/UserInterface.py" line="2488"/>
         <source>&lt;b&gt;eric Web Browser&lt;/b&gt;&lt;p&gt;Browse the Internet with the eric Web Browser.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2497"/>
+        <location filename="../UI/UserInterface.py" line="2500"/>
         <source>Start the eric Icon Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2499"/>
+        <location filename="../UI/UserInterface.py" line="2502"/>
         <source>&lt;b&gt;Icon Editor&lt;/b&gt;&lt;p&gt;Starts the eric Icon Editor for editing simple icons.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2585"/>
+        <location filename="../UI/UserInterface.py" line="2588"/>
         <source>&lt;b&gt;Show external tools&lt;/b&gt;&lt;p&gt;Opens a dialog to show the path and versions of all extenal tools used by eric.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2959"/>
+        <location filename="../UI/UserInterface.py" line="2962"/>
         <source>&lt;b&gt;Eric API Documentation&lt;/b&gt;&lt;p&gt;Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric installation directory.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5972"/>
+        <location filename="../UI/UserInterface.py" line="5988"/>
         <source>The eric web browser could not be started.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>&lt;p&gt;The eric web browser is not started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>The update to &lt;b&gt;{0}&lt;/b&gt; of eric is available at &lt;b&gt;{1}&lt;/b&gt;. Would you like to get it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7188"/>
+        <location filename="../UI/UserInterface.py" line="7215"/>
         <source>You are using a snapshot release of eric. A more up-to-date stable release might be available.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>eric is up to date</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>You are using the latest version of eric</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>eric has not been configured yet. The configuration dialog will be started.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6290"/>
+        <location filename="../UI/UserInterface.py" line="6306"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard Shortcuts File (*.e4k)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>&lt;p&gt;The keyboard shortcuts file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard shortcut file (*.e4k)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>Read Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6621"/>
+        <location filename="../UI/UserInterface.py" line="6637"/>
         <source>Save Session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6578"/>
+        <location filename="../UI/UserInterface.py" line="6594"/>
         <source>Read Session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>eric Session Files (*.esj);;eric XML Session Files (*.e5s)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -82138,7 +82277,7 @@
 <context>
     <name>Utilities</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="1420"/>
+        <location filename="../Utilities/__init__.py" line="1421"/>
         <source>&lt;p&gt;You may use %-codes as placeholders in the string. Supported codes are:&lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;column of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;directory of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;filename of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;home directory of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;line of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;path of the current project&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;selected text of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;username of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;the percent sign&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</source>
         <translation>&lt;p&gt;%-alanlarda çeşitli kodları kullanabilirsiniz. Tanımlanan kodlar:&lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;geçerli düzenleyicinin imlecinin sütunu&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;geçerli düzenleyicinin dizini&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;geçerli düzenleyicinin dosya adı&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;geçerli kullancının ana dizini&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;geçerli düzenleyicinin imlecinin satırı&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;geçerli projenin yolu&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;selected text of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;Geçici kullanıcının kullanıcı adı&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;oran işareti&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</translation>
     </message>
@@ -82772,12 +82911,12 @@
 <context>
     <name>VcsMercurialPlugin</name>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="58"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="54"/>
         <source>Version Control - Mercurial</source>
         <translation>Sürüm Kontrol - Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="132"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="124"/>
         <source>Mercurial</source>
         <translation>Mercurial</translation>
     </message>
@@ -85492,27 +85631,27 @@
         <translation>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt;dosyasında kaydedilmemiş değişiklikler var.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4777"/>
+        <location filename="../ViewManager/ViewManager.py" line="4790"/>
         <source>Line: {0:5}</source>
         <translation>Satır: {0:5}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4783"/>
+        <location filename="../ViewManager/ViewManager.py" line="4796"/>
         <source>Pos: {0:5}</source>
         <translation>Pos: {0:5}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5217"/>
+        <location filename="../ViewManager/ViewManager.py" line="5230"/>
         <source>&amp;Clear</source>
         <translation>T&amp;emizle</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5211"/>
+        <location filename="../ViewManager/ViewManager.py" line="5224"/>
         <source>&amp;Add</source>
         <translation>&amp;Ekle</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5214"/>
+        <location filename="../ViewManager/ViewManager.py" line="5227"/>
         <source>&amp;Edit...</source>
         <translation>Düz&amp;en...</translation>
     </message>
@@ -86090,27 +86229,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>Edit Spelling Dictionary</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6233"/>
+        <location filename="../ViewManager/ViewManager.py" line="6246"/>
         <source>Editing {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6215"/>
+        <location filename="../ViewManager/ViewManager.py" line="6228"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6244"/>
+        <location filename="../ViewManager/ViewManager.py" line="6257"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>The spelling dictionary was saved successfully.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -86230,12 +86369,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4804"/>
+        <location filename="../ViewManager/ViewManager.py" line="4817"/>
         <source>Language: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4811"/>
+        <location filename="../ViewManager/ViewManager.py" line="4824"/>
         <source>EOL Mode: {0}</source>
         <translation type="unfinished"></translation>
     </message>
--- a/eric6/i18n/eric6_zh_CN.ts	Sat May 01 14:27:38 2021 +0200
+++ b/eric6/i18n/eric6_zh_CN.ts	Thu Jun 03 11:39:23 2021 +0200
@@ -1283,45 +1283,60 @@
 <context>
     <name>ApplicationDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="43"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="47"/>
         <source>Application Diagram {0}</source>
         <translation>应用图表 {0}</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>Parsing modules...</source>
         <translation>正在分析模块…</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="197"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="252"/>
         <source>&lt;&lt;Application&gt;&gt;</source>
         <translation>&lt;&lt;应用&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="199"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="254"/>
         <source>&lt;&lt;Others&gt;&gt;</source>
         <translation>&lt;&lt;其它&gt;&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>Load Diagram</source>
         <translation>加载图表</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="288"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="422"/>
         <source>&lt;p&gt;The diagram belongs to the project &lt;b&gt;{0}&lt;/b&gt;. Shall this project be opened?&lt;/p&gt;</source>
         <translation>&lt;p&gt; 该图表在工程下 &lt;b&gt;{0}&lt;/b&gt;. 打开该工程? &lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="66"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="71"/>
         <source>%v/%m Modules</source>
         <translation>%v/%m 模块</translation>
     </message>
     <message>
-        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="69"/>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
         <source>Application Diagram</source>
         <translation>应用图表</translation>
     </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="126"/>
+        <source>Select the application directory:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="135"/>
+        <source>No application package could be detected. Aborting...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ApplicationDiagramBuilder.py" line="466"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>ApplicationPage</name>
@@ -1642,12 +1657,12 @@
 <context>
     <name>BackgroundService</name>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="139"/>
+        <location filename="../Utilities/BackgroundService.py" line="142"/>
         <source>{0} not configured.</source>
         <translation>{0} 未被配置。</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>Restart background client?</source>
         <translation>重启后台客户端?</translation>
     </message>
@@ -1657,37 +1672,37 @@
         <translation type="obsolete">Eric 后台客户端的一个错误停止了服务。</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="456"/>
+        <location filename="../Utilities/BackgroundService.py" line="459"/>
         <source>Eric&apos;s background client disconnected because of an unknown reason.</source>
         <translation>Erics 后台客户端因未知原因断开连接。</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>Background client disconnected.</source>
         <translation>后台客户端已断开连接。</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="202"/>
+        <location filename="../Utilities/BackgroundService.py" line="205"/>
         <source>&lt;p&gt;The background client for &lt;b&gt;{0}&lt;/b&gt; has stopped due to an exception. It&apos;s used by various plug-ins like the different checkers.&lt;/p&gt;&lt;p&gt;Select&lt;ul&gt;&lt;li&gt;&lt;b&gt;&apos;Yes&apos;&lt;/b&gt; to restart the client, but abort the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;Retry&apos;&lt;/b&gt; to restart the client and the last job&lt;/li&gt;&lt;li&gt;&lt;b&gt;&apos;No&apos;&lt;/b&gt; to leave the client off.&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p&gt;Note: The client can be restarted by opening and accepting the preferences dialog or reloading/changing the project.&lt;/p&gt;</source>
         <translation>&lt;p&gt; &lt;b&gt;{0}&lt;/b&gt; 的背景客户端因意外终止。它被多种插件(如区别检查器)使用。&lt;/p&gt;&lt;p&gt; 选择 &lt;ul&gt;&lt;li&gt;&lt;b&gt;“是”&lt;/b&gt; 放弃最后任务,重启客户端 &lt;/li&gt;&lt;li&gt;&lt;b&gt;“重试”&lt;/b&gt; 重启客户端和最后任务&lt;/li&gt;&lt;li&gt;&lt;b&gt;“否”&lt;/b&gt; 关闭客户端。&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p&gt;注意:通过打开和接受首选项对话框,或重新加载、改变工程亦可重启客户端。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="462"/>
+        <location filename="../Utilities/BackgroundService.py" line="465"/>
         <source>The background client for &lt;b&gt;{0}&lt;/b&gt; disconnected because of an unknown reason.&lt;br&gt;Should it be restarted?</source>
         <translation>&lt;b&gt;{0}&lt;/b&gt; 的后台客户端因未知原因中断了连接。&lt;br&gt;是否对其重新启动?</translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="228"/>
+        <location filename="../Utilities/BackgroundService.py" line="231"/>
         <source>An error in Eric&apos;s background client stopped the service.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>Initialization of Background Service</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Utilities/BackgroundService.py" line="188"/>
+        <location filename="../Utilities/BackgroundService.py" line="191"/>
         <source>&lt;p&gt;Initialization of Background Service &lt;b&gt;{0}&lt;/b&gt; failed.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -2400,17 +2415,17 @@
 <context>
     <name>Browser</name>
     <message>
-        <location filename="../UI/Browser.py" line="94"/>
+        <location filename="../UI/Browser.py" line="96"/>
         <source>File-Browser</source>
         <translation>文件浏览器</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="284"/>
+        <location filename="../UI/Browser.py" line="286"/>
         <source>Open</source>
         <translation>打开</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="233"/>
+        <location filename="../UI/Browser.py" line="235"/>
         <source>Run unittest...</source>
         <translation>运行单元测试…</translation>
     </message>
@@ -2420,22 +2435,22 @@
         <translation type="obsolete">配置…</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="342"/>
+        <location filename="../UI/Browser.py" line="344"/>
         <source>New toplevel directory...</source>
         <translation>新顶层文件夹…</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="298"/>
+        <location filename="../UI/Browser.py" line="300"/>
         <source>Add as toplevel directory</source>
         <translation>添加为顶层文件夹</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="301"/>
+        <location filename="../UI/Browser.py" line="303"/>
         <source>Remove from toplevel</source>
         <translation>从顶层移除</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="309"/>
+        <location filename="../UI/Browser.py" line="311"/>
         <source>Find in this directory</source>
         <translation>在该文件夹中查找</translation>
     </message>
@@ -2445,187 +2460,187 @@
         <translation type="obsolete">在该文件夹中查找和替换(&amp;R)</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="643"/>
+        <location filename="../UI/Browser.py" line="646"/>
         <source>New toplevel directory</source>
         <translation>新建顶层文件夹</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="263"/>
+        <location filename="../UI/Browser.py" line="265"/>
         <source>Open in Icon Editor</source>
         <translation>在图标编辑器中打开</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="316"/>
+        <location filename="../UI/Browser.py" line="318"/>
         <source>Copy Path to Clipboard</source>
         <translation>将路径复制到剪贴板</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="305"/>
+        <location filename="../UI/Browser.py" line="307"/>
         <source>Refresh directory</source>
         <translation>刷新目录</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="328"/>
+        <location filename="../UI/Browser.py" line="330"/>
         <source>Goto</source>
         <translation>跳转</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="435"/>
+        <location filename="../UI/Browser.py" line="437"/>
         <source>Line {0}</source>
         <translation>行 {0}</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="113"/>
+        <location filename="../UI/Browser.py" line="115"/>
         <source>&lt;b&gt;The Browser Window&lt;/b&gt;&lt;p&gt;This allows you to easily navigate the hierarchy of directories and files on your system, identify the Python programs and open them up in a Source Viewer window. The window displays several separate hierarchies.&lt;/p&gt;&lt;p&gt;The first hierarchy is only shown if you have opened a program for debugging and its root is the directory containing that program. Usually all of the separate files that make up a Python application are held in the same directory, so this hierarchy gives you easy access to most of what you will need.&lt;/p&gt;&lt;p&gt;The next hierarchy is used to easily navigate the directories that are specified in the Python &lt;tt&gt;sys.path&lt;/tt&gt; variable.&lt;/p&gt;&lt;p&gt;The remaining hierarchies allow you navigate your system as a whole. On a UNIX system there will be a hierarchy with &lt;tt&gt;/&lt;/tt&gt; at its root and another with the user home directory. On a Windows system there will be a hierarchy for each drive on the system.&lt;/p&gt;&lt;p&gt;Python programs (i.e. those with a &lt;tt&gt;.py&lt;/tt&gt; file name suffix) are identified in the hierarchies with a Python icon. The right mouse button will popup a menu which lets you open the file in a Source Viewer window, open the file for debugging or use it for a unittest run.&lt;/p&gt;&lt;p&gt;The context menu of a class, function or method allows you to open the file defining this class, function or method and will ensure, that the correct source line is visible.&lt;/p&gt;&lt;p&gt;Qt-Designer files (i.e. those with a &lt;tt&gt;.ui&lt;/tt&gt; file name suffix) are shown with a Designer icon. The context menu of these files allows you to start Qt-Designer with that file.&lt;/p&gt;&lt;p&gt;Qt-Linguist files (i.e. those with a &lt;tt&gt;.ts&lt;/tt&gt; file name suffix) are shown with a Linguist icon. The context menu of these files allows you to start Qt-Linguist with that file.&lt;/p&gt;</source>
         <translation>&lt;b&gt;浏览器窗口&lt;/b&gt;&lt;p&gt;让您轻易地找到您系统中文件(夹)的层级,确认 Python 程序并在源码查看器中打开它们。该窗口显示独立的多级层次。&lt;/p&gt;&lt;p&gt;第一级仅在您已打开一个程序用来调试,且其根路径系包含该程序的目录时才会显示。通常,所有这些分离的文件构成了一个 Python 应用,而该应用亦在同一目录中。因此,此层级可让您轻易地访问到大多数您所需的文件。&lt;/p&gt;&lt;p&gt;下一个层级用以访问在 Python &lt;tt&gt;sys.path&lt;/tt&gt; 变量中声明的目录。&lt;/p&gt;&lt;p&gt;剩下的层次可让您在您的整个系统中导航。在 UNIX 系统中,在根路径有一个 &lt;tt&gt;/&lt;/tt&gt; 层级,另一个则是用户的家目录。在 Windows 系统中,每一个驱动器都有一个层级。&lt;/p&gt;&lt;p&gt;Python 程序(如:以 &lt;tt&gt;.py&lt;/tt&gt; 为扩展名)将在该层级中以 Python 图标标识。单击鼠标右键将会弹出快捷菜单,让您可以在源码查看器中打开此文件,以便调试或进行单元测试&lt;/p&gt;&lt;p&gt;一个类、函数或方法的关联菜单可让您打开此文件并定义该类、函数或方法,同时确保正确的源码行可见。&lt;/p&gt;&lt;p&gt;Qt-Designer 文件(如:以 &lt;tt&gt;.ui&lt;/tt&gt; 为扩展名) 将以设计器的图标显示。该类文件的关联菜单可让您用 Qt-Designer 打开这些文件。&lt;/p&gt;&lt;p&gt;Qt-Linguist 文件(如:以 &lt;tt&gt;.ts&lt;/tt&gt; 为扩展名)将以语言家的图标显示。该类文件的关联菜单可让您用 Qt-Linguist 打开这些文件。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>Show Mime-Type</source>
         <translation>显示 MIME 类型</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="528"/>
+        <location filename="../UI/Browser.py" line="531"/>
         <source>The mime type of the file could not be determined.</source>
         <translation>文件 MIME 类型无法确定。</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="546"/>
+        <location filename="../UI/Browser.py" line="549"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation>文件的 MIME 类型为 &lt;b&gt;{0}&lt;/b&gt;。</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="555"/>
+        <location filename="../UI/Browser.py" line="558"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation>该文件有 MIME 类型。&lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt;将其添加至文本 MIME 类型列表?</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="260"/>
+        <location filename="../UI/Browser.py" line="262"/>
         <source>Open in Hex Editor</source>
         <translation>在十六进制编辑器中打开</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="312"/>
+        <location filename="../UI/Browser.py" line="314"/>
         <source>Find &amp;&amp; Replace in this directory</source>
         <translation>在此目录中查找 &amp;&amp; 替换</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="241"/>
+        <location filename="../UI/Browser.py" line="243"/>
         <source>Refresh Source File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="214"/>
+        <location filename="../UI/Browser.py" line="216"/>
         <source>Show Hidden Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="221"/>
-        <source>New</source>
-        <translation type="unfinished">新建</translation>
-    </message>
-    <message>
         <location filename="../UI/Browser.py" line="223"/>
+        <source>New</source>
+        <translation type="unfinished">新建</translation>
+    </message>
+    <message>
+        <location filename="../UI/Browser.py" line="225"/>
         <source>Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="226"/>
+        <location filename="../UI/Browser.py" line="228"/>
         <source>File</source>
         <translation type="unfinished">文件</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="323"/>
+        <location filename="../UI/Browser.py" line="325"/>
         <source>Delete</source>
         <translation type="unfinished">删除</translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>New Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="861"/>
+        <location filename="../UI/Browser.py" line="864"/>
         <source>Name for new directory:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="902"/>
+        <location filename="../UI/Browser.py" line="905"/>
         <source>A file or directory named &lt;b&gt;{0}&lt;/b&gt; exists already. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="879"/>
+        <location filename="../UI/Browser.py" line="882"/>
         <source>&lt;p&gt;The directory &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>New File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="894"/>
+        <location filename="../UI/Browser.py" line="897"/>
         <source>Name for new file:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="913"/>
+        <location filename="../UI/Browser.py" line="916"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="942"/>
+        <location filename="../UI/Browser.py" line="945"/>
         <source>Do you really want to move this file to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="946"/>
+        <location filename="../UI/Browser.py" line="949"/>
         <source>Do you really want to delete this file?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>Delete File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1043"/>
+        <location filename="../UI/Browser.py" line="1046"/>
         <source>&lt;p&gt;The selected file &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="979"/>
+        <location filename="../UI/Browser.py" line="982"/>
         <source>Do you really want to move this directory to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="983"/>
+        <location filename="../UI/Browser.py" line="986"/>
         <source>Do you really want to delete this directory?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>Delete Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1000"/>
+        <location filename="../UI/Browser.py" line="1003"/>
         <source>&lt;p&gt;The selected directory &lt;b&gt;{0}&lt;/b&gt; could not be deleted.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1023"/>
+        <location filename="../UI/Browser.py" line="1026"/>
         <source>Do you really want to move these files to the trash?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1027"/>
+        <location filename="../UI/Browser.py" line="1030"/>
         <source>Do you really want to delete these files?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/Browser.py" line="1032"/>
+        <location filename="../UI/Browser.py" line="1035"/>
         <source>Delete Files</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3297,6 +3312,32 @@
     </message>
 </context>
 <context>
+    <name>ClassItem</name>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="176"/>
+        <source>Class Attributes:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="211"/>
+        <source>none</source>
+        <translation type="unfinished">无</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="191"/>
+        <source>Instance Attributes:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/ClassItem.py" line="210"/>
+        <source>Methods:
+  </source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>ClearPrivateDataDialog</name>
     <message>
         <location filename="../UI/ClearPrivateDataDialog.ui" line="14"/>
@@ -4851,7 +4892,7 @@
 <context>
     <name>CodingError</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="131"/>
+        <location filename="../Utilities/__init__.py" line="132"/>
         <source>The coding &apos;{0}&apos; is wrong for the given text.</source>
         <translation>跟据所给文本,编码 “{0}” 是错误的。</translation>
     </message>
@@ -7244,7 +7285,7 @@
 <context>
     <name>DebugUI</name>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1980"/>
+        <location filename="../Debugger/DebugUI.py" line="1981"/>
         <source>Run Script</source>
         <translation>运行脚本</translation>
     </message>
@@ -7264,7 +7305,7 @@
         <translation>&lt;b&gt;运行脚本&lt;/b&gt;&lt;p&gt;设置命令行参数,并在调试器之外运行脚本。如果文件未对更改进行保存,则可能会先行保存。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>Run Project</source>
         <translation>运行项目</translation>
     </message>
@@ -7364,7 +7405,7 @@
         <translation>&lt;b&gt;剖析项目&lt;/b&gt;&lt;p&gt;设置命令行参数,并剖析当前项目。如果当前项目的文件未保存则会先行保存。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2121"/>
+        <location filename="../Debugger/DebugUI.py" line="2122"/>
         <source>Debug Script</source>
         <translation>调试脚本</translation>
     </message>
@@ -7384,7 +7425,7 @@
         <translation>&lt;b&gt;调试脚本&lt;/b&gt;&lt;p&gt;设置命令行参数,并将当前行设为当前编辑窗口首先执行的 Python 声明。如果文件未保存则会先行保存。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>Debug Project</source>
         <translation>调试项目</translation>
     </message>
@@ -7707,47 +7748,47 @@
         <translation>被调试的程序意外终止。</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>Breakpoint Condition Error</source>
         <translation>断点条件错误</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>Watch Expression Error</source>
         <translation>监视表达式出错</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1540"/>
+        <location filename="../Debugger/DebugUI.py" line="1541"/>
         <source>Watch expression already exists</source>
         <translation>监视表达式已存在</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1709"/>
+        <location filename="../Debugger/DebugUI.py" line="1710"/>
         <source>Coverage of Project</source>
         <translation>项目覆盖率</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1690"/>
+        <location filename="../Debugger/DebugUI.py" line="1691"/>
         <source>Coverage of Script</source>
         <translation>脚本覆盖率</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1998"/>
+        <location filename="../Debugger/DebugUI.py" line="1999"/>
         <source>There is no main script defined for the current project. Aborting</source>
         <translation>当前项目未定义主脚本。终止</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1854"/>
+        <location filename="../Debugger/DebugUI.py" line="1855"/>
         <source>Profile of Project</source>
         <translation>项目轮廓</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1835"/>
+        <location filename="../Debugger/DebugUI.py" line="1836"/>
         <source>Profile of Script</source>
         <translation>脚本轮廓</translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="2144"/>
+        <location filename="../Debugger/DebugUI.py" line="2145"/>
         <source>There is no main script defined for the current project. No debugging possible.</source>
         <translation>当前项目未定义主脚本。不能进行调试。</translation>
     </message>
@@ -7779,22 +7820,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1461"/>
+        <location filename="../Debugger/DebugUI.py" line="1462"/>
         <source>&lt;p&gt;The condition of the breakpoint &lt;b&gt;{0}, {1}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1500"/>
+        <location filename="../Debugger/DebugUI.py" line="1501"/>
         <source>&lt;p&gt;The watch expression &lt;b&gt;{0}&lt;/b&gt; contains a syntax error.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1530"/>
+        <location filename="../Debugger/DebugUI.py" line="1531"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; already exists.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1535"/>
+        <location filename="../Debugger/DebugUI.py" line="1536"/>
         <source>&lt;p&gt;A watch expression &apos;&lt;b&gt;{0}&lt;/b&gt;&apos; for the variable &lt;b&gt;{1}&lt;/b&gt; already exists.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -7849,7 +7890,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Debugger/DebugUI.py" line="1418"/>
+        <location filename="../Debugger/DebugUI.py" line="1419"/>
         <source>No locals available.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -10326,9 +10367,17 @@
         <translation type="unfinished">&lt;b&gt;图形视图&lt;/b&gt;&lt;p&gt;该图形视图用于显示图表。
 可以使用多种动作对显示的内容进行操纵。&lt;/p&gt;&lt;ul&gt;&lt;li&gt;在对象上单击可以选择对象。&lt;/li&gt;&lt;li&gt;Ctrl-单击将对象添加到选择范围中。&lt;/li&gt;&lt;li&gt;Ctrl-单击一个已选对象可取消对其选择。&lt;/li&gt;&lt;li&gt;在画布的空白区域单击可取消所有选择。&lt;/li&gt;&lt;li&gt;在画布上拖动鼠标可以用选框方式选择多个对象。&lt;/li&gt;&lt;li&gt;在已选对象上拖动鼠标可以对其进行整体移动。&lt;/li&gt;&lt;/ul&gt;</translation>
     </message>
-    <message>
-        <location filename="../E5Graphics/E5GraphicsView.py" line="417"/>
-        <source>{0}, Page {1}</source>
+</context>
+<context>
+    <name>E5JsonServer</name>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>JSON Protocol Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../E5Network/E5JsonServer.py" line="155"/>
+        <source>&lt;p&gt;The response received from the client could not be decoded. Please report this issue with the received data to the eric bugs email address.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;&lt;p&gt;Data:&lt;br/&gt;{1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -11852,7 +11901,7 @@
         <translation>全部取消选择</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7944"/>
+        <location filename="../QScintilla/Editor.py" line="7941"/>
         <source>Check spelling...</source>
         <translation>正在进行拼写检查…</translation>
     </message>
@@ -12372,32 +12421,32 @@
         <translation>包含类属性?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Imports Diagram</source>
         <translation>引用图</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7602"/>
+        <location filename="../QScintilla/Editor.py" line="7599"/>
         <source>Include imports from external modules?</source>
         <translation>从外部模块包含引用?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Application Diagram</source>
         <translation>应用程序图</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7616"/>
+        <location filename="../QScintilla/Editor.py" line="7613"/>
         <source>Include module names?</source>
         <translation>包含模块名?</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7947"/>
+        <location filename="../QScintilla/Editor.py" line="7944"/>
         <source>Add to dictionary</source>
         <translation>添加到文件夹</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="7949"/>
+        <location filename="../QScintilla/Editor.py" line="7946"/>
         <source>Ignore All</source>
         <translation>全部忽略</translation>
     </message>
@@ -12532,12 +12581,12 @@
         <translation>上一个更改</translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>Sort Lines</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8362"/>
+        <location filename="../QScintilla/Editor.py" line="8359"/>
         <source>The selection contains illegal data for a numerical sort.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12607,12 +12656,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>Register Mouse Click Handler</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8451"/>
+        <location filename="../QScintilla/Editor.py" line="8448"/>
         <source>A mouse click handler for &quot;{0}&quot; was already registered by &quot;{1}&quot;. Aborting request by &quot;{2}&quot;...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12642,12 +12691,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>EditorConfig Properties</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8572"/>
+        <location filename="../QScintilla/Editor.py" line="8569"/>
         <source>&lt;p&gt;The EditorConfig properties for file &lt;b&gt;{0}&lt;/b&gt; could not be loaded.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -12692,7 +12741,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../QScintilla/Editor.py" line="8766"/>
+        <location filename="../QScintilla/Editor.py" line="8763"/>
         <source>Generate Docstring</source>
         <translation type="unfinished"></translation>
     </message>
@@ -19444,7 +19493,7 @@
 <context>
     <name>FileDialogWizardDialog</name>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="72"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="73"/>
         <source>QFileDialog Wizard</source>
         <translation>QFileDialog 向导</translation>
     </message>
@@ -19574,7 +19623,7 @@
         <translation>只显示文件夹</translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="89"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="90"/>
         <source>Test</source>
         <translation>测试</translation>
     </message>
@@ -19729,7 +19778,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="67"/>
+        <location filename="../Plugins/WizardPlugins/FileDialogWizard/FileDialogWizardDialog.py" line="68"/>
         <source>E5FileDialog Wizard</source>
         <translation type="unfinished"></translation>
     </message>
@@ -27218,27 +27267,27 @@
 <context>
     <name>Globals</name>
     <message>
-        <location filename="../Globals/__init__.py" line="451"/>
+        <location filename="../Globals/__init__.py" line="455"/>
         <source>{0:4.2f} Bytes</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Globals/__init__.py" line="455"/>
-        <source>{0:4.2f} KiB</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../Globals/__init__.py" line="459"/>
-        <source>{0:4.2f} MiB</source>
+        <source>{0:4.2f} KiB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="463"/>
-        <source>{0:4.2f} GiB</source>
+        <source>{0:4.2f} MiB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../Globals/__init__.py" line="467"/>
+        <source>{0:4.2f} GiB</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Globals/__init__.py" line="471"/>
         <source>{0:4.2f} TiB</source>
         <translation type="unfinished"></translation>
     </message>
@@ -31976,112 +32025,112 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1939"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1940"/>
         <source>Verifying the integrity of the Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1953"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1954"/>
         <source>Showing the combined configuration settings</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1966"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1967"/>
         <source>Showing aliases for remote repositories</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1979"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1980"/>
         <source>Recovering from interrupted transaction</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2166"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2167"/>
         <source>Shall the working directory be updated?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1849"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1850"/>
         <source>Showing current branch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2119"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2120"/>
         <source>Create changegroup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2178"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2179"/>
         <source>Apply changegroups</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2197"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2198"/>
         <source>Bisect subcommand ({0}) invalid.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2217"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2218"/>
         <source>Mercurial Bisect ({0})</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2129"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2130"/>
         <source>Preview changegroup</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1992"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1993"/>
         <source>Identifying project directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>Create .hgignore file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2023"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2024"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;文件 &lt;b&gt;{0}&lt;/b&gt; 已经存在。是否覆盖?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2240"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2241"/>
         <source>Removing files from the Mercurial repository only</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2076"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2077"/>
         <source>Mercurial Changegroup Files (*.hg)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2157"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2158"/>
         <source>Mercurial Changegroup Files (*.hg);;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2283"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2284"/>
         <source>Backing out changeset</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2263"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2264"/>
         <source>No revision given. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2093"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2094"/>
         <source>&lt;p&gt;The Mercurial changegroup file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2299"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2300"/>
         <source>Rollback last transaction</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2292"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2293"/>
         <source>Are you sure you want to rollback the last transaction?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -32091,72 +32140,72 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>Mercurial Command Server</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2799"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2800"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be restarted.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2937"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2938"/>
         <source>&lt;p&gt;The Mercurial Command Server could not be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2351"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2352"/>
         <source>Import Patch</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2392"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2393"/>
         <source>Export Patches</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2431"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2432"/>
         <source>Change Phase</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2480"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2481"/>
         <source>Copy Changesets</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2520"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2521"/>
         <source>Copy Changesets (Continue)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2663"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2664"/>
         <source>Add Sub-repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2695"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2696"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be read.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2645"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2646"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub already contains an entry &lt;b&gt;{0}&lt;/b&gt;. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub could not be written to.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2714"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2715"/>
         <source>Remove Sub-repositories</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2684"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2685"/>
         <source>&lt;p&gt;The sub-repositories file .hgsub does not exist. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -32186,7 +32235,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2568"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2569"/>
         <source>Create Unversioned Archive</source>
         <translation type="unfinished"></translation>
     </message>
@@ -32211,7 +32260,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1838"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="1839"/>
         <source>Created new branch &lt;{0}&gt;.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -32221,62 +32270,62 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3049"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3050"/>
         <source>Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Delete Bookmark</source>
         <translation type="unfinished">删除书签</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3063"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3064"/>
         <source>Select the bookmark to be deleted:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3074"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3075"/>
         <source>Delete Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3098"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3099"/>
         <source>Rename Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3132"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3133"/>
         <source>Move Mercurial Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Pull Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3201"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3202"/>
         <source>Select the bookmark to be pulled:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3213"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3214"/>
         <source>Pulling bookmark from a remote Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Push Bookmark</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3238"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3239"/>
         <source>Select the bookmark to be push:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3253"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="3254"/>
         <source>Pushing bookmark to a remote Mercurial repository</source>
         <translation type="unfinished"></translation>
     </message>
@@ -32311,22 +32360,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>Delete All Backups</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2579"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2580"/>
         <source>&lt;p&gt;Do you really want to delete all backup bundles stored the backup area &lt;b&gt;{0}&lt;/b&gt;?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2532"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2533"/>
         <source>Copy Changesets (Stop)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2545"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/hg.py" line="2546"/>
         <source>Copy Changesets (Abort)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -33252,42 +33301,42 @@
 <context>
     <name>HgClient</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="91"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="92"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished">进程 {0} 无法启动。请保证它处在搜索路径中。</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="140"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="141"/>
         <source>Did not receive the &apos;hello&apos; message.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="142"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="143"/>
         <source>Received data on unexpected channel.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="147"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="148"/>
         <source>Bad &apos;hello&apos; message, expected &apos;capabilities: &apos; but got &apos;{0}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="152"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="153"/>
         <source>&apos;capabilities&apos; message did not contain any capability.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="160"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="161"/>
         <source>Bad &apos;hello&apos; message, expected &apos;encoding: &apos; but got &apos;{0}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="165"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="166"/>
         <source>&apos;encoding&apos; message did not contain any encoding.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="379"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgClient.py" line="380"/>
         <source>For message see output dialog.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -38296,52 +38345,52 @@
 <context>
     <name>HgServeDialog</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="53"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="54"/>
         <source>Start Server</source>
         <translation type="unfinished">启动服务器</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="59"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="60"/>
         <source>Stop Server</source>
         <translation type="unfinished">停止服务器</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="65"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="66"/>
         <source>Start Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="73"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="74"/>
         <source>Enter the server port</source>
         <translation type="unfinished">输入服务器端口</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="79"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="80"/>
         <source>Select the style to use</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="83"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="84"/>
         <source>Server</source>
         <translation type="unfinished">服务器</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="90"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="91"/>
         <source>Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>Process Generation Error</source>
         <translation type="unfinished">进程生成错误</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="144"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="147"/>
         <source>The process {0} could not be started. Ensure, that it is in the search path.</source>
         <translation type="unfinished">进程 {0} 无法启动。请保证它处在搜索路径中。</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="49"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgServeDialog.py" line="50"/>
         <source>Mercurial Server</source>
         <translation type="unfinished"></translation>
     </message>
@@ -40023,17 +40072,17 @@
 <context>
     <name>HgUtilities</name>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="93"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="128"/>
         <source>The hg process finished with the exit code {0}</source>
         <translation type="unfinished">hg 进程已结束,返回值为 {0}</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="98"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="133"/>
         <source>The hg process did not finish within 30s.</source>
         <translation type="unfinished">hg 进程没有在 30 秒内结束。</translation>
     </message>
     <message>
-        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="102"/>
+        <location filename="../Plugins/VcsPlugins/vcsMercurial/HgUtilities.py" line="137"/>
         <source>Could not start the hg executable.</source>
         <translation type="unfinished">无法启动 hg 可执行程序。</translation>
     </message>
@@ -42255,35 +42304,40 @@
 <context>
     <name>ImportsDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="64"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="75"/>
         <source>Imports Diagramm: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>Parsing modules...</source>
         <translation type="unfinished">正在分析模块…</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="124"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="136"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a Python package.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="92"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="104"/>
         <source>%v/%m Modules</source>
         <translation type="unfinished">%v/%m 模块</translation>
     </message>
     <message>
-        <location filename="../Graphics/ImportsDiagramBuilder.py" line="95"/>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="107"/>
         <source>Imports Diagramm</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Graphics/ImportsDiagramBuilder.py" line="410"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>InputDialogWizard</name>
@@ -44046,22 +44100,22 @@
         <translation>显示服务器名称</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="252"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="251"/>
         <source>Yes</source>
         <translation>是</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="254"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="253"/>
         <source>No</source>
         <translation>否</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Delete Channel</source>
         <translation>删除频道</translation>
     </message>
     <message>
-        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="186"/>
+        <location filename="../Network/IRC/IrcNetworkEditDialog.py" line="185"/>
         <source>Do you really want to delete channel &lt;b&gt;{0}&lt;/b&gt;?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -52289,45 +52343,50 @@
 <context>
     <name>PackageDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="50"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="60"/>
         <source>Package Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>Parsing modules...</source>
         <translation type="unfinished">正在分析模块…</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="205"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="219"/>
         <source>The directory &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; is not a package.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="214"/>
-        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="231"/>
-        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="155"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="169"/>
         <source>%v/%m Modules</source>
         <translation type="unfinished">%v/%m 模块</translation>
     </message>
     <message>
-        <location filename="../Graphics/PackageDiagramBuilder.py" line="158"/>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="172"/>
         <source>Package Diagram</source>
         <translation type="unfinished">程序包图</translation>
     </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="230"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any modules or subpackages.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="247"/>
+        <source>The package &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes or subpackages.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PackageDiagramBuilder.py" line="555"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>PageScreenDialog</name>
@@ -53852,42 +53911,42 @@
 <context>
     <name>PixmapDiagram</name>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>Pixmap-Viewer</source>
         <translation>像素图浏览器</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="93"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="96"/>
         <source>Close</source>
         <translation>关闭</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="98"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="101"/>
         <source>Print</source>
         <translation>打印</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="103"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="106"/>
         <source>Print Preview</source>
         <translation>打印预览</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="133"/>
-        <source>Window</source>
-        <translation>窗口</translation>
-    </message>
-    <message>
         <location filename="../Graphics/PixmapDiagram.py" line="137"/>
+        <source>Window</source>
+        <translation>窗口</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/PixmapDiagram.py" line="141"/>
         <source>Graphics</source>
         <translation>图形</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="154"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="160"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; cannot be displayed. The format is not supported.&lt;/p&gt;</source>
         <translation>&lt;p&gt;文件 &lt;b&gt;{0}&lt;/b&gt; 无法显示。该格式不被支持。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/PixmapDiagram.py" line="391"/>
+        <location filename="../Graphics/PixmapDiagram.py" line="416"/>
         <source>Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -54167,7 +54226,7 @@
         <translation>某些插件无法安装。</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="501"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="485"/>
         <source>Unspecific exception installing plugin.</source>
         <translation>安装插件未指定异常。</translation>
     </message>
@@ -54226,7 +54285,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginInstallDialog.py" line="492"/>
+        <location filename="../PluginManager/PluginInstallDialog.py" line="476"/>
         <source>Error installing plugin. Reason: {0}</source>
         <translation>安装插件出错。原因:{0}</translation>
     </message>
@@ -54234,22 +54293,22 @@
 <context>
     <name>PluginManager</name>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="404"/>
+        <location filename="../PluginManager/PluginManager.py" line="410"/>
         <source>Module is missing the &apos;autoactivate&apos; attribute.</source>
         <translation>模块丢失“autoactivate”属性。</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="415"/>
+        <location filename="../PluginManager/PluginManager.py" line="421"/>
         <source>Module is missing the &apos;pluginType&apos; and/or &apos;pluginTypename&apos; attributes.</source>
         <translation>模块丢失“pluginType”和/或“pluginTypename”属性。</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="614"/>
+        <location filename="../PluginManager/PluginManager.py" line="623"/>
         <source>Incompatible plugin activation method.</source>
         <translation>插件激活方法不兼容。</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>Plugin Manager Error</source>
         <translation>插件管理错误</translation>
     </message>
@@ -54264,32 +54323,32 @@
         <translation>内置的插件目录 &lt;b&gt;{0}&lt;/b&gt; 不存在。</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="437"/>
+        <location filename="../PluginManager/PluginManager.py" line="446"/>
         <source>Module failed to load. Error: {0}</source>
         <translation>模块加载失败。错误:{0}</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1194"/>
+        <location filename="../PluginManager/PluginManager.py" line="1203"/>
         <source>&lt;p&gt;The plugin download directory &lt;b&gt;{0}&lt;/b&gt; could not be created. Please configure it via the configuration dialog.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;插件下载目录 &lt;b&gt;{0}&lt;/b&gt; 无法创建。请使用配置对话框进行配置。&lt;/p&gt;&lt;p&gt;原因:{1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>Error downloading file</source>
         <translation>下载文件出错</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1271"/>
+        <location filename="../PluginManager/PluginManager.py" line="1280"/>
         <source>&lt;p&gt;Could not download the requested file from {0}.&lt;/p&gt;&lt;p&gt;Error: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;无法从 {0} 下载指定文件。&lt;/p&gt;&lt;p&gt;错误:{1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>New plugin versions available</source>
         <translation>新插件版本可用</translation>
     </message>
     <message>
-        <location filename="../PluginManager/PluginManager.py" line="1308"/>
+        <location filename="../PluginManager/PluginManager.py" line="1317"/>
         <source>&lt;p&gt;There are new plug-ins or plug-in updates available. Use the plug-in repository dialog to get them.&lt;/p&gt;</source>
         <translation>&lt;p&gt;有新的插件或插件更新可用。请使用插件仓库对话框来获取它们。&lt;/p&gt;</translation>
     </message>
@@ -56333,7 +56392,7 @@
         <translation>&lt;b&gt;应用程序图…&lt;/b&gt;&lt;p&gt;显示项目的图表。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>Create Package List</source>
         <translation>创建程序包列表</translation>
     </message>
@@ -56343,7 +56402,7 @@
         <translation type="unfinished">创建插件存档(&amp;A)</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>Create Plugin Archive</source>
         <translation>创建插件存档</translation>
     </message>
@@ -56458,12 +56517,12 @@
         <translation>包含模块名?</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5264"/>
+        <location filename="../Project/Project.py" line="5265"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; already exists.&lt;/p&gt;&lt;p&gt;Overwrite it?&lt;/p&gt;</source>
         <translation>&lt;p&gt;文件 &lt;b&gt;PKGLIST&lt;/b&gt; 已存在。&lt;/p&gt;&lt;p&gt;是否覆盖?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5331"/>
+        <location filename="../Project/Project.py" line="5332"/>
         <source>The project does not have a main script defined. Aborting...</source>
         <translation>项目未定义主脚本。终止…</translation>
     </message>
@@ -56563,17 +56622,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5312"/>
+        <location filename="../Project/Project.py" line="5313"/>
         <source>&lt;p&gt;The file &lt;b&gt;PKGLIST&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5467"/>
+        <location filename="../Project/Project.py" line="5468"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be stored in the archive. Ignoring it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5536"/>
+        <location filename="../Project/Project.py" line="5537"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56648,7 +56707,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5577"/>
+        <location filename="../Project/Project.py" line="5578"/>
         <source>&lt;p&gt;The plugin file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt; &lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56704,7 +56763,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5367"/>
+        <location filename="../Project/Project.py" line="5368"/>
         <source>Create Plugin Archives</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56719,37 +56778,37 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5345"/>
+        <location filename="../Project/Project.py" line="5346"/>
         <source>Select package lists:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Creating plugin archives...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>Abort</source>
         <translation type="unfinished">终止</translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5363"/>
+        <location filename="../Project/Project.py" line="5364"/>
         <source>%v/%m Archives</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5378"/>
+        <location filename="../Project/Project.py" line="5379"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5356"/>
+        <location filename="../Project/Project.py" line="5357"/>
         <source>&lt;p&gt;No package list files (PKGLIST*) available or selected. Aborting...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5405"/>
+        <location filename="../Project/Project.py" line="5406"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; is not ready yet.&lt;/p&gt;&lt;p&gt;Please rework it and delete the&apos;; initial_list&apos; line of the header.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56789,7 +56848,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>Execute Make</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56809,7 +56868,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5744"/>
+        <location filename="../Project/Project.py" line="5745"/>
         <source>Test for Changes</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56834,27 +56893,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5692"/>
+        <location filename="../Project/Project.py" line="5693"/>
         <source>The make process did not start.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5737"/>
+        <location filename="../Project/Project.py" line="5738"/>
         <source>The make process crashed.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5747"/>
+        <location filename="../Project/Project.py" line="5748"/>
         <source>&lt;p&gt;There are changes that require the configured make target &lt;b&gt;{0}&lt;/b&gt; to be rebuilt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5752"/>
+        <location filename="../Project/Project.py" line="5753"/>
         <source>&lt;p&gt;There are changes that require the default make target to be rebuilt.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5763"/>
+        <location filename="../Project/Project.py" line="5764"/>
         <source>The makefile contains errors.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -56929,17 +56988,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5432"/>
+        <location filename="../Project/Project.py" line="5433"/>
         <source>&lt;p&gt;The eric plugin archive file &lt;b&gt;{0}&lt;/b&gt; could not be created.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5484"/>
+        <location filename="../Project/Project.py" line="5485"/>
         <source>&lt;p&gt;The eric plugin archive files were created with some errors.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Project/Project.py" line="5492"/>
+        <location filename="../Project/Project.py" line="5493"/>
         <source>&lt;p&gt;The eric plugin archive files were created successfully.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -57788,12 +57847,12 @@
         <translation>配置…</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Delete files/directories</source>
         <translation>删除文件或文件夹</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="354"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="355"/>
         <source>Do you really want to delete these entries from the project?</source>
         <translation>确定要从项目中删除这些条目吗?</translation>
     </message>
@@ -57808,22 +57867,22 @@
         <translation>将路径复制到剪贴板</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>Show Mime-Type</source>
         <translation>显示 MIME 类型</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="272"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="273"/>
         <source>The mime type of the file could not be determined.</source>
         <translation>文件 MIME 类型无法确定。</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="286"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="287"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.</source>
         <translation>文件的 MIME 类型为 &lt;b&gt;{0}&lt;/b&gt;。</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectOthersBrowser.py" line="292"/>
+        <location filename="../Project/ProjectOthersBrowser.py" line="293"/>
         <source>The file has the mime type &lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt; Shall it be added to the list of text mime types?</source>
         <translation type="unfinished">该文件有 MIME 类型。&lt;b&gt;{0}&lt;/b&gt;.&lt;br/&gt;将其添加至文本 MIME 类型列表?</translation>
     </message>
@@ -58555,32 +58614,32 @@
         <translation>类图</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Include class attributes?</source>
         <translation>包含类属性?</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Imports Diagram</source>
         <translation>引用图</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1095"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1097"/>
         <source>Include imports from external modules?</source>
         <translation>从外部模块包含引用?</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1115"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1118"/>
         <source>Package Diagram</source>
         <translation>程序包图</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Application Diagram</source>
         <translation>应用程序图</translation>
     </message>
     <message>
-        <location filename="../Project/ProjectSourcesBrowser.py" line="1130"/>
+        <location filename="../Project/ProjectSourcesBrowser.py" line="1134"/>
         <source>Include module names?</source>
         <translation>包含模块名?</translation>
     </message>
@@ -71805,37 +71864,37 @@
 <context>
     <name>SvgDiagram</name>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="50"/>
+        <location filename="../Graphics/SvgDiagram.py" line="53"/>
         <source>SVG-Viewer</source>
         <translation>SVG 浏览器</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="92"/>
+        <location filename="../Graphics/SvgDiagram.py" line="95"/>
         <source>Close</source>
         <translation>关闭</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="97"/>
+        <location filename="../Graphics/SvgDiagram.py" line="100"/>
         <source>Print</source>
         <translation>打印</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="102"/>
+        <location filename="../Graphics/SvgDiagram.py" line="105"/>
         <source>Print Preview</source>
         <translation>打印预览</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="132"/>
-        <source>Window</source>
-        <translation>窗口</translation>
-    </message>
-    <message>
         <location filename="../Graphics/SvgDiagram.py" line="136"/>
+        <source>Window</source>
+        <translation>窗口</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/SvgDiagram.py" line="140"/>
         <source>Graphics</source>
         <translation>图形</translation>
     </message>
     <message>
-        <location filename="../Graphics/SvgDiagram.py" line="363"/>
+        <location filename="../Graphics/SvgDiagram.py" line="385"/>
         <source>Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
@@ -77683,65 +77742,105 @@
         <translation>输入任务描述</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="60"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="71"/>
         <source>Creation Time:</source>
         <translation>创建时间:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="77"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="92"/>
         <source>&amp;Priority:</source>
         <translation>优先级(&amp;P):</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="87"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="102"/>
         <source>Select the task priority</source>
         <translation>选择任务优先级</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="94"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="109"/>
         <source>High</source>
         <translation>高</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="99"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="114"/>
         <source>Normal</source>
         <translation>普通</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="104"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="119"/>
         <source>Low</source>
         <translation>低</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="112"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="175"/>
         <source>Select to indicate a task related to the current project</source>
         <translation>选择指示与当前项目相关的任务</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="115"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="178"/>
         <source>Project &amp;Task</source>
         <translation>项目任务(&amp;T)</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="128"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="162"/>
         <source>Select to mark this task as completed</source>
         <translation>选择将该任务标记为已完成</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="131"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="165"/>
         <source>T&amp;ask completed</source>
         <translation>任务已完成(&amp;A)</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="138"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="223"/>
         <source>Filename:</source>
         <translation>文件名:</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskPropertiesDialog.ui" line="155"/>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="216"/>
         <source>Line:</source>
         <translation>行:</translation>
     </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="127"/>
+        <source>Type:</source>
+        <translation type="unfinished">类型:</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.ui" line="134"/>
+        <source>Select the task type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="41"/>
+        <source>Bugfix</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="42"/>
+        <source>Warning</source>
+        <translation type="unfinished">警告</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="43"/>
+        <source>ToDo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="44"/>
+        <source>Note</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="45"/>
+        <source>Test</source>
+        <translation type="unfinished">测试</translation>
+    </message>
+    <message>
+        <location filename="../Tasks/TaskPropertiesDialog.py" line="46"/>
+        <source>Documentation</source>
+        <translation type="unfinished">文档</translation>
+    </message>
 </context>
 <context>
     <name>TaskViewer</name>
@@ -77826,27 +77925,27 @@
         <translation>配置…</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>Activate task filter</source>
         <translation>激活任务过滤器</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="657"/>
+        <location filename="../Tasks/TaskViewer.py" line="674"/>
         <source>The task filter doesn&apos;t have any active filters. Do you want to configure the filter settings?</source>
         <translation>任务过滤器不包含任务激活过滤器。要配置过滤器设置吗?</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Extracting project tasks...</source>
         <translation>提取项目任务…</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>Abort</source>
         <translation>终止</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="738"/>
+        <location filename="../Tasks/TaskViewer.py" line="755"/>
         <source>Extracting project tasks...
 {0}</source>
         <translation type="unfinished"></translation>
@@ -77857,12 +77956,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Scan Filter Patterns</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="689"/>
+        <location filename="../Tasks/TaskViewer.py" line="706"/>
         <source>Enter filename patterns of files to be excluded separated by a comma:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -77872,12 +77971,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="730"/>
+        <location filename="../Tasks/TaskViewer.py" line="747"/>
         <source>%v/%m Files</source>
         <translation type="unfinished">%v/%m 文件</translation>
     </message>
     <message>
-        <location filename="../Tasks/TaskViewer.py" line="734"/>
+        <location filename="../Tasks/TaskViewer.py" line="751"/>
         <source>Tasks</source>
         <translation type="unfinished">任务</translation>
     </message>
@@ -77905,22 +78004,22 @@
 <context>
     <name>TasksFile</name>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>Save Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="95"/>
+        <location filename="../Tasks/TasksFile.py" line="97"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>Read Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Tasks/TasksFile.py" line="121"/>
+        <location filename="../Tasks/TasksFile.py" line="123"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80372,213 +80471,238 @@
 <context>
     <name>UMLClassDiagramBuilder</name>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram {0}: {1}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="46"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="57"/>
         <source>Class Diagram: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="83"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="96"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; could not be found.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="145"/>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="159"/>
         <source>The module &lt;b&gt;&apos;{0}&apos;&lt;/b&gt; does not contain any classes.</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Graphics/UMLClassDiagramBuilder.py" line="394"/>
+        <source>&lt;p&gt;The diagram belongs to project &lt;b&gt;{0}&lt;/b&gt;. Please open it and try again.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>UMLDialog</name>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="82"/>
+        <location filename="../Graphics/UMLDialog.py" line="113"/>
         <source>Close</source>
         <translation>关闭</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="122"/>
+        <location filename="../Graphics/UMLDialog.py" line="153"/>
         <source>Window</source>
         <translation>窗口</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="87"/>
+        <location filename="../Graphics/UMLDialog.py" line="118"/>
         <source>Load</source>
         <translation type="unfinished">载入</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="92"/>
+        <location filename="../Graphics/UMLDialog.py" line="123"/>
         <source>Save</source>
         <translation type="unfinished">保存</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="97"/>
+        <location filename="../Graphics/UMLDialog.py" line="128"/>
         <source>Save As...</source>
         <translation type="unfinished">另存为…</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="107"/>
+        <location filename="../Graphics/UMLDialog.py" line="138"/>
         <source>Print</source>
         <translation type="unfinished">打印</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="112"/>
+        <location filename="../Graphics/UMLDialog.py" line="143"/>
         <source>Print Preview</source>
         <translation type="unfinished">打印预览</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="126"/>
+        <location filename="../Graphics/UMLDialog.py" line="157"/>
         <source>File</source>
         <translation type="unfinished">文件</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="178"/>
-        <source>Illegal diagram type &apos;{0}&apos; given.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>Save Diagram</source>
         <translation type="unfinished">保存图表</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="230"/>
+        <location filename="../Graphics/UMLDialog.py" line="257"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished">&lt;p&gt;文件 &lt;b&gt;{0}&lt;/b&gt; 已经存在。是否覆盖?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="256"/>
+        <location filename="../Graphics/UMLDialog.py" line="494"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="386"/>
+        <location filename="../Graphics/UMLDialog.py" line="551"/>
         <source>Load Diagram</source>
         <translation type="unfinished">加载图表</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="287"/>
+        <location filename="../Graphics/UMLDialog.py" line="518"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="378"/>
+        <location filename="../Graphics/UMLDialog.py" line="453"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not contain valid data.&lt;/p&gt;&lt;p&gt;Invalid line: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="102"/>
+        <location filename="../Graphics/UMLDialog.py" line="133"/>
         <source>Save as Image</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLDialog.py" line="274"/>
-        <source>Eric Graphics File (*.e5g);;All Files (*)</source>
+        <location filename="../Graphics/UMLDialog.py" line="43"/>
+        <source>Class Diagram</source>
+        <translation type="unfinished">类图</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="45"/>
+        <source>Package Diagram</source>
+        <translation type="unfinished">程序包图</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="47"/>
+        <source>Imports Diagram</source>
+        <translation type="unfinished">引用图</translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="49"/>
+        <source>Application Diagram</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="105"/>
+        <source>Illegal Diagram Type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Graphics/UMLDialog.py" line="289"/>
+        <source>Eric Graphics File (*.egj);;Eric Text Graphics File (*.e5g);;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>UMLGraphicsView</name>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="83"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="85"/>
         <source>Delete shapes</source>
         <translation>删除形状</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="116"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="118"/>
         <source>Set size</source>
         <translation>设置尺寸</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="126"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="128"/>
         <source>Re-Layout</source>
         <translation>重新布局</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="131"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="133"/>
         <source>Align Left</source>
         <translation>左对齐</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="138"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="140"/>
         <source>Align Center Horizontal</source>
         <translation>水平居中对齐</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="145"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="147"/>
         <source>Align Right</source>
         <translation>右对齐</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="152"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="154"/>
         <source>Align Top</source>
         <translation>顶部对齐</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="159"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="161"/>
         <source>Align Center Vertical</source>
         <translation>垂直居中对齐</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="166"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="168"/>
         <source>Align Bottom</source>
         <translation>底部对齐</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="219"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="233"/>
         <source>Graphics</source>
         <translation>图形</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>Save Diagram</source>
         <translation>保存图表</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="341"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="360"/>
         <source>Portable Network Graphics (*.png);;Scalable Vector Graphics (*.svg)</source>
         <translation>便携式网络图形 (*.png);;可缩放的向量图形 (*.svg)</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="88"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="90"/>
         <source>Increase width by {0} points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="95"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="97"/>
         <source>Increase height by {0} points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="102"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="104"/>
         <source>Decrease width by {0} points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="109"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="111"/>
         <source>Decrease height by {0} points</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="368"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="387"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; could not be saved.&lt;/p&gt;</source>
         <translation type="unfinished">&lt;p&gt;文件 &lt;b&gt;{0}&lt;/b&gt; 无法保存。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="356"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="375"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; already exists. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished">&lt;p&gt;文件 &lt;b&gt;{0}&lt;/b&gt; 已经存在。是否覆盖?&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../Graphics/UMLGraphicsView.py" line="121"/>
+        <location filename="../Graphics/UMLGraphicsView.py" line="123"/>
         <source>Re-Scan</source>
         <translation type="unfinished"></translation>
     </message>
@@ -80662,7 +80786,7 @@
 <context>
     <name>UnittestDialog</name>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>Unittest</source>
         <translation>单元测试</translation>
     </message>
@@ -80848,17 +80972,17 @@
         <translation type="obsolete">必须输入测试套件文件。</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="699"/>
         <source>Preparing Testsuite</source>
         <translation>准备测试套件</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="989"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="991"/>
         <source>Running</source>
         <translation>正在运行</translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1162"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1164"/>
         <source>Show Source</source>
         <translation>显示源代码</translation>
     </message>
@@ -80868,12 +80992,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1033"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1035"/>
         <source>Failure: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1048"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1050"/>
         <source>Error: {0}</source>
         <translation type="unfinished">错误:{0}</translation>
     </message>
@@ -80908,17 +81032,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1063"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1065"/>
         <source>    Skipped: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1081"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1083"/>
         <source>    Expected Failure</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="1098"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1100"/>
         <source>    Unexpected Success</source>
         <translation type="unfinished"></translation>
     </message>
@@ -81020,17 +81144,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="707"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="703"/>
         <source>Unittest with auto-discovery</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="791"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="787"/>
         <source>You must enter a start directory for auto-discovery.</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="1013"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="1015"/>
         <source>Ran %n test(s) in {0:.3f}s</source>
         <translation type="unfinished">
             <numerusform></numerusform>
@@ -81062,29 +81186,29 @@
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../PyUnit/UnittestDialog.py" line="623"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="619"/>
         <source>Discovered %n Test(s)</source>
         <translation type="unfinished">
             <numerusform></numerusform>
         </translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="628"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="624"/>
         <source>&lt;p&gt;Unable to discover tests.&lt;/p&gt;&lt;p&gt;{0}&lt;br/&gt;{1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="694"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="690"/>
         <source>You must select auto-discovery or enter a test suite file or a dotted test name.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="716"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="712"/>
         <source>&lt;Unnamed Test&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="907"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="909"/>
         <source>&lt;p&gt;Unable to run test &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;{1}&lt;br/&gt;{2}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -81114,7 +81238,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../PyUnit/UnittestDialog.py" line="724"/>
+        <location filename="../PyUnit/UnittestDialog.py" line="720"/>
         <source>No test case has been selected. Shall all test cases be run?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -81123,6 +81247,11 @@
         <source>Python3 Files ({0});;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../PyUnit/UnittestDialog.py" line="881"/>
+        <source>No unittest were found. Aborting...</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>UnknownDevicesDialog</name>
@@ -81361,828 +81490,828 @@
 <context>
     <name>UserInterface</name>
     <message>
-        <location filename="../UI/UserInterface.py" line="275"/>
+        <location filename="../UI/UserInterface.py" line="276"/>
         <source>Initializing Plugin Manager...</source>
         <translation>初始化插件管理器…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="282"/>
+        <location filename="../UI/UserInterface.py" line="283"/>
         <source>Generating Main User Interface...</source>
         <translation>生成主用户界面…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="332"/>
+        <location filename="../UI/UserInterface.py" line="333"/>
         <source>Setting up connections...</source>
         <translation>建立连接…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="577"/>
+        <location filename="../UI/UserInterface.py" line="580"/>
         <source>Initializing Tools...</source>
         <translation>初始化工具…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="587"/>
+        <location filename="../UI/UserInterface.py" line="590"/>
         <source>Registering Objects...</source>
         <translation>注册对象…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="624"/>
+        <location filename="../UI/UserInterface.py" line="627"/>
         <source>Initializing Actions...</source>
         <translation>初始化动作…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="626"/>
+        <location filename="../UI/UserInterface.py" line="629"/>
         <source>Initializing Menus...</source>
         <translation>初始化菜单…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="628"/>
+        <location filename="../UI/UserInterface.py" line="631"/>
         <source>Initializing Toolbars...</source>
         <translation>初始化工具栏…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="630"/>
+        <location filename="../UI/UserInterface.py" line="633"/>
         <source>Initializing Statusbar...</source>
         <translation>初始化状态栏…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="657"/>
+        <location filename="../UI/UserInterface.py" line="660"/>
         <source>Initializing Single Application Server...</source>
         <translation>初始化单应用程序服务器…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="667"/>
+        <location filename="../UI/UserInterface.py" line="670"/>
         <source>Activating Plugins...</source>
         <translation>激活插件…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="683"/>
+        <location filename="../UI/UserInterface.py" line="686"/>
         <source>Restoring Toolbarmanager...</source>
         <translation>恢复工具拦管理器…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Project-Viewer</source>
         <translation>项目浏览器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Multiproject-Viewer</source>
         <translation>多重项目浏览器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Debug-Viewer</source>
         <translation>调试浏览器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Log-Viewer</source>
         <translation>日志浏览器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Task-Viewer</source>
         <translation>任务浏览器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Template-Viewer</source>
         <translation>模板浏览器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>File-Browser</source>
         <translation>文件浏览器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Shell</source>
         <translation>命令行</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>Horizontal Toolbox</source>
         <translation>横向工具箱</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Quit</source>
         <translation>退出</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>&amp;Quit</source>
         <translation>退出(&amp;Q)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1636"/>
+        <location filename="../UI/UserInterface.py" line="1639"/>
         <source>Ctrl+Q</source>
         <comment>File|Quit</comment>
         <translation>Ctrl+Q</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1642"/>
+        <location filename="../UI/UserInterface.py" line="1645"/>
         <source>Quit the IDE</source>
         <translation>退出程序</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1643"/>
+        <location filename="../UI/UserInterface.py" line="1646"/>
         <source>&lt;b&gt;Quit the IDE&lt;/b&gt;&lt;p&gt;This quits the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation>&lt;b&gt;退出程序&lt;/b&gt;&lt;p&gt;退出本程序。 先保存任何未保存的更改。任何被调试的 Python 程序都将停止,并将选项写入磁盘。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1714"/>
+        <location filename="../UI/UserInterface.py" line="1717"/>
         <source>Edit Profile</source>
         <translation>编辑模式</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1720"/>
+        <location filename="../UI/UserInterface.py" line="1723"/>
         <source>Activate the edit view profile</source>
         <translation>激活编辑视图模式</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1722"/>
+        <location filename="../UI/UserInterface.py" line="1725"/>
         <source>&lt;b&gt;Edit Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Edit View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation>&lt;b&gt;编辑模式&lt;/b&gt;&lt;p&gt;激活“编辑视图模式”。如果激活了该模式,则显示的窗口将按“视图模式配置”对话框进行配置。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1731"/>
+        <location filename="../UI/UserInterface.py" line="1734"/>
         <source>Debug Profile</source>
         <translation>调试模式</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1737"/>
+        <location filename="../UI/UserInterface.py" line="1740"/>
         <source>Activate the debug view profile</source>
         <translation>激活调试模式</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1739"/>
+        <location filename="../UI/UserInterface.py" line="1742"/>
         <source>&lt;b&gt;Debug Profile&lt;/b&gt;&lt;p&gt;Activate the &quot;Debug View Profile&quot;. Windows being shown, if this profile is active, may be configured with the &quot;View Profile Configuration&quot; dialog.&lt;/p&gt;</source>
         <translation>&lt;b&gt;调试模式&lt;/b&gt;&lt;p&gt;激活“调试视图模式”。如果激活了该模式,则显示的窗口将按“视图模式配置”对话框进行配置。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>&amp;Project-Viewer</source>
         <translation>项目浏览器(&amp;P)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1748"/>
+        <location filename="../UI/UserInterface.py" line="1751"/>
         <source>Alt+Shift+P</source>
         <translation>Alt+Shift+P</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>&amp;Multiproject-Viewer</source>
         <translation>多重项目浏览器(&amp;M)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1765"/>
+        <location filename="../UI/UserInterface.py" line="1768"/>
         <source>Alt+Shift+M</source>
         <translation>Alt+Shift+M</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>Alt+Shift+D</source>
         <translation>Alt+Shift+D</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>&amp;Shell</source>
         <translation>命令行(&amp;S)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1801"/>
+        <location filename="../UI/UserInterface.py" line="1804"/>
         <source>Alt+Shift+S</source>
         <translation>Alt+Shift+S</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
+        <location filename="../UI/UserInterface.py" line="1821"/>
         <source>Alt+Shift+F</source>
         <translation>Alt+Shift+F</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
+        <location filename="../UI/UserInterface.py" line="1838"/>
         <source>Alt+Shift+G</source>
         <translation>Alt+Shift+G</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
+        <location filename="../UI/UserInterface.py" line="1856"/>
         <source>Alt+Shift+T</source>
         <translation>Alt+Shift+T</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
+        <location filename="../UI/UserInterface.py" line="1875"/>
         <source>Alt+Shift+A</source>
         <translation>Alt+Shift+A</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1915"/>
+        <location filename="../UI/UserInterface.py" line="1918"/>
         <source>&amp;Horizontal Toolbox</source>
         <translation>横向工具箱(&amp;H)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1919"/>
+        <location filename="../UI/UserInterface.py" line="1922"/>
         <source>Toggle the Horizontal Toolbox window</source>
         <translation>切换横向工具箱窗口</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1921"/>
+        <location filename="../UI/UserInterface.py" line="1924"/>
         <source>&lt;b&gt;Toggle the Horizontal Toolbox window&lt;/b&gt;&lt;p&gt;If the Horizontal Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;切换横向工具箱窗口&lt;/b&gt;&lt;p&gt;在横向工具箱窗口的显示和隐藏状态间切换。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>What&apos;s This?</source>
         <translation>这是什么?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>&amp;What&apos;s This?</source>
         <translation>这是什么(&amp;W)?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2120"/>
+        <location filename="../UI/UserInterface.py" line="2123"/>
         <source>Shift+F1</source>
         <translation>Shift+F1</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2126"/>
+        <location filename="../UI/UserInterface.py" line="2129"/>
         <source>Context sensitive help</source>
         <translation>背景帮助</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2127"/>
+        <location filename="../UI/UserInterface.py" line="2130"/>
         <source>&lt;b&gt;Display context sensitive help&lt;/b&gt;&lt;p&gt;In What&apos;s This? mode, the mouse cursor shows an arrow with a question mark, and you can click on the interface elements to get a short description of what they do and how to use them. In dialogs, this feature can be accessed using the context help button in the titlebar.&lt;/p&gt;</source>
         <translation>&lt;b&gt;显示背景帮助&lt;/b&gt;&lt;p&gt;在“这是什么?”模式中,鼠标光标显示为带问号的箭头,通过点击界面元素你可以获得“在做什么”和“怎样使用”的简短描述。使用标题栏中的上下文帮助按钮可以获得此功能。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>Helpviewer</source>
         <translation>帮助浏览器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>&amp;Helpviewer...</source>
         <translation>帮助浏览器(&amp;H)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2138"/>
+        <location filename="../UI/UserInterface.py" line="2141"/>
         <source>F1</source>
         <translation>F1</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2144"/>
+        <location filename="../UI/UserInterface.py" line="2147"/>
         <source>Open the helpviewer window</source>
         <translation>打开帮助浏览器窗口</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show Versions</source>
         <translation>显示版本</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2164"/>
+        <location filename="../UI/UserInterface.py" line="2167"/>
         <source>Show &amp;Versions</source>
         <translation>显示版本(&amp;V)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2168"/>
+        <location filename="../UI/UserInterface.py" line="2171"/>
         <source>Display version information</source>
         <translation>显示版本信息</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2170"/>
+        <location filename="../UI/UserInterface.py" line="2173"/>
         <source>&lt;b&gt;Show Versions&lt;/b&gt;&lt;p&gt;Display version information.&lt;/p&gt;</source>
         <translation>&lt;b&gt;显示版本&lt;/b&gt;&lt;p&gt;显示版本信息。&lt;/p&gt;</translation>
     </message>
     <message>
+        <location filename="../UI/UserInterface.py" line="2183"/>
+        <source>Check for Updates</source>
+        <translation>检查更新</translation>
+    </message>
+    <message>
         <location filename="../UI/UserInterface.py" line="2180"/>
-        <source>Check for Updates</source>
-        <translation>检查更新</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="2177"/>
         <source>Check for &amp;Updates...</source>
         <translation>检查更新(&amp;U)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show downloadable versions</source>
         <translation>显示可下载的版本</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2188"/>
+        <location filename="../UI/UserInterface.py" line="2191"/>
         <source>Show &amp;downloadable versions...</source>
         <translation>显示可下载的版本(&amp;D)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2192"/>
+        <location filename="../UI/UserInterface.py" line="2195"/>
         <source>Show the versions available for download</source>
         <translation>显示可以下载的版本</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Report Bug</source>
         <translation>报告错误</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2229"/>
+        <location filename="../UI/UserInterface.py" line="2232"/>
         <source>Report &amp;Bug...</source>
         <translation>报告错误(&amp;B)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2233"/>
+        <location filename="../UI/UserInterface.py" line="2236"/>
         <source>Report a bug</source>
         <translation>报告一个错误</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2234"/>
+        <location filename="../UI/UserInterface.py" line="2237"/>
         <source>&lt;b&gt;Report Bug...&lt;/b&gt;&lt;p&gt;Opens a dialog to report a bug.&lt;/p&gt;</source>
         <translation>&lt;b&gt;报告错误…&lt;/b&gt;&lt;p&gt;打开一个对话框并报告一个错误。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request Feature</source>
         <translation>请求功能</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2241"/>
+        <location filename="../UI/UserInterface.py" line="2244"/>
         <source>Request &amp;Feature...</source>
         <translation>请求功能(&amp;F)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2245"/>
+        <location filename="../UI/UserInterface.py" line="2248"/>
         <source>Send a feature request</source>
         <translation>发送一个功能请求</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2247"/>
+        <location filename="../UI/UserInterface.py" line="2250"/>
         <source>&lt;b&gt;Request Feature...&lt;/b&gt;&lt;p&gt;Opens a dialog to send a feature request.&lt;/p&gt;</source>
         <translation>&lt;b&gt;请求功能…&lt;/b&gt;&lt;p&gt;打开一个对话框并发送一个功能请求。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3365"/>
+        <location filename="../UI/UserInterface.py" line="3368"/>
         <source>Unittest</source>
         <translation>单元测试</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2256"/>
+        <location filename="../UI/UserInterface.py" line="2259"/>
         <source>&amp;Unittest...</source>
         <translation>单元测试(&amp;U)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2261"/>
+        <location filename="../UI/UserInterface.py" line="2264"/>
         <source>Start unittest dialog</source>
         <translation>打开单元测试对话框</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2262"/>
+        <location filename="../UI/UserInterface.py" line="2265"/>
         <source>&lt;b&gt;Unittest&lt;/b&gt;&lt;p&gt;Perform unit tests. The dialog gives you the ability to select and run a unittest suite.&lt;/p&gt;</source>
         <translation>&lt;b&gt;单元测试&lt;/b&gt;&lt;p&gt;执行单元测试。通过对话框可以选择和运行一个单元测试组件。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
+        <location filename="../UI/UserInterface.py" line="2273"/>
         <source>Unittest Restart</source>
         <translation>单元测试重启</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2270"/>
+        <location filename="../UI/UserInterface.py" line="2273"/>
         <source>&amp;Restart Unittest...</source>
         <translation>重启单元测试(&amp;R)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2275"/>
+        <location filename="../UI/UserInterface.py" line="2278"/>
         <source>Restart last unittest</source>
         <translation>重启最后的单元测试</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2276"/>
+        <location filename="../UI/UserInterface.py" line="2279"/>
         <source>&lt;b&gt;Restart Unittest&lt;/b&gt;&lt;p&gt;Restart the unittest performed last.&lt;/p&gt;</source>
         <translation>&lt;b&gt;重启单元测试&lt;/b&gt;&lt;p&gt;重新启动最后执行的单元测试。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
+        <location filename="../UI/UserInterface.py" line="2303"/>
         <source>Unittest Script</source>
         <translation>脚本单元测试</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2300"/>
+        <location filename="../UI/UserInterface.py" line="2303"/>
         <source>Unittest &amp;Script...</source>
         <translation>脚本单元测试(&amp;S)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2305"/>
+        <location filename="../UI/UserInterface.py" line="2308"/>
         <source>Run unittest with current script</source>
         <translation>对当前脚本运行单元测试</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2307"/>
+        <location filename="../UI/UserInterface.py" line="2310"/>
         <source>&lt;b&gt;Unittest Script&lt;/b&gt;&lt;p&gt;Run unittest with current script.&lt;/p&gt;</source>
         <translation>&lt;b&gt;脚本单元测试&lt;/b&gt;&lt;p&gt;对当前脚本运动单元测试。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
+        <location filename="../UI/UserInterface.py" line="2318"/>
         <source>Unittest Project</source>
         <translation>项目单元测试</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2315"/>
+        <location filename="../UI/UserInterface.py" line="2318"/>
         <source>Unittest &amp;Project...</source>
         <translation>项目单元测试(&amp;P)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2320"/>
+        <location filename="../UI/UserInterface.py" line="2323"/>
         <source>Run unittest with current project</source>
         <translation>对当前项目运行单元测试</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2322"/>
+        <location filename="../UI/UserInterface.py" line="2325"/>
         <source>&lt;b&gt;Unittest Project&lt;/b&gt;&lt;p&gt;Run unittest with current project.&lt;/p&gt;</source>
         <translation>&lt;b&gt;项目单元测试&lt;/b&gt;&lt;p&gt;对当前项目运行单元测试。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
+        <location filename="../UI/UserInterface.py" line="2386"/>
         <source>UI Previewer</source>
         <translation>用户界面预览器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2383"/>
+        <location filename="../UI/UserInterface.py" line="2386"/>
         <source>&amp;UI Previewer...</source>
         <translation>用户界面预览器(&amp;U)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2388"/>
+        <location filename="../UI/UserInterface.py" line="2391"/>
         <source>Start the UI Previewer</source>
         <translation>开启用户界面预览器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2389"/>
+        <location filename="../UI/UserInterface.py" line="2392"/>
         <source>&lt;b&gt;UI Previewer&lt;/b&gt;&lt;p&gt;Start the UI Previewer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;助词界面预览器&lt;/b&gt;&lt;p&gt;开启用户界面预览器。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
+        <location filename="../UI/UserInterface.py" line="2399"/>
         <source>Translations Previewer</source>
         <translation>翻译预览器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2396"/>
+        <location filename="../UI/UserInterface.py" line="2399"/>
         <source>&amp;Translations Previewer...</source>
         <translation>翻译预览器(&amp;T)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2401"/>
+        <location filename="../UI/UserInterface.py" line="2404"/>
         <source>Start the Translations Previewer</source>
         <translation>开启翻译预览器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2403"/>
+        <location filename="../UI/UserInterface.py" line="2406"/>
         <source>&lt;b&gt;Translations Previewer&lt;/b&gt;&lt;p&gt;Start the Translations Previewer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;翻译预览器&lt;/b&gt;&lt;p&gt;开启翻译预览器。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
+        <location filename="../UI/UserInterface.py" line="2413"/>
         <source>Compare Files</source>
         <translation>比较文件</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2410"/>
+        <location filename="../UI/UserInterface.py" line="2413"/>
         <source>&amp;Compare Files...</source>
         <translation>比较文件(&amp;C)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2428"/>
+        <location filename="../UI/UserInterface.py" line="2431"/>
         <source>Compare two files</source>
         <translation>比较两个文件</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2416"/>
+        <location filename="../UI/UserInterface.py" line="2419"/>
         <source>&lt;b&gt;Compare Files&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files.&lt;/p&gt;</source>
         <translation>&lt;b&gt;比较文件&lt;/b&gt;&lt;p&gt;打开对话框比较两个文件。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
+        <location filename="../UI/UserInterface.py" line="2426"/>
         <source>Compare Files side by side</source>
         <translation>并排比较文件</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2429"/>
+        <location filename="../UI/UserInterface.py" line="2432"/>
         <source>&lt;b&gt;Compare Files side by side&lt;/b&gt;&lt;p&gt;Open a dialog to compare two files and show the result side by side.&lt;/p&gt;</source>
         <translation>&lt;b&gt;并排比较文件&lt;/b&gt;&lt;p&gt;打开对话框比较两个文件,并排显示结果。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2455"/>
+        <location filename="../UI/UserInterface.py" line="2458"/>
         <source>Mini Editor</source>
         <translation>小型编辑器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2450"/>
+        <location filename="../UI/UserInterface.py" line="2453"/>
         <source>Mini &amp;Editor...</source>
         <translation>小型编辑器(&amp;E)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2456"/>
+        <location filename="../UI/UserInterface.py" line="2459"/>
         <source>&lt;b&gt;Mini Editor&lt;/b&gt;&lt;p&gt;Open a dialog with a simplified editor.&lt;/p&gt;</source>
         <translation>&lt;b&gt;小型编辑器&lt;/b&gt;&lt;p&gt;打开一个具有简化功能编辑器的对话框。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
+        <location filename="../UI/UserInterface.py" line="2524"/>
         <source>Preferences</source>
         <translation>首选项</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2521"/>
+        <location filename="../UI/UserInterface.py" line="2524"/>
         <source>&amp;Preferences...</source>
         <translation>首选项(&amp;P)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2526"/>
+        <location filename="../UI/UserInterface.py" line="2529"/>
         <source>Set the prefered configuration</source>
         <translation>设定偏好配置</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2528"/>
+        <location filename="../UI/UserInterface.py" line="2531"/>
         <source>&lt;b&gt;Preferences&lt;/b&gt;&lt;p&gt;Set the configuration items of the application with your prefered values.&lt;/p&gt;</source>
         <translation>&lt;b&gt;首选项&lt;/b&gt;&lt;p&gt;将应用程序的配置项设定为你喜欢的值。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
+        <location filename="../UI/UserInterface.py" line="2540"/>
         <source>Export Preferences</source>
         <translation>导出首选项</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2537"/>
+        <location filename="../UI/UserInterface.py" line="2540"/>
         <source>E&amp;xport Preferences...</source>
         <translation>导出首选项(&amp;X)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2542"/>
+        <location filename="../UI/UserInterface.py" line="2545"/>
         <source>Export the current configuration</source>
         <translation>导出当前配置</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2544"/>
+        <location filename="../UI/UserInterface.py" line="2547"/>
         <source>&lt;b&gt;Export Preferences&lt;/b&gt;&lt;p&gt;Export the current configuration to a file.&lt;/p&gt;</source>
         <translation>&lt;b&gt;导出首选项&lt;/b&gt;&lt;p&gt;将当前配置导出到一个文件中。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
+        <location filename="../UI/UserInterface.py" line="2554"/>
         <source>Import Preferences</source>
         <translation>导入首选项</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2551"/>
+        <location filename="../UI/UserInterface.py" line="2554"/>
         <source>I&amp;mport Preferences...</source>
         <translation>导入首选项(&amp;M)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2556"/>
+        <location filename="../UI/UserInterface.py" line="2559"/>
         <source>Import a previously exported configuration</source>
         <translation>导入以前导出的配置</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2558"/>
+        <location filename="../UI/UserInterface.py" line="2561"/>
         <source>&lt;b&gt;Import Preferences&lt;/b&gt;&lt;p&gt;Import a previously exported configuration.&lt;/p&gt;</source>
         <translation>&lt;b&gt;导入首选项&lt;/b&gt;&lt;p&gt;导入以前导出的配置。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
+        <location filename="../UI/UserInterface.py" line="2568"/>
         <source>Reload APIs</source>
         <translation>重新载入 API</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2565"/>
+        <location filename="../UI/UserInterface.py" line="2568"/>
         <source>Reload &amp;APIs</source>
         <translation>重新载入 &amp;API</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2569"/>
+        <location filename="../UI/UserInterface.py" line="2572"/>
         <source>Reload the API information</source>
         <translation>重新载入 API 信息</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2571"/>
+        <location filename="../UI/UserInterface.py" line="2574"/>
         <source>&lt;b&gt;Reload APIs&lt;/b&gt;&lt;p&gt;Reload the API information.&lt;/p&gt;</source>
         <translation>&lt;b&gt;重新载入 API&lt;/b&gt;&lt;p&gt;重新载入 API 信息。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2583"/>
+        <location filename="../UI/UserInterface.py" line="2586"/>
         <source>Show external tools</source>
         <translation>显示外部工具</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2578"/>
+        <location filename="../UI/UserInterface.py" line="2581"/>
         <source>Show external &amp;tools</source>
         <translation>显示外部工具(&amp;T)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
+        <location filename="../UI/UserInterface.py" line="2597"/>
         <source>View Profiles</source>
         <translation>视图模式</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2594"/>
+        <location filename="../UI/UserInterface.py" line="2597"/>
         <source>&amp;View Profiles...</source>
         <translation>视图模式(&amp;V)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2599"/>
+        <location filename="../UI/UserInterface.py" line="2602"/>
         <source>Configure view profiles</source>
         <translation>配置视图模式</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2601"/>
+        <location filename="../UI/UserInterface.py" line="2604"/>
         <source>&lt;b&gt;View Profiles&lt;/b&gt;&lt;p&gt;Configure the view profiles. With this dialog you may set the visibility of the various windows for the predetermined view profiles.&lt;/p&gt;</source>
         <translation>&lt;b&gt;视图模式&lt;/b&gt;&lt;p&gt;配置视图模式。通过该对话框可以为预先确定的视图设置多个窗口的可见性。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
+        <location filename="../UI/UserInterface.py" line="2614"/>
         <source>Toolbars</source>
         <translation>工具栏</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2611"/>
+        <location filename="../UI/UserInterface.py" line="2614"/>
         <source>Tool&amp;bars...</source>
         <translation>工具栏(&amp;B)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2616"/>
+        <location filename="../UI/UserInterface.py" line="2619"/>
         <source>Configure toolbars</source>
         <translation>配置工具栏</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2617"/>
+        <location filename="../UI/UserInterface.py" line="2620"/>
         <source>&lt;b&gt;Toolbars&lt;/b&gt;&lt;p&gt;Configure the toolbars. With this dialog you may change the actions shown on the various toolbars and define your own toolbars.&lt;/p&gt;</source>
         <translation>&lt;b&gt;工具栏&lt;/b&gt;&lt;p&gt;配置工具栏通过该对话框可以改变显示于多个工具栏的动作,还可以自定义工具栏。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
+        <location filename="../UI/UserInterface.py" line="2629"/>
         <source>Keyboard Shortcuts</source>
         <translation>键盘快捷键</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2626"/>
+        <location filename="../UI/UserInterface.py" line="2629"/>
         <source>Keyboard &amp;Shortcuts...</source>
         <translation>键盘快捷键(&amp;S)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2631"/>
+        <location filename="../UI/UserInterface.py" line="2634"/>
         <source>Set the keyboard shortcuts</source>
         <translation>设置键盘快捷键</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2633"/>
+        <location filename="../UI/UserInterface.py" line="2636"/>
         <source>&lt;b&gt;Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Set the keyboard shortcuts of the application with your prefered values.&lt;/p&gt;</source>
         <translation>&lt;b&gt;键盘快捷键&lt;/b&gt;&lt;p&gt;将程序的键盘快捷键设置成你喜欢的按键。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>Export Keyboard Shortcuts</source>
         <translation>导出键盘快捷键</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2641"/>
+        <location filename="../UI/UserInterface.py" line="2644"/>
         <source>&amp;Export Keyboard Shortcuts...</source>
         <translation>导出键盘快捷键(&amp;E)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2646"/>
+        <location filename="../UI/UserInterface.py" line="2649"/>
         <source>Export the keyboard shortcuts</source>
         <translation>导出键盘快捷键</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2648"/>
+        <location filename="../UI/UserInterface.py" line="2651"/>
         <source>&lt;b&gt;Export Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Export the keyboard shortcuts of the application.&lt;/p&gt;</source>
         <translation>&lt;b&gt;导出键盘快捷键&lt;/b&gt;&lt;p&gt;导出程序的键盘快捷键。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Import Keyboard Shortcuts</source>
         <translation>导入键盘快捷键</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2655"/>
+        <location filename="../UI/UserInterface.py" line="2658"/>
         <source>&amp;Import Keyboard Shortcuts...</source>
         <translation>导入键盘快捷键(&amp;I)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2660"/>
+        <location filename="../UI/UserInterface.py" line="2663"/>
         <source>Import the keyboard shortcuts</source>
         <translation>导入键盘快捷键</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2662"/>
+        <location filename="../UI/UserInterface.py" line="2665"/>
         <source>&lt;b&gt;Import Keyboard Shortcuts&lt;/b&gt;&lt;p&gt;Import the keyboard shortcuts of the application.&lt;/p&gt;</source>
         <translation>&lt;b&gt;导入键盘快捷键&lt;/b&gt;&lt;p&gt;导入程序的键盘快捷键。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
+        <location filename="../UI/UserInterface.py" line="2723"/>
         <source>Activate current editor</source>
         <translation>激活当前编辑器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2720"/>
+        <location filename="../UI/UserInterface.py" line="2723"/>
         <source>Alt+Shift+E</source>
         <translation>Alt+Shift+E</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
+        <location filename="../UI/UserInterface.py" line="2733"/>
         <source>Show next</source>
         <translation>显示下一个</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2730"/>
+        <location filename="../UI/UserInterface.py" line="2733"/>
         <source>Ctrl+Alt+Tab</source>
         <translation>Ctrl+Alt+Tab</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
+        <location filename="../UI/UserInterface.py" line="2742"/>
         <source>Show previous</source>
         <translation>显示上一个</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2739"/>
+        <location filename="../UI/UserInterface.py" line="2742"/>
         <source>Shift+Ctrl+Alt+Tab</source>
         <translation>Shift+Ctrl+Alt+Tab</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
+        <location filename="../UI/UserInterface.py" line="2751"/>
         <source>Switch between tabs</source>
         <translation>在选项卡间切换</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2748"/>
+        <location filename="../UI/UserInterface.py" line="2751"/>
         <source>Ctrl+1</source>
         <translation>Ctrl+1</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
+        <location filename="../UI/UserInterface.py" line="2760"/>
         <source>Plugin Infos</source>
         <translation>插件信息</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2757"/>
+        <location filename="../UI/UserInterface.py" line="2760"/>
         <source>&amp;Plugin Infos...</source>
         <translation>插件信息(&amp;P)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2761"/>
+        <location filename="../UI/UserInterface.py" line="2764"/>
         <source>Show Plugin Infos</source>
         <translation>显示插件信息</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2762"/>
+        <location filename="../UI/UserInterface.py" line="2765"/>
         <source>&lt;b&gt;Plugin Infos...&lt;/b&gt;&lt;p&gt;This opens a dialog, that show some information about loaded plugins.&lt;/p&gt;</source>
         <translation>&lt;b&gt;插件信息…&lt;/b&gt;&lt;p&gt;打开一个对话框,显示与已载入插件有关的一些信息。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2775"/>
+        <location filename="../UI/UserInterface.py" line="2778"/>
         <source>Install Plugins</source>
         <translation>安装插件</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2770"/>
+        <location filename="../UI/UserInterface.py" line="2773"/>
         <source>&amp;Install Plugins...</source>
         <translation>安装插件(&amp;I)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2776"/>
+        <location filename="../UI/UserInterface.py" line="2779"/>
         <source>&lt;b&gt;Install Plugins...&lt;/b&gt;&lt;p&gt;This opens a dialog to install or update plugins.&lt;/p&gt;</source>
         <translation>&lt;b&gt;安装插件…&lt;/b&gt;&lt;p&gt;打开一个对话框安装或更新插件。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2788"/>
+        <location filename="../UI/UserInterface.py" line="2791"/>
         <source>Uninstall Plugin</source>
         <translation>卸载插件</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2783"/>
+        <location filename="../UI/UserInterface.py" line="2786"/>
         <source>&amp;Uninstall Plugin...</source>
         <translation>卸载插件(&amp;U)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2789"/>
+        <location filename="../UI/UserInterface.py" line="2792"/>
         <source>&lt;b&gt;Uninstall Plugin...&lt;/b&gt;&lt;p&gt;This opens a dialog to uninstall a plugin.&lt;/p&gt;</source>
         <translation>&lt;b&gt;卸载插件…&lt;/b&gt;&lt;p&gt;打开一个对话框卸载插件。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
+        <location filename="../UI/UserInterface.py" line="2799"/>
         <source>Plugin Repository</source>
         <translation>插件储存库</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2796"/>
+        <location filename="../UI/UserInterface.py" line="2799"/>
         <source>Plugin &amp;Repository...</source>
         <translation>插件储存库(&amp;R)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2801"/>
+        <location filename="../UI/UserInterface.py" line="2804"/>
         <source>Show Plugins available for download</source>
         <translation>显示可以下载的插件</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2803"/>
+        <location filename="../UI/UserInterface.py" line="2806"/>
         <source>&lt;b&gt;Plugin Repository...&lt;/b&gt;&lt;p&gt;This opens a dialog, that shows a list of plugins available on the Internet.&lt;/p&gt;</source>
         <translation>&lt;b&gt;插件储存库…&lt;/b&gt;&lt;p&gt;打开一个对话框,显示互联网上可用的插件列表。&lt;/p&gt;</translation>
     </message>
@@ -82212,7 +82341,7 @@
         <translation type="obsolete">打开 PyQt4 文档</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2953"/>
+        <location filename="../UI/UserInterface.py" line="2956"/>
         <source>Eric API Documentation</source>
         <translation>Eric API 文档</translation>
     </message>
@@ -82222,112 +82351,112 @@
         <translation type="obsolete">&amp;Eric API 文档</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2957"/>
+        <location filename="../UI/UserInterface.py" line="2960"/>
         <source>Open Eric API Documentation</source>
         <translation>打开 Eric API 文档</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3158"/>
+        <location filename="../UI/UserInterface.py" line="3161"/>
         <source>&amp;Unittest</source>
         <translation>单元测试(&amp;U)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3102"/>
+        <location filename="../UI/UserInterface.py" line="3105"/>
         <source>E&amp;xtras</source>
         <translation>附加程序(&amp;X)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3112"/>
+        <location filename="../UI/UserInterface.py" line="3115"/>
         <source>Wi&amp;zards</source>
         <translation>向导(&amp;Z)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3175"/>
+        <location filename="../UI/UserInterface.py" line="3178"/>
         <source>Select Tool Group</source>
         <translation>选择工具组</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3186"/>
+        <location filename="../UI/UserInterface.py" line="3189"/>
         <source>Se&amp;ttings</source>
         <translation>设置(&amp;T)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3216"/>
+        <location filename="../UI/UserInterface.py" line="3219"/>
         <source>&amp;Window</source>
         <translation>窗口(&amp;W)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3277"/>
+        <location filename="../UI/UserInterface.py" line="3280"/>
         <source>&amp;Toolbars</source>
         <translation>工具栏(&amp;T)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3139"/>
+        <location filename="../UI/UserInterface.py" line="3142"/>
         <source>P&amp;lugins</source>
         <translation>插件(&amp;L)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3148"/>
+        <location filename="../UI/UserInterface.py" line="3151"/>
         <source>Configure...</source>
         <translation>配置…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3291"/>
+        <location filename="../UI/UserInterface.py" line="3294"/>
         <source>&amp;Help</source>
         <translation>帮助(&amp;H)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3364"/>
+        <location filename="../UI/UserInterface.py" line="3367"/>
         <source>Tools</source>
         <translation>工具</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3366"/>
-        <source>Settings</source>
-        <translation>设置</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
-        <source>Help</source>
-        <translation>帮助</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="3368"/>
-        <source>Profiles</source>
-        <translation>模式</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="3369"/>
+        <source>Settings</source>
+        <translation>设置</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="5216"/>
+        <source>Help</source>
+        <translation>帮助</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3371"/>
+        <source>Profiles</source>
+        <translation>模式</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="3372"/>
         <source>Plugins</source>
         <translation>插件</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3534"/>
+        <location filename="../UI/UserInterface.py" line="3537"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors language.&lt;/p&gt;</source>
         <translation>&lt;p&gt;状态栏的这一部分显示当前编辑器语言。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3541"/>
+        <location filename="../UI/UserInterface.py" line="3544"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors encoding.&lt;/p&gt;</source>
         <translation>&lt;p&gt;状态栏的这一部分显示当前编辑器编码。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3548"/>
+        <location filename="../UI/UserInterface.py" line="3551"/>
         <source>&lt;p&gt;This part of the status bar displays the current editors eol setting.&lt;/p&gt;</source>
         <translation>&lt;p&gt;状态栏的这一部分显示当前编辑器行尾设置。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3555"/>
+        <location filename="../UI/UserInterface.py" line="3558"/>
         <source>&lt;p&gt;This part of the status bar displays an indication of the current editors files writability.&lt;/p&gt;</source>
         <translation>&lt;p&gt;状态栏的这一部分显示当前编辑器文件是否可写。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3562"/>
+        <location filename="../UI/UserInterface.py" line="3565"/>
         <source>&lt;p&gt;This part of the status bar displays the line number of the current editor.&lt;/p&gt;</source>
         <translation>&lt;p&gt;状态栏的这一部分显示当前编辑的行号。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3569"/>
+        <location filename="../UI/UserInterface.py" line="3572"/>
         <source>&lt;p&gt;This part of the status bar displays the cursor position of the current editor.&lt;/p&gt;</source>
         <translation>&lt;p&gt;状态栏的这一部分显示当前编辑器的光标位置。&lt;/p&gt;</translation>
     </message>
@@ -82337,52 +82466,52 @@
         <translation type="obsolete">&lt;h3&gt;版本号&lt;/h3&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7268"/>
+        <location filename="../UI/UserInterface.py" line="7295"/>
         <source>&lt;/table&gt;</source>
         <translation>&lt;/table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3813"/>
+        <location filename="../UI/UserInterface.py" line="3816"/>
         <source>Email address or mail server address is empty. Please configure your Email settings in the Preferences Dialog.</source>
         <translation>电子邮件地址或邮件服务器地址为空。请在首选项对话框中配置你的电子邮件设置。</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>Restart application</source>
         <translation>重启程序</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4124"/>
+        <location filename="../UI/UserInterface.py" line="4127"/>
         <source>The application needs to be restarted. Do it now?</source>
         <translation>程序需要重启。现在重启?</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4207"/>
+        <location filename="../UI/UserInterface.py" line="4210"/>
         <source>Configure Tool Groups ...</source>
         <translation>配置工具组…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4211"/>
+        <location filename="../UI/UserInterface.py" line="4214"/>
         <source>Configure current Tool Group ...</source>
         <translation>配置当前工具组…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4162"/>
+        <location filename="../UI/UserInterface.py" line="4165"/>
         <source>&amp;Builtin Tools</source>
         <translation>内建工具(&amp;B)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4179"/>
+        <location filename="../UI/UserInterface.py" line="4182"/>
         <source>&amp;Plugin Tools</source>
         <translation>插件工具(&amp;P)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4326"/>
+        <location filename="../UI/UserInterface.py" line="4329"/>
         <source>&amp;Show all</source>
         <translation>全部显示(&amp;S)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4328"/>
+        <location filename="../UI/UserInterface.py" line="4331"/>
         <source>&amp;Hide all</source>
         <translation>全部隐藏(&amp;H)</translation>
     </message>
@@ -82392,47 +82521,47 @@
         <translation type="obsolete">当前项目未定义主脚本。终止</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>Problem</source>
         <translation>问题</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5536"/>
+        <location filename="../UI/UserInterface.py" line="5552"/>
         <source>Process Generation Error</source>
         <translation>进程生成错误</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Open Browser</source>
         <translation>打开浏览器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6079"/>
+        <location filename="../UI/UserInterface.py" line="6095"/>
         <source>Could not start a web browser</source>
         <translation>无法启动网络浏览器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5213"/>
+        <location filename="../UI/UserInterface.py" line="5216"/>
         <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source>
         <translation>目前没有选择自定义浏览器。请使用首选项对话框指定一个。</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5247"/>
+        <location filename="../UI/UserInterface.py" line="5250"/>
         <source>&lt;p&gt;Could not start the help viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;hh&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;无法开启帮助浏览器。&lt;br&gt;确保其有效如 &lt;b&gt;hh&lt;/b&gt;。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
+        <location filename="../UI/UserInterface.py" line="5497"/>
         <source>External Tools</source>
         <translation>外部工具</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>Documentation Missing</source>
         <translation>文档缺失</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>Documentation</source>
         <translation>文档</translation>
     </message>
@@ -82452,122 +82581,122 @@
         <translation type="obsolete">读取任务</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1673"/>
+        <location filename="../UI/UserInterface.py" line="1676"/>
         <source>Save session</source>
         <translation>保存会话</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>Read session</source>
         <translation>读取会话</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>Drop Error</source>
         <translation>降落误差</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Error during updates check</source>
         <translation>检查更新时出错</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>&amp;Cancel</source>
         <translation>取消(&amp;C)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>Update available</source>
         <translation>可用更新</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7229"/>
+        <location filename="../UI/UserInterface.py" line="7256"/>
         <source>Could not perform updates check.</source>
         <translation>无法完成更新检查。</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7253"/>
+        <location filename="../UI/UserInterface.py" line="7280"/>
         <source>&lt;h3&gt;Available versions&lt;/h3&gt;&lt;table&gt;</source>
         <translation>&lt;h3&gt;可用版本&lt;/h3&gt;&lt;table&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>First time usage</source>
         <translation>第一次使用</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>Left Sidebar</source>
         <translation>左侧边栏</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1929"/>
+        <location filename="../UI/UserInterface.py" line="1932"/>
         <source>&amp;Left Sidebar</source>
         <translation>左侧边栏(&amp;L)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1933"/>
+        <location filename="../UI/UserInterface.py" line="1936"/>
         <source>Toggle the left sidebar window</source>
         <translation>切换左侧边栏窗口</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1934"/>
+        <location filename="../UI/UserInterface.py" line="1937"/>
         <source>&lt;b&gt;Toggle the left sidebar window&lt;/b&gt;&lt;p&gt;If the left sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;切换左侧边栏窗口&lt;/b&gt;&lt;p&gt;如果左侧边栏窗口已隐藏则显示它。如果它可见则隐藏它。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>Bottom Sidebar</source>
         <translation>底栏</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1956"/>
+        <location filename="../UI/UserInterface.py" line="1959"/>
         <source>&amp;Bottom Sidebar</source>
         <translation>底栏(&amp;B)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1960"/>
+        <location filename="../UI/UserInterface.py" line="1963"/>
         <source>Toggle the bottom sidebar window</source>
         <translation>切换底栏窗口</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1962"/>
+        <location filename="../UI/UserInterface.py" line="1965"/>
         <source>&lt;b&gt;Toggle the bottom sidebar window&lt;/b&gt;&lt;p&gt;If the bottom sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;切换底栏窗口&lt;/b&gt;&lt;p&gt;如果底栏窗口已隐藏则显示它。如果它可见则隐藏它。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1783"/>
+        <location filename="../UI/UserInterface.py" line="1786"/>
         <source>&amp;Debug-Viewer</source>
         <translation>调试浏览器(&amp;D)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
+        <location filename="../UI/UserInterface.py" line="2440"/>
         <source>SQL Browser</source>
         <translation>SQL 浏览器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2437"/>
+        <location filename="../UI/UserInterface.py" line="2440"/>
         <source>SQL &amp;Browser...</source>
         <translation>SQL 浏览器(&amp;B)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2442"/>
+        <location filename="../UI/UserInterface.py" line="2445"/>
         <source>Browse a SQL database</source>
         <translation>浏览 SQL 数据库</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2443"/>
+        <location filename="../UI/UserInterface.py" line="2446"/>
         <source>&lt;b&gt;SQL Browser&lt;/b&gt;&lt;p&gt;Browse a SQL database.&lt;/p&gt;</source>
         <translation>&lt;b&gt;SQL 浏览器&lt;/b&gt;&lt;p&gt;浏览 SQL 数据库。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
+        <location filename="../UI/UserInterface.py" line="2495"/>
         <source>Icon Editor</source>
         <translation>图标编辑器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2492"/>
+        <location filename="../UI/UserInterface.py" line="2495"/>
         <source>&amp;Icon Editor...</source>
         <translation>图标编辑器(&amp;I)…</translation>
     </message>
@@ -82592,96 +82721,96 @@
         <translation type="obsolete">打开 PySide 文档</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1602"/>
+        <location filename="../UI/UserInterface.py" line="1605"/>
         <source>{0} - Passive Mode</source>
         <translation>{0} - 被动模式</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1609"/>
+        <location filename="../UI/UserInterface.py" line="1612"/>
         <source>{0} - {1} - Passive Mode</source>
         <translation>{0} - {1} - 被动模式</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1613"/>
+        <location filename="../UI/UserInterface.py" line="1616"/>
         <source>{0} - {1} - {2} - Passive Mode</source>
         <translation>{0} - {1} - {2} - 被动模式</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3640"/>
+        <location filename="../UI/UserInterface.py" line="3643"/>
         <source>External Tools/{0}</source>
         <translation>外部工具/{0}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5341"/>
+        <location filename="../UI/UserInterface.py" line="5344"/>
         <source>&lt;p&gt;The file &lt;b&gt;{0}&lt;/b&gt; does not exist or is zero length.&lt;/p&gt;</source>
         <translation>&lt;p&gt;文件 &lt;b&gt;{0}&lt;/b&gt; 不存在或者长度为零。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5066"/>
+        <location filename="../UI/UserInterface.py" line="5069"/>
         <source>&lt;p&gt;Could not start Qt-Designer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;无法启动 Qt 设计师。&lt;br&gt;请确保它作为 &lt;b&gt;{0}&lt;/b&gt; 可用。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5136"/>
+        <location filename="../UI/UserInterface.py" line="5139"/>
         <source>&lt;p&gt;Could not start Qt-Linguist.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;无法启动 Qt 语言家。&lt;br&gt;请确保它作为 &lt;b&gt;{0}&lt;/b&gt; 可用。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5180"/>
+        <location filename="../UI/UserInterface.py" line="5183"/>
         <source>&lt;p&gt;Could not start Qt-Assistant.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;无法启动 Qt 助手。&lt;br&gt;请确保它作为 &lt;b&gt;{0}&lt;/b&gt; 可用。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5227"/>
+        <location filename="../UI/UserInterface.py" line="5230"/>
         <source>&lt;p&gt;Could not start custom viewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;无法启动自定义的查看器。&lt;br&gt;请确保它作为 &lt;b&gt;{0}&lt;/b&gt; 可用。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5297"/>
+        <location filename="../UI/UserInterface.py" line="5300"/>
         <source>&lt;p&gt;Could not start UI Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;无法启动 UI 预览器。&lt;br&gt;请确保它作为 &lt;b&gt;{0}&lt;/b&gt; 可用。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5354"/>
+        <location filename="../UI/UserInterface.py" line="5357"/>
         <source>&lt;p&gt;Could not start Translation Previewer.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;无法启动翻译预览器。&lt;br&gt;请确保它作为 &lt;b&gt;{0}&lt;/b&gt; 可用。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5377"/>
+        <location filename="../UI/UserInterface.py" line="5380"/>
         <source>&lt;p&gt;Could not start SQL Browser.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;无法启动 SQL 浏览器。&lt;br&gt;请确保它作为 &lt;b&gt;{0}&lt;/b&gt; 可用。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5472"/>
+        <location filename="../UI/UserInterface.py" line="5488"/>
         <source>No tool entry found for external tool &apos;{0}&apos; in tool group &apos;{1}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5481"/>
+        <location filename="../UI/UserInterface.py" line="5497"/>
         <source>No toolgroup entry &apos;{0}&apos; found.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5520"/>
+        <location filename="../UI/UserInterface.py" line="5536"/>
         <source>Starting process &apos;{0} {1}&apos;.
 </source>
         <translation>正在启动进程“{0} {1}”。
 </translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5536"/>
+        <location filename="../UI/UserInterface.py" line="5552"/>
         <source>&lt;p&gt;Could not start the tool entry &lt;b&gt;{0}&lt;/b&gt;.&lt;br&gt;Ensure that it is available as &lt;b&gt;{1}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5614"/>
+        <location filename="../UI/UserInterface.py" line="5630"/>
         <source>Process &apos;{0}&apos; has exited.
 </source>
         <translation>进程“{0}”已退出。
 </translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5876"/>
+        <location filename="../UI/UserInterface.py" line="5892"/>
         <source>&lt;p&gt;The documentation starting point &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; could not be found.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -82691,57 +82820,57 @@
         <translation type="obsolete">&lt;p&gt;任务文件 &lt;b&gt;{0}&lt;/b&gt; 无法写入。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>&lt;p&gt;The tasks file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation>&lt;p&gt;任务文件 &lt;b&gt;{0}&lt;/b&gt; 无法读取。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6550"/>
+        <location filename="../UI/UserInterface.py" line="6566"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;</source>
         <translation>&lt;p&gt;会话文件 &lt;b&gt;{0}&lt;/b&gt; 无法写入。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6605"/>
+        <location filename="../UI/UserInterface.py" line="6621"/>
         <source>&lt;p&gt;The session file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;</source>
         <translation>&lt;p&gt;会话文件 &lt;b&gt;{0}&lt;/b&gt; 无法读取。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6888"/>
+        <location filename="../UI/UserInterface.py" line="6915"/>
         <source>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; is not a file.&lt;/p&gt;</source>
         <translation>&lt;p&gt;&lt;b&gt;{0}&lt;/b&gt; 不是一个文件。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7059"/>
+        <location filename="../UI/UserInterface.py" line="7086"/>
         <source>Trying host {0}</source>
         <translation>正在尝试主机 {0}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1124"/>
+        <location filename="../UI/UserInterface.py" line="1127"/>
         <source>Cooperation</source>
         <translation>协作</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Alt+Shift+O</source>
         <translation>Alt+Shift+O</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1180"/>
+        <location filename="../UI/UserInterface.py" line="1183"/>
         <source>Symbols</source>
         <translation>符号</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Alt+Shift+Y</source>
         <translation>Alt+Shift+Y</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1189"/>
+        <location filename="../UI/UserInterface.py" line="1192"/>
         <source>Numbers</source>
         <translation>数字</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Alt+Shift+B</source>
         <translation>Alt+Shift+B</translation>
     </message>
@@ -82751,7 +82880,7 @@
         <translation type="obsolete">键盘快捷键文件 (*.e4k)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2931"/>
+        <location filename="../UI/UserInterface.py" line="2934"/>
         <source>Python 3 Documentation</source>
         <translation>Python 3 文档</translation>
     </message>
@@ -82761,7 +82890,7 @@
         <translation type="obsolete">Python &amp;3 文档</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2935"/>
+        <location filename="../UI/UserInterface.py" line="2938"/>
         <source>Open Python 3 Documentation</source>
         <translation>打开 Python 3 文档</translation>
     </message>
@@ -82781,343 +82910,343 @@
         <translation type="obsolete">打开 Python 2 文档</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>Error getting versions information</source>
         <translation>获取版本信息出错</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7111"/>
+        <location filename="../UI/UserInterface.py" line="7138"/>
         <source>The versions information could not be downloaded. Please go online and try again.</source>
         <translation>无法获取版本信息。请连线并再试一次。</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7118"/>
+        <location filename="../UI/UserInterface.py" line="7145"/>
         <source>The versions information could not be downloaded for the last 7 days. Please go online and try again.</source>
         <translation>过去7天均无法获取版本信息。请连线并再试一次。</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="692"/>
+        <location filename="../UI/UserInterface.py" line="695"/>
         <source>Setting View Profile...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="705"/>
+        <location filename="../UI/UserInterface.py" line="708"/>
         <source>Reading Tasks...</source>
         <translation>读取任务…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="710"/>
+        <location filename="../UI/UserInterface.py" line="713"/>
         <source>Reading Templates...</source>
         <translation>读取模板…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="715"/>
+        <location filename="../UI/UserInterface.py" line="718"/>
         <source>Starting Debugger...</source>
         <translation>启动调试器…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New Window</source>
         <translation>新建窗口</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>New &amp;Window</source>
         <translation>新建窗口(&amp;W)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1695"/>
+        <location filename="../UI/UserInterface.py" line="1698"/>
         <source>Ctrl+Shift+N</source>
         <comment>File|New Window</comment>
         <translation>Ctrl+Shift+N</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Unittest Rerun Failed</source>
         <translation>单元测试再次运行失败</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2284"/>
+        <location filename="../UI/UserInterface.py" line="2287"/>
         <source>Rerun Failed Tests...</source>
         <translation>重新运行失败的测试…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2289"/>
+        <location filename="../UI/UserInterface.py" line="2292"/>
         <source>Rerun failed tests of the last run</source>
         <translation>重新运行上一次运行中失败的测试</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2291"/>
+        <location filename="../UI/UserInterface.py" line="2294"/>
         <source>&lt;b&gt;Rerun Failed Tests&lt;/b&gt;&lt;p&gt;Rerun all tests that failed during the last unittest run.&lt;/p&gt;</source>
         <translation>&lt;b&gt;重新运行失败的测试&lt;/b&gt;&lt;p&gt;重新运行上一次单元测试中失败的所有测试。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2423"/>
+        <location filename="../UI/UserInterface.py" line="2426"/>
         <source>Compare &amp;Files side by side...</source>
         <translation>并排比较文件(&amp;F)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>Snapshot</source>
         <translation>快照</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2506"/>
+        <location filename="../UI/UserInterface.py" line="2509"/>
         <source>&amp;Snapshot...</source>
         <translation>快照(&amp;S)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2511"/>
+        <location filename="../UI/UserInterface.py" line="2514"/>
         <source>Take snapshots of a screen region</source>
         <translation>截取屏幕区域的快照</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2513"/>
+        <location filename="../UI/UserInterface.py" line="2516"/>
         <source>&lt;b&gt;Snapshot&lt;/b&gt;&lt;p&gt;This opens a dialog to take snapshots of a screen region.&lt;/p&gt;</source>
         <translation>&lt;b&gt;快照&lt;/b&gt;&lt;p&gt;打开一个对话框来截取屏幕一个区域的快照。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5449"/>
+        <location filename="../UI/UserInterface.py" line="5465"/>
         <source>&lt;p&gt;Could not start Snapshot tool.&lt;br&gt;Ensure that it is available as &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation>&lt;p&gt;无法启动快照工具。&lt;br&gt;请确保它作为 &lt;b&gt;{0}&lt;/b&gt; 可用。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7324"/>
+        <location filename="../UI/UserInterface.py" line="7351"/>
         <source>Select Workspace Directory</source>
         <translation>选择工作区目录</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
-        <source>Left Toolbox</source>
-        <translation>左工具箱</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
-        <source>Right Toolbox</source>
-        <translation>右工具箱</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1754"/>
-        <source>Switch the input focus to the Project-Viewer window.</source>
-        <translation>将输入焦点切换至项目查看器窗口。</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1756"/>
-        <source>&lt;b&gt;Activate Project-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Project-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1771"/>
-        <source>Switch the input focus to the Multiproject-Viewer window.</source>
-        <translation>将输入焦点切换至多项目查看器窗口。</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1773"/>
-        <source>&lt;b&gt;Activate Multiproject-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Multiproject-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1789"/>
-        <source>Switch the input focus to the Debug-Viewer window.</source>
-        <translation>将输入焦点切换至调试查看器窗口。</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1791"/>
-        <source>&lt;b&gt;Activate Debug-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Debug-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1807"/>
-        <source>Switch the input focus to the Shell window.</source>
-        <translation>将输入焦点切换至 Shell 窗口。</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1809"/>
-        <source>&lt;b&gt;Activate Shell&lt;/b&gt;&lt;p&gt;This switches the input focus to the Shell window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1818"/>
-        <source>&amp;File-Browser</source>
-        <translation>文件浏览器(&amp;F)</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1824"/>
-        <source>Switch the input focus to the File-Browser window.</source>
-        <translation>将输入焦点切换至文件浏览器窗口。</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1826"/>
-        <source>&lt;b&gt;Activate File-Browser&lt;/b&gt;&lt;p&gt;This switches the input focus to the File-Browser window.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;激活文件浏览器&lt;/b&gt;&lt;p&gt;将输入焦点切换至文件浏览器窗口。&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1835"/>
-        <source>Lo&amp;g-Viewer</source>
-        <translation>日志浏览器(&amp;G)</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1841"/>
-        <source>Switch the input focus to the Log-Viewer window.</source>
-        <translation>将输入焦点切换至日志查看器窗口。</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1843"/>
-        <source>&lt;b&gt;Activate Log-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Log-Viewer window.&lt;/p&gt;</source>
-        <translation>&lt;b&gt;激活日志查看器&lt;/b&gt;&lt;p&gt;将输入焦点切换至日志查看器。&lt;/p&gt;</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1853"/>
-        <source>&amp;Task-Viewer</source>
-        <translation>任务浏览器(&amp;T)</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1859"/>
-        <source>Switch the input focus to the Task-Viewer window.</source>
-        <translation>将输入焦点切换至任务浏览器窗口。</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1872"/>
-        <source>Templ&amp;ate-Viewer</source>
-        <translation>模板浏览器(&amp;A)</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1878"/>
-        <source>Switch the input focus to the Template-Viewer window.</source>
-        <translation>将输入焦点切换至模板浏览器窗口。</translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1880"/>
-        <source>&lt;b&gt;Activate Template-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Template-Viewer window.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../UI/UserInterface.py" line="1890"/>
-        <source>&amp;Left Toolbox</source>
-        <translation>左工具箱(&amp;L)</translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="1893"/>
+        <source>Left Toolbox</source>
+        <translation>左工具箱</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1905"/>
+        <source>Right Toolbox</source>
+        <translation>右工具箱</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1757"/>
+        <source>Switch the input focus to the Project-Viewer window.</source>
+        <translation>将输入焦点切换至项目查看器窗口。</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1759"/>
+        <source>&lt;b&gt;Activate Project-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Project-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1774"/>
+        <source>Switch the input focus to the Multiproject-Viewer window.</source>
+        <translation>将输入焦点切换至多项目查看器窗口。</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1776"/>
+        <source>&lt;b&gt;Activate Multiproject-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Multiproject-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1792"/>
+        <source>Switch the input focus to the Debug-Viewer window.</source>
+        <translation>将输入焦点切换至调试查看器窗口。</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1794"/>
+        <source>&lt;b&gt;Activate Debug-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Debug-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1810"/>
+        <source>Switch the input focus to the Shell window.</source>
+        <translation>将输入焦点切换至 Shell 窗口。</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1812"/>
+        <source>&lt;b&gt;Activate Shell&lt;/b&gt;&lt;p&gt;This switches the input focus to the Shell window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1821"/>
+        <source>&amp;File-Browser</source>
+        <translation>文件浏览器(&amp;F)</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1827"/>
+        <source>Switch the input focus to the File-Browser window.</source>
+        <translation>将输入焦点切换至文件浏览器窗口。</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1829"/>
+        <source>&lt;b&gt;Activate File-Browser&lt;/b&gt;&lt;p&gt;This switches the input focus to the File-Browser window.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;激活文件浏览器&lt;/b&gt;&lt;p&gt;将输入焦点切换至文件浏览器窗口。&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1838"/>
+        <source>Lo&amp;g-Viewer</source>
+        <translation>日志浏览器(&amp;G)</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1844"/>
+        <source>Switch the input focus to the Log-Viewer window.</source>
+        <translation>将输入焦点切换至日志查看器窗口。</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1846"/>
+        <source>&lt;b&gt;Activate Log-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Log-Viewer window.&lt;/p&gt;</source>
+        <translation>&lt;b&gt;激活日志查看器&lt;/b&gt;&lt;p&gt;将输入焦点切换至日志查看器。&lt;/p&gt;</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1856"/>
+        <source>&amp;Task-Viewer</source>
+        <translation>任务浏览器(&amp;T)</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1862"/>
+        <source>Switch the input focus to the Task-Viewer window.</source>
+        <translation>将输入焦点切换至任务浏览器窗口。</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1875"/>
+        <source>Templ&amp;ate-Viewer</source>
+        <translation>模板浏览器(&amp;A)</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1881"/>
+        <source>Switch the input focus to the Template-Viewer window.</source>
+        <translation>将输入焦点切换至模板浏览器窗口。</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1883"/>
+        <source>&lt;b&gt;Activate Template-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Template-Viewer window.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1893"/>
+        <source>&amp;Left Toolbox</source>
+        <translation>左工具箱(&amp;L)</translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="1896"/>
         <source>Toggle the Left Toolbox window</source>
         <translation>切换左工具箱窗口</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1894"/>
+        <location filename="../UI/UserInterface.py" line="1897"/>
         <source>&lt;b&gt;Toggle the Left Toolbox window&lt;/b&gt;&lt;p&gt;If the Left Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;切换左工具箱窗口&lt;/b&gt;&lt;p&gt;如果左工具箱窗口已隐藏则显示它。如果它可见则隐藏它。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1902"/>
+        <location filename="../UI/UserInterface.py" line="1905"/>
         <source>&amp;Right Toolbox</source>
         <translation>右工具箱(&amp;R)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1906"/>
+        <location filename="../UI/UserInterface.py" line="1909"/>
         <source>Toggle the Right Toolbox window</source>
         <translation>切换右工具箱窗口</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1907"/>
+        <location filename="../UI/UserInterface.py" line="1910"/>
         <source>&lt;b&gt;Toggle the Right Toolbox window&lt;/b&gt;&lt;p&gt;If the Right Toolbox window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;切换右工具箱窗口&lt;/b&gt;&lt;p&gt;如果右工具箱窗口已隐藏则显示它。如果它可见则隐藏它。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>Right Sidebar</source>
         <translation>右侧边栏</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1942"/>
+        <location filename="../UI/UserInterface.py" line="1945"/>
         <source>&amp;Right Sidebar</source>
         <translation>右侧边栏(&amp;R)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1946"/>
+        <location filename="../UI/UserInterface.py" line="1949"/>
         <source>Toggle the right sidebar window</source>
         <translation>切换右侧边栏窗口</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1948"/>
+        <location filename="../UI/UserInterface.py" line="1951"/>
         <source>&lt;b&gt;Toggle the right sidebar window&lt;/b&gt;&lt;p&gt;If the right sidebar window is hidden then display it. If it is displayed then close it.&lt;/p&gt;</source>
         <translation>&lt;b&gt;切换右侧边栏窗口&lt;/b&gt;&lt;p&gt;如果右侧边栏窗口已隐藏则显示它。如果它可见则隐藏它。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Cooperation-Viewer</source>
         <translation>协作浏览器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1971"/>
+        <location filename="../UI/UserInterface.py" line="1974"/>
         <source>Co&amp;operation-Viewer</source>
         <translation>协作浏览器(&amp;O)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1977"/>
+        <location filename="../UI/UserInterface.py" line="1980"/>
         <source>Switch the input focus to the Cooperation-Viewer window.</source>
         <translation>将输入焦点切换至协作浏览器窗口。</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1979"/>
+        <location filename="../UI/UserInterface.py" line="1982"/>
         <source>&lt;b&gt;Activate Cooperation-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Cooperation-Viewer window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;激活协作浏览器&lt;/b&gt;&lt;p&gt;将输入焦点切换至协作浏览器窗口。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>Symbols-Viewer</source>
         <translation>符号查看器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2008"/>
+        <location filename="../UI/UserInterface.py" line="2011"/>
         <source>S&amp;ymbols-Viewer</source>
         <translation>符号查看器(&amp;Y)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2014"/>
+        <location filename="../UI/UserInterface.py" line="2017"/>
         <source>Switch the input focus to the Symbols-Viewer window.</source>
         <translation>将输入焦点切换至符号查看器窗口。</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2016"/>
+        <location filename="../UI/UserInterface.py" line="2019"/>
         <source>&lt;b&gt;Activate Symbols-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Symbols-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Numbers-Viewer</source>
         <translation>数字查看器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2027"/>
+        <location filename="../UI/UserInterface.py" line="2030"/>
         <source>Num&amp;bers-Viewer</source>
         <translation>数字查看器(&amp;B)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2033"/>
+        <location filename="../UI/UserInterface.py" line="2036"/>
         <source>Switch the input focus to the Numbers-Viewer window.</source>
         <translation>将输入焦点切换至数字查看器窗口。</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2035"/>
+        <location filename="../UI/UserInterface.py" line="2038"/>
         <source>&lt;b&gt;Activate Numbers-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Numbers-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3225"/>
+        <location filename="../UI/UserInterface.py" line="3228"/>
         <source>&amp;Windows</source>
         <translation>窗口(&amp;W)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1861"/>
+        <location filename="../UI/UserInterface.py" line="1864"/>
         <source>&lt;b&gt;Activate Task-Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Task-Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>IRC</source>
         <translation>IRC</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>&amp;IRC</source>
         <translation>&amp;IRC</translation>
     </message>
@@ -83127,57 +83256,57 @@
         <translation type="obsolete">Meta+Shift+I</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1996"/>
+        <location filename="../UI/UserInterface.py" line="1999"/>
         <source>Switch the input focus to the IRC window.</source>
         <translation>将输入焦点切换至 IRC 窗口。</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1998"/>
+        <location filename="../UI/UserInterface.py" line="2001"/>
         <source>&lt;b&gt;Activate IRC&lt;/b&gt;&lt;p&gt;This switches the input focus to the IRC window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;激活 IRC&lt;/b&gt;&lt;p&gt;将输入焦点切换至 IRC 窗口。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-Designer</source>
         <translation>Qt 设计师</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2342"/>
+        <location filename="../UI/UserInterface.py" line="2345"/>
         <source>Qt-&amp;Designer...</source>
         <translation>Qt 设计师(&amp;D)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2347"/>
+        <location filename="../UI/UserInterface.py" line="2350"/>
         <source>Start Qt-Designer</source>
         <translation>启动 Qt 设计师</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2348"/>
+        <location filename="../UI/UserInterface.py" line="2351"/>
         <source>&lt;b&gt;Qt-Designer&lt;/b&gt;&lt;p&gt;Start Qt-Designer.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Qt 设计师&lt;/b&gt;&lt;p&gt;启动 Qt 设计师。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-Linguist</source>
         <translation>Qt 语言家</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2368"/>
+        <location filename="../UI/UserInterface.py" line="2371"/>
         <source>Qt-&amp;Linguist...</source>
         <translation>Qt 语言家(&amp;L)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2373"/>
+        <location filename="../UI/UserInterface.py" line="2376"/>
         <source>Start Qt-Linguist</source>
         <translation>启动 Qt 语言家</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2374"/>
+        <location filename="../UI/UserInterface.py" line="2377"/>
         <source>&lt;b&gt;Qt-Linguist&lt;/b&gt;&lt;p&gt;Start Qt-Linguist.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Qt 语言家&lt;/b&gt;&lt;p&gt;启动 Qt 语言家。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2862"/>
+        <location filename="../UI/UserInterface.py" line="2865"/>
         <source>Qt5 Documentation</source>
         <translation>Qt5 文档</translation>
     </message>
@@ -83187,7 +83316,7 @@
         <translation type="obsolete">Qt&amp;5 文档</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2866"/>
+        <location filename="../UI/UserInterface.py" line="2869"/>
         <source>Open Qt5 Documentation</source>
         <translation>打开 Qt5 文档</translation>
     </message>
@@ -83197,42 +83326,42 @@
         <translation type="obsolete">&lt;p&gt;状态栏的这一部分允许对当前编辑器、shell 或终端进行缩放。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates</source>
         <translation>管理 SSL 证书</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2670"/>
+        <location filename="../UI/UserInterface.py" line="2673"/>
         <source>Manage SSL Certificates...</source>
         <translation>管理 SSL 证书…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2675"/>
+        <location filename="../UI/UserInterface.py" line="2678"/>
         <source>Manage the saved SSL certificates</source>
         <translation>管理保存的 SSL 证书</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2677"/>
+        <location filename="../UI/UserInterface.py" line="2680"/>
         <source>&lt;b&gt;Manage SSL Certificates...&lt;/b&gt;&lt;p&gt;Opens a dialog to manage the saved SSL certificates.&lt;/p&gt;</source>
         <translation>&lt;b&gt;管理 SSL 证书…&lt;/b&gt;&lt;p&gt;打开一个对话框来管理保存的 SSL 证书。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters</source>
         <translation>编辑消息过滤器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2686"/>
+        <location filename="../UI/UserInterface.py" line="2689"/>
         <source>Edit Message Filters...</source>
         <translation>编辑消息过滤器…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2691"/>
+        <location filename="../UI/UserInterface.py" line="2694"/>
         <source>Edit the message filters used to suppress unwanted messages</source>
         <translation>编辑消息过滤器使得不期望的消息不显示</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2693"/>
+        <location filename="../UI/UserInterface.py" line="2696"/>
         <source>&lt;b&gt;Edit Message Filters&lt;/b&gt;&lt;p&gt;Opens a dialog to edit the message filters used to suppress unwanted messages been shown in an error window.&lt;/p&gt;</source>
         <translation>&lt;b&gt;编辑消息过滤器&lt;/b&gt;&lt;p&gt;打开对话框来编辑消息过滤器,使得不期望的错误信息不再在错误窗口中显示。&lt;/p&gt;</translation>
     </message>
@@ -83242,7 +83371,7 @@
         <translation type="obsolete">PyQt&amp;4 文档</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2892"/>
+        <location filename="../UI/UserInterface.py" line="2895"/>
         <source>PyQt5 Documentation</source>
         <translation>PyQt5 文档</translation>
     </message>
@@ -83252,7 +83381,7 @@
         <translation type="obsolete">PyQt&amp;5 文档</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2896"/>
+        <location filename="../UI/UserInterface.py" line="2899"/>
         <source>Open PyQt5 Documentation</source>
         <translation>打开 PyQt5 文档</translation>
     </message>
@@ -83262,37 +83391,37 @@
         <translation type="obsolete">&lt;p&gt;未配置 PyQt5 文档起始位置。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2836"/>
+        <location filename="../UI/UserInterface.py" line="2839"/>
         <source>&lt;b&gt;Virtualenv Configurator&lt;/b&gt;&lt;p&gt;This opens a dialog for entering all the parameters needed to create a Python virtual environment using virtualenv or pyvenv.&lt;/p&gt;</source>
         <translation type="unfinished">&lt;b&gt;Qt5 文档&lt;/b&gt;&lt;p&gt;显示 Qt5 文档。依赖于您的设置,这可能会在 eric 的内置帮助查看器内显示,或是启动一个网页浏览器,或是启动 Qt 助手。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2937"/>
+        <location filename="../UI/UserInterface.py" line="2940"/>
         <source>&lt;b&gt;Python 3 Documentation&lt;/b&gt;&lt;p&gt;Display the Python 3 documentation. If no documentation directory is configured, the location of the Python 3 documentation is assumed to be the doc directory underneath the location of the Python 3 executable on Windows and &lt;i&gt;/usr/share/doc/packages/python/html&lt;/i&gt; on Unix. Set PYTHON3DOCDIR in your environment to override this.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Python 3 文档&lt;/b&gt;&lt;p&gt;显示 Python 3 文档。如果尚未配置文档目录,则在 Windows 系统上,文档位置将默认为 Python 3 可执行文件所在目录下的 doc 目录;在类 Unix 系统上,则默认为 &lt;i&gt;/usr/share/doc/packages/python/html&lt;/i&gt;。请在环境中设置 PYTHON3DOCDIR 以覆盖默认行为。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7050"/>
+        <location filename="../UI/UserInterface.py" line="7077"/>
         <source>%v/%m</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2207"/>
+        <location filename="../UI/UserInterface.py" line="2210"/>
         <source>Show Error Log</source>
         <translation>显示错误日志</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2203"/>
+        <location filename="../UI/UserInterface.py" line="2206"/>
         <source>Show Error &amp;Log...</source>
         <translation>显示错误日志(&amp;L)…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2208"/>
+        <location filename="../UI/UserInterface.py" line="2211"/>
         <source>&lt;b&gt;Show Error Log...&lt;/b&gt;&lt;p&gt;Opens a dialog showing the most recent error log.&lt;/p&gt;</source>
         <translation>&lt;b&gt;显示错误日志…&lt;/b&gt;&lt;p&gt;打开一个对话框显示最近的错误日志。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7054"/>
+        <location filename="../UI/UserInterface.py" line="7081"/>
         <source>Version Check</source>
         <translation>版本检查</translation>
     </message>
@@ -83382,17 +83511,17 @@
         <translation type="obsolete">尚未配置 eric6。将打开配置对话框。</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="669"/>
+        <location filename="../UI/UserInterface.py" line="672"/>
         <source>Generating Plugins Toolbars...</source>
         <translation>生成插件工具栏…</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4182"/>
+        <location filename="../UI/UserInterface.py" line="4185"/>
         <source>&amp;User Tools</source>
         <translation>用户工具(&amp;U)</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="4252"/>
+        <location filename="../UI/UserInterface.py" line="4255"/>
         <source>No User Tools Configured</source>
         <translation>没有配置的用户工具</translation>
     </message>
@@ -83402,12 +83531,12 @@
         <translation type="obsolete">因为当前处在 &lt;b&gt;离线&lt;/b&gt; 状态,无法获取版本信息。请连线并再试一次。</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
+        <location filename="../UI/UserInterface.py" line="2466"/>
         <source>Hex Editor</source>
         <translation>十六进制编辑器</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2463"/>
+        <location filename="../UI/UserInterface.py" line="2466"/>
         <source>&amp;Hex Editor...</source>
         <translation>十六进制编辑器(&amp;H)…</translation>
     </message>
@@ -83422,498 +83551,498 @@
         <translation type="obsolete">&lt;b&gt;十六进制编辑器&lt;/b&gt;&lt;p&gt;启动 eric6 十六进制编辑器来查看、修改二进制文件。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2709"/>
+        <location filename="../UI/UserInterface.py" line="2712"/>
         <source>Clear private data</source>
         <translation type="unfinished">清空隐私数据</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2711"/>
+        <location filename="../UI/UserInterface.py" line="2714"/>
         <source>&lt;b&gt;Clear private data&lt;/b&gt;&lt;p&gt;Clears the private data like the various list of recently opened files, projects or multi projects.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1669"/>
+        <location filename="../UI/UserInterface.py" line="1672"/>
         <source>Save session...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1674"/>
+        <location filename="../UI/UserInterface.py" line="1677"/>
         <source>&lt;b&gt;Save session...&lt;/b&gt;&lt;p&gt;This saves the current session to disk. A dialog is opened to select the file name.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>Load session</source>
         <translation type="unfinished">载入会话</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1682"/>
+        <location filename="../UI/UserInterface.py" line="1685"/>
         <source>Load session...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1687"/>
+        <location filename="../UI/UserInterface.py" line="1690"/>
         <source>&lt;b&gt;Load session...&lt;/b&gt;&lt;p&gt;This loads a session saved to disk previously. A dialog is opened to select the file name.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
+        <location filename="../UI/UserInterface.py" line="6710"/>
         <source>Crash Session found!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6694"/>
+        <location filename="../UI/UserInterface.py" line="6710"/>
         <source>A session file of a crashed session was found. Shall this session be restored?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="672"/>
+        <location filename="../UI/UserInterface.py" line="675"/>
         <source>Cleaning Plugins Download Area...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="664"/>
+        <location filename="../UI/UserInterface.py" line="667"/>
         <source>Initializing Plugins...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>Update Check</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7198"/>
+        <location filename="../UI/UserInterface.py" line="7225"/>
         <source>You installed eric directly from the source code. There is no possibility to check for the availability of an update.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Code Documentation Viewer</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2867"/>
+        <location filename="../UI/UserInterface.py" line="2870"/>
         <source>&lt;b&gt;Qt5 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2898"/>
+        <location filename="../UI/UserInterface.py" line="2901"/>
         <source>&lt;b&gt;PyQt5 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt5 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2974"/>
+        <location filename="../UI/UserInterface.py" line="2977"/>
         <source>PySide2 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2978"/>
+        <location filename="../UI/UserInterface.py" line="2981"/>
         <source>Open PySide2 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2980"/>
+        <location filename="../UI/UserInterface.py" line="2983"/>
         <source>&lt;b&gt;PySide2 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide2 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5859"/>
+        <location filename="../UI/UserInterface.py" line="5875"/>
         <source>&lt;p&gt;The PySide{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2817"/>
+        <location filename="../UI/UserInterface.py" line="2820"/>
         <source>Virtualenv Manager</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2811"/>
+        <location filename="../UI/UserInterface.py" line="2814"/>
         <source>&amp;Virtualenv Manager...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2819"/>
+        <location filename="../UI/UserInterface.py" line="2822"/>
         <source>&lt;b&gt;Virtualenv Manager&lt;/b&gt;&lt;p&gt;This opens a dialog to manage the defined Python virtual environments.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2834"/>
+        <location filename="../UI/UserInterface.py" line="2837"/>
         <source>Virtualenv Configurator</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2828"/>
+        <location filename="../UI/UserInterface.py" line="2831"/>
         <source>Virtualenv &amp;Configurator...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3232"/>
+        <location filename="../UI/UserInterface.py" line="3235"/>
         <source>Left Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3244"/>
+        <location filename="../UI/UserInterface.py" line="3247"/>
         <source>Bottom Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3251"/>
+        <location filename="../UI/UserInterface.py" line="3254"/>
         <source>Right Side</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3271"/>
+        <location filename="../UI/UserInterface.py" line="3274"/>
         <source>Plug-ins</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Restart</source>
         <translation type="unfinished">重启</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1653"/>
+        <location filename="../UI/UserInterface.py" line="1656"/>
         <source>Ctrl+Shift+Q</source>
         <comment>File|Quit</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1659"/>
+        <location filename="../UI/UserInterface.py" line="1662"/>
         <source>Restart the IDE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1660"/>
+        <location filename="../UI/UserInterface.py" line="1663"/>
         <source>&lt;b&gt;Restart the IDE&lt;/b&gt;&lt;p&gt;This restarts the IDE. Any unsaved changes may be saved first. Any Python program being debugged will be stopped and the preferences will be written to disc.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>Start Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Conda</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>PyPI</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3580"/>
+        <location filename="../UI/UserInterface.py" line="3583"/>
         <source>&lt;p&gt;This part of the status bar allows zooming the current editor or shell.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>MicroPython</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1990"/>
+        <location filename="../UI/UserInterface.py" line="1993"/>
         <source>Ctrl+Alt+Shift+I</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2046"/>
+        <location filename="../UI/UserInterface.py" line="2049"/>
         <source>Ctrl+Alt+Shift+D</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2052"/>
-        <source>Switch the input focus to the Code Documentation Viewer window.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../UI/UserInterface.py" line="2055"/>
+        <source>Switch the input focus to the Code Documentation Viewer window.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../UI/UserInterface.py" line="2058"/>
         <source>&lt;b&gt;Code Documentation Viewer&lt;/b&gt;&lt;p&gt;This switches the input focus to the Code Documentation Viewer window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2066"/>
+        <location filename="../UI/UserInterface.py" line="2069"/>
         <source>Ctrl+Alt+Shift+P</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2072"/>
+        <location filename="../UI/UserInterface.py" line="2075"/>
         <source>Switch the input focus to the PyPI window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2074"/>
+        <location filename="../UI/UserInterface.py" line="2077"/>
         <source>&lt;b&gt;PyPI&lt;/b&gt;&lt;p&gt;This switches the input focus to the PyPI window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2084"/>
+        <location filename="../UI/UserInterface.py" line="2087"/>
         <source>Ctrl+Alt+Shift+C</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2090"/>
+        <location filename="../UI/UserInterface.py" line="2093"/>
         <source>Switch the input focus to the Conda window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2092"/>
+        <location filename="../UI/UserInterface.py" line="2095"/>
         <source>&lt;b&gt;Conda&lt;/b&gt;&lt;p&gt;This switches the input focus to the Conda window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2102"/>
+        <location filename="../UI/UserInterface.py" line="2105"/>
         <source>Ctrl+Alt+Shift+M</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2108"/>
+        <location filename="../UI/UserInterface.py" line="2111"/>
         <source>Switch the input focus to the MicroPython window.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2110"/>
+        <location filename="../UI/UserInterface.py" line="2113"/>
         <source>&lt;b&gt;MicroPython&lt;/b&gt;&lt;p&gt;This switches the input focus to the MicroPython window.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3229"/>
+        <location filename="../UI/UserInterface.py" line="3232"/>
         <source>Central Park</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3746"/>
+        <location filename="../UI/UserInterface.py" line="3749"/>
         <source>&lt;h2&gt;Version Numbers&lt;/h2&gt;&lt;table&gt;</source>
         <translation type="unfinished">&lt;h3&gt;版本号&lt;/h3&gt;&lt;table&gt; {2&gt;?} {2&gt;?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5075"/>
+        <location filename="../UI/UserInterface.py" line="5078"/>
         <source>&lt;p&gt;Could not find the Qt-Designer executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5145"/>
+        <location filename="../UI/UserInterface.py" line="5148"/>
         <source>&lt;p&gt;Could not find the Qt-Linguist executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5189"/>
+        <location filename="../UI/UserInterface.py" line="5192"/>
         <source>&lt;p&gt;Could not find the Qt-Assistant executable.&lt;br&gt;Ensure that it is installed and optionally configured on the Qt configuration page.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install Info</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2215"/>
+        <location filename="../UI/UserInterface.py" line="2218"/>
         <source>Show Install &amp;Info...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2219"/>
+        <location filename="../UI/UserInterface.py" line="2222"/>
         <source>Show Installation Information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2221"/>
+        <location filename="../UI/UserInterface.py" line="2224"/>
         <source>&lt;b&gt;Show Install Info...&lt;/b&gt;&lt;p&gt;Opens a dialog showing some information about the installation process.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2877"/>
+        <location filename="../UI/UserInterface.py" line="2880"/>
         <source>Qt6 Documentation</source>
         <translation type="unfinished">Qt5 文档 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2881"/>
+        <location filename="../UI/UserInterface.py" line="2884"/>
         <source>Open Qt6 Documentation</source>
         <translation type="unfinished">打开 Qt5 文档 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2882"/>
+        <location filename="../UI/UserInterface.py" line="2885"/>
         <source>&lt;b&gt;Qt6 Documentation&lt;/b&gt;&lt;p&gt;Display the Qt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2909"/>
+        <location filename="../UI/UserInterface.py" line="2912"/>
         <source>PyQt6 Documentation</source>
         <translation type="unfinished">PyQt5 文档 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2913"/>
+        <location filename="../UI/UserInterface.py" line="2916"/>
         <source>Open PyQt6 Documentation</source>
         <translation type="unfinished">打开 PyQt5 文档 {6 ?}</translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2915"/>
+        <location filename="../UI/UserInterface.py" line="2918"/>
         <source>&lt;b&gt;PyQt6 Documentation&lt;/b&gt;&lt;p&gt;Display the PyQt6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2994"/>
+        <location filename="../UI/UserInterface.py" line="2997"/>
         <source>PySide6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2998"/>
+        <location filename="../UI/UserInterface.py" line="3001"/>
         <source>Open PySide6 Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="3000"/>
+        <location filename="../UI/UserInterface.py" line="3003"/>
         <source>&lt;b&gt;PySide6 Documentation&lt;/b&gt;&lt;p&gt;Display the PySide6 Documentation. Dependent upon your settings, this will either show the help in Eric&apos;s internal help viewer/web browser, or execute a web browser or Qt Assistant. &lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5754"/>
+        <location filename="../UI/UserInterface.py" line="5770"/>
         <source>&lt;p&gt;The PyQt{0} documentation starting point has not been configured.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1701"/>
+        <location filename="../UI/UserInterface.py" line="1704"/>
         <source>Open a new eric instance</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="1703"/>
+        <location filename="../UI/UserInterface.py" line="1706"/>
         <source>&lt;b&gt;New Window&lt;/b&gt;&lt;p&gt;This opens a new instance of the eric IDE.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2146"/>
+        <location filename="../UI/UserInterface.py" line="2149"/>
         <source>&lt;b&gt;Helpviewer&lt;/b&gt;&lt;p&gt;Display the eric web browser. This window will show HTML help files and help from Qt help collections. It has the capability to navigate to links, set bookmarks, print the displayed help and some more features. You may use it to browse the internet as well&lt;/p&gt;&lt;p&gt;If called with a word selected, this word is search in the Qt help collection.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2181"/>
+        <location filename="../UI/UserInterface.py" line="2184"/>
         <source>&lt;b&gt;Check for Updates...&lt;/b&gt;&lt;p&gt;Checks the internet for updates of eric.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2194"/>
+        <location filename="../UI/UserInterface.py" line="2197"/>
         <source>&lt;b&gt;Show downloadable versions...&lt;/b&gt;&lt;p&gt;Shows the eric versions available for download from the internet.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2468"/>
+        <location filename="../UI/UserInterface.py" line="2471"/>
         <source>Start the eric Hex Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2470"/>
+        <location filename="../UI/UserInterface.py" line="2473"/>
         <source>&lt;b&gt;Hex Editor&lt;/b&gt;&lt;p&gt;Starts the eric Hex Editor for viewing or editing binary files.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2478"/>
+        <location filename="../UI/UserInterface.py" line="2481"/>
         <source>eric &amp;Web Browser...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2483"/>
+        <location filename="../UI/UserInterface.py" line="2486"/>
         <source>Start the eric Web Browser</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2485"/>
+        <location filename="../UI/UserInterface.py" line="2488"/>
         <source>&lt;b&gt;eric Web Browser&lt;/b&gt;&lt;p&gt;Browse the Internet with the eric Web Browser.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2497"/>
+        <location filename="../UI/UserInterface.py" line="2500"/>
         <source>Start the eric Icon Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2499"/>
+        <location filename="../UI/UserInterface.py" line="2502"/>
         <source>&lt;b&gt;Icon Editor&lt;/b&gt;&lt;p&gt;Starts the eric Icon Editor for editing simple icons.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2585"/>
+        <location filename="../UI/UserInterface.py" line="2588"/>
         <source>&lt;b&gt;Show external tools&lt;/b&gt;&lt;p&gt;Opens a dialog to show the path and versions of all extenal tools used by eric.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="2959"/>
+        <location filename="../UI/UserInterface.py" line="2962"/>
         <source>&lt;b&gt;Eric API Documentation&lt;/b&gt;&lt;p&gt;Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric installation directory.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="5972"/>
+        <location filename="../UI/UserInterface.py" line="5988"/>
         <source>The eric web browser could not be started.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6036"/>
+        <location filename="../UI/UserInterface.py" line="6052"/>
         <source>&lt;p&gt;The eric web browser is not started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7210"/>
+        <location filename="../UI/UserInterface.py" line="7237"/>
         <source>The update to &lt;b&gt;{0}&lt;/b&gt; of eric is available at &lt;b&gt;{1}&lt;/b&gt;. Would you like to get it?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7188"/>
+        <location filename="../UI/UserInterface.py" line="7215"/>
         <source>You are using a snapshot release of eric. A more up-to-date stable release might be available.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>eric is up to date</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7222"/>
+        <location filename="../UI/UserInterface.py" line="7249"/>
         <source>You are using the latest version of eric</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="7305"/>
+        <location filename="../UI/UserInterface.py" line="7332"/>
         <source>eric has not been configured yet. The configuration dialog will be started.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6290"/>
+        <location filename="../UI/UserInterface.py" line="6306"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard Shortcuts File (*.e4k)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6308"/>
+        <location filename="../UI/UserInterface.py" line="6324"/>
         <source>&lt;p&gt;The keyboard shortcuts file &lt;b&gt;{0}&lt;/b&gt; exists already. Overwrite it?&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6326"/>
+        <location filename="../UI/UserInterface.py" line="6342"/>
         <source>Keyboard Shortcuts File (*.ekj);;XML Keyboard shortcut file (*.e4k)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6512"/>
+        <location filename="../UI/UserInterface.py" line="6528"/>
         <source>Read Tasks</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6621"/>
+        <location filename="../UI/UserInterface.py" line="6637"/>
         <source>Save Session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6578"/>
+        <location filename="../UI/UserInterface.py" line="6594"/>
         <source>Read Session</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../UI/UserInterface.py" line="6644"/>
+        <location filename="../UI/UserInterface.py" line="6660"/>
         <source>eric Session Files (*.esj);;eric XML Session Files (*.e5s)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -83994,7 +84123,7 @@
 <context>
     <name>Utilities</name>
     <message>
-        <location filename="../Utilities/__init__.py" line="1420"/>
+        <location filename="../Utilities/__init__.py" line="1421"/>
         <source>&lt;p&gt;You may use %-codes as placeholders in the string. Supported codes are:&lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;column of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;directory of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;filename of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;home directory of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;line of the cursor of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;path of the current project&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;selected text of the current editor&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;username of the current user&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;the percent sign&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</source>
         <translation>&lt;p&gt;可以在字符串中使用“%-代码”作为占位符。支持的代码有:&lt;table&gt;&lt;tr&gt;&lt;td&gt;%C&lt;/td&gt;&lt;td&gt;当前编辑器的光标所在列&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%D&lt;/td&gt;&lt;td&gt;当前编辑器的文件夹&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%F&lt;/td&gt;&lt;td&gt;当前编辑器的文件名&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%H&lt;/td&gt;&lt;td&gt;当前用户的根目录&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%L&lt;/td&gt;&lt;td&gt;当前编辑器的光标所在行&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%P&lt;/td&gt;&lt;td&gt;当前项目的路径&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%S&lt;/td&gt;&lt;td&gt;当前编辑器中选择的文本&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%U&lt;/td&gt;&lt;td&gt;当前用户的用户名&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;%%&lt;/td&gt;&lt;td&gt;百分比符号&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/p&gt;</translation>
     </message>
@@ -84641,12 +84770,12 @@
 <context>
     <name>VcsMercurialPlugin</name>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="58"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="54"/>
         <source>Version Control - Mercurial</source>
         <translation>版本控制 - Mercurial</translation>
     </message>
     <message>
-        <location filename="../Plugins/PluginVcsMercurial.py" line="132"/>
+        <location filename="../Plugins/PluginVcsMercurial.py" line="124"/>
         <source>Mercurial</source>
         <translation>Mercurial</translation>
     </message>
@@ -87376,17 +87505,17 @@
         <translation>文件已改变</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5217"/>
+        <location filename="../ViewManager/ViewManager.py" line="5230"/>
         <source>&amp;Clear</source>
         <translation>清除(&amp;C)</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5211"/>
+        <location filename="../ViewManager/ViewManager.py" line="5224"/>
         <source>&amp;Add</source>
         <translation>添加(&amp;A)</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="5214"/>
+        <location filename="../ViewManager/ViewManager.py" line="5227"/>
         <source>&amp;Edit...</source>
         <translation>编辑(&amp;E)…</translation>
     </message>
@@ -87396,12 +87525,12 @@
         <translation>&lt;p&gt;文件 &lt;b&gt;{0}&lt;/b&gt; 有未保存的更改。&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4777"/>
+        <location filename="../ViewManager/ViewManager.py" line="4790"/>
         <source>Line: {0:5}</source>
         <translation>行:{0:5}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4783"/>
+        <location filename="../ViewManager/ViewManager.py" line="4796"/>
         <source>Pos: {0:5}</source>
         <translation>列:{0:5}</translation>
     </message>
@@ -88009,27 +88138,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>Edit Spelling Dictionary</source>
         <translation type="unfinished">编辑拼写字典</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6233"/>
+        <location filename="../ViewManager/ViewManager.py" line="6246"/>
         <source>Editing {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6215"/>
+        <location filename="../ViewManager/ViewManager.py" line="6228"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be read.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6244"/>
+        <location filename="../ViewManager/ViewManager.py" line="6257"/>
         <source>&lt;p&gt;The spelling dictionary file &lt;b&gt;{0}&lt;/b&gt; could not be written.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="6256"/>
+        <location filename="../ViewManager/ViewManager.py" line="6269"/>
         <source>The spelling dictionary was saved successfully.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -88149,12 +88278,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4804"/>
+        <location filename="../ViewManager/ViewManager.py" line="4817"/>
         <source>Language: {0}</source>
         <translation>语言:{0}</translation>
     </message>
     <message>
-        <location filename="../ViewManager/ViewManager.py" line="4811"/>
+        <location filename="../ViewManager/ViewManager.py" line="4824"/>
         <source>EOL Mode: {0}</source>
         <translation>行尾模式:{0}</translation>
     </message>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/eric6/icons/breeze-dark/fileUML.svg	Thu Jun 03 11:39:23 2021 +0200
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   id="Layer_1"
+   x="0px"
+   y="0px"
+   width="22"
+   height="22"
+   viewBox="0 0 21.78 21.773196"
+   enable-background="new 0 0 396 288"
+   xml:space="preserve"
+   sodipodi:docname="uml.svg"
+   inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"><metadata
+   id="metadata69"><rdf:RDF><cc:Work
+       rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+         rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+   id="defs67" /><sodipodi:namedview
+   pagecolor="#ffffff"
+   bordercolor="#666666"
+   borderopacity="1"
+   objecttolerance="10"
+   gridtolerance="10"
+   guidetolerance="10"
+   inkscape:pageopacity="0"
+   inkscape:pageshadow="2"
+   inkscape:window-width="1901"
+   inkscape:window-height="1097"
+   id="namedview65"
+   showgrid="false"
+   inkscape:zoom="1"
+   inkscape:cx="17.966491"
+   inkscape:cy="23.569548"
+   inkscape:window-x="0"
+   inkscape:window-y="0"
+   inkscape:window-maximized="0"
+   inkscape:current-layer="Layer_1" />
+<polygon
+   fill="#fbbd16"
+   points="222.729,240.603 246.553,252.477 261.867,183.949 261.867,258.923 288.753,272.151 288.753,145.616 247.914,126.278 234.982,186.663 221.937,113.84 181.323,94.391 181.323,221.04 208.096,234.496 208.096,158.167 "
+   id="polygon2"
+   transform="matrix(0.07435014,0,0,0.07596743,-10.51139,0.06298594)" />
+<polygon
+   fill="#452e7f"
+   points="394.142,184.709 394.369,219.31 292.611,272.796 292.496,145.583 335.152,123.418 335.152,215.238 "
+   id="polygon4"
+   transform="matrix(0.07435014,0,0,0.07596743,-10.51139,0.06298594)" />
+<path
+   fill="#962444"
+   d="M 9.9570564,0.986598 7.7144328,3.0125734 c 0,0 4.3755802,2.2980148 4.9071092,2.5695984 0.531604,0.2715076 1.288117,0.7937837 0.470266,1.5668283 C 12.273956,7.9219687 11.374318,7.8175134 10.76093,7.5041478 10.147541,7.1907822 5.6084649,4.8509852 5.6084649,4.8509852 L 3.2981084,6.8564494 c 0,0 4.457217,2.318906 5.1933578,2.7158356 0.7360665,0.3970063 3.4758688,1.378809 6.0725478,-0.6894042 2.59668,-2.0682135 2.228721,-2.820291 2.228721,-2.9665283 0,-0.1462373 -0.06134,-0.9192059 -0.511157,-1.3996999 C 15.831685,4.0361586 14.523196,3.3467542 13.971146,3.0542796 13.419097,2.7618049 9.9570564,0.986598 9.9570564,0.986598 Z"
+   id="path6"
+   style="stroke-width:0.0751545" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<g
+   id="g56"
+   transform="matrix(0.07435014,0,0,0.07596743,-10.51139,0.06298594)">
+	<path
+   fill="#6d6e71"
+   d="m 393.104,167.064 c 0,4.471 -3.509,7.979 -8.076,7.979 -4.519,0 -8.123,-3.509 -8.123,-7.979 0,-4.375 3.604,-7.884 8.123,-7.884 4.568,0.001 8.076,3.509 8.076,7.884 z m -14.18,0 c 0,3.509 2.596,6.298 6.153,6.298 3.461,0 6.009,-2.789 6.009,-6.25 0,-3.51 -2.548,-6.346 -6.058,-6.346 -3.508,0.001 -6.104,2.837 -6.104,6.298 z m 4.855,4.134 h -1.827 v -7.883 c 0.722,-0.146 1.731,-0.241 3.029,-0.241 1.489,0 2.163,0.241 2.739,0.577 0.433,0.336 0.769,0.961 0.769,1.73 0,0.864 -0.672,1.538 -1.634,1.827 v 0.096 c 0.77,0.289 1.202,0.864 1.442,1.923 0.24,1.202 0.385,1.683 0.576,1.971 h -1.97 c -0.241,-0.288 -0.385,-1.01 -0.626,-1.923 -0.144,-0.865 -0.625,-1.25 -1.635,-1.25 h -0.864 v 3.173 z m 0.048,-4.47 h 0.865 c 1.01,0 1.827,-0.336 1.827,-1.153 0,-0.721 -0.528,-1.202 -1.683,-1.202 -0.481,0 -0.817,0.048 -1.01,0.097 v 2.258 z"
+   id="path54" />
+</g>
+
+</svg>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/eric6/icons/breeze-light/fileUML.svg	Thu Jun 03 11:39:23 2021 +0200
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   id="Layer_1"
+   x="0px"
+   y="0px"
+   width="22"
+   height="22"
+   viewBox="0 0 21.78 21.773196"
+   enable-background="new 0 0 396 288"
+   xml:space="preserve"
+   sodipodi:docname="uml.svg"
+   inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"><metadata
+   id="metadata69"><rdf:RDF><cc:Work
+       rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+         rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+   id="defs67" /><sodipodi:namedview
+   pagecolor="#ffffff"
+   bordercolor="#666666"
+   borderopacity="1"
+   objecttolerance="10"
+   gridtolerance="10"
+   guidetolerance="10"
+   inkscape:pageopacity="0"
+   inkscape:pageshadow="2"
+   inkscape:window-width="1901"
+   inkscape:window-height="1097"
+   id="namedview65"
+   showgrid="false"
+   inkscape:zoom="1"
+   inkscape:cx="17.966491"
+   inkscape:cy="23.569548"
+   inkscape:window-x="0"
+   inkscape:window-y="0"
+   inkscape:window-maximized="0"
+   inkscape:current-layer="Layer_1" />
+<polygon
+   fill="#fbbd16"
+   points="222.729,240.603 246.553,252.477 261.867,183.949 261.867,258.923 288.753,272.151 288.753,145.616 247.914,126.278 234.982,186.663 221.937,113.84 181.323,94.391 181.323,221.04 208.096,234.496 208.096,158.167 "
+   id="polygon2"
+   transform="matrix(0.07435014,0,0,0.07596743,-10.51139,0.06298594)" />
+<polygon
+   fill="#452e7f"
+   points="394.142,184.709 394.369,219.31 292.611,272.796 292.496,145.583 335.152,123.418 335.152,215.238 "
+   id="polygon4"
+   transform="matrix(0.07435014,0,0,0.07596743,-10.51139,0.06298594)" />
+<path
+   fill="#962444"
+   d="M 9.9570564,0.986598 7.7144328,3.0125734 c 0,0 4.3755802,2.2980148 4.9071092,2.5695984 0.531604,0.2715076 1.288117,0.7937837 0.470266,1.5668283 C 12.273956,7.9219687 11.374318,7.8175134 10.76093,7.5041478 10.147541,7.1907822 5.6084649,4.8509852 5.6084649,4.8509852 L 3.2981084,6.8564494 c 0,0 4.457217,2.318906 5.1933578,2.7158356 0.7360665,0.3970063 3.4758688,1.378809 6.0725478,-0.6894042 2.59668,-2.0682135 2.228721,-2.820291 2.228721,-2.9665283 0,-0.1462373 -0.06134,-0.9192059 -0.511157,-1.3996999 C 15.831685,4.0361586 14.523196,3.3467542 13.971146,3.0542796 13.419097,2.7618049 9.9570564,0.986598 9.9570564,0.986598 Z"
+   id="path6"
+   style="stroke-width:0.0751545" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<g
+   id="g56"
+   transform="matrix(0.07435014,0,0,0.07596743,-10.51139,0.06298594)">
+	<path
+   fill="#6d6e71"
+   d="m 393.104,167.064 c 0,4.471 -3.509,7.979 -8.076,7.979 -4.519,0 -8.123,-3.509 -8.123,-7.979 0,-4.375 3.604,-7.884 8.123,-7.884 4.568,0.001 8.076,3.509 8.076,7.884 z m -14.18,0 c 0,3.509 2.596,6.298 6.153,6.298 3.461,0 6.009,-2.789 6.009,-6.25 0,-3.51 -2.548,-6.346 -6.058,-6.346 -3.508,0.001 -6.104,2.837 -6.104,6.298 z m 4.855,4.134 h -1.827 v -7.883 c 0.722,-0.146 1.731,-0.241 3.029,-0.241 1.489,0 2.163,0.241 2.739,0.577 0.433,0.336 0.769,0.961 0.769,1.73 0,0.864 -0.672,1.538 -1.634,1.827 v 0.096 c 0.77,0.289 1.202,0.864 1.442,1.923 0.24,1.202 0.385,1.683 0.576,1.971 h -1.97 c -0.241,-0.288 -0.385,-1.01 -0.626,-1.923 -0.144,-0.865 -0.625,-1.25 -1.635,-1.25 h -0.864 v 3.173 z m 0.048,-4.47 h 0.865 c 1.01,0 1.827,-0.336 1.827,-1.153 0,-0.721 -0.528,-1.202 -1.683,-1.202 -0.481,0 -0.817,0.048 -1.01,0.097 v 2.258 z"
+   id="path54" />
+</g>
+
+</svg>
Binary file eric6/icons/oxygen/fileUML.png has changed
--- a/scripts/install.py	Sat May 01 14:27:38 2021 +0200
+++ b/scripts/install.py	Thu Jun 03 11:39:23 2021 +0200
@@ -1360,7 +1360,9 @@
         answer = input()                            # secok
     if answer in ("", "Y", "y"):
         exitCode = subprocess.call(                 # secok
-            [sys.executable, "-m", "pip", "install", packageName])
+            [sys.executable, "-m", "pip", "install", "--prefer-binary",
+             "--upgrade", packageName]
+        )
         ok = (exitCode == 0)
     
     return ok
@@ -1542,6 +1544,8 @@
         "EditorConfig": ("editorconfig", ""),
         "Send2Trash": ("send2trash", ""),
         "Pygments": ("pygments", ""),
+        "mercurial": ("mercurial", ""),
+        "pyenchant": ("enchant", ""),
     }
     # dict with tuples of package name and install constraint
     if sys.platform != "darwin" and not ignorePyqt5Tools:
--- a/setup.py	Sat May 01 14:27:38 2021 +0200
+++ b/setup.py	Thu Jun 03 11:39:23 2021 +0200
@@ -324,7 +324,6 @@
         "Operating System :: Microsoft :: Windows :: Windows 10",
         "Operating System :: POSIX :: Linux",
         "Programming Language :: Python",
-        "Programming Language :: Python :: 3.5",
         "Programming Language :: Python :: 3.6",
         "Programming Language :: Python :: 3.7",
         "Programming Language :: Python :: 3.8",
@@ -333,7 +332,7 @@
         "Topic :: Text Editors :: Integrated Development Environments (IDE)"
     ],
     keywords="Development PyQt5 IDE Python3",
-    python_requires=">=3.5",
+    python_requires=">=3.6",
     install_requires=[
         "pip>=19.0",
         "wheel",
@@ -350,6 +349,7 @@
         "EditorConfig",
         "Send2Trash",
         "Pygments",
+        "mercurial",
         "pywin32>=1.0;platform_system=='Windows'",
     ],
     data_files=getDataFiles(),

eric ide

mercurial