Fri, 18 Jan 2013 19:50:13 +0100
Moved the SSL widgets to the E5Network package.
--- a/APIs/Python3/eric5.api Fri Jan 18 19:31:43 2013 +0100 +++ b/APIs/Python3/eric5.api Fri Jan 18 19:50:13 2013 +0100 @@ -1594,10 +1594,25 @@ eric5.E5Network.E5NetworkProxyFactory.E5NetworkProxyFactory?1() eric5.E5Network.E5NetworkProxyFactory.proxyAuthenticationRequired?4(proxy, auth) eric5.E5Network.E5NetworkProxyFactory.schemeFromProxyType?4(proxyType) +eric5.E5Network.E5SslCertificatesDialog.E5SslCertificatesDialog.CertRole?7 +eric5.E5Network.E5SslCertificatesDialog.E5SslCertificatesDialog.on_caCertificatesTree_currentItemChanged?4(current, previous) +eric5.E5Network.E5SslCertificatesDialog.E5SslCertificatesDialog.on_caDeleteButton_clicked?4() +eric5.E5Network.E5SslCertificatesDialog.E5SslCertificatesDialog.on_caExportButton_clicked?4() +eric5.E5Network.E5SslCertificatesDialog.E5SslCertificatesDialog.on_caImportButton_clicked?4() +eric5.E5Network.E5SslCertificatesDialog.E5SslCertificatesDialog.on_caViewButton_clicked?4() +eric5.E5Network.E5SslCertificatesDialog.E5SslCertificatesDialog.on_serversCertificatesTree_currentItemChanged?4(current, previous) +eric5.E5Network.E5SslCertificatesDialog.E5SslCertificatesDialog.on_serversDeleteButton_clicked?4() +eric5.E5Network.E5SslCertificatesDialog.E5SslCertificatesDialog.on_serversExportButton_clicked?4() +eric5.E5Network.E5SslCertificatesDialog.E5SslCertificatesDialog.on_serversImportButton_clicked?4() +eric5.E5Network.E5SslCertificatesDialog.E5SslCertificatesDialog.on_serversViewButton_clicked?4() +eric5.E5Network.E5SslCertificatesDialog.E5SslCertificatesDialog?1(parent=None) eric5.E5Network.E5SslErrorHandler.E5SslErrorHandler.sslErrors?4(errors, server, port=-1) eric5.E5Network.E5SslErrorHandler.E5SslErrorHandler.sslErrorsReply?4(reply, errors) eric5.E5Network.E5SslErrorHandler.E5SslErrorHandler.sslErrorsReplySlot?4(reply, errors) eric5.E5Network.E5SslErrorHandler.E5SslErrorHandler?1(parent=None) +eric5.E5Network.E5SslInfoDialog.E5SslInfoDialog?1(certificate, parent=None) +eric5.E5Network.E5SslInfoWidget.E5SslInfoWidget.showCertificate?4(certificate) +eric5.E5Network.E5SslInfoWidget.E5SslInfoWidget?1(parent=None) eric5.E5Network.E5UrlInfo.E5UrlInfo.ExeGroup?7 eric5.E5Network.E5UrlInfo.E5UrlInfo.ExeOther?7 eric5.E5Network.E5UrlInfo.E5UrlInfo.ExeOwner?7 @@ -3024,21 +3039,6 @@ eric5.Helpviewer.SpeedDial.SpeedDialReader.SpeedDialReader?1() eric5.Helpviewer.SpeedDial.SpeedDialWriter.SpeedDialWriter.write?4(fileNameOrDevice, pages, pagesPerRow, speedDialSize) eric5.Helpviewer.SpeedDial.SpeedDialWriter.SpeedDialWriter?1() -eric5.Helpviewer.SslCertificatesDialog.SslCertificatesDialog.CertRole?7 -eric5.Helpviewer.SslCertificatesDialog.SslCertificatesDialog.on_caCertificatesTree_currentItemChanged?4(current, previous) -eric5.Helpviewer.SslCertificatesDialog.SslCertificatesDialog.on_caDeleteButton_clicked?4() -eric5.Helpviewer.SslCertificatesDialog.SslCertificatesDialog.on_caExportButton_clicked?4() -eric5.Helpviewer.SslCertificatesDialog.SslCertificatesDialog.on_caImportButton_clicked?4() -eric5.Helpviewer.SslCertificatesDialog.SslCertificatesDialog.on_caViewButton_clicked?4() -eric5.Helpviewer.SslCertificatesDialog.SslCertificatesDialog.on_serversCertificatesTree_currentItemChanged?4(current, previous) -eric5.Helpviewer.SslCertificatesDialog.SslCertificatesDialog.on_serversDeleteButton_clicked?4() -eric5.Helpviewer.SslCertificatesDialog.SslCertificatesDialog.on_serversExportButton_clicked?4() -eric5.Helpviewer.SslCertificatesDialog.SslCertificatesDialog.on_serversImportButton_clicked?4() -eric5.Helpviewer.SslCertificatesDialog.SslCertificatesDialog.on_serversViewButton_clicked?4() -eric5.Helpviewer.SslCertificatesDialog.SslCertificatesDialog?1(parent=None) -eric5.Helpviewer.SslInfoDialog.SslInfoDialog?1(certificate, parent=None) -eric5.Helpviewer.SslInfoWidget.SslInfoWidget.showCertificate?4(certificate) -eric5.Helpviewer.SslInfoWidget.SslInfoWidget?1(parent=None) eric5.Helpviewer.Sync.DirectorySyncHandler.DirectorySyncHandler.initialLoadAndCheck?4(forceUpload) eric5.Helpviewer.Sync.DirectorySyncHandler.DirectorySyncHandler.shutdown?4() eric5.Helpviewer.Sync.DirectorySyncHandler.DirectorySyncHandler.syncBookmarks?4()
--- a/APIs/Python3/eric5.bas Fri Jan 18 19:31:43 2013 +0100 +++ b/APIs/Python3/eric5.bas Fri Jan 18 19:50:13 2013 +0100 @@ -164,7 +164,10 @@ E5SingleApplicationServer SingleApplicationServer E5SqueezeLabel QLabel E5SqueezeLabelPath QLabel +E5SslCertificatesDialog QDialog Ui_E5SslCertificatesDialog E5SslErrorHandler QObject +E5SslInfoDialog QDialog Ui_E5SslInfoDialog +E5SslInfoWidget QWidget Ui_E5SslInfoWidget E5StringListCompleter QCompleter E5TabWidget QTabWidget E5TableView QTableView @@ -592,9 +595,6 @@ SqlBrowserWidget QWidget Ui_SqlBrowserWidget SqlConnectionDialog QDialog Ui_SqlConnectionDialog SqlConnectionWidget QWidget -SslCertificatesDialog QDialog Ui_SslCertificatesDialog -SslInfoDialog QDialog Ui_SslInfoDialog -SslInfoWidget QWidget Ui_SslInfoWidget SslLabel QLabel StackedUrlBar QStackedWidget StackedWidget QStackedWidget
--- a/Documentation/Help/source.qhp Fri Jan 18 19:31:43 2013 +0100 +++ b/Documentation/Help/source.qhp Fri Jan 18 19:50:13 2013 +0100 @@ -148,7 +148,10 @@ <section title="eric5.E5Network.E5NetworkHeaderDetailsDialog" ref="eric5.E5Network.E5NetworkHeaderDetailsDialog.html" /> <section title="eric5.E5Network.E5NetworkMonitor" ref="eric5.E5Network.E5NetworkMonitor.html" /> <section title="eric5.E5Network.E5NetworkProxyFactory" ref="eric5.E5Network.E5NetworkProxyFactory.html" /> + <section title="eric5.E5Network.E5SslCertificatesDialog" ref="eric5.E5Network.E5SslCertificatesDialog.html" /> <section title="eric5.E5Network.E5SslErrorHandler" ref="eric5.E5Network.E5SslErrorHandler.html" /> + <section title="eric5.E5Network.E5SslInfoDialog" ref="eric5.E5Network.E5SslInfoDialog.html" /> + <section title="eric5.E5Network.E5SslInfoWidget" ref="eric5.E5Network.E5SslInfoWidget.html" /> <section title="eric5.E5Network.E5UrlInfo" ref="eric5.E5Network.E5UrlInfo.html" /> </section> <section title="eric5.E5XML" ref="index-eric5.E5XML.html"> @@ -400,9 +403,6 @@ <section title="eric5.Helpviewer.QtHelpDocumentationDialog" ref="eric5.Helpviewer.QtHelpDocumentationDialog.html" /> <section title="eric5.Helpviewer.QtHelpFiltersDialog" ref="eric5.Helpviewer.QtHelpFiltersDialog.html" /> <section title="eric5.Helpviewer.SearchWidget" ref="eric5.Helpviewer.SearchWidget.html" /> - <section title="eric5.Helpviewer.SslCertificatesDialog" ref="eric5.Helpviewer.SslCertificatesDialog.html" /> - <section title="eric5.Helpviewer.SslInfoDialog" ref="eric5.Helpviewer.SslInfoDialog.html" /> - <section title="eric5.Helpviewer.SslInfoWidget" ref="eric5.Helpviewer.SslInfoWidget.html" /> <section title="eric5.Helpviewer.VirusTotalApi" ref="eric5.Helpviewer.VirusTotalApi.html" /> </section> <section title="eric5.IconEditor" ref="index-eric5.IconEditor.html"> @@ -3664,6 +3664,27 @@ <keyword name="E5SqueezeLabelPath.setSurrounding" id="E5SqueezeLabelPath.setSurrounding" ref="eric5.E5Gui.E5SqueezeLabels.html#E5SqueezeLabelPath.setSurrounding" /> <keyword name="E5SqueezeLabelPath.setTextPath" id="E5SqueezeLabelPath.setTextPath" ref="eric5.E5Gui.E5SqueezeLabels.html#E5SqueezeLabelPath.setTextPath" /> <keyword name="E5SqueezeLabels (Module)" id="E5SqueezeLabels (Module)" ref="eric5.E5Gui.E5SqueezeLabels.html" /> + <keyword name="E5SslCertificatesDialog" id="E5SslCertificatesDialog" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog" /> + <keyword name="E5SslCertificatesDialog (Constructor)" id="E5SslCertificatesDialog (Constructor)" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.__init__" /> + <keyword name="E5SslCertificatesDialog (Module)" id="E5SslCertificatesDialog (Module)" ref="eric5.E5Network.E5SslCertificatesDialog.html" /> + <keyword name="E5SslCertificatesDialog.__createCaCertificateEntry" id="E5SslCertificatesDialog.__createCaCertificateEntry" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.__createCaCertificateEntry" /> + <keyword name="E5SslCertificatesDialog.__createServerCertificateEntry" id="E5SslCertificatesDialog.__createServerCertificateEntry" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.__createServerCertificateEntry" /> + <keyword name="E5SslCertificatesDialog.__exportCertificate" id="E5SslCertificatesDialog.__exportCertificate" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.__exportCertificate" /> + <keyword name="E5SslCertificatesDialog.__getSystemCaCertificates" id="E5SslCertificatesDialog.__getSystemCaCertificates" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.__getSystemCaCertificates" /> + <keyword name="E5SslCertificatesDialog.__importCertificate" id="E5SslCertificatesDialog.__importCertificate" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.__importCertificate" /> + <keyword name="E5SslCertificatesDialog.__populateCaCertificatesTree" id="E5SslCertificatesDialog.__populateCaCertificatesTree" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.__populateCaCertificatesTree" /> + <keyword name="E5SslCertificatesDialog.__populateServerCertificatesTree" id="E5SslCertificatesDialog.__populateServerCertificatesTree" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.__populateServerCertificatesTree" /> + <keyword name="E5SslCertificatesDialog.__updateDefaultConfiguration" id="E5SslCertificatesDialog.__updateDefaultConfiguration" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.__updateDefaultConfiguration" /> + <keyword name="E5SslCertificatesDialog.on_caCertificatesTree_currentItemChanged" id="E5SslCertificatesDialog.on_caCertificatesTree_currentItemChanged" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.on_caCertificatesTree_currentItemChanged" /> + <keyword name="E5SslCertificatesDialog.on_caDeleteButton_clicked" id="E5SslCertificatesDialog.on_caDeleteButton_clicked" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.on_caDeleteButton_clicked" /> + <keyword name="E5SslCertificatesDialog.on_caExportButton_clicked" id="E5SslCertificatesDialog.on_caExportButton_clicked" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.on_caExportButton_clicked" /> + <keyword name="E5SslCertificatesDialog.on_caImportButton_clicked" id="E5SslCertificatesDialog.on_caImportButton_clicked" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.on_caImportButton_clicked" /> + <keyword name="E5SslCertificatesDialog.on_caViewButton_clicked" id="E5SslCertificatesDialog.on_caViewButton_clicked" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.on_caViewButton_clicked" /> + <keyword name="E5SslCertificatesDialog.on_serversCertificatesTree_currentItemChanged" id="E5SslCertificatesDialog.on_serversCertificatesTree_currentItemChanged" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.on_serversCertificatesTree_currentItemChanged" /> + <keyword name="E5SslCertificatesDialog.on_serversDeleteButton_clicked" id="E5SslCertificatesDialog.on_serversDeleteButton_clicked" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.on_serversDeleteButton_clicked" /> + <keyword name="E5SslCertificatesDialog.on_serversExportButton_clicked" id="E5SslCertificatesDialog.on_serversExportButton_clicked" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.on_serversExportButton_clicked" /> + <keyword name="E5SslCertificatesDialog.on_serversImportButton_clicked" id="E5SslCertificatesDialog.on_serversImportButton_clicked" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.on_serversImportButton_clicked" /> + <keyword name="E5SslCertificatesDialog.on_serversViewButton_clicked" id="E5SslCertificatesDialog.on_serversViewButton_clicked" ref="eric5.E5Network.E5SslCertificatesDialog.html#E5SslCertificatesDialog.on_serversViewButton_clicked" /> <keyword name="E5SslErrorHandler" id="E5SslErrorHandler" ref="eric5.E5Network.E5SslErrorHandler.html#E5SslErrorHandler" /> <keyword name="E5SslErrorHandler (Constructor)" id="E5SslErrorHandler (Constructor)" ref="eric5.E5Network.E5SslErrorHandler.html#E5SslErrorHandler.__init__" /> <keyword name="E5SslErrorHandler (Module)" id="E5SslErrorHandler (Module)" ref="eric5.E5Network.E5SslErrorHandler.html" /> @@ -3672,6 +3693,17 @@ <keyword name="E5SslErrorHandler.sslErrors" id="E5SslErrorHandler.sslErrors" ref="eric5.E5Network.E5SslErrorHandler.html#E5SslErrorHandler.sslErrors" /> <keyword name="E5SslErrorHandler.sslErrorsReply" id="E5SslErrorHandler.sslErrorsReply" ref="eric5.E5Network.E5SslErrorHandler.html#E5SslErrorHandler.sslErrorsReply" /> <keyword name="E5SslErrorHandler.sslErrorsReplySlot" id="E5SslErrorHandler.sslErrorsReplySlot" ref="eric5.E5Network.E5SslErrorHandler.html#E5SslErrorHandler.sslErrorsReplySlot" /> + <keyword name="E5SslInfoDialog" id="E5SslInfoDialog" ref="eric5.E5Network.E5SslInfoDialog.html#E5SslInfoDialog" /> + <keyword name="E5SslInfoDialog (Constructor)" id="E5SslInfoDialog (Constructor)" ref="eric5.E5Network.E5SslInfoDialog.html#E5SslInfoDialog.__init__" /> + <keyword name="E5SslInfoDialog (Module)" id="E5SslInfoDialog (Module)" ref="eric5.E5Network.E5SslInfoDialog.html" /> + <keyword name="E5SslInfoWidget" id="E5SslInfoWidget" ref="eric5.E5Network.E5SslInfoWidget.html#E5SslInfoWidget" /> + <keyword name="E5SslInfoWidget (Constructor)" id="E5SslInfoWidget (Constructor)" ref="eric5.E5Network.E5SslInfoWidget.html#E5SslInfoWidget.__init__" /> + <keyword name="E5SslInfoWidget (Module)" id="E5SslInfoWidget (Module)" ref="eric5.E5Network.E5SslInfoWidget.html" /> + <keyword name="E5SslInfoWidget.__certificateString" id="E5SslInfoWidget.__certificateString" ref="eric5.E5Network.E5SslInfoWidget.html#E5SslInfoWidget.__certificateString" /> + <keyword name="E5SslInfoWidget.__formatHexString" id="E5SslInfoWidget.__formatHexString" ref="eric5.E5Network.E5SslInfoWidget.html#E5SslInfoWidget.__formatHexString" /> + <keyword name="E5SslInfoWidget.__hasExpired" id="E5SslInfoWidget.__hasExpired" ref="eric5.E5Network.E5SslInfoWidget.html#E5SslInfoWidget.__hasExpired" /> + <keyword name="E5SslInfoWidget.__serialNumber" id="E5SslInfoWidget.__serialNumber" ref="eric5.E5Network.E5SslInfoWidget.html#E5SslInfoWidget.__serialNumber" /> + <keyword name="E5SslInfoWidget.showCertificate" id="E5SslInfoWidget.showCertificate" ref="eric5.E5Network.E5SslInfoWidget.html#E5SslInfoWidget.showCertificate" /> <keyword name="E5StringListCompleter" id="E5StringListCompleter" ref="eric5.E5Gui.E5Completers.html#E5StringListCompleter" /> <keyword name="E5StringListCompleter (Constructor)" id="E5StringListCompleter (Constructor)" ref="eric5.E5Gui.E5Completers.html#E5StringListCompleter.__init__" /> <keyword name="E5TabWidget" id="E5TabWidget" ref="eric5.E5Gui.E5TabWidget.html#E5TabWidget" /> @@ -9592,38 +9624,6 @@ <keyword name="SqlConnectionWidget.currentDatabase" id="SqlConnectionWidget.currentDatabase" ref="eric5.SqlBrowser.SqlConnectionWidget.html#SqlConnectionWidget.currentDatabase" /> <keyword name="SqlConnectionWidget.refresh" id="SqlConnectionWidget.refresh" ref="eric5.SqlBrowser.SqlConnectionWidget.html#SqlConnectionWidget.refresh" /> <keyword name="SqlConnectionWidget.showSchema" id="SqlConnectionWidget.showSchema" ref="eric5.SqlBrowser.SqlConnectionWidget.html#SqlConnectionWidget.showSchema" /> - <keyword name="SslCertificatesDialog" id="SslCertificatesDialog" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog" /> - <keyword name="SslCertificatesDialog (Constructor)" id="SslCertificatesDialog (Constructor)" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.__init__" /> - <keyword name="SslCertificatesDialog (Module)" id="SslCertificatesDialog (Module)" ref="eric5.Helpviewer.SslCertificatesDialog.html" /> - <keyword name="SslCertificatesDialog.__createCaCertificateEntry" id="SslCertificatesDialog.__createCaCertificateEntry" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.__createCaCertificateEntry" /> - <keyword name="SslCertificatesDialog.__createServerCertificateEntry" id="SslCertificatesDialog.__createServerCertificateEntry" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.__createServerCertificateEntry" /> - <keyword name="SslCertificatesDialog.__exportCertificate" id="SslCertificatesDialog.__exportCertificate" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.__exportCertificate" /> - <keyword name="SslCertificatesDialog.__getSystemCaCertificates" id="SslCertificatesDialog.__getSystemCaCertificates" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.__getSystemCaCertificates" /> - <keyword name="SslCertificatesDialog.__importCertificate" id="SslCertificatesDialog.__importCertificate" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.__importCertificate" /> - <keyword name="SslCertificatesDialog.__populateCaCertificatesTree" id="SslCertificatesDialog.__populateCaCertificatesTree" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.__populateCaCertificatesTree" /> - <keyword name="SslCertificatesDialog.__populateServerCertificatesTree" id="SslCertificatesDialog.__populateServerCertificatesTree" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.__populateServerCertificatesTree" /> - <keyword name="SslCertificatesDialog.__updateDefaultConfiguration" id="SslCertificatesDialog.__updateDefaultConfiguration" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.__updateDefaultConfiguration" /> - <keyword name="SslCertificatesDialog.on_caCertificatesTree_currentItemChanged" id="SslCertificatesDialog.on_caCertificatesTree_currentItemChanged" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.on_caCertificatesTree_currentItemChanged" /> - <keyword name="SslCertificatesDialog.on_caDeleteButton_clicked" id="SslCertificatesDialog.on_caDeleteButton_clicked" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.on_caDeleteButton_clicked" /> - <keyword name="SslCertificatesDialog.on_caExportButton_clicked" id="SslCertificatesDialog.on_caExportButton_clicked" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.on_caExportButton_clicked" /> - <keyword name="SslCertificatesDialog.on_caImportButton_clicked" id="SslCertificatesDialog.on_caImportButton_clicked" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.on_caImportButton_clicked" /> - <keyword name="SslCertificatesDialog.on_caViewButton_clicked" id="SslCertificatesDialog.on_caViewButton_clicked" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.on_caViewButton_clicked" /> - <keyword name="SslCertificatesDialog.on_serversCertificatesTree_currentItemChanged" id="SslCertificatesDialog.on_serversCertificatesTree_currentItemChanged" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.on_serversCertificatesTree_currentItemChanged" /> - <keyword name="SslCertificatesDialog.on_serversDeleteButton_clicked" id="SslCertificatesDialog.on_serversDeleteButton_clicked" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.on_serversDeleteButton_clicked" /> - <keyword name="SslCertificatesDialog.on_serversExportButton_clicked" id="SslCertificatesDialog.on_serversExportButton_clicked" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.on_serversExportButton_clicked" /> - <keyword name="SslCertificatesDialog.on_serversImportButton_clicked" id="SslCertificatesDialog.on_serversImportButton_clicked" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.on_serversImportButton_clicked" /> - <keyword name="SslCertificatesDialog.on_serversViewButton_clicked" id="SslCertificatesDialog.on_serversViewButton_clicked" ref="eric5.Helpviewer.SslCertificatesDialog.html#SslCertificatesDialog.on_serversViewButton_clicked" /> - <keyword name="SslInfoDialog" id="SslInfoDialog" ref="eric5.Helpviewer.SslInfoDialog.html#SslInfoDialog" /> - <keyword name="SslInfoDialog (Constructor)" id="SslInfoDialog (Constructor)" ref="eric5.Helpviewer.SslInfoDialog.html#SslInfoDialog.__init__" /> - <keyword name="SslInfoDialog (Module)" id="SslInfoDialog (Module)" ref="eric5.Helpviewer.SslInfoDialog.html" /> - <keyword name="SslInfoWidget" id="SslInfoWidget" ref="eric5.Helpviewer.SslInfoWidget.html#SslInfoWidget" /> - <keyword name="SslInfoWidget (Constructor)" id="SslInfoWidget (Constructor)" ref="eric5.Helpviewer.SslInfoWidget.html#SslInfoWidget.__init__" /> - <keyword name="SslInfoWidget (Module)" id="SslInfoWidget (Module)" ref="eric5.Helpviewer.SslInfoWidget.html" /> - <keyword name="SslInfoWidget.__certificateString" id="SslInfoWidget.__certificateString" ref="eric5.Helpviewer.SslInfoWidget.html#SslInfoWidget.__certificateString" /> - <keyword name="SslInfoWidget.__formatHexString" id="SslInfoWidget.__formatHexString" ref="eric5.Helpviewer.SslInfoWidget.html#SslInfoWidget.__formatHexString" /> - <keyword name="SslInfoWidget.__hasExpired" id="SslInfoWidget.__hasExpired" ref="eric5.Helpviewer.SslInfoWidget.html#SslInfoWidget.__hasExpired" /> - <keyword name="SslInfoWidget.__serialNumber" id="SslInfoWidget.__serialNumber" ref="eric5.Helpviewer.SslInfoWidget.html#SslInfoWidget.__serialNumber" /> - <keyword name="SslInfoWidget.showCertificate" id="SslInfoWidget.showCertificate" ref="eric5.Helpviewer.SslInfoWidget.html#SslInfoWidget.showCertificate" /> <keyword name="SslLabel" id="SslLabel" ref="eric5.Helpviewer.UrlBar.SslLabel.html#SslLabel" /> <keyword name="SslLabel (Constructor)" id="SslLabel (Constructor)" ref="eric5.Helpviewer.UrlBar.SslLabel.html#SslLabel.__init__" /> <keyword name="SslLabel (Module)" id="SslLabel (Module)" ref="eric5.Helpviewer.UrlBar.SslLabel.html" /> @@ -11442,6 +11442,7 @@ <keyword name="UserInterface.__setWindowCaption" id="UserInterface.__setWindowCaption" ref="eric5.UI.UserInterface.html#UserInterface.__setWindowCaption" /> <keyword name="UserInterface.__setupDockWindow" id="UserInterface.__setupDockWindow" ref="eric5.UI.UserInterface.html#UserInterface.__setupDockWindow" /> <keyword name="UserInterface.__showAvailableVersionInfos" id="UserInterface.__showAvailableVersionInfos" ref="eric5.UI.UserInterface.html#UserInterface.__showAvailableVersionInfos" /> + <keyword name="UserInterface.__showCertificatesDialog" id="UserInterface.__showCertificatesDialog" ref="eric5.UI.UserInterface.html#UserInterface.__showCertificatesDialog" /> <keyword name="UserInterface.__showEricDoc" id="UserInterface.__showEricDoc" ref="eric5.UI.UserInterface.html#UserInterface.__showEricDoc" /> <keyword name="UserInterface.__showExternalTools" id="UserInterface.__showExternalTools" ref="eric5.UI.UserInterface.html#UserInterface.__showExternalTools" /> <keyword name="UserInterface.__showExtrasMenu" id="UserInterface.__showExtrasMenu" ref="eric5.UI.UserInterface.html#UserInterface.__showExtrasMenu" /> @@ -13019,7 +13020,10 @@ <file>eric5.E5Network.E5NetworkHeaderDetailsDialog.html</file> <file>eric5.E5Network.E5NetworkMonitor.html</file> <file>eric5.E5Network.E5NetworkProxyFactory.html</file> + <file>eric5.E5Network.E5SslCertificatesDialog.html</file> <file>eric5.E5Network.E5SslErrorHandler.html</file> + <file>eric5.E5Network.E5SslInfoDialog.html</file> + <file>eric5.E5Network.E5SslInfoWidget.html</file> <file>eric5.E5Network.E5UrlInfo.html</file> <file>eric5.E5XML.Config.html</file> <file>eric5.E5XML.DebuggerPropertiesReader.html</file> @@ -13189,9 +13193,6 @@ <file>eric5.Helpviewer.SpeedDial.SpeedDial.html</file> <file>eric5.Helpviewer.SpeedDial.SpeedDialReader.html</file> <file>eric5.Helpviewer.SpeedDial.SpeedDialWriter.html</file> - <file>eric5.Helpviewer.SslCertificatesDialog.html</file> - <file>eric5.Helpviewer.SslInfoDialog.html</file> - <file>eric5.Helpviewer.SslInfoWidget.html</file> <file>eric5.Helpviewer.Sync.DirectorySyncHandler.html</file> <file>eric5.Helpviewer.Sync.FtpSyncHandler.html</file> <file>eric5.Helpviewer.Sync.SyncAssistantDialog.html</file>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Documentation/Source/eric5.E5Network.E5SslCertificatesDialog.html Fri Jan 18 19:50:13 2013 +0100 @@ -0,0 +1,275 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' +'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'> +<html><head> +<title>eric5.E5Network.E5SslCertificatesDialog</title> +<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>eric5.E5Network.E5SslCertificatesDialog</h1> +<p> +Module implementing a dialog to show and edit all certificates. +</p> +<h3>Global Attributes</h3> +<table> +<tr><td>None</td></tr> +</table> +<h3>Classes</h3> +<table> +<tr> +<td><a href="#E5SslCertificatesDialog">E5SslCertificatesDialog</a></td> +<td>Class implementing a dialog to show and edit all certificates.</td> +</tr> +</table> +<h3>Functions</h3> +<table> +<tr><td>None</td></tr> +</table> +<hr /><hr /> +<a NAME="E5SslCertificatesDialog" ID="E5SslCertificatesDialog"></a> +<h2>E5SslCertificatesDialog</h2> +<p> + Class implementing a dialog to show and edit all certificates. +</p> +<h3>Derived from</h3> +QDialog, Ui_E5SslCertificatesDialog +<h3>Class Attributes</h3> +<table> +<tr><td>CertRole</td></tr> +</table> +<h3>Class Methods</h3> +<table> +<tr><td>None</td></tr> +</table> +<h3>Methods</h3> +<table> +<tr> +<td><a href="#E5SslCertificatesDialog.__init__">E5SslCertificatesDialog</a></td> +<td>Constructor</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.__createCaCertificateEntry">__createCaCertificateEntry</a></td> +<td>Private method to create a CA certificate entry.</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.__createServerCertificateEntry">__createServerCertificateEntry</a></td> +<td>Private method to create a server certificate entry.</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.__exportCertificate">__exportCertificate</a></td> +<td>Private slot to export a certificate.</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.__getSystemCaCertificates">__getSystemCaCertificates</a></td> +<td>Private method to get the list of system certificates.</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.__importCertificate">__importCertificate</a></td> +<td>Private method to read a certificate.</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.__populateCaCertificatesTree">__populateCaCertificatesTree</a></td> +<td>Private slot to populate the CA certificates tree.</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.__populateServerCertificatesTree">__populateServerCertificatesTree</a></td> +<td>Private slot to populate the server certificates tree.</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.__updateDefaultConfiguration">__updateDefaultConfiguration</a></td> +<td>Private method to update the default SSL configuration.</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.on_caCertificatesTree_currentItemChanged">on_caCertificatesTree_currentItemChanged</a></td> +<td>Private slot handling a change of the current item in the CA certificates list.</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.on_caDeleteButton_clicked">on_caDeleteButton_clicked</a></td> +<td>Private slot to delete the selected CA certificate.</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.on_caExportButton_clicked">on_caExportButton_clicked</a></td> +<td>Private slot to export the selected CA certificate.</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.on_caImportButton_clicked">on_caImportButton_clicked</a></td> +<td>Private slot to import server certificates.</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.on_caViewButton_clicked">on_caViewButton_clicked</a></td> +<td>Private slot to show data of the selected CA certificate.</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.on_serversCertificatesTree_currentItemChanged">on_serversCertificatesTree_currentItemChanged</a></td> +<td>Private slot handling a change of the current item in the server certificates list.</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.on_serversDeleteButton_clicked">on_serversDeleteButton_clicked</a></td> +<td>Private slot to delete the selected server certificate.</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.on_serversExportButton_clicked">on_serversExportButton_clicked</a></td> +<td>Private slot to export the selected server certificate.</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.on_serversImportButton_clicked">on_serversImportButton_clicked</a></td> +<td>Private slot to import server certificates.</td> +</tr><tr> +<td><a href="#E5SslCertificatesDialog.on_serversViewButton_clicked">on_serversViewButton_clicked</a></td> +<td>Private slot to show data of the selected server certificate.</td> +</tr> +</table> +<h3>Static Methods</h3> +<table> +<tr><td>None</td></tr> +</table> +<a NAME="E5SslCertificatesDialog.__init__" ID="E5SslCertificatesDialog.__init__"></a> +<h4>E5SslCertificatesDialog (Constructor)</h4> +<b>E5SslCertificatesDialog</b>(<i>parent=None</i>) +<p> + Constructor +</p><dl> +<dt><i>parent</i></dt> +<dd> +reference to the parent widget (QWidget) +</dd> +</dl><a NAME="E5SslCertificatesDialog.__createCaCertificateEntry" ID="E5SslCertificatesDialog.__createCaCertificateEntry"></a> +<h4>E5SslCertificatesDialog.__createCaCertificateEntry</h4> +<b>__createCaCertificateEntry</b>(<i>cert</i>) +<p> + Private method to create a CA certificate entry. +</p><dl> +<dt><i>cert</i></dt> +<dd> +certificate to insert (QSslCertificate) +</dd> +</dl><a NAME="E5SslCertificatesDialog.__createServerCertificateEntry" ID="E5SslCertificatesDialog.__createServerCertificateEntry"></a> +<h4>E5SslCertificatesDialog.__createServerCertificateEntry</h4> +<b>__createServerCertificateEntry</b>(<i>server, cert</i>) +<p> + Private method to create a server certificate entry. +</p><dl> +<dt><i>server</i></dt> +<dd> +server name of the certificate (string) +</dd><dt><i>cert</i></dt> +<dd> +certificate to insert (QSslCertificate) +</dd> +</dl><a NAME="E5SslCertificatesDialog.__exportCertificate" ID="E5SslCertificatesDialog.__exportCertificate"></a> +<h4>E5SslCertificatesDialog.__exportCertificate</h4> +<b>__exportCertificate</b>(<i>name, cert</i>) +<p> + Private slot to export a certificate. +</p><dl> +<dt><i>name</i></dt> +<dd> +default file name without extension (string) +</dd><dt><i>cert</i></dt> +<dd> +certificate to be exported (QSslCertificate) +</dd> +</dl><a NAME="E5SslCertificatesDialog.__getSystemCaCertificates" ID="E5SslCertificatesDialog.__getSystemCaCertificates"></a> +<h4>E5SslCertificatesDialog.__getSystemCaCertificates</h4> +<b>__getSystemCaCertificates</b>(<i></i>) +<p> + Private method to get the list of system certificates. +</p><dl> +<dt>Returns:</dt> +<dd> +list of system certificates (list of QSslCertificate) +</dd> +</dl><a NAME="E5SslCertificatesDialog.__importCertificate" ID="E5SslCertificatesDialog.__importCertificate"></a> +<h4>E5SslCertificatesDialog.__importCertificate</h4> +<b>__importCertificate</b>(<i></i>) +<p> + Private method to read a certificate. +</p><dl> +<dt>Returns:</dt> +<dd> +certificates read (list of QSslCertificate) +</dd> +</dl><a NAME="E5SslCertificatesDialog.__populateCaCertificatesTree" ID="E5SslCertificatesDialog.__populateCaCertificatesTree"></a> +<h4>E5SslCertificatesDialog.__populateCaCertificatesTree</h4> +<b>__populateCaCertificatesTree</b>(<i></i>) +<p> + Private slot to populate the CA certificates tree. +</p><a NAME="E5SslCertificatesDialog.__populateServerCertificatesTree" ID="E5SslCertificatesDialog.__populateServerCertificatesTree"></a> +<h4>E5SslCertificatesDialog.__populateServerCertificatesTree</h4> +<b>__populateServerCertificatesTree</b>(<i></i>) +<p> + Private slot to populate the server certificates tree. +</p><a NAME="E5SslCertificatesDialog.__updateDefaultConfiguration" ID="E5SslCertificatesDialog.__updateDefaultConfiguration"></a> +<h4>E5SslCertificatesDialog.__updateDefaultConfiguration</h4> +<b>__updateDefaultConfiguration</b>(<i></i>) +<p> + Private method to update the default SSL configuration. +</p><a NAME="E5SslCertificatesDialog.on_caCertificatesTree_currentItemChanged" ID="E5SslCertificatesDialog.on_caCertificatesTree_currentItemChanged"></a> +<h4>E5SslCertificatesDialog.on_caCertificatesTree_currentItemChanged</h4> +<b>on_caCertificatesTree_currentItemChanged</b>(<i>current, previous</i>) +<p> + Private slot handling a change of the current item + in the CA certificates list. +</p><dl> +<dt><i>current</i></dt> +<dd> +new current item (QTreeWidgetItem) +</dd><dt><i>previous</i></dt> +<dd> +previous current item (QTreeWidgetItem) +</dd> +</dl><a NAME="E5SslCertificatesDialog.on_caDeleteButton_clicked" ID="E5SslCertificatesDialog.on_caDeleteButton_clicked"></a> +<h4>E5SslCertificatesDialog.on_caDeleteButton_clicked</h4> +<b>on_caDeleteButton_clicked</b>(<i></i>) +<p> + Private slot to delete the selected CA certificate. +</p><a NAME="E5SslCertificatesDialog.on_caExportButton_clicked" ID="E5SslCertificatesDialog.on_caExportButton_clicked"></a> +<h4>E5SslCertificatesDialog.on_caExportButton_clicked</h4> +<b>on_caExportButton_clicked</b>(<i></i>) +<p> + Private slot to export the selected CA certificate. +</p><a NAME="E5SslCertificatesDialog.on_caImportButton_clicked" ID="E5SslCertificatesDialog.on_caImportButton_clicked"></a> +<h4>E5SslCertificatesDialog.on_caImportButton_clicked</h4> +<b>on_caImportButton_clicked</b>(<i></i>) +<p> + Private slot to import server certificates. +</p><a NAME="E5SslCertificatesDialog.on_caViewButton_clicked" ID="E5SslCertificatesDialog.on_caViewButton_clicked"></a> +<h4>E5SslCertificatesDialog.on_caViewButton_clicked</h4> +<b>on_caViewButton_clicked</b>(<i></i>) +<p> + Private slot to show data of the selected CA certificate. +</p><a NAME="E5SslCertificatesDialog.on_serversCertificatesTree_currentItemChanged" ID="E5SslCertificatesDialog.on_serversCertificatesTree_currentItemChanged"></a> +<h4>E5SslCertificatesDialog.on_serversCertificatesTree_currentItemChanged</h4> +<b>on_serversCertificatesTree_currentItemChanged</b>(<i>current, previous</i>) +<p> + Private slot handling a change of the current item in the + server certificates list. +</p><dl> +<dt><i>current</i></dt> +<dd> +new current item (QTreeWidgetItem) +</dd><dt><i>previous</i></dt> +<dd> +previous current item (QTreeWidgetItem) +</dd> +</dl><a NAME="E5SslCertificatesDialog.on_serversDeleteButton_clicked" ID="E5SslCertificatesDialog.on_serversDeleteButton_clicked"></a> +<h4>E5SslCertificatesDialog.on_serversDeleteButton_clicked</h4> +<b>on_serversDeleteButton_clicked</b>(<i></i>) +<p> + Private slot to delete the selected server certificate. +</p><a NAME="E5SslCertificatesDialog.on_serversExportButton_clicked" ID="E5SslCertificatesDialog.on_serversExportButton_clicked"></a> +<h4>E5SslCertificatesDialog.on_serversExportButton_clicked</h4> +<b>on_serversExportButton_clicked</b>(<i></i>) +<p> + Private slot to export the selected server certificate. +</p><a NAME="E5SslCertificatesDialog.on_serversImportButton_clicked" ID="E5SslCertificatesDialog.on_serversImportButton_clicked"></a> +<h4>E5SslCertificatesDialog.on_serversImportButton_clicked</h4> +<b>on_serversImportButton_clicked</b>(<i></i>) +<p> + Private slot to import server certificates. +</p><a NAME="E5SslCertificatesDialog.on_serversViewButton_clicked" ID="E5SslCertificatesDialog.on_serversViewButton_clicked"></a> +<h4>E5SslCertificatesDialog.on_serversViewButton_clicked</h4> +<b>on_serversViewButton_clicked</b>(<i></i>) +<p> + Private slot to show data of the selected server certificate. +</p> +<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/Documentation/Source/eric5.E5Network.E5SslInfoDialog.html Fri Jan 18 19:50:13 2013 +0100 @@ -0,0 +1,85 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' +'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'> +<html><head> +<title>eric5.E5Network.E5SslInfoDialog</title> +<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>eric5.E5Network.E5SslInfoDialog</h1> +<p> +Module implementing a dialog to show SSL certificate infos. +</p> +<h3>Global Attributes</h3> +<table> +<tr><td>None</td></tr> +</table> +<h3>Classes</h3> +<table> +<tr> +<td><a href="#E5SslInfoDialog">E5SslInfoDialog</a></td> +<td>Class implementing a dialog to show SSL certificate infos.</td> +</tr> +</table> +<h3>Functions</h3> +<table> +<tr><td>None</td></tr> +</table> +<hr /><hr /> +<a NAME="E5SslInfoDialog" ID="E5SslInfoDialog"></a> +<h2>E5SslInfoDialog</h2> +<p> + Class implementing a dialog to show SSL certificate infos. +</p> +<h3>Derived from</h3> +QDialog, Ui_E5SslInfoDialog +<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="#E5SslInfoDialog.__init__">E5SslInfoDialog</a></td> +<td>Constructor</td> +</tr> +</table> +<h3>Static Methods</h3> +<table> +<tr><td>None</td></tr> +</table> +<a NAME="E5SslInfoDialog.__init__" ID="E5SslInfoDialog.__init__"></a> +<h4>E5SslInfoDialog (Constructor)</h4> +<b>E5SslInfoDialog</b>(<i>certificate, parent=None</i>) +<p> + Constructor +</p><dl> +<dt><i>certificate</i></dt> +<dd> +reference to the SSL certificate (QSslCertificate) +</dd><dt><i>parent</i></dt> +<dd> +reference to the parent widget (QWidget) +</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/Documentation/Source/eric5.E5Network.E5SslInfoWidget.html Fri Jan 18 19:50:13 2013 +0100 @@ -0,0 +1,170 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' +'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'> +<html><head> +<title>eric5.E5Network.E5SslInfoWidget</title> +<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>eric5.E5Network.E5SslInfoWidget</h1> +<p> +Module implementing a widget to show SSL certificate infos. +</p> +<h3>Global Attributes</h3> +<table> +<tr><td>None</td></tr> +</table> +<h3>Classes</h3> +<table> +<tr> +<td><a href="#E5SslInfoWidget">E5SslInfoWidget</a></td> +<td>Class implementing a widget to show SSL certificate infos.</td> +</tr> +</table> +<h3>Functions</h3> +<table> +<tr><td>None</td></tr> +</table> +<hr /><hr /> +<a NAME="E5SslInfoWidget" ID="E5SslInfoWidget"></a> +<h2>E5SslInfoWidget</h2> +<p> + Class implementing a widget to show SSL certificate infos. +</p> +<h3>Derived from</h3> +QWidget, Ui_E5SslInfoWidget +<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="#E5SslInfoWidget.__init__">E5SslInfoWidget</a></td> +<td>Constructor</td> +</tr><tr> +<td><a href="#E5SslInfoWidget.__certificateString">__certificateString</a></td> +<td>Private method to prepare some text for display.</td> +</tr><tr> +<td><a href="#E5SslInfoWidget.__formatHexString">__formatHexString</a></td> +<td>Private method to format a hex string for display.</td> +</tr><tr> +<td><a href="#E5SslInfoWidget.__hasExpired">__hasExpired</a></td> +<td>Private method to check for a certificate expiration.</td> +</tr><tr> +<td><a href="#E5SslInfoWidget.__serialNumber">__serialNumber</a></td> +<td>Private slot to format the certificate serial number.</td> +</tr><tr> +<td><a href="#E5SslInfoWidget.showCertificate">showCertificate</a></td> +<td>Public method to show the SSL certificate information.</td> +</tr> +</table> +<h3>Static Methods</h3> +<table> +<tr><td>None</td></tr> +</table> +<a NAME="E5SslInfoWidget.__init__" ID="E5SslInfoWidget.__init__"></a> +<h4>E5SslInfoWidget (Constructor)</h4> +<b>E5SslInfoWidget</b>(<i>parent=None</i>) +<p> + Constructor +</p><dl> +<dt><i>parent</i></dt> +<dd> +reference to the parent widget (QWidget) +</dd> +</dl><a NAME="E5SslInfoWidget.__certificateString" ID="E5SslInfoWidget.__certificateString"></a> +<h4>E5SslInfoWidget.__certificateString</h4> +<b>__certificateString</b>(<i>txt</i>) +<p> + Private method to prepare some text for display. +</p><dl> +<dt><i>txt</i></dt> +<dd> +text to be displayed (string) +</dd> +</dl><dl> +<dt>Returns:</dt> +<dd> +prepared text (string) +</dd> +</dl><a NAME="E5SslInfoWidget.__formatHexString" ID="E5SslInfoWidget.__formatHexString"></a> +<h4>E5SslInfoWidget.__formatHexString</h4> +<b>__formatHexString</b>(<i>hexString</i>) +<p> + Private method to format a hex string for display. +</p><dl> +<dt><i>hexString</i></dt> +<dd> +hex string to be formatted (string) +</dd> +</dl><dl> +<dt>Returns:</dt> +<dd> +formatted string (string) +</dd> +</dl><a NAME="E5SslInfoWidget.__hasExpired" ID="E5SslInfoWidget.__hasExpired"></a> +<h4>E5SslInfoWidget.__hasExpired</h4> +<b>__hasExpired</b>(<i>effectiveDate, expiryDate</i>) +<p> + Private method to check for a certificate expiration. +</p><dl> +<dt><i>effectiveDate</i></dt> +<dd> +date the certificate becomes effective (QDateTime) +</dd><dt><i>expiryDate</i></dt> +<dd> +date the certificate expires (QDateTime) +</dd> +</dl><dl> +<dt>Returns:</dt> +<dd> +flag indicating the expiration status (boolean) +</dd> +</dl><a NAME="E5SslInfoWidget.__serialNumber" ID="E5SslInfoWidget.__serialNumber"></a> +<h4>E5SslInfoWidget.__serialNumber</h4> +<b>__serialNumber</b>(<i>cert</i>) +<p> + Private slot to format the certificate serial number. +</p><dl> +<dt><i>cert</i></dt> +<dd> +reference to the SSL certificate (QSslCertificate) +</dd> +</dl><dl> +<dt>Returns:</dt> +<dd> +formated serial number (string) +</dd> +</dl><a NAME="E5SslInfoWidget.showCertificate" ID="E5SslInfoWidget.showCertificate"></a> +<h4>E5SslInfoWidget.showCertificate</h4> +<b>showCertificate</b>(<i>certificate</i>) +<p> + Public method to show the SSL certificate information. +</p><dl> +<dt><i>certificate</i></dt> +<dd> +reference to the SSL certificate (QSslCertificate) +</dd> +</dl> +<div align="right"><a href="#top">Up</a></div> +<hr /> +</body></html> \ No newline at end of file
--- a/Documentation/Source/eric5.Helpviewer.SslCertificatesDialog.html Fri Jan 18 19:31:43 2013 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,275 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' -'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'> -<html><head> -<title>eric5.Helpviewer.SslCertificatesDialog</title> -<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>eric5.Helpviewer.SslCertificatesDialog</h1> -<p> -Module implementing a dialog to show and edit all certificates. -</p> -<h3>Global Attributes</h3> -<table> -<tr><td>None</td></tr> -</table> -<h3>Classes</h3> -<table> -<tr> -<td><a href="#SslCertificatesDialog">SslCertificatesDialog</a></td> -<td>Class implementing a dialog to show and edit all certificates.</td> -</tr> -</table> -<h3>Functions</h3> -<table> -<tr><td>None</td></tr> -</table> -<hr /><hr /> -<a NAME="SslCertificatesDialog" ID="SslCertificatesDialog"></a> -<h2>SslCertificatesDialog</h2> -<p> - Class implementing a dialog to show and edit all certificates. -</p> -<h3>Derived from</h3> -QDialog, Ui_SslCertificatesDialog -<h3>Class Attributes</h3> -<table> -<tr><td>CertRole</td></tr> -</table> -<h3>Class Methods</h3> -<table> -<tr><td>None</td></tr> -</table> -<h3>Methods</h3> -<table> -<tr> -<td><a href="#SslCertificatesDialog.__init__">SslCertificatesDialog</a></td> -<td>Constructor</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.__createCaCertificateEntry">__createCaCertificateEntry</a></td> -<td>Private method to create a CA certificate entry.</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.__createServerCertificateEntry">__createServerCertificateEntry</a></td> -<td>Private method to create a server certificate entry.</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.__exportCertificate">__exportCertificate</a></td> -<td>Private slot to export a certificate.</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.__getSystemCaCertificates">__getSystemCaCertificates</a></td> -<td>Private method to get the list of system certificates.</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.__importCertificate">__importCertificate</a></td> -<td>Private method to read a certificate.</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.__populateCaCertificatesTree">__populateCaCertificatesTree</a></td> -<td>Private slot to populate the CA certificates tree.</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.__populateServerCertificatesTree">__populateServerCertificatesTree</a></td> -<td>Private slot to populate the server certificates tree.</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.__updateDefaultConfiguration">__updateDefaultConfiguration</a></td> -<td>Private method to update the default SSL configuration.</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.on_caCertificatesTree_currentItemChanged">on_caCertificatesTree_currentItemChanged</a></td> -<td>Private slot handling a change of the current item in the CA certificates list.</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.on_caDeleteButton_clicked">on_caDeleteButton_clicked</a></td> -<td>Private slot to delete the selected CA certificate.</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.on_caExportButton_clicked">on_caExportButton_clicked</a></td> -<td>Private slot to export the selected CA certificate.</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.on_caImportButton_clicked">on_caImportButton_clicked</a></td> -<td>Private slot to import server certificates.</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.on_caViewButton_clicked">on_caViewButton_clicked</a></td> -<td>Private slot to show data of the selected CA certificate.</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.on_serversCertificatesTree_currentItemChanged">on_serversCertificatesTree_currentItemChanged</a></td> -<td>Private slot handling a change of the current item in the server certificates list.</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.on_serversDeleteButton_clicked">on_serversDeleteButton_clicked</a></td> -<td>Private slot to delete the selected server certificate.</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.on_serversExportButton_clicked">on_serversExportButton_clicked</a></td> -<td>Private slot to export the selected server certificate.</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.on_serversImportButton_clicked">on_serversImportButton_clicked</a></td> -<td>Private slot to import server certificates.</td> -</tr><tr> -<td><a href="#SslCertificatesDialog.on_serversViewButton_clicked">on_serversViewButton_clicked</a></td> -<td>Private slot to show data of the selected server certificate.</td> -</tr> -</table> -<h3>Static Methods</h3> -<table> -<tr><td>None</td></tr> -</table> -<a NAME="SslCertificatesDialog.__init__" ID="SslCertificatesDialog.__init__"></a> -<h4>SslCertificatesDialog (Constructor)</h4> -<b>SslCertificatesDialog</b>(<i>parent=None</i>) -<p> - Constructor -</p><dl> -<dt><i>parent</i></dt> -<dd> -reference to the parent widget (QWidget) -</dd> -</dl><a NAME="SslCertificatesDialog.__createCaCertificateEntry" ID="SslCertificatesDialog.__createCaCertificateEntry"></a> -<h4>SslCertificatesDialog.__createCaCertificateEntry</h4> -<b>__createCaCertificateEntry</b>(<i>cert</i>) -<p> - Private method to create a CA certificate entry. -</p><dl> -<dt><i>cert</i></dt> -<dd> -certificate to insert (QSslCertificate) -</dd> -</dl><a NAME="SslCertificatesDialog.__createServerCertificateEntry" ID="SslCertificatesDialog.__createServerCertificateEntry"></a> -<h4>SslCertificatesDialog.__createServerCertificateEntry</h4> -<b>__createServerCertificateEntry</b>(<i>server, cert</i>) -<p> - Private method to create a server certificate entry. -</p><dl> -<dt><i>server</i></dt> -<dd> -server name of the certificate (string) -</dd><dt><i>cert</i></dt> -<dd> -certificate to insert (QSslCertificate) -</dd> -</dl><a NAME="SslCertificatesDialog.__exportCertificate" ID="SslCertificatesDialog.__exportCertificate"></a> -<h4>SslCertificatesDialog.__exportCertificate</h4> -<b>__exportCertificate</b>(<i>name, cert</i>) -<p> - Private slot to export a certificate. -</p><dl> -<dt><i>name</i></dt> -<dd> -default file name without extension (string) -</dd><dt><i>cert</i></dt> -<dd> -certificate to be exported (QSslCertificate) -</dd> -</dl><a NAME="SslCertificatesDialog.__getSystemCaCertificates" ID="SslCertificatesDialog.__getSystemCaCertificates"></a> -<h4>SslCertificatesDialog.__getSystemCaCertificates</h4> -<b>__getSystemCaCertificates</b>(<i></i>) -<p> - Private method to get the list of system certificates. -</p><dl> -<dt>Returns:</dt> -<dd> -list of system certificates (list of QSslCertificate) -</dd> -</dl><a NAME="SslCertificatesDialog.__importCertificate" ID="SslCertificatesDialog.__importCertificate"></a> -<h4>SslCertificatesDialog.__importCertificate</h4> -<b>__importCertificate</b>(<i></i>) -<p> - Private method to read a certificate. -</p><dl> -<dt>Returns:</dt> -<dd> -certificates read (list of QSslCertificate) -</dd> -</dl><a NAME="SslCertificatesDialog.__populateCaCertificatesTree" ID="SslCertificatesDialog.__populateCaCertificatesTree"></a> -<h4>SslCertificatesDialog.__populateCaCertificatesTree</h4> -<b>__populateCaCertificatesTree</b>(<i></i>) -<p> - Private slot to populate the CA certificates tree. -</p><a NAME="SslCertificatesDialog.__populateServerCertificatesTree" ID="SslCertificatesDialog.__populateServerCertificatesTree"></a> -<h4>SslCertificatesDialog.__populateServerCertificatesTree</h4> -<b>__populateServerCertificatesTree</b>(<i></i>) -<p> - Private slot to populate the server certificates tree. -</p><a NAME="SslCertificatesDialog.__updateDefaultConfiguration" ID="SslCertificatesDialog.__updateDefaultConfiguration"></a> -<h4>SslCertificatesDialog.__updateDefaultConfiguration</h4> -<b>__updateDefaultConfiguration</b>(<i></i>) -<p> - Private method to update the default SSL configuration. -</p><a NAME="SslCertificatesDialog.on_caCertificatesTree_currentItemChanged" ID="SslCertificatesDialog.on_caCertificatesTree_currentItemChanged"></a> -<h4>SslCertificatesDialog.on_caCertificatesTree_currentItemChanged</h4> -<b>on_caCertificatesTree_currentItemChanged</b>(<i>current, previous</i>) -<p> - Private slot handling a change of the current item - in the CA certificates list. -</p><dl> -<dt><i>current</i></dt> -<dd> -new current item (QTreeWidgetItem) -</dd><dt><i>previous</i></dt> -<dd> -previous current item (QTreeWidgetItem) -</dd> -</dl><a NAME="SslCertificatesDialog.on_caDeleteButton_clicked" ID="SslCertificatesDialog.on_caDeleteButton_clicked"></a> -<h4>SslCertificatesDialog.on_caDeleteButton_clicked</h4> -<b>on_caDeleteButton_clicked</b>(<i></i>) -<p> - Private slot to delete the selected CA certificate. -</p><a NAME="SslCertificatesDialog.on_caExportButton_clicked" ID="SslCertificatesDialog.on_caExportButton_clicked"></a> -<h4>SslCertificatesDialog.on_caExportButton_clicked</h4> -<b>on_caExportButton_clicked</b>(<i></i>) -<p> - Private slot to export the selected CA certificate. -</p><a NAME="SslCertificatesDialog.on_caImportButton_clicked" ID="SslCertificatesDialog.on_caImportButton_clicked"></a> -<h4>SslCertificatesDialog.on_caImportButton_clicked</h4> -<b>on_caImportButton_clicked</b>(<i></i>) -<p> - Private slot to import server certificates. -</p><a NAME="SslCertificatesDialog.on_caViewButton_clicked" ID="SslCertificatesDialog.on_caViewButton_clicked"></a> -<h4>SslCertificatesDialog.on_caViewButton_clicked</h4> -<b>on_caViewButton_clicked</b>(<i></i>) -<p> - Private slot to show data of the selected CA certificate. -</p><a NAME="SslCertificatesDialog.on_serversCertificatesTree_currentItemChanged" ID="SslCertificatesDialog.on_serversCertificatesTree_currentItemChanged"></a> -<h4>SslCertificatesDialog.on_serversCertificatesTree_currentItemChanged</h4> -<b>on_serversCertificatesTree_currentItemChanged</b>(<i>current, previous</i>) -<p> - Private slot handling a change of the current item in the - server certificates list. -</p><dl> -<dt><i>current</i></dt> -<dd> -new current item (QTreeWidgetItem) -</dd><dt><i>previous</i></dt> -<dd> -previous current item (QTreeWidgetItem) -</dd> -</dl><a NAME="SslCertificatesDialog.on_serversDeleteButton_clicked" ID="SslCertificatesDialog.on_serversDeleteButton_clicked"></a> -<h4>SslCertificatesDialog.on_serversDeleteButton_clicked</h4> -<b>on_serversDeleteButton_clicked</b>(<i></i>) -<p> - Private slot to delete the selected server certificate. -</p><a NAME="SslCertificatesDialog.on_serversExportButton_clicked" ID="SslCertificatesDialog.on_serversExportButton_clicked"></a> -<h4>SslCertificatesDialog.on_serversExportButton_clicked</h4> -<b>on_serversExportButton_clicked</b>(<i></i>) -<p> - Private slot to export the selected server certificate. -</p><a NAME="SslCertificatesDialog.on_serversImportButton_clicked" ID="SslCertificatesDialog.on_serversImportButton_clicked"></a> -<h4>SslCertificatesDialog.on_serversImportButton_clicked</h4> -<b>on_serversImportButton_clicked</b>(<i></i>) -<p> - Private slot to import server certificates. -</p><a NAME="SslCertificatesDialog.on_serversViewButton_clicked" ID="SslCertificatesDialog.on_serversViewButton_clicked"></a> -<h4>SslCertificatesDialog.on_serversViewButton_clicked</h4> -<b>on_serversViewButton_clicked</b>(<i></i>) -<p> - Private slot to show data of the selected server certificate. -</p> -<div align="right"><a href="#top">Up</a></div> -<hr /> -</body></html> \ No newline at end of file
--- a/Documentation/Source/eric5.Helpviewer.SslInfoDialog.html Fri Jan 18 19:31:43 2013 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,85 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' -'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'> -<html><head> -<title>eric5.Helpviewer.SslInfoDialog</title> -<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>eric5.Helpviewer.SslInfoDialog</h1> -<p> -Module implementing a dialog to show SSL certificate infos. -</p> -<h3>Global Attributes</h3> -<table> -<tr><td>None</td></tr> -</table> -<h3>Classes</h3> -<table> -<tr> -<td><a href="#SslInfoDialog">SslInfoDialog</a></td> -<td>Class implementing a dialog to show SSL certificate infos.</td> -</tr> -</table> -<h3>Functions</h3> -<table> -<tr><td>None</td></tr> -</table> -<hr /><hr /> -<a NAME="SslInfoDialog" ID="SslInfoDialog"></a> -<h2>SslInfoDialog</h2> -<p> - Class implementing a dialog to show SSL certificate infos. -</p> -<h3>Derived from</h3> -QDialog, Ui_SslInfoDialog -<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="#SslInfoDialog.__init__">SslInfoDialog</a></td> -<td>Constructor</td> -</tr> -</table> -<h3>Static Methods</h3> -<table> -<tr><td>None</td></tr> -</table> -<a NAME="SslInfoDialog.__init__" ID="SslInfoDialog.__init__"></a> -<h4>SslInfoDialog (Constructor)</h4> -<b>SslInfoDialog</b>(<i>certificate, parent=None</i>) -<p> - Constructor -</p><dl> -<dt><i>certificate</i></dt> -<dd> -reference to the SSL certificate (QSslCertificate) -</dd><dt><i>parent</i></dt> -<dd> -reference to the parent widget (QWidget) -</dd> -</dl> -<div align="right"><a href="#top">Up</a></div> -<hr /> -</body></html> \ No newline at end of file
--- a/Documentation/Source/eric5.Helpviewer.SslInfoWidget.html Fri Jan 18 19:31:43 2013 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,170 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' -'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'> -<html><head> -<title>eric5.Helpviewer.SslInfoWidget</title> -<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>eric5.Helpviewer.SslInfoWidget</h1> -<p> -Module implementing a widget to show SSL certificate infos. -</p> -<h3>Global Attributes</h3> -<table> -<tr><td>None</td></tr> -</table> -<h3>Classes</h3> -<table> -<tr> -<td><a href="#SslInfoWidget">SslInfoWidget</a></td> -<td>Class implementing a widget to show SSL certificate infos.</td> -</tr> -</table> -<h3>Functions</h3> -<table> -<tr><td>None</td></tr> -</table> -<hr /><hr /> -<a NAME="SslInfoWidget" ID="SslInfoWidget"></a> -<h2>SslInfoWidget</h2> -<p> - Class implementing a widget to show SSL certificate infos. -</p> -<h3>Derived from</h3> -QWidget, Ui_SslInfoWidget -<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="#SslInfoWidget.__init__">SslInfoWidget</a></td> -<td>Constructor</td> -</tr><tr> -<td><a href="#SslInfoWidget.__certificateString">__certificateString</a></td> -<td>Private method to prepare some text for display.</td> -</tr><tr> -<td><a href="#SslInfoWidget.__formatHexString">__formatHexString</a></td> -<td>Private method to format a hex string for display.</td> -</tr><tr> -<td><a href="#SslInfoWidget.__hasExpired">__hasExpired</a></td> -<td>Private method to check for a certificate expiration.</td> -</tr><tr> -<td><a href="#SslInfoWidget.__serialNumber">__serialNumber</a></td> -<td>Private slot to format the certificate serial number.</td> -</tr><tr> -<td><a href="#SslInfoWidget.showCertificate">showCertificate</a></td> -<td>Public method to show the SSL certificate information.</td> -</tr> -</table> -<h3>Static Methods</h3> -<table> -<tr><td>None</td></tr> -</table> -<a NAME="SslInfoWidget.__init__" ID="SslInfoWidget.__init__"></a> -<h4>SslInfoWidget (Constructor)</h4> -<b>SslInfoWidget</b>(<i>parent=None</i>) -<p> - Constructor -</p><dl> -<dt><i>parent</i></dt> -<dd> -reference to the parent widget (QWidget) -</dd> -</dl><a NAME="SslInfoWidget.__certificateString" ID="SslInfoWidget.__certificateString"></a> -<h4>SslInfoWidget.__certificateString</h4> -<b>__certificateString</b>(<i>txt</i>) -<p> - Private method to prepare some text for display. -</p><dl> -<dt><i>txt</i></dt> -<dd> -text to be displayed (string) -</dd> -</dl><dl> -<dt>Returns:</dt> -<dd> -prepared text (string) -</dd> -</dl><a NAME="SslInfoWidget.__formatHexString" ID="SslInfoWidget.__formatHexString"></a> -<h4>SslInfoWidget.__formatHexString</h4> -<b>__formatHexString</b>(<i>hexString</i>) -<p> - Private method to format a hex string for display. -</p><dl> -<dt><i>hexString</i></dt> -<dd> -hex string to be formatted (string) -</dd> -</dl><dl> -<dt>Returns:</dt> -<dd> -formatted string (string) -</dd> -</dl><a NAME="SslInfoWidget.__hasExpired" ID="SslInfoWidget.__hasExpired"></a> -<h4>SslInfoWidget.__hasExpired</h4> -<b>__hasExpired</b>(<i>effectiveDate, expiryDate</i>) -<p> - Private method to check for a certificate expiration. -</p><dl> -<dt><i>effectiveDate</i></dt> -<dd> -date the certificate becomes effective (QDateTime) -</dd><dt><i>expiryDate</i></dt> -<dd> -date the certificate expires (QDateTime) -</dd> -</dl><dl> -<dt>Returns:</dt> -<dd> -flag indicating the expiration status (boolean) -</dd> -</dl><a NAME="SslInfoWidget.__serialNumber" ID="SslInfoWidget.__serialNumber"></a> -<h4>SslInfoWidget.__serialNumber</h4> -<b>__serialNumber</b>(<i>cert</i>) -<p> - Private slot to format the certificate serial number. -</p><dl> -<dt><i>cert</i></dt> -<dd> -reference to the SSL certificate (QSslCertificate) -</dd> -</dl><dl> -<dt>Returns:</dt> -<dd> -formated serial number (string) -</dd> -</dl><a NAME="SslInfoWidget.showCertificate" ID="SslInfoWidget.showCertificate"></a> -<h4>SslInfoWidget.showCertificate</h4> -<b>showCertificate</b>(<i>certificate</i>) -<p> - Public method to show the SSL certificate information. -</p><dl> -<dt><i>certificate</i></dt> -<dd> -reference to the SSL certificate (QSslCertificate) -</dd> -</dl> -<div align="right"><a href="#top">Up</a></div> -<hr /> -</body></html> \ No newline at end of file
--- a/Documentation/Source/eric5.UI.UserInterface.html Fri Jan 18 19:31:43 2013 +0100 +++ b/Documentation/Source/eric5.UI.UserInterface.html Fri Jan 18 19:50:13 2013 +0100 @@ -440,6 +440,9 @@ <td><a href="#UserInterface.__showAvailableVersionInfos">__showAvailableVersionInfos</a></td> <td>Private method to show the versions available for download.</td> </tr><tr> +<td><a href="#UserInterface.__showCertificatesDialog">__showCertificatesDialog</a></td> +<td>Private slot to show the certificates management dialog.</td> +</tr><tr> <td><a href="#UserInterface.__showEricDoc">__showEricDoc</a></td> <td>Private slot to show the Eric documentation.</td> </tr><tr> @@ -1397,7 +1400,12 @@ <dd> contents of the downloaded versions file (list of strings) </dd> -</dl><a NAME="UserInterface.__showEricDoc" ID="UserInterface.__showEricDoc"></a> +</dl><a NAME="UserInterface.__showCertificatesDialog" ID="UserInterface.__showCertificatesDialog"></a> +<h4>UserInterface.__showCertificatesDialog</h4> +<b>__showCertificatesDialog</b>(<i></i>) +<p> + Private slot to show the certificates management dialog. +</p><a NAME="UserInterface.__showEricDoc" ID="UserInterface.__showEricDoc"></a> <h4>UserInterface.__showEricDoc</h4> <b>__showEricDoc</b>(<i></i>) <p>
--- a/Documentation/Source/index-eric5.E5Network.html Fri Jan 18 19:31:43 2013 +0100 +++ b/Documentation/Source/index-eric5.E5Network.html Fri Jan 18 19:50:13 2013 +0100 @@ -41,9 +41,18 @@ <td><a href="eric5.E5Network.E5NetworkProxyFactory.html">E5NetworkProxyFactory</a></td> <td>Module implementing a network proxy factory.</td> </tr><tr> +<td><a href="eric5.E5Network.E5SslCertificatesDialog.html">E5SslCertificatesDialog</a></td> +<td>Module implementing a dialog to show and edit all certificates.</td> +</tr><tr> <td><a href="eric5.E5Network.E5SslErrorHandler.html">E5SslErrorHandler</a></td> <td>Module implementing a SSL error handler.</td> </tr><tr> +<td><a href="eric5.E5Network.E5SslInfoDialog.html">E5SslInfoDialog</a></td> +<td>Module implementing a dialog to show SSL certificate infos.</td> +</tr><tr> +<td><a href="eric5.E5Network.E5SslInfoWidget.html">E5SslInfoWidget</a></td> +<td>Module implementing a widget to show SSL certificate infos.</td> +</tr><tr> <td><a href="eric5.E5Network.E5UrlInfo.html">E5UrlInfo</a></td> <td>Module implementing a class replacing QUrlInfo.</td> </tr>
--- a/Documentation/Source/index-eric5.Helpviewer.html Fri Jan 18 19:31:43 2013 +0100 +++ b/Documentation/Source/index-eric5.Helpviewer.html Fri Jan 18 19:50:13 2013 +0100 @@ -155,15 +155,6 @@ <td><a href="eric5.Helpviewer.SearchWidget.html">SearchWidget</a></td> <td>Module implementing the search bar for the web browser.</td> </tr><tr> -<td><a href="eric5.Helpviewer.SslCertificatesDialog.html">SslCertificatesDialog</a></td> -<td>Module implementing a dialog to show and edit all certificates.</td> -</tr><tr> -<td><a href="eric5.Helpviewer.SslInfoDialog.html">SslInfoDialog</a></td> -<td>Module implementing a dialog to show SSL certificate infos.</td> -</tr><tr> -<td><a href="eric5.Helpviewer.SslInfoWidget.html">SslInfoWidget</a></td> -<td>Module implementing a widget to show SSL certificate infos.</td> -</tr><tr> <td><a href="eric5.Helpviewer.VirusTotalApi.html">VirusTotalApi</a></td> <td>Module implementing the <a href="http://www.virustotal.com">VirusTotal</a> API class.</td> </tr>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/E5Network/E5SslCertificatesDialog.py Fri Jan 18 19:50:13 2013 +0100 @@ -0,0 +1,470 @@ +# -*- coding: utf-8 -*- + +# Copyright (c) 2010 - 2013 Detlev Offenbach <detlev@die-offenbachs.de> +# + +""" +Module implementing a dialog to show and edit all certificates. +""" + +from PyQt4.QtCore import pyqtSlot, Qt, QByteArray, QFile, QFileInfo, QIODevice, \ + qVersion +from PyQt4.QtGui import QDialog, QTreeWidgetItem +try: + from PyQt4.QtNetwork import QSslCertificate, QSslSocket, QSslConfiguration, QSsl +except ImportError: + pass + +from E5Gui import E5MessageBox, E5FileDialog + +from .Ui_E5SslCertificatesDialog import Ui_E5SslCertificatesDialog + +try: + from E5Network.E5SslInfoDialog import E5SslInfoDialog +except ImportError: + pass + +import Preferences +import Utilities + + +class E5SslCertificatesDialog(QDialog, Ui_E5SslCertificatesDialog): + """ + Class implementing a dialog to show and edit all certificates. + """ + CertRole = Qt.UserRole + 1 + + def __init__(self, parent=None): + """ + Constructor + + @param parent reference to the parent widget (QWidget) + """ + super().__init__(parent) + self.setupUi(self) + + self.__populateServerCertificatesTree() + self.__populateCaCertificatesTree() + + def __populateServerCertificatesTree(self): + """ + Private slot to populate the server certificates tree. + """ + certificateDict = Preferences.toDict( + Preferences.Prefs.settings.value("Ssl/CaCertificatesDict")) + for server in certificateDict: + for cert in QSslCertificate.fromData(certificateDict[server]): + self.__createServerCertificateEntry(server, cert) + + self.serversCertificatesTree.expandAll() + for i in range(self.serversCertificatesTree.columnCount()): + self.serversCertificatesTree.resizeColumnToContents(i) + + def __createServerCertificateEntry(self, server, cert): + """ + Private method to create a server certificate entry. + + @param server server name of the certificate (string) + @param cert certificate to insert (QSslCertificate) + """ + # step 1: extract the info to be shown + if qVersion() >= "5.0.0": + organisation = Utilities.decodeString( + ", ".join(cert.subjectInfo(QSslCertificate.Organization))) + commonName = Utilities.decodeString( + ", ".join(cert.subjectInfo(QSslCertificate.CommonName))) + else: + organisation = Utilities.decodeString( + cert.subjectInfo(QSslCertificate.Organization)) + commonName = Utilities.decodeString( + cert.subjectInfo(QSslCertificate.CommonName)) + if organisation is None or organisation == "": + organisation = self.trUtf8("(Unknown)") + if commonName is None or commonName == "": + commonName = self.trUtf8("(Unknown common name)") + expiryDate = cert.expiryDate().toString("yyyy-MM-dd") + + # step 2: create the entry + items = self.serversCertificatesTree.findItems(organisation, + Qt.MatchFixedString | Qt.MatchCaseSensitive) + if len(items) == 0: + parent = QTreeWidgetItem(self.serversCertificatesTree, [organisation]) + else: + parent = items[0] + + itm = QTreeWidgetItem(parent, [commonName, server, expiryDate]) + itm.setData(0, self.CertRole, cert) + + @pyqtSlot(QTreeWidgetItem, QTreeWidgetItem) + def on_serversCertificatesTree_currentItemChanged(self, current, previous): + """ + Private slot handling a change of the current item in the + server certificates list. + + @param current new current item (QTreeWidgetItem) + @param previous previous current item (QTreeWidgetItem) + """ + enable = current is not None and current.parent() is not None + self.serversViewButton.setEnabled(enable) + self.serversDeleteButton.setEnabled(enable) + self.serversExportButton.setEnabled(enable) + + @pyqtSlot() + def on_serversViewButton_clicked(self): + """ + Private slot to show data of the selected server certificate. + """ + cert = self.serversCertificatesTree.currentItem().data(0, self.CertRole) + dlg = E5SslInfoDialog(cert, self) + dlg.exec_() + + @pyqtSlot() + def on_serversDeleteButton_clicked(self): + """ + Private slot to delete the selected server certificate. + """ + itm = self.serversCertificatesTree.currentItem() + res = E5MessageBox.yesNo(self, + self.trUtf8("Delete Server Certificate"), + self.trUtf8("""<p>Shall the server certificate really be deleted?</p>""" + """<p>{0}</p>""" + """<p>If the server certificate is deleted, the normal security""" + """ checks will be reinstantiated and the server has to""" + """ present a valid certificate.</p>""")\ + .format(itm.text(0))) + if res: + server = itm.text(1) + cert = self.serversCertificatesTree.currentItem().data(0, self.CertRole) + + # delete the selected entry and it's parent entry, if it was the only one + parent = itm.parent() + parent.takeChild(parent.indexOfChild(itm)) + if parent.childCount() == 0: + self.serversCertificatesTree.takeTopLevelItem( + self.serversCertificatesTree.indexOfTopLevelItem(parent)) + + # delete the certificate from the user certificate store + certificateDict = Preferences.toDict( + Preferences.Prefs.settings.value("Ssl/CaCertificatesDict")) + if server in certificateDict: + certs = QSslCertificate.fromData(certificateDict[server]) + if cert in certs: + certs.remove(cert) + if certs: + pems = QByteArray() + for cert in certs: + pems.append(cert.toPem() + '\n') + certificateDict[server] = pems + else: + del certificateDict[server] + Preferences.Prefs.settings.setValue("Ssl/CaCertificatesDict", + certificateDict) + + # delete the certificate from the default certificates + self.__updateDefaultConfiguration() + + @pyqtSlot() + def on_serversImportButton_clicked(self): + """ + Private slot to import server certificates. + """ + certs = self.__importCertificate() + if certs: + server = "*" + certificateDict = Preferences.toDict( + Preferences.Prefs.settings.value("Ssl/CaCertificatesDict")) + if server in certificateDict: + sCerts = QSslCertificate.fromData(certificateDict[server]) + else: + sCerts = [] + + pems = QByteArray() + for cert in certs: + if cert in sCerts: + if qVersion() >= "5.0.0": + commonStr = ", ".join( + cert.subjectInfo(QSslCertificate.CommonName)) + else: + commonStr = cert.subjectInfo(QSslCertificate.CommonName) + E5MessageBox.warning(self, + self.trUtf8("Import Certificate"), + self.trUtf8("""<p>The certificate <b>{0}</b> already exists.""" + """ Skipping.</p>""") + .format(Utilities.decodeString(commonStr))) + else: + pems.append(cert.toPem() + '\n') + if server not in certificateDict: + certificateDict[server] = QByteArray() + certificateDict[server].append(pems) + Preferences.Prefs.settings.setValue("Ssl/CaCertificatesDict", + certificateDict) + + self.serversCertificatesTree.clear() + self.__populateServerCertificatesTree() + + self.__updateDefaultConfiguration() + + @pyqtSlot() + def on_serversExportButton_clicked(self): + """ + Private slot to export the selected server certificate. + """ + cert = self.serversCertificatesTree.currentItem().data(0, self.CertRole) + fname = self.serversCertificatesTree.currentItem().text(0)\ + .replace(" ", "").replace("\t", "") + self.__exportCertificate(fname, cert) + + def __updateDefaultConfiguration(self): + """ + Private method to update the default SSL configuration. + """ + caList = self.__getSystemCaCertificates() + certificateDict = Preferences.toDict( + Preferences.Prefs.settings.value("Ssl/CaCertificatesDict")) + for server in certificateDict: + for cert in QSslCertificate.fromData(certificateDict[server]): + if cert not in caList: + caList.append(cert) + sslCfg = QSslConfiguration.defaultConfiguration() + sslCfg.setCaCertificates(caList) + QSslConfiguration.setDefaultConfiguration(sslCfg) + + def __getSystemCaCertificates(self): + """ + Private method to get the list of system certificates. + + @return list of system certificates (list of QSslCertificate) + """ + caList = QSslCertificate.fromData(Preferences.toByteArray( + Preferences.Prefs.settings.value("Help/SystemCertificates"))) + if not caList: + caList = QSslSocket.systemCaCertificates() + return caList + + def __populateCaCertificatesTree(self): + """ + Private slot to populate the CA certificates tree. + """ + for cert in self.__getSystemCaCertificates(): + self.__createCaCertificateEntry(cert) + + self.caCertificatesTree.expandAll() + for i in range(self.caCertificatesTree.columnCount()): + self.caCertificatesTree.resizeColumnToContents(i) + self.caCertificatesTree.sortItems(0, Qt.AscendingOrder) + + def __createCaCertificateEntry(self, cert): + """ + Private method to create a CA certificate entry. + + @param cert certificate to insert (QSslCertificate) + """ + # step 1: extract the info to be shown + if qVersion() >= "5.0.0": + organisation = Utilities.decodeString( + ", ".join(cert.subjectInfo(QSslCertificate.Organization))) + commonName = Utilities.decodeString( + ", ".join(cert.subjectInfo(QSslCertificate.CommonName))) + else: + organisation = Utilities.decodeString( + cert.subjectInfo(QSslCertificate.Organization)) + commonName = Utilities.decodeString( + cert.subjectInfo(QSslCertificate.CommonName)) + if organisation is None or organisation == "": + organisation = self.trUtf8("(Unknown)") + if commonName is None or commonName == "": + commonName = self.trUtf8("(Unknown common name)") + expiryDate = cert.expiryDate().toString("yyyy-MM-dd") + + # step 2: create the entry + items = self.caCertificatesTree.findItems(organisation, + Qt.MatchFixedString | Qt.MatchCaseSensitive) + if len(items) == 0: + parent = QTreeWidgetItem(self.caCertificatesTree, [organisation]) + else: + parent = items[0] + + itm = QTreeWidgetItem(parent, [commonName, expiryDate]) + itm.setData(0, self.CertRole, cert) + + @pyqtSlot(QTreeWidgetItem, QTreeWidgetItem) + def on_caCertificatesTree_currentItemChanged(self, current, previous): + """ + Private slot handling a change of the current item + in the CA certificates list. + + @param current new current item (QTreeWidgetItem) + @param previous previous current item (QTreeWidgetItem) + """ + enable = current is not None and current.parent() is not None + self.caViewButton.setEnabled(enable) + self.caDeleteButton.setEnabled(enable) + self.caExportButton.setEnabled(enable) + + @pyqtSlot() + def on_caViewButton_clicked(self): + """ + Private slot to show data of the selected CA certificate. + """ + cert = self.caCertificatesTree.currentItem().data(0, self.CertRole) + dlg = E5SslInfoDialog(cert, self) + dlg.exec_() + + @pyqtSlot() + def on_caDeleteButton_clicked(self): + """ + Private slot to delete the selected CA certificate. + """ + itm = self.caCertificatesTree.currentItem() + res = E5MessageBox.yesNo(self, + self.trUtf8("Delete CA Certificate"), + self.trUtf8("""<p>Shall the CA certificate really be deleted?</p>""" + """<p>{0}</p>""" + """<p>If the CA certificate is deleted, the browser""" + """ will not trust any certificate issued by this CA.</p>""")\ + .format(itm.text(0))) + if res: + cert = self.caCertificatesTree.currentItem().data(0, self.CertRole) + + # delete the selected entry and it's parent entry, if it was the only one + parent = itm.parent() + parent.takeChild(parent.indexOfChild(itm)) + if parent.childCount() == 0: + self.caCertificatesTree.takeTopLevelItem( + self.caCertificatesTree.indexOfTopLevelItem(parent)) + + # delete the certificate from the CA certificate store + caCerts = self.__getSystemCaCertificates() + if cert in caCerts: + caCerts.remove(cert) + pems = QByteArray() + for cert in caCerts: + pems.append(cert.toPem() + '\n') + Preferences.Prefs.settings.setValue("Help/SystemCertificates", pems) + + # delete the certificate from the default certificates + self.__updateDefaultConfiguration() + + @pyqtSlot() + def on_caImportButton_clicked(self): + """ + Private slot to import server certificates. + """ + certs = self.__importCertificate() + if certs: + caCerts = self.__getSystemCaCertificates() + for cert in certs: + if cert in caCerts: + if qVersion() >= "5.0.0": + commonStr = ", ".join( + cert.subjectInfo(QSslCertificate.CommonName)) + else: + commonStr = cert.subjectInfo(QSslCertificate.CommonName) + E5MessageBox.warning(self, + self.trUtf8("Import Certificate"), + self.trUtf8("""<p>The certificate <b>{0}</b> already exists.""" + """ Skipping.</p>""") + .format(Utilities.decodeString(commonStr))) + else: + caCerts.append(cert) + + pems = QByteArray() + for cert in caCerts: + pems.append(cert.toPem() + '\n') + Preferences.Prefs.settings.setValue("Help/SystemCertificates", pems) + + self.caCertificatesTree.clear() + self.__populateCaCertificatesTree() + + self.__updateDefaultConfiguration() + + @pyqtSlot() + def on_caExportButton_clicked(self): + """ + Private slot to export the selected CA certificate. + """ + cert = self.caCertificatesTree.currentItem().data(0, self.CertRole) + fname = self.caCertificatesTree.currentItem().text(0)\ + .replace(" ", "").replace("\t", "") + self.__exportCertificate(fname, cert) + + def __exportCertificate(self, name, cert): + """ + Private slot to export a certificate. + + @param name default file name without extension (string) + @param cert certificate to be exported (QSslCertificate) + """ + if cert is not None: + fname, selectedFilter = E5FileDialog.getSaveFileNameAndFilter( + self, + self.trUtf8("Export Certificate"), + name, + self.trUtf8("Certificate File (PEM) (*.pem);;" + "Certificate File (DER) (*.der)"), + None, + E5FileDialog.Options(E5FileDialog.DontConfirmOverwrite)) + + if fname: + ext = QFileInfo(fname).suffix() + if not ext or ext not in ["pem", "der"]: + ex = selectedFilter.split("(*")[1].split(")")[0] + if ex: + fname += ex + if QFileInfo(fname).exists(): + res = E5MessageBox.yesNo(self, + self.trUtf8("Export Certificate"), + self.trUtf8("<p>The file <b>{0}</b> already exists." + " Overwrite it?</p>").format(fname), + icon=E5MessageBox.Warning) + if not res: + return + + f = QFile(fname) + if not f.open(QIODevice.WriteOnly): + E5MessageBox.critical(self, + self.trUtf8("Export Certificate"), + self.trUtf8("""<p>The certificate could not be written to file""" + """ <b>{0}</b></p><p>Error: {1}</p>""") + .format(fname, f.errorString())) + return + + if fname.endswith(".pem"): + crt = cert.toPem() + else: + crt = cert.toDer() + f.write(crt) + f.close() + + def __importCertificate(self): + """ + Private method to read a certificate. + + @return certificates read (list of QSslCertificate) + """ + fname = E5FileDialog.getOpenFileName( + self, + self.trUtf8("Import Certificate"), + "", + self.trUtf8("Certificate Files (*.pem *.crt *.der *.cer *.ca);;" + "All Files (*)")) + + if fname: + f = QFile(fname) + if not f.open(QIODevice.ReadOnly): + E5MessageBox.critical(self, + self.trUtf8("Export Certificate"), + self.trUtf8("""<p>The certificate could not be read from file""" + """ <b>{0}</b></p><p>Error: {1}</p>""") + .format(fname, f.errorString())) + return [] + + crt = f.readAll() + f.close() + cert = QSslCertificate.fromData(crt, QSsl.Pem) + if not cert: + cert = QSslCertificate.fromData(crt, QSsl.Der) + + return cert + + return []
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/E5Network/E5SslCertificatesDialog.ui Fri Jan 18 19:50:13 2013 +0100 @@ -0,0 +1,281 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ui version="4.0"> + <class>E5SslCertificatesDialog</class> + <widget class="QDialog" name="E5SslCertificatesDialog"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>760</width> + <height>440</height> + </rect> + </property> + <property name="windowTitle"> + <string>SSL Certificate Manager</string> + </property> + <property name="sizeGripEnabled"> + <bool>true</bool> + </property> + <layout class="QVBoxLayout" name="verticalLayout"> + <item> + <widget class="QTabWidget" name="certificatesWidget"> + <property name="currentIndex"> + <number>0</number> + </property> + <widget class="QWidget" name="serversTab"> + <attribute name="title"> + <string>&Servers</string> + </attribute> + <layout class="QVBoxLayout" name="verticalLayout_2"> + <item> + <widget class="QLabel" name="label"> + <property name="text"> + <string>You have saved certificates identifying these servers:</string> + </property> + </widget> + </item> + <item> + <widget class="QTreeWidget" name="serversCertificatesTree"> + <column> + <property name="text"> + <string>Certificate name</string> + </property> + </column> + <column> + <property name="text"> + <string>Server</string> + </property> + </column> + <column> + <property name="text"> + <string>Expiry Date</string> + </property> + </column> + </widget> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout"> + <item> + <widget class="QPushButton" name="serversViewButton"> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="toolTip"> + <string>Press to view the selected certificate</string> + </property> + <property name="text"> + <string>&View...</string> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="serversImportButton"> + <property name="toolTip"> + <string>Press to import a certificate</string> + </property> + <property name="text"> + <string>&Import...</string> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="serversExportButton"> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="toolTip"> + <string>Press to export the selected certificate</string> + </property> + <property name="text"> + <string>&Export...</string> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="serversDeleteButton"> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="toolTip"> + <string>Press to delete the selected certificate</string> + </property> + <property name="text"> + <string>&Delete...</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> + </layout> + </widget> + <widget class="QWidget" name="caTab"> + <attribute name="title"> + <string>Certificate &Authorities</string> + </attribute> + <layout class="QVBoxLayout" name="verticalLayout_3"> + <item> + <widget class="QLabel" name="label_2"> + <property name="text"> + <string>You have saved certificates identifying these certification authorities:</string> + </property> + </widget> + </item> + <item> + <widget class="QTreeWidget" name="caCertificatesTree"> + <column> + <property name="text"> + <string>Certificate name</string> + </property> + </column> + <column> + <property name="text"> + <string>Expiry Date</string> + </property> + </column> + </widget> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_2"> + <item> + <widget class="QPushButton" name="caViewButton"> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="toolTip"> + <string>Press to view the selected certificate</string> + </property> + <property name="text"> + <string>&View...</string> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="caImportButton"> + <property name="toolTip"> + <string>Press to import a certificate</string> + </property> + <property name="text"> + <string>&Import...</string> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="caExportButton"> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="toolTip"> + <string>Press to export the selected certificate</string> + </property> + <property name="text"> + <string>&Export...</string> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="caDeleteButton"> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="toolTip"> + <string>Press to delete the selected certificate</string> + </property> + <property name="text"> + <string>&Delete...</string> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer_2"> + <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> + </layout> + </widget> + </widget> + </item> + <item> + <widget class="QDialogButtonBox" name="buttonBox"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="standardButtons"> + <set>QDialogButtonBox::Close</set> + </property> + </widget> + </item> + </layout> + </widget> + <tabstops> + <tabstop>certificatesWidget</tabstop> + <tabstop>serversCertificatesTree</tabstop> + <tabstop>serversViewButton</tabstop> + <tabstop>serversImportButton</tabstop> + <tabstop>serversExportButton</tabstop> + <tabstop>serversDeleteButton</tabstop> + <tabstop>caCertificatesTree</tabstop> + <tabstop>caViewButton</tabstop> + <tabstop>caImportButton</tabstop> + <tabstop>caExportButton</tabstop> + <tabstop>caDeleteButton</tabstop> + <tabstop>buttonBox</tabstop> + </tabstops> + <resources/> + <connections> + <connection> + <sender>buttonBox</sender> + <signal>accepted()</signal> + <receiver>E5SslCertificatesDialog</receiver> + <slot>accept()</slot> + <hints> + <hint type="sourcelabel"> + <x>248</x> + <y>254</y> + </hint> + <hint type="destinationlabel"> + <x>157</x> + <y>274</y> + </hint> + </hints> + </connection> + <connection> + <sender>buttonBox</sender> + <signal>rejected()</signal> + <receiver>E5SslCertificatesDialog</receiver> + <slot>reject()</slot> + <hints> + <hint type="sourcelabel"> + <x>316</x> + <y>260</y> + </hint> + <hint type="destinationlabel"> + <x>286</x> + <y>274</y> + </hint> + </hints> + </connection> + </connections> +</ui>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/E5Network/E5SslInfoDialog.py Fri Jan 18 19:50:13 2013 +0100 @@ -0,0 +1,29 @@ +# -*- coding: utf-8 -*- + +# Copyright (c) 2010 - 2013 Detlev Offenbach <detlev@die-offenbachs.de> +# + +""" +Module implementing a dialog to show SSL certificate infos. +""" + +from PyQt4.QtGui import QDialog + +from .Ui_E5SslInfoDialog import Ui_E5SslInfoDialog + + +class E5SslInfoDialog(QDialog, Ui_E5SslInfoDialog): + """ + Class implementing a dialog to show SSL certificate infos. + """ + def __init__(self, certificate, parent=None): + """ + Constructor + + @param certificate reference to the SSL certificate (QSslCertificate) + @param parent reference to the parent widget (QWidget) + """ + super().__init__(parent) + self.setupUi(self) + + self.sslWidget.showCertificate(certificate)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/E5Network/E5SslInfoDialog.ui Fri Jan 18 19:50:13 2013 +0100 @@ -0,0 +1,78 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ui version="4.0"> + <class>E5SslInfoDialog</class> + <widget class="QDialog" name="E5SslInfoDialog"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>556</width> + <height>486</height> + </rect> + </property> + <property name="windowTitle"> + <string>SSL Certificate Info</string> + </property> + <property name="sizeGripEnabled"> + <bool>true</bool> + </property> + <layout class="QVBoxLayout" name="verticalLayout"> + <item> + <widget class="E5SslInfoWidget" name="sslWidget" native="true"/> + </item> + <item> + <widget class="QDialogButtonBox" name="buttonBox"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="standardButtons"> + <set>QDialogButtonBox::Close</set> + </property> + </widget> + </item> + </layout> + </widget> + <customwidgets> + <customwidget> + <class>E5SslInfoWidget</class> + <extends>QWidget</extends> + <header>E5Network/E5SslInfoWidget.h</header> + <container>1</container> + </customwidget> + </customwidgets> + <resources/> + <connections> + <connection> + <sender>buttonBox</sender> + <signal>accepted()</signal> + <receiver>E5SslInfoDialog</receiver> + <slot>accept()</slot> + <hints> + <hint type="sourcelabel"> + <x>248</x> + <y>254</y> + </hint> + <hint type="destinationlabel"> + <x>157</x> + <y>274</y> + </hint> + </hints> + </connection> + <connection> + <sender>buttonBox</sender> + <signal>rejected()</signal> + <receiver>E5SslInfoDialog</receiver> + <slot>reject()</slot> + <hints> + <hint type="sourcelabel"> + <x>316</x> + <y>260</y> + </hint> + <hint type="destinationlabel"> + <x>286</x> + <y>274</y> + </hint> + </hints> + </connection> + </connections> +</ui>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/E5Network/E5SslInfoWidget.py Fri Jan 18 19:50:13 2013 +0100 @@ -0,0 +1,148 @@ +# -*- coding: utf-8 -*- + +# Copyright (c) 2010 - 2013 Detlev Offenbach <detlev@die-offenbachs.de> +# + +""" +Module implementing a widget to show SSL certificate infos. +""" + +from PyQt4.QtCore import QCryptographicHash, QDateTime, qVersion +from PyQt4.QtGui import QWidget +from PyQt4.QtNetwork import QSslCertificate + +from .Ui_E5SslInfoWidget import Ui_E5SslInfoWidget + +import Utilities + + +class E5SslInfoWidget(QWidget, Ui_E5SslInfoWidget): + """ + Class implementing a widget to show SSL certificate infos. + """ + def __init__(self, parent=None): + """ + Constructor + + @param parent reference to the parent widget (QWidget) + """ + super().__init__(parent) + self.setupUi(self) + + def showCertificate(self, certificate): + """ + Public method to show the SSL certificate information. + + @param certificate reference to the SSL certificate (QSslCertificate) + """ + self.blacklistedLabel.setVisible(False) + self.blacklistedLabel.setStyleSheet( + "QLabel { color : white; background-color : red; }") + self.expiredLabel.setVisible(False) + self.expiredLabel.setStyleSheet( + "QLabel { color : white; background-color : red; }") + + if qVersion() >= "5.0.0": + self.subjectCommonNameLabel.setText(self.__certificateString( + ", ".join(certificate.subjectInfo(QSslCertificate.CommonName)))) + self.subjectOrganizationLabel.setText(self.__certificateString( + ", ".join(certificate.subjectInfo(QSslCertificate.Organization)))) + self.subjectOrganizationalUnitLabel.setText(self.__certificateString( + ", ".join( + certificate.subjectInfo(QSslCertificate.OrganizationalUnitName)))) + self.issuerCommonNameLabel.setText(self.__certificateString( + ", ".join(certificate.issuerInfo(QSslCertificate.CommonName)))) + self.issuerOrganizationLabel.setText(self.__certificateString( + ", ".join(certificate.issuerInfo(QSslCertificate.Organization)))) + self.issuerOrganizationalUnitLabel.setText(self.__certificateString( + ", ".join(certificate.issuerInfo(QSslCertificate.OrganizationalUnitName)))) + else: + self.subjectCommonNameLabel.setText(self.__certificateString( + certificate.subjectInfo(QSslCertificate.CommonName))) + self.subjectOrganizationLabel.setText(self.__certificateString( + certificate.subjectInfo(QSslCertificate.Organization))) + self.subjectOrganizationalUnitLabel.setText(self.__certificateString( + certificate.subjectInfo(QSslCertificate.OrganizationalUnitName))) + self.issuerCommonNameLabel.setText(self.__certificateString( + certificate.issuerInfo(QSslCertificate.CommonName))) + self.issuerOrganizationLabel.setText(self.__certificateString( + certificate.issuerInfo(QSslCertificate.Organization))) + self.issuerOrganizationalUnitLabel.setText(self.__certificateString( + certificate.issuerInfo(QSslCertificate.OrganizationalUnitName))) + self.serialNumberLabel.setText(self.__serialNumber(certificate)) + self.effectiveLabel.setText( + certificate.effectiveDate().toString("yyyy-MM-dd")) + self.expiresLabel.setText( + certificate.expiryDate().toString("yyyy-MM-dd")) + self.sha1Label.setText(self.__formatHexString( + str(certificate.digest(QCryptographicHash.Sha1).toHex(), encoding="ascii"))) + self.md5Label.setText(self.__formatHexString( + str(certificate.digest(QCryptographicHash.Md5).toHex(), encoding="ascii"))) + + if (qVersion() >= "5.0.0" and certificate.isBlacklisted()) or \ + (qVersion() < "5.0.0" and not certificate.isValid()): + # something is wrong; indicate it to the user + if self.__hasExpired(certificate.effectiveDate(), certificate.expiryDate()): + self.expiredLabel.setVisible(True) + else: + self.blacklistedLabel.setVisible(True) + + def __certificateString(self, txt): + """ + Private method to prepare some text for display. + + @param txt text to be displayed (string) + @return prepared text (string) + """ + if txt is None or txt == "": + return self.trUtf8("<not part of the certificate>") + + return Utilities.decodeString(txt) + + def __serialNumber(self, cert): + """ + Private slot to format the certificate serial number. + + @param cert reference to the SSL certificate (QSslCertificate) + @return formated serial number (string) + """ + serial = cert.serialNumber() + if serial == "": + return self.trUtf8("<not part of the certificate>") + + if ':' in serial: + return str(serial, encoding="ascii").upper() + else: + hexString = hex(int(serial))[2:] + return self.__formatHexString(hexString) + + def __formatHexString(self, hexString): + """ + Private method to format a hex string for display. + + @param hexString hex string to be formatted (string) + @return formatted string (string) + """ + hexString = hexString.upper() + + if len(hexString) % 2 == 1: + hexString = '0' + hexString + + hexList = [] + while hexString: + hexList.append(hexString[:2]) + hexString = hexString[2:] + + return ':'.join(hexList) + + def __hasExpired(self, effectiveDate, expiryDate): + """ + Private method to check for a certificate expiration. + + @param effectiveDate date the certificate becomes effective (QDateTime) + @param expiryDate date the certificate expires (QDateTime) + @return flag indicating the expiration status (boolean) + """ + now = QDateTime.currentDateTime() + + return now < effectiveDate or now >= expiryDate
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/E5Network/E5SslInfoWidget.ui Fri Jan 18 19:50:13 2013 +0100 @@ -0,0 +1,280 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ui version="4.0"> + <class>E5SslInfoWidget</class> + <widget class="QWidget" name="E5SslInfoWidget"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>460</width> + <height>452</height> + </rect> + </property> + <layout class="QGridLayout" name="gridLayout"> + <item row="0" column="0" colspan="2"> + <widget class="QLabel" name="blacklistedLabel"> + <property name="text"> + <string>This certificated has been blacklisted.</string> + </property> + </widget> + </item> + <item row="1" column="0"> + <widget class="QLabel" name="label"> + <property name="text"> + <string><b>Issued for</b></string> + </property> + </widget> + </item> + <item row="2" column="0"> + <widget class="QLabel" name="label_2"> + <property name="text"> + <string>Common Name (CN)</string> + </property> + </widget> + </item> + <item row="2" column="1"> + <widget class="QLabel" name="subjectCommonNameLabel"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string/> + </property> + </widget> + </item> + <item row="3" column="0"> + <widget class="QLabel" name="label_3"> + <property name="text"> + <string>Organization (O)</string> + </property> + </widget> + </item> + <item row="3" column="1"> + <widget class="QLabel" name="subjectOrganizationLabel"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string/> + </property> + </widget> + </item> + <item row="4" column="0"> + <widget class="QLabel" name="label_4"> + <property name="text"> + <string>Organizational Unit (OU)</string> + </property> + </widget> + </item> + <item row="4" column="1"> + <widget class="QLabel" name="subjectOrganizationalUnitLabel"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string/> + </property> + </widget> + </item> + <item row="5" column="0"> + <widget class="QLabel" name="label_5"> + <property name="text"> + <string>Serialnumber</string> + </property> + </widget> + </item> + <item row="5" column="1"> + <widget class="QLabel" name="serialNumberLabel"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string/> + </property> + </widget> + </item> + <item row="6" column="0"> + <widget class="QLabel" name="label_6"> + <property name="text"> + <string><b>Issued by</b></string> + </property> + </widget> + </item> + <item row="7" column="0"> + <widget class="QLabel" name="label_9"> + <property name="text"> + <string>Common Name (CN)</string> + </property> + </widget> + </item> + <item row="7" column="1"> + <widget class="QLabel" name="issuerCommonNameLabel"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string/> + </property> + </widget> + </item> + <item row="8" column="0"> + <widget class="QLabel" name="label_8"> + <property name="text"> + <string>Organization (O)</string> + </property> + </widget> + </item> + <item row="8" column="1"> + <widget class="QLabel" name="issuerOrganizationLabel"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string/> + </property> + </widget> + </item> + <item row="9" column="0"> + <widget class="QLabel" name="label_7"> + <property name="text"> + <string>Organizational Unit (OU)</string> + </property> + </widget> + </item> + <item row="9" column="1"> + <widget class="QLabel" name="issuerOrganizationalUnitLabel"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string/> + </property> + </widget> + </item> + <item row="10" column="0"> + <widget class="QLabel" name="label_10"> + <property name="text"> + <string><b>Validity</b></string> + </property> + </widget> + </item> + <item row="11" column="0"> + <widget class="QLabel" name="label_11"> + <property name="text"> + <string>Issued on</string> + </property> + </widget> + </item> + <item row="11" column="1"> + <widget class="QLabel" name="effectiveLabel"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string/> + </property> + </widget> + </item> + <item row="12" column="0"> + <widget class="QLabel" name="label_12"> + <property name="text"> + <string>Expires on</string> + </property> + </widget> + </item> + <item row="12" column="1"> + <widget class="QLabel" name="expiresLabel"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string/> + </property> + </widget> + </item> + <item row="13" column="0" colspan="2"> + <widget class="QLabel" name="expiredLabel"> + <property name="text"> + <string>This certificate is not valid yet or has expired.</string> + </property> + </widget> + </item> + <item row="14" column="0"> + <widget class="QLabel" name="label_13"> + <property name="text"> + <string><b>Fingerprints</b></string> + </property> + </widget> + </item> + <item row="15" column="0"> + <widget class="QLabel" name="label_14"> + <property name="text"> + <string>SHA1-Fingerprint</string> + </property> + </widget> + </item> + <item row="15" column="1"> + <widget class="QLabel" name="sha1Label"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string/> + </property> + </widget> + </item> + <item row="16" column="0"> + <widget class="QLabel" name="label_15"> + <property name="text"> + <string>MD5-Fingerprint</string> + </property> + </widget> + </item> + <item row="16" column="1"> + <widget class="QLabel" name="md5Label"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string/> + </property> + </widget> + </item> + </layout> + </widget> + <resources/> + <connections/> +</ui>
--- a/Helpviewer/HelpBrowserWV.py Fri Jan 18 19:31:43 2013 +0100 +++ b/Helpviewer/HelpBrowserWV.py Fri Jan 18 19:50:13 2013 +0100 @@ -30,8 +30,8 @@ from .Bookmarks.AddBookmarkDialog import AddBookmarkDialog from .Bookmarks.BookmarkNode import BookmarkNode try: - from .SslInfoDialog import SslInfoDialog from PyQt4.QtNetwork import QSslCertificate + from E5Network.E5SslInfoDialog import E5SslInfoDialog SSL_AVAILABLE = True except ImportError: SSL_AVAILABLE = False @@ -491,7 +491,7 @@ Public slot to show some SSL information for the loaded page. """ if SSL_AVAILABLE and self.__sslConfiguration is not None: - dlg = SslInfoDialog(self.getSslInfo(), self.view()) + dlg = E5SslInfoDialog(self.getSslInfo(), self.view()) dlg.exec_() else: E5MessageBox.warning(self.view(),
--- a/Helpviewer/HelpWindow.py Fri Jan 18 19:31:43 2013 +0100 +++ b/Helpviewer/HelpWindow.py Fri Jan 18 19:50:13 2013 +0100 @@ -1227,15 +1227,15 @@ self.__actions.append(self.flashblockAct) if SSL_AVAILABLE: - self.certificatesAct = E5Action(self.trUtf8('Manage Certificates'), - self.trUtf8('Manage Certificates...'), + self.certificatesAct = E5Action(self.trUtf8('Manage SSL Certificates'), + self.trUtf8('Manage SSL Certificates...'), 0, 0, self, 'help_manage_certificates') self.certificatesAct.setStatusTip(self.trUtf8( - 'Manage the saved certificates')) + 'Manage the saved SSL certificates')) self.certificatesAct.setWhatsThis(self.trUtf8( - """<b>Manage Saved Certificates...</b>""" - """<p>Opens a dialog to manage the saved certificates.</p>""" + """<b>Manage SSL Certificates...</b>""" + """<p>Opens a dialog to manage the saved SSL certificates.</p>""" )) if not self.initShortcutsOnly: self.certificatesAct.triggered[()].connect(self.__showCertificatesDialog) @@ -2723,9 +2723,9 @@ """ Private slot to show the certificates management dialog. """ - from .SslCertificatesDialog import SslCertificatesDialog - - dlg = SslCertificatesDialog(self) + from E5Network.E5SslCertificatesDialog import E5SslCertificatesDialog + + dlg = E5SslCertificatesDialog(self) dlg.exec_() def __showAdBlockDialog(self):
--- a/Helpviewer/SiteInfo/SiteInfoDialog.ui Fri Jan 18 19:31:43 2013 +0100 +++ b/Helpviewer/SiteInfo/SiteInfoDialog.ui Fri Jan 18 19:50:13 2013 +0100 @@ -349,7 +349,7 @@ </attribute> <layout class="QVBoxLayout" name="verticalLayout_3"> <item> - <widget class="SslInfoWidget" name="sslWidget" native="true"/> + <widget class="E5SslInfoWidget" name="sslWidget" native="true"/> </item> </layout> </widget> @@ -369,9 +369,9 @@ </widget> <customwidgets> <customwidget> - <class>SslInfoWidget</class> + <class>E5SslInfoWidget</class> <extends>QWidget</extends> - <header>Helpviewer/SslInfoWidget.h</header> + <header>E5Network/E5SslInfoWidget.h</header> <container>1</container> </customwidget> </customwidgets>
--- a/Helpviewer/SslCertificatesDialog.py Fri Jan 18 19:31:43 2013 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,470 +0,0 @@ -# -*- coding: utf-8 -*- - -# Copyright (c) 2010 - 2013 Detlev Offenbach <detlev@die-offenbachs.de> -# - -""" -Module implementing a dialog to show and edit all certificates. -""" - -from PyQt4.QtCore import pyqtSlot, Qt, QByteArray, QFile, QFileInfo, QIODevice, \ - qVersion -from PyQt4.QtGui import QDialog, QTreeWidgetItem -try: - from PyQt4.QtNetwork import QSslCertificate, QSslSocket, QSslConfiguration, QSsl -except ImportError: - pass - -from E5Gui import E5MessageBox, E5FileDialog - -from .Ui_SslCertificatesDialog import Ui_SslCertificatesDialog - -try: - from .SslInfoDialog import SslInfoDialog -except ImportError: - pass - -import Preferences -import Utilities - - -class SslCertificatesDialog(QDialog, Ui_SslCertificatesDialog): - """ - Class implementing a dialog to show and edit all certificates. - """ - CertRole = Qt.UserRole + 1 - - def __init__(self, parent=None): - """ - Constructor - - @param parent reference to the parent widget (QWidget) - """ - super().__init__(parent) - self.setupUi(self) - - self.__populateServerCertificatesTree() - self.__populateCaCertificatesTree() - - def __populateServerCertificatesTree(self): - """ - Private slot to populate the server certificates tree. - """ - certificateDict = Preferences.toDict( - Preferences.Prefs.settings.value("Ssl/CaCertificatesDict")) - for server in certificateDict: - for cert in QSslCertificate.fromData(certificateDict[server]): - self.__createServerCertificateEntry(server, cert) - - self.serversCertificatesTree.expandAll() - for i in range(self.serversCertificatesTree.columnCount()): - self.serversCertificatesTree.resizeColumnToContents(i) - - def __createServerCertificateEntry(self, server, cert): - """ - Private method to create a server certificate entry. - - @param server server name of the certificate (string) - @param cert certificate to insert (QSslCertificate) - """ - # step 1: extract the info to be shown - if qVersion() >= "5.0.0": - organisation = Utilities.decodeString( - ", ".join(cert.subjectInfo(QSslCertificate.Organization))) - commonName = Utilities.decodeString( - ", ".join(cert.subjectInfo(QSslCertificate.CommonName))) - else: - organisation = Utilities.decodeString( - cert.subjectInfo(QSslCertificate.Organization)) - commonName = Utilities.decodeString( - cert.subjectInfo(QSslCertificate.CommonName)) - if organisation is None or organisation == "": - organisation = self.trUtf8("(Unknown)") - if commonName is None or commonName == "": - commonName = self.trUtf8("(Unknown common name)") - expiryDate = cert.expiryDate().toString("yyyy-MM-dd") - - # step 2: create the entry - items = self.serversCertificatesTree.findItems(organisation, - Qt.MatchFixedString | Qt.MatchCaseSensitive) - if len(items) == 0: - parent = QTreeWidgetItem(self.serversCertificatesTree, [organisation]) - else: - parent = items[0] - - itm = QTreeWidgetItem(parent, [commonName, server, expiryDate]) - itm.setData(0, self.CertRole, cert) - - @pyqtSlot(QTreeWidgetItem, QTreeWidgetItem) - def on_serversCertificatesTree_currentItemChanged(self, current, previous): - """ - Private slot handling a change of the current item in the - server certificates list. - - @param current new current item (QTreeWidgetItem) - @param previous previous current item (QTreeWidgetItem) - """ - enable = current is not None and current.parent() is not None - self.serversViewButton.setEnabled(enable) - self.serversDeleteButton.setEnabled(enable) - self.serversExportButton.setEnabled(enable) - - @pyqtSlot() - def on_serversViewButton_clicked(self): - """ - Private slot to show data of the selected server certificate. - """ - cert = self.serversCertificatesTree.currentItem().data(0, self.CertRole) - dlg = SslInfoDialog(cert, self) - dlg.exec_() - - @pyqtSlot() - def on_serversDeleteButton_clicked(self): - """ - Private slot to delete the selected server certificate. - """ - itm = self.serversCertificatesTree.currentItem() - res = E5MessageBox.yesNo(self, - self.trUtf8("Delete Server Certificate"), - self.trUtf8("""<p>Shall the server certificate really be deleted?</p>""" - """<p>{0}</p>""" - """<p>If the server certificate is deleted, the normal security""" - """ checks will be reinstantiated and the server has to""" - """ present a valid certificate.</p>""")\ - .format(itm.text(0))) - if res: - server = itm.text(1) - cert = self.serversCertificatesTree.currentItem().data(0, self.CertRole) - - # delete the selected entry and it's parent entry, if it was the only one - parent = itm.parent() - parent.takeChild(parent.indexOfChild(itm)) - if parent.childCount() == 0: - self.serversCertificatesTree.takeTopLevelItem( - self.serversCertificatesTree.indexOfTopLevelItem(parent)) - - # delete the certificate from the user certificate store - certificateDict = Preferences.toDict( - Preferences.Prefs.settings.value("Ssl/CaCertificatesDict")) - if server in certificateDict: - certs = QSslCertificate.fromData(certificateDict[server]) - if cert in certs: - certs.remove(cert) - if certs: - pems = QByteArray() - for cert in certs: - pems.append(cert.toPem() + '\n') - certificateDict[server] = pems - else: - del certificateDict[server] - Preferences.Prefs.settings.setValue("Ssl/CaCertificatesDict", - certificateDict) - - # delete the certificate from the default certificates - self.__updateDefaultConfiguration() - - @pyqtSlot() - def on_serversImportButton_clicked(self): - """ - Private slot to import server certificates. - """ - certs = self.__importCertificate() - if certs: - server = "*" - certificateDict = Preferences.toDict( - Preferences.Prefs.settings.value("Ssl/CaCertificatesDict")) - if server in certificateDict: - sCerts = QSslCertificate.fromData(certificateDict[server]) - else: - sCerts = [] - - pems = QByteArray() - for cert in certs: - if cert in sCerts: - if qVersion() >= "5.0.0": - commonStr = ", ".join( - cert.subjectInfo(QSslCertificate.CommonName)) - else: - commonStr = cert.subjectInfo(QSslCertificate.CommonName) - E5MessageBox.warning(self, - self.trUtf8("Import Certificate"), - self.trUtf8("""<p>The certificate <b>{0}</b> already exists.""" - """ Skipping.</p>""") - .format(Utilities.decodeString(commonStr))) - else: - pems.append(cert.toPem() + '\n') - if server not in certificateDict: - certificateDict[server] = QByteArray() - certificateDict[server].append(pems) - Preferences.Prefs.settings.setValue("Ssl/CaCertificatesDict", - certificateDict) - - self.serversCertificatesTree.clear() - self.__populateServerCertificatesTree() - - self.__updateDefaultConfiguration() - - @pyqtSlot() - def on_serversExportButton_clicked(self): - """ - Private slot to export the selected server certificate. - """ - cert = self.serversCertificatesTree.currentItem().data(0, self.CertRole) - fname = self.serversCertificatesTree.currentItem().text(0)\ - .replace(" ", "").replace("\t", "") - self.__exportCertificate(fname, cert) - - def __updateDefaultConfiguration(self): - """ - Private method to update the default SSL configuration. - """ - caList = self.__getSystemCaCertificates() - certificateDict = Preferences.toDict( - Preferences.Prefs.settings.value("Ssl/CaCertificatesDict")) - for server in certificateDict: - for cert in QSslCertificate.fromData(certificateDict[server]): - if cert not in caList: - caList.append(cert) - sslCfg = QSslConfiguration.defaultConfiguration() - sslCfg.setCaCertificates(caList) - QSslConfiguration.setDefaultConfiguration(sslCfg) - - def __getSystemCaCertificates(self): - """ - Private method to get the list of system certificates. - - @return list of system certificates (list of QSslCertificate) - """ - caList = QSslCertificate.fromData(Preferences.toByteArray( - Preferences.Prefs.settings.value("Help/SystemCertificates"))) - if not caList: - caList = QSslSocket.systemCaCertificates() - return caList - - def __populateCaCertificatesTree(self): - """ - Private slot to populate the CA certificates tree. - """ - for cert in self.__getSystemCaCertificates(): - self.__createCaCertificateEntry(cert) - - self.caCertificatesTree.expandAll() - for i in range(self.caCertificatesTree.columnCount()): - self.caCertificatesTree.resizeColumnToContents(i) - self.caCertificatesTree.sortItems(0, Qt.AscendingOrder) - - def __createCaCertificateEntry(self, cert): - """ - Private method to create a CA certificate entry. - - @param cert certificate to insert (QSslCertificate) - """ - # step 1: extract the info to be shown - if qVersion() >= "5.0.0": - organisation = Utilities.decodeString( - ", ".join(cert.subjectInfo(QSslCertificate.Organization))) - commonName = Utilities.decodeString( - ", ".join(cert.subjectInfo(QSslCertificate.CommonName))) - else: - organisation = Utilities.decodeString( - cert.subjectInfo(QSslCertificate.Organization)) - commonName = Utilities.decodeString( - cert.subjectInfo(QSslCertificate.CommonName)) - if organisation is None or organisation == "": - organisation = self.trUtf8("(Unknown)") - if commonName is None or commonName == "": - commonName = self.trUtf8("(Unknown common name)") - expiryDate = cert.expiryDate().toString("yyyy-MM-dd") - - # step 2: create the entry - items = self.caCertificatesTree.findItems(organisation, - Qt.MatchFixedString | Qt.MatchCaseSensitive) - if len(items) == 0: - parent = QTreeWidgetItem(self.caCertificatesTree, [organisation]) - else: - parent = items[0] - - itm = QTreeWidgetItem(parent, [commonName, expiryDate]) - itm.setData(0, self.CertRole, cert) - - @pyqtSlot(QTreeWidgetItem, QTreeWidgetItem) - def on_caCertificatesTree_currentItemChanged(self, current, previous): - """ - Private slot handling a change of the current item - in the CA certificates list. - - @param current new current item (QTreeWidgetItem) - @param previous previous current item (QTreeWidgetItem) - """ - enable = current is not None and current.parent() is not None - self.caViewButton.setEnabled(enable) - self.caDeleteButton.setEnabled(enable) - self.caExportButton.setEnabled(enable) - - @pyqtSlot() - def on_caViewButton_clicked(self): - """ - Private slot to show data of the selected CA certificate. - """ - cert = self.caCertificatesTree.currentItem().data(0, self.CertRole) - dlg = SslInfoDialog(cert, self) - dlg.exec_() - - @pyqtSlot() - def on_caDeleteButton_clicked(self): - """ - Private slot to delete the selected CA certificate. - """ - itm = self.caCertificatesTree.currentItem() - res = E5MessageBox.yesNo(self, - self.trUtf8("Delete CA Certificate"), - self.trUtf8("""<p>Shall the CA certificate really be deleted?</p>""" - """<p>{0}</p>""" - """<p>If the CA certificate is deleted, the browser""" - """ will not trust any certificate issued by this CA.</p>""")\ - .format(itm.text(0))) - if res: - cert = self.caCertificatesTree.currentItem().data(0, self.CertRole) - - # delete the selected entry and it's parent entry, if it was the only one - parent = itm.parent() - parent.takeChild(parent.indexOfChild(itm)) - if parent.childCount() == 0: - self.caCertificatesTree.takeTopLevelItem( - self.caCertificatesTree.indexOfTopLevelItem(parent)) - - # delete the certificate from the CA certificate store - caCerts = self.__getSystemCaCertificates() - if cert in caCerts: - caCerts.remove(cert) - pems = QByteArray() - for cert in caCerts: - pems.append(cert.toPem() + '\n') - Preferences.Prefs.settings.setValue("Help/SystemCertificates", pems) - - # delete the certificate from the default certificates - self.__updateDefaultConfiguration() - - @pyqtSlot() - def on_caImportButton_clicked(self): - """ - Private slot to import server certificates. - """ - certs = self.__importCertificate() - if certs: - caCerts = self.__getSystemCaCertificates() - for cert in certs: - if cert in caCerts: - if qVersion() >= "5.0.0": - commonStr = ", ".join( - cert.subjectInfo(QSslCertificate.CommonName)) - else: - commonStr = cert.subjectInfo(QSslCertificate.CommonName) - E5MessageBox.warning(self, - self.trUtf8("Import Certificate"), - self.trUtf8("""<p>The certificate <b>{0}</b> already exists.""" - """ Skipping.</p>""") - .format(Utilities.decodeString(commonStr))) - else: - caCerts.append(cert) - - pems = QByteArray() - for cert in caCerts: - pems.append(cert.toPem() + '\n') - Preferences.Prefs.settings.setValue("Help/SystemCertificates", pems) - - self.caCertificatesTree.clear() - self.__populateCaCertificatesTree() - - self.__updateDefaultConfiguration() - - @pyqtSlot() - def on_caExportButton_clicked(self): - """ - Private slot to export the selected CA certificate. - """ - cert = self.caCertificatesTree.currentItem().data(0, self.CertRole) - fname = self.caCertificatesTree.currentItem().text(0)\ - .replace(" ", "").replace("\t", "") - self.__exportCertificate(fname, cert) - - def __exportCertificate(self, name, cert): - """ - Private slot to export a certificate. - - @param name default file name without extension (string) - @param cert certificate to be exported (QSslCertificate) - """ - if cert is not None: - fname, selectedFilter = E5FileDialog.getSaveFileNameAndFilter( - self, - self.trUtf8("Export Certificate"), - name, - self.trUtf8("Certificate File (PEM) (*.pem);;" - "Certificate File (DER) (*.der)"), - None, - E5FileDialog.Options(E5FileDialog.DontConfirmOverwrite)) - - if fname: - ext = QFileInfo(fname).suffix() - if not ext or ext not in ["pem", "der"]: - ex = selectedFilter.split("(*")[1].split(")")[0] - if ex: - fname += ex - if QFileInfo(fname).exists(): - res = E5MessageBox.yesNo(self, - self.trUtf8("Export Certificate"), - self.trUtf8("<p>The file <b>{0}</b> already exists." - " Overwrite it?</p>").format(fname), - icon=E5MessageBox.Warning) - if not res: - return - - f = QFile(fname) - if not f.open(QIODevice.WriteOnly): - E5MessageBox.critical(self, - self.trUtf8("Export Certificate"), - self.trUtf8("""<p>The certificate could not be written to file""" - """ <b>{0}</b></p><p>Error: {1}</p>""") - .format(fname, f.errorString())) - return - - if fname.endswith(".pem"): - crt = cert.toPem() - else: - crt = cert.toDer() - f.write(crt) - f.close() - - def __importCertificate(self): - """ - Private method to read a certificate. - - @return certificates read (list of QSslCertificate) - """ - fname = E5FileDialog.getOpenFileName( - self, - self.trUtf8("Import Certificate"), - "", - self.trUtf8("Certificate Files (*.pem *.crt *.der *.cer *.ca);;" - "All Files (*)")) - - if fname: - f = QFile(fname) - if not f.open(QIODevice.ReadOnly): - E5MessageBox.critical(self, - self.trUtf8("Export Certificate"), - self.trUtf8("""<p>The certificate could not be read from file""" - """ <b>{0}</b></p><p>Error: {1}</p>""") - .format(fname, f.errorString())) - return [] - - crt = f.readAll() - f.close() - cert = QSslCertificate.fromData(crt, QSsl.Pem) - if not cert: - cert = QSslCertificate.fromData(crt, QSsl.Der) - - return cert - - return []
--- a/Helpviewer/SslCertificatesDialog.ui Fri Jan 18 19:31:43 2013 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,281 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<ui version="4.0"> - <class>SslCertificatesDialog</class> - <widget class="QDialog" name="SslCertificatesDialog"> - <property name="geometry"> - <rect> - <x>0</x> - <y>0</y> - <width>760</width> - <height>440</height> - </rect> - </property> - <property name="windowTitle"> - <string>SSL Certificate Manager</string> - </property> - <property name="sizeGripEnabled"> - <bool>true</bool> - </property> - <layout class="QVBoxLayout" name="verticalLayout"> - <item> - <widget class="QTabWidget" name="certificatesWidget"> - <property name="currentIndex"> - <number>0</number> - </property> - <widget class="QWidget" name="serversTab"> - <attribute name="title"> - <string>&Servers</string> - </attribute> - <layout class="QVBoxLayout" name="verticalLayout_2"> - <item> - <widget class="QLabel" name="label"> - <property name="text"> - <string>You have saved certificates identifying these servers:</string> - </property> - </widget> - </item> - <item> - <widget class="QTreeWidget" name="serversCertificatesTree"> - <column> - <property name="text"> - <string>Certificate name</string> - </property> - </column> - <column> - <property name="text"> - <string>Server</string> - </property> - </column> - <column> - <property name="text"> - <string>Expiry Date</string> - </property> - </column> - </widget> - </item> - <item> - <layout class="QHBoxLayout" name="horizontalLayout"> - <item> - <widget class="QPushButton" name="serversViewButton"> - <property name="enabled"> - <bool>false</bool> - </property> - <property name="toolTip"> - <string>Press to view the selected certificate</string> - </property> - <property name="text"> - <string>&View...</string> - </property> - </widget> - </item> - <item> - <widget class="QPushButton" name="serversImportButton"> - <property name="toolTip"> - <string>Press to import a certificate</string> - </property> - <property name="text"> - <string>&Import...</string> - </property> - </widget> - </item> - <item> - <widget class="QPushButton" name="serversExportButton"> - <property name="enabled"> - <bool>false</bool> - </property> - <property name="toolTip"> - <string>Press to export the selected certificate</string> - </property> - <property name="text"> - <string>&Export...</string> - </property> - </widget> - </item> - <item> - <widget class="QPushButton" name="serversDeleteButton"> - <property name="enabled"> - <bool>false</bool> - </property> - <property name="toolTip"> - <string>Press to delete the selected certificate</string> - </property> - <property name="text"> - <string>&Delete...</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> - </layout> - </widget> - <widget class="QWidget" name="caTab"> - <attribute name="title"> - <string>Certificate &Authorities</string> - </attribute> - <layout class="QVBoxLayout" name="verticalLayout_3"> - <item> - <widget class="QLabel" name="label_2"> - <property name="text"> - <string>You have saved certificates identifying these certification authorities:</string> - </property> - </widget> - </item> - <item> - <widget class="QTreeWidget" name="caCertificatesTree"> - <column> - <property name="text"> - <string>Certificate name</string> - </property> - </column> - <column> - <property name="text"> - <string>Expiry Date</string> - </property> - </column> - </widget> - </item> - <item> - <layout class="QHBoxLayout" name="horizontalLayout_2"> - <item> - <widget class="QPushButton" name="caViewButton"> - <property name="enabled"> - <bool>false</bool> - </property> - <property name="toolTip"> - <string>Press to view the selected certificate</string> - </property> - <property name="text"> - <string>&View...</string> - </property> - </widget> - </item> - <item> - <widget class="QPushButton" name="caImportButton"> - <property name="toolTip"> - <string>Press to import a certificate</string> - </property> - <property name="text"> - <string>&Import...</string> - </property> - </widget> - </item> - <item> - <widget class="QPushButton" name="caExportButton"> - <property name="enabled"> - <bool>false</bool> - </property> - <property name="toolTip"> - <string>Press to export the selected certificate</string> - </property> - <property name="text"> - <string>&Export...</string> - </property> - </widget> - </item> - <item> - <widget class="QPushButton" name="caDeleteButton"> - <property name="enabled"> - <bool>false</bool> - </property> - <property name="toolTip"> - <string>Press to delete the selected certificate</string> - </property> - <property name="text"> - <string>&Delete...</string> - </property> - </widget> - </item> - <item> - <spacer name="horizontalSpacer_2"> - <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> - </layout> - </widget> - </widget> - </item> - <item> - <widget class="QDialogButtonBox" name="buttonBox"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="standardButtons"> - <set>QDialogButtonBox::Close</set> - </property> - </widget> - </item> - </layout> - </widget> - <tabstops> - <tabstop>certificatesWidget</tabstop> - <tabstop>serversCertificatesTree</tabstop> - <tabstop>serversViewButton</tabstop> - <tabstop>serversImportButton</tabstop> - <tabstop>serversExportButton</tabstop> - <tabstop>serversDeleteButton</tabstop> - <tabstop>caCertificatesTree</tabstop> - <tabstop>caViewButton</tabstop> - <tabstop>caImportButton</tabstop> - <tabstop>caExportButton</tabstop> - <tabstop>caDeleteButton</tabstop> - <tabstop>buttonBox</tabstop> - </tabstops> - <resources/> - <connections> - <connection> - <sender>buttonBox</sender> - <signal>accepted()</signal> - <receiver>SslCertificatesDialog</receiver> - <slot>accept()</slot> - <hints> - <hint type="sourcelabel"> - <x>248</x> - <y>254</y> - </hint> - <hint type="destinationlabel"> - <x>157</x> - <y>274</y> - </hint> - </hints> - </connection> - <connection> - <sender>buttonBox</sender> - <signal>rejected()</signal> - <receiver>SslCertificatesDialog</receiver> - <slot>reject()</slot> - <hints> - <hint type="sourcelabel"> - <x>316</x> - <y>260</y> - </hint> - <hint type="destinationlabel"> - <x>286</x> - <y>274</y> - </hint> - </hints> - </connection> - </connections> -</ui>
--- a/Helpviewer/SslInfoDialog.py Fri Jan 18 19:31:43 2013 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -# -*- coding: utf-8 -*- - -# Copyright (c) 2010 - 2013 Detlev Offenbach <detlev@die-offenbachs.de> -# - -""" -Module implementing a dialog to show SSL certificate infos. -""" - -from PyQt4.QtGui import QDialog - -from .Ui_SslInfoDialog import Ui_SslInfoDialog - - -class SslInfoDialog(QDialog, Ui_SslInfoDialog): - """ - Class implementing a dialog to show SSL certificate infos. - """ - def __init__(self, certificate, parent=None): - """ - Constructor - - @param certificate reference to the SSL certificate (QSslCertificate) - @param parent reference to the parent widget (QWidget) - """ - super().__init__(parent) - self.setupUi(self) - - self.sslWidget.showCertificate(certificate)
--- a/Helpviewer/SslInfoDialog.ui Fri Jan 18 19:31:43 2013 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,78 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<ui version="4.0"> - <class>SslInfoDialog</class> - <widget class="QDialog" name="SslInfoDialog"> - <property name="geometry"> - <rect> - <x>0</x> - <y>0</y> - <width>556</width> - <height>486</height> - </rect> - </property> - <property name="windowTitle"> - <string>SSL Certificate Info</string> - </property> - <property name="sizeGripEnabled"> - <bool>true</bool> - </property> - <layout class="QVBoxLayout" name="verticalLayout"> - <item> - <widget class="SslInfoWidget" name="sslWidget" native="true"/> - </item> - <item> - <widget class="QDialogButtonBox" name="buttonBox"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="standardButtons"> - <set>QDialogButtonBox::Close</set> - </property> - </widget> - </item> - </layout> - </widget> - <customwidgets> - <customwidget> - <class>SslInfoWidget</class> - <extends>QWidget</extends> - <header>Helpviewer/SslInfoWidget.h</header> - <container>1</container> - </customwidget> - </customwidgets> - <resources/> - <connections> - <connection> - <sender>buttonBox</sender> - <signal>accepted()</signal> - <receiver>SslInfoDialog</receiver> - <slot>accept()</slot> - <hints> - <hint type="sourcelabel"> - <x>248</x> - <y>254</y> - </hint> - <hint type="destinationlabel"> - <x>157</x> - <y>274</y> - </hint> - </hints> - </connection> - <connection> - <sender>buttonBox</sender> - <signal>rejected()</signal> - <receiver>SslInfoDialog</receiver> - <slot>reject()</slot> - <hints> - <hint type="sourcelabel"> - <x>316</x> - <y>260</y> - </hint> - <hint type="destinationlabel"> - <x>286</x> - <y>274</y> - </hint> - </hints> - </connection> - </connections> -</ui>
--- a/Helpviewer/SslInfoWidget.py Fri Jan 18 19:31:43 2013 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,148 +0,0 @@ -# -*- coding: utf-8 -*- - -# Copyright (c) 2010 - 2013 Detlev Offenbach <detlev@die-offenbachs.de> -# - -""" -Module implementing a widget to show SSL certificate infos. -""" - -from PyQt4.QtCore import QCryptographicHash, QDateTime, qVersion -from PyQt4.QtGui import QWidget -from PyQt4.QtNetwork import QSslCertificate - -from .Ui_SslInfoWidget import Ui_SslInfoWidget - -import Utilities - - -class SslInfoWidget(QWidget, Ui_SslInfoWidget): - """ - Class implementing a widget to show SSL certificate infos. - """ - def __init__(self, parent=None): - """ - Constructor - - @param parent reference to the parent widget (QWidget) - """ - super().__init__(parent) - self.setupUi(self) - - def showCertificate(self, certificate): - """ - Public method to show the SSL certificate information. - - @param certificate reference to the SSL certificate (QSslCertificate) - """ - self.blacklistedLabel.setVisible(False) - self.blacklistedLabel.setStyleSheet( - "QLabel { color : white; background-color : red; }") - self.expiredLabel.setVisible(False) - self.expiredLabel.setStyleSheet( - "QLabel { color : white; background-color : red; }") - - if qVersion() >= "5.0.0": - self.subjectCommonNameLabel.setText(self.__certificateString( - ", ".join(certificate.subjectInfo(QSslCertificate.CommonName)))) - self.subjectOrganizationLabel.setText(self.__certificateString( - ", ".join(certificate.subjectInfo(QSslCertificate.Organization)))) - self.subjectOrganizationalUnitLabel.setText(self.__certificateString( - ", ".join( - certificate.subjectInfo(QSslCertificate.OrganizationalUnitName)))) - self.issuerCommonNameLabel.setText(self.__certificateString( - ", ".join(certificate.issuerInfo(QSslCertificate.CommonName)))) - self.issuerOrganizationLabel.setText(self.__certificateString( - ", ".join(certificate.issuerInfo(QSslCertificate.Organization)))) - self.issuerOrganizationalUnitLabel.setText(self.__certificateString( - ", ".join(certificate.issuerInfo(QSslCertificate.OrganizationalUnitName)))) - else: - self.subjectCommonNameLabel.setText(self.__certificateString( - certificate.subjectInfo(QSslCertificate.CommonName))) - self.subjectOrganizationLabel.setText(self.__certificateString( - certificate.subjectInfo(QSslCertificate.Organization))) - self.subjectOrganizationalUnitLabel.setText(self.__certificateString( - certificate.subjectInfo(QSslCertificate.OrganizationalUnitName))) - self.issuerCommonNameLabel.setText(self.__certificateString( - certificate.issuerInfo(QSslCertificate.CommonName))) - self.issuerOrganizationLabel.setText(self.__certificateString( - certificate.issuerInfo(QSslCertificate.Organization))) - self.issuerOrganizationalUnitLabel.setText(self.__certificateString( - certificate.issuerInfo(QSslCertificate.OrganizationalUnitName))) - self.serialNumberLabel.setText(self.__serialNumber(certificate)) - self.effectiveLabel.setText( - certificate.effectiveDate().toString("yyyy-MM-dd")) - self.expiresLabel.setText( - certificate.expiryDate().toString("yyyy-MM-dd")) - self.sha1Label.setText(self.__formatHexString( - str(certificate.digest(QCryptographicHash.Sha1).toHex(), encoding="ascii"))) - self.md5Label.setText(self.__formatHexString( - str(certificate.digest(QCryptographicHash.Md5).toHex(), encoding="ascii"))) - - if (qVersion() >= "5.0.0" and certificate.isBlacklisted()) or \ - (qVersion() < "5.0.0" and not certificate.isValid()): - # something is wrong; indicate it to the user - if self.__hasExpired(certificate.effectiveDate(), certificate.expiryDate()): - self.expiredLabel.setVisible(True) - else: - self.blacklistedLabel.setVisible(True) - - def __certificateString(self, txt): - """ - Private method to prepare some text for display. - - @param txt text to be displayed (string) - @return prepared text (string) - """ - if txt is None or txt == "": - return self.trUtf8("<not part of the certificate>") - - return Utilities.decodeString(txt) - - def __serialNumber(self, cert): - """ - Private slot to format the certificate serial number. - - @param cert reference to the SSL certificate (QSslCertificate) - @return formated serial number (string) - """ - serial = cert.serialNumber() - if serial == "": - return self.trUtf8("<not part of the certificate>") - - if ':' in serial: - return str(serial, encoding="ascii").upper() - else: - hexString = hex(int(serial))[2:] - return self.__formatHexString(hexString) - - def __formatHexString(self, hexString): - """ - Private method to format a hex string for display. - - @param hexString hex string to be formatted (string) - @return formatted string (string) - """ - hexString = hexString.upper() - - if len(hexString) % 2 == 1: - hexString = '0' + hexString - - hexList = [] - while hexString: - hexList.append(hexString[:2]) - hexString = hexString[2:] - - return ':'.join(hexList) - - def __hasExpired(self, effectiveDate, expiryDate): - """ - Private method to check for a certificate expiration. - - @param effectiveDate date the certificate becomes effective (QDateTime) - @param expiryDate date the certificate expires (QDateTime) - @return flag indicating the expiration status (boolean) - """ - now = QDateTime.currentDateTime() - - return now < effectiveDate or now >= expiryDate
--- a/Helpviewer/SslInfoWidget.ui Fri Jan 18 19:31:43 2013 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,280 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<ui version="4.0"> - <class>SslInfoWidget</class> - <widget class="QWidget" name="SslInfoWidget"> - <property name="geometry"> - <rect> - <x>0</x> - <y>0</y> - <width>460</width> - <height>452</height> - </rect> - </property> - <layout class="QGridLayout" name="gridLayout"> - <item row="0" column="0" colspan="2"> - <widget class="QLabel" name="blacklistedLabel"> - <property name="text"> - <string>This certificated has been blacklisted.</string> - </property> - </widget> - </item> - <item row="1" column="0"> - <widget class="QLabel" name="label"> - <property name="text"> - <string><b>Issued for</b></string> - </property> - </widget> - </item> - <item row="2" column="0"> - <widget class="QLabel" name="label_2"> - <property name="text"> - <string>Common Name (CN)</string> - </property> - </widget> - </item> - <item row="2" column="1"> - <widget class="QLabel" name="subjectCommonNameLabel"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string/> - </property> - </widget> - </item> - <item row="3" column="0"> - <widget class="QLabel" name="label_3"> - <property name="text"> - <string>Organization (O)</string> - </property> - </widget> - </item> - <item row="3" column="1"> - <widget class="QLabel" name="subjectOrganizationLabel"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string/> - </property> - </widget> - </item> - <item row="4" column="0"> - <widget class="QLabel" name="label_4"> - <property name="text"> - <string>Organizational Unit (OU)</string> - </property> - </widget> - </item> - <item row="4" column="1"> - <widget class="QLabel" name="subjectOrganizationalUnitLabel"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string/> - </property> - </widget> - </item> - <item row="5" column="0"> - <widget class="QLabel" name="label_5"> - <property name="text"> - <string>Serialnumber</string> - </property> - </widget> - </item> - <item row="5" column="1"> - <widget class="QLabel" name="serialNumberLabel"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string/> - </property> - </widget> - </item> - <item row="6" column="0"> - <widget class="QLabel" name="label_6"> - <property name="text"> - <string><b>Issued by</b></string> - </property> - </widget> - </item> - <item row="7" column="0"> - <widget class="QLabel" name="label_9"> - <property name="text"> - <string>Common Name (CN)</string> - </property> - </widget> - </item> - <item row="7" column="1"> - <widget class="QLabel" name="issuerCommonNameLabel"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string/> - </property> - </widget> - </item> - <item row="8" column="0"> - <widget class="QLabel" name="label_8"> - <property name="text"> - <string>Organization (O)</string> - </property> - </widget> - </item> - <item row="8" column="1"> - <widget class="QLabel" name="issuerOrganizationLabel"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string/> - </property> - </widget> - </item> - <item row="9" column="0"> - <widget class="QLabel" name="label_7"> - <property name="text"> - <string>Organizational Unit (OU)</string> - </property> - </widget> - </item> - <item row="9" column="1"> - <widget class="QLabel" name="issuerOrganizationalUnitLabel"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string/> - </property> - </widget> - </item> - <item row="10" column="0"> - <widget class="QLabel" name="label_10"> - <property name="text"> - <string><b>Validity</b></string> - </property> - </widget> - </item> - <item row="11" column="0"> - <widget class="QLabel" name="label_11"> - <property name="text"> - <string>Issued on</string> - </property> - </widget> - </item> - <item row="11" column="1"> - <widget class="QLabel" name="effectiveLabel"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string/> - </property> - </widget> - </item> - <item row="12" column="0"> - <widget class="QLabel" name="label_12"> - <property name="text"> - <string>Expires on</string> - </property> - </widget> - </item> - <item row="12" column="1"> - <widget class="QLabel" name="expiresLabel"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string/> - </property> - </widget> - </item> - <item row="13" column="0" colspan="2"> - <widget class="QLabel" name="expiredLabel"> - <property name="text"> - <string>This certificate is not valid yet or has expired.</string> - </property> - </widget> - </item> - <item row="14" column="0"> - <widget class="QLabel" name="label_13"> - <property name="text"> - <string><b>Fingerprints</b></string> - </property> - </widget> - </item> - <item row="15" column="0"> - <widget class="QLabel" name="label_14"> - <property name="text"> - <string>SHA1-Fingerprint</string> - </property> - </widget> - </item> - <item row="15" column="1"> - <widget class="QLabel" name="sha1Label"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string/> - </property> - </widget> - </item> - <item row="16" column="0"> - <widget class="QLabel" name="label_15"> - <property name="text"> - <string>MD5-Fingerprint</string> - </property> - </widget> - </item> - <item row="16" column="1"> - <widget class="QLabel" name="md5Label"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string/> - </property> - </widget> - </item> - </layout> - </widget> - <resources/> - <connections/> -</ui>
--- a/UI/UserInterface.py Fri Jan 18 19:31:43 2013 +0100 +++ b/UI/UserInterface.py Fri Jan 18 19:50:13 2013 +0100 @@ -1912,6 +1912,20 @@ self.importShortcutsAct.triggered[()].connect(self.__importShortcuts) self.actions.append(self.importShortcutsAct) + if SSL_AVAILABLE: + self.certificatesAct = E5Action(self.trUtf8('Manage SSL Certificates'), + self.trUtf8('Manage SSL Certificates...'), + 0, 0, + self, 'manage_ssl_certificates') + self.certificatesAct.setStatusTip(self.trUtf8( + 'Manage the saved SSL certificates')) + self.certificatesAct.setWhatsThis(self.trUtf8( + """<b>Manage SSL Certificates...</b>""" + """<p>Opens a dialog to manage the saved SSL certificates.</p>""" + )) + self.certificatesAct.triggered[()].connect(self.__showCertificatesDialog) + self.actions.append(self.certificatesAct) + self.viewmanagerActivateAct = E5Action(self.trUtf8('Activate current editor'), self.trUtf8('Activate current editor'), QKeySequence(self.trUtf8("Alt+Shift+E")), @@ -2197,6 +2211,9 @@ self.__menus["settings"].addAction(self.importShortcutsAct) self.__menus["settings"].addSeparator() self.__menus["settings"].addAction(self.showExternalToolsAct) + if SSL_AVAILABLE: + self.__menus["settings"].addSeparator() + self.__menus["settings"].addAction(self.certificatesAct) self.__menus["window"] = QMenu(self.trUtf8('&Window'), self) mb.addMenu(self.__menus["window"]) @@ -4822,6 +4839,15 @@ if fn: Shortcuts.importShortcuts(fn) + def __showCertificatesDialog(self): + """ + Private slot to show the certificates management dialog. + """ + from E5Network.E5SslCertificatesDialog import E5SslCertificatesDialog + + dlg = E5SslCertificatesDialog(self) + dlg.exec_() + def __newProject(self): """ Private slot to handle the NewProject signal.
--- a/changelog Fri Jan 18 19:31:43 2013 +0100 +++ b/changelog Fri Jan 18 19:50:13 2013 +0100 @@ -5,6 +5,7 @@ - General -- introduced a zoom widget in the status bar of several windows -- centralized the SSL error handling in E5SslErrorHandler + -- moved the SSL widgets to the E5Network package - Multi Project -- extended the context menus of the multi project browser to be able to add projects this way
--- a/eric5.e4p Fri Jan 18 19:31:43 2013 +0100 +++ b/eric5.e4p Fri Jan 18 19:50:13 2013 +0100 @@ -793,7 +793,6 @@ <Source>Helpviewer/UrlBar/FavIconLabel.py</Source> <Source>Helpviewer/UrlBar/StackedUrlBar.py</Source> <Source>Helpviewer/UrlBar/SslLabel.py</Source> - <Source>Helpviewer/SslInfoDialog.py</Source> <Source>Helpviewer/UrlBar/BookmarkInfoDialog.py</Source> <Source>Helpviewer/Download/__init__.py</Source> <Source>Helpviewer/Download/DownloadItem.py</Source> @@ -803,7 +802,6 @@ <Source>ThirdParty/Pygments/pygments/lexers/_asybuiltins.py</Source> <Source>ThirdParty/Pygments/pygments/styles/monokai.py</Source> <Source>Preferences/ConfigurationPages/TrayStarterPage.py</Source> - <Source>Helpviewer/SslCertificatesDialog.py</Source> <Source>UtilitiesPython2/__init__.py</Source> <Source>UtilitiesPython2/Py2SyntaxChecker.py</Source> <Source>UtilitiesPython2/py2flakes/__init__.py</Source> @@ -926,7 +924,6 @@ <Source>Helpviewer/Feeds/FeedEditDialog.py</Source> <Source>Helpviewer/SiteInfo/__init__.py</Source> <Source>Helpviewer/SiteInfo/SiteInfoDialog.py</Source> - <Source>Helpviewer/SslInfoWidget.py</Source> <Source>Helpviewer/UserAgent/UserAgentsDialog.py</Source> <Source>Helpviewer/UserAgent/UserAgentModel.py</Source> <Source>Helpviewer/UserAgent/UserAgentManager.py</Source> @@ -1068,6 +1065,9 @@ <Source>Network/IRC/IrcMessageEdit.py</Source> <Source>E5Gui/E5ZoomWidget.py</Source> <Source>E5Network/E5SslErrorHandler.py</Source> + <Source>E5Network/E5SslInfoWidget.py</Source> + <Source>E5Network/E5SslInfoDialog.py</Source> + <Source>E5Network/E5SslCertificatesDialog.py</Source> </Sources> <Forms> <Form>PyUnit/UnittestDialog.ui</Form> @@ -1293,12 +1293,10 @@ <Form>UI/SymbolsWidget.ui</Form> <Form>UI/NumbersWidget.ui</Form> <Form>Plugins/WizardPlugins/E5MessageBoxWizard/E5MessageBoxWizardDialog.ui</Form> - <Form>Helpviewer/SslInfoDialog.ui</Form> <Form>Helpviewer/UrlBar/BookmarkInfoDialog.ui</Form> <Form>Helpviewer/Download/DownloadItem.ui</Form> <Form>Helpviewer/Download/DownloadManager.ui</Form> <Form>Preferences/ConfigurationPages/TrayStarterPage.ui</Form> - <Form>Helpviewer/SslCertificatesDialog.ui</Form> <Form>Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui</Form> <Form>Plugins/CheckerPlugins/Pep8/Pep8CodeSelectionDialog.ui</Form> <Form>Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui</Form> @@ -1335,7 +1333,6 @@ <Form>Helpviewer/Feeds/FeedsManager.ui</Form> <Form>Helpviewer/Feeds/FeedEditDialog.ui</Form> <Form>Helpviewer/SiteInfo/SiteInfoDialog.ui</Form> - <Form>Helpviewer/SslInfoWidget.ui</Form> <Form>Helpviewer/UserAgent/UserAgentsDialog.ui</Form> <Form>Plugins/VcsPlugins/vcsMercurial/HgPhaseDialog.ui</Form> <Form>Helpviewer/PageScreenDialog.ui</Form> @@ -1380,6 +1377,9 @@ <Form>Network/IRC/IrcServerEditDialog.ui</Form> <Form>Network/IRC/IrcIdentitiesEditDialog.ui</Form> <Form>E5Gui/E5ZoomWidget.ui</Form> + <Form>E5Network/E5SslInfoWidget.ui</Form> + <Form>E5Network/E5SslInfoDialog.ui</Form> + <Form>E5Network/E5SslCertificatesDialog.ui</Form> </Forms> <Translations> <Translation>i18n/eric5_cs.qm</Translation>
--- a/i18n/eric5_cs.ts Fri Jan 18 19:31:43 2013 +0100 +++ b/i18n/eric5_cs.ts Fri Jan 18 19:50:13 2013 +0100 @@ -7413,49 +7413,288 @@ </message> </context> <context> + <name>E5SslCertificatesDialog</name> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="14"/> + <source>SSL Certificate Manager</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="27"/> + <source>&Servers</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="33"/> + <source>You have saved certificates identifying these servers:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="140"/> + <source>Certificate name</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="46"/> + <source>Server</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="145"/> + <source>Expiry Date</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="158"/> + <source>Press to view the selected certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="161"/> + <source>&View...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="168"/> + <source>Press to import a certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="171"/> + <source>&Import...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="181"/> + <source>Press to export the selected certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="184"/> + <source>&Export...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="194"/> + <source>Press to delete the selected certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="197"/> + <source>&Delete...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="126"/> + <source>Certificate &Authorities</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="132"/> + <source>You have saved certificates identifying these certification authorities:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="274"/> + <source>(Unknown)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="276"/> + <source>(Unknown common name)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source>Delete Server Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Import Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="363"/> + <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source>Delete CA Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source>Export Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="399"/> + <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="415"/> + <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> + <translation type="unfinished"><p>Soubor <b>{0}</b> již existuje.</p><p>Má se přepsat?</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="425"/> + <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> + <translation type="unfinished"></translation> + </message> +</context> +<context> <name>E5SslErrorHandler</name> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source>SSL Errors</source> <translation type="unfinished">SSL chyby</translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source><p>SSL Errors for <br /><b>{0}</b><ul><li>{1}</li></ul></p><p>Do you want to ignore these errors?</p></source> <translation type="unfinished"><p>SSL chyby pro <br /><b>{0}</b><ul><li>{1}</li></ul></p><p>Chcete tyto chyby ignorovat?</p></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source>Certificates</source> <translation type="unfinished">Certifikáty</translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source><p>Certificates:<br/>{0}<br/>Do you want to accept all these certificates?</p></source> <translation type="unfinished"><p>Certifikáty:<br/>{0}<br/>Chcete akceptovat všechny certifikáty?</p></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="184"/> - <source>Name: {0}</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="E5Network/E5SslErrorHandler.py" line="188"/> - <source><br/>Organization: {0}</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="E5Network/E5SslErrorHandler.py" line="192"/> - <source><br/>Issuer: {0}</source> - <translation type="unfinished"><br/>Vydatavel: {0}</translation> + <source>Name: {0}</source> + <translation type="unfinished"></translation> </message> <message> <location filename="E5Network/E5SslErrorHandler.py" line="196"/> + <source><br/>Organization: {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="200"/> + <source><br/>Issuer: {0}</source> + <translation type="unfinished"><br/>Vydatavel: {0}</translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="204"/> <source><br/>Not valid before: {0}<br/>Valid Until: {1}</source> <translation type="unfinished"><br/>Neplatný před: {0}<br/>Platný do: {1}</translation> </message> </context> <context> + <name>E5SslInfoDialog</name> + <message> + <location filename="E5Network/E5SslInfoDialog.ui" line="14"/> + <source>SSL Certificate Info</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>E5SslInfoWidget</name> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="17"/> + <source>This certificated has been blacklisted.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="24"/> + <source><b>Issued for</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="118"/> + <source>Common Name (CN)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="138"/> + <source>Organization (O)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="158"/> + <source>Organizational Unit (OU)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="91"/> + <source>Serialnumber</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="111"/> + <source><b>Issued by</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="178"/> + <source><b>Validity</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="185"/> + <source>Issued on</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="205"/> + <source>Expires on</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="225"/> + <source>This certificate is not valid yet or has expired.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="232"/> + <source><b>Fingerprints</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="239"/> + <source>SHA1-Fingerprint</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="259"/> + <source>MD5-Fingerprint</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.py" line="111"/> + <source><not part of the certificate></source> + <translation type="unfinished"></translation> + </message> +</context> +<context> <name>E5ToolBarDialog</name> <message> <location filename="E5Gui/E5ToolBarDialog.ui" line="14"/> @@ -17664,26 +17903,6 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/HelpWindow.py" line="1230"/> - <source>Manage Certificates</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1230"/> - <source>Manage Certificates...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1234"/> - <source>Manage the saved certificates</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1236"/> - <source><b>Manage Saved Certificates...</b><p>Opens a dialog to manage the saved certificates.</p></source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="Helpviewer/HelpWindow.py" line="1615"/> <source>VirusTotal</source> <translation type="unfinished"></translation> @@ -17958,6 +18177,26 @@ <source><p>The Qt Style Sheet file <b>{0}</b> could not be read.<br>Reason: {1}</p></source> <translation type="obsolete"><p>Soubor Qt Style Sheet <b>{0}</b> nelze vytvořit.</p><p>Důvod: {1}</p></translation> </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1234"/> + <source>Manage the saved SSL certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1236"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>Hg</name> @@ -19304,12 +19543,12 @@ <translation>Vynutit operaci</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="46"/> <source>Mercurial Move</source> <translation>Mercurial přesun</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="81"/> <source>Select target</source> <translation>Vybrat cíl</translation> </message> @@ -42168,240 +42407,9 @@ <context> <name>SslCertificatesDialog</name> <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="14"/> - <source>SSL Certificate Manager</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="27"/> - <source>&Servers</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="33"/> - <source>You have saved certificates identifying these servers:</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="140"/> - <source>Certificate name</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="46"/> - <source>Server</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="145"/> - <source>Expiry Date</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="158"/> - <source>Press to view the selected certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="161"/> - <source>&View...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="194"/> - <source>Press to delete the selected certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="197"/> - <source>&Delete...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="126"/> - <source>Certificate &Authorities</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="132"/> - <source>You have saved certificates identifying these certification authorities:</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="274"/> - <source>(Unknown)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="276"/> - <source>(Unknown common name)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> - <source>Delete Server Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> - <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="168"/> - <source>Press to import a certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="171"/> - <source>&Import...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="181"/> - <source>Press to export the selected certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="184"/> - <source>&Export...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> - <source>Import Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="363"/> - <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> - <source>Delete CA Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> - <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> - <source>Export Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="399"/> - <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="415"/> <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> - <translation type="unfinished"><p>Soubor <b>{0}</b> již existuje.</p><p>Má se přepsat?</p></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="425"/> - <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> - <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> - <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> - <translation type="unfinished"></translation> - </message> -</context> -<context> - <name>SslInfoDialog</name> - <message> - <location filename="Helpviewer/SslInfoDialog.ui" line="14"/> - <source>SSL Certificate Info</source> - <translation type="unfinished"></translation> - </message> -</context> -<context> - <name>SslInfoWidget</name> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="17"/> - <source>This certificated has been blacklisted.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="24"/> - <source><b>Issued for</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="118"/> - <source>Common Name (CN)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="138"/> - <source>Organization (O)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="158"/> - <source>Organizational Unit (OU)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="91"/> - <source>Serialnumber</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="111"/> - <source><b>Issued by</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="178"/> - <source><b>Validity</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="185"/> - <source>Issued on</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="205"/> - <source>Expires on</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="225"/> - <source>This certificate is not valid yet or has expired.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="232"/> - <source><b>Fingerprints</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="239"/> - <source>SHA1-Fingerprint</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="259"/> - <source>MD5-Fingerprint</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.py" line="111"/> - <source><not part of the certificate></source> - <translation type="unfinished"></translation> + <translation type="obsolete"><p>Soubor <b>{0}</b> již existuje.</p><p>Má se přepsat?</p></translation> </message> </context> <context> @@ -44064,12 +44072,12 @@ <translation>Cíl:</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="46"/> <source>Subversion Move</source> <translation>Subversion přesun</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="81"/> <source>Select target</source> <translation>Vybrat cíl</translation> </message> @@ -52047,7 +52055,7 @@ <context> <name>UrlBar</name> <message> - <location filename="Helpviewer/UrlBar/UrlBar.py" line="199"/> + <location filename="Helpviewer/UrlBar/UrlBar.py" line="198"/> <source>Unknown</source> <translation type="unfinished">Neznámý</translation> </message> @@ -52547,7 +52555,7 @@ <translation>Zjistit akt&ualizace...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2704"/> + <location filename="UI/UserInterface.py" line="2721"/> <source>Report Bug</source> <translation>Reportovat Bugy</translation> </message> @@ -52567,7 +52575,7 @@ <translation><b>Reportovat bug...</b><p>Otevře se dialog pro reportování bugu.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2319"/> + <location filename="UI/UserInterface.py" line="2336"/> <source>Unittest</source> <translation></translation> </message> @@ -52627,7 +52635,7 @@ <translation><b>Unittest Script</b><p>Spustit unittest s aktuálním skriptem.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3704"/> + <location filename="UI/UserInterface.py" line="3721"/> <source>Unittest Project</source> <translation>Unittest Projekt</translation> </message> @@ -52822,7 +52830,7 @@ <translation><b>Klávesové zkratky</b><p>Nastavení klávesových zkratek aplikace podle zvyklostí uživatele.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4793"/> + <location filename="UI/UserInterface.py" line="4810"/> <source>Export Keyboard Shortcuts</source> <translation>Exportovat klávesové zkratky</translation> </message> @@ -52842,7 +52850,7 @@ <translation><b>Export klávesových zkratek</b><p>Exportují se klávesové zkratky z aplikace.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4816"/> + <location filename="UI/UserInterface.py" line="4833"/> <source>Import Keyboard Shortcuts</source> <translation>Import klávesových zkratek</translation> </message> @@ -52862,62 +52870,62 @@ <translation><b>Import klávesových zkratek</b><p>Do aplikace se importují klávesové zkratky.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Activate current editor</source> <translation>Aktivovat aktuální editor</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Alt+Shift+E</source> <translation></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Ctrl+Alt+Tab</source> <translation></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Shift+Ctrl+Alt+Tab</source> <translation></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt4 Documentation</source> <translation>Qt4 dokumentace</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt&4 Documentation</source> <translation>Qt&4 dokumentace</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2013"/> + <location filename="UI/UserInterface.py" line="2027"/> <source>Open Qt4 Documentation</source> <translation>Otevřít Qt4 dokumentaci</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2014"/> + <location filename="UI/UserInterface.py" line="2028"/> <source><b>Qt4 Documentation</b><p>Display the Qt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>Qt4 dokumentace</b><p>Zobrazit Qt4 dokumentaci. V závislosti na vašich nastaveních zobrazí interní Eric prohlížeč nápovědy nebo spustí webový prohlížeč nebo Qt Assistant.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>PyQt4 Documentation</source> <translation>PyQt4 dokumentace</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>P&yQt4 Documentation</source> <translation>P&yQt4 dokumentace</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2037"/> + <location filename="UI/UserInterface.py" line="2051"/> <source>Open PyQt4 Documentation</source> <translation>Otevřít PyQt4 dokumentaci</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2038"/> + <location filename="UI/UserInterface.py" line="2052"/> <source><b>PyQt4 Documentation</b><p>Display the PyQt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>PyQt4 dokumentace</b><p>Zobrazit PyQt4 dokumentaci. V závislosti na vašich nastaveních zobrazí interní Eric prohlížeč nápovědy nebo spustí webový prohlížeč nebo Qt Assistant.</p></translation> </message> @@ -52942,172 +52950,172 @@ <translation type="obsolete"><b>Python dokumentace</b><p>Zobrazí python dokumentaci. Pokud není adresář dokumentace nastaven, tak ve Windows se dokumentace hledá v adresáři odkud se python spouští a na Unixu v doc adresáři <i>/usr/share/doc/packages/python/html</i>. Pokud chcete jiný, nastavte si proměnnou prostředí PYTHONDOCDIR.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2087"/> + <location filename="UI/UserInterface.py" line="2101"/> <source>Eric API Documentation</source> <translation>Eric API dokumentace</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2087"/> + <location filename="UI/UserInterface.py" line="2101"/> <source>&Eric API Documentation</source> <translation>&Eric API dokumentace</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2089"/> + <location filename="UI/UserInterface.py" line="2103"/> <source>Open Eric API Documentation</source> <translation>Otevřít Eric API dokumentaci</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2145"/> + <location filename="UI/UserInterface.py" line="2159"/> <source>&Unittest</source> <translation>&Unittest</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2162"/> + <location filename="UI/UserInterface.py" line="2176"/> <source>E&xtras</source> <translation>E&xtra funkce</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2174"/> + <location filename="UI/UserInterface.py" line="2188"/> <source>&Tools</source> <translation>&Nástroje</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2177"/> + <location filename="UI/UserInterface.py" line="2191"/> <source>Select Tool Group</source> <translation>Vybrat skupinu nástrojů</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2183"/> + <location filename="UI/UserInterface.py" line="2197"/> <source>Se&ttings</source> <translation>Nas&tavení</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2201"/> + <location filename="UI/UserInterface.py" line="2218"/> <source>&Window</source> <translation>O&kno</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2226"/> + <location filename="UI/UserInterface.py" line="2243"/> <source>&Toolbars</source> <translation>&Toolbary</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2251"/> + <location filename="UI/UserInterface.py" line="2268"/> <source>&Help</source> <translation>&Nápověda</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2318"/> + <location filename="UI/UserInterface.py" line="2335"/> <source>Tools</source> <translation>Nástroje</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2320"/> + <location filename="UI/UserInterface.py" line="2337"/> <source>Settings</source> <translation>Nastavení</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3927"/> + <location filename="UI/UserInterface.py" line="3944"/> <source>Help</source> <translation>Nápověda</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2322"/> + <location filename="UI/UserInterface.py" line="2339"/> <source>Profiles</source> <translation>Profily</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2653"/> + <location filename="UI/UserInterface.py" line="2670"/> <source><h3>Version Numbers</h3><table></source> <translation><h3>Čísla verzí</h3><table></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5482"/> + <location filename="UI/UserInterface.py" line="5508"/> <source></table></source> <translation></table></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2704"/> + <location filename="UI/UserInterface.py" line="2721"/> <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="2978"/> + <location filename="UI/UserInterface.py" line="2995"/> <source>Configure Tool Groups ...</source> <translation>Konfigurace Skupin nástrojů...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2981"/> + <location filename="UI/UserInterface.py" line="2998"/> <source>Configure current Tool Group ...</source> <translation>Konfigurace aktuální skupiny nástrojů...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3030"/> + <location filename="UI/UserInterface.py" line="3047"/> <source>&Builtin Tools</source> <translation>&Vestavěné nástroje</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3704"/> + <location filename="UI/UserInterface.py" line="3721"/> <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="UI/UserInterface.py" line="4035"/> + <location filename="UI/UserInterface.py" line="4052"/> <source>Problem</source> <translation>Problém</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4187"/> + <location filename="UI/UserInterface.py" line="4204"/> <source>Process Generation Error</source> <translation>Chyba v procesu generování</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3927"/> + <location filename="UI/UserInterface.py" line="3944"/> <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="3958"/> + <location filename="UI/UserInterface.py" line="3975"/> <source><p>Could not start the help viewer.<br>Ensure that it is available as <b>hh</b>.</p></source> <translation><p>Nemohu spustit prohlížeč nápovědy.<br>Ověřte jestli je dostupný jako <b>hh</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4553"/> + <location filename="UI/UserInterface.py" line="4570"/> <source>Documentation Missing</source> <translation>Dokumentace chybí</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4538"/> + <location filename="UI/UserInterface.py" line="4555"/> <source>Documentation</source> <translation>Dokumentace</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4447"/> + <location filename="UI/UserInterface.py" line="4464"/> <source><p>The PyQt4 documentation starting point has not been configured.</p></source> <translation><p>Adresář PyQt4 dokumentace není nakonfigurován.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4937"/> + <location filename="UI/UserInterface.py" line="4963"/> <source>Save tasks</source> <translation>Uložit úlohy</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4959"/> + <location filename="UI/UserInterface.py" line="4985"/> <source>Read tasks</source> <translation>Načíst úlohy</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5169"/> + <location filename="UI/UserInterface.py" line="5195"/> <source>Drop Error</source> <translation>Zahodit chybu</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5448"/> + <location filename="UI/UserInterface.py" line="5474"/> <source>Error during updates check</source> <translation>Chyba během zjišťování aktualizací</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5435"/> + <location filename="UI/UserInterface.py" line="5461"/> <source>Update available</source> <translation>Byla nalezena aktualizace</translation> </message> @@ -53122,17 +53130,17 @@ <translation>Zobrazit externí nás&troje</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5448"/> + <location filename="UI/UserInterface.py" line="5474"/> <source>Could not perform updates check.</source> <translation>Kontrolu updatů nelze provést.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5307"/> + <location filename="UI/UserInterface.py" line="5333"/> <source>&Cancel</source> <translation>&Zrušit</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5509"/> + <location filename="UI/UserInterface.py" line="5535"/> <source>First time usage</source> <translation>Spuštěno poprvé</translation> </message> @@ -53142,62 +53150,62 @@ <translation>Inicializace Plugin manažera...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2237"/> + <location filename="UI/UserInterface.py" line="2254"/> <source>P&lugins</source> <translation>P&luginy</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2323"/> + <location filename="UI/UserInterface.py" line="2340"/> <source>Plugins</source> <translation>Pluginy</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>Plugin Infos</source> <translation>Plugin Infa</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1951"/> + <location filename="UI/UserInterface.py" line="1965"/> <source>Show Plugin Infos</source> <translation>Zobrazit Plugin infa</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1952"/> + <location filename="UI/UserInterface.py" line="1966"/> <source><b>Plugin Infos...</b><p>This opens a dialog, that show some information about loaded plugins.</p></source> <translation><b>Plugin Infa</b><p>Otevře dialog, který zobrazí informace o načtených pluginech.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>&Plugin Infos...</source> <translation>&Plugin Infa...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3038"/> + <location filename="UI/UserInterface.py" line="3055"/> <source>&Plugin Tools</source> <translation>&Plugin nástroje</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1974"/> + <location filename="UI/UserInterface.py" line="1988"/> <source>Uninstall Plugin</source> <translation>Odinstalovat plugin</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1971"/> + <location filename="UI/UserInterface.py" line="1985"/> <source>&Uninstall Plugin...</source> <translation>&Odinstalovat plugin...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1975"/> + <location filename="UI/UserInterface.py" line="1989"/> <source><b>Uninstall Plugin...</b><p>This opens a dialog to uninstall a plugin.</p></source> <translation><b>Odinstalovat plugin...</b><p>Otevře dialog pro odinstalaci pluginu.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3128"/> + <location filename="UI/UserInterface.py" line="3145"/> <source>&Show all</source> <translation>&Zobrazit vše</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3130"/> + <location filename="UI/UserInterface.py" line="3147"/> <source>&Hide all</source> <translation>&Skrýt vše</translation> </message> @@ -53207,7 +53215,7 @@ <translation>Aktivace pluginů...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2167"/> + <location filename="UI/UserInterface.py" line="2181"/> <source>Wi&zards</source> <translation>&Průvodci</translation> </message> @@ -53237,42 +53245,42 @@ <translation type="obsolete">Nelze stáhnout soubor s verzemi.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5469"/> + <location filename="UI/UserInterface.py" line="5495"/> <source><h3>Available versions</h3><table></source> <translation><h3>Dostupné verze</h3><table></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1982"/> + <location filename="UI/UserInterface.py" line="1996"/> <source>Plugin Repository</source> <translation>Repozitář pluginů</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1982"/> + <location filename="UI/UserInterface.py" line="1996"/> <source>Plugin &Repository...</source> <translation>&Repozitář pluginů...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1985"/> + <location filename="UI/UserInterface.py" line="1999"/> <source>Show Plugins available for download</source> <translation>Zobrazit pluginy dostupné ke stažení</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1987"/> + <location filename="UI/UserInterface.py" line="2001"/> <source><b>Plugin Repository...</b><p>This opens a dialog, that shows a list of plugins available on the Internet.</p></source> <translation><b>Repozitář pluginů...</b><p>Otevře se dialog, který zobrazí seznam pluginů dostupných ke stažení přes internet.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1963"/> + <location filename="UI/UserInterface.py" line="1977"/> <source>Install Plugins</source> <translation>Instalovat pluginy</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1960"/> + <location filename="UI/UserInterface.py" line="1974"/> <source>&Install Plugins...</source> <translation>&Instalovat pluginy...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1964"/> + <location filename="UI/UserInterface.py" line="1978"/> <source><b>Install Plugins...</b><p>This opens a dialog to install or update plugins.</p></source> <translation><b>Instalovat pluginy...</b><p>Otevře dialog pro instalaci nebo aktualizaci pluginů.</p></translation> </message> @@ -53327,7 +53335,7 @@ <translation>Obnovit manažer nástrojových lišt...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4135"/> + <location filename="UI/UserInterface.py" line="4152"/> <source>External Tools</source> <translation>Externí nástroje</translation> </message> @@ -53362,22 +53370,22 @@ <translation type="obsolete">Proh&lížeč šablon</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4974"/> + <location filename="UI/UserInterface.py" line="5000"/> <source>Save session</source> <translation>Uložit relaci</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4997"/> + <location filename="UI/UserInterface.py" line="5023"/> <source>Read session</source> <translation>Načíst relaci</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2472"/> + <location filename="UI/UserInterface.py" line="2489"/> <source><p>This part of the status bar displays the current editors encoding.</p></source> <translation><p>Tato část status baru zobrazuje aktuální kódování editorů.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2486"/> + <location filename="UI/UserInterface.py" line="2503"/> <source><p>This part of the status bar displays an indication of the current editors files writability.</p></source> <translation><p>Tato část status baru zobrazuje indikátor práva zápisu editoru do souboru.</p></translation> </message> @@ -53407,7 +53415,7 @@ <translation><b>Požadavek na vlastnost...</b><p>Otevře dialog pro odeslání požadavku.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2465"/> + <location filename="UI/UserInterface.py" line="2482"/> <source><p>This part of the status bar displays the current editors language.</p></source> <translation><p>Tato část status baru zobrazuje aktuální jazyk editoru.</p></translation> </message> @@ -53417,12 +53425,12 @@ <translation type="obsolete"><p>Tato část statusbaru zobrazuje jméno souboru v aktuálním editoru.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2493"/> + <location filename="UI/UserInterface.py" line="2510"/> <source><p>This part of the status bar displays the line number of the current editor.</p></source> <translation><p>Tato část status baru zobrazuje číslo řádku v aktuálním editoru.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2500"/> + <location filename="UI/UserInterface.py" line="2517"/> <source><p>This part of the status bar displays the cursor position of the current editor.</p></source> <translation><p>Tato část status baru zobrazuje pozici kurzoru v aktuálním editoru.</p></translation> </message> @@ -53467,12 +53475,12 @@ <translation><b>Přepnout vodorovnou nástrojovou lištu</b><p>Pokud je vodorovná nástrojová lišta skryta, tak se zobrazí. Je-li zobrazena, skryje se.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2946"/> + <location filename="UI/UserInterface.py" line="2963"/> <source>Restart application</source> <translation>Restartovat aplikaci</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2946"/> + <location filename="UI/UserInterface.py" line="2963"/> <source>The application needs to be restarted. Do it now?</source> <translation>Aplikace potřebuje restartovat. Má se provést nyní?</translation> </message> @@ -53512,22 +53520,22 @@ <translation></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2246"/> + <location filename="UI/UserInterface.py" line="2263"/> <source>Configure...</source> <translation>Konfigurovat...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2479"/> + <location filename="UI/UserInterface.py" line="2496"/> <source><p>This part of the status bar displays the current editors eol setting.</p></source> <translation><p>Tato část status baru zobrazuje eol nastavení v aktuálním editoru.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Switch between tabs</source> <translation>Přepnout mezi taby</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Ctrl+1</source> <translation></translation> </message> @@ -53572,12 +53580,12 @@ <translation><b>Import předvoleb</b><p>Import dříve exportované konfigurace.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Show next</source> <translation>Zobrazit další</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Show previous</source> <translation>Zobrazit předchozí</translation> </message> @@ -53707,32 +53715,32 @@ <translation>Editor &ikon...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3879"/> + <location filename="UI/UserInterface.py" line="3896"/> <source>Qt 3 support</source> <translation>Qt 3 podpora</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2105"/> + <location filename="UI/UserInterface.py" line="2119"/> <source>PySide Documentation</source> <translation>PySide dokumentace</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2105"/> + <location filename="UI/UserInterface.py" line="2119"/> <source>Py&Side Documentation</source> <translation>Py&Side dokumentace</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2107"/> + <location filename="UI/UserInterface.py" line="2121"/> <source>Open PySide Documentation</source> <translation>Otevřít PySide dokumentaci</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2108"/> + <location filename="UI/UserInterface.py" line="2122"/> <source><b>PySide Documentation</b><p>Display the PySide Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>PySide dokumentace</b><p>Zobrazit PySide dokumentaci. V závislosti na vašich nastaveních zobrazí interní Eric prohlížeč nápovědy nebo spustí webový prohlížeč nebo Qt Assistant.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4538"/> + <location filename="UI/UserInterface.py" line="4555"/> <source><p>The PySide documentation starting point has not been configured.</p></source> <translation><p>Počátek dokumentace PySide nebyl nastaven.</p></translation> </message> @@ -53797,91 +53805,91 @@ <translation><b>Zobrazit externí nástroje</b><p>Otevře dialog pro zobrazení cesty a verze externích nástrojů používaných Eric5.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2090"/> + <location filename="UI/UserInterface.py" line="2104"/> <source><b>Eric API Documentation</b><p>Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric5 installation directory.</p></source> <translation><b>Eric API dokumentace</b><p>Zobrazit Eric API dokumentaci. Umístění dokumentace je v podadresáři Documentation/Source v instalačním adresáři eric5.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2567"/> + <location filename="UI/UserInterface.py" line="2584"/> <source>External Tools/{0}</source> <translation>Externí nástroje/{0}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3879"/> + <location filename="UI/UserInterface.py" line="3896"/> <source>Qt v.3 is not supported by eric5.</source> <translation>Qt v.3 není podporováno v eric5.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4035"/> + <location filename="UI/UserInterface.py" line="4052"/> <source><p>The file <b>{0}</b> does not exist or is zero length.</p></source> <translation><p>Soubor <b>{0}</b> neexistuje nebo má nulovou délku.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3799"/> + <location filename="UI/UserInterface.py" line="3816"/> <source><p>Could not start Qt-Designer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Nemohu spustit Qt-Designer.<br>Ověřte jestli je dostupný jako <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3856"/> + <location filename="UI/UserInterface.py" line="3873"/> <source><p>Could not start Qt-Linguist.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Nemohu spustit Qt-Linguist.<br>Ověřte jestli je dostupný jako <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3900"/> + <location filename="UI/UserInterface.py" line="3917"/> <source><p>Could not start Qt-Assistant.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Nemohu spustit Qt-Assistant.<br>Ověřte jestli je dostupný jako <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3939"/> + <location filename="UI/UserInterface.py" line="3956"/> <source><p>Could not start custom viewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Nemohu spustit aktuální prohlížeč.<br>Ověřte jestli je dostupný jako <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3998"/> + <location filename="UI/UserInterface.py" line="4015"/> <source><p>Could not start UI Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Nemohu spustit UI Previewer.<br>Ověřte jestli je dostupný jako <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4043"/> + <location filename="UI/UserInterface.py" line="4060"/> <source><p>Could not start Translation Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Nemohu spustit Previewer překladů.<br>Ověřte jestli je dostupný jako <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4062"/> + <location filename="UI/UserInterface.py" line="4079"/> <source><p>Could not start SQL Browser.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Nelze spustit SQL Browser.<br>Ujistěte se, že je dostupný jako <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4129"/> + <location filename="UI/UserInterface.py" line="4146"/> <source>No tool entry found for external tool '{0}' in tool group '{1}'.</source> <translation>V externím nástroji '{0}' ve skupině '{1}' nebyl záznam nástroje nalezen.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4135"/> + <location filename="UI/UserInterface.py" line="4152"/> <source>No toolgroup entry '{0}' found.</source> <translation>Skupina nástrojů '{0}' nenalezena. </translation> </message> <message> - <location filename="UI/UserInterface.py" line="4171"/> + <location filename="UI/UserInterface.py" line="4188"/> <source>Starting process '{0} {1}'. </source> <translation>Spouštím proces '{0} {1}'. </translation> </message> <message> - <location filename="UI/UserInterface.py" line="4187"/> + <location filename="UI/UserInterface.py" line="4204"/> <source><p>Could not start the tool entry <b>{0}</b>.<br>Ensure that it is available as <b>{1}</b>.</p></source> <translation><p>Nemohu spustit příkaz <b>{0}</b><br>Ověřte jestli je dostupný jako <b>{1}</b>. </p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4264"/> + <location filename="UI/UserInterface.py" line="4281"/> <source>Process '{0}' has exited. </source> <translation>Proces '{0}' byl ukončen. </translation> </message> <message> - <location filename="UI/UserInterface.py" line="4553"/> + <location filename="UI/UserInterface.py" line="4570"/> <source><p>The documentation starting point "<b>{0}</b>" could not be found.</p></source> <translation><p>Adresář dokumentace "<b>{0}</b>" nebyl nalezen.</p></translation> </message> @@ -53901,12 +53909,12 @@ <translation type="obsolete">Soubor klávesových zkratek (*.e4k *.e4kz)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4937"/> + <location filename="UI/UserInterface.py" line="4963"/> <source><p>The tasks file <b>{0}</b> could not be written.</p></source> <translation><p>Do souboru s úlohami <b>{0}</b> nelze zapisovat.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4959"/> + <location filename="UI/UserInterface.py" line="4985"/> <source><p>The tasks file <b>{0}</b> could not be read.</p></source> <translation><p>Soubor s úlohami <b>{0}</b> nelze načíst.</p></translation> </message> @@ -53916,12 +53924,12 @@ <translation type="obsolete"><p>Soubor s úlohami <b>{0}</b> je v nepodporovaném formátu.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4974"/> + <location filename="UI/UserInterface.py" line="5000"/> <source><p>The session file <b>{0}</b> could not be written.</p></source> <translation><p>Zápis do souboru relace session <b>{0}</b> se nezdařil.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4997"/> + <location filename="UI/UserInterface.py" line="5023"/> <source><p>The session file <b>{0}</b> could not be read.</p></source> <translation><p>Soubor relace session <b>{0}</b> nelze přečíst.</p></translation> </message> @@ -53931,27 +53939,27 @@ <translation type="obsolete"><p>Soubor relace (session) <b>{0}</b> je v nepodporovaném formátu.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5169"/> + <location filename="UI/UserInterface.py" line="5195"/> <source><p><b>{0}</b> is not a file.</p></source> <translation><p><b>{0}</b> není soubor.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5312"/> + <location filename="UI/UserInterface.py" line="5338"/> <source>Trying host {0}</source> <translation>Zkouším host {0}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5435"/> + <location filename="UI/UserInterface.py" line="5461"/> <source>The update to <b>{0}</b> of eric5 is available at <b>{1}</b>. Would you like to get it?</source> <translation>Aktualizace <b>{0}</b> eric5 je připravena na <b>{1}</b>. Chcete ji stáhnout a nainstalovat?</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5444"/> + <location filename="UI/UserInterface.py" line="5470"/> <source>Eric5 is up to date</source> <translation>Eric5 je aktuální</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5444"/> + <location filename="UI/UserInterface.py" line="5470"/> <source>You are using the latest version of eric5</source> <translation>Používáte poslední verzi eric5</translation> </message> @@ -53961,7 +53969,7 @@ <translation type="obsolete"><p>SSL chyby:</p><p>{0}</p><p>Chcete tyto chyby ignorovat?</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5509"/> + <location filename="UI/UserInterface.py" line="5535"/> <source>eric5 has not been configured yet. The configuration dialog will be started.</source> <translation>eric5 nebyl ještě nakonfigurován. Bude spuštěn konfigurační dialog.</translation> </message> @@ -54016,72 +54024,72 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4816"/> + <location filename="UI/UserInterface.py" line="4833"/> <source>Keyboard shortcut file (*.e4k)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2051"/> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python 3 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2051"/> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python &3 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2053"/> + <location filename="UI/UserInterface.py" line="2067"/> <source>Open Python 3 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2054"/> - <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python 2 Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python &2 Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="UI/UserInterface.py" line="2068"/> + <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python 2 Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python &2 Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2082"/> <source>Open Python 2 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2069"/> + <location filename="UI/UserInterface.py" line="2083"/> <source><b>Python 2 Documentation</b><p>Display the Python 2 documentation. If no documentation directory is configured, the location of the Python 2 documentation is assumed to be the doc directory underneath the location of the configured Python 2 executable on Windows and <i>/usr/share/doc/packages/python/html/python-docs-html</i> on Unix. Set PYTHON2DOCDIR in your environment to override this. </p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <source>Error getting versions information</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5356"/> + <location filename="UI/UserInterface.py" line="5382"/> <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="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <source>Open Browser</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <source>Could not start a web browser</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <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> @@ -54192,12 +54200,12 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4109"/> + <location filename="UI/UserInterface.py" line="4126"/> <source><p>Could not start Snapshot tool.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5527"/> + <location filename="UI/UserInterface.py" line="5553"/> <source>Select Workspace Directory</source> <translation type="unfinished"></translation> </message> @@ -54427,7 +54435,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2206"/> + <location filename="UI/UserInterface.py" line="2223"/> <source>&Windows</source> <translation type="unfinished">&Windows</translation> </message> @@ -54502,30 +54510,50 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt5 Documentation</source> <translation type="unfinished">Qt4 dokumentace {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt&5 Documentation</source> <translation type="unfinished">Qt&4 dokumentace {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2025"/> + <location filename="UI/UserInterface.py" line="2039"/> <source>Open Qt5 Documentation</source> <translation type="unfinished">Otevřít Qt4 dokumentaci {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2026"/> + <location filename="UI/UserInterface.py" line="2040"/> <source><b>Qt5 Documentation</b><p>Display the Qt5 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation type="unfinished"><b>Qt4 dokumentace</b><p>Zobrazit Qt4 dokumentaci. V závislosti na vašich nastaveních zobrazí interní Eric prohlížeč nápovědy nebo spustí webový prohlížeč nebo Qt Assistant.</p> {5 ?} {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2510"/> + <location filename="UI/UserInterface.py" line="2527"/> <source><p>This part of the status bar allows zooming the current editor, shell or terminal.</p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1920"/> + <source>Manage the saved SSL certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1922"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>UserPropertiesDialog</name>
--- a/i18n/eric5_de.ts Fri Jan 18 19:31:43 2013 +0100 +++ b/i18n/eric5_de.ts Fri Jan 18 19:50:13 2013 +0100 @@ -7101,49 +7101,288 @@ </message> </context> <context> + <name>E5SslCertificatesDialog</name> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="14"/> + <source>SSL Certificate Manager</source> + <translation>SSL Zertifikatmanager</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="27"/> + <source>&Servers</source> + <translation>&Server</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="33"/> + <source>You have saved certificates identifying these servers:</source> + <translation>Sie haben Zertifikate für diese Server gespeichert:</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="140"/> + <source>Certificate name</source> + <translation>Zertifikatname</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="46"/> + <source>Server</source> + <translation>Server</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="145"/> + <source>Expiry Date</source> + <translation>Läuft ab am</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="158"/> + <source>Press to view the selected certificate</source> + <translation>Drücken, um das ausgewählte Zertifikat anzusehen</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="161"/> + <source>&View...</source> + <translation>&Ansehen...</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="168"/> + <source>Press to import a certificate</source> + <translation>Drücken, um ein Zertifikat zu importieren</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="171"/> + <source>&Import...</source> + <translation>&Importieren...</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="181"/> + <source>Press to export the selected certificate</source> + <translation>Drücken, um das ausgewählte Zertifikat zu exportieren</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="184"/> + <source>&Export...</source> + <translation>&Exportieren...</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="194"/> + <source>Press to delete the selected certificate</source> + <translation>Drücken, um das ausgewählte Zertifikat zu löschen</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="197"/> + <source>&Delete...</source> + <translation>&Löschen...</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="126"/> + <source>Certificate &Authorities</source> + <translation>&Zertifizierungsstellen</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="132"/> + <source>You have saved certificates identifying these certification authorities:</source> + <translation>Sie haben Zertifikate für diese Zertifizierungsstellen gespeichert:</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="274"/> + <source>(Unknown)</source> + <translation>(Unbekannt)</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="276"/> + <source>(Unknown common name)</source> + <translation>(Unbekannter allgemeiner Name)</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source>Delete Server Certificate</source> + <translation>Serverzertifikat löschen</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> + <translation><p>Soll das Serverzertifikat wirklich gelöscht werden?</p><p>{0}</p><p>Wenn das Serverzertifikat gelöscht wird, werden die normalen Sicherheitsprüfungen reaktiviert und der Server muss ein gültiges Zertifikat vorweisen.</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Import Certificate</source> + <translation>Zertifikat importieren</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="363"/> + <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> + <translation><p>Das Zertifikat <b>{0}</b> existiert bereits. Überspringe es.</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source>Delete CA Certificate</source> + <translation>Zertifikat einer Zertifizierungsstelle löschen</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> + <translation><p>Soll das Zertifikat der Zertifizierungsstelle wirklich gelöscht werden?</p><p>{0}</p><p>Wenn das Zertifikat einer Zertifizierungsstelle gelöscht wird, vertraut der Browser keinem Zertifikat, das von dieser Zertifizierungsstelle herausgegeben wurde.</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source>Export Certificate</source> + <translation>Zertifikat exportieren</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="399"/> + <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> + <translation>Zertifikat Datei (PEM) (*.pem);;Zertifikat Datei (DER) (*.der)</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="415"/> + <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> + <translation><p>Die Datei <b>{0}</b> existiert bereits. Überschreiben?</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="425"/> + <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> + <translation><p>Das Zertifikat konnte nicht in die Datei <b>{0}</b> geschrieben werden.</p><p>Fehler: {1}</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> + <translation>Zertifikat Dateien (*.pem *.crt *.der *.cer *.ca);;Alle Dateien (*)</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> + <translation><p>Das Zertifikat konnte nicht aus der Datei <b>{0}</b> gelesen werden.</p><p>Fehler: {1}</p></translation> + </message> +</context> +<context> <name>E5SslErrorHandler</name> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source>SSL Errors</source> <translation>SSL Fehler</translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source><p>SSL Errors for <br /><b>{0}</b><ul><li>{1}</li></ul></p><p>Do you want to ignore these errors?</p></source> <translation><p>SSL Fehler für <br /><b>{0}</b><ul><li>{1}</li></ul></p><p>Sollen diese Fehler ignoriert werden?</p></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source>Certificates</source> <translation>Zertifikate</translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source><p>Certificates:<br/>{0}<br/>Do you want to accept all these certificates?</p></source> <translation><p>Zertifikate:<br/>{0}<br/>Sollen alle diese Zertifikate akzeptiert werden?</p></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="184"/> - <source>Name: {0}</source> - <translation>Name: {0}</translation> - </message> - <message> - <location filename="E5Network/E5SslErrorHandler.py" line="188"/> - <source><br/>Organization: {0}</source> - <translation><br/>Organisation: {0}</translation> - </message> - <message> <location filename="E5Network/E5SslErrorHandler.py" line="192"/> - <source><br/>Issuer: {0}</source> - <translation><br/>Aussteller: {0}</translation> + <source>Name: {0}</source> + <translation>Name: {0}</translation> </message> <message> <location filename="E5Network/E5SslErrorHandler.py" line="196"/> + <source><br/>Organization: {0}</source> + <translation><br/>Organisation: {0}</translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="200"/> + <source><br/>Issuer: {0}</source> + <translation><br/>Aussteller: {0}</translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="204"/> <source><br/>Not valid before: {0}<br/>Valid Until: {1}</source> <translation><br/>Gültig ab: {0}<br/>Gültig bis: {1}</translation> </message> </context> <context> + <name>E5SslInfoDialog</name> + <message> + <location filename="E5Network/E5SslInfoDialog.ui" line="14"/> + <source>SSL Certificate Info</source> + <translation>SSL Zertifikatsinformationen</translation> + </message> +</context> +<context> + <name>E5SslInfoWidget</name> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="17"/> + <source>This certificated has been blacklisted.</source> + <translation>Dieses Zertifikat steht auf der schwarzen Liste.</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="24"/> + <source><b>Issued for</b></source> + <translation><b>Ausgestellt für</b></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="118"/> + <source>Common Name (CN)</source> + <translation>Allgemeiner Name (CN)</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="138"/> + <source>Organization (O)</source> + <translation>Organisation (O)</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="158"/> + <source>Organizational Unit (OU)</source> + <translation>Organisationseinheit (OU)</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="91"/> + <source>Serialnumber</source> + <translation>Seriennummer</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="111"/> + <source><b>Issued by</b></source> + <translation><b>Ausgestellt von</b></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="178"/> + <source><b>Validity</b></source> + <translation><b>Gültigkeit</b></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="185"/> + <source>Issued on</source> + <translation>Ausgestellt am</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="205"/> + <source>Expires on</source> + <translation>Läuft ab am</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="225"/> + <source>This certificate is not valid yet or has expired.</source> + <translation>Dieses Zertifikat ist noch nicht gültig oder ist abgelaufen.</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="232"/> + <source><b>Fingerprints</b></source> + <translation><b>Prüfsummen</b></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="239"/> + <source>SHA1-Fingerprint</source> + <translation>SHA1-Prüfsumme</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="259"/> + <source>MD5-Fingerprint</source> + <translation>MD5-Prüfsumme</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.py" line="111"/> + <source><not part of the certificate></source> + <translation><kein Teil des Zertifikates></translation> + </message> +</context> +<context> <name>E5ToolBarDialog</name> <message> <location filename="E5Gui/E5ToolBarDialog.ui" line="14"/> @@ -17088,26 +17327,6 @@ <translation><b>Downloads</b><p>Zeig das Downloadsfenster an.</p></translation> </message> <message> - <location filename="Helpviewer/HelpWindow.py" line="1230"/> - <source>Manage Certificates</source> - <translation>Zertifikate verwalten</translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1230"/> - <source>Manage Certificates...</source> - <translation>Zertifikate verwalten...</translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1234"/> - <source>Manage the saved certificates</source> - <translation>Verwalten der gespeicherten Zertifikate</translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1236"/> - <source><b>Manage Saved Certificates...</b><p>Opens a dialog to manage the saved certificates.</p></source> - <translation><b>Gespeicherte Zertifikate verwalten...</b><p>Öffnet einen Dialog zur Verwaltung gespeicherter Zertifikate.</p></translation> - </message> - <message> <location filename="Helpviewer/HelpWindow.py" line="1615"/> <source>VirusTotal</source> <translation>VirusTotal</translation> @@ -17373,6 +17592,26 @@ <source><b>GreaseMonkey Scripts...</b><p>Opens a dialog to configure the available GreaseMonkey Scripts.</p></source> <translation><b>GreaseMonkey Skripte...</b><p>Öffnet einen Dialog zur Konfiguration der verfügbaren GreaseMonkey Skripte.</p></translation> </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates</source> + <translation>SSL Zertifikate verwalten</translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates...</source> + <translation>SSL Zertifikate verwalten...</translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1234"/> + <source>Manage the saved SSL certificates</source> + <translation>Verwalten der gespeicherten SSL Zertifikate</translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1236"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation><b>SSL Zertifikate verwalten...</b><p>Öffnet einen Dialog zur Verwaltung gespeicherter SSL Zertifikate.</p></translation> + </message> </context> <context> <name>Hg</name> @@ -18671,12 +18910,12 @@ <translation>Operation erzwingen</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="46"/> <source>Mercurial Move</source> <translation>Mercurial Move</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="81"/> <source>Select target</source> <translation>Wähle Ziel aus</translation> </message> @@ -40492,245 +40731,6 @@ </message> </context> <context> - <name>SslCertificatesDialog</name> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="14"/> - <source>SSL Certificate Manager</source> - <translation>SSL Zertifikatmanager</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="27"/> - <source>&Servers</source> - <translation>&Server</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="33"/> - <source>You have saved certificates identifying these servers:</source> - <translation>Sie habe Zertifikate für diese Server gespeichert:</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="140"/> - <source>Certificate name</source> - <translation>Zertifikatname</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="46"/> - <source>Server</source> - <translation>Server</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="145"/> - <source>Expiry Date</source> - <translation>Läuft ab am</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="158"/> - <source>Press to view the selected certificate</source> - <translation>Drücken, um das ausgewählte Zertifikat anzusehen</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="161"/> - <source>&View...</source> - <translation>&Ansehen...</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="194"/> - <source>Press to delete the selected certificate</source> - <translation>Drücken, um das ausgewählte Zertifikat zu löschen</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="197"/> - <source>&Delete...</source> - <translation>&Löschen...</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="126"/> - <source>Certificate &Authorities</source> - <translation>&Zertifizierungsstellen</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="132"/> - <source>You have saved certificates identifying these certification authorities:</source> - <translation>Sie habe Zertifikate für diese Zertifizierungsstellen gespeichert:</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="274"/> - <source>(Unknown)</source> - <translation>(Unbekannt)</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="276"/> - <source>(Unknown common name)</source> - <translation>(Unbekannter allgemeiner Name)</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> - <source>Delete Server Certificate</source> - <translation>Serverzertifikat löschen</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> - <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> - <translation><p>Soll das Serverzertifikat wirklich gelöscht werden?</p><p>{0}</p><p>Wenn das Serverzertifikat gelöscht wird, werden die normalen Sicherheitsprüfungen reaktiviert und der Server muss ein gültiges Zertifikat vorweisen.</p></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="168"/> - <source>Press to import a certificate</source> - <translation>Drücken, um ein Zertifikat zu importieren</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="171"/> - <source>&Import...</source> - <translation>&Importieren...</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="181"/> - <source>Press to export the selected certificate</source> - <translation>Drücken, um das ausgewählte Zertifikat zu exportieren</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="184"/> - <source>&Export...</source> - <translation>&Exportieren...</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> - <source>Import Certificate</source> - <translation>Zertifikat importieren</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="363"/> - <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> - <translation><p>Das Zertifikat <b>{0}</b> existiert bereits. Überspringe es.</p></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> - <source>Delete CA Certificate</source> - <translation>Zertifikat einer Zertifizierungsstelle löschen</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> - <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> - <translation><p>Soll das Zertifikat der Zertifizierungsstelle wirklich gelöscht werden?</p><p>{0}</p><p>Wenn das Zertifikat einer Zertifizierungsstelle gelöscht wird, vertraut der browser keinem Zertifikat, das von dieser Zertifizierungsstelle herausgegeben wurde.</p></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> - <source>Export Certificate</source> - <translation>Zertifikat exportieren</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="399"/> - <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> - <translation>Zertifikat Datei (PEM) (*.pem);;Zertifikat Datei (DER) (*.der)</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="415"/> - <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> - <translation><p>Die Datei <b>{0}</b> existiert bereits. Überschreiben?</p></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="425"/> - <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> - <translation><p>Das Zertifikat konnte nicht in die Datei <b>{0}</b> geschrieben werden.</p><p>Fehler: {1}</p></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> - <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> - <translation>Zertifikat Dateien (*.pem *.crt *.der *.cer *.ca);;Alle Dateien (*)</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> - <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> - <translation><p>Das Zertifikat konnte nicht aus der Datei <b>{0}</b> gelesen werden.</p><p>Fehler: {1}</p></translation> - </message> -</context> -<context> - <name>SslInfoDialog</name> - <message> - <location filename="Helpviewer/SslInfoDialog.ui" line="14"/> - <source>SSL Certificate Info</source> - <translation>SSL Zertifikat</translation> - </message> -</context> -<context> - <name>SslInfoWidget</name> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="17"/> - <source>This certificated has been blacklisted.</source> - <translation>Dieses Zertifikat steht auf der schwarzen Liste.</translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="24"/> - <source><b>Issued for</b></source> - <translation><b>Ausgestellt für</b></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="118"/> - <source>Common Name (CN)</source> - <translation>Allgemeiner Name (CN)</translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="138"/> - <source>Organization (O)</source> - <translation>Organisation (O)</translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="158"/> - <source>Organizational Unit (OU)</source> - <translation>Organisationseinheit (OU)</translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="91"/> - <source>Serialnumber</source> - <translation>Seriennummer</translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="111"/> - <source><b>Issued by</b></source> - <translation><b>Ausgestellt von</b></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="178"/> - <source><b>Validity</b></source> - <translation><b>Gültigkeit</b></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="185"/> - <source>Issued on</source> - <translation>Ausgestellt am</translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="205"/> - <source>Expires on</source> - <translation>Läuft ab am</translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="225"/> - <source>This certificate is not valid yet or has expired.</source> - <translation>Dieses Zertifikat ist noch nicht gültig oder ist abgelaufen.</translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="232"/> - <source><b>Fingerprints</b></source> - <translation><b>Fingerabdrücke</b></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="239"/> - <source>SHA1-Fingerprint</source> - <translation>SHA1-Fingerabdruck</translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="259"/> - <source>MD5-Fingerprint</source> - <translation>MD5-Fingerabdruck</translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.py" line="111"/> - <source><not part of the certificate></source> - <translation><kein Teil des Zertifikates></translation> - </message> -</context> -<context> <name>StartCoverageDialog</name> <message> <location filename="Debugger/StartCoverageDialog.ui" line="14"/> @@ -42340,12 +42340,12 @@ <context> <name>SvnCopyDialog</name> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="46"/> <source>Subversion Move</source> <translation>Subversion Verschieben</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="81"/> <source>Select target</source> <translation>Wähle Ziel aus</translation> </message> @@ -50137,7 +50137,7 @@ <context> <name>UrlBar</name> <message> - <location filename="Helpviewer/UrlBar/UrlBar.py" line="199"/> + <location filename="Helpviewer/UrlBar/UrlBar.py" line="198"/> <source>Unknown</source> <translation>Unbekannt</translation> </message> @@ -50302,7 +50302,7 @@ <translation>Öffnet das Hilfe-Fenster</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2319"/> + <location filename="UI/UserInterface.py" line="2336"/> <source>Unittest</source> <translation>Modultests</translation> </message> @@ -50317,17 +50317,17 @@ <translation>Starte den Modultest Dialog</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2201"/> + <location filename="UI/UserInterface.py" line="2218"/> <source>&Window</source> <translation>&Fenster</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2174"/> + <location filename="UI/UserInterface.py" line="2188"/> <source>&Tools</source> <translation>&Werkzeuge</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2251"/> + <location filename="UI/UserInterface.py" line="2268"/> <source>&Help</source> <translation>&Hilfe</translation> </message> @@ -50362,22 +50362,22 @@ <translation>Beenden der Entwicklungsumgebung</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2318"/> + <location filename="UI/UserInterface.py" line="2335"/> <source>Tools</source> <translation>Werkzeuge</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3927"/> + <location filename="UI/UserInterface.py" line="3944"/> <source>Help</source> <translation>Hilfe</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2226"/> + <location filename="UI/UserInterface.py" line="2243"/> <source>&Toolbars</source> <translation>&Werkzeugleisten</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4035"/> + <location filename="UI/UserInterface.py" line="4052"/> <source>Problem</source> <translation>Problem</translation> </message> @@ -50397,7 +50397,7 @@ <translation>&Was ist das?</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4187"/> + <location filename="UI/UserInterface.py" line="4204"/> <source>Process Generation Error</source> <translation>Fehler beim Prozessstart</translation> </message> @@ -50417,7 +50417,7 @@ <translation>Ausgabefenster</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2320"/> + <location filename="UI/UserInterface.py" line="2337"/> <source>Settings</source> <translation>Einstellungen</translation> </message> @@ -50462,12 +50462,12 @@ <translation><b>Tastaturkurzbefehle</b><p>Setze die Tastaturkurzbefehle der Applikation mit den bevorzugten Werten.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2162"/> + <location filename="UI/UserInterface.py" line="2176"/> <source>E&xtras</source> <translation>E&xtras</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2704"/> + <location filename="UI/UserInterface.py" line="2721"/> <source>Report Bug</source> <translation>Fehler berichten</translation> </message> @@ -50487,7 +50487,7 @@ <translation><b>Fehler berichten...</b><p>Öffnet einen Dialog zum Senden eines Fehlerberichtes.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4793"/> + <location filename="UI/UserInterface.py" line="4810"/> <source>Export Keyboard Shortcuts</source> <translation>Tastaturkurzbefehle exportieren</translation> </message> @@ -50507,7 +50507,7 @@ <translation><b>Tastaturkurzbefehle exportieren</b><p>Exportiert die Tastaturkurzbefehle der Applikation.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4816"/> + <location filename="UI/UserInterface.py" line="4833"/> <source>Import Keyboard Shortcuts</source> <translation>Tastaturkurzbefehle importieren</translation> </message> @@ -50597,7 +50597,7 @@ <translation><b>Modultest (Skript)</b><p>Modultest für aktuelles Skript ausführen.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3704"/> + <location filename="UI/UserInterface.py" line="3721"/> <source>Unittest Project</source> <translation>Modultest (Projekt)</translation> </message> @@ -50612,12 +50612,12 @@ <translation><b>Modultest (Projekt)</b><p>Modultest für aktuelles Projekt ausführen.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2145"/> + <location filename="UI/UserInterface.py" line="2159"/> <source>&Unittest</source> <translation>&Modultests</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3704"/> + <location filename="UI/UserInterface.py" line="3721"/> <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> @@ -50667,7 +50667,7 @@ <translation><b>Dateien Seite an Seite vergleichen</b><p>Öffnet einen Dialog zum Vergleich zweier Dateien und zur Anzeige des Ergebnisse Seite an Seite.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5169"/> + <location filename="UI/UserInterface.py" line="5195"/> <source>Drop Error</source> <translation>Drop Fehler</translation> </message> @@ -50737,32 +50737,32 @@ <translation><b>Ansichtenprofile</b><p>Ansichtenprofile konfigurieren. Mit diesem Dialog kann die Sichtbarkeit der verschiedenen Fenster für die vorbestimmten Ansichtenprofile eingestellt werden.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4035"/> + <location filename="UI/UserInterface.py" line="4052"/> <source><p>The file <b>{0}</b> does not exist or is zero length.</p></source> <translation><p>Die Datei <b>{0}</b> existiert nicht oder hat die Größe Null.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3799"/> + <location filename="UI/UserInterface.py" line="3816"/> <source><p>Could not start Qt-Designer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Qt-Designer konnte nicht gestartet werden.<br>Stellen Sie sicher, dass es als <b>{0}</b> verfügbar ist.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3856"/> + <location filename="UI/UserInterface.py" line="3873"/> <source><p>Could not start Qt-Linguist.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Qt-Linguist konnte nicht gestartet werden.<br>Stellen Sie sicher, dass es als <b>{0}</b> verfügbar ist.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3900"/> + <location filename="UI/UserInterface.py" line="3917"/> <source><p>Could not start Qt-Assistant.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Qt-Assistant konnte nicht gestartet werden.<br>Stellen Sie sicher, dass es als <b>{0}</b> verfügbar ist.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4187"/> + <location filename="UI/UserInterface.py" line="4204"/> <source><p>Could not start the tool entry <b>{0}</b>.<br>Ensure that it is available as <b>{1}</b>.</p></source> <translation><p>Der Werkzeuge Eintrag <b>{0}</b> konnte nicht gestartet werden.<br>Stellen Sie sicher, dass er als <b>{1}</b> verfügbar ist.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5169"/> + <location filename="UI/UserInterface.py" line="5195"/> <source><p><b>{0}</b> is not a file.</p></source> <translation><p><b>{0}</b> ist keine Datei.</p></translation> </message> @@ -50787,7 +50787,7 @@ <translation><b>UI Betrachter</b><p>Started den UI Betrachter.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3998"/> + <location filename="UI/UserInterface.py" line="4015"/> <source><p>Could not start UI Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Der UI Betrachter konnte nicht gestartet werden.<br>Stellen Sie sicher, dass er als <b>{0}</b> verfügbar ist.</p></translation> </message> @@ -50812,7 +50812,7 @@ <translation><b>Übersetzungsvorschau</b><p>Dies startet das Programm zur Vorschau von Übersetzungen.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4043"/> + <location filename="UI/UserInterface.py" line="4060"/> <source><p>Could not start Translation Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Die Übersetzungsvorschau konnte nicht gestartet werden.<br>Stellen Sie sicher, dass sie als <b>{0}</b> verfügbar ist.</p></translation> </message> @@ -50852,47 +50852,47 @@ <translation>Aufgabenanzeige</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4937"/> + <location filename="UI/UserInterface.py" line="4963"/> <source>Save tasks</source> <translation>Aufgaben speichern</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4937"/> + <location filename="UI/UserInterface.py" line="4963"/> <source><p>The tasks file <b>{0}</b> could not be written.</p></source> <translation><p>Die Aufgabendatei <b>{0}</b> konnte nicht geschrieben werden.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4959"/> + <location filename="UI/UserInterface.py" line="4985"/> <source>Read tasks</source> <translation>Aufgaben lesen</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4959"/> + <location filename="UI/UserInterface.py" line="4985"/> <source><p>The tasks file <b>{0}</b> could not be read.</p></source> <translation><p>Die Aufgabendatei <b>{0}</b> konnte nicht gelesen werden.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3927"/> + <location filename="UI/UserInterface.py" line="3944"/> <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 Einstellungen Dialog, um einen festzulegen.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3939"/> + <location filename="UI/UserInterface.py" line="3956"/> <source><p>Could not start custom viewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Der Betrachter konnte nicht gestartet werden.<br>Stellen Sie sicher, dass er als <b>{0}</b> verfügbar ist.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4553"/> + <location filename="UI/UserInterface.py" line="4570"/> <source>Documentation Missing</source> <translation>Dokumentation fehlt</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4553"/> + <location filename="UI/UserInterface.py" line="4570"/> <source><p>The documentation starting point "<b>{0}</b>" could not be found.</p></source> <translation><p>Der Dokumentationsstartpunkt "<b>{0}</b>" konnte nicht gefunden werden.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2704"/> + <location filename="UI/UserInterface.py" line="2721"/> <source>Email address or mail server address is empty. Please configure your Email settings in the Preferences Dialog.</source> <translation>Email Adresse oder Mail Server Adresse sind leer. Bitte konfiguriere die Email Einstellungen im Einstellungen Dialog.</translation> </message> @@ -50932,22 +50932,22 @@ <translation>Alt+Shift+M</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Activate current editor</source> <translation>Aktiviere aktuellen Editor</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Alt+Shift+E</source> <translation>Alt+Shift+E</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Ctrl+Alt+Tab</source> <translation>Ctrl+Alt+Tab</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Shift+Ctrl+Alt+Tab</source> <translation>Shift+Ctrl+Alt+Tab</translation> </message> @@ -50957,37 +50957,37 @@ <translation>Alt+Shift+G</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt4 Documentation</source> <translation>Qt4 Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt&4 Documentation</source> <translation>Qt&4 Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2013"/> + <location filename="UI/UserInterface.py" line="2027"/> <source>Open Qt4 Documentation</source> <translation>Öffne die Qt4 Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2087"/> + <location filename="UI/UserInterface.py" line="2101"/> <source>Eric API Documentation</source> <translation>Eric API Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2087"/> + <location filename="UI/UserInterface.py" line="2101"/> <source>&Eric API Documentation</source> <translation>&Eric API Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2089"/> + <location filename="UI/UserInterface.py" line="2103"/> <source>Open Eric API Documentation</source> <translation>Öffne die Eric API Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3958"/> + <location filename="UI/UserInterface.py" line="3975"/> <source><p>Could not start the help viewer.<br>Ensure that it is available as <b>hh</b>.</p></source> <translation><p>Die Hilfeanzeige konnte nicht gestartet werden.<br>Stellen Sie sicher, dass sie als <b>hh</b> verfügbar ist.</p></translation> </message> @@ -51038,101 +51038,101 @@ <translation>Auf &Aktualisierungen prüfen...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2014"/> + <location filename="UI/UserInterface.py" line="2028"/> <source><b>Qt4 Documentation</b><p>Display the Qt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>Qt4 Dokumentation</b><p>Zeige die Qt4 Dokumentation an. Abhängig von den Einstellungen, wird Erics interner Hilfeanzeiger, ein Web-Browser oder Qt Assistant verwendet.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>PyQt4 Documentation</source> <translation>PyQt4 Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>P&yQt4 Documentation</source> <translation>P&yQt4 Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2037"/> + <location filename="UI/UserInterface.py" line="2051"/> <source>Open PyQt4 Documentation</source> <translation>Öffne die PyQt4 Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2038"/> + <location filename="UI/UserInterface.py" line="2052"/> <source><b>PyQt4 Documentation</b><p>Display the PyQt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>PyQt4 Dokumentation</b><p>Zeige die PyQt4 Dokumentation an. Abhängig von den Einstellungen, wird Erics interner Hilfeanzeiger, ein Web-Browser oder Qt Assistant verwendet.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2177"/> + <location filename="UI/UserInterface.py" line="2191"/> <source>Select Tool Group</source> <translation>Werkzeuggruppe wählen</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2183"/> + <location filename="UI/UserInterface.py" line="2197"/> <source>Se&ttings</source> <translation>&Einstellungen</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2322"/> + <location filename="UI/UserInterface.py" line="2339"/> <source>Profiles</source> <translation>Profile</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3030"/> + <location filename="UI/UserInterface.py" line="3047"/> <source>&Builtin Tools</source> <translation>&Eingebaute Werkzeuge</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4171"/> + <location filename="UI/UserInterface.py" line="4188"/> <source>Starting process '{0} {1}'. </source> <translation>Starte Prozess '{0} {1}'. </translation> </message> <message> - <location filename="UI/UserInterface.py" line="4264"/> + <location filename="UI/UserInterface.py" line="4281"/> <source>Process '{0}' has exited. </source> <translation>Prozess '{0}' ist beendet. </translation> </message> <message> - <location filename="UI/UserInterface.py" line="4538"/> + <location filename="UI/UserInterface.py" line="4555"/> <source>Documentation</source> <translation>Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4447"/> + <location filename="UI/UserInterface.py" line="4464"/> <source><p>The PyQt4 documentation starting point has not been configured.</p></source> <translation><p>Der PyQt4 Dokumentations Startpunkt ist nicht konfiguriert.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5448"/> + <location filename="UI/UserInterface.py" line="5474"/> <source>Error during updates check</source> <translation>Fehler während der Aktualisierungsprüfung</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5435"/> + <location filename="UI/UserInterface.py" line="5461"/> <source>Update available</source> <translation>Aktualisierung verfügbar</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2653"/> + <location filename="UI/UserInterface.py" line="2670"/> <source><h3>Version Numbers</h3><table></source> <translation><h3>Versions Nummern</h3><table></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5482"/> + <location filename="UI/UserInterface.py" line="5508"/> <source></table></source> <translation></table></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2978"/> + <location filename="UI/UserInterface.py" line="2995"/> <source>Configure Tool Groups ...</source> <translation>Konfiguriere Werkzeuggruppen...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2981"/> + <location filename="UI/UserInterface.py" line="2998"/> <source>Configure current Tool Group ...</source> <translation>Konfiguriere aktuelle Werkzeuggruppe...</translation> </message> @@ -51147,22 +51147,22 @@ <translation>Zeige externe &Werkzeuge</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5448"/> + <location filename="UI/UserInterface.py" line="5474"/> <source>Could not perform updates check.</source> <translation>Konnte keine Aktualisierungsprüfung durchführen.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5307"/> + <location filename="UI/UserInterface.py" line="5333"/> <source>&Cancel</source> <translation>&Abbrechen</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5312"/> + <location filename="UI/UserInterface.py" line="5338"/> <source>Trying host {0}</source> <translation>Prüfe Host {0}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5509"/> + <location filename="UI/UserInterface.py" line="5535"/> <source>First time usage</source> <translation>Erstmalige Nutzung</translation> </message> @@ -51172,62 +51172,62 @@ <translation>Initialisiere Plugin Manager...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2237"/> + <location filename="UI/UserInterface.py" line="2254"/> <source>P&lugins</source> <translation>Plugi&ns</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2323"/> + <location filename="UI/UserInterface.py" line="2340"/> <source>Plugins</source> <translation>Plugins</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>Plugin Infos</source> <translation>Plugin Informationen</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1951"/> + <location filename="UI/UserInterface.py" line="1965"/> <source>Show Plugin Infos</source> <translation>Zeigt Plugin Informationen</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1952"/> + <location filename="UI/UserInterface.py" line="1966"/> <source><b>Plugin Infos...</b><p>This opens a dialog, that show some information about loaded plugins.</p></source> <translation><b>Plugin Informationen...</b><p>Dies öffnet einen Dialog, der einige Informationen über die geladenen Plugins anzeigt.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>&Plugin Infos...</source> <translation>&Plugin Informationen...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3038"/> + <location filename="UI/UserInterface.py" line="3055"/> <source>&Plugin Tools</source> <translation>&Plugin Werkzeuge</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1974"/> + <location filename="UI/UserInterface.py" line="1988"/> <source>Uninstall Plugin</source> <translation>Plugin deinstallieren</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1971"/> + <location filename="UI/UserInterface.py" line="1985"/> <source>&Uninstall Plugin...</source> <translation>Plugin &deinstallieren...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1975"/> + <location filename="UI/UserInterface.py" line="1989"/> <source><b>Uninstall Plugin...</b><p>This opens a dialog to uninstall a plugin.</p></source> <translation><b>Plugin deinstallieren...</b><p>Dies öffnet einen Dialog zur Deinstallation eines Plugins.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3128"/> + <location filename="UI/UserInterface.py" line="3145"/> <source>&Show all</source> <translation>Alle an&zeigen</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3130"/> + <location filename="UI/UserInterface.py" line="3147"/> <source>&Hide all</source> <translation>Alle &ausblenden</translation> </message> @@ -51237,7 +51237,7 @@ <translation>Aktiviere Plugins...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2167"/> + <location filename="UI/UserInterface.py" line="2181"/> <source>Wi&zards</source> <translation>A&utopiloten</translation> </message> @@ -51257,42 +51257,42 @@ <translation>Zeige die verfügbaren eric4 Versionen</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5469"/> + <location filename="UI/UserInterface.py" line="5495"/> <source><h3>Available versions</h3><table></source> <translation><h3>Verfügbare Versionen</h3><table></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1982"/> + <location filename="UI/UserInterface.py" line="1996"/> <source>Plugin Repository</source> <translation>Plugin Repository</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1982"/> + <location filename="UI/UserInterface.py" line="1996"/> <source>Plugin &Repository...</source> <translation>Plugin &Repository...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1985"/> + <location filename="UI/UserInterface.py" line="1999"/> <source>Show Plugins available for download</source> <translation>Zeige Plugins verfügbar zum Download an</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1987"/> + <location filename="UI/UserInterface.py" line="2001"/> <source><b>Plugin Repository...</b><p>This opens a dialog, that shows a list of plugins available on the Internet.</p></source> <translation><b>Plugin Repository...</b><p>Dies öffnet einen Dialog, der eine Liste der im Internet verfügbaren Plugins anzeigt.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1963"/> + <location filename="UI/UserInterface.py" line="1977"/> <source>Install Plugins</source> <translation>Plugins installieren</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1960"/> + <location filename="UI/UserInterface.py" line="1974"/> <source>&Install Plugins...</source> <translation>Plugins &installieren...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1964"/> + <location filename="UI/UserInterface.py" line="1978"/> <source><b>Install Plugins...</b><p>This opens a dialog to install or update plugins.</p></source> <translation><b>Plugins installieren...</b><p>Dies öffnet einen Dialog zur Installation oder Update von Plugins.</p></translation> </message> @@ -51337,22 +51337,22 @@ <translation>Lade Toolbarmanager...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2567"/> + <location filename="UI/UserInterface.py" line="2584"/> <source>External Tools/{0}</source> <translation>Externe Werkzeuge/{0}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4135"/> + <location filename="UI/UserInterface.py" line="4152"/> <source>External Tools</source> <translation>Externe Werkzeuge</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4129"/> + <location filename="UI/UserInterface.py" line="4146"/> <source>No tool entry found for external tool '{0}' in tool group '{1}'.</source> <translation>Kein Eintrag für das externe Werkzeug '{0}' in der Gruppe '{1}' gefunden.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4135"/> + <location filename="UI/UserInterface.py" line="4152"/> <source>No toolgroup entry '{0}' found.</source> <translation>Kein Werkzeuggruppeneintrag '{0}' gefunden.</translation> </message> @@ -51367,32 +51367,32 @@ <translation>&Mehrfachprojektanzeige</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4974"/> + <location filename="UI/UserInterface.py" line="5000"/> <source>Save session</source> <translation>Session speichern</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4974"/> + <location filename="UI/UserInterface.py" line="5000"/> <source><p>The session file <b>{0}</b> could not be written.</p></source> <translation><p>Die Sessiondatei <b>{0}</b> konnte nicht geschrieben werden.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4997"/> + <location filename="UI/UserInterface.py" line="5023"/> <source>Read session</source> <translation>Session lesen</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4997"/> + <location filename="UI/UserInterface.py" line="5023"/> <source><p>The session file <b>{0}</b> could not be read.</p></source> <translation><p>Die Sessiondatei <b>{0}</b> konnte nicht gelesen werden.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2472"/> + <location filename="UI/UserInterface.py" line="2489"/> <source><p>This part of the status bar displays the current editors encoding.</p></source> <translation><p>Dieser Teil der Statusleiste zeigt die Zeichenkodierung des aktuellen Editors an.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2486"/> + <location filename="UI/UserInterface.py" line="2503"/> <source><p>This part of the status bar displays an indication of the current editors files writability.</p></source> <translation><p>Dieser Teil der Statusleiste zeigt an, ob die aktuelle Datei geschrieben werden kann.</p></translation> </message> @@ -51417,17 +51417,17 @@ <translation><b>Neue Funktion anfragen...</b><p>Öffnet einen Dialog, um eine Anfrage für eine neue Funktion zu senden.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2465"/> + <location filename="UI/UserInterface.py" line="2482"/> <source><p>This part of the status bar displays the current editors language.</p></source> <translation><p>Dieser Teil der Statusleiste zeigt die Sprache des aktuellen Editors an.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2493"/> + <location filename="UI/UserInterface.py" line="2510"/> <source><p>This part of the status bar displays the line number of the current editor.</p></source> <translation><p>Dieser Teil der Statusleiste zeigt die Zeilennummer des aktuellen Editors an.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2500"/> + <location filename="UI/UserInterface.py" line="2517"/> <source><p>This part of the status bar displays the cursor position of the current editor.</p></source> <translation><p>Dieser Teil der Statusleiste zeigt die Cursorposition des aktuellen Editors an.</p></translation> </message> @@ -51452,12 +51452,12 @@ <translation><b>Schalte das Fenster der Horizontalen Werkzeugbox um</b><p>Falls das Fenster der Horizontalen Werkzeugbox nicht sichtbar ist, wird es dargestellt. Ist es sichtbar, so wird es versteckt.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2946"/> + <location filename="UI/UserInterface.py" line="2963"/> <source>Restart application</source> <translation>Anwendung neu starten</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2946"/> + <location filename="UI/UserInterface.py" line="2963"/> <source>The application needs to be restarted. Do it now?</source> <translation>Die Anwendung muss neu gestartet werden. Jetzt durchführen?</translation> </message> @@ -51482,22 +51482,22 @@ <translation>Alt+Shift+A</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2246"/> + <location filename="UI/UserInterface.py" line="2263"/> <source>Configure...</source> <translation>Einstellungen...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2479"/> + <location filename="UI/UserInterface.py" line="2496"/> <source><p>This part of the status bar displays the current editors eol setting.</p></source> <translation><p>Dieser Teil der Statusleiste zeigt die Zeilenendekodierung des aktuellen Editors an.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Switch between tabs</source> <translation>Zwischen Tabs umschalten</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Ctrl+1</source> <translation>Ctrl+1</translation> </message> @@ -51542,12 +51542,12 @@ <translation><b>Einstellungen importieren</b><p>Importiert eine zuvor exportierte Konfiguration.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Show next</source> <translation>Zeige nächste</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Show previous</source> <translation>Zeige vorherige</translation> </message> @@ -51617,7 +51617,7 @@ <translation><b>SQL Browser</b><p>Erforsche eine SQL Datenbank.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4062"/> + <location filename="UI/UserInterface.py" line="4079"/> <source><p>Could not start SQL Browser.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Der SQL Browser konnte nicht gestartet werden.<br>Stellen Sie sicher, dass er als <b>{0}</b> verfügbar ist.</p></translation> </message> @@ -51632,32 +51632,32 @@ <translation>&Icon Editor...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3879"/> + <location filename="UI/UserInterface.py" line="3896"/> <source>Qt 3 support</source> <translation>Qt 3 Unterstützung</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2108"/> + <location filename="UI/UserInterface.py" line="2122"/> <source><b>PySide Documentation</b><p>Display the PySide Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>PySide Dokumentation</b><p>Zeige die PySide Dokumentation an. Abhängig von den Einstellungen, wird Erics interner Hilfeanzeiger, ein Web-Browser oder Qt Assistant verwendet.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4538"/> + <location filename="UI/UserInterface.py" line="4555"/> <source><p>The PySide documentation starting point has not been configured.</p></source> <translation><p>Der PySide Dokumentations Startpunkt ist nicht konfiguriert.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2105"/> + <location filename="UI/UserInterface.py" line="2119"/> <source>PySide Documentation</source> <translation>PySide Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2105"/> + <location filename="UI/UserInterface.py" line="2119"/> <source>Py&Side Documentation</source> <translation>Py&Side Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2107"/> + <location filename="UI/UserInterface.py" line="2121"/> <source>Open PySide Documentation</source> <translation>Öffne die PySide Dokumentation</translation> </message> @@ -51698,32 +51698,32 @@ <translation><b>Zeige externe Werkzeuge</b><p>Öffnet einen Dialog, der die Pfade und Versionen der von eric5 genutzten externen Werkzeuge anzeigt.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2090"/> + <location filename="UI/UserInterface.py" line="2104"/> <source><b>Eric API Documentation</b><p>Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric5 installation directory.</p></source> <translation><b>Eric API Dokumentation</b><p>Zeige die Eric API Dokumentation an. Der Pfad für die Dokumentation ist das Unterverzeichnis Documentation/Source im eric5 Installationverzeichnis.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3879"/> + <location filename="UI/UserInterface.py" line="3896"/> <source>Qt v.3 is not supported by eric5.</source> <translation>Qt v.3 wird von eric5 nicht unterstützt.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5435"/> + <location filename="UI/UserInterface.py" line="5461"/> <source>The update to <b>{0}</b> of eric5 is available at <b>{1}</b>. Would you like to get it?</source> <translation>Eine Aktualisierung auf <b>{0}</b> von Eric5 ist unter <b>{1}</b> verfügbar. Wollen Sie sie laden?</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5444"/> + <location filename="UI/UserInterface.py" line="5470"/> <source>Eric5 is up to date</source> <translation>Eric5 ist aktuell</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5444"/> + <location filename="UI/UserInterface.py" line="5470"/> <source>You are using the latest version of eric5</source> <translation>Sie verwenden die aktuellste Version von eric5</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5509"/> + <location filename="UI/UserInterface.py" line="5535"/> <source>eric5 has not been configured yet. The configuration dialog will be started.</source> <translation>eric5 wurde noch nicht konfiguriert. Der Konfigurationsdialog wird nun gestartet.</translation> </message> @@ -51758,72 +51758,72 @@ <translation>Alt+Shift+B</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4816"/> + <location filename="UI/UserInterface.py" line="4833"/> <source>Keyboard shortcut file (*.e4k)</source> <translation>Tastaturkurzbefehls Datei (*.e4k)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2051"/> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python 3 Documentation</source> <translation>Python 3 Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2051"/> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python &3 Documentation</source> <translation>Python &3 Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2053"/> + <location filename="UI/UserInterface.py" line="2067"/> <source>Open Python 3 Documentation</source> <translation>Öffne die Python 3 Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2054"/> - <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> - <translation><b>Python 3 Dokumentation</b><p>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 doc unter dem Verzeichnis, in dem der Python 3 Interpreter installiert ist, und unter Unix das Verzeichnis <i>/usr/share/doc/packages/python/html</i>. Um dies zu überschreiben, können sie die Umgebungsvariable PYTHON3DOCDIR setzen.</p></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python 2 Documentation</source> - <translation>Python 2 Dokumentation</translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python &2 Documentation</source> - <translation>Python &2 Dokumentation</translation> - </message> - <message> <location filename="UI/UserInterface.py" line="2068"/> + <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> + <translation><b>Python 3 Dokumentation</b><p>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 doc unter dem Verzeichnis, in dem der Python 3 Interpreter installiert ist, und unter Unix das Verzeichnis <i>/usr/share/doc/packages/python/html</i>. Um dies zu überschreiben, können sie die Umgebungsvariable PYTHON3DOCDIR setzen.</p></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python 2 Documentation</source> + <translation>Python 2 Dokumentation</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python &2 Documentation</source> + <translation>Python &2 Dokumentation</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2082"/> <source>Open Python 2 Documentation</source> <translation>Öffne die Python 2 Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2069"/> + <location filename="UI/UserInterface.py" line="2083"/> <source><b>Python 2 Documentation</b><p>Display the Python 2 documentation. If no documentation directory is configured, the location of the Python 2 documentation is assumed to be the doc directory underneath the location of the configured Python 2 executable on Windows and <i>/usr/share/doc/packages/python/html/python-docs-html</i> on Unix. Set PYTHON2DOCDIR in your environment to override this. </p></source> <translation><b>Python 2 Dokumentation</b><p>Zeigt die Python 2 Dokumentation an. Ist kein Dokumentationsverzeichnis konfiguriert, so ist der Ort, an dem die Python 2 Dokumentation gesucht wird, unter Windows das Verzeichnis doc unter dem Verzeichnis, in dem der konfigurierte Python 2 Interpreter installiert ist, und unter Unix das Verzeichnis <i>/usr/share/doc/packages/python/html/python-docs-html</i>. Um dies zu überschreiben, können sie die Umgebungsvariable PYTHON2DOCDIR setzen.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <source>Error getting versions information</source> <translation>Fehler beim Herunterladen der Versionsinformationen</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5356"/> + <location filename="UI/UserInterface.py" line="5382"/> <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="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <source>Open Browser</source> <translation>Browser starten</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <source>Could not start a web browser</source> <translation>Der Systemwebbrowser konnte nicht gestartet werden</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <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> @@ -51934,12 +51934,12 @@ <translation><b>Bildschirmfoto</b><p>Dies öffnet einen Dialog, um ein Bildschirmfoto aufzunehmen.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4109"/> + <location filename="UI/UserInterface.py" line="4126"/> <source><p>Could not start Snapshot tool.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Die Bildschirmfotoanwendung konnte nicht gestartet werden.<br>Stellen Sie sicher, dass sie als <b>{0}</b> verfügbar ist.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5527"/> + <location filename="UI/UserInterface.py" line="5553"/> <source>Select Workspace Directory</source> <translation>Wähle Arbeitsverzeichnis</translation> </message> @@ -52169,7 +52169,7 @@ <translation><b>Zahlenanzeiger aktivieren</b><p>Dies schaltet den Eingabefokus auf das Zahlenanzeigerfenster um.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2206"/> + <location filename="UI/UserInterface.py" line="2223"/> <source>&Windows</source> <translation>&Fenster</translation> </message> @@ -52244,30 +52244,50 @@ <translation><b>Qt-Linguist</b><p>Starte Qt-Linguist (Übersetzungsprogramm).</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt5 Documentation</source> <translation>Qt5 Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt&5 Documentation</source> <translation>Qt&5 Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2025"/> + <location filename="UI/UserInterface.py" line="2039"/> <source>Open Qt5 Documentation</source> <translation>Öffne die Qt5 Dokumentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2026"/> + <location filename="UI/UserInterface.py" line="2040"/> <source><b>Qt5 Documentation</b><p>Display the Qt5 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>Qt5 Dokumentation</b><p>Zeige die Qt5 Dokumentation an. Abhängig von den Einstellungen, wird Erics interner Hilfeanzeiger, ein Web-Browser oder Qt Assistant verwendet.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2510"/> + <location filename="UI/UserInterface.py" line="2527"/> <source><p>This part of the status bar allows zooming the current editor, shell or terminal.</p></source> <translation><p>Dieser Teil der Statusleiste ermöglicht das Zoomen des aktuellen Editors, der Shell oder des Terminals.</p></translation> </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates</source> + <translation>SSL Zertifikate verwalten</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates...</source> + <translation>SSL Zertifikate verwalten...</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1920"/> + <source>Manage the saved SSL certificates</source> + <translation>Verwalten der gespeicherten SSL Zertifikate</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1922"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation><b>SSL Zertifikate verwalten...</b><p>Öffnet einen Dialog zur Verwaltung gespeicherter SSL Zertifikate.</p></translation> + </message> </context> <context> <name>UserPropertiesDialog</name>
--- a/i18n/eric5_en.ts Fri Jan 18 19:31:43 2013 +0100 +++ b/i18n/eric5_en.ts Fri Jan 18 19:50:13 2013 +0100 @@ -7028,49 +7028,288 @@ </message> </context> <context> + <name>E5SslCertificatesDialog</name> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="14"/> + <source>SSL Certificate Manager</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="27"/> + <source>&Servers</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="33"/> + <source>You have saved certificates identifying these servers:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="140"/> + <source>Certificate name</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="46"/> + <source>Server</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="145"/> + <source>Expiry Date</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="158"/> + <source>Press to view the selected certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="161"/> + <source>&View...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="168"/> + <source>Press to import a certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="171"/> + <source>&Import...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="181"/> + <source>Press to export the selected certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="184"/> + <source>&Export...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="194"/> + <source>Press to delete the selected certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="197"/> + <source>&Delete...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="126"/> + <source>Certificate &Authorities</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="132"/> + <source>You have saved certificates identifying these certification authorities:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="274"/> + <source>(Unknown)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="276"/> + <source>(Unknown common name)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source>Delete Server Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Import Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="363"/> + <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source>Delete CA Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source>Export Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="399"/> + <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="415"/> + <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="425"/> + <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> + <translation type="unfinished"></translation> + </message> +</context> +<context> <name>E5SslErrorHandler</name> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source>SSL Errors</source> <translation type="unfinished"></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source><p>SSL Errors for <br /><b>{0}</b><ul><li>{1}</li></ul></p><p>Do you want to ignore these errors?</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source>Certificates</source> <translation type="unfinished"></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source><p>Certificates:<br/>{0}<br/>Do you want to accept all these certificates?</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="184"/> - <source>Name: {0}</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="E5Network/E5SslErrorHandler.py" line="188"/> - <source><br/>Organization: {0}</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="E5Network/E5SslErrorHandler.py" line="192"/> - <source><br/>Issuer: {0}</source> + <source>Name: {0}</source> <translation type="unfinished"></translation> </message> <message> <location filename="E5Network/E5SslErrorHandler.py" line="196"/> + <source><br/>Organization: {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="200"/> + <source><br/>Issuer: {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="204"/> <source><br/>Not valid before: {0}<br/>Valid Until: {1}</source> <translation type="unfinished"></translation> </message> </context> <context> + <name>E5SslInfoDialog</name> + <message> + <location filename="E5Network/E5SslInfoDialog.ui" line="14"/> + <source>SSL Certificate Info</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>E5SslInfoWidget</name> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="17"/> + <source>This certificated has been blacklisted.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="24"/> + <source><b>Issued for</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="118"/> + <source>Common Name (CN)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="138"/> + <source>Organization (O)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="158"/> + <source>Organizational Unit (OU)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="91"/> + <source>Serialnumber</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="111"/> + <source><b>Issued by</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="178"/> + <source><b>Validity</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="185"/> + <source>Issued on</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="205"/> + <source>Expires on</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="225"/> + <source>This certificate is not valid yet or has expired.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="232"/> + <source><b>Fingerprints</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="239"/> + <source>SHA1-Fingerprint</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="259"/> + <source>MD5-Fingerprint</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.py" line="111"/> + <source><not part of the certificate></source> + <translation type="unfinished"></translation> + </message> +</context> +<context> <name>E5ToolBarDialog</name> <message> <location filename="E5Gui/E5ToolBarDialog.ui" line="14"/> @@ -16996,26 +17235,6 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/HelpWindow.py" line="1230"/> - <source>Manage Certificates</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1230"/> - <source>Manage Certificates...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1234"/> - <source>Manage the saved certificates</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1236"/> - <source><b>Manage Saved Certificates...</b><p>Opens a dialog to manage the saved certificates.</p></source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="Helpviewer/HelpWindow.py" line="1615"/> <source>VirusTotal</source> <translation type="unfinished"></translation> @@ -17280,6 +17499,26 @@ <source><b>GreaseMonkey Scripts...</b><p>Opens a dialog to configure the available GreaseMonkey Scripts.</p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1234"/> + <source>Manage the saved SSL certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1236"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>Hg</name> @@ -18568,12 +18807,12 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="46"/> <source>Mercurial Move</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="81"/> <source>Select target</source> <translation type="unfinished"></translation> </message> @@ -40160,245 +40399,6 @@ </message> </context> <context> - <name>SslCertificatesDialog</name> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="14"/> - <source>SSL Certificate Manager</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="27"/> - <source>&Servers</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="33"/> - <source>You have saved certificates identifying these servers:</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="140"/> - <source>Certificate name</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="46"/> - <source>Server</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="145"/> - <source>Expiry Date</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="158"/> - <source>Press to view the selected certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="161"/> - <source>&View...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="194"/> - <source>Press to delete the selected certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="197"/> - <source>&Delete...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="126"/> - <source>Certificate &Authorities</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="132"/> - <source>You have saved certificates identifying these certification authorities:</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="274"/> - <source>(Unknown)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="276"/> - <source>(Unknown common name)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> - <source>Delete Server Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> - <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="168"/> - <source>Press to import a certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="171"/> - <source>&Import...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="181"/> - <source>Press to export the selected certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="184"/> - <source>&Export...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> - <source>Import Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="363"/> - <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> - <source>Delete CA Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> - <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> - <source>Export Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="399"/> - <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="415"/> - <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="425"/> - <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> - <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> - <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> - <translation type="unfinished"></translation> - </message> -</context> -<context> - <name>SslInfoDialog</name> - <message> - <location filename="Helpviewer/SslInfoDialog.ui" line="14"/> - <source>SSL Certificate Info</source> - <translation type="unfinished"></translation> - </message> -</context> -<context> - <name>SslInfoWidget</name> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="17"/> - <source>This certificated has been blacklisted.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="24"/> - <source><b>Issued for</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="118"/> - <source>Common Name (CN)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="138"/> - <source>Organization (O)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="158"/> - <source>Organizational Unit (OU)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="91"/> - <source>Serialnumber</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="111"/> - <source><b>Issued by</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="178"/> - <source><b>Validity</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="185"/> - <source>Issued on</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="205"/> - <source>Expires on</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="225"/> - <source>This certificate is not valid yet or has expired.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="232"/> - <source><b>Fingerprints</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="239"/> - <source>SHA1-Fingerprint</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="259"/> - <source>MD5-Fingerprint</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.py" line="111"/> - <source><not part of the certificate></source> - <translation type="unfinished"></translation> - </message> -</context> -<context> <name>StartCoverageDialog</name> <message> <location filename="Debugger/StartCoverageDialog.ui" line="14"/> @@ -42025,12 +42025,12 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="46"/> <source>Subversion Move</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="81"/> <source>Select target</source> <translation type="unfinished"></translation> </message> @@ -49675,7 +49675,7 @@ <context> <name>UrlBar</name> <message> - <location filename="Helpviewer/UrlBar/UrlBar.py" line="199"/> + <location filename="Helpviewer/UrlBar/UrlBar.py" line="198"/> <source>Unknown</source> <translation type="unfinished"></translation> </message> @@ -50250,7 +50250,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2704"/> + <location filename="UI/UserInterface.py" line="2721"/> <source>Report Bug</source> <translation type="unfinished"></translation> </message> @@ -50290,7 +50290,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2319"/> + <location filename="UI/UserInterface.py" line="2336"/> <source>Unittest</source> <translation type="unfinished"></translation> </message> @@ -50350,7 +50350,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3704"/> + <location filename="UI/UserInterface.py" line="3721"/> <source>Unittest Project</source> <translation type="unfinished"></translation> </message> @@ -50655,7 +50655,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4793"/> + <location filename="UI/UserInterface.py" line="4810"/> <source>Export Keyboard Shortcuts</source> <translation type="unfinished"></translation> </message> @@ -50675,7 +50675,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4816"/> + <location filename="UI/UserInterface.py" line="4833"/> <source>Import Keyboard Shortcuts</source> <translation type="unfinished"></translation> </message> @@ -50695,669 +50695,669 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Activate current editor</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Alt+Shift+E</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Show next</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Ctrl+Alt+Tab</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Show previous</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Shift+Ctrl+Alt+Tab</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Switch between tabs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Ctrl+1</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>Plugin Infos</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>&Plugin Infos...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1951"/> + <location filename="UI/UserInterface.py" line="1965"/> <source>Show Plugin Infos</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1952"/> + <location filename="UI/UserInterface.py" line="1966"/> <source><b>Plugin Infos...</b><p>This opens a dialog, that show some information about loaded plugins.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1963"/> + <location filename="UI/UserInterface.py" line="1977"/> <source>Install Plugins</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1960"/> - <source>&Install Plugins...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="1964"/> - <source><b>Install Plugins...</b><p>This opens a dialog to install or update plugins.</p></source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="UI/UserInterface.py" line="1974"/> + <source>&Install Plugins...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1978"/> + <source><b>Install Plugins...</b><p>This opens a dialog to install or update plugins.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1988"/> <source>Uninstall Plugin</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1971"/> - <source>&Uninstall Plugin...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="1975"/> - <source><b>Uninstall Plugin...</b><p>This opens a dialog to uninstall a plugin.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="1982"/> - <source>Plugin Repository</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="1982"/> - <source>Plugin &Repository...</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="UI/UserInterface.py" line="1985"/> + <source>&Uninstall Plugin...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1989"/> + <source><b>Uninstall Plugin...</b><p>This opens a dialog to uninstall a plugin.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1996"/> + <source>Plugin Repository</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1996"/> + <source>Plugin &Repository...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1999"/> <source>Show Plugins available for download</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1987"/> + <location filename="UI/UserInterface.py" line="2001"/> <source><b>Plugin Repository...</b><p>This opens a dialog, that shows a list of plugins available on the Internet.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt4 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt&4 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2013"/> + <location filename="UI/UserInterface.py" line="2027"/> <source>Open Qt4 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2014"/> + <location filename="UI/UserInterface.py" line="2028"/> <source><b>Qt4 Documentation</b><p>Display the Qt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>PyQt4 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>P&yQt4 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2037"/> - <source>Open PyQt4 Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2038"/> - <source><b>PyQt4 Documentation</b><p>Display the PyQt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2087"/> - <source>Eric API Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2087"/> - <source>&Eric API Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2089"/> - <source>Open Eric API Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2090"/> - <source><b>Eric API Documentation</b><p>Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric5 installation directory.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2105"/> - <source>PySide Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2105"/> - <source>Py&Side Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2107"/> - <source>Open PySide Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2108"/> - <source><b>PySide Documentation</b><p>Display the PySide Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2145"/> - <source>&Unittest</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2162"/> - <source>E&xtras</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2167"/> - <source>Wi&zards</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2174"/> - <source>&Tools</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2177"/> - <source>Select Tool Group</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2183"/> - <source>Se&ttings</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2201"/> - <source>&Window</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2226"/> - <source>&Toolbars</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2237"/> - <source>P&lugins</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2246"/> - <source>Configure...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2251"/> - <source>&Help</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2318"/> - <source>Tools</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2320"/> - <source>Settings</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="3927"/> - <source>Help</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2322"/> - <source>Profiles</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2323"/> - <source>Plugins</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2465"/> - <source><p>This part of the status bar displays the current editors language.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2472"/> - <source><p>This part of the status bar displays the current editors encoding.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2479"/> - <source><p>This part of the status bar displays the current editors eol setting.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2486"/> - <source><p>This part of the status bar displays an indication of the current editors files writability.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2493"/> - <source><p>This part of the status bar displays the line number of the current editor.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2500"/> - <source><p>This part of the status bar displays the cursor position of the current editor.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2567"/> - <source>External Tools/{0}</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2653"/> - <source><h3>Version Numbers</h3><table></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="5482"/> - <source></table></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2704"/> - <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="2946"/> - <source>Restart application</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2946"/> - <source>The application needs to be restarted. Do it now?</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2978"/> - <source>Configure Tool Groups ...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2981"/> - <source>Configure current Tool Group ...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="3030"/> - <source>&Builtin Tools</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="3038"/> - <source>&Plugin Tools</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="3128"/> - <source>&Show all</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="3130"/> - <source>&Hide all</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="3704"/> - <source>There is no main script defined for the current project. Aborting</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="3879"/> - <source>Qt 3 support</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="3879"/> - <source>Qt v.3 is not supported by eric5.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4035"/> - <source>Problem</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4035"/> - <source><p>The file <b>{0}</b> does not exist or is zero length.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4187"/> - <source>Process Generation Error</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="3799"/> - <source><p>Could not start Qt-Designer.<br>Ensure that it is available as <b>{0}</b>.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="3856"/> - <source><p>Could not start Qt-Linguist.<br>Ensure that it is available as <b>{0}</b>.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="3900"/> - <source><p>Could not start Qt-Assistant.<br>Ensure that it is available as <b>{0}</b>.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="3927"/> - <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="3939"/> - <source><p>Could not start custom viewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="3958"/> - <source><p>Could not start the help viewer.<br>Ensure that it is available as <b>hh</b>.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="3998"/> - <source><p>Could not start UI Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4043"/> - <source><p>Could not start Translation Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4062"/> - <source><p>Could not start SQL Browser.<br>Ensure that it is available as <b>{0}</b>.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4135"/> - <source>External Tools</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4129"/> - <source>No tool entry found for external tool '{0}' in tool group '{1}'.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4135"/> - <source>No toolgroup entry '{0}' found.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4171"/> - <source>Starting process '{0} {1}'. -</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4187"/> - <source><p>Could not start the tool entry <b>{0}</b>.<br>Ensure that it is available as <b>{1}</b>.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4264"/> - <source>Process '{0}' has exited. -</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4553"/> - <source>Documentation Missing</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4553"/> - <source><p>The documentation starting point "<b>{0}</b>" could not be found.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4538"/> - <source>Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4447"/> - <source><p>The PyQt4 documentation starting point has not been configured.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4538"/> - <source><p>The PySide documentation starting point has not been configured.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4816"/> - <source>Keyboard shortcut file (*.e4k)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4937"/> - <source>Save tasks</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4937"/> - <source><p>The tasks file <b>{0}</b> could not be written.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4959"/> - <source>Read tasks</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4959"/> - <source><p>The tasks file <b>{0}</b> could not be read.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4974"/> - <source>Save session</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4974"/> - <source><p>The session file <b>{0}</b> could not be written.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4997"/> - <source>Read session</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="4997"/> - <source><p>The session file <b>{0}</b> could not be read.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="5169"/> - <source>Drop Error</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="5169"/> - <source><p><b>{0}</b> is not a file.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="5307"/> - <source>&Cancel</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="5312"/> - <source>Trying host {0}</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="5435"/> - <source>Update available</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="5435"/> - <source>The update to <b>{0}</b> of eric5 is available at <b>{1}</b>. Would you like to get it?</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="5444"/> - <source>Eric5 is up to date</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="5444"/> - <source>You are using the latest version of eric5</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="5448"/> - <source>Error during updates check</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="5448"/> - <source>Could not perform updates check.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="5469"/> - <source><h3>Available versions</h3><table></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="5509"/> - <source>First time usage</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="5509"/> - <source>eric5 has not been configured yet. The configuration dialog will be started.</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="UI/UserInterface.py" line="2051"/> + <source>Open PyQt4 Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2052"/> + <source><b>PyQt4 Documentation</b><p>Display the PyQt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2101"/> + <source>Eric API Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2101"/> + <source>&Eric API Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2103"/> + <source>Open Eric API Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2104"/> + <source><b>Eric API Documentation</b><p>Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric5 installation directory.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2119"/> + <source>PySide Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2119"/> + <source>Py&Side Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2121"/> + <source>Open PySide Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2122"/> + <source><b>PySide Documentation</b><p>Display the PySide Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2159"/> + <source>&Unittest</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2176"/> + <source>E&xtras</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2181"/> + <source>Wi&zards</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2188"/> + <source>&Tools</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2191"/> + <source>Select Tool Group</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2197"/> + <source>Se&ttings</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2218"/> + <source>&Window</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2243"/> + <source>&Toolbars</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2254"/> + <source>P&lugins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2263"/> + <source>Configure...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2268"/> + <source>&Help</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2335"/> + <source>Tools</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2337"/> + <source>Settings</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="3944"/> + <source>Help</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2339"/> + <source>Profiles</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2340"/> + <source>Plugins</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2482"/> + <source><p>This part of the status bar displays the current editors language.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2489"/> + <source><p>This part of the status bar displays the current editors encoding.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2496"/> + <source><p>This part of the status bar displays the current editors eol setting.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2503"/> + <source><p>This part of the status bar displays an indication of the current editors files writability.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2510"/> + <source><p>This part of the status bar displays the line number of the current editor.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2517"/> + <source><p>This part of the status bar displays the cursor position of the current editor.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2584"/> + <source>External Tools/{0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2670"/> + <source><h3>Version Numbers</h3><table></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5508"/> + <source></table></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2721"/> + <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="2963"/> + <source>Restart application</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2963"/> + <source>The application needs to be restarted. Do it now?</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2995"/> + <source>Configure Tool Groups ...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2998"/> + <source>Configure current Tool Group ...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="3047"/> + <source>&Builtin Tools</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="3055"/> + <source>&Plugin Tools</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="3145"/> + <source>&Show all</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="3147"/> + <source>&Hide all</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="3721"/> + <source>There is no main script defined for the current project. Aborting</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="3896"/> + <source>Qt 3 support</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="3896"/> + <source>Qt v.3 is not supported by eric5.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4052"/> + <source>Problem</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4052"/> + <source><p>The file <b>{0}</b> does not exist or is zero length.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4204"/> + <source>Process Generation Error</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="3816"/> + <source><p>Could not start Qt-Designer.<br>Ensure that it is available as <b>{0}</b>.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="3873"/> + <source><p>Could not start Qt-Linguist.<br>Ensure that it is available as <b>{0}</b>.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="3917"/> + <source><p>Could not start Qt-Assistant.<br>Ensure that it is available as <b>{0}</b>.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="3944"/> + <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="3956"/> + <source><p>Could not start custom viewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="3975"/> + <source><p>Could not start the help viewer.<br>Ensure that it is available as <b>hh</b>.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4015"/> + <source><p>Could not start UI Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4060"/> + <source><p>Could not start Translation Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4079"/> + <source><p>Could not start SQL Browser.<br>Ensure that it is available as <b>{0}</b>.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4152"/> + <source>External Tools</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4146"/> + <source>No tool entry found for external tool '{0}' in tool group '{1}'.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4152"/> + <source>No toolgroup entry '{0}' found.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4188"/> + <source>Starting process '{0} {1}'. +</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4204"/> + <source><p>Could not start the tool entry <b>{0}</b>.<br>Ensure that it is available as <b>{1}</b>.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4281"/> + <source>Process '{0}' has exited. +</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4570"/> + <source>Documentation Missing</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4570"/> + <source><p>The documentation starting point "<b>{0}</b>" could not be found.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4555"/> + <source>Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4464"/> + <source><p>The PyQt4 documentation starting point has not been configured.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4555"/> + <source><p>The PySide documentation starting point has not been configured.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4833"/> + <source>Keyboard shortcut file (*.e4k)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4963"/> + <source>Save tasks</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4963"/> + <source><p>The tasks file <b>{0}</b> could not be written.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4985"/> + <source>Read tasks</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="4985"/> + <source><p>The tasks file <b>{0}</b> could not be read.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5000"/> + <source>Save session</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5000"/> + <source><p>The session file <b>{0}</b> could not be written.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5023"/> + <source>Read session</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5023"/> + <source><p>The session file <b>{0}</b> could not be read.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5195"/> + <source>Drop Error</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5195"/> + <source><p><b>{0}</b> is not a file.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5333"/> + <source>&Cancel</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5338"/> + <source>Trying host {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5461"/> + <source>Update available</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5461"/> + <source>The update to <b>{0}</b> of eric5 is available at <b>{1}</b>. Would you like to get it?</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5470"/> + <source>Eric5 is up to date</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5470"/> + <source>You are using the latest version of eric5</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5474"/> + <source>Error during updates check</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5474"/> + <source>Could not perform updates check.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5495"/> + <source><h3>Available versions</h3><table></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5535"/> + <source>First time usage</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="5535"/> + <source>eric5 has not been configured yet. The configuration dialog will be started.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python 3 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2051"/> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python &3 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2053"/> + <location filename="UI/UserInterface.py" line="2067"/> <source>Open Python 3 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2054"/> - <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python 2 Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python &2 Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="UI/UserInterface.py" line="2068"/> + <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python 2 Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python &2 Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2082"/> <source>Open Python 2 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2069"/> + <location filename="UI/UserInterface.py" line="2083"/> <source><b>Python 2 Documentation</b><p>Display the Python 2 documentation. If no documentation directory is configured, the location of the Python 2 documentation is assumed to be the doc directory underneath the location of the configured Python 2 executable on Windows and <i>/usr/share/doc/packages/python/html/python-docs-html</i> on Unix. Set PYTHON2DOCDIR in your environment to override this. </p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <source>Error getting versions information</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5356"/> + <location filename="UI/UserInterface.py" line="5382"/> <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="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <source>Open Browser</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <source>Could not start a web browser</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <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> @@ -51468,12 +51468,12 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4109"/> + <location filename="UI/UserInterface.py" line="4126"/> <source><p>Could not start Snapshot tool.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5527"/> + <location filename="UI/UserInterface.py" line="5553"/> <source>Select Workspace Directory</source> <translation type="unfinished"></translation> </message> @@ -51703,7 +51703,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2206"/> + <location filename="UI/UserInterface.py" line="2223"/> <source>&Windows</source> <translation type="unfinished"></translation> </message> @@ -51778,30 +51778,50 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt5 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt&5 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2025"/> + <location filename="UI/UserInterface.py" line="2039"/> <source>Open Qt5 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2026"/> + <location filename="UI/UserInterface.py" line="2040"/> <source><b>Qt5 Documentation</b><p>Display the Qt5 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2510"/> + <location filename="UI/UserInterface.py" line="2527"/> <source><p>This part of the status bar allows zooming the current editor, shell or terminal.</p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1920"/> + <source>Manage the saved SSL certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1922"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>UserPropertiesDialog</name>
--- a/i18n/eric5_es.ts Fri Jan 18 19:31:43 2013 +0100 +++ b/i18n/eric5_es.ts Fri Jan 18 19:50:13 2013 +0100 @@ -7098,49 +7098,288 @@ </message> </context> <context> + <name>E5SslCertificatesDialog</name> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="14"/> + <source>SSL Certificate Manager</source> + <translation type="unfinished">Gestor de Certificados SSL</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="27"/> + <source>&Servers</source> + <translation type="unfinished">&Servidores</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="33"/> + <source>You have saved certificates identifying these servers:</source> + <translation type="unfinished">Ha almacenado certificados que identifican estos servidores:</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="140"/> + <source>Certificate name</source> + <translation type="unfinished">Nombre de certificado</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="46"/> + <source>Server</source> + <translation type="unfinished">Servidor</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="145"/> + <source>Expiry Date</source> + <translation type="unfinished">Fecha de expiración</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="158"/> + <source>Press to view the selected certificate</source> + <translation type="unfinished">Pulse para ver el certificado seleccionado</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="161"/> + <source>&View...</source> + <translation type="unfinished">&Ver...</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="168"/> + <source>Press to import a certificate</source> + <translation type="unfinished">Pulse para importar un certificado</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="171"/> + <source>&Import...</source> + <translation type="unfinished">&Importar...</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="181"/> + <source>Press to export the selected certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="184"/> + <source>&Export...</source> + <translation type="unfinished">&Exportar...</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="194"/> + <source>Press to delete the selected certificate</source> + <translation type="unfinished">Pulse para borrar el certificado seleccionado</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="197"/> + <source>&Delete...</source> + <translation type="unfinished">&Borrar...</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="126"/> + <source>Certificate &Authorities</source> + <translation type="unfinished">&Autoridades Certificadoras</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="132"/> + <source>You have saved certificates identifying these certification authorities:</source> + <translation type="unfinished">Ha almacenado certificados que identifican estas autoridades certificadoras:</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="274"/> + <source>(Unknown)</source> + <translation type="unfinished">(Desconocido)</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="276"/> + <source>(Unknown common name)</source> + <translation type="unfinished">(Nombre común desconocido)</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source>Delete Server Certificate</source> + <translation type="unfinished">Borrar Certificado del Servidor</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> + <translation type="unfinished"><p>¿Desea realmente borrar el certificado del servidor?</p><p>{0}</p><p>Si el certificado del servidor es eliminado, los chequeos de seguridad normales se reinstanciarán y el servidor deberá presentar un certificado válido.</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Import Certificate</source> + <translation type="unfinished">Importar Certificado</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="363"/> + <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> + <translation type="unfinished"><p>El certificado <b>{0}</b> ya existe. Omitiendo.</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source>Delete CA Certificate</source> + <translation type="unfinished">Borrar Certificado de la CA</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> + <translation type="unfinished"><p>¿Desea realmente borrar el certificado de la CA?</p><p>{0}</p><p>Si el certificado de la CA es eliminado, el navegador no considerará ningún certificado emitido por esta CA como de confianza.</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source>Export Certificate</source> + <translation type="unfinished">Exportar Certificado</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="399"/> + <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> + <translation type="unfinished">Archivo de Certificado (PEM) (*.pem);;Archivo de Certificado (DER) (*.der)</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="415"/> + <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="425"/> + <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> + <translation type="unfinished"><p>El certificado no se ha podido guardar en el archivo <b>{0}</b></p><p>Error: {1}</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> + <translation type="unfinished">Archivos de Certificado (*.pem *.crt *.der *.cer *.ca);;Todos los Archivos (*)</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> + <translation type="unfinished"><p>El certificado no se ha podido recuperar del archivo <b>{0}</b></p><p>Error: {1}</p></translation> + </message> +</context> +<context> <name>E5SslErrorHandler</name> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source>SSL Errors</source> <translation type="unfinished"></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source><p>SSL Errors for <br /><b>{0}</b><ul><li>{1}</li></ul></p><p>Do you want to ignore these errors?</p></source> <translation type="unfinished"><p>Errores de SSL para <br /><b>{0}</b><ul><li>{1}</li></ul></p><p>¿Desea ignorar estos errores?</p></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source>Certificates</source> <translation type="unfinished">Certificados</translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source><p>Certificates:<br/>{0}<br/>Do you want to accept all these certificates?</p></source> <translation type="unfinished"><p>Certificados:<br/>{0}<br/>¿Desea aceptar todos estos certificados?</p></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="184"/> - <source>Name: {0}</source> - <translation type="unfinished">Nombre: {0}</translation> - </message> - <message> - <location filename="E5Network/E5SslErrorHandler.py" line="188"/> - <source><br/>Organization: {0}</source> - <translation type="unfinished"><br/>Organización: {0}</translation> - </message> - <message> <location filename="E5Network/E5SslErrorHandler.py" line="192"/> - <source><br/>Issuer: {0}</source> - <translation type="unfinished"><br/>Emisor: {0}</translation> + <source>Name: {0}</source> + <translation type="unfinished">Nombre: {0}</translation> </message> <message> <location filename="E5Network/E5SslErrorHandler.py" line="196"/> + <source><br/>Organization: {0}</source> + <translation type="unfinished"><br/>Organización: {0}</translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="200"/> + <source><br/>Issuer: {0}</source> + <translation type="unfinished"><br/>Emisor: {0}</translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="204"/> <source><br/>Not valid before: {0}<br/>Valid Until: {1}</source> <translation type="unfinished"><br/>No válido antes de: {0}<br/>Válido Hasta: {1}</translation> </message> </context> <context> + <name>E5SslInfoDialog</name> + <message> + <location filename="E5Network/E5SslInfoDialog.ui" line="14"/> + <source>SSL Certificate Info</source> + <translation type="unfinished">Información del Certificado SSL</translation> + </message> +</context> +<context> + <name>E5SslInfoWidget</name> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="17"/> + <source>This certificated has been blacklisted.</source> + <translation type="unfinished">Este certificado está en una lista negra.</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="24"/> + <source><b>Issued for</b></source> + <translation type="unfinished"><b>Emitido para</b></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="118"/> + <source>Common Name (CN)</source> + <translation type="unfinished">Nombre Común (CN)</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="138"/> + <source>Organization (O)</source> + <translation type="unfinished">Organización (O)</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="158"/> + <source>Organizational Unit (OU)</source> + <translation type="unfinished">Unidad Organizacional (OU)</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="91"/> + <source>Serialnumber</source> + <translation type="unfinished">Número de serie</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="111"/> + <source><b>Issued by</b></source> + <translation type="unfinished"><b>Emitido por</b></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="178"/> + <source><b>Validity</b></source> + <translation type="unfinished"><b>Validez</b></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="185"/> + <source>Issued on</source> + <translation type="unfinished">Emitido a</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="205"/> + <source>Expires on</source> + <translation type="unfinished">Expira en</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="225"/> + <source>This certificate is not valid yet or has expired.</source> + <translation type="unfinished">Este certificado no es válido aún o ha expirado.</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="232"/> + <source><b>Fingerprints</b></source> + <translation type="unfinished"><b>Fingerprints</b></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="239"/> + <source>SHA1-Fingerprint</source> + <translation type="unfinished">SHA1-Fingerprint</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="259"/> + <source>MD5-Fingerprint</source> + <translation type="unfinished">MD5-Fingerprint</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.py" line="111"/> + <source><not part of the certificate></source> + <translation type="unfinished"><no es parte del certificado></translation> + </message> +</context> +<context> <name>E5ToolBarDialog</name> <message> <location filename="E5Gui/E5ToolBarDialog.ui" line="14"/> @@ -17090,22 +17329,22 @@ <message> <location filename="Helpviewer/HelpWindow.py" line="1230"/> <source>Manage Certificates</source> - <translation>Gestionar Certificados</translation> + <translation type="obsolete">Gestionar Certificados</translation> </message> <message> <location filename="Helpviewer/HelpWindow.py" line="1230"/> <source>Manage Certificates...</source> - <translation>Gestionar Certificados...</translation> + <translation type="obsolete">Gestionar Certificados...</translation> </message> <message> <location filename="Helpviewer/HelpWindow.py" line="1234"/> <source>Manage the saved certificates</source> - <translation>Gestionar los certificados almacenados</translation> + <translation type="obsolete">Gestionar los certificados almacenados</translation> </message> <message> <location filename="Helpviewer/HelpWindow.py" line="1236"/> <source><b>Manage Saved Certificates...</b><p>Opens a dialog to manage the saved certificates.</p></source> - <translation><b>Gestionar Certificados Almacenados</b><p>Abre un diálogo para gestionar los certificados almacenados.</p></translation> + <translation type="obsolete"><b>Gestionar Certificados Almacenados</b><p>Abre un diálogo para gestionar los certificados almacenados.</p></translation> </message> <message> <location filename="Helpviewer/HelpWindow.py" line="1615"/> @@ -17373,6 +17612,26 @@ <source><b>GreaseMonkey Scripts...</b><p>Opens a dialog to configure the available GreaseMonkey Scripts.</p></source> <translation><b>Scripts de GreaseMonkey...</b><p>Abre un diálogo para configurar los Scripts de GreaseMonkey disponibles.</p></translation> </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1234"/> + <source>Manage the saved SSL certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1236"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>Hg</name> @@ -18671,12 +18930,12 @@ <translation>Imponer operación</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="46"/> <source>Mercurial Move</source> <translation>Mercurial Move</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="81"/> <source>Select target</source> <translation>Seleccionar destino</translation> </message> @@ -40533,152 +40792,147 @@ <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="14"/> <source>SSL Certificate Manager</source> - <translation>Gestor de Certificados SSL</translation> + <translation type="obsolete">Gestor de Certificados SSL</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="27"/> <source>&Servers</source> - <translation>&Servidores</translation> + <translation type="obsolete">&Servidores</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="33"/> <source>You have saved certificates identifying these servers:</source> - <translation>Ha almacenado certificados que identifican estos servidores:</translation> + <translation type="obsolete">Ha almacenado certificados que identifican estos servidores:</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="140"/> <source>Certificate name</source> - <translation>Nombre de certificado</translation> + <translation type="obsolete">Nombre de certificado</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="46"/> <source>Server</source> - <translation>Servidor</translation> + <translation type="obsolete">Servidor</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="145"/> <source>Expiry Date</source> - <translation>Fecha de expiración</translation> + <translation type="obsolete">Fecha de expiración</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="158"/> <source>Press to view the selected certificate</source> - <translation>Pulse para ver el certificado seleccionado</translation> + <translation type="obsolete">Pulse para ver el certificado seleccionado</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="161"/> <source>&View...</source> - <translation>&Ver...</translation> + <translation type="obsolete">&Ver...</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="194"/> <source>Press to delete the selected certificate</source> - <translation>Pulse para borrar el certificado seleccionado</translation> + <translation type="obsolete">Pulse para borrar el certificado seleccionado</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="197"/> <source>&Delete...</source> - <translation>&Borrar...</translation> + <translation type="obsolete">&Borrar...</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="126"/> <source>Certificate &Authorities</source> - <translation>&Autoridades Certificadoras</translation> + <translation type="obsolete">&Autoridades Certificadoras</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="132"/> <source>You have saved certificates identifying these certification authorities:</source> - <translation>Ha almacenado certificados que identifican estas autoridades certificadoras:</translation> + <translation type="obsolete">Ha almacenado certificados que identifican estas autoridades certificadoras:</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="274"/> <source>(Unknown)</source> - <translation>(Desconocido)</translation> + <translation type="obsolete">(Desconocido)</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="276"/> <source>(Unknown common name)</source> - <translation>(Nombre común desconocido)</translation> + <translation type="obsolete">(Nombre común desconocido)</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> <source>Delete Server Certificate</source> - <translation>Borrar Certificado del Servidor</translation> + <translation type="obsolete">Borrar Certificado del Servidor</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> - <translation><p>¿Desea realmente borrar el certificado del servidor?</p><p>{0}</p><p>Si el certificado del servidor es eliminado, los chequeos de seguridad normales se reinstanciarán y el servidor deberá presentar un certificado válido.</p></translation> + <translation type="obsolete"><p>¿Desea realmente borrar el certificado del servidor?</p><p>{0}</p><p>Si el certificado del servidor es eliminado, los chequeos de seguridad normales se reinstanciarán y el servidor deberá presentar un certificado válido.</p></translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="168"/> <source>Press to import a certificate</source> - <translation>Pulse para importar un certificado</translation> + <translation type="obsolete">Pulse para importar un certificado</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="171"/> <source>&Import...</source> - <translation>&Importar...</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="181"/> - <source>Press to export the selected certificate</source> - <translation></translation> + <translation type="obsolete">&Importar...</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="184"/> <source>&Export...</source> - <translation>&Exportar...</translation> + <translation type="obsolete">&Exportar...</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> <source>Import Certificate</source> - <translation>Importar Certificado</translation> + <translation type="obsolete">Importar Certificado</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="363"/> <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> - <translation><p>El certificado <b>{0}</b> ya existe. Omitiendo.</p></translation> + <translation type="obsolete"><p>El certificado <b>{0}</b> ya existe. Omitiendo.</p></translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> <source>Delete CA Certificate</source> - <translation>Borrar Certificado de la CA</translation> + <translation type="obsolete">Borrar Certificado de la CA</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> - <translation><p>¿Desea realmente borrar el certificado de la CA?</p><p>{0}</p><p>Si el certificado de la CA es eliminado, el navegador no considerará ningún certificado emitido por esta CA como de confianza.</p></translation> + <translation type="obsolete"><p>¿Desea realmente borrar el certificado de la CA?</p><p>{0}</p><p>Si el certificado de la CA es eliminado, el navegador no considerará ningún certificado emitido por esta CA como de confianza.</p></translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> <source>Export Certificate</source> - <translation>Exportar Certificado</translation> + <translation type="obsolete">Exportar Certificado</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="399"/> <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> - <translation>Archivo de Certificado (PEM) (*.pem);;Archivo de Certificado (DER) (*.der)</translation> + <translation type="obsolete">Archivo de Certificado (PEM) (*.pem);;Archivo de Certificado (DER) (*.der)</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="415"/> <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> - <translation><p>El archivo <b>{0}</b> ya existe. ¿Desea sobreescribirlo?</p></translation> + <translation type="obsolete"><p>El archivo <b>{0}</b> ya existe. ¿Desea sobreescribirlo?</p></translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="425"/> <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> - <translation><p>El certificado no se ha podido guardar en el archivo <b>{0}</b></p><p>Error: {1}</p></translation> + <translation type="obsolete"><p>El certificado no se ha podido guardar en el archivo <b>{0}</b></p><p>Error: {1}</p></translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> - <translation>Archivos de Certificado (*.pem *.crt *.der *.cer *.ca);;Todos los Archivos (*)</translation> + <translation type="obsolete">Archivos de Certificado (*.pem *.crt *.der *.cer *.ca);;Todos los Archivos (*)</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> - <translation><p>El certificado no se ha podido recuperar del archivo <b>{0}</b></p><p>Error: {1}</p></translation> + <translation type="obsolete"><p>El certificado no se ha podido recuperar del archivo <b>{0}</b></p><p>Error: {1}</p></translation> </message> </context> <context> @@ -40686,7 +40940,7 @@ <message> <location filename="Helpviewer/SslInfoDialog.ui" line="14"/> <source>SSL Certificate Info</source> - <translation>Información del Certificado SSL</translation> + <translation type="obsolete">Información del Certificado SSL</translation> </message> </context> <context> @@ -40694,77 +40948,77 @@ <message> <location filename="Helpviewer/SslInfoWidget.ui" line="17"/> <source>This certificated has been blacklisted.</source> - <translation>Este certificado está en una lista negra.</translation> + <translation type="obsolete">Este certificado está en una lista negra.</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="24"/> <source><b>Issued for</b></source> - <translation><b>Emitido para</b></translation> + <translation type="obsolete"><b>Emitido para</b></translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="118"/> <source>Common Name (CN)</source> - <translation>Nombre Común (CN)</translation> + <translation type="obsolete">Nombre Común (CN)</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="138"/> <source>Organization (O)</source> - <translation>Organización (O)</translation> + <translation type="obsolete">Organización (O)</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="158"/> <source>Organizational Unit (OU)</source> - <translation>Unidad Organizacional (OU)</translation> + <translation type="obsolete">Unidad Organizacional (OU)</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="91"/> <source>Serialnumber</source> - <translation>Número de serie</translation> + <translation type="obsolete">Número de serie</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="111"/> <source><b>Issued by</b></source> - <translation><b>Emitido por</b></translation> + <translation type="obsolete"><b>Emitido por</b></translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="178"/> <source><b>Validity</b></source> - <translation><b>Validez</b></translation> + <translation type="obsolete"><b>Validez</b></translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="185"/> <source>Issued on</source> - <translation>Emitido a</translation> + <translation type="obsolete">Emitido a</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="205"/> <source>Expires on</source> - <translation>Expira en</translation> + <translation type="obsolete">Expira en</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="225"/> <source>This certificate is not valid yet or has expired.</source> - <translation>Este certificado no es válido aún o ha expirado.</translation> + <translation type="obsolete">Este certificado no es válido aún o ha expirado.</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="232"/> <source><b>Fingerprints</b></source> - <translation><b>Fingerprints</b></translation> + <translation type="obsolete"><b>Fingerprints</b></translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="239"/> <source>SHA1-Fingerprint</source> - <translation>SHA1-Fingerprint</translation> + <translation type="obsolete">SHA1-Fingerprint</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="259"/> <source>MD5-Fingerprint</source> - <translation>MD5-Fingerprint</translation> + <translation type="obsolete">MD5-Fingerprint</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.py" line="111"/> <source><not part of the certificate></source> - <translation><no es parte del certificado></translation> + <translation type="obsolete"><no es parte del certificado></translation> </message> </context> <context> @@ -42439,12 +42693,12 @@ <p>Seleccione el nombre de destino para la operación a través de un diálogo de selección.</p></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="46"/> <source>Subversion Move</source> <translation>Move de Subversion</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="81"/> <source>Select target</source> <translation>Seleccionar destino</translation> </message> @@ -50158,7 +50412,7 @@ <context> <name>UrlBar</name> <message> - <location filename="Helpviewer/UrlBar/UrlBar.py" line="199"/> + <location filename="Helpviewer/UrlBar/UrlBar.py" line="198"/> <source>Unknown</source> <translation>Desconocido</translation> </message> @@ -50574,7 +50828,7 @@ <translation>Mostrar las versiones disponibles para descarga</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2704"/> + <location filename="UI/UserInterface.py" line="2721"/> <source>Report Bug</source> <translation>Enviar informe de bugs</translation> </message> @@ -50594,7 +50848,7 @@ <translation><b>Enviar informe de Bugs...</b><p>Abre un diálogo para enviar un informe de un error (bug).</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2319"/> + <location filename="UI/UserInterface.py" line="2336"/> <source>Unittest</source> <translation>Test Unitario</translation> </message> @@ -50654,7 +50908,7 @@ <translation><b>Test Unitario de Script</b><p>Ejecuta un test unitario con el script actual.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3704"/> + <location filename="UI/UserInterface.py" line="3721"/> <source>Unittest Project</source> <translation>Test Unitario de Proyecto</translation> </message> @@ -50834,7 +51088,7 @@ <translation><b>Atajos de Teclado</b><p>Establezca los atajos de teclado para la aplicación con sus valores preferidos.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4793"/> + <location filename="UI/UserInterface.py" line="4810"/> <source>Export Keyboard Shortcuts</source> <translation>Exportar Atajos de Teclado</translation> </message> @@ -50854,7 +51108,7 @@ <translation><b>Exportar Atajos de Teclado</b><p>Exporte los atajos de teclado de la aplicación.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4816"/> + <location filename="UI/UserInterface.py" line="4833"/> <source>Import Keyboard Shortcuts</source> <translation>Importar Atajos de Teclado</translation> </message> @@ -50874,337 +51128,337 @@ <translation><b>Importar Atajos de Teclado</b><p>Importe los atajos de teclado de la aplicación.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Activate current editor</source> <translation>Activar editor actual</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Alt+Shift+E</source> <translation>Alt+Shift+E</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Ctrl+Alt+Tab</source> <translation>Ctrl+Alt+Tab</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Shift+Ctrl+Alt+Tab</source> <translation>Shift+Ctrl+Alt+Tab</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>Plugin Infos</source> <translation>Información sobre Plugins</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>&Plugin Infos...</source> <translation>Información sobre &Plugins...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1951"/> + <location filename="UI/UserInterface.py" line="1965"/> <source>Show Plugin Infos</source> <translation>Mostrar Información sobre Plugins</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1952"/> + <location filename="UI/UserInterface.py" line="1966"/> <source><b>Plugin Infos...</b><p>This opens a dialog, that show some information about loaded plugins.</p></source> <translation><b>Información sobre Plugins...</b><p>Abre un diálogo que muestra información sobre las extensiones (plugins) cargadas.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1974"/> + <location filename="UI/UserInterface.py" line="1988"/> <source>Uninstall Plugin</source> <translation>Desinstalar Plugin</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1971"/> - <source>&Uninstall Plugin...</source> - <translation>Desinstalar Pl&ugin...</translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="1975"/> - <source><b>Uninstall Plugin...</b><p>This opens a dialog to uninstall a plugin.</p></source> - <translation><b>Desinstalar Plugin...</b><p>Abre un diálogo para desinstalar una extensión o plugin.</p></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="1982"/> - <source>Plugin Repository</source> - <translation>Repositorio de Plugins</translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="1982"/> - <source>Plugin &Repository...</source> - <translation>&Repositorio de Plugins...</translation> - </message> - <message> <location filename="UI/UserInterface.py" line="1985"/> + <source>&Uninstall Plugin...</source> + <translation>Desinstalar Pl&ugin...</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1989"/> + <source><b>Uninstall Plugin...</b><p>This opens a dialog to uninstall a plugin.</p></source> + <translation><b>Desinstalar Plugin...</b><p>Abre un diálogo para desinstalar una extensión o plugin.</p></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1996"/> + <source>Plugin Repository</source> + <translation>Repositorio de Plugins</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1996"/> + <source>Plugin &Repository...</source> + <translation>&Repositorio de Plugins...</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1999"/> <source>Show Plugins available for download</source> <translation>Mostrar Plugins disponibles para descarga</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1987"/> + <location filename="UI/UserInterface.py" line="2001"/> <source><b>Plugin Repository...</b><p>This opens a dialog, that shows a list of plugins available on the Internet.</p></source> <translation><b>Repositorios de Plugins...</b><p>Abre un diálogo que muestra una lista de extensiones (plugins) disponibles en Internet.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt4 Documentation</source> <translation>Documentación de Qt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt&4 Documentation</source> <translation>Documentación de Qt&4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2013"/> + <location filename="UI/UserInterface.py" line="2027"/> <source>Open Qt4 Documentation</source> <translation>Abrir Documentación de Qt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2014"/> + <location filename="UI/UserInterface.py" line="2028"/> <source><b>Qt4 Documentation</b><p>Display the Qt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>Documentación de Qt4</b><p>Muestra la Documentación de Qt4. Dependiendo de la configuración, esta documentación será mostrará en el visor de ayuda interno de Eric,en un navegador web, o se ejecutará Qt Assistant.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>PyQt4 Documentation</source> <translation>Documentación de PyQt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>P&yQt4 Documentation</source> <translation>Documentación de P&yQt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2037"/> + <location filename="UI/UserInterface.py" line="2051"/> <source>Open PyQt4 Documentation</source> <translation>Abrir Documentación de PyQt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2038"/> + <location filename="UI/UserInterface.py" line="2052"/> <source><b>PyQt4 Documentation</b><p>Display the PyQt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>Documentación de PyQt4</b><p>Muestra la Documentación de PyQt4. Dependiendo de la configuración, esta documentación será mostrará en el visor de ayuda interno de Eric,en un navegador web, o se ejecutará Qt Assistant.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2087"/> + <location filename="UI/UserInterface.py" line="2101"/> <source>Eric API Documentation</source> <translation>Documentación de API de Eric</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2087"/> + <location filename="UI/UserInterface.py" line="2101"/> <source>&Eric API Documentation</source> <translation>Documentación de API de &Eric</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2089"/> + <location filename="UI/UserInterface.py" line="2103"/> <source>Open Eric API Documentation</source> <translation>Abrir Documentación de API de Eric</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2145"/> + <location filename="UI/UserInterface.py" line="2159"/> <source>&Unittest</source> <translation>Te&st Unitario</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2162"/> + <location filename="UI/UserInterface.py" line="2176"/> <source>E&xtras</source> <translation>E&xtras</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2167"/> + <location filename="UI/UserInterface.py" line="2181"/> <source>Wi&zards</source> <translation>Asis&tentes</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2174"/> + <location filename="UI/UserInterface.py" line="2188"/> <source>&Tools</source> <translation>&Herramientas</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2177"/> + <location filename="UI/UserInterface.py" line="2191"/> <source>Select Tool Group</source> <translation>Seleccionar Grupo de Herramientas</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2183"/> + <location filename="UI/UserInterface.py" line="2197"/> <source>Se&ttings</source> <translation>Con&figuración</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2201"/> + <location filename="UI/UserInterface.py" line="2218"/> <source>&Window</source> <translation>Ven&tana</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2226"/> + <location filename="UI/UserInterface.py" line="2243"/> <source>&Toolbars</source> <translation>&Barra de Herramientas</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2237"/> + <location filename="UI/UserInterface.py" line="2254"/> <source>P&lugins</source> <translation>P&lugins</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2251"/> + <location filename="UI/UserInterface.py" line="2268"/> <source>&Help</source> <translation>Ay&uda</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2318"/> + <location filename="UI/UserInterface.py" line="2335"/> <source>Tools</source> <translation>Herramientas</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2320"/> + <location filename="UI/UserInterface.py" line="2337"/> <source>Settings</source> <translation>Ajustes</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3927"/> + <location filename="UI/UserInterface.py" line="3944"/> <source>Help</source> <translation>Ayuda</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2322"/> + <location filename="UI/UserInterface.py" line="2339"/> <source>Profiles</source> <translation>Perfiles</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2323"/> + <location filename="UI/UserInterface.py" line="2340"/> <source>Plugins</source> <translation>Plugins</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2653"/> + <location filename="UI/UserInterface.py" line="2670"/> <source><h3>Version Numbers</h3><table></source> <translation><h3>Números de Versiones</h3><table></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5482"/> + <location filename="UI/UserInterface.py" line="5508"/> <source></table></source> <translation></table></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2704"/> + <location filename="UI/UserInterface.py" line="2721"/> <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="2978"/> + <location filename="UI/UserInterface.py" line="2995"/> <source>Configure Tool Groups ...</source> <translation>Configurar Grupos de Herramientas ...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2981"/> + <location filename="UI/UserInterface.py" line="2998"/> <source>Configure current Tool Group ...</source> <translation>Configurar Grupo de Herramientas actual ...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3030"/> + <location filename="UI/UserInterface.py" line="3047"/> <source>&Builtin Tools</source> <translation>Herramientas de serie (&builtin)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3038"/> + <location filename="UI/UserInterface.py" line="3055"/> <source>&Plugin Tools</source> <translation>Herramientas de Extensión (&Plugin)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3128"/> + <location filename="UI/UserInterface.py" line="3145"/> <source>&Show all</source> <translation>&Ver todo</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3130"/> + <location filename="UI/UserInterface.py" line="3147"/> <source>&Hide all</source> <translation>&Ocultar todo</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3704"/> + <location filename="UI/UserInterface.py" line="3721"/> <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="UI/UserInterface.py" line="4035"/> + <location filename="UI/UserInterface.py" line="4052"/> <source>Problem</source> <translation>Problema</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4187"/> + <location filename="UI/UserInterface.py" line="4204"/> <source>Process Generation Error</source> <translation>Error de Generación de Proceso</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3927"/> + <location filename="UI/UserInterface.py" line="3944"/> <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="3958"/> + <location filename="UI/UserInterface.py" line="3975"/> <source><p>Could not start the help viewer.<br>Ensure that it is available as <b>hh</b>.</p></source> <translation><p>No se ha podido ejecutar el visor de ayuda.<br>Asegúrese de que esta disponible como <b>hh</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4553"/> + <location filename="UI/UserInterface.py" line="4570"/> <source>Documentation Missing</source> <translation>Falta documentación</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4538"/> + <location filename="UI/UserInterface.py" line="4555"/> <source>Documentation</source> <translation>Documentación</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4447"/> + <location filename="UI/UserInterface.py" line="4464"/> <source><p>The PyQt4 documentation starting point has not been configured.</p></source> <translation><P>El punto de entrada de documentación de PyQt4 no ha sido configurado.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4937"/> + <location filename="UI/UserInterface.py" line="4963"/> <source>Save tasks</source> <translation>Guardar tareas</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4959"/> + <location filename="UI/UserInterface.py" line="4985"/> <source>Read tasks</source> <translation>Leer tareas</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5169"/> + <location filename="UI/UserInterface.py" line="5195"/> <source>Drop Error</source> <translation>Error de volcado</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5448"/> + <location filename="UI/UserInterface.py" line="5474"/> <source>Error during updates check</source> <translation>Error durante la verificación de actualización</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5307"/> + <location filename="UI/UserInterface.py" line="5333"/> <source>&Cancel</source> <translation>&Cancelar</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5435"/> + <location filename="UI/UserInterface.py" line="5461"/> <source>Update available</source> <translation>Actualizaciones disponibles</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5448"/> + <location filename="UI/UserInterface.py" line="5474"/> <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="5469"/> + <location filename="UI/UserInterface.py" line="5495"/> <source><h3>Available versions</h3><table></source> <translation><h3>Versiones disponibles</h3><table></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5509"/> + <location filename="UI/UserInterface.py" line="5535"/> <source>First time usage</source> <translation>Usado por primera vez</translation> </message> @@ -51224,17 +51478,17 @@ <translation><b>Mini Editor</b><p>Abre un diálogo con un editor simple.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1963"/> + <location filename="UI/UserInterface.py" line="1977"/> <source>Install Plugins</source> <translation>Instalar Plugins</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1960"/> + <location filename="UI/UserInterface.py" line="1974"/> <source>&Install Plugins...</source> <translation>&Instalar Plugins...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1964"/> + <location filename="UI/UserInterface.py" line="1978"/> <source><b>Install Plugins...</b><p>This opens a dialog to install or update plugins.</p></source> <translation><b>Instalar Plugins...</b><p>Abre un diálogo para instalar o actualizar extensiones (plugins).</p></translation> </message> @@ -51264,7 +51518,7 @@ <translation>Restaurando Gestor de Barras de Herramientas...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4135"/> + <location filename="UI/UserInterface.py" line="4152"/> <source>External Tools</source> <translation>Herramientas Externas</translation> </message> @@ -51279,22 +51533,22 @@ <translation>Visor de &Multiproyecto</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4974"/> + <location filename="UI/UserInterface.py" line="5000"/> <source>Save session</source> <translation>Guardar sesión</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4997"/> + <location filename="UI/UserInterface.py" line="5023"/> <source>Read session</source> <translation>Cargar sesión</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2472"/> + <location filename="UI/UserInterface.py" line="2489"/> <source><p>This part of the status bar displays the current editors encoding.</p></source> <translation><p>Esta zona de la barra de estado muestra la codificación del editor actual.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2486"/> + <location filename="UI/UserInterface.py" line="2503"/> <source><p>This part of the status bar displays an indication of the current editors files writability.</p></source> <translation><p>Esta zona de la barra de estado muestra una indicación de las propiedades de escritura de los archivos del editor.</p></translation> </message> @@ -51324,17 +51578,17 @@ <translation><b>Solicitar nueva Característica...</b><p>Abre un diálogo para enviar una solicitud de nueva característica.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2465"/> + <location filename="UI/UserInterface.py" line="2482"/> <source><p>This part of the status bar displays the current editors language.</p></source> <translation><p>Esta zona de la barra de estado muestra el lenguaje del editor actual.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2493"/> + <location filename="UI/UserInterface.py" line="2510"/> <source><p>This part of the status bar displays the line number of the current editor.</p></source> <translation><p>Esta zona de la barra de estado muestra el número de línea en el editor actual.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2500"/> + <location filename="UI/UserInterface.py" line="2517"/> <source><p>This part of the status bar displays the cursor position of the current editor.</p></source> <translation><p>Esta zona de la barra de estado muestra la posición del cursor en el editor actual.</p></translation> </message> @@ -51379,32 +51633,32 @@ <translation><b>Conmutar la ventana de Caja de Herramientas Horizontal</b><p>Si la ventana de Caja de Herramientas Horizontal está escondida, se muestra. Si está siendo mostrada, se cierra.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2946"/> + <location filename="UI/UserInterface.py" line="2963"/> <source>Restart application</source> <translation>Reiniciar aplicación</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2946"/> + <location filename="UI/UserInterface.py" line="2963"/> <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="2246"/> + <location filename="UI/UserInterface.py" line="2263"/> <source>Configure...</source> <translation>Configurar...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2479"/> + <location filename="UI/UserInterface.py" line="2496"/> <source><p>This part of the status bar displays the current editors eol setting.</p></source> <translation><p>Esta zona de la barra de estado muestra la configuración actual de fin de línea (eol) para los editores.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Switch between tabs</source> <translation>Alternar entre pestañas</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Ctrl+1</source> <translation>Ctrl+1</translation> </message> @@ -51449,12 +51703,12 @@ <translation><b>Importar Preferencias</b><p>Importar una configuración previamente exportada.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Show next</source> <translation>Mostrar siguente</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Show previous</source> <translation>Mostrar anterior</translation> </message> @@ -51534,32 +51788,32 @@ <translation>Editor de &Iconos...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3879"/> + <location filename="UI/UserInterface.py" line="3896"/> <source>Qt 3 support</source> <translation>Soporte para Qt 3</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2108"/> + <location filename="UI/UserInterface.py" line="2122"/> <source><b>PySide Documentation</b><p>Display the PySide Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>Documentación de PySide</b><p>Muestra la Documentación de PySide. Dependiendo de la configuración, esta documentación será mostrará en el visor de ayuda interno de Eric,en un navegador web, o se ejecutará Qt Assistant.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4538"/> + <location filename="UI/UserInterface.py" line="4555"/> <source><p>The PySide documentation starting point has not been configured.</p></source> <translation><P>El punto de entrada de documentación de PySide no ha sido configurado.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2105"/> + <location filename="UI/UserInterface.py" line="2119"/> <source>PySide Documentation</source> <translation>Documentación de PySide</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2105"/> + <location filename="UI/UserInterface.py" line="2119"/> <source>Py&Side Documentation</source> <translation>Documentación de Py&Side</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2107"/> + <location filename="UI/UserInterface.py" line="2121"/> <source>Open PySide Documentation</source> <translation>Abrir Documentación de PySide</translation> </message> @@ -51614,135 +51868,135 @@ <translation><b>Mostrar herramientas externas</b><p>Abre un diálogo para mostrar la ruta y versiones de todas las herramientas externas que utiliza eric5.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2090"/> + <location filename="UI/UserInterface.py" line="2104"/> <source><b>Eric API Documentation</b><p>Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric5 installation directory.</p></source> <translation><b>Documentación de API de Eric</b><p>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 eric5.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2567"/> + <location filename="UI/UserInterface.py" line="2584"/> <source>External Tools/{0}</source> <translation>Herramientas Externas/{0}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3879"/> + <location filename="UI/UserInterface.py" line="3896"/> <source>Qt v.3 is not supported by eric5.</source> <translation>Qt v.3 no está soportado por eric5.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4035"/> + <location filename="UI/UserInterface.py" line="4052"/> <source><p>The file <b>{0}</b> does not exist or is zero length.</p></source> <translation><p>El archivo <b>{0}</b> no existe o tiene longitud nula. </p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3799"/> + <location filename="UI/UserInterface.py" line="3816"/> <source><p>Could not start Qt-Designer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>No se ha podido ejecutar Qt-Designer.<br>Asegúrese de que esta disponible como <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3856"/> + <location filename="UI/UserInterface.py" line="3873"/> <source><p>Could not start Qt-Linguist.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>No se ha podido ejecutar Qt-Linguist.<br>Asegúrese de que esta disponible como <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3900"/> + <location filename="UI/UserInterface.py" line="3917"/> <source><p>Could not start Qt-Assistant.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>No se ha podido ejecutar Qt-Assistant.<br>Asegúrese de que esta disponible como <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3939"/> + <location filename="UI/UserInterface.py" line="3956"/> <source><p>Could not start custom viewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>No se ha podido ejecutar el visor personalizado.<br>Asegúrese de que esta disponible como <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3998"/> + <location filename="UI/UserInterface.py" line="4015"/> <source><p>Could not start UI Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>No se ha podido ejecutar el Previsualizador de UI.<br>Asegúrese de que esta disponible como <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4043"/> + <location filename="UI/UserInterface.py" line="4060"/> <source><p>Could not start Translation Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>No se ha podido ejecutar el Previsualizador de Traducciones.<br>Asegúrese de que esta disponible como <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4062"/> + <location filename="UI/UserInterface.py" line="4079"/> <source><p>Could not start SQL Browser.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>No se ha podido iniciar el navegador SQL.<br>Asegúrese de que está disponible como <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4129"/> + <location filename="UI/UserInterface.py" line="4146"/> <source>No tool entry found for external tool '{0}' in tool group '{1}'.</source> <translation>No se ha encontrado la entrada para la herramienta externa '{0}' en el grupo de herramientas '{1}'.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4135"/> + <location filename="UI/UserInterface.py" line="4152"/> <source>No toolgroup entry '{0}' found.</source> <translation>No se ha encontrado la entrada para el grupo de herramientas '{0}'.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4171"/> + <location filename="UI/UserInterface.py" line="4188"/> <source>Starting process '{0} {1}'. </source> <translation>Comenzando proceso '{0} {1}'. </translation> </message> <message> - <location filename="UI/UserInterface.py" line="4187"/> + <location filename="UI/UserInterface.py" line="4204"/> <source><p>Could not start the tool entry <b>{0}</b>.<br>Ensure that it is available as <b>{1}</b>.</p></source> <translation><p>No se ha podido ejecutar la entrada de herramienta <b>{0}</b>.<br>Asegúrese de que esta disponible como <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4264"/> + <location filename="UI/UserInterface.py" line="4281"/> <source>Process '{0}' has exited. </source> <translation>El proceso '{0}' ha finalizado.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4553"/> + <location filename="UI/UserInterface.py" line="4570"/> <source><p>The documentation starting point "<b>{0}</b>" could not be found.</p></source> <translation><P>El punto de entrada de documentación "<b>{0}</b>" no ha podido encontrarse.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4937"/> + <location filename="UI/UserInterface.py" line="4963"/> <source><p>The tasks file <b>{0}</b> could not be written.</p></source> <translation><p>El archivo de tareas <b>{0}</b> no pudo ser guardado.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4959"/> + <location filename="UI/UserInterface.py" line="4985"/> <source><p>The tasks file <b>{0}</b> could not be read.</p></source> <translation><p>El archivo de tareas <b>{0}</b> no puede leerse.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4974"/> + <location filename="UI/UserInterface.py" line="5000"/> <source><p>The session file <b>{0}</b> could not be written.</p></source> <translation><p>El archivo de sesión <b>{0}</b> no ha podido guardarse.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4997"/> + <location filename="UI/UserInterface.py" line="5023"/> <source><p>The session file <b>{0}</b> could not be read.</p></source> <translation><p>El archivo de sesión <b></b> no ha podido ser leído.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5169"/> + <location filename="UI/UserInterface.py" line="5195"/> <source><p><b>{0}</b> is not a file.</p></source> <translation><p><b>{0}</b> no es un archivo.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5312"/> + <location filename="UI/UserInterface.py" line="5338"/> <source>Trying host {0}</source> <translation>Probando host {0}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5435"/> + <location filename="UI/UserInterface.py" line="5461"/> <source>The update to <b>{0}</b> of eric5 is available at <b>{1}</b>. Would you like to get it?</source> <translation>La actualización para <b>{0}</b> de eric5 está disponible en <b>{1}</b>. ¿Le gustaría obtenerla?</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5444"/> + <location filename="UI/UserInterface.py" line="5470"/> <source>Eric5 is up to date</source> <translation>Eric5 está actualizado</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5444"/> + <location filename="UI/UserInterface.py" line="5470"/> <source>You are using the latest version of eric5</source> <translation>Está utilizando la última versión de eric5</translation> </message> @@ -51752,7 +52006,7 @@ <translation type="obsolete"><p>Errores SSL:</p><p>{0}</p><p>¿Desea ignorar estos errores?</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5509"/> + <location filename="UI/UserInterface.py" line="5535"/> <source>eric5 has not been configured yet. The configuration dialog will be started.</source> <translation>Eric5 todavía no está configurado. El diálogo de configuración va a ser iniciado.</translation> </message> @@ -51787,72 +52041,72 @@ <translation>Alt+Shift+B</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4816"/> + <location filename="UI/UserInterface.py" line="4833"/> <source>Keyboard shortcut file (*.e4k)</source> <translation>Archivo de atajos de teclado (*.e4k)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2051"/> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python 3 Documentation</source> <translation>Documentación de Python 3</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2051"/> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python &3 Documentation</source> <translation>Documentación de Python &3</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2053"/> + <location filename="UI/UserInterface.py" line="2067"/> <source>Open Python 3 Documentation</source> <translation>Abrir Documentación de Python 3</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2054"/> - <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> - <translation><b>Documentación de Python 3</b><p>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 <i>/usr/share/doc/packages/python/html</i> para Unix. Establezca el valor de la variable de entorno PYTHON3DOCDIR para sobreescribir estas opciones. </p></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python 2 Documentation</source> - <translation>Documentación de Python 2</translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python &2 Documentation</source> - <translation>Documentación de Python &2</translation> - </message> - <message> <location filename="UI/UserInterface.py" line="2068"/> + <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> + <translation><b>Documentación de Python 3</b><p>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 <i>/usr/share/doc/packages/python/html</i> para Unix. Establezca el valor de la variable de entorno PYTHON3DOCDIR para sobreescribir estas opciones. </p></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python 2 Documentation</source> + <translation>Documentación de Python 2</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python &2 Documentation</source> + <translation>Documentación de Python &2</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2082"/> <source>Open Python 2 Documentation</source> <translation>Abrir Documentación de Python 2</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2069"/> + <location filename="UI/UserInterface.py" line="2083"/> <source><b>Python 2 Documentation</b><p>Display the Python 2 documentation. If no documentation directory is configured, the location of the Python 2 documentation is assumed to be the doc directory underneath the location of the configured Python 2 executable on Windows and <i>/usr/share/doc/packages/python/html/python-docs-html</i> on Unix. Set PYTHON2DOCDIR in your environment to override this. </p></source> <translation><b>Documentación de Python 2</b><p>Mostrar la documentación de Python 2. Si no se ha configurado un directorio con esta documentación, la ubicación de la documentación de Python 2 se asumirá en el directorio de documentación bajo la ubicación del ejecutable configurado de Python 2 en Windows, y en <i>/usr/share/doc/packages/python/html/python-docs-html</i> para Unix. Establezca el valor de la variable de entorno PYTHON2DOCDIR para sobreescribir estas opciones. </p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <source>Error getting versions information</source> <translation>Error al obtener información de versiones</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5356"/> + <location filename="UI/UserInterface.py" line="5382"/> <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="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <source>Open Browser</source> <translation>Abrir Navegador</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <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="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <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> @@ -51963,12 +52217,12 @@ <translation><b>Pantallazo</b><p>Abre un diálogo para tomar pantallazos de una región de la pantalla.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4109"/> + <location filename="UI/UserInterface.py" line="4126"/> <source><p>Could not start Snapshot tool.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>No se ha podido ejecutar la herramienta de Pantallazos.<br>Asegúrese de que esta disponible como <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5527"/> + <location filename="UI/UserInterface.py" line="5553"/> <source>Select Workspace Directory</source> <translation>Seleccionar Directorio para el Espacio de Trabajo</translation> </message> @@ -52198,7 +52452,7 @@ <translation><b>Activar Visor de Números</b><p>Cambia el foco de input a la ventana de Visor de Números.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2206"/> + <location filename="UI/UserInterface.py" line="2223"/> <source>&Windows</source> <translation>&Ventanas</translation> </message> @@ -52273,30 +52527,50 @@ <translation><b>Qt-Linguist</b><p>Iniciar Qt-Linguist.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt5 Documentation</source> <translation>Documentación de Qt5</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt&5 Documentation</source> <translation>Documentación de Qt&5</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2025"/> + <location filename="UI/UserInterface.py" line="2039"/> <source>Open Qt5 Documentation</source> <translation>Abrir Documentación de Qt5</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2026"/> + <location filename="UI/UserInterface.py" line="2040"/> <source><b>Qt5 Documentation</b><p>Display the Qt5 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>Documentación de Qt5</b><p>Muestra la Documentación de Qt5. Dependiendo de la configuración, esta documentación será mostrará en el visor de ayuda interno de Eric,en un navegador web, o se ejecutará Qt Assistant.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2510"/> + <location filename="UI/UserInterface.py" line="2527"/> <source><p>This part of the status bar allows zooming the current editor, shell or terminal.</p></source> <translation><p>Esta zona de la barra de estado permite hacer zoom sobre el editor, shell o terminal actual.</p></translation> </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1920"/> + <source>Manage the saved SSL certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1922"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>UserPropertiesDialog</name>
--- a/i18n/eric5_fr.ts Fri Jan 18 19:31:43 2013 +0100 +++ b/i18n/eric5_fr.ts Fri Jan 18 19:50:13 2013 +0100 @@ -7939,49 +7939,288 @@ </message> </context> <context> + <name>E5SslCertificatesDialog</name> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="14"/> + <source>SSL Certificate Manager</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="27"/> + <source>&Servers</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="33"/> + <source>You have saved certificates identifying these servers:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="140"/> + <source>Certificate name</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="46"/> + <source>Server</source> + <translation type="unfinished">Serveur</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="145"/> + <source>Expiry Date</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="158"/> + <source>Press to view the selected certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="161"/> + <source>&View...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="168"/> + <source>Press to import a certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="171"/> + <source>&Import...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="181"/> + <source>Press to export the selected certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="184"/> + <source>&Export...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="194"/> + <source>Press to delete the selected certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="197"/> + <source>&Delete...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="126"/> + <source>Certificate &Authorities</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="132"/> + <source>You have saved certificates identifying these certification authorities:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="274"/> + <source>(Unknown)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="276"/> + <source>(Unknown common name)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source>Delete Server Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Import Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="363"/> + <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source>Delete CA Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source>Export Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="399"/> + <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="415"/> + <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> + <translation type="unfinished"><p>Le fichier <b>{0}</b>existe déjà. Écraser ?</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="425"/> + <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> + <translation type="unfinished"></translation> + </message> +</context> +<context> <name>E5SslErrorHandler</name> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source>SSL Errors</source> <translation type="unfinished">Erreurs SSL</translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source><p>SSL Errors for <br /><b>{0}</b><ul><li>{1}</li></ul></p><p>Do you want to ignore these errors?</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source>Certificates</source> <translation type="unfinished"></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source><p>Certificates:<br/>{0}<br/>Do you want to accept all these certificates?</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="184"/> - <source>Name: {0}</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="E5Network/E5SslErrorHandler.py" line="188"/> - <source><br/>Organization: {0}</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="E5Network/E5SslErrorHandler.py" line="192"/> - <source><br/>Issuer: {0}</source> + <source>Name: {0}</source> <translation type="unfinished"></translation> </message> <message> <location filename="E5Network/E5SslErrorHandler.py" line="196"/> + <source><br/>Organization: {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="200"/> + <source><br/>Issuer: {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="204"/> <source><br/>Not valid before: {0}<br/>Valid Until: {1}</source> <translation type="unfinished"></translation> </message> </context> <context> + <name>E5SslInfoDialog</name> + <message> + <location filename="E5Network/E5SslInfoDialog.ui" line="14"/> + <source>SSL Certificate Info</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>E5SslInfoWidget</name> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="17"/> + <source>This certificated has been blacklisted.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="24"/> + <source><b>Issued for</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="118"/> + <source>Common Name (CN)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="138"/> + <source>Organization (O)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="158"/> + <source>Organizational Unit (OU)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="91"/> + <source>Serialnumber</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="111"/> + <source><b>Issued by</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="178"/> + <source><b>Validity</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="185"/> + <source>Issued on</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="205"/> + <source>Expires on</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="225"/> + <source>This certificate is not valid yet or has expired.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="232"/> + <source><b>Fingerprints</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="239"/> + <source>SHA1-Fingerprint</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="259"/> + <source>MD5-Fingerprint</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.py" line="111"/> + <source><not part of the certificate></source> + <translation type="unfinished"></translation> + </message> +</context> +<context> <name>E5ToolBarDialog</name> <message> <location filename="E5Gui/E5ToolBarDialog.ui" line="14"/> @@ -18705,26 +18944,6 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/HelpWindow.py" line="1230"/> - <source>Manage Certificates</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1230"/> - <source>Manage Certificates...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1234"/> - <source>Manage the saved certificates</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1236"/> - <source><b>Manage Saved Certificates...</b><p>Opens a dialog to manage the saved certificates.</p></source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="Helpviewer/HelpWindow.py" line="1615"/> <source>VirusTotal</source> <translation type="unfinished"></translation> @@ -18995,6 +19214,26 @@ <source>Loading Style Sheet</source> <translation type="obsolete">Chargement d'une feuille de style</translation> </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1234"/> + <source>Manage the saved SSL certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1236"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>Hg</name> @@ -20313,12 +20552,12 @@ <translation type="unfinished">Forcer l'opération</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="46"/> <source>Mercurial Move</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="81"/> <source>Select target</source> <translation type="unfinished">Sélectionner la cible</translation> </message> @@ -44615,240 +44854,14 @@ <context> <name>SslCertificatesDialog</name> <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="14"/> - <source>SSL Certificate Manager</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="27"/> - <source>&Servers</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="33"/> - <source>You have saved certificates identifying these servers:</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="140"/> - <source>Certificate name</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="46"/> <source>Server</source> - <translation type="unfinished">Serveur</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="145"/> - <source>Expiry Date</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="158"/> - <source>Press to view the selected certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="161"/> - <source>&View...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="194"/> - <source>Press to delete the selected certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="197"/> - <source>&Delete...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="126"/> - <source>Certificate &Authorities</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="132"/> - <source>You have saved certificates identifying these certification authorities:</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="274"/> - <source>(Unknown)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="276"/> - <source>(Unknown common name)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> - <source>Delete Server Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> - <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="168"/> - <source>Press to import a certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="171"/> - <source>&Import...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="181"/> - <source>Press to export the selected certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="184"/> - <source>&Export...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> - <source>Import Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="363"/> - <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> - <source>Delete CA Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> - <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> - <source>Export Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="399"/> - <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> - <translation type="unfinished"></translation> + <translation type="obsolete">Serveur</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="415"/> <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> - <translation type="unfinished"><p>Le fichier <b>{0}</b>existe déjà. Écraser ?</p></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="425"/> - <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> - <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> - <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> - <translation type="unfinished"></translation> - </message> -</context> -<context> - <name>SslInfoDialog</name> - <message> - <location filename="Helpviewer/SslInfoDialog.ui" line="14"/> - <source>SSL Certificate Info</source> - <translation type="unfinished"></translation> - </message> -</context> -<context> - <name>SslInfoWidget</name> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="17"/> - <source>This certificated has been blacklisted.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="24"/> - <source><b>Issued for</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="118"/> - <source>Common Name (CN)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="138"/> - <source>Organization (O)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="158"/> - <source>Organizational Unit (OU)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="91"/> - <source>Serialnumber</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="111"/> - <source><b>Issued by</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="178"/> - <source><b>Validity</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="185"/> - <source>Issued on</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="205"/> - <source>Expires on</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="225"/> - <source>This certificate is not valid yet or has expired.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="232"/> - <source><b>Fingerprints</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="239"/> - <source>SHA1-Fingerprint</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="259"/> - <source>MD5-Fingerprint</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.py" line="111"/> - <source><not part of the certificate></source> - <translation type="unfinished"></translation> + <translation type="obsolete"><p>Le fichier <b>{0}</b>existe déjà. Écraser ?</p></translation> </message> </context> <context> @@ -46739,12 +46752,12 @@ <context> <name>SvnCopyDialog</name> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="46"/> <source>Subversion Move</source> <translation>Déplacement Subversion</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="81"/> <source>Select target</source> <translation>Sélectionner la cible</translation> </message> @@ -55258,7 +55271,7 @@ <context> <name>UrlBar</name> <message> - <location filename="Helpviewer/UrlBar/UrlBar.py" line="199"/> + <location filename="Helpviewer/UrlBar/UrlBar.py" line="198"/> <source>Unknown</source> <translation type="unfinished">Inconnu</translation> </message> @@ -55562,7 +55575,7 @@ <translation><b>Afficher les versions</b><p>Affiche les informations sur les versions.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2704"/> + <location filename="UI/UserInterface.py" line="2721"/> <source>Report Bug</source> <translation>Rapport de bogue</translation> </message> @@ -55582,7 +55595,7 @@ <translation><b>Rapport de bogue...</b><p>Ouvre une fenêtre pour envoyer un rapport de bogue.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2319"/> + <location filename="UI/UserInterface.py" line="2336"/> <source>Unittest</source> <translation>Tests unitaires</translation> </message> @@ -55637,7 +55650,7 @@ <translation><b>Raccourcis claviers</b><p>Edite les raccourcis claviers pour l'application.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4793"/> + <location filename="UI/UserInterface.py" line="4810"/> <source>Export Keyboard Shortcuts</source> <translation>Exporter les raccourcis clavier</translation> </message> @@ -55657,7 +55670,7 @@ <translation><b>Exporter les raccourcis clavier</b><p>Exporte les raccourcis claviers de l'application.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4816"/> + <location filename="UI/UserInterface.py" line="4833"/> <source>Import Keyboard Shortcuts</source> <translation>Importer des raccourcis clavier</translation> </message> @@ -55707,52 +55720,52 @@ <translation type="obsolete">Lance la documentation Python</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2162"/> + <location filename="UI/UserInterface.py" line="2176"/> <source>E&xtras</source> <translation>E&xtras</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2174"/> + <location filename="UI/UserInterface.py" line="2188"/> <source>&Tools</source> <translation>&Outils</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2201"/> + <location filename="UI/UserInterface.py" line="2218"/> <source>&Window</source> <translation>&Fenêtre</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2251"/> + <location filename="UI/UserInterface.py" line="2268"/> <source>&Help</source> <translation>A&ide</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2318"/> + <location filename="UI/UserInterface.py" line="2335"/> <source>Tools</source> <translation>Outils</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3927"/> + <location filename="UI/UserInterface.py" line="3944"/> <source>Help</source> <translation>Aide</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2320"/> + <location filename="UI/UserInterface.py" line="2337"/> <source>Settings</source> <translation>Configuration</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2226"/> + <location filename="UI/UserInterface.py" line="2243"/> <source>&Toolbars</source> <translation>&Barres d'Outils</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4035"/> + <location filename="UI/UserInterface.py" line="4052"/> <source>Problem</source> <translation>Problème</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4187"/> + <location filename="UI/UserInterface.py" line="4204"/> <source>Process Generation Error</source> <translation>Erreur du processus</translation> </message> @@ -55808,7 +55821,7 @@ <translation><b>Script de tests unitaires</b><p>Lance les tests unitaires sur le script en cours.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3704"/> + <location filename="UI/UserInterface.py" line="3721"/> <source>Unittest Project</source> <translation>Projet de tests unitaires</translation> </message> @@ -55863,17 +55876,17 @@ <translation><b>Comparaison de fichiers côte à côte</b><p>Ouvre une fenêtre pour comparer deux fichiers et affiche les différences côte à côte.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2145"/> + <location filename="UI/UserInterface.py" line="2159"/> <source>&Unittest</source> <translation>Tests &unitaires</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3704"/> + <location filename="UI/UserInterface.py" line="3721"/> <source>There is no main script defined for the current project. Aborting</source> <translation>Il n'y a pas de script principal défini dans le projet en cours. Abandon</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5169"/> + <location filename="UI/UserInterface.py" line="5195"/> <source>Drop Error</source> <translation>Erreur de suppression</translation> </message> @@ -56098,7 +56111,7 @@ <translation type="obsolete"><b>Afficher/Masque la fenêtre des tâches</b><p>Afficher la fenêtre des tâches si elle est masquée et réciproquement..</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4937"/> + <location filename="UI/UserInterface.py" line="4963"/> <source>Save tasks</source> <translation>Enregistrement des tâches</translation> </message> @@ -56108,7 +56121,7 @@ <translation type="obsolete"><p>Impossible d'enregistrer le fichier de tâches <b>%1</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4959"/> + <location filename="UI/UserInterface.py" line="4985"/> <source>Read tasks</source> <translation>Lecture des tâches</translation> </message> @@ -56128,7 +56141,7 @@ <translation type="obsolete"><b>Documentation Python</b><p>Affiche la documentation Python. Si aucun répertoire de documentation n'est configuré, le répertoire de documentation est supposé etre le répertoire doc du répertoire contenant l'executable Python sousWindows et <i>/usr/share/doc/packages/python/html</i> sous Unix. Définir la variable d'environnement PYTHONDOCDIR pour ne pas en tenir compte. </p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3927"/> + <location filename="UI/UserInterface.py" line="3944"/> <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source> <translation>Aucun visualiseur personalisé n'est sélectionné. Prière d'en spécifier un dans les préférences.</translation> </message> @@ -56138,7 +56151,7 @@ <translation type="obsolete"><p>Impossible de démarrer le visualiseur personalisé.<br>Assurez-vous qu'il est bien ici <b>%1</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4553"/> + <location filename="UI/UserInterface.py" line="4570"/> <source>Documentation Missing</source> <translation>Documentation Manquante</translation> </message> @@ -56148,7 +56161,7 @@ <translation type="obsolete"><p>Impossible de trouver le point racine "<b>%1</b>" de la documentation.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2704"/> + <location filename="UI/UserInterface.py" line="2721"/> <source>Email address or mail server address is empty. Please configure your Email settings in the Preferences Dialog.</source> <translation>L'adresse mail ou l'adresse du serveur mail est vide. Veuillez configurer vos paramètres mails dans la fenêtre des Préférences.</translation> </message> @@ -56228,22 +56241,22 @@ <translation>Alt+Shift+M</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Activate current editor</source> <translation>Activer l'éditeur courant</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Alt+Shift+E</source> <translation>Alt+Shift+E</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Ctrl+Alt+Tab</source> <translation>Ctrl+Alt+Tab</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Shift+Ctrl+Alt+Tab</source> <translation>Shift+Ctrl+Alt+Tab</translation> </message> @@ -56283,37 +56296,37 @@ <translation type="obsolete"><b>Qt-Linguist 4</b><p>Lance Qt-Linguist 4.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt4 Documentation</source> <translation>Documentation Qt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt&4 Documentation</source> <translation>Documentation Qt&4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2013"/> + <location filename="UI/UserInterface.py" line="2027"/> <source>Open Qt4 Documentation</source> <translation>Lance la Documentation Qt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2087"/> + <location filename="UI/UserInterface.py" line="2101"/> <source>Eric API Documentation</source> <translation>Documentation pour les API Eric</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2087"/> + <location filename="UI/UserInterface.py" line="2101"/> <source>&Eric API Documentation</source> <translation>Documentation pour les API &Eric</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2089"/> + <location filename="UI/UserInterface.py" line="2103"/> <source>Open Eric API Documentation</source> <translation>Ouvre la documentation sur les APIs Eric</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3958"/> + <location filename="UI/UserInterface.py" line="3975"/> <source><p>Could not start the help viewer.<br>Ensure that it is available as <b>hh</b>.</p></source> <translation><p>Impossible de démarrer le visualiseur d'aide.<br>Assurez-vous qu'il est bien ici <b>hh</b>.</p></translation> </message> @@ -56389,47 +56402,47 @@ <translation type="obsolete"><b>Documentation Qt</b><p>Affiche la documentation Qt. Suivant vos réglages, ceci va afficher l'aide dans le visualiseur interne d'Eric , ou lancer un navigateur web ou Qt Assistant. </p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2014"/> + <location filename="UI/UserInterface.py" line="2028"/> <source><b>Qt4 Documentation</b><p>Display the Qt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>Documentation Qt4</b><p>Affiche la documentation Qt4. Suivant vos réglages, ceci va afficher l'aide dans le visualiseur interne d'Eric , ou lancer un navigateur web ou Qt Assistant. </p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>PyQt4 Documentation</source> <translation> Documentation PyQt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>P&yQt4 Documentation</source> <translation>Documentation P&yQt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2037"/> + <location filename="UI/UserInterface.py" line="2051"/> <source>Open PyQt4 Documentation</source> <translation>Lance la documentation PyQt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2038"/> + <location filename="UI/UserInterface.py" line="2052"/> <source><b>PyQt4 Documentation</b><p>Display the PyQt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>Documentation Qt4</b><p>Affiche la documentation Qt4. Suivant vos réglages, ceci va afficher l'aide dans le visualiseur interne d'Eric , ou lancer un navigateur web ou Qt Assistant. </p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2177"/> + <location filename="UI/UserInterface.py" line="2191"/> <source>Select Tool Group</source> <translation>Sélection d'un groupe d'outils</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2183"/> + <location filename="UI/UserInterface.py" line="2197"/> <source>Se&ttings</source> <translation>&Configuration</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2322"/> + <location filename="UI/UserInterface.py" line="2339"/> <source>Profiles</source> <translation>Profils</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3030"/> + <location filename="UI/UserInterface.py" line="3047"/> <source>&Builtin Tools</source> <translation>Outils &internes</translation> </message> @@ -56446,12 +56459,12 @@ <translation type="obsolete">Le processus '%1' s'est terminé.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4538"/> + <location filename="UI/UserInterface.py" line="4555"/> <source>Documentation</source> <translation>Documentation</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4447"/> + <location filename="UI/UserInterface.py" line="4464"/> <source><p>The PyQt4 documentation starting point has not been configured.</p></source> <translation><p>L'emplacement de la documentation PyQt4 n'a pas été configuré.</p></translation> </message> @@ -56466,7 +56479,7 @@ <translation type="obsolete">fichier de raccourcis eric4 (*.e4k);;fichier de raccourcis eric3 (*.e3k *.e3kz)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5448"/> + <location filename="UI/UserInterface.py" line="5474"/> <source>Error during updates check</source> <translation>Erreur durant la recherche de mises à jour</translation> </message> @@ -56476,7 +56489,7 @@ <translation type="obsolete">L'utilisation d'un proxy a été activée, mais aucun proxy n'est configuré.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5435"/> + <location filename="UI/UserInterface.py" line="5461"/> <source>Update available</source> <translation>Mise à jour disponible</translation> </message> @@ -56501,7 +56514,7 @@ <translation type="obsolete"><b>Documentation de l'API Eric</b><p>Affiche la do. The location for the documentation is the Documentation/Source subdirectory of the eric4 installation directory.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2653"/> + <location filename="UI/UserInterface.py" line="2670"/> <source><h3>Version Numbers</h3><table></source> <translation><h3>Numéros de version</h3><table></translation> </message> @@ -56546,17 +56559,17 @@ <translation type="obsolete"><tr><td><b>%1</b></td><td>%2</td></tr></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5482"/> + <location filename="UI/UserInterface.py" line="5508"/> <source></table></source> <translation></table></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <source>Open Browser</source> <translation type="unfinished">Ouverture du navigateur</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <source>Could not start a web browser</source> <translation type="unfinished">Impossible de lancer le navigateur web</translation> </message> @@ -56571,12 +56584,12 @@ <translation type="obsolete"><p>Impossible de lire la feuile de style Qt <b>%1</b>.<br>Raison: %2</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2978"/> + <location filename="UI/UserInterface.py" line="2995"/> <source>Configure Tool Groups ...</source> <translation>Configuration des groupes d'outils...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2981"/> + <location filename="UI/UserInterface.py" line="2998"/> <source>Configure current Tool Group ...</source> <translation>Configuration du groupe d'outils courant...</translation> </message> @@ -56596,7 +56609,7 @@ <translation type="obsolete"><b>Afficher les outils externes</b><p>Ouvre une fenêtre permettant de connaitre les chemins et versions des outils externes utilisés par eric4</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5307"/> + <location filename="UI/UserInterface.py" line="5333"/> <source>&Cancel</source> <translation>&Annuler</translation> </message> @@ -56606,12 +56619,12 @@ <translation type="obsolete">Connexion à l'hote %1</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5448"/> + <location filename="UI/UserInterface.py" line="5474"/> <source>Could not perform updates check.</source> <translation>Impossible de vérifier les mises à jour.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5509"/> + <location filename="UI/UserInterface.py" line="5535"/> <source>First time usage</source> <translation>Première utilisation</translation> </message> @@ -56626,52 +56639,52 @@ <translation>Initialisation du gestionnaire de plugins...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2237"/> + <location filename="UI/UserInterface.py" line="2254"/> <source>P&lugins</source> <translation>P&lugins</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2323"/> + <location filename="UI/UserInterface.py" line="2340"/> <source>Plugins</source> <translation>Plugins</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>Plugin Infos</source> <translation>Infos Plugins</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1951"/> + <location filename="UI/UserInterface.py" line="1965"/> <source>Show Plugin Infos</source> <translation>Affiche les infos sur les plugins</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1952"/> + <location filename="UI/UserInterface.py" line="1966"/> <source><b>Plugin Infos...</b><p>This opens a dialog, that show some information about loaded plugins.</p></source> <translation><b>Infos Plugins...</b><p>Affiche une fenêtre donnant des informations sur les plugins chargés.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>&Plugin Infos...</source> <translation>Infos &Plugins...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3038"/> + <location filename="UI/UserInterface.py" line="3055"/> <source>&Plugin Tools</source> <translation>Outils &plugins</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1974"/> + <location filename="UI/UserInterface.py" line="1988"/> <source>Uninstall Plugin</source> <translation>Désinstaller un plugin</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1971"/> + <location filename="UI/UserInterface.py" line="1985"/> <source>&Uninstall Plugin...</source> <translation>&Désinstaller un plugin...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1975"/> + <location filename="UI/UserInterface.py" line="1989"/> <source><b>Uninstall Plugin...</b><p>This opens a dialog to uninstall a plugin.</p></source> <translation><b>Désinstaller un plugin...</b><p>Ouvre une fenêtre pour désinstaller un plugin.</p></translation> </message> @@ -56681,17 +56694,17 @@ <translation>Activation des plugins...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2167"/> + <location filename="UI/UserInterface.py" line="2181"/> <source>Wi&zards</source> <translation>As&sistants</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3128"/> + <location filename="UI/UserInterface.py" line="3145"/> <source>&Show all</source> <translation>Tout &afficher</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3130"/> + <location filename="UI/UserInterface.py" line="3147"/> <source>&Hide all</source> <translation>Tout &masquer</translation> </message> @@ -56726,7 +56739,7 @@ <translation type="obsolete">Impossible de télécharger le fichier de versions.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5469"/> + <location filename="UI/UserInterface.py" line="5495"/> <source><h3>Available versions</h3><table></source> <translation><h3>Versions disponibles</h3><table></translation> </message> @@ -56736,37 +56749,37 @@ <translation type="obsolete"><tr><td>%1</td><td><a href="%2">%3</a></td></tr></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1982"/> + <location filename="UI/UserInterface.py" line="1996"/> <source>Plugin Repository</source> <translation>Référentiel de plugins</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1982"/> + <location filename="UI/UserInterface.py" line="1996"/> <source>Plugin &Repository...</source> <translation>&Référentiel de plugins...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1985"/> + <location filename="UI/UserInterface.py" line="1999"/> <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="1987"/> + <location filename="UI/UserInterface.py" line="2001"/> <source><b>Plugin Repository...</b><p>This opens a dialog, that shows a list of plugins available on the Internet.</p></source> <translation><b>Référentiel de plugins...</b><p>Affiche une fenêtre donnant la liste des plugins disponibles sur internet.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1963"/> + <location filename="UI/UserInterface.py" line="1977"/> <source>Install Plugins</source> <translation>Installation de plugins</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1960"/> + <location filename="UI/UserInterface.py" line="1974"/> <source>&Install Plugins...</source> <translation>&Installation de plugins...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1964"/> + <location filename="UI/UserInterface.py" line="1978"/> <source><b>Install Plugins...</b><p>This opens a dialog to install or update plugins.</p></source> <translation><b>Installation de plugins...</b><p>Ouvre une fenêtre pour installer ou mettre à jour des plugins.</p></translation> </message> @@ -56896,7 +56909,7 @@ <translation type="obsolete">Outils externes/%1</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4135"/> + <location filename="UI/UserInterface.py" line="4152"/> <source>External Tools</source> <translation>Outils externes</translation> </message> @@ -56931,7 +56944,7 @@ <translation type="obsolete"><p>Le répertoire de documentation PyKDE4 n'a pas été configuré.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4974"/> + <location filename="UI/UserInterface.py" line="5000"/> <source>Save session</source> <translation>Enregistrer la session</translation> </message> @@ -56941,7 +56954,7 @@ <translation type="obsolete"><p>Impossible d'écrire le fichier de session <b>%1</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4997"/> + <location filename="UI/UserInterface.py" line="5023"/> <source>Read session</source> <translation>Chargement de session</translation> </message> @@ -56956,12 +56969,12 @@ <translation type="obsolete"><p>Format non reconnu pour le fichier de session <b>%1</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2472"/> + <location filename="UI/UserInterface.py" line="2489"/> <source><p>This part of the status bar displays the current editors encoding.</p></source> <translation><p>Cette partie de la barre d'état affiche l'encodage des éditeurs.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2486"/> + <location filename="UI/UserInterface.py" line="2503"/> <source><p>This part of the status bar displays an indication of the current editors files writability.</p></source> <translation><p>Cette partie de la barre d'état affiche les droits d'écriture des fichiers en cours.</p></translation> </message> @@ -57001,7 +57014,7 @@ <translation><b>Demande d'amélioration...</b><p>Ouvre une fenêtre permettant d'envoyer une demande d'amélioration.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2465"/> + <location filename="UI/UserInterface.py" line="2482"/> <source><p>This part of the status bar displays the current editors language.</p></source> <translation><p>Cette zone de la barre d'état affiche le langage de l'éditeur actif.</p></translation> </message> @@ -57011,12 +57024,12 @@ <translation type="obsolete"><p>Cette zone de la barre d'état affiche le nom de fichier de l'éditeur actif.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2493"/> + <location filename="UI/UserInterface.py" line="2510"/> <source><p>This part of the status bar displays the line number of the current editor.</p></source> <translation><p>Cette zone de la barre d'état affiche le numéro de ligne de l'éditeur actif.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2500"/> + <location filename="UI/UserInterface.py" line="2517"/> <source><p>This part of the status bar displays the cursor position of the current editor.</p></source> <translation><p>Cette zone de la barre d'état affiche la position du curseur.</p></translation> </message> @@ -57096,32 +57109,32 @@ <translation><b>Afficher/Masquer la barre d'outils horizontale</b><p>Affiche ou masque la barre d'outils horizontale, selon.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2946"/> + <location filename="UI/UserInterface.py" line="2963"/> <source>Restart application</source> <translation>Redémarrage de l'application</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2946"/> + <location filename="UI/UserInterface.py" line="2963"/> <source>The application needs to be restarted. Do it now?</source> <translation>L'application a bersoin d'être relancée. Relancer maintenant ?</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2246"/> + <location filename="UI/UserInterface.py" line="2263"/> <source>Configure...</source> <translation>Configuration...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2479"/> + <location filename="UI/UserInterface.py" line="2496"/> <source><p>This part of the status bar displays the current editors eol setting.</p></source> <translation><p>Cette zone de la barre d'état affiche le type de fin de lignes utilisé pour les éditeurs.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Switch between tabs</source> <translation>Intervertir les onglets</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Ctrl+1</source> <translation>Ctrl+1</translation> </message> @@ -57166,12 +57179,12 @@ <translation><b>Importer les préférences</b><p>Importe les préférences d'un fichier précédemment exporté.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Show next</source> <translation>Afficher le suivant</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Show previous</source> <translation>Afficher le précédent</translation> </message> @@ -57256,32 +57269,32 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3879"/> + <location filename="UI/UserInterface.py" line="3896"/> <source>Qt 3 support</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2108"/> + <location filename="UI/UserInterface.py" line="2122"/> <source><b>PySide Documentation</b><p>Display the PySide Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4538"/> + <location filename="UI/UserInterface.py" line="4555"/> <source><p>The PySide documentation starting point has not been configured.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2105"/> + <location filename="UI/UserInterface.py" line="2119"/> <source>PySide Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2105"/> + <location filename="UI/UserInterface.py" line="2119"/> <source>Py&Side Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2107"/> + <location filename="UI/UserInterface.py" line="2121"/> <source>Open PySide Documentation</source> <translation type="unfinished"></translation> </message> @@ -57336,139 +57349,139 @@ <translation type="unfinished"><b>Afficher les outils externes</b><p>Ouvre une fenêtre permettant de connaitre les chemins et versions des outils externes utilisés par eric4</p> {5.?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2090"/> + <location filename="UI/UserInterface.py" line="2104"/> <source><b>Eric API Documentation</b><p>Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric5 installation directory.</p></source> <translation type="unfinished"><b>Documentation de l'API Eric</b><p>Affiche la do. The location for the documentation is the Documentation/Source subdirectory of the eric4 installation directory.</p> {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2567"/> + <location filename="UI/UserInterface.py" line="2584"/> <source>External Tools/{0}</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3879"/> + <location filename="UI/UserInterface.py" line="3896"/> <source>Qt v.3 is not supported by eric5.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4035"/> + <location filename="UI/UserInterface.py" line="4052"/> <source><p>The file <b>{0}</b> does not exist or is zero length.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3799"/> + <location filename="UI/UserInterface.py" line="3816"/> <source><p>Could not start Qt-Designer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3856"/> + <location filename="UI/UserInterface.py" line="3873"/> <source><p>Could not start Qt-Linguist.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3900"/> + <location filename="UI/UserInterface.py" line="3917"/> <source><p>Could not start Qt-Assistant.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3939"/> + <location filename="UI/UserInterface.py" line="3956"/> <source><p>Could not start custom viewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3998"/> + <location filename="UI/UserInterface.py" line="4015"/> <source><p>Could not start UI Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4043"/> + <location filename="UI/UserInterface.py" line="4060"/> <source><p>Could not start Translation Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4062"/> + <location filename="UI/UserInterface.py" line="4079"/> <source><p>Could not start SQL Browser.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4129"/> + <location filename="UI/UserInterface.py" line="4146"/> <source>No tool entry found for external tool '{0}' in tool group '{1}'.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4135"/> + <location filename="UI/UserInterface.py" line="4152"/> <source>No toolgroup entry '{0}' found.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4171"/> + <location filename="UI/UserInterface.py" line="4188"/> <source>Starting process '{0} {1}'. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4187"/> + <location filename="UI/UserInterface.py" line="4204"/> <source><p>Could not start the tool entry <b>{0}</b>.<br>Ensure that it is available as <b>{1}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4264"/> + <location filename="UI/UserInterface.py" line="4281"/> <source>Process '{0}' has exited. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4553"/> + <location filename="UI/UserInterface.py" line="4570"/> <source><p>The documentation starting point "<b>{0}</b>" could not be found.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4937"/> + <location filename="UI/UserInterface.py" line="4963"/> <source><p>The tasks file <b>{0}</b> could not be written.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4959"/> + <location filename="UI/UserInterface.py" line="4985"/> <source><p>The tasks file <b>{0}</b> could not be read.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4974"/> + <location filename="UI/UserInterface.py" line="5000"/> <source><p>The session file <b>{0}</b> could not be written.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4997"/> + <location filename="UI/UserInterface.py" line="5023"/> <source><p>The session file <b>{0}</b> could not be read.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5169"/> + <location filename="UI/UserInterface.py" line="5195"/> <source><p><b>{0}</b> is not a file.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5312"/> + <location filename="UI/UserInterface.py" line="5338"/> <source>Trying host {0}</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5435"/> + <location filename="UI/UserInterface.py" line="5461"/> <source>The update to <b>{0}</b> of eric5 is available at <b>{1}</b>. Would you like to get it?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5444"/> + <location filename="UI/UserInterface.py" line="5470"/> <source>Eric5 is up to date</source> <translation type="unfinished">Eric4 est à jour {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5444"/> + <location filename="UI/UserInterface.py" line="5470"/> <source>You are using the latest version of eric5</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5509"/> + <location filename="UI/UserInterface.py" line="5535"/> <source>eric5 has not been configured yet. The configuration dialog will be started.</source> <translation type="unfinished">eric4 n'a pas encore été configuré. La fenêtre de configuration va être ouverte. {5 ?}</translation> </message> @@ -57503,62 +57516,62 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4816"/> + <location filename="UI/UserInterface.py" line="4833"/> <source>Keyboard shortcut file (*.e4k)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2051"/> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python 3 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2051"/> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python &3 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2053"/> + <location filename="UI/UserInterface.py" line="2067"/> <source>Open Python 3 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2054"/> - <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python 2 Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python &2 Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="UI/UserInterface.py" line="2068"/> + <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python 2 Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python &2 Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2082"/> <source>Open Python 2 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2069"/> + <location filename="UI/UserInterface.py" line="2083"/> <source><b>Python 2 Documentation</b><p>Display the Python 2 documentation. If no documentation directory is configured, the location of the Python 2 documentation is assumed to be the doc directory underneath the location of the configured Python 2 executable on Windows and <i>/usr/share/doc/packages/python/html/python-docs-html</i> on Unix. Set PYTHON2DOCDIR in your environment to override this. </p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <source>Error getting versions information</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5356"/> + <location filename="UI/UserInterface.py" line="5382"/> <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="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <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> @@ -57669,12 +57682,12 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4109"/> + <location filename="UI/UserInterface.py" line="4126"/> <source><p>Could not start Snapshot tool.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5527"/> + <location filename="UI/UserInterface.py" line="5553"/> <source>Select Workspace Directory</source> <translation type="unfinished"></translation> </message> @@ -57974,35 +57987,55 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt5 Documentation</source> <translation type="unfinished">Documentation Qt4 {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt&5 Documentation</source> <translation type="unfinished">Documentation Qt&4 {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2025"/> + <location filename="UI/UserInterface.py" line="2039"/> <source>Open Qt5 Documentation</source> <translation type="unfinished">Lance la Documentation Qt4 {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2026"/> + <location filename="UI/UserInterface.py" line="2040"/> <source><b>Qt5 Documentation</b><p>Display the Qt5 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation type="unfinished"><b>Documentation Qt4</b><p>Affiche la documentation Qt4. Suivant vos réglages, ceci va afficher l'aide dans le visualiseur interne d'Eric , ou lancer un navigateur web ou Qt Assistant. </p> {5 ?} {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2206"/> + <location filename="UI/UserInterface.py" line="2223"/> <source>&Windows</source> <translation type="unfinished">&Fenêtres</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2510"/> + <location filename="UI/UserInterface.py" line="2527"/> <source><p>This part of the status bar allows zooming the current editor, shell or terminal.</p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1920"/> + <source>Manage the saved SSL certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1922"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>UserPropertiesDialog</name>
--- a/i18n/eric5_it.ts Fri Jan 18 19:31:43 2013 +0100 +++ b/i18n/eric5_it.ts Fri Jan 18 19:50:13 2013 +0100 @@ -7308,49 +7308,288 @@ </message> </context> <context> + <name>E5SslCertificatesDialog</name> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="14"/> + <source>SSL Certificate Manager</source> + <translation type="unfinished">Gestore Certificati SSL</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="27"/> + <source>&Servers</source> + <translation type="unfinished">&Servers</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="33"/> + <source>You have saved certificates identifying these servers:</source> + <translation type="unfinished">Hai salvato certificati che identificano questi server:</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="140"/> + <source>Certificate name</source> + <translation type="unfinished">Nome certificato</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="46"/> + <source>Server</source> + <translation type="unfinished">Server</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="145"/> + <source>Expiry Date</source> + <translation type="unfinished">Data scadenza</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="158"/> + <source>Press to view the selected certificate</source> + <translation type="unfinished">Premi per vedere il certificato selezionato</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="161"/> + <source>&View...</source> + <translation type="unfinished">&Guarda...</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="168"/> + <source>Press to import a certificate</source> + <translation type="unfinished">Premi per imporatare un certificato</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="171"/> + <source>&Import...</source> + <translation type="unfinished">&Importa...</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="181"/> + <source>Press to export the selected certificate</source> + <translation type="unfinished">Premi per esportare un certificato</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="184"/> + <source>&Export...</source> + <translation type="unfinished">&Esporta...</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="194"/> + <source>Press to delete the selected certificate</source> + <translation type="unfinished">Premi per cancellare il certificato selezionato</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="197"/> + <source>&Delete...</source> + <translation type="unfinished">&Cancella...</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="126"/> + <source>Certificate &Authorities</source> + <translation type="unfinished">Certificati e &Autorità</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="132"/> + <source>You have saved certificates identifying these certification authorities:</source> + <translation type="unfinished">Hai salvato certificati che identificano queste autorità di certificazione:</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="274"/> + <source>(Unknown)</source> + <translation type="unfinished">(Sconosciuto)</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="276"/> + <source>(Unknown common name)</source> + <translation type="unfinished">(Nome comune sconosciuto)</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source>Delete Server Certificate</source> + <translation type="unfinished">Cancella certificato del server</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> + <translation type="unfinished"><p>Deve essere cancellato il certificato del server?</p><p>{0}</p><p>Se il certificato del server viene cancellato, i controlli di sicurezza normali verranno reimpostati e il server dovrà presenteare un certificato valido.<p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Import Certificate</source> + <translation type="unfinished">Importa certificato</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="363"/> + <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> + <translation type="unfinished"><p>Il certificato <b>{0}</b> esiste già.Lo salto.</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source>Delete CA Certificate</source> + <translation type="unfinished">Cancella certificato CA</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> + <translation type="unfinished"><p>Deve essere cancellato il certificato CA?</p><p>{0}</p><p>Se il certificato CA viene cancellato,il browser non validerò nessun certificato emesso da questa CA.<p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source>Export Certificate</source> + <translation type="unfinished">Esporta certificato</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="399"/> + <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> + <translation type="unfinished">File Certificato (PEM) (*.pem);;File Certificato (DER) (*.der)</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="415"/> + <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> + <translation type="unfinished"><p>Il file <b>{0}</b> esiste già. Sovrascriverlo ?</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="425"/> + <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> + <translation type="unfinished"><p>Il certificato non può essere scritto sul file <b>{0}</b></p><p>Errore: {1}</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> + <translation type="unfinished">Files Certificato (*.pem *.crt *.der *.cer *.ca);;Tutti i file (*)</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> + <translation type="unfinished"><p>Il certificato non può essere letto dal file <b>{0}</b></p><p>Errore: {1}</p></translation> + </message> +</context> +<context> <name>E5SslErrorHandler</name> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source>SSL Errors</source> <translation type="unfinished">Errori SSL</translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source><p>SSL Errors for <br /><b>{0}</b><ul><li>{1}</li></ul></p><p>Do you want to ignore these errors?</p></source> <translation type="unfinished"><p>Errori SSL per <br /><b>{0}</b><ul><li>{1}</li></ul></p><p>Vuoi ignorarli ?</p></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source>Certificates</source> <translation type="unfinished">Certificati</translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source><p>Certificates:<br/>{0}<br/>Do you want to accept all these certificates?</p></source> <translation type="unfinished"><p>Certificati:<br/>{0}<br/>Vuoi accettare tutti questi certificati?</p></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="184"/> - <source>Name: {0}</source> - <translation type="unfinished">Nome: {0}</translation> - </message> - <message> - <location filename="E5Network/E5SslErrorHandler.py" line="188"/> - <source><br/>Organization: {0}</source> - <translation type="unfinished"><br/>Organizzazione: {0}</translation> - </message> - <message> <location filename="E5Network/E5SslErrorHandler.py" line="192"/> - <source><br/>Issuer: {0}</source> - <translation type="unfinished"><br/>Emettitore: {0}</translation> + <source>Name: {0}</source> + <translation type="unfinished">Nome: {0}</translation> </message> <message> <location filename="E5Network/E5SslErrorHandler.py" line="196"/> + <source><br/>Organization: {0}</source> + <translation type="unfinished"><br/>Organizzazione: {0}</translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="200"/> + <source><br/>Issuer: {0}</source> + <translation type="unfinished"><br/>Emettitore: {0}</translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="204"/> <source><br/>Not valid before: {0}<br/>Valid Until: {1}</source> <translation type="unfinished"><br/>Non valido prima: {0}<br/>Valido Fino: {1}</translation> </message> </context> <context> + <name>E5SslInfoDialog</name> + <message> + <location filename="E5Network/E5SslInfoDialog.ui" line="14"/> + <source>SSL Certificate Info</source> + <translation type="unfinished">Informazioni certificato SSL</translation> + </message> +</context> +<context> + <name>E5SslInfoWidget</name> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="17"/> + <source>This certificated has been blacklisted.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="24"/> + <source><b>Issued for</b></source> + <translation type="unfinished"><b>Emesso per</b></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="118"/> + <source>Common Name (CN)</source> + <translation type="unfinished">Nome Comune (CN)</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="138"/> + <source>Organization (O)</source> + <translation type="unfinished">Organizzazione (O)</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="158"/> + <source>Organizational Unit (OU)</source> + <translation type="unfinished">Organizational Unit (OU)</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="91"/> + <source>Serialnumber</source> + <translation type="unfinished">Numero seriale</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="111"/> + <source><b>Issued by</b></source> + <translation type="unfinished"><b>Emesso da</b></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="178"/> + <source><b>Validity</b></source> + <translation type="unfinished"><B>Validità</b></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="185"/> + <source>Issued on</source> + <translation type="unfinished">Emesso il</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="205"/> + <source>Expires on</source> + <translation type="unfinished">Scade il</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="225"/> + <source>This certificate is not valid yet or has expired.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="232"/> + <source><b>Fingerprints</b></source> + <translation type="unfinished"><b>Fingerprints</b></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="239"/> + <source>SHA1-Fingerprint</source> + <translation type="unfinished">SHA1-Fingerprint</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="259"/> + <source>MD5-Fingerprint</source> + <translation type="unfinished">MD5-Fingerprint</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.py" line="111"/> + <source><not part of the certificate></source> + <translation type="unfinished"><non parte del certificato></translation> + </message> +</context> +<context> <name>E5ToolBarDialog</name> <message> <location filename="E5Gui/E5ToolBarDialog.ui" line="14"/> @@ -17458,22 +17697,22 @@ <message> <location filename="Helpviewer/HelpWindow.py" line="1230"/> <source>Manage Certificates</source> - <translation>Gestisci certificati</translation> + <translation type="obsolete">Gestisci certificati</translation> </message> <message> <location filename="Helpviewer/HelpWindow.py" line="1230"/> <source>Manage Certificates...</source> - <translation>Gestisci certificati...</translation> + <translation type="obsolete">Gestisci certificati...</translation> </message> <message> <location filename="Helpviewer/HelpWindow.py" line="1234"/> <source>Manage the saved certificates</source> - <translation>Gestisci i certificati salvati</translation> + <translation type="obsolete">Gestisci i certificati salvati</translation> </message> <message> <location filename="Helpviewer/HelpWindow.py" line="1236"/> <source><b>Manage Saved Certificates...</b><p>Opens a dialog to manage the saved certificates.</p></source> - <translation><b>Gestisci i certificati salvati...</b><p>Apre un dialogo per gestire i certificati salvati.</p></translation> + <translation type="obsolete"><b>Gestisci i certificati salvati...</b><p>Apre un dialogo per gestire i certificati salvati.</p></translation> </message> <message> <location filename="Helpviewer/HelpWindow.py" line="1615"/> @@ -17750,6 +17989,26 @@ <source><p>The Qt Style Sheet file <b>{0}</b> could not be read.<br>Reason: {1}</p></source> <translation type="obsolete"><p>Il file Qt Style Sheet <b>{0}</b> non può essere letto. <br>Motivo: {1}</p></translation> </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1234"/> + <source>Manage the saved SSL certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1236"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>Hg</name> @@ -19096,12 +19355,12 @@ <translation>Forza operazione</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="46"/> <source>Mercurial Move</source> <translation>Mercurial Move</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="81"/> <source>Select target</source> <translation>Seleziona target</translation> </message> @@ -41808,152 +42067,152 @@ <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="14"/> <source>SSL Certificate Manager</source> - <translation>Gestore Certificati SSL</translation> + <translation type="obsolete">Gestore Certificati SSL</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="27"/> <source>&Servers</source> - <translation>&Servers</translation> + <translation type="obsolete">&Servers</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="33"/> <source>You have saved certificates identifying these servers:</source> - <translation>Hai salvato certificati che identificano questi server:</translation> + <translation type="obsolete">Hai salvato certificati che identificano questi server:</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="140"/> <source>Certificate name</source> - <translation>Nome certificato</translation> + <translation type="obsolete">Nome certificato</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="46"/> <source>Server</source> - <translation>Server</translation> + <translation type="obsolete">Server</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="145"/> <source>Expiry Date</source> - <translation>Data scadenza</translation> + <translation type="obsolete">Data scadenza</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="158"/> <source>Press to view the selected certificate</source> - <translation>Premi per vedere il certificato selezionato</translation> + <translation type="obsolete">Premi per vedere il certificato selezionato</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="161"/> <source>&View...</source> - <translation>&Guarda...</translation> + <translation type="obsolete">&Guarda...</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="194"/> <source>Press to delete the selected certificate</source> - <translation>Premi per cancellare il certificato selezionato</translation> + <translation type="obsolete">Premi per cancellare il certificato selezionato</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="197"/> <source>&Delete...</source> - <translation>&Cancella...</translation> + <translation type="obsolete">&Cancella...</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="126"/> <source>Certificate &Authorities</source> - <translation>Certificati e &Autorità</translation> + <translation type="obsolete">Certificati e &Autorità</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="132"/> <source>You have saved certificates identifying these certification authorities:</source> - <translation>Hai salvato certificati che identificano queste autorità di certificazione:</translation> + <translation type="obsolete">Hai salvato certificati che identificano queste autorità di certificazione:</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="274"/> <source>(Unknown)</source> - <translation>(Sconosciuto)</translation> + <translation type="obsolete">(Sconosciuto)</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="276"/> <source>(Unknown common name)</source> - <translation>(Nome comune sconosciuto)</translation> + <translation type="obsolete">(Nome comune sconosciuto)</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> <source>Delete Server Certificate</source> - <translation>Cancella certificato del server</translation> + <translation type="obsolete">Cancella certificato del server</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> - <translation><p>Deve essere cancellato il certificato del server?</p><p>{0}</p><p>Se il certificato del server viene cancellato, i controlli di sicurezza normali verranno reimpostati e il server dovrà presenteare un certificato valido.<p></translation> + <translation type="obsolete"><p>Deve essere cancellato il certificato del server?</p><p>{0}</p><p>Se il certificato del server viene cancellato, i controlli di sicurezza normali verranno reimpostati e il server dovrà presenteare un certificato valido.<p></translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="168"/> <source>Press to import a certificate</source> - <translation>Premi per imporatare un certificato</translation> + <translation type="obsolete">Premi per imporatare un certificato</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="171"/> <source>&Import...</source> - <translation>&Importa...</translation> + <translation type="obsolete">&Importa...</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="181"/> <source>Press to export the selected certificate</source> - <translation>Premi per esportare un certificato</translation> + <translation type="obsolete">Premi per esportare un certificato</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="184"/> <source>&Export...</source> - <translation>&Esporta...</translation> + <translation type="obsolete">&Esporta...</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> <source>Import Certificate</source> - <translation>Importa certificato</translation> + <translation type="obsolete">Importa certificato</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="363"/> <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> - <translation><p>Il certificato <b>{0}</b> esiste già.Lo salto.</p></translation> + <translation type="obsolete"><p>Il certificato <b>{0}</b> esiste già.Lo salto.</p></translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> <source>Delete CA Certificate</source> - <translation>Cancella certificato CA</translation> + <translation type="obsolete">Cancella certificato CA</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> - <translation><p>Deve essere cancellato il certificato CA?</p><p>{0}</p><p>Se il certificato CA viene cancellato,il browser non validerò nessun certificato emesso da questa CA.<p></translation> + <translation type="obsolete"><p>Deve essere cancellato il certificato CA?</p><p>{0}</p><p>Se il certificato CA viene cancellato,il browser non validerò nessun certificato emesso da questa CA.<p></translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> <source>Export Certificate</source> - <translation>Esporta certificato</translation> + <translation type="obsolete">Esporta certificato</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="399"/> <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> - <translation>File Certificato (PEM) (*.pem);;File Certificato (DER) (*.der)</translation> + <translation type="obsolete">File Certificato (PEM) (*.pem);;File Certificato (DER) (*.der)</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="415"/> <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> - <translation><p>Il file <b>{0}</b> esiste già. Sovrascriverlo ?</p></translation> + <translation type="obsolete"><p>Il file <b>{0}</b> esiste già. Sovrascriverlo ?</p></translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="425"/> <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> - <translation><p>Il certificato non può essere scritto sul file <b>{0}</b></p><p>Errore: {1}</p></translation> + <translation type="obsolete"><p>Il certificato non può essere scritto sul file <b>{0}</b></p><p>Errore: {1}</p></translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> - <translation>Files Certificato (*.pem *.crt *.der *.cer *.ca);;Tutti i file (*)</translation> + <translation type="obsolete">Files Certificato (*.pem *.crt *.der *.cer *.ca);;Tutti i file (*)</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> - <translation><p>Il certificato non può essere letto dal file <b>{0}</b></p><p>Errore: {1}</p></translation> + <translation type="obsolete"><p>Il certificato non può essere letto dal file <b>{0}</b></p><p>Errore: {1}</p></translation> </message> </context> <context> @@ -41961,7 +42220,7 @@ <message> <location filename="Helpviewer/SslInfoDialog.ui" line="14"/> <source>SSL Certificate Info</source> - <translation>Informazioni certificato SSL</translation> + <translation type="obsolete">Informazioni certificato SSL</translation> </message> <message> <location filename="Helpviewer/SslInfoDialog.ui" line="32"/> @@ -42032,79 +42291,69 @@ <context> <name>SslInfoWidget</name> <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="17"/> - <source>This certificated has been blacklisted.</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="Helpviewer/SslInfoWidget.ui" line="24"/> <source><b>Issued for</b></source> - <translation type="unfinished"><b>Emesso per</b></translation> + <translation type="obsolete"><b>Emesso per</b></translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="118"/> <source>Common Name (CN)</source> - <translation type="unfinished">Nome Comune (CN)</translation> + <translation type="obsolete">Nome Comune (CN)</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="138"/> <source>Organization (O)</source> - <translation type="unfinished">Organizzazione (O)</translation> + <translation type="obsolete">Organizzazione (O)</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="158"/> <source>Organizational Unit (OU)</source> - <translation type="unfinished">Organizational Unit (OU)</translation> + <translation type="obsolete">Organizational Unit (OU)</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="91"/> <source>Serialnumber</source> - <translation type="unfinished">Numero seriale</translation> + <translation type="obsolete">Numero seriale</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="111"/> <source><b>Issued by</b></source> - <translation type="unfinished"><b>Emesso da</b></translation> + <translation type="obsolete"><b>Emesso da</b></translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="178"/> <source><b>Validity</b></source> - <translation type="unfinished"><B>Validità</b></translation> + <translation type="obsolete"><B>Validità</b></translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="185"/> <source>Issued on</source> - <translation type="unfinished">Emesso il</translation> + <translation type="obsolete">Emesso il</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="205"/> <source>Expires on</source> - <translation type="unfinished">Scade il</translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="225"/> - <source>This certificate is not valid yet or has expired.</source> - <translation type="unfinished"></translation> + <translation type="obsolete">Scade il</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="232"/> <source><b>Fingerprints</b></source> - <translation type="unfinished"><b>Fingerprints</b></translation> + <translation type="obsolete"><b>Fingerprints</b></translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="239"/> <source>SHA1-Fingerprint</source> - <translation type="unfinished">SHA1-Fingerprint</translation> + <translation type="obsolete">SHA1-Fingerprint</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="259"/> <source>MD5-Fingerprint</source> - <translation type="unfinished">MD5-Fingerprint</translation> + <translation type="obsolete">MD5-Fingerprint</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.py" line="111"/> <source><not part of the certificate></source> - <translation type="unfinished"><non parte del certificato></translation> + <translation type="obsolete"><non parte del certificato></translation> </message> </context> <context> @@ -43740,12 +43989,12 @@ <context> <name>SvnCopyDialog</name> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="46"/> <source>Subversion Move</source> <translation>Subversion Move</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="81"/> <source>Select target</source> <translation>Seleziona target</translation> </message> @@ -51853,7 +52102,7 @@ <translation type="obsolete">Inserisci l'indirizzo qui.</translation> </message> <message> - <location filename="Helpviewer/UrlBar/UrlBar.py" line="199"/> + <location filename="Helpviewer/UrlBar/UrlBar.py" line="198"/> <source>Unknown</source> <translation>Sconosciuto</translation> </message> @@ -52117,7 +52366,7 @@ <translation><b>Mostra versioni</b><p>Mostra delle informazioni sulla versione.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2704"/> + <location filename="UI/UserInterface.py" line="2721"/> <source>Report Bug</source> <translation>Segnala Bug</translation> </message> @@ -52137,7 +52386,7 @@ <translation><b>>Segnala Bug...</b><p>Apre un dialogo per segnalare un bug.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2319"/> + <location filename="UI/UserInterface.py" line="2336"/> <source>Unittest</source> <translation>Unittest</translation> </message> @@ -52192,7 +52441,7 @@ <translation><b>Scorciatoie da tastiera</b><p>Imposta le scorciatoie da tastiera dell'applicazione con i valori personalizzati.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4793"/> + <location filename="UI/UserInterface.py" line="4810"/> <source>Export Keyboard Shortcuts</source> <translation>Esporta scorciatoie da tastiera</translation> </message> @@ -52212,7 +52461,7 @@ <translation><b>Esporta scorciatoie da tastiera</b><p>Esporta le scorciatoie da tastiera dell'applicazione.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4816"/> + <location filename="UI/UserInterface.py" line="4833"/> <source>Import Keyboard Shortcuts</source> <translation>Importa scorciatoie da tastiera</translation> </message> @@ -52232,52 +52481,52 @@ <translation><b>Importa scorciatoie da tastiera</b><p>Importa le scorciatoie da tastiera dell'applicazione.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2162"/> + <location filename="UI/UserInterface.py" line="2176"/> <source>E&xtras</source> <translation>E&xtra</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2174"/> + <location filename="UI/UserInterface.py" line="2188"/> <source>&Tools</source> <translation>S&trumenti</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2201"/> + <location filename="UI/UserInterface.py" line="2218"/> <source>&Window</source> <translation>&Finestre</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2251"/> + <location filename="UI/UserInterface.py" line="2268"/> <source>&Help</source> <translation>&Help</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2318"/> + <location filename="UI/UserInterface.py" line="2335"/> <source>Tools</source> <translation>Strumenti</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3927"/> + <location filename="UI/UserInterface.py" line="3944"/> <source>Help</source> <translation>Aiuto</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2320"/> + <location filename="UI/UserInterface.py" line="2337"/> <source>Settings</source> <translation>Impostazioni</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2226"/> + <location filename="UI/UserInterface.py" line="2243"/> <source>&Toolbars</source> <translation>&Toolbar</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4035"/> + <location filename="UI/UserInterface.py" line="4052"/> <source>Problem</source> <translation>Problema</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4187"/> + <location filename="UI/UserInterface.py" line="4204"/> <source>Process Generation Error</source> <translation>Errore Generazione Processo</translation> </message> @@ -52332,7 +52581,7 @@ <translation><b>Script Unittest</b><p>Esegui unittest con lo script corrente.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3704"/> + <location filename="UI/UserInterface.py" line="3721"/> <source>Unittest Project</source> <translation>Progetto Unittest</translation> </message> @@ -52387,17 +52636,17 @@ <translation><b>Confronta file affiancati</b><p>Apri un dialogo per confrontare due file e mostrare i risultati affiancati.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2145"/> + <location filename="UI/UserInterface.py" line="2159"/> <source>&Unittest</source> <translation>&Unittest</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3704"/> + <location filename="UI/UserInterface.py" line="3721"/> <source>There is no main script defined for the current project. Aborting</source> <translation>Non c'è uno script principale definito per il progetto. Esco</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5169"/> + <location filename="UI/UserInterface.py" line="5195"/> <source>Drop Error</source> <translation>Errore Drop</translation> </message> @@ -52572,27 +52821,27 @@ <translation type="obsolete"><b>Abilita/Disabilita la finestra del Task-Viewer</b><p>Se la finestra del Log-Viewer è nascosta verrà mostrata. Se è mostrata verrà chiusa.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4937"/> + <location filename="UI/UserInterface.py" line="4963"/> <source>Save tasks</source> <translation>Salva task</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4959"/> + <location filename="UI/UserInterface.py" line="4985"/> <source>Read tasks</source> <translation>Leggi task</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3927"/> + <location filename="UI/UserInterface.py" line="3944"/> <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="4553"/> + <location filename="UI/UserInterface.py" line="4570"/> <source>Documentation Missing</source> <translation>Documentazione mancante</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2704"/> + <location filename="UI/UserInterface.py" line="2721"/> <source>Email address or mail server address is empty. Please configure your Email settings in the Preferences Dialog.</source> <translation>L'indirizzo di posta o il server si posta sono vuoti. Per cortesia configura le opzioni per l'Email nel dialogo delle preferenze.</translation> </message> @@ -52667,22 +52916,22 @@ <translation>Alt+Shift+M</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Activate current editor</source> <translation>Attiva editor corrente</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Alt+Shift+E</source> <translation>Alt+Shift+E</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Ctrl+Alt+Tab</source> <translation>Ctrl+Alt+Tab</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Shift+Ctrl+Alt+Tab</source> <translation>Shift+Ctrl+Alt+Tab</translation> </message> @@ -52722,37 +52971,37 @@ <translation type="obsolete"><b>Qt-Linguist 4</b><p>Avvia Qt-Linguist 4.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt4 Documentation</source> <translation>Documentazione Qt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt&4 Documentation</source> <translation>Documentazione Qt&4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2013"/> + <location filename="UI/UserInterface.py" line="2027"/> <source>Open Qt4 Documentation</source> <translation>Apri documentazione su Qt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2087"/> + <location filename="UI/UserInterface.py" line="2101"/> <source>Eric API Documentation</source> <translation>Documentazione API di Eric</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2087"/> + <location filename="UI/UserInterface.py" line="2101"/> <source>&Eric API Documentation</source> <translation>Documentazione API di &Eric</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2089"/> + <location filename="UI/UserInterface.py" line="2103"/> <source>Open Eric API Documentation</source> <translation>Apri documentazione API di Eric</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3958"/> + <location filename="UI/UserInterface.py" line="3975"/> <source><p>Could not start the help viewer.<br>Ensure that it is available as <b>hh</b>.</p></source> <translation><p>Non posso avviare il visualizzatore di help.<br>Assicurarsi che sia disponibile come <b>hh</b>.</p></translation> </message> @@ -52818,77 +53067,77 @@ <translation>Controlla per &Aggiornamenti...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2014"/> + <location filename="UI/UserInterface.py" line="2028"/> <source><b>Qt4 Documentation</b><p>Display the Qt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>Documentazione Qt4</b><p>Visualizza la documentazione di Qt4. A seconda di come è configurato il tuo sistema, verrà mostrata nel visualizzatore interno di Eric o in un browser web. </p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>PyQt4 Documentation</source> <translation>Documentazione PyQt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>P&yQt4 Documentation</source> <translation>Documentazione P&yQt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2037"/> + <location filename="UI/UserInterface.py" line="2051"/> <source>Open PyQt4 Documentation</source> <translation>Apri documentazione su PyQt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2038"/> + <location filename="UI/UserInterface.py" line="2052"/> <source><b>PyQt4 Documentation</b><p>Display the PyQt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>Documentazione PyQt4</b><p>Visualizza la documentazione di Qt4. A seconda di come è configurato il tuo sistema, verrà mostrata nel visualizzatore interno di Eric o in un browser web. </p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2177"/> + <location filename="UI/UserInterface.py" line="2191"/> <source>Select Tool Group</source> <translation>Seleziona Tool Group</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2183"/> + <location filename="UI/UserInterface.py" line="2197"/> <source>Se&ttings</source> <translation>Impos&tazioni</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2322"/> + <location filename="UI/UserInterface.py" line="2339"/> <source>Profiles</source> <translation>Profili</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3030"/> + <location filename="UI/UserInterface.py" line="3047"/> <source>&Builtin Tools</source> <translation>Tool &Builtin</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4538"/> + <location filename="UI/UserInterface.py" line="4555"/> <source>Documentation</source> <translation>Documentazione</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4447"/> + <location filename="UI/UserInterface.py" line="4464"/> <source><p>The PyQt4 documentation starting point has not been configured.</p></source> <translation><p>L'inizio della documentazione di PyQt4 non è stato configurato.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5448"/> + <location filename="UI/UserInterface.py" line="5474"/> <source>Error during updates check</source> <translation>Errore nel controllo per gli update</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5435"/> + <location filename="UI/UserInterface.py" line="5461"/> <source>Update available</source> <translation>Aggiornamento disponibile</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2653"/> + <location filename="UI/UserInterface.py" line="2670"/> <source><h3>Version Numbers</h3><table></source> <translation><h3>Numeri di versione</h3><table></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5482"/> + <location filename="UI/UserInterface.py" line="5508"/> <source></table></source> <translation></table></translation> </message> @@ -52898,12 +53147,12 @@ <translation type="obsolete">Caricamento Style Sheet</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2978"/> + <location filename="UI/UserInterface.py" line="2995"/> <source>Configure Tool Groups ...</source> <translation>Configura Tools Groups...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2981"/> + <location filename="UI/UserInterface.py" line="2998"/> <source>Configure current Tool Group ...</source> <translation>Configura Tools Groups correnti...</translation> </message> @@ -52918,17 +53167,17 @@ <translation>Mostra toll &esterni</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5307"/> + <location filename="UI/UserInterface.py" line="5333"/> <source>&Cancel</source> <translation>&Cancella</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5448"/> + <location filename="UI/UserInterface.py" line="5474"/> <source>Could not perform updates check.</source> <translation>Non posso controllare per gli update.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5509"/> + <location filename="UI/UserInterface.py" line="5535"/> <source>First time usage</source> <translation>Primo avvio</translation> </message> @@ -52938,52 +53187,52 @@ <translation>Inizializzazione Gestore Plugin...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2237"/> + <location filename="UI/UserInterface.py" line="2254"/> <source>P&lugins</source> <translation>P&lugins</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2323"/> + <location filename="UI/UserInterface.py" line="2340"/> <source>Plugins</source> <translation>Plugins</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>Plugin Infos</source> <translation>Informazioni su Plugin</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1951"/> + <location filename="UI/UserInterface.py" line="1965"/> <source>Show Plugin Infos</source> <translation>Mostra informazioni sui Plugin</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1952"/> + <location filename="UI/UserInterface.py" line="1966"/> <source><b>Plugin Infos...</b><p>This opens a dialog, that show some information about loaded plugins.</p></source> <translation><b>Informazioni sui Plugin...</b><p>Apre un dialogo per mostrare le informazioni sul plugin caricati.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>&Plugin Infos...</source> <translation>Informazioni su &Plugin...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3038"/> + <location filename="UI/UserInterface.py" line="3055"/> <source>&Plugin Tools</source> <translation>Informazioni sui &Plugin Tools</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1974"/> + <location filename="UI/UserInterface.py" line="1988"/> <source>Uninstall Plugin</source> <translation>Disinstalla Plugin</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1971"/> + <location filename="UI/UserInterface.py" line="1985"/> <source>&Uninstall Plugin...</source> <translation>Disinstalla Pl&ugin...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1975"/> + <location filename="UI/UserInterface.py" line="1989"/> <source><b>Uninstall Plugin...</b><p>This opens a dialog to uninstall a plugin.</p></source> <translation><b>Disinstalla Plugin...</b><p>Apre un dialogo per disinstallare un plugin.</p></translation> </message> @@ -52993,17 +53242,17 @@ <translation>Attivazione Plugin...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2167"/> + <location filename="UI/UserInterface.py" line="2181"/> <source>Wi&zards</source> <translation>Wi&zards</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3128"/> + <location filename="UI/UserInterface.py" line="3145"/> <source>&Show all</source> <translation>Mo&stra tutti</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3130"/> + <location filename="UI/UserInterface.py" line="3147"/> <source>&Hide all</source> <translation>Nascondi &tutti</translation> </message> @@ -53033,42 +53282,42 @@ <translation type="obsolete">Non posso scaricare il file delle versioni.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5469"/> + <location filename="UI/UserInterface.py" line="5495"/> <source><h3>Available versions</h3><table></source> <translation><h3>Versioni disponibili</h3><table></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1982"/> + <location filename="UI/UserInterface.py" line="1996"/> <source>Plugin Repository</source> <translation>Repository Plugin</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1982"/> + <location filename="UI/UserInterface.py" line="1996"/> <source>Plugin &Repository...</source> <translation>&Repository Plugin...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1985"/> + <location filename="UI/UserInterface.py" line="1999"/> <source>Show Plugins available for download</source> <translation>Mostra Plugin disponibili per il download</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1987"/> + <location filename="UI/UserInterface.py" line="2001"/> <source><b>Plugin Repository...</b><p>This opens a dialog, that shows a list of plugins available on the Internet.</p></source> <translation><b>Repository Plugin...</b><p>Apre un dialogo che mostra i plugin disponibili.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1963"/> + <location filename="UI/UserInterface.py" line="1977"/> <source>Install Plugins</source> <translation>Installa Plugin</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1960"/> + <location filename="UI/UserInterface.py" line="1974"/> <source>&Install Plugins...</source> <translation>&Installa Plugin...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1964"/> + <location filename="UI/UserInterface.py" line="1978"/> <source><b>Install Plugins...</b><p>This opens a dialog to install or update plugins.</p></source> <translation><b>Installa Plugin...<b><p>Apre un dialogo per installare o aggiornare i plugin.</p></translation> </message> @@ -53153,27 +53402,27 @@ <translation type="obsolete">Temp&late-Viewer</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4135"/> + <location filename="UI/UserInterface.py" line="4152"/> <source>External Tools</source> <translation>Tool esterni</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4974"/> + <location filename="UI/UserInterface.py" line="5000"/> <source>Save session</source> <translation>Salva sessione</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4997"/> + <location filename="UI/UserInterface.py" line="5023"/> <source>Read session</source> <translation>Leggi sessione</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2472"/> + <location filename="UI/UserInterface.py" line="2489"/> <source><p>This part of the status bar displays the current editors encoding.</p></source> <translation><p>Questa zona della barra di stato mostra l'encoding usato dall'editor.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2486"/> + <location filename="UI/UserInterface.py" line="2503"/> <source><p>This part of the status bar displays an indication of the current editors files writability.</p></source> <translation><p>Questa zona della barra di stato mostra la possibilità di scrittura del file.</p></translation> </message> @@ -53203,7 +53452,7 @@ <translation><b>Richiedi funzionalità...</b><p>Apre un dialogo per mandare una richiesta di funzionalità.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2465"/> + <location filename="UI/UserInterface.py" line="2482"/> <source><p>This part of the status bar displays the current editors language.</p></source> <translation><p>Questa zona della barra di stato mostra il linguaggio usato dall'editor.</p></translation> </message> @@ -53213,12 +53462,12 @@ <translation type="obsolete"><p>Questa parte della barra di stato mostra la il nome del file attuale.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2493"/> + <location filename="UI/UserInterface.py" line="2510"/> <source><p>This part of the status bar displays the line number of the current editor.</p></source> <translation><p>Questa parte della barra di stato mostra il numero di linea.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2500"/> + <location filename="UI/UserInterface.py" line="2517"/> <source><p>This part of the status bar displays the cursor position of the current editor.</p></source> <translation><p>Questa parte della barra di stato mostra la posizione del cursore.</p></translation> </message> @@ -53298,32 +53547,32 @@ <translation><b>Abilita/Disabilita la finestra della toolbox orizzontale</b><p>Se la finestra della toolbox orizzontale è nascosta verrà mostrata. Se è mostrata verrà chiusa.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2946"/> + <location filename="UI/UserInterface.py" line="2963"/> <source>Restart application</source> <translation>Riavvia applicazione</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2946"/> + <location filename="UI/UserInterface.py" line="2963"/> <source>The application needs to be restarted. Do it now?</source> <translation>L'applicazione necessita di un riavvio. Farlo ora ?</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2246"/> + <location filename="UI/UserInterface.py" line="2263"/> <source>Configure...</source> <translation>Configura...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2479"/> + <location filename="UI/UserInterface.py" line="2496"/> <source><p>This part of the status bar displays the current editors eol setting.</p></source> <translation><p>Questa zona della barra di stato mostra l'eol usato dall'editor.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Switch between tabs</source> <translation>Cicla tra le linguette</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Ctrl+1</source> <translation>Ctrl+1</translation> </message> @@ -53368,12 +53617,12 @@ <translation><b>Importa preferenze</b><p>Importa una configurazione precedentemente esportata.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Show next</source> <translation>Mostra successivo</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Show previous</source> <translation>Mostra precedente</translation> </message> @@ -53503,32 +53752,32 @@ <translation>Editor di &icone...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3879"/> + <location filename="UI/UserInterface.py" line="3896"/> <source>Qt 3 support</source> <translation>Supporto Qt3</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2105"/> + <location filename="UI/UserInterface.py" line="2119"/> <source>PySide Documentation</source> <translation>Documentazione PySide</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2105"/> + <location filename="UI/UserInterface.py" line="2119"/> <source>Py&Side Documentation</source> <translation>Documentazione Py&Side</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2107"/> + <location filename="UI/UserInterface.py" line="2121"/> <source>Open PySide Documentation</source> <translation>Apri documentazione PySide</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2108"/> + <location filename="UI/UserInterface.py" line="2122"/> <source><b>PySide Documentation</b><p>Display the PySide Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>Documentazione PySide</b><p>Visualizza la documentazione di PySide. A seconda di come è configurato il tuo sistema, verrà mostrata nel visualizzatore interno di Eric o in un browser web o usando Qt Assistant. </p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4538"/> + <location filename="UI/UserInterface.py" line="4555"/> <source><p>The PySide documentation starting point has not been configured.</p></source> <translation><p>L'inizio della documentazione di PySide non è stato configurato.</p></translation> </message> @@ -53593,135 +53842,135 @@ <translation><b>Mostra tool esterni</b><p>Mostra un dialogo con percorso e versione di tutti i tool esterni usati da eric5.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2090"/> + <location filename="UI/UserInterface.py" line="2104"/> <source><b>Eric API Documentation</b><p>Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric5 installation directory.</p></source> <translation><b>Documentazione API Eric</b><p>Mostra la documentazione delle API di Eric. La posizione della documentazione è la subdirectory Documentation/Source della directory in cui è installato eric5.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2567"/> + <location filename="UI/UserInterface.py" line="2584"/> <source>External Tools/{0}</source> <translation>Tool Esterni/{0}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3879"/> + <location filename="UI/UserInterface.py" line="3896"/> <source>Qt v.3 is not supported by eric5.</source> <translation>Le Qt v.3 non sono supportate da eric5.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4035"/> + <location filename="UI/UserInterface.py" line="4052"/> <source><p>The file <b>{0}</b> does not exist or is zero length.</p></source> <translation><p>Il file <b>{0}</b> non esiste o ha lunghezza zero.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3799"/> + <location filename="UI/UserInterface.py" line="3816"/> <source><p>Could not start Qt-Designer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Non posso avviare Qt-Designer.<br>Assicurarsi che sia disponibile come <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3856"/> + <location filename="UI/UserInterface.py" line="3873"/> <source><p>Could not start Qt-Linguist.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Non posso avviare Qt-Linguist.<br>Assicurarsi che sia disponibile come <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3900"/> + <location filename="UI/UserInterface.py" line="3917"/> <source><p>Could not start Qt-Assistant.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Non posso avviare Qt-Assistant.<br>Assicurarsi che sia disponibile come <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3939"/> + <location filename="UI/UserInterface.py" line="3956"/> <source><p>Could not start custom viewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Non posso avviare il visualizzatore personalizzato.<br>Assicurarsi che sia disponibile come <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3998"/> + <location filename="UI/UserInterface.py" line="4015"/> <source><p>Could not start UI Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Non posso avviare UI Previewer.<br>Assicurarsi che sia disponibile come <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4043"/> + <location filename="UI/UserInterface.py" line="4060"/> <source><p>Could not start Translation Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Non posso avviare l'anteprima delle traduzioni.<br>Assicurarsi che sia disponibile come <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4062"/> + <location filename="UI/UserInterface.py" line="4079"/> <source><p>Could not start SQL Browser.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Non posso avviare SQL Browser.<br>Assicurarsi che sia disponibile come <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4129"/> + <location filename="UI/UserInterface.py" line="4146"/> <source>No tool entry found for external tool '{0}' in tool group '{1}'.</source> <translation>Nessun elemento per il tool esterno '{0}' trovato nel gruppo '{1}'.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4135"/> + <location filename="UI/UserInterface.py" line="4152"/> <source>No toolgroup entry '{0}' found.</source> <translation>Nessun gruppo '{0}' trovato.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4171"/> + <location filename="UI/UserInterface.py" line="4188"/> <source>Starting process '{0} {1}'. </source> <translation>Avvio processo '{0} {1}'. </translation> </message> <message> - <location filename="UI/UserInterface.py" line="4187"/> + <location filename="UI/UserInterface.py" line="4204"/> <source><p>Could not start the tool entry <b>{0}</b>.<br>Ensure that it is available as <b>{1}</b>.</p></source> <translation><p>Non posso avviare l'elemento degli strumenti <b>{0}</b>.<br>Assicurarsi che sia disponibile come <b>{1}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4264"/> + <location filename="UI/UserInterface.py" line="4281"/> <source>Process '{0}' has exited. </source> <translation>Il processo '{0}' è terminato.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4553"/> + <location filename="UI/UserInterface.py" line="4570"/> <source><p>The documentation starting point "<b>{0}</b>" could not be found.</p></source> <translation><p>L'inizio della documentazione "<b>{0}</b>" non viene trovato.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4937"/> + <location filename="UI/UserInterface.py" line="4963"/> <source><p>The tasks file <b>{0}</b> could not be written.</p></source> <translation><p>Il file task <b>{0}</b> non può essere scritto.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4959"/> + <location filename="UI/UserInterface.py" line="4985"/> <source><p>The tasks file <b>{0}</b> could not be read.</p></source> <translation><p>Il file task <b>{0}</b> non può essere letto.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4974"/> + <location filename="UI/UserInterface.py" line="5000"/> <source><p>The session file <b>{0}</b> could not be written.</p></source> <translation><p>Il file sessione <b>{0}</b> non può essere scritto.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4997"/> + <location filename="UI/UserInterface.py" line="5023"/> <source><p>The session file <b>{0}</b> could not be read.</p></source> <translation><p>Il file sessione <b>{0}</b> non può essere letto.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5169"/> + <location filename="UI/UserInterface.py" line="5195"/> <source><p><b>{0}</b> is not a file.</p></source> <translation><p><b>{0}</b> non è un file.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5312"/> + <location filename="UI/UserInterface.py" line="5338"/> <source>Trying host {0}</source> <translation>Tento su host {0}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5435"/> + <location filename="UI/UserInterface.py" line="5461"/> <source>The update to <b>{0}</b> of eric5 is available at <b>{1}</b>. Would you like to get it?</source> <translation>L'update alla versione <b>{0}</b> di eric5 è disponibile presso <b>{1}</b>. Vuoi prenderlo ?</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5444"/> + <location filename="UI/UserInterface.py" line="5470"/> <source>Eric5 is up to date</source> <translation>Eric5 è aggiornato</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5444"/> + <location filename="UI/UserInterface.py" line="5470"/> <source>You are using the latest version of eric5</source> <translation>Stai usando l'ultima versione di eric5</translation> </message> @@ -53731,7 +53980,7 @@ <translation type="obsolete"><p>Errori SSL:</p><p>{0}</p><p>Vuoi ignorare questi errori ?</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5509"/> + <location filename="UI/UserInterface.py" line="5535"/> <source>eric5 has not been configured yet. The configuration dialog will be started.</source> <translation>eric5 non è ancora stato configurato. Il dialogo di configurazione verrà avviato.</translation> </message> @@ -53826,72 +54075,72 @@ <translation>Alt+Shift+B</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4816"/> + <location filename="UI/UserInterface.py" line="4833"/> <source>Keyboard shortcut file (*.e4k)</source> <translation>File scorciatoi tastiera (*.e4k)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2051"/> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python 3 Documentation</source> <translation>Documentazione Python 3</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2051"/> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python &3 Documentation</source> <translation>Documentazione Python &3</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2053"/> + <location filename="UI/UserInterface.py" line="2067"/> <source>Open Python 3 Documentation</source> <translation>Apri documentazione Python 3</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2054"/> - <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> - <translation><b>Documentazione Python 3</b><p>Mostra la documentazione Python 3. Se non è configurata una directory per la documentazione, viene assunto che la posizione della documentazione sia nella directory doc nella locazione dell'eseguibile Python 3 su Windows e <i>/usr/share/doc/packages/python/html</i> su Unix. Imposta PYTHONDOCDIR3 nel tuo ambiente per sovrascrivere questi valori.</p></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python 2 Documentation</source> - <translation>Documentazione Python 2</translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python &2 Documentation</source> - <translation>Documentazione Python &2</translation> - </message> - <message> <location filename="UI/UserInterface.py" line="2068"/> + <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> + <translation><b>Documentazione Python 3</b><p>Mostra la documentazione Python 3. Se non è configurata una directory per la documentazione, viene assunto che la posizione della documentazione sia nella directory doc nella locazione dell'eseguibile Python 3 su Windows e <i>/usr/share/doc/packages/python/html</i> su Unix. Imposta PYTHONDOCDIR3 nel tuo ambiente per sovrascrivere questi valori.</p></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python 2 Documentation</source> + <translation>Documentazione Python 2</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python &2 Documentation</source> + <translation>Documentazione Python &2</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2082"/> <source>Open Python 2 Documentation</source> <translation>Apri documentazione Python 2</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2069"/> + <location filename="UI/UserInterface.py" line="2083"/> <source><b>Python 2 Documentation</b><p>Display the Python 2 documentation. If no documentation directory is configured, the location of the Python 2 documentation is assumed to be the doc directory underneath the location of the configured Python 2 executable on Windows and <i>/usr/share/doc/packages/python/html/python-docs-html</i> on Unix. Set PYTHON2DOCDIR in your environment to override this. </p></source> <translation><b>Documentazione Python 2</b><p>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'eseguibile Python 2 su Windows e <i>/usr/share/doc/packages/python/html</i> su Unix. Imposta PYTHONDOCDIR2 nel tuo ambiente per sovrascrivere questi valori.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <source>Error getting versions information</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5356"/> + <location filename="UI/UserInterface.py" line="5382"/> <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="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <source>Open Browser</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <source>Could not start a web browser</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <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> @@ -54002,12 +54251,12 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4109"/> + <location filename="UI/UserInterface.py" line="4126"/> <source><p>Could not start Snapshot tool.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5527"/> + <location filename="UI/UserInterface.py" line="5553"/> <source>Select Workspace Directory</source> <translation type="unfinished"></translation> </message> @@ -54237,7 +54486,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2206"/> + <location filename="UI/UserInterface.py" line="2223"/> <source>&Windows</source> <translation type="unfinished">&Finestre</translation> </message> @@ -54312,30 +54561,50 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt5 Documentation</source> <translation type="unfinished">Documentazione Qt4 {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt&5 Documentation</source> <translation type="unfinished">Documentazione Qt&4 {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2025"/> + <location filename="UI/UserInterface.py" line="2039"/> <source>Open Qt5 Documentation</source> <translation type="unfinished">Apri documentazione su Qt4 {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2026"/> + <location filename="UI/UserInterface.py" line="2040"/> <source><b>Qt5 Documentation</b><p>Display the Qt5 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation type="unfinished"><b>Documentazione Qt4</b><p>Visualizza la documentazione di Qt4. A seconda di come è configurato il tuo sistema, verrà mostrata nel visualizzatore interno di Eric o in un browser web. </p> {5 ?} {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2510"/> + <location filename="UI/UserInterface.py" line="2527"/> <source><p>This part of the status bar allows zooming the current editor, shell or terminal.</p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1920"/> + <source>Manage the saved SSL certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1922"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>UserPropertiesDialog</name>
--- a/i18n/eric5_ru.ts Fri Jan 18 19:31:43 2013 +0100 +++ b/i18n/eric5_ru.ts Fri Jan 18 19:50:13 2013 +0100 @@ -7358,49 +7358,289 @@ </message> </context> <context> + <name>E5SslCertificatesDialog</name> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="14"/> + <source>SSL Certificate Manager</source> + <translation type="unfinished">Менеджер SLL сертификатов</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="27"/> + <source>&Servers</source> + <translation type="unfinished">&Серверы</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="33"/> + <source>You have saved certificates identifying these servers:</source> + <translation type="unfinished">Сертификаты следующих серверов уже сохранены:</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="140"/> + <source>Certificate name</source> + <translation type="unfinished">Имя сертификата</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="46"/> + <source>Server</source> + <translation type="unfinished">Сервер</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="145"/> + <source>Expiry Date</source> + <translation type="unfinished">Дата окончания</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="158"/> + <source>Press to view the selected certificate</source> + <translation type="unfinished">Показать выбранный сертификат</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="161"/> + <source>&View...</source> + <translation type="unfinished">&Показать...</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="168"/> + <source>Press to import a certificate</source> + <translation type="unfinished">Импортировать сертификат</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="171"/> + <source>&Import...</source> + <translation type="unfinished">&Импорт...</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="181"/> + <source>Press to export the selected certificate</source> + <translation type="unfinished">Экспортировать сертификат</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="184"/> + <source>&Export...</source> + <translation type="unfinished">&Экспорт...</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="194"/> + <source>Press to delete the selected certificate</source> + <translation type="unfinished">Удалить выбранный сертификат</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="197"/> + <source>&Delete...</source> + <translation type="unfinished">&Удалить...</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="126"/> + <source>Certificate &Authorities</source> + <translation type="unfinished">&Авторитеты</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="132"/> + <source>You have saved certificates identifying these certification authorities:</source> + <translation type="unfinished">Сертификаты для следующих авторитетов уже сохранены:</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="274"/> + <source>(Unknown)</source> + <translation type="unfinished">(неизвестный)</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="276"/> + <source>(Unknown common name)</source> + <translation type="unfinished">(Неизвестное имя) +</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source>Delete Server Certificate</source> + <translation type="unfinished">Удалить сертификат сервера</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> + <translation type="unfinished"><p>Удалить сертификат сервера?</p><p>{0}</p><p>Если сертификат сервера будет удалён, то обычные проверки безопасности будут восстановлены и сервер будет должен вновь представить действительный сертификат.</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Import Certificate</source> + <translation type="unfinished">Импортировать сертификат</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="363"/> + <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> + <translation type="unfinished"><p>Сертификат <b>{0}</b> уже существует. Пропускаем.</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source>Delete CA Certificate</source> + <translation type="unfinished">Удалить CA сертификат</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> + <translation type="unfinished"><p>Удалить CA сертификат?</p><p>{0}</p><p>Если CA сертификат будет удалён, то просмотрщик не будет доверять ни одному сертификату выданному этим CA.</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source>Export Certificate</source> + <translation type="unfinished">Экспортировать сертификат</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="399"/> + <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> + <translation type="unfinished">Файлы сертификатов (PEM) (*.pem);;Файлы сертификатов (DER) (*.der)</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="415"/> + <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> + <translation type="unfinished"><p>Файл <b>{0}</b> уже сущеструет. Переписать?</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="425"/> + <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> + <translation type="unfinished"><p>Невозможно записать сертификат в файл <b>{0}</b>:<br>Ошибка: {1}.</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> + <translation type="unfinished">Файлы сертификатов (*.pem *.crt *.der *.cer *.ca);;Все файлы (*)</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> + <translation type="unfinished"><p>Невозможно прочитать сертификат из файла <b>{0}</b>:<br>Ошибка: {1}.</p></translation> + </message> +</context> +<context> <name>E5SslErrorHandler</name> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source>SSL Errors</source> <translation type="unfinished">Ошибки SSL</translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source><p>SSL Errors for <br /><b>{0}</b><ul><li>{1}</li></ul></p><p>Do you want to ignore these errors?</p></source> <translation type="unfinished"><p>Ошибки SSL для <br /><b>{0}</b><ul><li>{1}</li></ul></p><p>Игнорировать?</p></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source>Certificates</source> <translation type="unfinished">Сертификаты</translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source><p>Certificates:<br/>{0}<br/>Do you want to accept all these certificates?</p></source> <translation type="unfinished"><p>Сертификаты:<br/>{0}<br/>Принять?</p></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="184"/> - <source>Name: {0}</source> - <translation type="unfinished">Имя: {0}</translation> - </message> - <message> - <location filename="E5Network/E5SslErrorHandler.py" line="188"/> - <source><br/>Organization: {0}</source> - <translation type="unfinished"><br/>Организация: {0}</translation> - </message> - <message> <location filename="E5Network/E5SslErrorHandler.py" line="192"/> - <source><br/>Issuer: {0}</source> - <translation type="unfinished"><br/>Эмитент: {0}</translation> + <source>Name: {0}</source> + <translation type="unfinished">Имя: {0}</translation> </message> <message> <location filename="E5Network/E5SslErrorHandler.py" line="196"/> + <source><br/>Organization: {0}</source> + <translation type="unfinished"><br/>Организация: {0}</translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="200"/> + <source><br/>Issuer: {0}</source> + <translation type="unfinished"><br/>Эмитент: {0}</translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="204"/> <source><br/>Not valid before: {0}<br/>Valid Until: {1}</source> <translation type="unfinished"><br/>Не действительны ранее: {0}<br/>Действительны до: {1}</translation> </message> </context> <context> + <name>E5SslInfoDialog</name> + <message> + <location filename="E5Network/E5SslInfoDialog.ui" line="14"/> + <source>SSL Certificate Info</source> + <translation type="unfinished">SLL сертификат</translation> + </message> +</context> +<context> + <name>E5SslInfoWidget</name> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="17"/> + <source>This certificated has been blacklisted.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="24"/> + <source><b>Issued for</b></source> + <translation type="unfinished"><b>Выдан для</b></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="118"/> + <source>Common Name (CN)</source> + <translation type="unfinished">Общее имя (CN)</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="138"/> + <source>Organization (O)</source> + <translation type="unfinished">Организация (O)</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="158"/> + <source>Organizational Unit (OU)</source> + <translation type="unfinished">Организационное подразделение (OU)</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="91"/> + <source>Serialnumber</source> + <translation type="unfinished">Серийный номер</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="111"/> + <source><b>Issued by</b></source> + <translation type="unfinished"><b>Выдан</b></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="178"/> + <source><b>Validity</b></source> + <translation type="unfinished"><b>Верен</b></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="185"/> + <source>Issued on</source> + <translation type="unfinished">Дата выдачи</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="205"/> + <source>Expires on</source> + <translation type="unfinished">Дата окончания</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="225"/> + <source>This certificate is not valid yet or has expired.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="232"/> + <source><b>Fingerprints</b></source> + <translation type="unfinished"><b>Отпечатки</b></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="239"/> + <source>SHA1-Fingerprint</source> + <translation type="unfinished">SHA1</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="259"/> + <source>MD5-Fingerprint</source> + <translation type="unfinished">MD5</translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.py" line="111"/> + <source><not part of the certificate></source> + <translation type="unfinished"><Не является частью сертификата></translation> + </message> +</context> +<context> <name>E5ToolBarDialog</name> <message> <location filename="E5Gui/E5ToolBarDialog.ui" line="14"/> @@ -17565,22 +17805,22 @@ <message> <location filename="Helpviewer/HelpWindow.py" line="1230"/> <source>Manage Certificates</source> - <translation>Управлять сертификатами</translation> + <translation type="obsolete">Управлять сертификатами</translation> </message> <message> <location filename="Helpviewer/HelpWindow.py" line="1230"/> <source>Manage Certificates...</source> - <translation>Управлять сертификатами...</translation> + <translation type="obsolete">Управлять сертификатами...</translation> </message> <message> <location filename="Helpviewer/HelpWindow.py" line="1234"/> <source>Manage the saved certificates</source> - <translation>Управлять сохранёнными сертификатами</translation> + <translation type="obsolete">Управлять сохранёнными сертификатами</translation> </message> <message> <location filename="Helpviewer/HelpWindow.py" line="1236"/> <source><b>Manage Saved Certificates...</b><p>Opens a dialog to manage the saved certificates.</p></source> - <translation><b>Управлять сохранёнными сертификатами</b><p>Показывает диалог управления сохранёнными сертификатами.</p></translation> + <translation type="obsolete"><b>Управлять сохранёнными сертификатами</b><p>Показывает диалог управления сохранёнными сертификатами.</p></translation> </message> <message> <location filename="Helpviewer/HelpWindow.py" line="1615"/> @@ -17857,6 +18097,26 @@ <source><p>The Qt Style Sheet file <b>{0}</b> could not be read.<br>Reason: {1}</p></source> <translation type="obsolete"><p>Невозможно прочитать файл таблиц стилей Qt <b>{0}</b>.<br>{1}</p></translation> </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1234"/> + <source>Manage the saved SSL certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1236"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>Hg</name> @@ -19198,12 +19458,12 @@ <translation>Выполнить принудительно</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="46"/> <source>Mercurial Move</source> <translation>Mercurial Move</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="81"/> <source>Select target</source> <translation>Выберите цель</translation> </message> @@ -41934,153 +42194,153 @@ <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="14"/> <source>SSL Certificate Manager</source> - <translation>Менеджер SLL сертификатов</translation> + <translation type="obsolete">Менеджер SLL сертификатов</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="27"/> <source>&Servers</source> - <translation>&Серверы</translation> + <translation type="obsolete">&Серверы</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="33"/> <source>You have saved certificates identifying these servers:</source> - <translation>Сертификаты следующих серверов уже сохранены:</translation> + <translation type="obsolete">Сертификаты следующих серверов уже сохранены:</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="140"/> <source>Certificate name</source> - <translation>Имя сертификата</translation> + <translation type="obsolete">Имя сертификата</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="46"/> <source>Server</source> - <translation>Сервер</translation> + <translation type="obsolete">Сервер</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="145"/> <source>Expiry Date</source> - <translation>Дата окончания</translation> + <translation type="obsolete">Дата окончания</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="158"/> <source>Press to view the selected certificate</source> - <translation>Показать выбранный сертификат</translation> + <translation type="obsolete">Показать выбранный сертификат</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="161"/> <source>&View...</source> - <translation>&Показать...</translation> + <translation type="obsolete">&Показать...</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="194"/> <source>Press to delete the selected certificate</source> - <translation>Удалить выбранный сертификат</translation> + <translation type="obsolete">Удалить выбранный сертификат</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="197"/> <source>&Delete...</source> - <translation>&Удалить...</translation> + <translation type="obsolete">&Удалить...</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="126"/> <source>Certificate &Authorities</source> - <translation>&Авторитеты</translation> + <translation type="obsolete">&Авторитеты</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="132"/> <source>You have saved certificates identifying these certification authorities:</source> - <translation>Сертификаты для следующих авторитетов уже сохранены:</translation> + <translation type="obsolete">Сертификаты для следующих авторитетов уже сохранены:</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="274"/> <source>(Unknown)</source> - <translation>(неизвестный)</translation> + <translation type="obsolete">(неизвестный)</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="276"/> <source>(Unknown common name)</source> - <translation>(Неизвестное имя) + <translation type="obsolete">(Неизвестное имя) </translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> <source>Delete Server Certificate</source> - <translation>Удалить сертификат сервера</translation> + <translation type="obsolete">Удалить сертификат сервера</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> - <translation><p>Удалить сертификат сервера?</p><p>{0}</p><p>Если сертификат сервера будет удалён, то обычные проверки безопасности будут восстановлены и сервер будет должен вновь представить действительный сертификат.</p></translation> + <translation type="obsolete"><p>Удалить сертификат сервера?</p><p>{0}</p><p>Если сертификат сервера будет удалён, то обычные проверки безопасности будут восстановлены и сервер будет должен вновь представить действительный сертификат.</p></translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="168"/> <source>Press to import a certificate</source> - <translation>Импортировать сертификат</translation> + <translation type="obsolete">Импортировать сертификат</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="171"/> <source>&Import...</source> - <translation>&Импорт...</translation> + <translation type="obsolete">&Импорт...</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="181"/> <source>Press to export the selected certificate</source> - <translation>Экспортировать сертификат</translation> + <translation type="obsolete">Экспортировать сертификат</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="184"/> <source>&Export...</source> - <translation>&Экспорт...</translation> + <translation type="obsolete">&Экспорт...</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> <source>Import Certificate</source> - <translation>Импортировать сертификат</translation> + <translation type="obsolete">Импортировать сертификат</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="363"/> <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> - <translation><p>Сертификат <b>{0}</b> уже существует. Пропускаем.</p></translation> + <translation type="obsolete"><p>Сертификат <b>{0}</b> уже существует. Пропускаем.</p></translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> <source>Delete CA Certificate</source> - <translation>Удалить CA сертификат</translation> + <translation type="obsolete">Удалить CA сертификат</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> - <translation><p>Удалить CA сертификат?</p><p>{0}</p><p>Если CA сертификат будет удалён, то просмотрщик не будет доверять ни одному сертификату выданному этим CA.</p></translation> + <translation type="obsolete"><p>Удалить CA сертификат?</p><p>{0}</p><p>Если CA сертификат будет удалён, то просмотрщик не будет доверять ни одному сертификату выданному этим CA.</p></translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> <source>Export Certificate</source> - <translation>Экспортировать сертификат</translation> + <translation type="obsolete">Экспортировать сертификат</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="399"/> <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> - <translation>Файлы сертификатов (PEM) (*.pem);;Файлы сертификатов (DER) (*.der)</translation> + <translation type="obsolete">Файлы сертификатов (PEM) (*.pem);;Файлы сертификатов (DER) (*.der)</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="415"/> <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> - <translation><p>Файл <b>{0}</b> уже сущеструет. Переписать?</p></translation> + <translation type="obsolete"><p>Файл <b>{0}</b> уже сущеструет. Переписать?</p></translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="425"/> <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> - <translation><p>Невозможно записать сертификат в файл <b>{0}</b>:<br>Ошибка: {1}.</p></translation> + <translation type="obsolete"><p>Невозможно записать сертификат в файл <b>{0}</b>:<br>Ошибка: {1}.</p></translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> - <translation>Файлы сертификатов (*.pem *.crt *.der *.cer *.ca);;Все файлы (*)</translation> + <translation type="obsolete">Файлы сертификатов (*.pem *.crt *.der *.cer *.ca);;Все файлы (*)</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> - <translation><p>Невозможно прочитать сертификат из файла <b>{0}</b>:<br>Ошибка: {1}.</p></translation> + <translation type="obsolete"><p>Невозможно прочитать сертификат из файла <b>{0}</b>:<br>Ошибка: {1}.</p></translation> </message> </context> <context> @@ -42088,7 +42348,7 @@ <message> <location filename="Helpviewer/SslInfoDialog.ui" line="14"/> <source>SSL Certificate Info</source> - <translation>SLL сертификат</translation> + <translation type="obsolete">SLL сертификат</translation> </message> <message> <location filename="Helpviewer/SslInfoDialog.ui" line="32"/> @@ -42159,79 +42419,69 @@ <context> <name>SslInfoWidget</name> <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="17"/> - <source>This certificated has been blacklisted.</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="Helpviewer/SslInfoWidget.ui" line="24"/> <source><b>Issued for</b></source> - <translation type="unfinished"><b>Выдан для</b></translation> + <translation type="obsolete"><b>Выдан для</b></translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="118"/> <source>Common Name (CN)</source> - <translation type="unfinished">Общее имя (CN)</translation> + <translation type="obsolete">Общее имя (CN)</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="138"/> <source>Organization (O)</source> - <translation type="unfinished">Организация (O)</translation> + <translation type="obsolete">Организация (O)</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="158"/> <source>Organizational Unit (OU)</source> - <translation type="unfinished">Организационное подразделение (OU)</translation> + <translation type="obsolete">Организационное подразделение (OU)</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="91"/> <source>Serialnumber</source> - <translation type="unfinished">Серийный номер</translation> + <translation type="obsolete">Серийный номер</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="111"/> <source><b>Issued by</b></source> - <translation type="unfinished"><b>Выдан</b></translation> + <translation type="obsolete"><b>Выдан</b></translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="178"/> <source><b>Validity</b></source> - <translation type="unfinished"><b>Верен</b></translation> + <translation type="obsolete"><b>Верен</b></translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="185"/> <source>Issued on</source> - <translation type="unfinished">Дата выдачи</translation> + <translation type="obsolete">Дата выдачи</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="205"/> <source>Expires on</source> - <translation type="unfinished">Дата окончания</translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="225"/> - <source>This certificate is not valid yet or has expired.</source> - <translation type="unfinished"></translation> + <translation type="obsolete">Дата окончания</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="232"/> <source><b>Fingerprints</b></source> - <translation type="unfinished"><b>Отпечатки</b></translation> + <translation type="obsolete"><b>Отпечатки</b></translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="239"/> <source>SHA1-Fingerprint</source> - <translation type="unfinished">SHA1</translation> + <translation type="obsolete">SHA1</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.ui" line="259"/> <source>MD5-Fingerprint</source> - <translation type="unfinished">MD5</translation> + <translation type="obsolete">MD5</translation> </message> <message> <location filename="Helpviewer/SslInfoWidget.py" line="111"/> <source><not part of the certificate></source> - <translation type="unfinished"><Не является частью сертификата></translation> + <translation type="obsolete"><Не является частью сертификата></translation> </message> </context> <context> @@ -43864,12 +44114,12 @@ <context> <name>SvnCopyDialog</name> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="46"/> <source>Subversion Move</source> <translation>Перемещение Subversion</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="81"/> <source>Select target</source> <translation>Выберите цель</translation> </message> @@ -51964,7 +52214,7 @@ <translation type="obsolete">Задайте адрес.</translation> </message> <message> - <location filename="Helpviewer/UrlBar/UrlBar.py" line="199"/> + <location filename="Helpviewer/UrlBar/UrlBar.py" line="198"/> <source>Unknown</source> <translation>Неизвестный</translation> </message> @@ -52211,7 +52461,7 @@ <translation><b>Показать версию</b><p>Информация о версии.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2319"/> + <location filename="UI/UserInterface.py" line="2336"/> <source>Unittest</source> <translation>Unittest</translation> </message> @@ -52247,52 +52497,52 @@ <p>Настройте Eric по своему вкусу.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2201"/> + <location filename="UI/UserInterface.py" line="2218"/> <source>&Window</source> <translation>&Окно</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2174"/> + <location filename="UI/UserInterface.py" line="2188"/> <source>&Tools</source> <translation>&Сервис</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2167"/> + <location filename="UI/UserInterface.py" line="2181"/> <source>Wi&zards</source> <translation>&Мастера</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2251"/> + <location filename="UI/UserInterface.py" line="2268"/> <source>&Help</source> <translation>&Помощь</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2318"/> + <location filename="UI/UserInterface.py" line="2335"/> <source>Tools</source> <translation>Сервис</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3927"/> + <location filename="UI/UserInterface.py" line="3944"/> <source>Help</source> <translation>Помощь</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2320"/> + <location filename="UI/UserInterface.py" line="2337"/> <source>Settings</source> <translation>Настройка</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2226"/> + <location filename="UI/UserInterface.py" line="2243"/> <source>&Toolbars</source> <translation>&Панели инструментов</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4035"/> + <location filename="UI/UserInterface.py" line="4052"/> <source>Problem</source> <translation>Проблема</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4187"/> + <location filename="UI/UserInterface.py" line="4204"/> <source>Process Generation Error</source> <translation>Ошибка процесса генерации</translation> </message> @@ -52317,12 +52567,12 @@ <translation><b>Горячие клавиши</b><p>Задайте горячие клавиши на свой вкус.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2162"/> + <location filename="UI/UserInterface.py" line="2176"/> <source>E&xtras</source> <translation>До&полнительно</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2704"/> + <location filename="UI/UserInterface.py" line="2721"/> <source>Report Bug</source> <translation>Сообщение об ошибке</translation> </message> @@ -52342,7 +52592,7 @@ <translation><b>Сообщить об ошибке...</b><p>Открывает диалог для сообщения об ошибке.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4793"/> + <location filename="UI/UserInterface.py" line="4810"/> <source>Export Keyboard Shortcuts</source> <translation>Экспортировать горячие клавиши</translation> </message> @@ -52363,7 +52613,7 @@ <p>Экспортировать горячие клавиши приложения.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4816"/> + <location filename="UI/UserInterface.py" line="4833"/> <source>Import Keyboard Shortcuts</source> <translation>Импортировать горячие клавиши</translation> </message> @@ -52456,7 +52706,7 @@ <translation><b>Сценарий Unittest</b><p>Выполнить Uniitest с текущим сценарием.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3704"/> + <location filename="UI/UserInterface.py" line="3721"/> <source>Unittest Project</source> <translation>Uniitest на проекте</translation> </message> @@ -52471,12 +52721,12 @@ <translation><b>Сценарий Unittest</b><p>Выполнить Uniitest с текущим проектом.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2145"/> + <location filename="UI/UserInterface.py" line="2159"/> <source>&Unittest</source> <translation>&Unittest</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3704"/> + <location filename="UI/UserInterface.py" line="3721"/> <source>There is no main script defined for the current project. Aborting</source> <translation>Для текущего проекта не определён главный сценарий. Отмена</translation> </message> @@ -52533,7 +52783,7 @@ <p>Открыть диалог, в котором показаны различия между файлами в две колонки.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5169"/> + <location filename="UI/UserInterface.py" line="5195"/> <source>Drop Error</source> <translation>Ошибка Drag&&Drop</translation> </message> @@ -52619,32 +52869,32 @@ <translation><b>Профили</b><p>Конфигурация профилей. С помощью этого диалога вы можете устанавливать видимость разных окон для заданных профилей.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4035"/> + <location filename="UI/UserInterface.py" line="4052"/> <source><p>The file <b>{0}</b> does not exist or is zero length.</p></source> <translation><p>Файл <b>{0}</b> либо не существует, либо нулевой длины.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3799"/> + <location filename="UI/UserInterface.py" line="3816"/> <source><p>Could not start Qt-Designer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Невозможно запустить Qt-Designer.<br>Убедитесь, что он доступен в <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3856"/> + <location filename="UI/UserInterface.py" line="3873"/> <source><p>Could not start Qt-Linguist.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Невозможно запустить Qt-Linguist.<br>Убедитесь, что он доступен в <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3900"/> + <location filename="UI/UserInterface.py" line="3917"/> <source><p>Could not start Qt-Assistant.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Невозможно запустить Qt-Assistant.<br>Убедитесь, что он доступен в <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4187"/> + <location filename="UI/UserInterface.py" line="4204"/> <source><p>Could not start the tool entry <b>{0}</b>.<br>Ensure that it is available as <b>{1}</b>.</p></source> <translation><p>Невозможно запустить инструмент <b>{0}</b>.<br>Убедитесь, что он доступен в <b>{1}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5169"/> + <location filename="UI/UserInterface.py" line="5195"/> <source><p><b>{0}</b> is not a file.</p></source> <translation><p><b>{0}</b> не является файлом</p></translation> </message> @@ -52669,7 +52919,7 @@ <translation><b>UI Previewer</b><p>Запустить the UI Previewer.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3998"/> + <location filename="UI/UserInterface.py" line="4015"/> <source><p>Could not start UI Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Невозможно запустить UI Previewer.<br>Убедитесь, что он находится в <b>{0}</b>.</p></translation> </message> @@ -52694,7 +52944,7 @@ <translation><b>Предпросмотр переводов</b><p>Запустить предпросмотр переводов.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4043"/> + <location filename="UI/UserInterface.py" line="4060"/> <source><p>Could not start Translation Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Невозможно запустить предпросмотр переводов.<br>Убедитесь, что он находится в <b>{0}</b>.</p></translation> </message> @@ -52761,48 +53011,48 @@ <p>Если окно Задач скрыто, показать его. Иначе - закрыть.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4937"/> + <location filename="UI/UserInterface.py" line="4963"/> <source>Save tasks</source> <translation>Сохранить задачи</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4937"/> + <location filename="UI/UserInterface.py" line="4963"/> <source><p>The tasks file <b>{0}</b> could not be written.</p></source> <translation><p>Невозможно сохранить файл с задачами: <b>{0}</b></p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4959"/> + <location filename="UI/UserInterface.py" line="4985"/> <source>Read tasks</source> <translation>Прочитать задачи</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4959"/> + <location filename="UI/UserInterface.py" line="4985"/> <source><p>The tasks file <b>{0}</b> could not be read.</p></source> <translation><p>Невозможно прочитать файл с задачами: <b>{0}</b></p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3927"/> + <location filename="UI/UserInterface.py" line="3944"/> <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="3939"/> + <location filename="UI/UserInterface.py" line="3956"/> <source><p>Could not start custom viewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Невозможно запустить специальный просмотрщик.<br>Убедитесь, что он находится в <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4553"/> + <location filename="UI/UserInterface.py" line="4570"/> <source>Documentation Missing</source> <translation>Документация отсутствует</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4553"/> + <location filename="UI/UserInterface.py" line="4570"/> <source><p>The documentation starting point "<b>{0}</b>" could not be found.</p></source> <translation><p>Корень документации "<b>{0}</b>" не найден.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2704"/> + <location filename="UI/UserInterface.py" line="2721"/> <source>Email address or mail server address is empty. Please configure your Email settings in the Preferences Dialog.</source> <translation>Почтовый адрес или адрес почтового сервера пуст. Настройте электронную почту в диалоге конфигурации.</translation> </message> @@ -52878,22 +53128,22 @@ <translation>Alt+Shift+M</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Activate current editor</source> <translation>Активизировать текущий редактор</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Alt+Shift+E</source> <translation>Alt+Shift+E</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Ctrl+Alt+Tab</source> <translation>Ctrl+Alt+Tab</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Shift+Ctrl+Alt+Tab</source> <translation>Shift+Ctrl+Alt+Tab</translation> </message> @@ -52933,37 +53183,37 @@ <translation type="obsolete"><b>Qt-Лингвист 4</b><p>Запустить Qt-Лингвист 4.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt4 Documentation</source> <translation>Документация Qt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt&4 Documentation</source> <translation>Документация Qt&4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2013"/> + <location filename="UI/UserInterface.py" line="2027"/> <source>Open Qt4 Documentation</source> <translation>Открыть документацию Qt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2087"/> + <location filename="UI/UserInterface.py" line="2101"/> <source>Eric API Documentation</source> <translation>Документация API Eric</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2087"/> + <location filename="UI/UserInterface.py" line="2101"/> <source>&Eric API Documentation</source> <translation>Документация API &Eric</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2089"/> + <location filename="UI/UserInterface.py" line="2103"/> <source>Open Eric API Documentation</source> <translation>Открыть документацию API Eric</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3958"/> + <location filename="UI/UserInterface.py" line="3975"/> <source><p>Could not start the help viewer.<br>Ensure that it is available as <b>hh</b>.</p></source> <translation><p>Невозможно запустить просмотрщик помощи.<br>Убедитесь, что он доступен под именем <b>hh</b>.</p></translation> </message> @@ -53030,92 +53280,92 @@ <translation>Проверить наличие &обновлений...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2014"/> + <location filename="UI/UserInterface.py" line="2028"/> <source><b>Qt4 Documentation</b><p>Display the Qt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>Документация Qt4</b> <p>Отобразить документацию Qt4. В зависимости от настроек, она отобразится либо во встроенном просмотрщике помощи Eric, либо вызовет интернет-браузер, либо Qt Assistant.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>PyQt4 Documentation</source> <translation>Документация PyQt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>P&yQt4 Documentation</source> <translation>Документация P&yQt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2037"/> + <location filename="UI/UserInterface.py" line="2051"/> <source>Open PyQt4 Documentation</source> <translation>Открыть документацию Qt4</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2038"/> + <location filename="UI/UserInterface.py" line="2052"/> <source><b>PyQt4 Documentation</b><p>Display the PyQt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>Документация PyQt4</b> <p>Отобразить документацию PyQt4. В зависимости от настроек, она отобразится либо во встроенном просмотрщике помощи Eric, либо вызовет интернет-браузер, либо Qt Assistant.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2177"/> + <location filename="UI/UserInterface.py" line="2191"/> <source>Select Tool Group</source> <translation>Выберите группу инструментов</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2183"/> + <location filename="UI/UserInterface.py" line="2197"/> <source>Se&ttings</source> <translation>&Настройка</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2322"/> + <location filename="UI/UserInterface.py" line="2339"/> <source>Profiles</source> <translation>Профили</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3030"/> + <location filename="UI/UserInterface.py" line="3047"/> <source>&Builtin Tools</source> <translation>&Встроенные инструменты</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4171"/> + <location filename="UI/UserInterface.py" line="4188"/> <source>Starting process '{0} {1}'. </source> <translation>Запускается процесс '{0} {1}'. </translation> </message> <message> - <location filename="UI/UserInterface.py" line="4264"/> + <location filename="UI/UserInterface.py" line="4281"/> <source>Process '{0}' has exited. </source> <translation>Процесс '{0}' завершился.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4538"/> + <location filename="UI/UserInterface.py" line="4555"/> <source>Documentation</source> <translation>Документация</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4447"/> + <location filename="UI/UserInterface.py" line="4464"/> <source><p>The PyQt4 documentation starting point has not been configured.</p></source> <translation><p>Корень документации PyQt4 не найден.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5448"/> + <location filename="UI/UserInterface.py" line="5474"/> <source>Error during updates check</source> <translation>Ошибка при проверке обновлений</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5435"/> + <location filename="UI/UserInterface.py" line="5461"/> <source>Update available</source> <translation>Обновления доступны</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2653"/> + <location filename="UI/UserInterface.py" line="2670"/> <source><h3>Version Numbers</h3><table></source> <translation><h3>Номера версий</h3><table></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5482"/> + <location filename="UI/UserInterface.py" line="5508"/> <source></table></source> <translation></table></translation> </message> @@ -53130,12 +53380,12 @@ <translation type="obsolete"><p>Невозможно прочитать файл таблиц стилей Qt <b>{0}</b>.<br>{1}</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2978"/> + <location filename="UI/UserInterface.py" line="2995"/> <source>Configure Tool Groups ...</source> <translation>Настроить группы Инструментов...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2981"/> + <location filename="UI/UserInterface.py" line="2998"/> <source>Configure current Tool Group ...</source> <translation>Настроить текущую группу Инструментов...</translation> </message> @@ -53150,22 +53400,22 @@ <translation>Показать &внешние инструменты</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5448"/> + <location filename="UI/UserInterface.py" line="5474"/> <source>Could not perform updates check.</source> <translation>Невозможно запустить проверку обновлений.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5307"/> + <location filename="UI/UserInterface.py" line="5333"/> <source>&Cancel</source> <translation>От&мена</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5312"/> + <location filename="UI/UserInterface.py" line="5338"/> <source>Trying host {0}</source> <translation>Пробую узел {0}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5509"/> + <location filename="UI/UserInterface.py" line="5535"/> <source>First time usage</source> <translation>Первое использование</translation> </message> @@ -53175,63 +53425,63 @@ <translation>Инициализируется менеджер расширений...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2237"/> + <location filename="UI/UserInterface.py" line="2254"/> <source>P&lugins</source> <translation>&Расширения</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2323"/> + <location filename="UI/UserInterface.py" line="2340"/> <source>Plugins</source> <translation>Расширения</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>Plugin Infos</source> <translation>Информация о расширениях</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1951"/> + <location filename="UI/UserInterface.py" line="1965"/> <source>Show Plugin Infos</source> <translation>Показать информацию о расширениях</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1952"/> + <location filename="UI/UserInterface.py" line="1966"/> <source><b>Plugin Infos...</b><p>This opens a dialog, that show some information about loaded plugins.</p></source> <translation><b>Информация о расширениях...</b> <p>Открывает диалог, отображающий информацию о загруженных расширениях.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>&Plugin Infos...</source> <translation>Ин&формация о подключаемых модулях...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1974"/> + <location filename="UI/UserInterface.py" line="1988"/> <source>Uninstall Plugin</source> <translation>Убрать подключаемый модуль</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1971"/> + <location filename="UI/UserInterface.py" line="1985"/> <source>&Uninstall Plugin...</source> <translation>У&брать подключаемый модуль...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1975"/> + <location filename="UI/UserInterface.py" line="1989"/> <source><b>Uninstall Plugin...</b><p>This opens a dialog to uninstall a plugin.</p></source> <translation><b>Убрать подключаемый модуль...</b><p>Открывает диалог деинсталляции нового подключаемого модуля.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3038"/> + <location filename="UI/UserInterface.py" line="3055"/> <source>&Plugin Tools</source> <translation>Инструменты для &плагинов</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3128"/> + <location filename="UI/UserInterface.py" line="3145"/> <source>&Show all</source> <translation>Показать &всё</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3130"/> + <location filename="UI/UserInterface.py" line="3147"/> <source>&Hide all</source> <translation>Ск&рыть всё</translation> </message> @@ -53266,42 +53516,42 @@ <translation type="obsolete">Невозможно скачать файл версий.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5469"/> + <location filename="UI/UserInterface.py" line="5495"/> <source><h3>Available versions</h3><table></source> <translation><h3>Доступные версии</h3><table></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1982"/> + <location filename="UI/UserInterface.py" line="1996"/> <source>Plugin Repository</source> <translation>Репозиторий плагинов</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1982"/> + <location filename="UI/UserInterface.py" line="1996"/> <source>Plugin &Repository...</source> <translation>&Репозиторий плагинов...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1985"/> + <location filename="UI/UserInterface.py" line="1999"/> <source>Show Plugins available for download</source> <translation>Показать плагины, доступные для загрузки</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1987"/> + <location filename="UI/UserInterface.py" line="2001"/> <source><b>Plugin Repository...</b><p>This opens a dialog, that shows a list of plugins available on the Internet.</p></source> <translation><b>Репозиторий плагинов...</b><p>Открывает диалог, который показывает список плагинов, доступных для скачивания с интернета.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1963"/> + <location filename="UI/UserInterface.py" line="1977"/> <source>Install Plugins</source> <translation>Установить плагины</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1960"/> + <location filename="UI/UserInterface.py" line="1974"/> <source>&Install Plugins...</source> <translation>&Установить плагины...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1964"/> + <location filename="UI/UserInterface.py" line="1978"/> <source><b>Install Plugins...</b><p>This opens a dialog to install or update plugins.</p></source> <translation><b>Установить плагины...</b><p>Открывает диалог для установки или обновления плагинов.</p></translation> </message> @@ -53356,22 +53606,22 @@ <translation>Восстановление менеджера панелей инструментов...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2567"/> + <location filename="UI/UserInterface.py" line="2584"/> <source>External Tools/{0}</source> <translation>Внешние инструменты/{0}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4135"/> + <location filename="UI/UserInterface.py" line="4152"/> <source>External Tools</source> <translation>Внешние инструменты</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4129"/> + <location filename="UI/UserInterface.py" line="4146"/> <source>No tool entry found for external tool '{0}' in tool group '{1}'.</source> <translation>Запись для внешней программы '{0}' не найдена в группе '{1}'.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4135"/> + <location filename="UI/UserInterface.py" line="4152"/> <source>No toolgroup entry '{0}' found.</source> <translation>Запись для группы '{0}' не найдена.</translation> </message> @@ -53406,32 +53656,32 @@ <translation type="obsolete">Просмотрщик &шаблонов</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4974"/> + <location filename="UI/UserInterface.py" line="5000"/> <source>Save session</source> <translation>Сохранить сессию</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4974"/> + <location filename="UI/UserInterface.py" line="5000"/> <source><p>The session file <b>{0}</b> could not be written.</p></source> <translation><p>Не могу записать файл сессии <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4997"/> + <location filename="UI/UserInterface.py" line="5023"/> <source>Read session</source> <translation>Загрузить сессию</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4997"/> + <location filename="UI/UserInterface.py" line="5023"/> <source><p>The session file <b>{0}</b> could not be read.</p></source> <translation><p>Не могу прочитать файл сессии <b>{0}</b>.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2472"/> + <location filename="UI/UserInterface.py" line="2489"/> <source><p>This part of the status bar displays the current editors encoding.</p></source> <translation><p>Эта часть строки статуса показывает текущую кодировку редактора.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2486"/> + <location filename="UI/UserInterface.py" line="2503"/> <source><p>This part of the status bar displays an indication of the current editors files writability.</p></source> <translation><p>Эта часть строки статуса указывает на возможность записи открытого в редакторе файла.</p></translation> </message> @@ -53466,7 +53716,7 @@ <translation><b>Послать запрос...</b><p>Показать диалог создания запроса.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2465"/> + <location filename="UI/UserInterface.py" line="2482"/> <source><p>This part of the status bar displays the current editors language.</p></source> <translation><p>Эта часть строки статуса показывает язык текущего окна редактора.</p></translation> </message> @@ -53476,12 +53726,12 @@ <translation type="obsolete"><p>Эта часть строки статуса показывает имя файла открытого в текущем редакторе.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2493"/> + <location filename="UI/UserInterface.py" line="2510"/> <source><p>This part of the status bar displays the line number of the current editor.</p></source> <translation><p>Эта часть строки статуса показывает номер текущей строки в редакторе.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2500"/> + <location filename="UI/UserInterface.py" line="2517"/> <source><p>This part of the status bar displays the cursor position of the current editor.</p></source> <translation><p>Эта часть строки статуса показывает текущую позицию курсора в редакторе.</p></translation> </message> @@ -53526,12 +53776,12 @@ <translation><b>Переключить горизонтальную панель инструментов</b><p>Показать/скрыть горизонтальную панель инструментов</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2946"/> + <location filename="UI/UserInterface.py" line="2963"/> <source>Restart application</source> <translation>Перезапустить приложение</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2946"/> + <location filename="UI/UserInterface.py" line="2963"/> <source>The application needs to be restarted. Do it now?</source> <translation>Необходимо перезапустить приложение. Сделать это сейчас?</translation> </message> @@ -53572,22 +53822,22 @@ <translation></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2246"/> + <location filename="UI/UserInterface.py" line="2263"/> <source>Configure...</source> <translation>Настроить...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2479"/> + <location filename="UI/UserInterface.py" line="2496"/> <source><p>This part of the status bar displays the current editors eol setting.</p></source> <translation><p>Эта часть строки статуса показывает режим конца строки в текущем редакторе.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Switch between tabs</source> <translation>Переключиться между закладками</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Ctrl+1</source> <translation>Ctrl+1</translation> </message> @@ -53632,12 +53882,12 @@ <translation><b>Импорт настроек</b><p>Импорт сохранённых ранее настроек.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Show next</source> <translation>Показать следующую закладку</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Show previous</source> <translation>Показать предыдущую закладку</translation> </message> @@ -53725,7 +53975,7 @@ <translation><b>Просмотрщик SQL</b><p>Просмотреть SQL базу данных.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4062"/> + <location filename="UI/UserInterface.py" line="4079"/> <source><p>Could not start SQL Browser.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation><p>Невозможно запустить просмотрщик SQL.<br>Убедитесь, что он доступен как <b>{0}</b>.</p></translation> </message> @@ -53775,32 +54025,32 @@ <translation>Редактор &иконок...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3879"/> + <location filename="UI/UserInterface.py" line="3896"/> <source>Qt 3 support</source> <translation>Поддержка Qt3</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2108"/> + <location filename="UI/UserInterface.py" line="2122"/> <source><b>PySide Documentation</b><p>Display the PySide Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>Документация PySide</b><p>Показать документацию PySide. В зависимости от настроек документация будет показана или во внутреннем просмотрщике помощи, в WEB просмотрщике или в Qt Assistant. </p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4538"/> + <location filename="UI/UserInterface.py" line="4555"/> <source><p>The PySide documentation starting point has not been configured.</p></source> <translation><p>Корень документации PySide не найден.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2105"/> + <location filename="UI/UserInterface.py" line="2119"/> <source>PySide Documentation</source> <translation>Документация PySide</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2105"/> + <location filename="UI/UserInterface.py" line="2119"/> <source>Py&Side Documentation</source> <translation>Документация Py&Side</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2107"/> + <location filename="UI/UserInterface.py" line="2121"/> <source>Open PySide Documentation</source> <translation>Открыть документацию PySide</translation> </message> @@ -53845,32 +54095,32 @@ <translation><b>Показать внешние инструменты</b><p>Открывает диалог для отображения пути и версий внешних инструментов, используемых eric5.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2090"/> + <location filename="UI/UserInterface.py" line="2104"/> <source><b>Eric API Documentation</b><p>Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric5 installation directory.</p></source> <translation><b>Документация Eric API</b><p>Показать документацию Eric API. Местонахождение документации - каталог Documentation/Source, расположенный в каталоге инсталляции eric5.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3879"/> + <location filename="UI/UserInterface.py" line="3896"/> <source>Qt v.3 is not supported by eric5.</source> <translation>Qt3 не поддерживается в eric5.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5435"/> + <location filename="UI/UserInterface.py" line="5461"/> <source>The update to <b>{0}</b> of eric5 is available at <b>{1}</b>. Would you like to get it?</source> <translation>На сайте <b>{1}</b> доступно обновление eric5 до версии <b>{0}</b>. Скачать?</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5444"/> + <location filename="UI/UserInterface.py" line="5470"/> <source>Eric5 is up to date</source> <translation>Eric5 не требует обновлений</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5444"/> + <location filename="UI/UserInterface.py" line="5470"/> <source>You are using the latest version of eric5</source> <translation>Вы используете самую последнюю версию eric5</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5509"/> + <location filename="UI/UserInterface.py" line="5535"/> <source>eric5 has not been configured yet. The configuration dialog will be started.</source> <translation>eric5 ещё не сконфигурирован. Будет запущен диалог конфигурации.</translation> </message> @@ -53967,72 +54217,72 @@ <translation></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4816"/> + <location filename="UI/UserInterface.py" line="4833"/> <source>Keyboard shortcut file (*.e4k)</source> <translation>Файл горячих клавиш (*.e4k)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2051"/> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python 3 Documentation</source> <translation>Документация Pyton 3</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2051"/> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python &3 Documentation</source> <translation>Документация Pyton &3</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2053"/> + <location filename="UI/UserInterface.py" line="2067"/> <source>Open Python 3 Documentation</source> <translation>Открыть документацию Python 3</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2054"/> - <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> - <translation><b>Документация Pyton 3</b><p>Показать Pyton 3 документацию. Если местонахождение документации не было настроено, то искать в подкаталоге <i>doc</i> каталога где находится исполняемый файл Python 3 под Windows и в подкаталоге <i>/usr/share/doc/packages/python/html</i> под UNIX. Местонахождение документации можно задать с помощью переменной окружения PYTHON3DOCDIR.</p></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python 2 Documentation</source> - <translation>Документация Pyton 2</translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python &2 Documentation</source> - <translation>Документация Pyton &2</translation> - </message> - <message> <location filename="UI/UserInterface.py" line="2068"/> + <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> + <translation><b>Документация Pyton 3</b><p>Показать Pyton 3 документацию. Если местонахождение документации не было настроено, то искать в подкаталоге <i>doc</i> каталога где находится исполняемый файл Python 3 под Windows и в подкаталоге <i>/usr/share/doc/packages/python/html</i> под UNIX. Местонахождение документации можно задать с помощью переменной окружения PYTHON3DOCDIR.</p></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python 2 Documentation</source> + <translation>Документация Pyton 2</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python &2 Documentation</source> + <translation>Документация Pyton &2</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2082"/> <source>Open Python 2 Documentation</source> <translation>Открыть документацию Python 2</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2069"/> + <location filename="UI/UserInterface.py" line="2083"/> <source><b>Python 2 Documentation</b><p>Display the Python 2 documentation. If no documentation directory is configured, the location of the Python 2 documentation is assumed to be the doc directory underneath the location of the configured Python 2 executable on Windows and <i>/usr/share/doc/packages/python/html/python-docs-html</i> on Unix. Set PYTHON2DOCDIR in your environment to override this. </p></source> <translation><b>Документация Pyton 2</b><p>Показать Pyton 2 документацию. Если местонахождение документации не было настроено, то искать в подкаталоге <i>doc</i> каталога где находится исполняемый файл Python 2 под Windows и в подкаталоге <i>/usr/share/doc/packages/python/html/python-docs-html</i> под UNIX. Местонахождение документации можно задать с помощью переменной окружения PYTHON2DOCDIR.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <source>Error getting versions information</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5356"/> + <location filename="UI/UserInterface.py" line="5382"/> <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="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <source>Open Browser</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <source>Could not start a web browser</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <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> @@ -54143,12 +54393,12 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4109"/> + <location filename="UI/UserInterface.py" line="4126"/> <source><p>Could not start Snapshot tool.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5527"/> + <location filename="UI/UserInterface.py" line="5553"/> <source>Select Workspace Directory</source> <translation type="unfinished"></translation> </message> @@ -54378,7 +54628,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2206"/> + <location filename="UI/UserInterface.py" line="2223"/> <source>&Windows</source> <translation type="unfinished">&Окна</translation> </message> @@ -54453,31 +54703,51 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt5 Documentation</source> <translation type="unfinished">Документация Qt4 {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt&5 Documentation</source> <translation type="unfinished">Документация Qt&4 {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2025"/> + <location filename="UI/UserInterface.py" line="2039"/> <source>Open Qt5 Documentation</source> <translation type="unfinished">Открыть документацию Qt4 {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2026"/> + <location filename="UI/UserInterface.py" line="2040"/> <source><b>Qt5 Documentation</b><p>Display the Qt5 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation type="unfinished"><b>Документация Qt4</b> <p>Отобразить документацию Qt4. В зависимости от настроек, она отобразится либо во встроенном просмотрщике помощи Eric, либо вызовет интернет-браузер, либо Qt Assistant.</p> {5 ?} {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2510"/> + <location filename="UI/UserInterface.py" line="2527"/> <source><p>This part of the status bar allows zooming the current editor, shell or terminal.</p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1920"/> + <source>Manage the saved SSL certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1922"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>UserPropertiesDialog</name>
--- a/i18n/eric5_tr.ts Fri Jan 18 19:31:43 2013 +0100 +++ b/i18n/eric5_tr.ts Fri Jan 18 19:50:13 2013 +0100 @@ -7426,49 +7426,288 @@ </message> </context> <context> + <name>E5SslCertificatesDialog</name> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="14"/> + <source>SSL Certificate Manager</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="27"/> + <source>&Servers</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="33"/> + <source>You have saved certificates identifying these servers:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="140"/> + <source>Certificate name</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="46"/> + <source>Server</source> + <translation type="unfinished">Sunucu</translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="145"/> + <source>Expiry Date</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="158"/> + <source>Press to view the selected certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="161"/> + <source>&View...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="168"/> + <source>Press to import a certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="171"/> + <source>&Import...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="181"/> + <source>Press to export the selected certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="184"/> + <source>&Export...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="194"/> + <source>Press to delete the selected certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="197"/> + <source>&Delete...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="126"/> + <source>Certificate &Authorities</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="132"/> + <source>You have saved certificates identifying these certification authorities:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="274"/> + <source>(Unknown)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="276"/> + <source>(Unknown common name)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source>Delete Server Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Import Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="363"/> + <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source>Delete CA Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source>Export Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="399"/> + <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="415"/> + <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> + <translation type="unfinished"><p><b>{0}</b> dosyası halen mevcut. Üzerine yazılsın mı?</p></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="425"/> + <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> + <translation type="unfinished"></translation> + </message> +</context> +<context> <name>E5SslErrorHandler</name> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source>SSL Errors</source> <translation type="unfinished">SSL Hataları</translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source><p>SSL Errors for <br /><b>{0}</b><ul><li>{1}</li></ul></p><p>Do you want to ignore these errors?</p></source> <translation type="unfinished"><p>SSL Hataları <br /><b>{0}</b><ul><li>{1}</li></ul></p><p>Bu hataları yoksaymak istiyor musunuz?</p></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source>Certificates</source> <translation type="unfinished">Sertifikalar</translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source><p>Certificates:<br/>{0}<br/>Do you want to accept all these certificates?</p></source> <translation type="unfinished"><p>Sertifalar:<br/>{0}<br/>Bu sertifikalrı kabul etmek istiyor musunuz?</p></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="184"/> - <source>Name: {0}</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="E5Network/E5SslErrorHandler.py" line="188"/> - <source><br/>Organization: {0}</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="E5Network/E5SslErrorHandler.py" line="192"/> - <source><br/>Issuer: {0}</source> - <translation type="unfinished"><br/>Yayımcı: {0}</translation> + <source>Name: {0}</source> + <translation type="unfinished"></translation> </message> <message> <location filename="E5Network/E5SslErrorHandler.py" line="196"/> + <source><br/>Organization: {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="200"/> + <source><br/>Issuer: {0}</source> + <translation type="unfinished"><br/>Yayımcı: {0}</translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="204"/> <source><br/>Not valid before: {0}<br/>Valid Until: {1}</source> <translation type="unfinished"><br/>Geçerlilik başlangıcı: {0}<br/>Geçerlilek bitişi: {1}</translation> </message> </context> <context> + <name>E5SslInfoDialog</name> + <message> + <location filename="E5Network/E5SslInfoDialog.ui" line="14"/> + <source>SSL Certificate Info</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>E5SslInfoWidget</name> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="17"/> + <source>This certificated has been blacklisted.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="24"/> + <source><b>Issued for</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="118"/> + <source>Common Name (CN)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="138"/> + <source>Organization (O)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="158"/> + <source>Organizational Unit (OU)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="91"/> + <source>Serialnumber</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="111"/> + <source><b>Issued by</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="178"/> + <source><b>Validity</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="185"/> + <source>Issued on</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="205"/> + <source>Expires on</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="225"/> + <source>This certificate is not valid yet or has expired.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="232"/> + <source><b>Fingerprints</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="239"/> + <source>SHA1-Fingerprint</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="259"/> + <source>MD5-Fingerprint</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.py" line="111"/> + <source><not part of the certificate></source> + <translation type="unfinished"></translation> + </message> +</context> +<context> <name>E5ToolBarDialog</name> <message> <location filename="E5Gui/E5ToolBarDialog.ui" line="14"/> @@ -17605,26 +17844,6 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/HelpWindow.py" line="1230"/> - <source>Manage Certificates</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1230"/> - <source>Manage Certificates...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1234"/> - <source>Manage the saved certificates</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1236"/> - <source><b>Manage Saved Certificates...</b><p>Opens a dialog to manage the saved certificates.</p></source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="Helpviewer/HelpWindow.py" line="1257"/> <source>Downloads</source> <translation type="unfinished"></translation> @@ -17954,6 +18173,26 @@ <source>Loading Style Sheet</source> <translation type="obsolete">Stil Görünümleri Yükleniyor</translation> </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1234"/> + <source>Manage the saved SSL certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1236"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>Hg</name> @@ -19287,12 +19526,12 @@ <translation>Zorunlu çalışma</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="46"/> <source>Mercurial Move</source> <translation>Mercurial Taşıma</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="81"/> <source>Select target</source> <translation>Hedefi seç</translation> </message> @@ -41788,240 +42027,14 @@ <context> <name>SslCertificatesDialog</name> <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="14"/> - <source>SSL Certificate Manager</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="27"/> - <source>&Servers</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="33"/> - <source>You have saved certificates identifying these servers:</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="140"/> - <source>Certificate name</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="Helpviewer/SslCertificatesDialog.ui" line="46"/> <source>Server</source> - <translation>Sunucu</translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="145"/> - <source>Expiry Date</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="158"/> - <source>Press to view the selected certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="161"/> - <source>&View...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="168"/> - <source>Press to import a certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="171"/> - <source>&Import...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="181"/> - <source>Press to export the selected certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="184"/> - <source>&Export...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="194"/> - <source>Press to delete the selected certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="197"/> - <source>&Delete...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="126"/> - <source>Certificate &Authorities</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="132"/> - <source>You have saved certificates identifying these certification authorities:</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="274"/> - <source>(Unknown)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="276"/> - <source>(Unknown common name)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> - <source>Delete Server Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> - <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> - <source>Import Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="363"/> - <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> - <source>Delete CA Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> - <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> - <source>Export Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="399"/> - <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> - <translation type="unfinished"></translation> + <translation type="obsolete">Sunucu</translation> </message> <message> <location filename="Helpviewer/SslCertificatesDialog.py" line="415"/> <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> - <translation><p><b>{0}</b> dosyası halen mevcut. Üzerine yazılsın mı?</p></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="425"/> - <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> - <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> - <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> - <translation type="unfinished"></translation> - </message> -</context> -<context> - <name>SslInfoDialog</name> - <message> - <location filename="Helpviewer/SslInfoDialog.ui" line="14"/> - <source>SSL Certificate Info</source> - <translation type="unfinished"></translation> - </message> -</context> -<context> - <name>SslInfoWidget</name> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="17"/> - <source>This certificated has been blacklisted.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="24"/> - <source><b>Issued for</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="118"/> - <source>Common Name (CN)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="138"/> - <source>Organization (O)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="158"/> - <source>Organizational Unit (OU)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="91"/> - <source>Serialnumber</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="111"/> - <source><b>Issued by</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="178"/> - <source><b>Validity</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="185"/> - <source>Issued on</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="205"/> - <source>Expires on</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="225"/> - <source>This certificate is not valid yet or has expired.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="232"/> - <source><b>Fingerprints</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="239"/> - <source>SHA1-Fingerprint</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="259"/> - <source>MD5-Fingerprint</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.py" line="111"/> - <source><not part of the certificate></source> - <translation type="unfinished"></translation> + <translation type="obsolete"><p><b>{0}</b> dosyası halen mevcut. Üzerine yazılsın mı?</p></translation> </message> </context> <context> @@ -43690,12 +43703,12 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="46"/> <source>Subversion Move</source> <translation>Altsürüm Taşıma</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="81"/> <source>Select target</source> <translation>Hedefi seç</translation> </message> @@ -51594,7 +51607,7 @@ <translation type="obsolete">Konumunuzu buraya giriniz.</translation> </message> <message> - <location filename="Helpviewer/UrlBar/UrlBar.py" line="199"/> + <location filename="Helpviewer/UrlBar/UrlBar.py" line="198"/> <source>Unknown</source> <translation>Bilinmeyen</translation> </message> @@ -52284,7 +52297,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2704"/> + <location filename="UI/UserInterface.py" line="2721"/> <source>Report Bug</source> <translation>Hata Raporu</translation> </message> @@ -52324,7 +52337,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2319"/> + <location filename="UI/UserInterface.py" line="2336"/> <source>Unittest</source> <translation>Birimtest</translation> </message> @@ -52384,7 +52397,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3704"/> + <location filename="UI/UserInterface.py" line="3721"/> <source>Unittest Project</source> <translation>Proje Birimtesti</translation> </message> @@ -52749,7 +52762,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4793"/> + <location filename="UI/UserInterface.py" line="4810"/> <source>Export Keyboard Shortcuts</source> <translation>Kılavye Kısa Yollarını Dışa Aktar</translation> </message> @@ -52769,7 +52782,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4816"/> + <location filename="UI/UserInterface.py" line="4833"/> <source>Import Keyboard Shortcuts</source> <translation>Klavye kısayollarını İçe Aktar</translation> </message> @@ -52789,152 +52802,152 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Activate current editor</source> <translation>Geçerli düzenleyiciyi aktif yap</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Alt+Shift+E</source> <translation>Alt+Shift+E</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Show next</source> <translation>Sonrakini göster</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Ctrl+Alt+Tab</source> <translation>Ctrl+Alt+Tab</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Show previous</source> <translation>Öncekini göster</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Shift+Ctrl+Alt+Tab</source> <translation>Shift+Ctrl+Alt+Tab</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Switch between tabs</source> <translation>Sekmeler arasında değiştir</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Ctrl+1</source> <translation>Ctrl+1</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>Plugin Infos</source> <translation>Eklenti Bilgisi</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>&Plugin Infos...</source> <translation>Eklenti Bil&gisi...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1951"/> + <location filename="UI/UserInterface.py" line="1965"/> <source>Show Plugin Infos</source> <translation>Eklenti Bilgisini Göster</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1952"/> + <location filename="UI/UserInterface.py" line="1966"/> <source><b>Plugin Infos...</b><p>This opens a dialog, that show some information about loaded plugins.</p></source> <translation><b>Eklenti Bilgileri...</b><p>Bu yüklenen eklentiler hakkında bazı bilgileri gösteren bir diyalog açar.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1963"/> + <location filename="UI/UserInterface.py" line="1977"/> <source>Install Plugins</source> <translation>Eklenti Kur</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1960"/> - <source>&Install Plugins...</source> - <translation>Ekle&nti Kur...</translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="1964"/> - <source><b>Install Plugins...</b><p>This opens a dialog to install or update plugins.</p></source> - <translation><b>Eklenti Kur...</b><p>Bu eklenti kurmak yada güncellemek için bir diyalog açar.</p></translation> - </message> - <message> <location filename="UI/UserInterface.py" line="1974"/> + <source>&Install Plugins...</source> + <translation>Ekle&nti Kur...</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1978"/> + <source><b>Install Plugins...</b><p>This opens a dialog to install or update plugins.</p></source> + <translation><b>Eklenti Kur...</b><p>Bu eklenti kurmak yada güncellemek için bir diyalog açar.</p></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1988"/> <source>Uninstall Plugin</source> <translation>Eklenti Kaldır</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1971"/> - <source>&Uninstall Plugin...</source> - <translation>Ekle&nti Kaldır...</translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="1975"/> - <source><b>Uninstall Plugin...</b><p>This opens a dialog to uninstall a plugin.</p></source> - <translation><b>Eklenti Kaldır...</b><p>Bu bir eklentiyi kaldırmak için bir diyalog açar.</p></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="1982"/> - <source>Plugin Repository</source> - <translation>Eklenti Havuzu</translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="1982"/> - <source>Plugin &Repository...</source> - <translation>Eklenti Hav&uzu...</translation> - </message> - <message> <location filename="UI/UserInterface.py" line="1985"/> + <source>&Uninstall Plugin...</source> + <translation>Ekle&nti Kaldır...</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1989"/> + <source><b>Uninstall Plugin...</b><p>This opens a dialog to uninstall a plugin.</p></source> + <translation><b>Eklenti Kaldır...</b><p>Bu bir eklentiyi kaldırmak için bir diyalog açar.</p></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1996"/> + <source>Plugin Repository</source> + <translation>Eklenti Havuzu</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1996"/> + <source>Plugin &Repository...</source> + <translation>Eklenti Hav&uzu...</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1999"/> <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="1987"/> + <location filename="UI/UserInterface.py" line="2001"/> <source><b>Plugin Repository...</b><p>This opens a dialog, that shows a list of plugins available on the Internet.</p></source> <translation><b>Eklenti Kaynak Havuzu...</b><p>Bu internette hazır olan eklentilerin listelendiği bir diyalog açar.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt4 Documentation</source> <translation>Qt4 Belgeleri</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt&4 Documentation</source> <translation>Qt&4 Belgeleri</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2013"/> + <location filename="UI/UserInterface.py" line="2027"/> <source>Open Qt4 Documentation</source> <translation>QT4 Belgelerini Aç</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2014"/> + <location filename="UI/UserInterface.py" line="2028"/> <source><b>Qt4 Documentation</b><p>Display the Qt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>PyQt4 Documentation</source> <translation>PyQt4 Belgeleri</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>P&yQt4 Documentation</source> <translation>P&yQt4 Belgeleri</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2037"/> + <location filename="UI/UserInterface.py" line="2051"/> <source>Open PyQt4 Documentation</source> <translation>PyQt4 Begelerini aç</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2038"/> + <location filename="UI/UserInterface.py" line="2052"/> <source><b>PyQt4 Documentation</b><p>Display the PyQt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation type="unfinished"></translation> </message> @@ -52954,172 +52967,172 @@ <translation type="obsolete">Python belgelerini açın</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2087"/> + <location filename="UI/UserInterface.py" line="2101"/> <source>Eric API Documentation</source> <translation>Eric API Belgeleri</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2087"/> + <location filename="UI/UserInterface.py" line="2101"/> <source>&Eric API Documentation</source> <translation>&Eric API Dökümanı</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2089"/> + <location filename="UI/UserInterface.py" line="2103"/> <source>Open Eric API Documentation</source> <translation>Eric API Belgelerini Aç</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2090"/> + <location filename="UI/UserInterface.py" line="2104"/> <source><b>Eric API Documentation</b><p>Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric5 installation directory.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2105"/> + <location filename="UI/UserInterface.py" line="2119"/> <source>PySide Documentation</source> <translation>PySide Belgeleri</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2105"/> + <location filename="UI/UserInterface.py" line="2119"/> <source>Py&Side Documentation</source> <translation>Py&Side Belgeleri</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2107"/> + <location filename="UI/UserInterface.py" line="2121"/> <source>Open PySide Documentation</source> <translation>PySide belgelerini açın</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2108"/> + <location filename="UI/UserInterface.py" line="2122"/> <source><b>PySide Documentation</b><p>Display the PySide Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2145"/> + <location filename="UI/UserInterface.py" line="2159"/> <source>&Unittest</source> <translation>Bir&imtest</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2162"/> + <location filename="UI/UserInterface.py" line="2176"/> <source>E&xtras</source> <translation>İla&veler</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2167"/> + <location filename="UI/UserInterface.py" line="2181"/> <source>Wi&zards</source> <translation>Sihirba&z</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2174"/> + <location filename="UI/UserInterface.py" line="2188"/> <source>&Tools</source> <translation>&Araçlar</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2177"/> + <location filename="UI/UserInterface.py" line="2191"/> <source>Select Tool Group</source> <translation>Araç Grubunu Seç</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2183"/> + <location filename="UI/UserInterface.py" line="2197"/> <source>Se&ttings</source> <translation>Ayar&lar</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2201"/> + <location filename="UI/UserInterface.py" line="2218"/> <source>&Window</source> <translation>&Pencere</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2226"/> + <location filename="UI/UserInterface.py" line="2243"/> <source>&Toolbars</source> <translation>&Araççubuğu</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2237"/> + <location filename="UI/UserInterface.py" line="2254"/> <source>P&lugins</source> <translation>Ek&lentiler</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2246"/> + <location filename="UI/UserInterface.py" line="2263"/> <source>Configure...</source> <translation>Ayarlanıyor...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2251"/> + <location filename="UI/UserInterface.py" line="2268"/> <source>&Help</source> <translation>&Yardım</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2318"/> + <location filename="UI/UserInterface.py" line="2335"/> <source>Tools</source> <translation>Araçlar</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2320"/> + <location filename="UI/UserInterface.py" line="2337"/> <source>Settings</source> <translation>Ayarlar</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3927"/> + <location filename="UI/UserInterface.py" line="3944"/> <source>Help</source> <translation>Yardım</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2322"/> + <location filename="UI/UserInterface.py" line="2339"/> <source>Profiles</source> <translation>Kesitler</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2323"/> + <location filename="UI/UserInterface.py" line="2340"/> <source>Plugins</source> <translation>Eklentiler</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2465"/> + <location filename="UI/UserInterface.py" line="2482"/> <source><p>This part of the status bar displays the current editors language.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2472"/> + <location filename="UI/UserInterface.py" line="2489"/> <source><p>This part of the status bar displays the current editors encoding.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2479"/> + <location filename="UI/UserInterface.py" line="2496"/> <source><p>This part of the status bar displays the current editors eol setting.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2486"/> + <location filename="UI/UserInterface.py" line="2503"/> <source><p>This part of the status bar displays an indication of the current editors files writability.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2493"/> + <location filename="UI/UserInterface.py" line="2510"/> <source><p>This part of the status bar displays the line number of the current editor.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2500"/> + <location filename="UI/UserInterface.py" line="2517"/> <source><p>This part of the status bar displays the cursor position of the current editor.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2567"/> + <location filename="UI/UserInterface.py" line="2584"/> <source>External Tools/{0}</source> <translation>Harici Araçlar/{0}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2653"/> + <location filename="UI/UserInterface.py" line="2670"/> <source><h3>Version Numbers</h3><table></source> <translation><h3>Sürüm Numaraları</h3><table></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5482"/> + <location filename="UI/UserInterface.py" line="5508"/> <source></table></source> <translation></table></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2704"/> + <location filename="UI/UserInterface.py" line="2721"/> <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> @@ -53149,234 +53162,234 @@ <translation type="obsolete">Yoksay ama hatırla</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2946"/> + <location filename="UI/UserInterface.py" line="2963"/> <source>Restart application</source> <translation>Uygulmayı yeniden başlat</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2946"/> + <location filename="UI/UserInterface.py" line="2963"/> <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="2978"/> + <location filename="UI/UserInterface.py" line="2995"/> <source>Configure Tool Groups ...</source> <translation>Alet Grupları Ayarlanıyor...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2981"/> + <location filename="UI/UserInterface.py" line="2998"/> <source>Configure current Tool Group ...</source> <translation>Geçerli alet grubunu ayarla...</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3030"/> + <location filename="UI/UserInterface.py" line="3047"/> <source>&Builtin Tools</source> <translation>Ya&pılandırma Araçları</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3038"/> + <location filename="UI/UserInterface.py" line="3055"/> <source>&Plugin Tools</source> <translation>Eklen&ti Araçları</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3128"/> + <location filename="UI/UserInterface.py" line="3145"/> <source>&Show all</source> <translation>Hepsini Gö&ster</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3130"/> + <location filename="UI/UserInterface.py" line="3147"/> <source>&Hide all</source> <translation>&Hepsini gizle</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3704"/> + <location filename="UI/UserInterface.py" line="3721"/> <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="UI/UserInterface.py" line="3879"/> + <location filename="UI/UserInterface.py" line="3896"/> <source>Qt 3 support</source> <translation>Qt3 Desteği</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3879"/> + <location filename="UI/UserInterface.py" line="3896"/> <source>Qt v.3 is not supported by eric5.</source> <translation>Qt v.3 eric5 tarafından desteklenmiyor.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4035"/> + <location filename="UI/UserInterface.py" line="4052"/> <source>Problem</source> <translation>Problem</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4035"/> + <location filename="UI/UserInterface.py" line="4052"/> <source><p>The file <b>{0}</b> does not exist or is zero length.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4187"/> + <location filename="UI/UserInterface.py" line="4204"/> <source>Process Generation Error</source> <translation>İşlem Üretecinde Hata</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3799"/> + <location filename="UI/UserInterface.py" line="3816"/> <source><p>Could not start Qt-Designer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3856"/> + <location filename="UI/UserInterface.py" line="3873"/> <source><p>Could not start Qt-Linguist.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3900"/> + <location filename="UI/UserInterface.py" line="3917"/> <source><p>Could not start Qt-Assistant.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3927"/> + <location filename="UI/UserInterface.py" line="3944"/> <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="3939"/> + <location filename="UI/UserInterface.py" line="3956"/> <source><p>Could not start custom viewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3958"/> + <location filename="UI/UserInterface.py" line="3975"/> <source><p>Could not start the help viewer.<br>Ensure that it is available as <b>hh</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3998"/> + <location filename="UI/UserInterface.py" line="4015"/> <source><p>Could not start UI Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4043"/> + <location filename="UI/UserInterface.py" line="4060"/> <source><p>Could not start Translation Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4062"/> + <location filename="UI/UserInterface.py" line="4079"/> <source><p>Could not start SQL Browser.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4135"/> + <location filename="UI/UserInterface.py" line="4152"/> <source>External Tools</source> <translation>Harici Araçlar</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4129"/> + <location filename="UI/UserInterface.py" line="4146"/> <source>No tool entry found for external tool '{0}' in tool group '{1}'.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4135"/> + <location filename="UI/UserInterface.py" line="4152"/> <source>No toolgroup entry '{0}' found.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4171"/> + <location filename="UI/UserInterface.py" line="4188"/> <source>Starting process '{0} {1}'. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4187"/> + <location filename="UI/UserInterface.py" line="4204"/> <source><p>Could not start the tool entry <b>{0}</b>.<br>Ensure that it is available as <b>{1}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4264"/> + <location filename="UI/UserInterface.py" line="4281"/> <source>Process '{0}' has exited. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4553"/> + <location filename="UI/UserInterface.py" line="4570"/> <source>Documentation Missing</source> <translation>Eksik Belgeleme</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4553"/> + <location filename="UI/UserInterface.py" line="4570"/> <source><p>The documentation starting point "<b>{0}</b>" could not be found.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4538"/> + <location filename="UI/UserInterface.py" line="4555"/> <source>Documentation</source> <translation>Belgeleme</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4447"/> + <location filename="UI/UserInterface.py" line="4464"/> <source><p>The PyQt4 documentation starting point has not been configured.</p></source> <translation><p>PyQt4 Belgelerinin başlama noktası ayarlanmamış.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4538"/> + <location filename="UI/UserInterface.py" line="4555"/> <source><p>The PySide documentation starting point has not been configured.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4937"/> + <location filename="UI/UserInterface.py" line="4963"/> <source>Save tasks</source> <translation>Görevleri kaydet</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4937"/> + <location filename="UI/UserInterface.py" line="4963"/> <source><p>The tasks file <b>{0}</b> could not be written.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4959"/> + <location filename="UI/UserInterface.py" line="4985"/> <source>Read tasks</source> <translation>Görevler Okunuyor</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4959"/> + <location filename="UI/UserInterface.py" line="4985"/> <source><p>The tasks file <b>{0}</b> could not be read.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4974"/> + <location filename="UI/UserInterface.py" line="5000"/> <source>Save session</source> <translation>Oturumu kaydet</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4974"/> + <location filename="UI/UserInterface.py" line="5000"/> <source><p>The session file <b>{0}</b> could not be written.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4997"/> + <location filename="UI/UserInterface.py" line="5023"/> <source>Read session</source> <translation>Oturumu oku</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4997"/> + <location filename="UI/UserInterface.py" line="5023"/> <source><p>The session file <b>{0}</b> could not be read.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5169"/> + <location filename="UI/UserInterface.py" line="5195"/> <source>Drop Error</source> <translation>Düşme hatası</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5169"/> + <location filename="UI/UserInterface.py" line="5195"/> <source><p><b>{0}</b> is not a file.</p></source> <translation><p><b>{0}</b> bir dosya değil.</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5307"/> + <location filename="UI/UserInterface.py" line="5333"/> <source>&Cancel</source> <translation>&Vazgeç</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5312"/> + <location filename="UI/UserInterface.py" line="5338"/> <source>Trying host {0}</source> <translation type="unfinished"></translation> </message> @@ -53391,37 +53404,37 @@ <translation type="obsolete">Sürüm dosyası indirilemiyor.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5435"/> + <location filename="UI/UserInterface.py" line="5461"/> <source>Update available</source> <translation>Güncelleme mümkün değil</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5435"/> + <location filename="UI/UserInterface.py" line="5461"/> <source>The update to <b>{0}</b> of eric5 is available at <b>{1}</b>. Would you like to get it?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5444"/> + <location filename="UI/UserInterface.py" line="5470"/> <source>Eric5 is up to date</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5444"/> + <location filename="UI/UserInterface.py" line="5470"/> <source>You are using the latest version of eric5</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5448"/> + <location filename="UI/UserInterface.py" line="5474"/> <source>Error during updates check</source> <translation>Güncellemeleri kontrol esnasında hata</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5448"/> + <location filename="UI/UserInterface.py" line="5474"/> <source>Could not perform updates check.</source> <translation>Güncellemelere ulaşamıyorum.</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5469"/> + <location filename="UI/UserInterface.py" line="5495"/> <source><h3>Available versions</h3><table></source> <translation><h3>Mümkün sürümler</h3><table></translation> </message> @@ -53436,12 +53449,12 @@ <translation type="obsolete">SSL Hataları</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5509"/> + <location filename="UI/UserInterface.py" line="5535"/> <source>First time usage</source> <translation>İlk kullanım</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5509"/> + <location filename="UI/UserInterface.py" line="5535"/> <source>eric5 has not been configured yet. The configuration dialog will be started.</source> <translation>Eric5 henüz ayarlanmadı. Ayarlar Diyaloğu başlatılıyor.</translation> </message> @@ -53466,72 +53479,72 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2051"/> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python 3 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2051"/> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python &3 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2053"/> + <location filename="UI/UserInterface.py" line="2067"/> <source>Open Python 3 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2054"/> - <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python 2 Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python &2 Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="UI/UserInterface.py" line="2068"/> + <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python 2 Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python &2 Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2082"/> <source>Open Python 2 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2069"/> + <location filename="UI/UserInterface.py" line="2083"/> <source><b>Python 2 Documentation</b><p>Display the Python 2 documentation. If no documentation directory is configured, the location of the Python 2 documentation is assumed to be the doc directory underneath the location of the configured Python 2 executable on Windows and <i>/usr/share/doc/packages/python/html/python-docs-html</i> on Unix. Set PYTHON2DOCDIR in your environment to override this. </p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4816"/> + <location filename="UI/UserInterface.py" line="4833"/> <source>Keyboard shortcut file (*.e4k)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <source>Error getting versions information</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5356"/> + <location filename="UI/UserInterface.py" line="5382"/> <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="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <source>Open Browser</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <source>Could not start a web browser</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <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> @@ -53642,12 +53655,12 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4109"/> + <location filename="UI/UserInterface.py" line="4126"/> <source><p>Could not start Snapshot tool.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5527"/> + <location filename="UI/UserInterface.py" line="5553"/> <source>Select Workspace Directory</source> <translation type="unfinished"></translation> </message> @@ -53877,7 +53890,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2206"/> + <location filename="UI/UserInterface.py" line="2223"/> <source>&Windows</source> <translation type="unfinished">&Pencereler</translation> </message> @@ -53952,30 +53965,50 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt5 Documentation</source> <translation type="unfinished">Qt4 Belgeleri {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt&5 Documentation</source> <translation type="unfinished">Qt&4 Belgeleri {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2025"/> + <location filename="UI/UserInterface.py" line="2039"/> <source>Open Qt5 Documentation</source> <translation type="unfinished">QT4 Belgelerini Aç {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2026"/> + <location filename="UI/UserInterface.py" line="2040"/> <source><b>Qt5 Documentation</b><p>Display the Qt5 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2510"/> + <location filename="UI/UserInterface.py" line="2527"/> <source><p>This part of the status bar allows zooming the current editor, shell or terminal.</p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1920"/> + <source>Manage the saved SSL certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1922"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>UserPropertiesDialog</name>
--- a/i18n/eric5_zh_CN.GB2312.ts Fri Jan 18 19:31:43 2013 +0100 +++ b/i18n/eric5_zh_CN.GB2312.ts Fri Jan 18 19:50:13 2013 +0100 @@ -7885,49 +7885,288 @@ </message> </context> <context> + <name>E5SslCertificatesDialog</name> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="14"/> + <source>SSL Certificate Manager</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="27"/> + <source>&Servers</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="33"/> + <source>You have saved certificates identifying these servers:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="140"/> + <source>Certificate name</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="46"/> + <source>Server</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="145"/> + <source>Expiry Date</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="158"/> + <source>Press to view the selected certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="161"/> + <source>&View...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="168"/> + <source>Press to import a certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="171"/> + <source>&Import...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="181"/> + <source>Press to export the selected certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="184"/> + <source>&Export...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="194"/> + <source>Press to delete the selected certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="197"/> + <source>&Delete...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="126"/> + <source>Certificate &Authorities</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.ui" line="132"/> + <source>You have saved certificates identifying these certification authorities:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="274"/> + <source>(Unknown)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="276"/> + <source>(Unknown common name)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source>Delete Server Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="127"/> + <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Import Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="363"/> + <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source>Delete CA Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="319"/> + <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source>Export Certificate</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="399"/> + <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="415"/> + <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="425"/> + <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="445"/> + <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslCertificatesDialog.py" line="455"/> + <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> + <translation type="unfinished"></translation> + </message> +</context> +<context> <name>E5SslErrorHandler</name> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source>SSL Errors</source> <translation type="unfinished">SSL 错误</translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="115"/> + <location filename="E5Network/E5SslErrorHandler.py" line="123"/> <source><p>SSL Errors for <br /><b>{0}</b><ul><li>{1}</li></ul></p><p>Do you want to ignore these errors?</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source>Certificates</source> <translation type="unfinished"></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="129"/> + <location filename="E5Network/E5SslErrorHandler.py" line="137"/> <source><p>Certificates:<br/>{0}<br/>Do you want to accept all these certificates?</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="E5Network/E5SslErrorHandler.py" line="184"/> - <source>Name: {0}</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="E5Network/E5SslErrorHandler.py" line="188"/> - <source><br/>Organization: {0}</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="E5Network/E5SslErrorHandler.py" line="192"/> - <source><br/>Issuer: {0}</source> + <source>Name: {0}</source> <translation type="unfinished"></translation> </message> <message> <location filename="E5Network/E5SslErrorHandler.py" line="196"/> + <source><br/>Organization: {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="200"/> + <source><br/>Issuer: {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslErrorHandler.py" line="204"/> <source><br/>Not valid before: {0}<br/>Valid Until: {1}</source> <translation type="unfinished"></translation> </message> </context> <context> + <name>E5SslInfoDialog</name> + <message> + <location filename="E5Network/E5SslInfoDialog.ui" line="14"/> + <source>SSL Certificate Info</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> + <name>E5SslInfoWidget</name> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="17"/> + <source>This certificated has been blacklisted.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="24"/> + <source><b>Issued for</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="118"/> + <source>Common Name (CN)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="138"/> + <source>Organization (O)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="158"/> + <source>Organizational Unit (OU)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="91"/> + <source>Serialnumber</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="111"/> + <source><b>Issued by</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="178"/> + <source><b>Validity</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="185"/> + <source>Issued on</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="205"/> + <source>Expires on</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="225"/> + <source>This certificate is not valid yet or has expired.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="232"/> + <source><b>Fingerprints</b></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="239"/> + <source>SHA1-Fingerprint</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.ui" line="259"/> + <source>MD5-Fingerprint</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="E5Network/E5SslInfoWidget.py" line="111"/> + <source><not part of the certificate></source> + <translation type="unfinished"></translation> + </message> +</context> +<context> <name>E5ToolBarDialog</name> <message> <location filename="E5Gui/E5ToolBarDialog.ui" line="14"/> @@ -18645,26 +18884,6 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/HelpWindow.py" line="1230"/> - <source>Manage Certificates</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1230"/> - <source>Manage Certificates...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1234"/> - <source>Manage the saved certificates</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/HelpWindow.py" line="1236"/> - <source><b>Manage Saved Certificates...</b><p>Opens a dialog to manage the saved certificates.</p></source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="Helpviewer/HelpWindow.py" line="1615"/> <source>VirusTotal</source> <translation type="unfinished"></translation> @@ -18934,6 +19153,26 @@ <source>Loading Style Sheet</source> <translation type="obsolete">样式表载入中</translation> </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1230"/> + <source>Manage SSL Certificates...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1234"/> + <source>Manage the saved SSL certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/HelpWindow.py" line="1236"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>Hg</name> @@ -20252,12 +20491,12 @@ <translation type="unfinished">强制操作</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="46"/> <source>Mercurial Move</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/HgCopyDialog.py" line="81"/> <source>Select target</source> <translation type="unfinished">选择目标</translation> </message> @@ -44555,245 +44794,6 @@ </message> </context> <context> - <name>SslCertificatesDialog</name> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="14"/> - <source>SSL Certificate Manager</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="27"/> - <source>&Servers</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="33"/> - <source>You have saved certificates identifying these servers:</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="140"/> - <source>Certificate name</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="46"/> - <source>Server</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="145"/> - <source>Expiry Date</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="158"/> - <source>Press to view the selected certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="161"/> - <source>&View...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="194"/> - <source>Press to delete the selected certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="197"/> - <source>&Delete...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="126"/> - <source>Certificate &Authorities</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="132"/> - <source>You have saved certificates identifying these certification authorities:</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="274"/> - <source>(Unknown)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="276"/> - <source>(Unknown common name)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> - <source>Delete Server Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="127"/> - <source><p>Shall the server certificate really be deleted?</p><p>{0}</p><p>If the server certificate is deleted, the normal security checks will be reinstantiated and the server has to present a valid certificate.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="168"/> - <source>Press to import a certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="171"/> - <source>&Import...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="181"/> - <source>Press to export the selected certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.ui" line="184"/> - <source>&Export...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> - <source>Import Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="363"/> - <source><p>The certificate <b>{0}</b> already exists. Skipping.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> - <source>Delete CA Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="319"/> - <source><p>Shall the CA certificate really be deleted?</p><p>{0}</p><p>If the CA certificate is deleted, the browser will not trust any certificate issued by this CA.</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> - <source>Export Certificate</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="399"/> - <source>Certificate File (PEM) (*.pem);;Certificate File (DER) (*.der)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="415"/> - <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="425"/> - <source><p>The certificate could not be written to file <b>{0}</b></p><p>Error: {1}</p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="445"/> - <source>Certificate Files (*.pem *.crt *.der *.cer *.ca);;All Files (*)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslCertificatesDialog.py" line="455"/> - <source><p>The certificate could not be read from file <b>{0}</b></p><p>Error: {1}</p></source> - <translation type="unfinished"></translation> - </message> -</context> -<context> - <name>SslInfoDialog</name> - <message> - <location filename="Helpviewer/SslInfoDialog.ui" line="14"/> - <source>SSL Certificate Info</source> - <translation type="unfinished"></translation> - </message> -</context> -<context> - <name>SslInfoWidget</name> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="17"/> - <source>This certificated has been blacklisted.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="24"/> - <source><b>Issued for</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="118"/> - <source>Common Name (CN)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="138"/> - <source>Organization (O)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="158"/> - <source>Organizational Unit (OU)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="91"/> - <source>Serialnumber</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="111"/> - <source><b>Issued by</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="178"/> - <source><b>Validity</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="185"/> - <source>Issued on</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="205"/> - <source>Expires on</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="225"/> - <source>This certificate is not valid yet or has expired.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="232"/> - <source><b>Fingerprints</b></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="239"/> - <source>SHA1-Fingerprint</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.ui" line="259"/> - <source>MD5-Fingerprint</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/SslInfoWidget.py" line="111"/> - <source><not part of the certificate></source> - <translation type="unfinished"></translation> - </message> -</context> -<context> <name>StartCoverageDialog</name> <message> <location filename="Debugger/StartCoverageDialog.ui" line="14"/> @@ -46760,12 +46760,12 @@ <p>通过选择对话框为操作选择目标名。</p></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="44"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="46"/> <source>Subversion Move</source> <translation>版本控制移动</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="79"/> + <location filename="Plugins/VcsPlugins/vcsPySvn/SvnCopyDialog.py" line="81"/> <source>Select target</source> <translation>选择目标</translation> </message> @@ -55206,7 +55206,7 @@ <context> <name>UrlBar</name> <message> - <location filename="Helpviewer/UrlBar/UrlBar.py" line="199"/> + <location filename="Helpviewer/UrlBar/UrlBar.py" line="198"/> <source>Unknown</source> <translation type="unfinished">未知</translation> </message> @@ -55906,7 +55906,7 @@ <translation type="obsolete"><b>显示可下载版本……</b><p>显示可以从互联网下载的 Eric4 版本。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2704"/> + <location filename="UI/UserInterface.py" line="2721"/> <source>Report Bug</source> <translation>报告错误</translation> </message> @@ -55946,7 +55946,7 @@ <translation><b>请求功能……</b><p>打开一个对话框并发送一个功能请求。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2319"/> + <location filename="UI/UserInterface.py" line="2336"/> <source>Unittest</source> <translation>单元测试</translation> </message> @@ -56006,7 +56006,7 @@ <translation><b>脚本单元测试</b><p>对当前脚本运动单元测试。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3704"/> + <location filename="UI/UserInterface.py" line="3721"/> <source>Unittest Project</source> <translation>项目单元测试</translation> </message> @@ -56351,7 +56351,7 @@ <translation><b>键盘快捷键</b><p>将程序的键盘快捷键设置成你喜欢的按键。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4793"/> + <location filename="UI/UserInterface.py" line="4810"/> <source>Export Keyboard Shortcuts</source> <translation>导出键盘快捷键</translation> </message> @@ -56371,7 +56371,7 @@ <translation><b>导出键盘快捷键</b><p>导出程序的键盘快捷键。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4816"/> + <location filename="UI/UserInterface.py" line="4833"/> <source>Import Keyboard Shortcuts</source> <translation>导入键盘快捷键</translation> </message> @@ -56391,112 +56391,112 @@ <translation><b>导入键盘快捷键</b><p>导入程序的键盘快捷键。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Activate current editor</source> <translation>激活当前编辑器</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1915"/> + <location filename="UI/UserInterface.py" line="1929"/> <source>Alt+Shift+E</source> <translation>Alt+Shift+E</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Show next</source> <translation>显示下一个</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1924"/> + <location filename="UI/UserInterface.py" line="1938"/> <source>Ctrl+Alt+Tab</source> <translation>Ctrl+Alt+Tab</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Show previous</source> <translation>显示上一个</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1932"/> + <location filename="UI/UserInterface.py" line="1946"/> <source>Shift+Ctrl+Alt+Tab</source> <translation>Shift+Ctrl+Alt+Tab</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Switch between tabs</source> <translation>在选项卡间切换</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1940"/> + <location filename="UI/UserInterface.py" line="1954"/> <source>Ctrl+1</source> <translation>Ctrl+1</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>Plugin Infos</source> <translation>插件信息</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1948"/> + <location filename="UI/UserInterface.py" line="1962"/> <source>&Plugin Infos...</source> <translation>插件信息(&P)……</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1951"/> + <location filename="UI/UserInterface.py" line="1965"/> <source>Show Plugin Infos</source> <translation>显示插件信息</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1952"/> + <location filename="UI/UserInterface.py" line="1966"/> <source><b>Plugin Infos...</b><p>This opens a dialog, that show some information about loaded plugins.</p></source> <translation><b>插件信息……</b><p>打开一个对话框,显示与已载入插件有关的一些信息。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="1963"/> + <location filename="UI/UserInterface.py" line="1977"/> <source>Install Plugins</source> <translation>安装插件</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1960"/> - <source>&Install Plugins...</source> - <translation>安装插件(&I)……</translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="1964"/> - <source><b>Install Plugins...</b><p>This opens a dialog to install or update plugins.</p></source> - <translation><b>安装插件……</b><p>打开一个对话框安装或更新插件。</p></translation> - </message> - <message> <location filename="UI/UserInterface.py" line="1974"/> + <source>&Install Plugins...</source> + <translation>安装插件(&I)……</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1978"/> + <source><b>Install Plugins...</b><p>This opens a dialog to install or update plugins.</p></source> + <translation><b>安装插件……</b><p>打开一个对话框安装或更新插件。</p></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1988"/> <source>Uninstall Plugin</source> <translation>卸载插件</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1971"/> - <source>&Uninstall Plugin...</source> - <translation>卸载插件(&U)……</translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="1975"/> - <source><b>Uninstall Plugin...</b><p>This opens a dialog to uninstall a plugin.</p></source> - <translation><b>卸载插件……</b><p>打开一个对话框卸载插件。</p></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="1982"/> - <source>Plugin Repository</source> - <translation>插件储存库</translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="1982"/> - <source>Plugin &Repository...</source> - <translation>插件储存库(&R)……</translation> - </message> - <message> <location filename="UI/UserInterface.py" line="1985"/> + <source>&Uninstall Plugin...</source> + <translation>卸载插件(&U)……</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1989"/> + <source><b>Uninstall Plugin...</b><p>This opens a dialog to uninstall a plugin.</p></source> + <translation><b>卸载插件……</b><p>打开一个对话框卸载插件。</p></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1996"/> + <source>Plugin Repository</source> + <translation>插件储存库</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1996"/> + <source>Plugin &Repository...</source> + <translation>插件储存库(&R)……</translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1999"/> <source>Show Plugins available for download</source> <translation>显示可以下载的插件</translation> </message> <message> - <location filename="UI/UserInterface.py" line="1987"/> + <location filename="UI/UserInterface.py" line="2001"/> <source><b>Plugin Repository...</b><p>This opens a dialog, that shows a list of plugins available on the Internet.</p></source> <translation><b>插件储存库……</b><p>打开一个对话框,显示互联网上可用的插件列表。</p></translation> </message> @@ -56521,42 +56521,42 @@ <translation type="obsolete"><b>Qt 文档</b><p>显示 Qt 文档。根据你的设置,显示 Eric 的联机帮助浏览器中的帮助,或者执行网络浏览器或 Qt 助手。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt4 Documentation</source> <translation>Qt4 文档</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2011"/> + <location filename="UI/UserInterface.py" line="2025"/> <source>Qt&4 Documentation</source> <translation>Qt&4 文档</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2013"/> + <location filename="UI/UserInterface.py" line="2027"/> <source>Open Qt4 Documentation</source> <translation>打开 Qt4 文档</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2014"/> + <location filename="UI/UserInterface.py" line="2028"/> <source><b>Qt4 Documentation</b><p>Display the Qt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>Qt4 文档</b><p>显示 Qt4 文档。根据你的设置,显示 Eric 的联机帮助浏览器中的帮助,或者执行网络浏览器或 Qt 助手。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>PyQt4 Documentation</source> <translation>PyQt4 文档</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2035"/> + <location filename="UI/UserInterface.py" line="2049"/> <source>P&yQt4 Documentation</source> <translation>P&yQt4 文档</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2037"/> + <location filename="UI/UserInterface.py" line="2051"/> <source>Open PyQt4 Documentation</source> <translation>打开 PyQt4 文档</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2038"/> + <location filename="UI/UserInterface.py" line="2052"/> <source><b>PyQt4 Documentation</b><p>Display the PyQt4 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation><b>PyQt4 文档</b><p>显示 PyQt4 文档。根据你的设置,显示 Eric 的联机帮助浏览器中的帮助,或者执行网络浏览器或 Qt 助手。</p></translation> </message> @@ -56596,17 +56596,17 @@ <translation type="obsolete"><b>Python 文档</b><p>显示 Python 文档。如果没有配置文档文件夹,则在 Windows 下将 Python 文档位置指定为可执行 Python 下的 doc 文件夹,在 Unix 下为 <i>/usr/share/doc/packages/python/html</i> 。在你的环境中设置 PYTHONDOCDIR 可以进行控制。 </p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2087"/> + <location filename="UI/UserInterface.py" line="2101"/> <source>Eric API Documentation</source> <translation>Eric API 文档</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2087"/> + <location filename="UI/UserInterface.py" line="2101"/> <source>&Eric API Documentation</source> <translation>&Eric API 文档</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2089"/> + <location filename="UI/UserInterface.py" line="2103"/> <source>Open Eric API Documentation</source> <translation>打开 Eric API 文档</translation> </message> @@ -56616,102 +56616,102 @@ <translation type="obsolete"><b>Eric API 文档</b><p>显示 Eric API 文档。文档位置为 Eric4 安装文件夹下的文档或源代码子文件夹。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2145"/> + <location filename="UI/UserInterface.py" line="2159"/> <source>&Unittest</source> <translation>单元测试(&U)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2162"/> + <location filename="UI/UserInterface.py" line="2176"/> <source>E&xtras</source> <translation>附加程序(&x)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2167"/> + <location filename="UI/UserInterface.py" line="2181"/> <source>Wi&zards</source> <translation>向导(&z)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2174"/> + <location filename="UI/UserInterface.py" line="2188"/> <source>&Tools</source> <translation>工具(&T)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2177"/> + <location filename="UI/UserInterface.py" line="2191"/> <source>Select Tool Group</source> <translation>选择工具组</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2183"/> + <location filename="UI/UserInterface.py" line="2197"/> <source>Se&ttings</source> <translation>设置(&t)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2201"/> + <location filename="UI/UserInterface.py" line="2218"/> <source>&Window</source> <translation>窗口(&W)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2226"/> + <location filename="UI/UserInterface.py" line="2243"/> <source>&Toolbars</source> <translation>工具栏(&T)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2237"/> + <location filename="UI/UserInterface.py" line="2254"/> <source>P&lugins</source> <translation>插件(&l)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2246"/> + <location filename="UI/UserInterface.py" line="2263"/> <source>Configure...</source> <translation>配置……</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2251"/> + <location filename="UI/UserInterface.py" line="2268"/> <source>&Help</source> <translation>帮助(&H)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2318"/> + <location filename="UI/UserInterface.py" line="2335"/> <source>Tools</source> <translation>工具</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2320"/> + <location filename="UI/UserInterface.py" line="2337"/> <source>Settings</source> <translation>设置</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3927"/> + <location filename="UI/UserInterface.py" line="3944"/> <source>Help</source> <translation>帮助</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2322"/> + <location filename="UI/UserInterface.py" line="2339"/> <source>Profiles</source> <translation>模式</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2323"/> + <location filename="UI/UserInterface.py" line="2340"/> <source>Plugins</source> <translation>插件</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2465"/> + <location filename="UI/UserInterface.py" line="2482"/> <source><p>This part of the status bar displays the current editors language.</p></source> <translation><p>状态栏的这一部分显示当前编辑器语言。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2472"/> + <location filename="UI/UserInterface.py" line="2489"/> <source><p>This part of the status bar displays the current editors encoding.</p></source> <translation><p>状态栏的这一部分显示当前编辑器编码。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2479"/> + <location filename="UI/UserInterface.py" line="2496"/> <source><p>This part of the status bar displays the current editors eol setting.</p></source> <translation><p>状态栏的这一部分显示当前编辑器行尾设置。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2486"/> + <location filename="UI/UserInterface.py" line="2503"/> <source><p>This part of the status bar displays an indication of the current editors files writability.</p></source> <translation><p>状态栏的这一部分显示当前编辑器文件是否可写。</p></translation> </message> @@ -56721,12 +56721,12 @@ <translation type="obsolete"><p>状态栏的这一部分显示当前编辑的文件名称。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2493"/> + <location filename="UI/UserInterface.py" line="2510"/> <source><p>This part of the status bar displays the line number of the current editor.</p></source> <translation><p>状态栏的这一部分显示当前编辑的行号。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2500"/> + <location filename="UI/UserInterface.py" line="2517"/> <source><p>This part of the status bar displays the cursor position of the current editor.</p></source> <translation><p>状态栏的这一部分显示当前编辑器的光标位置。</p></translation> </message> @@ -56736,7 +56736,7 @@ <translation type="obsolete">外部工具 / %1</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2653"/> + <location filename="UI/UserInterface.py" line="2670"/> <source><h3>Version Numbers</h3><table></source> <translation><h3>版本号</h3><table></translation> </message> @@ -56781,62 +56781,62 @@ <translation type="obsolete"><tr><td><b>%1</b></td><td>%2</td></tr></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5482"/> + <location filename="UI/UserInterface.py" line="5508"/> <source></table></source> <translation></table></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2704"/> + <location filename="UI/UserInterface.py" line="2721"/> <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="2946"/> + <location filename="UI/UserInterface.py" line="2963"/> <source>Restart application</source> <translation>重启程序</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2946"/> + <location filename="UI/UserInterface.py" line="2963"/> <source>The application needs to be restarted. Do it now?</source> <translation>程序需要重启。现在重启?</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2978"/> + <location filename="UI/UserInterface.py" line="2995"/> <source>Configure Tool Groups ...</source> <translation>配置工具组……</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2981"/> + <location filename="UI/UserInterface.py" line="2998"/> <source>Configure current Tool Group ...</source> <translation>配置当前工具组……</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3030"/> + <location filename="UI/UserInterface.py" line="3047"/> <source>&Builtin Tools</source> <translation>内建工具(&B)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3038"/> + <location filename="UI/UserInterface.py" line="3055"/> <source>&Plugin Tools</source> <translation>插件工具(&P)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3128"/> + <location filename="UI/UserInterface.py" line="3145"/> <source>&Show all</source> <translation>全部显示(&S)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3130"/> + <location filename="UI/UserInterface.py" line="3147"/> <source>&Hide all</source> <translation>全部隐藏(&H)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3704"/> + <location filename="UI/UserInterface.py" line="3721"/> <source>There is no main script defined for the current project. Aborting</source> <translation>当前项目未定义主脚本。终止</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4035"/> + <location filename="UI/UserInterface.py" line="4052"/> <source>Problem</source> <translation>问题</translation> </message> @@ -56846,7 +56846,7 @@ <translation type="obsolete"><p>文件 <b>%1</b> 不存在或长度为零。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4187"/> + <location filename="UI/UserInterface.py" line="4204"/> <source>Process Generation Error</source> <translation>进程生成错误</translation> </message> @@ -56866,17 +56866,17 @@ <translation type="obsolete"><p>无法开启 Qt 助手。<br>确保其有效如 <b>%1</b>。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <source>Open Browser</source> <translation type="unfinished">打开浏览器</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4639"/> + <location filename="UI/UserInterface.py" line="4656"/> <source>Could not start a web browser</source> <translation type="unfinished">无法启动网络浏览器</translation> </message> <message> - <location filename="UI/UserInterface.py" line="3927"/> + <location filename="UI/UserInterface.py" line="3944"/> <source>Currently no custom viewer is selected. Please use the preferences dialog to specify one.</source> <translation>目前没有选择自定义浏览器。请使用参数选择对话框指定一个。</translation> </message> @@ -56886,7 +56886,7 @@ <translation type="obsolete"><p>无法开启自定义浏览器。<br>确保其有效如 <b>%1</b>。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3958"/> + <location filename="UI/UserInterface.py" line="3975"/> <source><p>Could not start the help viewer.<br>Ensure that it is available as <b>hh</b>.</p></source> <translation><p>无法开启帮助浏览器。<br>确保其有效如 <b>%1</b>。</p></translation> </message> @@ -56901,7 +56901,7 @@ <translation type="obsolete"><p>无法开启翻译预览器。<br>确保其有效如 <b>%1</b>。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4135"/> + <location filename="UI/UserInterface.py" line="4152"/> <source>External Tools</source> <translation>外部工具</translation> </message> @@ -56935,7 +56935,7 @@ </translation> </message> <message> - <location filename="UI/UserInterface.py" line="4553"/> + <location filename="UI/UserInterface.py" line="4570"/> <source>Documentation Missing</source> <translation>文档丢失</translation> </message> @@ -56945,12 +56945,12 @@ <translation type="obsolete"><p>未找到文档起点“<b>%1</b>”。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4538"/> + <location filename="UI/UserInterface.py" line="4555"/> <source>Documentation</source> <translation>文档</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4447"/> + <location filename="UI/UserInterface.py" line="4464"/> <source><p>The PyQt4 documentation starting point has not been configured.</p></source> <translation><p>未配置 PyQt4 文档起点。</p></translation> </message> @@ -56975,7 +56975,7 @@ <translation type="obsolete">Eric4 键盘快捷键文件 (*.e4k *.e4kz);;Eric3 键盘快捷键文件 (*.e3k *.e3kz)</translation> </message> <message> - <location filename="UI/UserInterface.py" line="4937"/> + <location filename="UI/UserInterface.py" line="4963"/> <source>Save tasks</source> <translation>保存任务</translation> </message> @@ -56985,7 +56985,7 @@ <translation type="obsolete"><p>无法写入任务文件 <b>%1</b> 。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4959"/> + <location filename="UI/UserInterface.py" line="4985"/> <source>Read tasks</source> <translation>读取任务</translation> </message> @@ -57000,7 +57000,7 @@ <translation type="obsolete"><p>不支持任务文件 <b>%1</b> 的格式。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4974"/> + <location filename="UI/UserInterface.py" line="5000"/> <source>Save session</source> <translation>保存会话</translation> </message> @@ -57010,7 +57010,7 @@ <translation type="obsolete"><p>会话文件 <b>%1</b> 无法写入。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4997"/> + <location filename="UI/UserInterface.py" line="5023"/> <source>Read session</source> <translation>读取会话</translation> </message> @@ -57025,7 +57025,7 @@ <translation type="obsolete"><p>不支持会话文件 <b>%1</b> 的格式。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5169"/> + <location filename="UI/UserInterface.py" line="5195"/> <source>Drop Error</source> <translation>降落误差</translation> </message> @@ -57035,7 +57035,7 @@ <translation type="obsolete"><p><b>%1</b> 不是一个文件。</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5448"/> + <location filename="UI/UserInterface.py" line="5474"/> <source>Error during updates check</source> <translation>检查更新时出错</translation> </message> @@ -57045,7 +57045,7 @@ <translation type="obsolete">代理使用被激活但是没有配置代理主机。</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5307"/> + <location filename="UI/UserInterface.py" line="5333"/> <source>&Cancel</source> <translation>取消(&C)</translation> </message> @@ -57065,7 +57065,7 @@ <translation type="obsolete">无法下载版本文件。</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5435"/> + <location filename="UI/UserInterface.py" line="5461"/> <source>Update available</source> <translation>可用更新</translation> </message> @@ -57085,12 +57085,12 @@ <translation type="obsolete">当前使用的是 Eric4 最新的版本</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5448"/> + <location filename="UI/UserInterface.py" line="5474"/> <source>Could not perform updates check.</source> <translation>无法完成更新检查。</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5469"/> + <location filename="UI/UserInterface.py" line="5495"/> <source><h3>Available versions</h3><table></source> <translation><h3>可用版本</h3><table></translation> </message> @@ -57115,7 +57115,7 @@ <translation type="obsolete"><p>SSL 错误:</p><p>%1</p><p>要忽略这些错误吗?</p></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5509"/> + <location filename="UI/UserInterface.py" line="5535"/> <source>First time usage</source> <translation>第一次使用</translation> </message> @@ -57205,32 +57205,32 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3879"/> + <location filename="UI/UserInterface.py" line="3896"/> <source>Qt 3 support</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2108"/> + <location filename="UI/UserInterface.py" line="2122"/> <source><b>PySide Documentation</b><p>Display the PySide Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4538"/> + <location filename="UI/UserInterface.py" line="4555"/> <source><p>The PySide documentation starting point has not been configured.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2105"/> + <location filename="UI/UserInterface.py" line="2119"/> <source>PySide Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2105"/> + <location filename="UI/UserInterface.py" line="2119"/> <source>Py&Side Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2107"/> + <location filename="UI/UserInterface.py" line="2121"/> <source>Open PySide Documentation</source> <translation type="unfinished"></translation> </message> @@ -57285,139 +57285,139 @@ <translation type="unfinished"><b>显示外部工具</b><p>打开一个对话框显示 Eric4 使用的所有外部工具的路径和版本。</p> {5.?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2090"/> + <location filename="UI/UserInterface.py" line="2104"/> <source><b>Eric API Documentation</b><p>Display the Eric API documentation. The location for the documentation is the Documentation/Source subdirectory of the eric5 installation directory.</p></source> <translation type="unfinished"><b>Eric API 文档</b><p>显示 Eric API 文档。文档位置为 Eric4 安装文件夹下的文档或源代码子文件夹。</p> {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2567"/> + <location filename="UI/UserInterface.py" line="2584"/> <source>External Tools/{0}</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3879"/> + <location filename="UI/UserInterface.py" line="3896"/> <source>Qt v.3 is not supported by eric5.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4035"/> + <location filename="UI/UserInterface.py" line="4052"/> <source><p>The file <b>{0}</b> does not exist or is zero length.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3799"/> + <location filename="UI/UserInterface.py" line="3816"/> <source><p>Could not start Qt-Designer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3856"/> + <location filename="UI/UserInterface.py" line="3873"/> <source><p>Could not start Qt-Linguist.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3900"/> + <location filename="UI/UserInterface.py" line="3917"/> <source><p>Could not start Qt-Assistant.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3939"/> + <location filename="UI/UserInterface.py" line="3956"/> <source><p>Could not start custom viewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="3998"/> + <location filename="UI/UserInterface.py" line="4015"/> <source><p>Could not start UI Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4043"/> + <location filename="UI/UserInterface.py" line="4060"/> <source><p>Could not start Translation Previewer.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4062"/> + <location filename="UI/UserInterface.py" line="4079"/> <source><p>Could not start SQL Browser.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4129"/> + <location filename="UI/UserInterface.py" line="4146"/> <source>No tool entry found for external tool '{0}' in tool group '{1}'.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4135"/> + <location filename="UI/UserInterface.py" line="4152"/> <source>No toolgroup entry '{0}' found.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4171"/> + <location filename="UI/UserInterface.py" line="4188"/> <source>Starting process '{0} {1}'. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4187"/> + <location filename="UI/UserInterface.py" line="4204"/> <source><p>Could not start the tool entry <b>{0}</b>.<br>Ensure that it is available as <b>{1}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4264"/> + <location filename="UI/UserInterface.py" line="4281"/> <source>Process '{0}' has exited. </source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4553"/> + <location filename="UI/UserInterface.py" line="4570"/> <source><p>The documentation starting point "<b>{0}</b>" could not be found.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4937"/> + <location filename="UI/UserInterface.py" line="4963"/> <source><p>The tasks file <b>{0}</b> could not be written.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4959"/> + <location filename="UI/UserInterface.py" line="4985"/> <source><p>The tasks file <b>{0}</b> could not be read.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4974"/> + <location filename="UI/UserInterface.py" line="5000"/> <source><p>The session file <b>{0}</b> could not be written.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4997"/> + <location filename="UI/UserInterface.py" line="5023"/> <source><p>The session file <b>{0}</b> could not be read.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5169"/> + <location filename="UI/UserInterface.py" line="5195"/> <source><p><b>{0}</b> is not a file.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5312"/> + <location filename="UI/UserInterface.py" line="5338"/> <source>Trying host {0}</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5435"/> + <location filename="UI/UserInterface.py" line="5461"/> <source>The update to <b>{0}</b> of eric5 is available at <b>{1}</b>. Would you like to get it?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5444"/> + <location filename="UI/UserInterface.py" line="5470"/> <source>Eric5 is up to date</source> <translation type="unfinished">Eric4 已是最新版本 {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="5444"/> + <location filename="UI/UserInterface.py" line="5470"/> <source>You are using the latest version of eric5</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5509"/> + <location filename="UI/UserInterface.py" line="5535"/> <source>eric5 has not been configured yet. The configuration dialog will be started.</source> <translation type="unfinished">尚未配置 Eric4。将打开配置对话框。 {5 ?}</translation> </message> @@ -57452,62 +57452,62 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4816"/> + <location filename="UI/UserInterface.py" line="4833"/> <source>Keyboard shortcut file (*.e4k)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2051"/> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python 3 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2051"/> + <location filename="UI/UserInterface.py" line="2065"/> <source>Python &3 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2053"/> + <location filename="UI/UserInterface.py" line="2067"/> <source>Open Python 3 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2054"/> - <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python 2 Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="UI/UserInterface.py" line="2066"/> - <source>Python &2 Documentation</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="UI/UserInterface.py" line="2068"/> + <source><b>Python 3 Documentation</b><p>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 <i>/usr/share/doc/packages/python/html</i> on Unix. Set PYTHON3DOCDIR in your environment to override this. </p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python 2 Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2080"/> + <source>Python &2 Documentation</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="2082"/> <source>Open Python 2 Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2069"/> + <location filename="UI/UserInterface.py" line="2083"/> <source><b>Python 2 Documentation</b><p>Display the Python 2 documentation. If no documentation directory is configured, the location of the Python 2 documentation is assumed to be the doc directory underneath the location of the configured Python 2 executable on Windows and <i>/usr/share/doc/packages/python/html/python-docs-html</i> on Unix. Set PYTHON2DOCDIR in your environment to override this. </p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <source>Error getting versions information</source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5356"/> + <location filename="UI/UserInterface.py" line="5382"/> <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="5362"/> + <location filename="UI/UserInterface.py" line="5388"/> <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> @@ -57618,12 +57618,12 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="4109"/> + <location filename="UI/UserInterface.py" line="4126"/> <source><p>Could not start Snapshot tool.<br>Ensure that it is available as <b>{0}</b>.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="5527"/> + <location filename="UI/UserInterface.py" line="5553"/> <source>Select Workspace Directory</source> <translation type="unfinished"></translation> </message> @@ -57853,7 +57853,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2206"/> + <location filename="UI/UserInterface.py" line="2223"/> <source>&Windows</source> <translation type="unfinished">窗口(&W)</translation> </message> @@ -57928,30 +57928,50 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt5 Documentation</source> <translation type="unfinished">Qt4 文档 {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2023"/> + <location filename="UI/UserInterface.py" line="2037"/> <source>Qt&5 Documentation</source> <translation type="unfinished">Qt&4 文档 {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2025"/> + <location filename="UI/UserInterface.py" line="2039"/> <source>Open Qt5 Documentation</source> <translation type="unfinished">打开 Qt4 文档 {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2026"/> + <location filename="UI/UserInterface.py" line="2040"/> <source><b>Qt5 Documentation</b><p>Display the Qt5 Documentation. Dependant upon your settings, this will either show the help in Eric's internal help viewer, or execute a web browser or Qt Assistant. </p></source> <translation type="unfinished"><b>Qt4 文档</b><p>显示 Qt4 文档。根据你的设置,显示 Eric 的联机帮助浏览器中的帮助,或者执行网络浏览器或 Qt 助手。</p> {5 ?} {5 ?}</translation> </message> <message> - <location filename="UI/UserInterface.py" line="2510"/> + <location filename="UI/UserInterface.py" line="2527"/> <source><p>This part of the status bar allows zooming the current editor, shell or terminal.</p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1916"/> + <source>Manage SSL Certificates...</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1920"/> + <source>Manage the saved SSL certificates</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="UI/UserInterface.py" line="1922"/> + <source><b>Manage SSL Certificates...</b><p>Opens a dialog to manage the saved SSL certificates.</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>UserPropertiesDialog</name>